diff --git a/codegen/src/abtest.rs b/codegen/src/abtest.rs index 9acf827..ac13a8c 100644 --- a/codegen/src/abtest.rs +++ b/codegen/src/abtest.rs @@ -4,8 +4,6 @@ use anyhow::{bail, Result}; use futures::{stream, StreamExt}; use indicatif::{ProgressBar, ProgressStyle}; use num_enum::TryFromPrimitive; -use once_cell::sync::Lazy; -use regex::Regex; use rustypipe::client::{ClientType, RustyPipe, RustyPipeQuery, YTContext}; use rustypipe::model::YouTubeItem; use rustypipe::param::search_filter::{ItemType, SearchFilter}; @@ -23,7 +21,6 @@ pub enum ABTest { TrendsVideoTab = 4, TrendsPageHeaderRenderer = 5, DiscographyPage = 6, - ShortDateFormat = 7, } const TESTS_TO_RUN: [ABTest; 3] = [ @@ -93,7 +90,6 @@ pub async fn run_test( ABTest::TrendsVideoTab => trends_video_tab(&query).await, ABTest::TrendsPageHeaderRenderer => trends_page_header_renderer(&query).await, ABTest::DiscographyPage => discography_page(&query).await, - ABTest::ShortDateFormat => short_date_format(&query).await, } .unwrap(); pb.inc(1); @@ -227,19 +223,10 @@ pub async fn trends_page_header_renderer(rp: &RustyPipeQuery) -> Result { } pub async fn discography_page(rp: &RustyPipeQuery) -> Result { - let artist = rp.music_artist("UC7cl4MmM6ZZ2TcFyMk_b4pg", false).await?; + let artist = rp + .music_artist("UC7cl4MmM6ZZ2TcFyMk_b4pg", false) + .await + .unwrap(); Ok(artist.albums.len() <= 10) } - -pub async fn short_date_format(rp: &RustyPipeQuery) -> Result { - static SHORT_DATE: Lazy = Lazy::new(|| Regex::new("\\d(?:y|mo|w|d|h|min) ").unwrap()); - let channel = rp.channel_videos("UC2DjFE7Xf11URZqWBigcVOQ").await?; - - Ok(channel.content.items.iter().any(|itm| { - itm.publish_date_txt - .as_deref() - .map(|d| SHORT_DATE.is_match(d)) - .unwrap_or_default() - })) -} diff --git a/codegen/src/collect_video_dates.rs b/codegen/src/collect_video_dates.rs deleted file mode 100644 index cff90e5..0000000 --- a/codegen/src/collect_video_dates.rs +++ /dev/null @@ -1,83 +0,0 @@ -use std::{ - collections::{BTreeMap, HashSet}, - fs::File, -}; - -use futures::{stream, StreamExt}; -use path_macro::path; -use rustypipe::{ - client::{RustyPipe, RustyPipeQuery}, - param::{Language, LANGUAGES}, -}; - -use crate::util::DICT_DIR; - -pub async fn collect_video_dates(concurrency: usize) { - let json_path = path!(*DICT_DIR / "timeago_samples_short.json"); - let rp = RustyPipe::builder() - .visitor_data("Cgtwel9tMkh2eHh0USiyzc6jBg%3D%3D") - .build(); - - let channels = [ - "UCeY0bbntWzzVIaj2z3QigXg", - "UCcmpeVbSSQlZRvHfdC-CRwg", - "UC65afEgL62PGFWXY7n6CUbA", - "UCEOXxzW2vU0P-0THehuIIeg", - ]; - - let mut lang_strings: BTreeMap> = BTreeMap::new(); - for lang in LANGUAGES { - println!("{lang}"); - let query = rp.query().lang(lang); - let strings = stream::iter(channels) - .map(|id| get_channel_datestrings(&query, id)) - .buffered(concurrency) - .collect::>() - .await - .into_iter() - .flatten() - .collect::>(); - lang_strings.insert(lang, strings); - } - - let mut en_strings_uniq: HashSet<&str> = HashSet::new(); - let mut uniq_ids: HashSet = HashSet::new(); - - lang_strings[&Language::En] - .iter() - .enumerate() - .for_each(|(n, s)| { - if en_strings_uniq.insert(s) { - uniq_ids.insert(n); - } - }); - - let strings_map = lang_strings - .iter() - .map(|(lang, strings)| { - ( - lang, - strings - .iter() - .enumerate() - .filter(|(n, _)| uniq_ids.contains(n)) - .map(|(_, s)| s) - .collect::>(), - ) - }) - .collect::>(); - - let file = File::create(json_path).unwrap(); - serde_json::to_writer_pretty(file, &strings_map).unwrap(); -} - -async fn get_channel_datestrings(rp: &RustyPipeQuery, id: &str) -> Vec { - let channel = rp.channel_videos(id).await.unwrap(); - - channel - .content - .items - .into_iter() - .filter_map(|itm| itm.publish_date_txt) - .collect() -} diff --git a/codegen/src/main.rs b/codegen/src/main.rs index bbc8fa8..e61a78f 100644 --- a/codegen/src/main.rs +++ b/codegen/src/main.rs @@ -4,7 +4,6 @@ mod abtest; mod collect_album_types; mod collect_large_numbers; mod collect_playlist_dates; -mod collect_video_dates; mod collect_video_durations; mod download_testfiles; mod gen_dictionary; @@ -28,7 +27,6 @@ enum Commands { CollectLargeNumbers, CollectAlbumTypes, CollectVideoDurations, - CollectVideoDates, ParsePlaylistDates, ParseLargeNumbers, ParseAlbumTypes, @@ -62,9 +60,6 @@ async fn main() { Commands::CollectVideoDurations => { collect_video_durations::collect_video_durations(cli.concurrency).await; } - Commands::CollectVideoDates => { - collect_video_dates::collect_video_dates(cli.concurrency).await; - } Commands::ParsePlaylistDates => collect_playlist_dates::write_samples_to_dict(), Commands::ParseLargeNumbers => collect_large_numbers::write_samples_to_dict(), Commands::ParseAlbumTypes => collect_album_types::write_samples_to_dict(), diff --git a/notes/AB_Tests.md b/notes/AB_Tests.md index b9ffbf0..9a2fcf8 100644 --- a/notes/AB_Tests.md +++ b/notes/AB_Tests.md @@ -376,11 +376,3 @@ visitor data cookie to be set, as it was the case with the old system. **NEW** ![A/B test 4 old screenshot](./_img/ab_6_new.png) - -## [7] Short timeago format - -- **Encountered on:** 28.05.2023 -- **Impact:** 🟡 Medium - -YouTube changed their date format from the long format (*21 hours ago*, *3 days ago*) to -a short format (*21h ago*, *3d ago*). diff --git a/src/client/channel.rs b/src/client/channel.rs index 7ec1be5..867cc55 100644 --- a/src/client/channel.rs +++ b/src/client/channel.rs @@ -200,20 +200,15 @@ impl MapResponse>> for response::Channel { id: &str, lang: Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - vdata: Option<&str>, ) -> Result>>, ExtractionError> { let content = map_channel_content(id, self.contents, self.alerts)?; - let visitor_data = self - .response_context - .visitor_data - .or_else(|| vdata.map(str::to_owned)); let channel_data = map_channel( MapChannelData { header: self.header, metadata: self.metadata, microformat: self.microformat, - visitor_data: visitor_data.clone(), + visitor_data: self.response_context.visitor_data.clone(), has_shorts: content.has_shorts, has_live: content.has_live, }, @@ -231,7 +226,7 @@ impl MapResponse>> for response::Channel { None, mapper.items, mapper.ctoken, - visitor_data, + self.response_context.visitor_data, crate::model::paginator::ContinuationEndpoint::Browse, ); @@ -248,20 +243,15 @@ impl MapResponse>> for response::Channel { id: &str, lang: Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - vdata: Option<&str>, ) -> Result>>, ExtractionError> { let content = map_channel_content(id, self.contents, self.alerts)?; - let visitor_data = self - .response_context - .visitor_data - .or_else(|| vdata.map(str::to_owned)); let channel_data = map_channel( MapChannelData { header: self.header, metadata: self.metadata, microformat: self.microformat, - visitor_data, + visitor_data: self.response_context.visitor_data, has_shorts: content.has_shorts, has_live: content.has_live, }, @@ -290,7 +280,6 @@ impl MapResponse> for response::Channel { id: &str, lang: Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - vdata: Option<&str>, ) -> Result>, ExtractionError> { let content = map_channel_content(id, self.contents, self.alerts)?; let channel_data = map_channel( @@ -298,10 +287,7 @@ impl MapResponse> for response::Channel { header: self.header, metadata: self.metadata, microformat: self.microformat, - visitor_data: self - .response_context - .visitor_data - .or_else(|| vdata.map(str::to_owned)), + visitor_data: self.response_context.visitor_data, has_shorts: content.has_shorts, has_live: content.has_live, }, @@ -619,7 +605,7 @@ mod tests { let channel: response::Channel = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let map_res: MapResult>> = - channel.map_response(id, Language::En, None, None).unwrap(); + channel.map_response(id, Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), @@ -646,7 +632,7 @@ mod tests { let channel: response::Channel = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let map_res: MapResult>> = channel - .map_response("UC2DjFE7Xf11URZqWBigcVOQ", Language::En, None, None) + .map_response("UC2DjFE7Xf11URZqWBigcVOQ", Language::En, None) .unwrap(); assert!( @@ -665,7 +651,7 @@ mod tests { let channel: response::Channel = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let map_res: MapResult> = channel - .map_response("UC2DjFE7Xf11URZqWBigcVOQ", Language::En, None, None) + .map_response("UC2DjFE7Xf11URZqWBigcVOQ", Language::En, None) .unwrap(); assert!( diff --git a/src/client/mod.rs b/src/client/mod.rs index 22fc832..5b9398c 100644 --- a/src/client/mod.rs +++ b/src/client/mod.rs @@ -1247,12 +1247,7 @@ impl RustyPipeQuery { }) } else { match serde_json::from_str::(&body) { - Ok(deserialized) => match deserialized.map_response( - id, - self.opts.lang, - deobf, - self.opts.visitor_data.as_deref(), - ) { + Ok(deserialized) => match deserialized.map_response(id, self.opts.lang, deobf) { Ok(mapres) => Ok(mapres), Err(e) => Err(e.into()), }, @@ -1458,13 +1453,11 @@ trait MapResponse { /// that the returned entity matches this ID and return an error instead. /// - `lang`: Language of the request. Used for mapping localized information like dates. /// - `deobf`: Deobfuscator (if passed to the `execute_request_deobf` method) - /// - `vdata`: Visitor data option of the client fn map_response( self, id: &str, lang: Language, deobf: Option<&DeobfData>, - vdata: Option<&str>, ) -> Result, ExtractionError>; } diff --git a/src/client/music_artist.rs b/src/client/music_artist.rs index 66d7261..d5f2c64 100644 --- a/src/client/music_artist.rs +++ b/src/client/music_artist.rs @@ -4,7 +4,7 @@ use once_cell::sync::Lazy; use regex::Regex; use crate::{ - client::response::url_endpoint::NavigationEndpoint, + client::response::url_endpoint::{MusicPageType, NavigationEndpoint}, error::{Error, ExtractionError}, model::{AlbumItem, ArtistId, MusicArtist}, serializer::MapResult, @@ -96,7 +96,6 @@ impl MapResponse for response::MusicArtist { id: &str, lang: crate::param::Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - _vdata: Option<&str>, ) -> Result, ExtractionError> { let mapped = map_artist_page(self, id, lang, false)?; Ok(MapResult { @@ -112,7 +111,6 @@ impl MapResponse<(MusicArtist, bool)> for response::MusicArtist { id: &str, lang: crate::param::Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - _vdata: Option<&str>, ) -> Result, ExtractionError> { map_artist_page(self, id, lang, true) } @@ -191,29 +189,20 @@ fn map_artist_page( .music_carousel_shelf_basic_header_renderer .more_content_button { - if let NavigationEndpoint::Browse { - browse_endpoint, .. - } = button.button_renderer.navigation_endpoint - { + match button.button_renderer.navigation_endpoint.music_page() { // Music videos - if browse_endpoint - .browse_endpoint_context_supported_configs - .map(|cfg| { - cfg.browse_endpoint_context_music_config.page_type - == PageType::Playlist - }) - .unwrap_or_default() - { + Some((MusicPageType::Playlist, id)) => { if videos_playlist_id.is_none() { - videos_playlist_id = Some(browse_endpoint.browse_id); + videos_playlist_id = Some(id); } - } else if browse_endpoint - .browse_id - .starts_with(util::ARTIST_DISCOGRAPHY_PREFIX) - { + } + // Albums + Some((MusicPageType::ArtistDiscography, _)) => { can_fetch_more = true; extendable_albums = true; - } else { + } + // Albums or playlists + Some((MusicPageType::Artist, _)) => { // Peek at the first item to determine type if let Some(response::music_item::MusicResponseItem::MusicTwoRowItemRenderer(item)) = shelf.contents.c.first() { if let Some(PageType::Album) = item.navigation_endpoint.page_type() { @@ -222,6 +211,7 @@ fn map_artist_page( } } } + _ => {} } } } @@ -296,7 +286,6 @@ impl MapResponse> for response::MusicArtistAlbums { id: &str, lang: crate::param::Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - _vdata: Option<&str>, ) -> Result>, ExtractionError> { // dbg!(&self); @@ -367,7 +356,7 @@ mod tests { let resp: response::MusicArtist = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let map_res: MapResult<(MusicArtist, bool)> = - resp.map_response(id, Language::En, None, None).unwrap(); + resp.map_response(id, Language::En, None).unwrap(); let (mut artist, can_fetch_more) = map_res.c; assert!( @@ -382,7 +371,7 @@ mod tests { let resp: response::MusicArtistAlbums = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let mut map_res: MapResult> = - resp.map_response(id, Language::En, None, None).unwrap(); + resp.map_response(id, Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), @@ -403,7 +392,7 @@ mod tests { let artist: response::MusicArtist = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let map_res: MapResult = artist - .map_response("UClmXPfaYhXOYsNn_QUyheWQ", Language::En, None, None) + .map_response("UClmXPfaYhXOYsNn_QUyheWQ", Language::En, None) .unwrap(); assert!( @@ -422,7 +411,7 @@ mod tests { let artist: response::MusicArtist = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let res: Result, ExtractionError> = - artist.map_response("UCLkAepWjdylmXSltofFvsYQ", Language::En, None, None); + artist.map_response("UCLkAepWjdylmXSltofFvsYQ", Language::En, None); let e = res.unwrap_err(); match e { diff --git a/src/client/music_charts.rs b/src/client/music_charts.rs index 87bc5a2..1176dfc 100644 --- a/src/client/music_charts.rs +++ b/src/client/music_charts.rs @@ -60,7 +60,6 @@ impl MapResponse for response::MusicCharts { _id: &str, lang: crate::param::Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - _vdata: Option<&str>, ) -> Result, crate::error::ExtractionError> { let countries = self .framework_updates @@ -165,8 +164,7 @@ mod tests { let charts: response::MusicCharts = serde_json::from_reader(BufReader::new(json_file)).unwrap(); - let map_res: MapResult = - charts.map_response("", Language::En, None, None).unwrap(); + let map_res: MapResult = charts.map_response("", Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), diff --git a/src/client/music_details.rs b/src/client/music_details.rs index 9a6d620..06578f9 100644 --- a/src/client/music_details.rs +++ b/src/client/music_details.rs @@ -157,7 +157,6 @@ impl MapResponse for response::MusicDetails { id: &str, lang: Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - _vdata: Option<&str>, ) -> Result, ExtractionError> { let tabs = self .contents @@ -238,7 +237,6 @@ impl MapResponse> for response::MusicDetails { id: &str, lang: Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - _vdata: Option<&str>, ) -> Result>, ExtractionError> { let tabs = self .contents @@ -299,7 +297,6 @@ impl MapResponse for response::MusicLyrics { id: &str, _lang: Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - _vdata: Option<&str>, ) -> Result, ExtractionError> { let lyrics = self .contents @@ -333,7 +330,6 @@ impl MapResponse for response::MusicRelated { _id: &str, lang: Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - _vdata: Option<&str>, ) -> Result, ExtractionError> { // Find artist let artist_id = self @@ -426,7 +422,7 @@ mod tests { let details: response::MusicDetails = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let map_res: MapResult = - details.map_response(id, Language::En, None, None).unwrap(); + details.map_response(id, Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), @@ -446,7 +442,7 @@ mod tests { let radio: response::MusicDetails = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let map_res: MapResult> = - radio.map_response(id, Language::En, None, None).unwrap(); + radio.map_response(id, Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), @@ -463,7 +459,7 @@ mod tests { let lyrics: response::MusicLyrics = serde_json::from_reader(BufReader::new(json_file)).unwrap(); - let map_res: MapResult = lyrics.map_response("", Language::En, None, None).unwrap(); + let map_res: MapResult = lyrics.map_response("", Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), @@ -480,8 +476,7 @@ mod tests { let lyrics: response::MusicRelated = serde_json::from_reader(BufReader::new(json_file)).unwrap(); - let map_res: MapResult = - lyrics.map_response("", Language::En, None, None).unwrap(); + let map_res: MapResult = lyrics.map_response("", Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), diff --git a/src/client/music_genres.rs b/src/client/music_genres.rs index f62273d..3a696ca 100644 --- a/src/client/music_genres.rs +++ b/src/client/music_genres.rs @@ -57,7 +57,6 @@ impl MapResponse> for response::MusicGenres { _id: &str, _lang: crate::param::Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - _vdata: Option<&str>, ) -> Result>, ExtractionError> { let content = self .contents @@ -111,7 +110,6 @@ impl MapResponse for response::MusicGenre { id: &str, lang: crate::param::Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - _vdata: Option<&str>, ) -> Result, ExtractionError> { // dbg!(&self); @@ -216,7 +214,7 @@ mod tests { let playlist: response::MusicGenres = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let map_res: MapResult> = - playlist.map_response("", Language::En, None, None).unwrap(); + playlist.map_response("", Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), @@ -236,7 +234,7 @@ mod tests { let playlist: response::MusicGenre = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let map_res: MapResult = - playlist.map_response(id, Language::En, None, None).unwrap(); + playlist.map_response(id, Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), diff --git a/src/client/music_new.rs b/src/client/music_new.rs index 7abb1fa..e80bff1 100644 --- a/src/client/music_new.rs +++ b/src/client/music_new.rs @@ -52,7 +52,6 @@ impl MapResponse> for response::MusicNew { _id: &str, lang: crate::param::Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - _vdata: Option<&str>, ) -> Result>, ExtractionError> { let items = self .contents @@ -97,9 +96,8 @@ mod tests { let new_albums: response::MusicNew = serde_json::from_reader(BufReader::new(json_file)).unwrap(); - let map_res: MapResult> = new_albums - .map_response("", Language::En, None, None) - .unwrap(); + let map_res: MapResult> = + new_albums.map_response("", Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), @@ -117,9 +115,8 @@ mod tests { let new_albums: response::MusicNew = serde_json::from_reader(BufReader::new(json_file)).unwrap(); - let map_res: MapResult> = new_albums - .map_response("", Language::En, None, None) - .unwrap(); + let map_res: MapResult> = + new_albums.map_response("", Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), diff --git a/src/client/music_playlist.rs b/src/client/music_playlist.rs index 41f8974..0bea1b3 100644 --- a/src/client/music_playlist.rs +++ b/src/client/music_playlist.rs @@ -122,7 +122,6 @@ impl MapResponse for response::MusicPlaylist { id: &str, lang: crate::param::Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - _vdata: Option<&str>, ) -> Result, ExtractionError> { // dbg!(&self); @@ -268,7 +267,6 @@ impl MapResponse for response::MusicPlaylist { id: &str, lang: crate::param::Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - _vdata: Option<&str>, ) -> Result, ExtractionError> { // dbg!(&self); @@ -420,7 +418,7 @@ mod tests { let playlist: response::MusicPlaylist = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let map_res: MapResult = - playlist.map_response(id, Language::En, None, None).unwrap(); + playlist.map_response(id, Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), @@ -445,7 +443,7 @@ mod tests { let playlist: response::MusicPlaylist = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let map_res: MapResult = - playlist.map_response(id, Language::En, None, None).unwrap(); + playlist.map_response(id, Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), diff --git a/src/client/music_search.rs b/src/client/music_search.rs index 3e2389d..eafb524 100644 --- a/src/client/music_search.rs +++ b/src/client/music_search.rs @@ -231,7 +231,6 @@ impl MapResponse for response::MusicSearch { _id: &str, lang: crate::param::Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - _vdata: Option<&str>, ) -> Result, crate::error::ExtractionError> { // dbg!(&self); @@ -297,7 +296,6 @@ impl MapResponse> for response::MusicSearc _id: &str, lang: crate::param::Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - _vdata: Option<&str>, ) -> Result>, ExtractionError> { // dbg!(&self); @@ -358,7 +356,6 @@ impl MapResponse for response::MusicSearchSuggestion { _id: &str, lang: crate::param::Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - _vdata: Option<&str>, ) -> Result, ExtractionError> { let mut mapper = MusicListMapper::new(lang); let mut terms = Vec::new(); @@ -422,7 +419,7 @@ mod tests { let search: response::MusicSearch = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let map_res: MapResult = - search.map_response("", Language::En, None, None).unwrap(); + search.map_response("", Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), @@ -445,7 +442,7 @@ mod tests { let search: response::MusicSearch = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let map_res: MapResult> = - search.map_response("", Language::En, None, None).unwrap(); + search.map_response("", Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), @@ -464,7 +461,7 @@ mod tests { let search: response::MusicSearch = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let map_res: MapResult> = - search.map_response("", Language::En, None, None).unwrap(); + search.map_response("", Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), @@ -483,7 +480,7 @@ mod tests { let search: response::MusicSearch = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let map_res: MapResult> = - search.map_response("", Language::En, None, None).unwrap(); + search.map_response("", Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), @@ -504,7 +501,7 @@ mod tests { let search: response::MusicSearch = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let map_res: MapResult> = - search.map_response("", Language::En, None, None).unwrap(); + search.map_response("", Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), @@ -524,9 +521,8 @@ mod tests { let suggestion: response::MusicSearchSuggestion = serde_json::from_reader(BufReader::new(json_file)).unwrap(); - let map_res: MapResult = suggestion - .map_response("", Language::En, None, None) - .unwrap(); + let map_res: MapResult = + suggestion.map_response("", Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), diff --git a/src/client/pagination.rs b/src/client/pagination.rs index 57387b6..62cf220 100644 --- a/src/client/pagination.rs +++ b/src/client/pagination.rs @@ -96,7 +96,6 @@ impl MapResponse> for response::Continuation { _id: &str, lang: crate::param::Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - _vdata: Option<&str>, ) -> Result>, ExtractionError> { let items = self .on_response_received_actions @@ -132,7 +131,6 @@ impl MapResponse> for response::MusicContinuation { _id: &str, lang: crate::param::Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - _vdata: Option<&str>, ) -> Result>, ExtractionError> { let mut mapper = MusicListMapper::new(lang); let mut continuations = Vec::new(); @@ -355,7 +353,7 @@ mod tests { let items: response::Continuation = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let map_res: MapResult> = - items.map_response("", Language::En, None, None).unwrap(); + items.map_response("", Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), @@ -377,7 +375,7 @@ mod tests { let items: response::Continuation = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let map_res: MapResult> = - items.map_response("", Language::En, None, None).unwrap(); + items.map_response("", Language::En, None).unwrap(); let paginator: Paginator = map_yt_paginator(map_res.c, None, ContinuationEndpoint::Browse); @@ -400,7 +398,7 @@ mod tests { let items: response::Continuation = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let map_res: MapResult> = - items.map_response("", Language::En, None, None).unwrap(); + items.map_response("", Language::En, None).unwrap(); let paginator: Paginator = map_yt_paginator(map_res.c, None, ContinuationEndpoint::Browse); @@ -423,7 +421,7 @@ mod tests { let items: response::MusicContinuation = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let map_res: MapResult> = - items.map_response("", Language::En, None, None).unwrap(); + items.map_response("", Language::En, None).unwrap(); let paginator: Paginator = map_ytm_paginator(map_res.c, None, ContinuationEndpoint::MusicBrowse); @@ -444,7 +442,7 @@ mod tests { let items: response::MusicContinuation = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let map_res: MapResult> = - items.map_response("", Language::En, None, None).unwrap(); + items.map_response("", Language::En, None).unwrap(); let paginator: Paginator = map_ytm_paginator(map_res.c, None, ContinuationEndpoint::MusicBrowse); diff --git a/src/client/player.rs b/src/client/player.rs index 4061aac..cda8f70 100644 --- a/src/client/player.rs +++ b/src/client/player.rs @@ -143,7 +143,6 @@ impl MapResponse for response::Player { id: &str, _lang: Language, deobf: Option<&crate::deobfuscate::DeobfData>, - vdata: Option<&str>, ) -> Result, ExtractionError> { let deobf = Deobfuscator::new(deobf.unwrap())?; let mut warnings = vec![]; @@ -373,10 +372,7 @@ impl MapResponse for response::Player { hls_manifest_url: streaming_data.hls_manifest_url, dash_manifest_url: streaming_data.dash_manifest_url, preview_frames, - visitor_data: self - .response_context - .visitor_data - .or_else(|| vdata.map(str::to_owned)), + visitor_data: self.response_context.visitor_data, }, warnings, }) @@ -721,7 +717,7 @@ mod tests { let resp: response::Player = serde_json::from_reader(BufReader::new(json_file)).unwrap(); let map_res = resp - .map_response("pPvd8UxmSbQ", Language::En, Some(&DEOBF_DATA), None) + .map_response("pPvd8UxmSbQ", Language::En, Some(&DEOBF_DATA)) .unwrap(); assert!( diff --git a/src/client/playlist.rs b/src/client/playlist.rs index bfdc03e..18340df 100644 --- a/src/client/playlist.rs +++ b/src/client/playlist.rs @@ -37,7 +37,6 @@ impl MapResponse for response::Playlist { id: &str, lang: crate::param::Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - vdata: Option<&str>, ) -> Result, ExtractionError> { let (Some(contents), Some(header)) = (self.contents, self.header) else { return Err(response::alerts_to_err(id, self.alerts)); @@ -153,10 +152,7 @@ impl MapResponse for response::Playlist { channel, last_update, last_update_txt, - visitor_data: self - .response_context - .visitor_data - .or_else(|| vdata.map(str::to_owned)), + visitor_data: self.response_context.visitor_data, }, warnings: mapper.warnings, }) @@ -185,7 +181,7 @@ mod tests { let playlist: response::Playlist = serde_json::from_reader(BufReader::new(json_file)).unwrap(); - let map_res = playlist.map_response(id, Language::En, None, None).unwrap(); + let map_res = playlist.map_response(id, Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), diff --git a/src/client/response/music_item.rs b/src/client/response/music_item.rs index 6bbfdff..bee91c9 100644 --- a/src/client/response/music_item.rs +++ b/src/client/response/music_item.rs @@ -759,7 +759,7 @@ impl MusicListMapper { })); Ok(Some(MusicItemType::Playlist)) } - MusicPageType::None => { + MusicPageType::None | MusicPageType::ArtistDiscography => { // There may be broken YT channels from the artist search. They can be skipped. Ok(None) } @@ -901,7 +901,7 @@ impl MusicListMapper { })); Ok(Some(MusicItemType::Playlist)) } - MusicPageType::None => Ok(None), + MusicPageType::None | MusicPageType::ArtistDiscography => Ok(None), MusicPageType::Unknown => { self.has_unknown = true; Ok(None) @@ -1039,7 +1039,7 @@ impl MusicListMapper { })); Some(MusicItemType::Playlist) } - MusicPageType::None => None, + MusicPageType::None | MusicPageType::ArtistDiscography => None, MusicPageType::Unknown => { self.has_unknown = true; None diff --git a/src/client/response/url_endpoint.rs b/src/client/response/url_endpoint.rs index 01a9374..1b9b225 100644 --- a/src/client/response/url_endpoint.rs +++ b/src/client/response/url_endpoint.rs @@ -102,12 +102,9 @@ pub(crate) struct BrowseEndpointConfig { pub browse_endpoint_context_music_config: BrowseEndpointMusicConfig, } -#[serde_as] #[derive(Debug, Deserialize)] #[serde(rename_all = "camelCase")] pub(crate) struct BrowseEndpointMusicConfig { - #[serde(default)] - #[serde_as(as = "DefaultOnError")] pub page_type: PageType, } @@ -117,12 +114,9 @@ pub(crate) struct CommandMetadata { pub web_command_metadata: WebCommandMetadata, } -#[serde_as] #[derive(Debug, Deserialize)] #[serde(rename_all = "camelCase")] pub(crate) struct WebCommandMetadata { - #[serde(default)] - #[serde_as(as = "DefaultOnError")] pub web_page_type: PageType, } @@ -150,13 +144,15 @@ pub(crate) enum MusicVideoType { Track, } -#[derive(Default, Debug, Clone, Copy, Deserialize, PartialEq, Eq)] +#[derive(Debug, Clone, Copy, Deserialize, PartialEq, Eq)] pub(crate) enum PageType { #[serde( rename = "MUSIC_PAGE_TYPE_ARTIST", alias = "MUSIC_PAGE_TYPE_AUDIOBOOK_ARTIST" )] Artist, + #[serde(rename = "MUSIC_PAGE_TYPE_ARTIST_DISCOGRAPHY")] + ArtistDiscography, #[serde(rename = "MUSIC_PAGE_TYPE_ALBUM", alias = "MUSIC_PAGE_TYPE_AUDIOBOOK")] Album, #[serde( @@ -166,7 +162,7 @@ pub(crate) enum PageType { Channel, #[serde(rename = "MUSIC_PAGE_TYPE_PLAYLIST", alias = "WEB_PAGE_TYPE_PLAYLIST")] Playlist, - #[default] + #[serde(rename = "MUSIC_PAGE_TYPE_UNKNOWN")] Unknown, } @@ -174,6 +170,9 @@ impl PageType { pub(crate) fn to_url_target(self, id: String) -> Option { match self { PageType::Artist | PageType::Channel => Some(UrlTarget::Channel { id }), + PageType::ArtistDiscography => id + .strip_prefix(util::ARTIST_DISCOGRAPHY_PREFIX) + .map(|id| UrlTarget::Channel { id: id.to_owned() }), PageType::Album => Some(UrlTarget::Album { id }), PageType::Playlist => Some(UrlTarget::Playlist { id }), PageType::Unknown => None, @@ -184,6 +183,7 @@ impl PageType { #[derive(Debug, Copy, Clone, PartialEq, Eq)] pub(crate) enum MusicPageType { Artist, + ArtistDiscography, Album, Playlist, Track { is_video: bool }, @@ -195,6 +195,7 @@ impl From for MusicPageType { fn from(t: PageType) -> Self { match t { PageType::Artist => MusicPageType::Artist, + PageType::ArtistDiscography => MusicPageType::ArtistDiscography, PageType::Album => MusicPageType::Album, PageType::Playlist => MusicPageType::Playlist, PageType::Channel => MusicPageType::None, diff --git a/src/client/search.rs b/src/client/search.rs index 1d9d186..1701de9 100644 --- a/src/client/search.rs +++ b/src/client/search.rs @@ -92,7 +92,6 @@ impl MapResponse for response::Search { _id: &str, lang: crate::param::Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - vdata: Option<&str>, ) -> Result, ExtractionError> { let items = self .contents @@ -114,10 +113,7 @@ impl MapResponse for response::Search { crate::model::paginator::ContinuationEndpoint::Search, ), corrected_query: mapper.corrected_query, - visitor_data: self - .response_context - .visitor_data - .or_else(|| vdata.map(str::to_owned)), + visitor_data: self.response_context.visitor_data, }, warnings: mapper.warnings, }) @@ -149,8 +145,7 @@ mod tests { let json_file = File::open(json_path).unwrap(); let search: response::Search = serde_json::from_reader(BufReader::new(json_file)).unwrap(); - let map_res: MapResult = - search.map_response("", Language::En, None, None).unwrap(); + let map_res: MapResult = search.map_response("", Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), diff --git a/src/client/trends.rs b/src/client/trends.rs index 6e3505a..cc7408f 100644 --- a/src/client/trends.rs +++ b/src/client/trends.rs @@ -54,7 +54,6 @@ impl MapResponse> for response::Startpage { _id: &str, lang: crate::param::Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - vdata: Option<&str>, ) -> Result>, ExtractionError> { let grid = self .contents @@ -71,9 +70,7 @@ impl MapResponse> for response::Startpage { Ok(map_startpage_videos( grid, lang, - self.response_context - .visitor_data - .or_else(|| vdata.map(str::to_owned)), + self.response_context.visitor_data, )) } } @@ -84,7 +81,6 @@ impl MapResponse> for response::Trending { _id: &str, lang: crate::param::Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - _vdata: Option<&str>, ) -> Result>, ExtractionError> { let items = self .contents @@ -150,9 +146,8 @@ mod tests { let startpage: response::Startpage = serde_json::from_reader(BufReader::new(json_file)).unwrap(); - let map_res: MapResult> = startpage - .map_response("", Language::En, None, None) - .unwrap(); + let map_res: MapResult> = + startpage.map_response("", Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), @@ -174,9 +169,8 @@ mod tests { let startpage: response::Trending = serde_json::from_reader(BufReader::new(json_file)).unwrap(); - let map_res: MapResult> = startpage - .map_response("", Language::En, None, None) - .unwrap(); + let map_res: MapResult> = + startpage.map_response("", Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), diff --git a/src/client/url_resolver.rs b/src/client/url_resolver.rs index 6ca8cb6..6b9e83b 100644 --- a/src/client/url_resolver.rs +++ b/src/client/url_resolver.rs @@ -328,7 +328,6 @@ impl MapResponse for response::ResolvedUrl { _id: &str, _lang: Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - _vdata: Option<&str>, ) -> Result, ExtractionError> { let pt = self.endpoint.page_type(); if let NavigationEndpoint::Browse { diff --git a/src/client/video_details.rs b/src/client/video_details.rs index 92570cc..b04e806 100644 --- a/src/client/video_details.rs +++ b/src/client/video_details.rs @@ -82,7 +82,6 @@ impl MapResponse for response::VideoDetails { id: &str, lang: Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - vdata: Option<&str>, ) -> Result, ExtractionError> { let mut warnings = Vec::new(); @@ -257,10 +256,7 @@ impl MapResponse for response::VideoDetails { _ => return Err(ExtractionError::InvalidData("invalid channel link".into())), }; - let visitor_data = self - .response_context - .visitor_data - .or_else(|| vdata.map(str::to_owned)); + let visitor_data = self.response_context.visitor_data; let recommended = contents .two_column_watch_next_results .secondary_results @@ -373,7 +369,6 @@ impl MapResponse> for response::VideoComments { _id: &str, lang: Language, _deobf: Option<&crate::deobfuscate::DeobfData>, - _vdata: Option<&str>, ) -> Result>, ExtractionError> { let received_endpoints = self.on_response_received_endpoints; let mut warnings = received_endpoints.warnings; @@ -566,7 +561,7 @@ mod tests { let details: response::VideoDetails = serde_json::from_reader(BufReader::new(json_file)).unwrap(); - let map_res = details.map_response(id, Language::En, None, None).unwrap(); + let map_res = details.map_response(id, Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), @@ -586,9 +581,7 @@ mod tests { let details: response::VideoDetails = serde_json::from_reader(BufReader::new(json_file)).unwrap(); - let err = details - .map_response("", Language::En, None, None) - .unwrap_err(); + let err = details.map_response("", Language::En, None).unwrap_err(); assert!(matches!( err, crate::error::ExtractionError::NotFound { .. } @@ -604,7 +597,7 @@ mod tests { let comments: response::VideoComments = serde_json::from_reader(BufReader::new(json_file)).unwrap(); - let map_res = comments.map_response("", Language::En, None, None).unwrap(); + let map_res = comments.map_response("", Language::En, None).unwrap(); assert!( map_res.warnings.is_empty(), diff --git a/src/serializer/snapshots/rustypipe__serializer__text__tests__t_attributed_description.snap b/src/serializer/snapshots/rustypipe__serializer__text__tests__t_attributed_description.snap index 4966a2f..e937bcc 100644 --- a/src/serializer/snapshots/rustypipe__serializer__text__tests__t_attributed_description.snap +++ b/src/serializer/snapshots/rustypipe__serializer__text__tests__t_attributed_description.snap @@ -80,42 +80,32 @@ SAttributed { Text { text: "\n\n", }, - Browse { + Text { text: "#aespa", - page_type: Unknown, - browse_id: "FEhashtag", }, Text { text: " ", }, - Browse { + Text { text: "#æspa", - page_type: Unknown, - browse_id: "FEhashtag", }, Text { text: " ", }, - Browse { + Text { text: "#BlackMamba", - page_type: Unknown, - browse_id: "FEhashtag", }, Text { text: " ", }, - Browse { + Text { text: "#블랙맘바", - page_type: Unknown, - browse_id: "FEhashtag", }, Text { text: " ", }, - Browse { + Text { text: "#에스파", - page_type: Unknown, - browse_id: "FEhashtag", }, Text { text: "\naespa 에스파 'Black Mamba' MV ℗ SM Entertainment", diff --git a/src/util/dictionary.rs b/src/util/dictionary.rs index 9d29edc..83d6c51 100644 --- a/src/util/dictionary.rs +++ b/src/util/dictionary.rs @@ -57,32 +57,26 @@ pub(crate) fn entry(lang: Language) -> Entry { match lang { Language::Af => Entry { timeago_tokens: ::phf::Map { - key: 8694567506910003252, + key: 12913932095322966823, disps: &[ - (17, 14), - (4, 2), - (0, 0), - (6, 6), + (4, 0), + (6, 5), + (7, 2), ], entries: &[ - ("j.", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("w.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("maand", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("dag", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("sekonde", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("md.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("maande", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("dae", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("week", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("uur", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("sekondes", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("minuut", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("u.", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("min.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("s.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("dag", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("weke", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("jaar", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("maand", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("sekondes", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("minute", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("week", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("minuut", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("ure", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("dae", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("sekonde", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -154,31 +148,30 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Am => Entry { timeago_tokens: ::phf::Map { - key: 15467950696543387533, + key: 10121458955350035957, disps: &[ - (2, 11), - (2, 2), - (8, 4), + (2, 0), (0, 0), + (6, 2), + (0, 11), ], entries: &[ - ("ደቂቃ፣", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("ሳምንታት", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("ወራት", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("ሰከንድ", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("ሳምንት", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("ሰዓቶች", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("ቀን", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("ደቂቃዎች", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("ሰዓት", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("ዓመት", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("ዓመታት", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("ዓመት", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("ወር", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("ሰዓቶች", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("ደቂቃዎች፣", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("ሳምንት", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("ሰከንዶች", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("ቀናት", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("ወር", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("ቀኖች", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("ደቂቃ", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("ደቂቃዎች፣", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("ደቂቃዎች", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("ደቂቃ፣", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("ሰዓት", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("ቀን", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("ሰከንድ", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("ወራት", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -251,46 +244,44 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Ar => Entry { timeago_tokens: ::phf::Map { - key: 2980949210194914378, + key: 10121458955350035957, disps: &[ - (1, 0), - (0, 3), - (2, 26), - (1, 11), - (25, 3), - (9, 5), + (1, 6), + (0, 21), + (1, 15), + (1, 23), + (2, 10), + (2, 0), ], entries: &[ - ("يوم\u{64b}ا", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("ثوان\u{650}", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("ساعات", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("دقائق", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("شهرين", TaToken { n: 2, unit: Some(TimeUnit::Month) }), - ("أشهر", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("ثانية", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("ساعة", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("يوم", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("ثوان", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("دقيقة", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("يومين", TaToken { n: 2, unit: Some(TimeUnit::Day) }), - ("ثانيتين", TaToken { n: 2, unit: Some(TimeUnit::Second) }), - ("أسبوعين", TaToken { n: 2, unit: Some(TimeUnit::Week) }), - ("دقيقتين", TaToken { n: 2, unit: Some(TimeUnit::Minute) }), - ("سنوات", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("دقيقتان", TaToken { n: 2, unit: Some(TimeUnit::Minute) }), - ("سنة", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("أسابيع", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("خلال", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("دقيقتين", TaToken { n: 2, unit: Some(TimeUnit::Minute) }), ("شهر\u{64b}ا", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("شهر", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("وثانية", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("ثانية", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("دقائق", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("دقيقتان", TaToken { n: 2, unit: Some(TimeUnit::Minute) }), ("سنتين", TaToken { n: 2, unit: Some(TimeUnit::Year) }), - ("ساعتين", TaToken { n: 2, unit: Some(TimeUnit::Hour) }), - ("أسبوع\u{64b}ا", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("ساعات", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("وثانية", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("ثوان", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("وثانيتان", TaToken { n: 2, unit: Some(TimeUnit::Second) }), + ("أسبوعين", TaToken { n: 2, unit: Some(TimeUnit::Week) }), + ("ساعة", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("ثانيتين", TaToken { n: 2, unit: Some(TimeUnit::Second) }), + ("شهرين", TaToken { n: 2, unit: Some(TimeUnit::Month) }), + ("يوم\u{64b}ا", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("سنة", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("ثوان\u{650}", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("سنوات", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("أيام", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("ساعتين", TaToken { n: 2, unit: Some(TimeUnit::Hour) }), + ("أشهر", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("يوم", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("أسبوع", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("ثوان\u{64d}", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("وثانيتان", TaToken { n: 2, unit: Some(TimeUnit::Second) }), + ("يومين", TaToken { n: 2, unit: Some(TimeUnit::Day) }), + ("شهر", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ], }, date_order: &[DateCmp::D, DateCmp::M, DateCmp::Y], @@ -476,8 +467,10 @@ pub(crate) fn entry(lang: Language) -> Entry { (0, 0), ], entries: &[ - ("dünən", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("güncəlləndi", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("bugün", TaToken { n: 0, unit: Some(TimeUnit::Day) }), + ("dünən", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("güncəllənib", TaToken { n: 0, unit: Some(TimeUnit::Day) }), ], }, comma_decimal: true, @@ -516,50 +509,42 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Be => Entry { timeago_tokens: ::phf::Map { - key: 12913932095322966823, + key: 14108922650502679131, disps: &[ - (0, 28), + (1, 19), + (15, 14), + (1, 2), + (12, 0), + (2, 10), (0, 0), - (0, 0), - (4, 25), - (28, 5), - (11, 16), - (1, 16), ], entries: &[ - ("гадз", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("год", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("тыдняў", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("секунду", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("гадзіны", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("месяца", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("дзён", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("с", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("тыдні", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("хвіліну", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("хвілін", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("мес.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("хв", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("г.", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("дня", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("дзень", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("гадзін", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("месяцаў", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("тыдзень", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("секунды", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("гады", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("гадзіну", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("месяц", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("дзень", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("секунда", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("года", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("месяцаў", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("тыдня", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("месяца", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("тыдні", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("хвілін", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("секунду", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("гадзіну", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("дня", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("год", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("дзён", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("гадзіны", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("месяцы", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("хвіліну", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("месяц", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("гадзін", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("гадоў", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("хвіліны", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("секунда", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("секунд", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("тыдня", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("месяцы", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("тыдзень", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("тыд", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("дні", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("хвіліна", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("гады", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("дні", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("секунд", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -632,34 +617,27 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Bg => Entry { timeago_tokens: ::phf::Map { - key: 12213676231523076107, + key: 7485420634051515786, disps: &[ - (0, 0), - (17, 15), - (0, 5), - (6, 18), + (2, 0), + (7, 12), + (5, 10), ], entries: &[ - ("седмици", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("година", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("г.", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("ч", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("дни", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("мин", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("час", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("седм.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("секунда", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("дни", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("месец", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("седмици", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("минута", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("години", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("седмица", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("ден", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("минути", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("месец", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("часа", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("години", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("сек", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("секунди", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("месеца", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("седмица", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("минута", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("секунда", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("м.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("часа", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("година", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("секунди", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ], }, date_order: &[DateCmp::D, DateCmp::M, DateCmp::Y], @@ -808,42 +786,33 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Bs => Entry { timeago_tokens: ::phf::Map { - key: 12913932095322966823, + key: 15467950696543387533, disps: &[ - (0, 17), - (4, 17), - (0, 17), - (1, 13), - (9, 0), - (1, 26), + (7, 18), + (4, 0), + (4, 3), + (7, 9), ], entries: &[ - ("sedmicu", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("mjesec", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("mj.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("mjeseca", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("dana", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("sekunde", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("sek.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("godinu", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("godina", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("mjeseci", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("min.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("sekundi", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("minutu", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("sekundu", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("sedmica", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("minute", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("sata", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("sati", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("god.", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("d.", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("sat", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("godine", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("sed.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("mjeseca", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("sata", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("sedmice", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("sekunda", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("minute", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("minutu", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("sat", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("sekundi", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("godina", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("dana", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("sati", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("mjesec", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("sekundu", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("minuta", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("mjeseci", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("sedmicu", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("sekunda", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("dan", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ], }, @@ -917,32 +886,27 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Ca => Entry { timeago_tokens: ::phf::Map { - key: 12913932095322966823, + key: 10121458955350035957, disps: &[ + (6, 7), + (2, 9), (0, 0), - (7, 4), - (2, 0), - (10, 3), ], entries: &[ - ("h", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("segon", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("s", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("setmanes", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("any", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("hora", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("min", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("dies", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("setmana", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("segon", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("mesos", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("hores", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("mes", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("minuts", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("segons", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("any", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("dies", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("dia", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("mesos", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("mes", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("setm.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("anys", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("hores", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("minut", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("setmanes", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("setmana", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("anys", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("dia", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -1014,50 +978,36 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Cs => Entry { timeago_tokens: ::phf::Map { - key: 10121458955350035957, + key: 12913932095322966823, disps: &[ - (0, 6), - (0, 0), - (0, 3), - (2, 1), - (6, 13), - (31, 18), - (3, 19), + (1, 0), + (1, 7), + (14, 20), + (1, 11), + (1, 20), ], entries: &[ - ("týdny", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("sekund", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("dne", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("hodinami", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("hodinou", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("sekundou", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("měsíci", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("týd.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("minut", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("r.", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("roky", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("minuty", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("rokem", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("měs.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("měsícem", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("minutami", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("týdne", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("měsícem", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("dnem", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("l.", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("s", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("minuta", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("h", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("lety", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("min", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("měsíce", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("sekundy", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("roku", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("sekunda", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("měsíci", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("týdnem", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("hodiny", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("minutou", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("sekund", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("lety", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("minuta", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("sekundou", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("minuty", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("sekundy", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("rokem", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("týdny", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("hodinou", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("sekundami", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("hodinami", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("roky", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("dny", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("sekunda", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("minut", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ], }, date_order: &[DateCmp::D, DateCmp::M, DateCmp::Y], @@ -1113,31 +1063,26 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Da => Entry { timeago_tokens: ::phf::Map { - key: 10121458955350035957, + key: 12913932095322966823, disps: &[ - (5, 0), - (5, 13), - (0, 12), - (1, 10), + (6, 0), + (0, 7), + (12, 11), ], entries: &[ ("sekunder", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("dage", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("mdr.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("år", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("sekund", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("time", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("måned", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("sek.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("md.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("sekund", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("minutter", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("time", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("år", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("timer", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("minut", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("dag", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("måneder", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("uger", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("uge", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("dag", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("minut", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("min.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("minutter", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("måneder", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -1209,31 +1154,27 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::De => Entry { timeago_tokens: ::phf::Map { - key: 15467950696543387533, + key: 345707026197253659, disps: &[ - (3, 4), - (0, 0), - (4, 3), - (1, 12), + (9, 13), + (3, 0), + (3, 6), ], entries: &[ - ("stunden", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("stunde", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("jahren", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("tagen", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("std.", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("sek.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("minute", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("monaten", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("sekunde", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("wochen", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("monat", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("min.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("minuten", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("sekunden", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("tag", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("jahr", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("woche", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("jahr", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("monat", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("wochen", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("minuten", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("monaten", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("sekunden", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("stunden", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("jahren", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("sekunde", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("tag", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("stunde", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("minute", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("tagen", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ], }, date_order: &[DateCmp::D, DateCmp::M, DateCmp::Y], @@ -1290,33 +1231,27 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::El => Entry { timeago_tokens: ::phf::Map { - key: 7485420634051515786, + key: 12213676231523076107, disps: &[ - (1, 10), - (1, 5), - (1, 0), - (0, 5), + (0, 0), + (7, 11), + (2, 7), ], entries: &[ - ("ημέρα", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("λεπ.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("ημέρες", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("έτος", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("ώρες", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("έτη", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("δευτερόλεπτο", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("δευτερόλεπτα", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("λεπτά", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("εβδομάδα", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("λεπτό", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("ώ.", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("ημ.", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("δευτ.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("ημέρες", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("εβδομάδες", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("μήνες", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("εβδ.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("ημέρα", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("έτη", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("λεπτό", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("έτος", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("μήνα", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("λεπτά", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("ώρα", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("δευτερόλεπτο", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("ώρες", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("δευτερόλεπτα", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -1391,40 +1326,25 @@ pub(crate) fn entry(lang: Language) -> Entry { timeago_tokens: ::phf::Map { key: 7485420634051515786, disps: &[ - (5, 3), - (1, 24), - (1, 16), - (0, 2), - (0, 0), - (3, 22), + (0, 7), + (8, 12), + (5, 0), ], entries: &[ - ("years", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("m", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("y", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("seconds", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("s", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("sec", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("d", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("day", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("h", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("yr", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("minute", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("week", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("hours", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("mo", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("weeks", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("second", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("minutes", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("wk", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("hr", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("year", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("w", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("hour", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("min", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("month", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("months", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("month", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("hours", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("days", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("years", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("week", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("second", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("day", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("minute", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("seconds", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("weeks", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("hour", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("minutes", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("year", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -1501,32 +1421,25 @@ pub(crate) fn entry(lang: Language) -> Entry { timeago_tokens: ::phf::Map { key: 10121458955350035957, disps: &[ - (5, 2), - (19, 19), - (1, 0), - (0, 0), + (8, 9), + (2, 0), + (7, 5), ], entries: &[ - ("día", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("horas", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("sem.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("semana", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("minutos", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("d", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("semanas", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("s", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("m", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("segundo", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("hora", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("minuto", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("h", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("años", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("segundos", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("mes", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("meses", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("minutos", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("semanas", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("segundo", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("días", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("mes", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("hora", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("años", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("día", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("semana", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("horas", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("año", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("min", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("minuto", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -1598,31 +1511,25 @@ pub(crate) fn entry(lang: Language) -> Entry { timeago_tokens: ::phf::Map { key: 10121458955350035957, disps: &[ - (4, 2), - (11, 2), - (6, 0), - (5, 0), + (8, 9), + (2, 0), + (7, 5), ], entries: &[ - ("año", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("h", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("hora", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("minuto", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("m", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("años", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("mes", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("min", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("segundos", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("meses", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("minutos", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("semanas", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("segundo", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("sem.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("horas", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("días", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("mes", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("hora", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("años", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("día", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("semana", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("meses", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("s", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("minutos", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("segundos", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("semanas", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("horas", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("año", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("minuto", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -1694,33 +1601,29 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Et => Entry { timeago_tokens: ::phf::Map { - key: 12213676231523076107, + key: 15467950696543387533, disps: &[ - (3, 0), - (1, 0), - (3, 9), - (6, 17), + (0, 1), + (0, 0), + (0, 3), + (5, 10), ], entries: &[ - ("minut", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("nädalat", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("nädala", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("nädal", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("p", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("t", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("kuu", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("minutit", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("tunni", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("näd", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("aasta", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("sekundi", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("minuti", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("min", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("sek", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("aastat", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("tunni", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("sekundi", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("kuu", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("kuud", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("sekund", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("minutit", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("nädal", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("päev", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("a", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("sekundit", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("sekund", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("aasta", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("minut", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("päeva", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ], }, @@ -1794,19 +1697,22 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Eu => Entry { timeago_tokens: ::phf::Map { - key: 10121458955350035957, + key: 12913932095322966823, disps: &[ + (1, 9), (0, 0), - (1, 5), ], entries: &[ - ("aste", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("minutu", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("segundo", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("ordu", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("urte", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("egun", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("astebete", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("hilabete", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("minutu", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("urtebete", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("segundo", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("aste", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("urte", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("ordu", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("ordubete", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ], }, date_order: &[DateCmp::Y, DateCmp::D], @@ -1963,36 +1869,27 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Fi => Entry { timeago_tokens: ::phf::Map { - key: 10121458955350035957, + key: 12213676231523076107, disps: &[ - (1, 6), - (2, 4), + (2, 13), (0, 0), - (4, 7), - (0, 1), + (0, 11), ], entries: &[ - ("tunti", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("min", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("vuotta", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("kk", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("sekunti", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("vk", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("vuosi", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("t", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("sekuntia", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("kuukautta", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("v", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("tuntia", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("pv", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("viikkoa", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("päivä", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("kuukausi", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("minuutti", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("minuuttia", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("s", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("päivää", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("viikko", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("sekuntia", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("kuukautta", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("tunti", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("vuosi", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("minuutti", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("vuotta", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("tuntia", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("viikkoa", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("päivää", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("sekunti", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ], }, date_order: &[DateCmp::D, DateCmp::M, DateCmp::Y], @@ -2051,21 +1948,19 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Fil => Entry { timeago_tokens: ::phf::Map { - key: 12913932095322966823, + key: 15467950696543387533, disps: &[ - (2, 2), - (7, 0), + (0, 0), + (0, 2), ], entries: &[ - ("min.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("buwan", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("seg.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("taon", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("linggo", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("araw", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("oras", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("segundo", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("araw", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("buwan", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("taon", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("minuto", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("linggo", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -2137,33 +2032,26 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Fr | Language::FrCa => Entry { timeago_tokens: ::phf::Map { - key: 1937371814602216758, + key: 10121458955350035957, disps: &[ - (6, 5), - (9, 7), - (4, 0), - (0, 3), + (12, 3), + (2, 11), + (2, 0), ], entries: &[ - ("semaines", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("j", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("ans", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("jours", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("secondes", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("mois", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("jour", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("minutes", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("seconde", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("an", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("semaine", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("heures", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("sem.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("minute", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("s", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("m.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("semaine", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("jour", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("mois", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("semaines", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("jours", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("seconde", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("heures", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("secondes", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("minutes", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("an", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("ans", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("heure", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("h", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("min", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -2241,32 +2129,27 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Gl => Entry { timeago_tokens: ::phf::Map { - key: 15467950696543387533, + key: 12913932095322966823, disps: &[ - (0, 0), - (8, 9), - (11, 7), - (7, 3), + (12, 6), + (3, 9), + (1, 0), ], entries: &[ - ("sem.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("semana", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("día", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("minutos", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("mes", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("días", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("segundos", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("anos", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("ano", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("horas", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("segundo", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("semanas", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("ano", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("hora", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("s", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("anos", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("segundos", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("semana", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("minuto", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("min", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("días", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("minutos", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("meses", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("mes", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("h", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("día", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("semanas", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("hora", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -2337,19 +2220,18 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Gu => Entry { timeago_tokens: ::phf::Map { - key: 10121458955350035957, + key: 12913932095322966823, disps: &[ - (7, 1), - (4, 0), + (1, 0), + (3, 0), ], entries: &[ - ("અઠ.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("સ\u{ac7}ક\u{a82}ડ", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("દિવસ", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("મહિના", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("વર\u{acd}ષ", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("અઠવાડિયા", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("મિનિટ", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("મહિના", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("દિવસ", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("સ\u{ac7}ક\u{a82}ડ", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("વર\u{acd}ષ", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("કલાક", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ], }, @@ -2422,22 +2304,19 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Hi => Entry { timeago_tokens: ::phf::Map { - key: 12213676231523076107, + key: 12913932095322966823, disps: &[ + (0, 5), (2, 0), - (1, 8), ], entries: &[ - ("घ\u{902}ट\u{947}", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("मिनट", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("सप\u{94d}ताह", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("वर\u{94d}ष", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("माह", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("घ\u{902}॰", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("दिन", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("मि॰", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("स\u{947}॰", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("सप\u{94d}ताह", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("स\u{947}क\u{902}ड", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("दिन", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("घ\u{902}ट\u{947}", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("मिनट", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -2511,43 +2390,34 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Hr => Entry { timeago_tokens: ::phf::Map { - key: 12913932095322966823, + key: 4066803471364472071, disps: &[ - (5, 26), - (0, 10), - (0, 10), - (0, 8), - (2, 0), - (0, 12), + (3, 3), + (3, 4), + (0, 0), + (1, 3), ], entries: &[ - ("tj.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("godina", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("minuta", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("mjeseci", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("tjedan", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("minutu", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("sati", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("sekunde", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("sekundu", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("sata", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("sekundi", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("s", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("h", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("dana", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("godine", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("min", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("tjedna", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("dan", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("tjedana", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("godina", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("godine", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("sat", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("minutu", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("mjeseci", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("sekundi", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("tjedan", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("sata", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("godinu", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("sekunda", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("sat", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("dana", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("mjesec", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("mjeseca", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("g.", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("mj.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("sekundu", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("sati", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("dan", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("minuta", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("sekunde", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("minute", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("mjeseca", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -2718,23 +2588,17 @@ pub(crate) fn entry(lang: Language) -> Entry { timeago_tokens: ::phf::Map { key: 12913932095322966823, disps: &[ - (4, 2), - (3, 6), - (2, 0), + (2, 3), + (1, 0), ], entries: &[ - ("տարի", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("ժ", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("ժամ", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("տ", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("վրկ", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("շաբաթ", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("վայրկյան", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("շաբ", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("շաբաթ", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("օր", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("ր", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("րոպե", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("ամիս", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("րոպե", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("ժամ", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("տարի", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -2810,24 +2674,17 @@ pub(crate) fn entry(lang: Language) -> Entry { timeago_tokens: ::phf::Map { key: 10121458955350035957, disps: &[ - (1, 0), - (5, 3), - (4, 5), + (0, 0), + (4, 1), ], entries: &[ - ("mgg", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("bln", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("detik", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("h", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("minggu", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("mnt", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("bulan", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("menit", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("hari", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("jam", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("thn", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("dtk", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("minggu", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("bulan", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("tahun", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("menit", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -2900,37 +2757,32 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Is => Entry { timeago_tokens: ::phf::Map { - key: 10121458955350035957, + key: 12913932095322966823, disps: &[ - (0, 0), - (4, 15), - (8, 13), - (0, 2), - (12, 7), + (2, 0), + (1, 6), + (5, 16), + (4, 6), ], entries: &[ - ("klst.", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("ári", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("klukkustund", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("sekúnda", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("mínútu", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("mín.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("mínúta", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("árum", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("mínútum", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("mán.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("mánuðum", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("sekúndum", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("mínútur", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("viku", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("sekúndu", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("vikum", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("sekúndur", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("sek.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("klukkustundum", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("dögum", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("mánuði", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("degi", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("mínútum", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("mínúta", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("mánuðum", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("mínútu", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("klukkustundum", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("sekúndum", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("sekúnda", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("árum", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("mínútur", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("ári", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("dögum", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("sekúndur", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("mánuði", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("viku", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("klukkustund", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("sekúndu", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -3005,34 +2857,27 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::It => Entry { timeago_tokens: ::phf::Map { - key: 10121458955350035957, + key: 15467950696543387533, disps: &[ - (0, 10), - (3, 19), - (6, 0), - (8, 16), + (2, 3), + (0, 0), + (6, 12), ], entries: &[ - ("sett.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("giorno", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("ora", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("mesi", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("gg", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("ore", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("anni", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("min", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("minuti", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("secondo", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("h", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("sec.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("anno", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("secondi", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("settimana", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("minuto", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("g", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("settimane", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("giorni", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("mese", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("giorni", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("settimane", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("ora", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("anni", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("giorno", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("secondo", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("ore", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("minuti", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("mesi", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("secondi", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("anno", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("minuto", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("settimana", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -3104,39 +2949,35 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Iw => Entry { timeago_tokens: ::phf::Map { - key: 2980949210194914378, + key: 15467950696543387533, disps: &[ - (1, 24), - (1, 11), (2, 0), - (23, 19), - (16, 16), + (0, 15), + (2, 10), + (3, 6), + (0, 2), ], entries: &[ + ("שנתיים", TaToken { n: 2, unit: Some(TimeUnit::Year) }), + ("דקות", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("שעה", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("שבועיים", TaToken { n: 2, unit: Some(TimeUnit::Week) }), + ("שניה", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("שנייה", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("שעות", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("שתי", TaToken { n: 2, unit: None }), - ("אתמול", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("יום", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("שבוע", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("ימים", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("שנים", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("חודשים", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("שניות", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("חודשיים", TaToken { n: 2, unit: Some(TimeUnit::Month) }), ("חודש", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("שבועות", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("יומיים", TaToken { n: 2, unit: Some(TimeUnit::Day) }), - ("חודשיים", TaToken { n: 2, unit: Some(TimeUnit::Month) }), - ("שבועיים", TaToken { n: 2, unit: Some(TimeUnit::Week) }), - ("שע׳", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("שב׳", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("שנייה", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("שנים", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("יום", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("שעות", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("שבוע", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("דקות", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("שניה", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("שנה", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("דקה", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("ימים", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("שנתיים", TaToken { n: 2, unit: Some(TimeUnit::Year) }), - ("דק׳", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("שניות", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("חודשים", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("שנה", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("יומיים", TaToken { n: 2, unit: Some(TimeUnit::Day) }), ("שעתיים", TaToken { n: 2, unit: Some(TimeUnit::Hour) }), ], }, @@ -3236,11 +3077,11 @@ pub(crate) fn entry(lang: Language) -> Entry { timeago_nd_tokens: ::phf::Map { key: 12913932095322966823, disps: &[ - (1, 0), + (0, 0), ], entries: &[ + ("日", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("本", TaToken { n: 0, unit: Some(TimeUnit::Day) }), - ("昨", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ], }, comma_decimal: false, @@ -3279,23 +3120,18 @@ pub(crate) fn entry(lang: Language) -> Entry { timeago_tokens: ::phf::Map { key: 14108922650502679131, disps: &[ - (3, 0), + (1, 0), (0, 3), - (6, 0), ], entries: &[ - ("წამი", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("კვირის", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("საათის", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("წმ", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("წლის", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("კვ.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("წუთის", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("სთ", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("თვის", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("დღის", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("წუთი", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("წთ", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("საათის", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("წლის", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("წამი", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("თვის", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("წამის", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ], }, @@ -3369,25 +3205,19 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Kk => Entry { timeago_tokens: ::phf::Map { - key: 12913932095322966823, + key: 7485420634051515786, disps: &[ - (0, 1), - (3, 0), - (2, 7), + (0, 3), + (2, 0), ], entries: &[ - ("сек.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("күн", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("жыл", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("апта", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("мин.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("ай", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("ж.", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("секунд", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("сағ.", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("ап.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("минут", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("сағат", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("ай", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("күн", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("жыл", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ], }, date_order: &[DateCmp::Y, DateCmp::D], @@ -3546,32 +3376,31 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Kn => Entry { timeago_tokens: ::phf::Map { - key: 12913932095322966823, + key: 15467950696543387533, disps: &[ - (2, 1), - (1, 10), - (1, 0), - (1, 11), + (0, 4), + (8, 2), + (8, 0), + (0, 2), ], entries: &[ + ("ನ\u{cbf}ಮ\u{cbf}ಷದ", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("ಸ\u{cc6}ಕ\u{cc6}ಂಡುಗಳು", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("ನ\u{cbf}ಮ\u{cbf}ಷಗಳು", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("ತ\u{cbf}ಂಗಳು", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("ನ\u{cbf}ಮ\u{cbf}ಷವು", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("ನ\u{cbf}ಮ\u{cbf}ಷಗಳ", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("ಸ\u{cc6}ಕ\u{cc6}ಂಡುಗಳ", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("ಸ\u{cc6}ಕ\u{cc6}ಂಡ\u{ccd}", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("ವರ\u{ccd}ಷದ", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("ಸ\u{cc6}ಕ\u{cc6}ಂಡುಗಳು", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("ವರ\u{ccd}ಷಗಳ", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("ಸ\u{cc6}ಕ\u{cc6}ಂಡುಗಳ", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("ವಾರಗಳ", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("ಗಂಟ\u{cc6}", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("ತ\u{cbf}ಂಗಳ", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("ದ\u{cbf}ನಗಳ", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("ನ\u{cbf}ಮ\u{cbf}ಷಗಳ", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("ಗಂಟ\u{cc6}", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("ದ\u{cbf}ನದ", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("ಗಂಟ\u{cc6}ಗಳ", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("ವಾರದ", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("ನ\u{cbf}ಮ\u{cbf}ಷದ", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("ದ\u{cbf}ನಗಳ", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("ವಾರಗಳ", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("ನ\u{cbf}ಮ\u{cbf}ಷವು", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("ತ\u{cbf}ಂಗಳುಗಳ", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("ವಾರದ", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("ಗಂಟ\u{cc6}ಗಳ", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("ವರ\u{ccd}ಷಗಳ", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -3713,24 +3542,19 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Ky => Entry { timeago_tokens: ::phf::Map { - key: 15467950696543387533, + key: 10121458955350035957, disps: &[ - (3, 4), - (2, 2), + (3, 3), (0, 0), ], entries: &[ - ("мүнөт", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("сек.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("ай", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("саат", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("жыл", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("секунд", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("саат.", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("мүн.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("ай", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("апта", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("апт.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("мүнөт", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("күн", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("секунд", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("апта", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ], }, date_order: &[DateCmp::Y, DateCmp::D], @@ -3803,27 +3627,21 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Lo => Entry { timeago_tokens: ::phf::Map { - key: 8694567506910003252, + key: 7485420634051515786, disps: &[ - (8, 0), - (7, 5), - (0, 2), + (2, 0), + (2, 0), ], entries: &[ ("ນາທ\u{eb5}", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("ຊ\u{ebb}\u{ec8}ວໂມງກ\u{ec8}ອນ", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("ວ\u{eb4}ນາທ\u{eb5}", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("ນາທ\u{eb5}ກ\u{ec8}ອນ", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("ມ\u{eb7}\u{ec9}ກ\u{ec8}ອນ", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("ຊມ.", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("ອາທ\u{eb4}ດກ\u{ec8}ອນ", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("ວ\u{eb4}ນາທ\u{eb5}ກ\u{ec8}ອນ", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("ເດ\u{eb7}ອນກ\u{ec8}ອນ", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("ຊ\u{ebb}\u{ec8}ວໂມງກ\u{ec8}ອນ", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("ດ.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("ປ\u{eb5}ກ\u{ec8}ອນ", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("ອທ.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("ນາທ\u{eb5}ກ\u{ec8}ອນ", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("ນທ.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("ອາທ\u{eb4}ດກ\u{ec8}ອນ", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("ວ\u{eb4}.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("ວ\u{eb4}ນາທ\u{eb5}", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -3897,52 +3715,40 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Lt => Entry { timeago_tokens: ::phf::Map { - key: 7485420634051515786, + key: 12913932095322966823, disps: &[ - (10, 3), - (8, 4), - (1, 15), - (1, 29), - (5, 0), - (0, 30), - (10, 17), + (0, 0), + (3, 23), + (18, 5), + (3, 9), + (2, 17), ], entries: &[ - ("minutė", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("dieną", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("valandas", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("dienų", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("sekundė", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("savaitės", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("sekundžių", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("mėnesių", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("mėnesius", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("valandą", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("minutės", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("minučių", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("minutes", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("sekundę", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("savaitę", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("metus", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("minutę", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("val.", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("sek.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("mėn.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("mėnesio", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("mėnesį", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("valandų", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("valandos", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("dienos", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("sav.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("min.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("m.", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("sekundės", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("sekundes", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("savaites", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("dienas", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("savaičių", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("minučių", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("dienų", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("sekundės", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("mėnesį", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("dienas", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("minutes", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("sekundė", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("valandų", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("minutę", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("sekundžių", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("minutės", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("d.", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("dieną", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("metų", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("mėnesių", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("savaitę", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("valandą", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("sekundes", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("metus", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("mėnesius", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("minutė", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("sekundę", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("savaites", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ], }, date_order: &[DateCmp::Y, DateCmp::M, DateCmp::D], @@ -4000,40 +3806,32 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Lv => Entry { timeago_tokens: ::phf::Map { - key: 7485420634051515786, + key: 10121458955350035957, disps: &[ - (3, 3), - (17, 11), - (1, 1), + (2, 4), (5, 0), - (10, 17), + (0, 17), + (5, 6), ], entries: &[ - ("sekundes", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("sekunžu", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("sekunde", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("ned.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("st.", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("nedēļām", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("g.", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("nedēļas", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("sek.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("mēneša", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("gada", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("minūšu", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("mēnešiem", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("stundām", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("minūte", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("d.", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("stundas", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("sekunžu", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("sekundēm", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("dienas", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("dienām", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("mēn.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("minūtes", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("gadiem", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("min.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("mēneša", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("nedēļas", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("sekundes", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("stundām", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("minūšu", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("minūtes", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("nedēļām", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("sekunde", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("minūtēm", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("dienām", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("stundas", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("minūte", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("dienas", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("mēnešiem", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ], }, date_order: &[DateCmp::Y, DateCmp::D], @@ -4108,28 +3906,24 @@ pub(crate) fn entry(lang: Language) -> Entry { timeago_tokens: ::phf::Map { key: 15467950696543387533, disps: &[ - (0, 11), - (11, 7), - (2, 9), - (2, 0), + (1, 11), + (11, 0), + (2, 7), ], entries: &[ + ("часа", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("дена", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("ден", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("год.", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("мин.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("час", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("минута", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("месец", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("минути", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("месеци", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("секунда", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("години", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("часа", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("седмици", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("сек.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("седмица", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("минути", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("час", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("минута", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("секунди", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("седмица", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("месец", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("седмици", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("ден", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("година", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ], }, @@ -4273,26 +4067,21 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Mn => Entry { timeago_tokens: ::phf::Map { - key: 12913932095322966823, + key: 2126027241312876569, disps: &[ - (1, 2), - (2, 0), - (1, 1), + (6, 6), + (0, 0), ], entries: &[ - ("мин", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("сарын", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("сек", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("өдрийн", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("хоногийн", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("жилийн", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("цагийн", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("минут", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("секунд", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("ц", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("долоо", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("минутын", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("секундын", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("цагийн", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("жилийн", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("секунд", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("минут", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("хоногийн", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("минутын", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("сарын", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ], }, date_order: &[DateCmp::Y, DateCmp::M, DateCmp::D], @@ -4350,33 +4139,31 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Mr => Entry { timeago_tokens: ::phf::Map { - key: 10121458955350035957, + key: 12913932095322966823, disps: &[ - (7, 3), - (15, 0), - (0, 13), - (1, 0), + (0, 0), + (0, 8), + (7, 4), + (1, 6), ], entries: &[ - ("वर\u{94d}षा\u{902}प\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("मिनिट", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("महिन\u{94d}या\u{902}प\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("आठवड\u{94d}या\u{902}प\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("स\u{947}क\u{902}दाप\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("तासाप\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("महिन\u{94d}याप\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("स\u{947}.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("दिवसाप\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("मिनिटाप\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("स\u{947}क\u{902}दा\u{902}प\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("मिनि.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("महिन\u{94d}या\u{902}प\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("दिवसा\u{902}प\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("मिनिटा\u{902}प\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("स\u{947}क\u{902}द", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("मिनिट\u{947}", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("वर\u{94d}षाप\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("तासा\u{902}प\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("आठवड\u{94d}याप\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("मिनिटाप\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("स\u{947}क\u{902}द", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("तासा\u{902}प\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("स\u{947}क\u{902}दा\u{902}प\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("मिनिटा\u{902}प\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("महिन\u{94d}याप\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("स\u{947}क\u{902}दाप\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("मिनिट", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("आठवड\u{94d}या\u{902}प\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("वर\u{94d}षाप\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("मिनिट\u{947}", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("तासाप\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("वर\u{94d}षा\u{902}प\u{942}र\u{94d}वी", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -4451,24 +4238,19 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Ms => Entry { timeago_tokens: ::phf::Map { - key: 12913932095322966823, + key: 10121458955350035957, disps: &[ - (3, 10), - (0, 0), - (10, 9), + (3, 0), + (0, 1), ], entries: &[ - ("tahun", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("hari", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("saat", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("minit", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("mgu", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("jam", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("bln", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("minggu", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("min", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("bulan", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("thn", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("hari", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("minggu", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("tahun", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("jam", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -4719,28 +4501,25 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Nl => Entry { timeago_tokens: ::phf::Map { - key: 12213676231523076107, + key: 14108922650502679131, disps: &[ - (3, 9), - (7, 7), - (1, 0), + (8, 0), + (2, 10), + (2, 6), ], entries: &[ - ("maand", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("minuten", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("maanden", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("dagen", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("weken", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("seconde", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("sec.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("min.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("week", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("minuut", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("dgn", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("uur", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("dag", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("jaar", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("dagen", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("minuut", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("seconde", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("seconden", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("jaar", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("maanden", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("maand", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("dag", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("week", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("minuten", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -4812,34 +4591,27 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::No => Entry { timeago_tokens: ::phf::Map { - key: 12213676231523076107, + key: 7485420634051515786, disps: &[ - (0, 2), - (3, 14), - (8, 14), - (12, 0), + (0, 0), + (0, 0), + (5, 6), ], entries: &[ + ("minutter", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("dag", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("timer", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("sek", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("t", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("måned", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("u.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("md.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("sekunder", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("minutt", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("døgn", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("time", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("min", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("dager", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("uker", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("år", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("sekund", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("uke", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("minutter", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("d.", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("år", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("sekunder", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("måneder", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("timer", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("måned", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("dager", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("time", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("uke", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -4914,27 +4686,20 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Or => Entry { timeago_tokens: ::phf::Map { - key: 12913932095322966823, + key: 1937371814602216758, disps: &[ - (11, 1), - (7, 1), - (1, 0), + (0, 7), + (5, 0), ], entries: &[ - ("ମ\u{b3f}ନ\u{b3f}ଟ\u{b4d}", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("ବ.", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("ଘ.", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("ସପ\u{b4d}ତ\u{b3e}ହ", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("ମ\u{b3f}.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("ବର\u{b4d}ଷ", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("ଦ\u{b3f}ନ", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("ସପ\u{b4d}ତ\u{b3e}.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("ସେକେଣ\u{b4d}ଡ", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("ମ\u{b3e}.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("ସେ.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("ମ\u{b3e}ସ", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("ମ\u{b3f}ନ\u{b3f}ଟ\u{b4d}\u{200c}", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("ଦ\u{b3f}ନ", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("ବର\u{b4d}ଷ", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("ମ\u{b3e}ସ", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("ଘଣ\u{b4d}ଟ\u{b3e}", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("ମ\u{b3f}ନ\u{b3f}ଟ\u{b4d}", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("ସପ\u{b4d}ତ\u{b3e}ହ", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -5103,49 +4868,36 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Pl => Entry { timeago_tokens: ::phf::Map { - key: 14108922650502679131, + key: 15467950696543387533, disps: &[ - (0, 30), - (3, 11), - (1, 6), - (0, 0), - (7, 0), - (10, 5), - (26, 5), + (1, 0), + (1, 20), + (0, 16), + (6, 15), + (9, 5), ], entries: &[ - ("minuta", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("miesiące", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("godziny", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("miesięcy", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("miesiąc", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("tygodnia", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("dzień", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("tydz.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("tygodnie", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("minutę", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("sekundę", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("minuty", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("sekunda", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("lat", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("mies.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("min", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("lata", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("roku", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("rok", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("minut", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("sekund", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("miesiące", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("miesięcy", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("minut", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("minuta", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("minuty", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("tydzień", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("minutę", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("sekundy", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("godzin", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("tygodnie", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("dzień", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("sekunda", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("dni", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("godzinę", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("sekundy", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("miesiąca", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("sek.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("godz.", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("godzin", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("dnia", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("tydzień", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("tyg.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("tygodni", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("godziny", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("miesiąc", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("lata", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -5218,32 +4970,27 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Pt => Entry { timeago_tokens: ::phf::Map { - key: 14108922650502679131, + key: 10121458955350035957, disps: &[ - (1, 13), - (0, 14), + (6, 9), (0, 0), - (3, 17), + (2, 6), ], entries: &[ - ("mês", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("hora", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("seg.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("minutos", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("horas", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("ano", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("segundos", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("dia", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("sem.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("segundo", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("semana", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("ano", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("meses", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("anos", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("minuto", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("segundos", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("dias", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("h", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("meses", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("min.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("semana", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("hora", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("semanas", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("segundo", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("minutos", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("horas", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("mês", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("dias", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -5316,32 +5063,27 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::PtPt => Entry { timeago_tokens: ::phf::Map { - key: 7485420634051515786, + key: 10121458955350035957, disps: &[ - (4, 15), - (0, 5), - (2, 0), - (2, 1), + (6, 9), + (0, 0), + (2, 6), ], entries: &[ - ("minutos", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("segundos", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("minuto", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("s", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("sem.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("semanas", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("mês", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("hora", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("h", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("meses", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("ano", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("segundo", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("dias", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("semana", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("min", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("anos", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("horas", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("dia", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("ano", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("meses", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("anos", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("minuto", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("semana", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("hora", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("semanas", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("segundo", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("minutos", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("horas", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("mês", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("dias", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ], }, date_order: &[DateCmp::D, DateCmp::M, DateCmp::Y], @@ -5397,32 +5139,27 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Ro => Entry { timeago_tokens: ::phf::Map { - key: 15467950696543387533, + key: 14108922650502679131, disps: &[ + (0, 0), + (4, 2), (0, 6), - (3, 2), - (12, 4), - (4, 0), ], entries: &[ - ("sec.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("min.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("lună", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("săptămână", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("luni", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("an", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("zi", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("săptămâni", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("secunde", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("săpt.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("h", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("ore", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("minut", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("ani", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("oră", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("an", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("lună", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("ani", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("minute", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("secunde", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("zile", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("secundă", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("minut", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("săptămâni", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("zi", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("ore", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -5497,46 +5234,35 @@ pub(crate) fn entry(lang: Language) -> Entry { timeago_tokens: ::phf::Map { key: 12913932095322966823, disps: &[ - (25, 1), - (0, 0), - (0, 12), - (3, 1), - (5, 14), - (0, 1), - (27, 10), + (2, 0), + (0, 18), + (0, 9), + (7, 3), + (16, 13), ], entries: &[ - ("час", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("дн.", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("г.", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("минута", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("секунду", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("часа", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("года", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("дня", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("сек.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("секунд", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("год", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("неделю", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("нед.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("дней", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("часов", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("секунда", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("ч", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("недель", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("месяц", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("минуту", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("мес.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("л.", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("лет", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("минут", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("мин.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("недели", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("месяца", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("секунды", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("месяц", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("месяцев", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("дня", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("лет", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("минуты", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("день", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("месяцев", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("года", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("секунду", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("секунда", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("секунд", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("неделю", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("дней", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("час", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("часа", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("минут", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("минуту", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("секунды", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("год", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("минута", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("часов", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -5694,46 +5420,32 @@ pub(crate) fn entry(lang: Language) -> Entry { timeago_tokens: ::phf::Map { key: 15467950696543387533, disps: &[ - (0, 14), (0, 0), - (0, 3), - (0, 5), - (5, 21), - (16, 5), - (4, 10), + (1, 8), + (1, 1), + (0, 17), ], entries: &[ - ("mes.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("mesiacmi", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("minútou", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("sekundami", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("minút", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("týždňami", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("sekunda", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("sekundy", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("týždňom", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("sekúnd", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("hodinami", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("hodinou", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("týž.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("dňa", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("s", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("h", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("sekundy", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("min", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("rokom", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("rokmi", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("mesiacom", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("roka", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("sekunda", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("týždňami", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("sekundami", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("rokom", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("minútami", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("minútou", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("dňom", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("minúty", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("týždňa", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("r.", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("mesiacmi", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("dňom", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("dňami", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("d.", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("minúta", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("sekundou", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("minút", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("týždňom", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("mesiaca", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("minúta", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("rokmi", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ], }, date_order: &[DateCmp::D, DateCmp::M, DateCmp::Y], @@ -5791,51 +5503,46 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Sl => Entry { timeago_tokens: ::phf::Map { - key: 14108922650502679131, + key: 12913932095322966823, disps: &[ - (7, 9), - (0, 0), - (0, 3), - (0, 11), - (7, 26), - (0, 6), - (1, 17), + (1, 2), + (5, 22), + (2, 4), + (0, 22), + (13, 22), + (2, 0), ], entries: &[ - ("tednom", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("sekund", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("dnem", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("dnevom", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("mesecema", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("minutami", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("sekundo", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("sekundama", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("dnevi", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("min.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("sekunda", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("letom", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("sekundi", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("letoma", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("minutama", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("tedni", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("minuto", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("ted.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("urama", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("dnevoma", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("sekunde", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("s", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("tednoma", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("minuta", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("meseci", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("uro", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("mes.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("tednoma", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("sekund", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("minut", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("minute", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("sekundami", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("urami", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("minuti", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("leti", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("minute", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("minuto", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("urami", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("minutami", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("dnevoma", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("sekundi", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("uro", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("dnevi", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("sekunda", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("mesecem", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("mesecema", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("minutama", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("sekundo", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("letoma", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("letom", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("tednom", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("urama", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("dnevom", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("minut", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("sekundami", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("tedni", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("leti", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("sekundama", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -5908,25 +5615,22 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Sq => Entry { timeago_tokens: ::phf::Map { - key: 15467950696543387533, + key: 471159234146692604, disps: &[ - (1, 7), - (3, 10), - (2, 0), + (8, 0), + (1, 3), ], entries: &[ - ("muaj", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("sekonda", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("min", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("minuta", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("javë", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("vit", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("minutë", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("sekondë", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("sek", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("vjet", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("ditë", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("orë", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("minuta", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("vit", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("ditë", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("muaj", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("javë", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("sekondë", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("minutë", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("vjet", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -5999,36 +5703,32 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Sr => Entry { timeago_tokens: ::phf::Map { - key: 12913932095322966823, + key: 14108922650502679131, disps: &[ - (1, 20), - (7, 11), - (5, 0), - (2, 5), - (1, 13), + (16, 6), + (3, 0), + (14, 6), + (5, 13), ], entries: &[ - ("мин.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("секунде", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("дана", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("минут", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("секунда", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("дана", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("недеља", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("сати", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("минута", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("нед.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("година", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("недеље", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("сата", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("секунде", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("месеца", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("секунди", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("године", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("д.", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("месеца", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("недеље", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("година", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("сати", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("сат", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("месеци", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("мес.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("год.", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("сек.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("ч.", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("недељу", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("дан", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("месец", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("године", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("минута", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("годину", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("сата", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ], }, date_order: &[DateCmp::D, DateCmp::M, DateCmp::Y], @@ -6086,34 +5786,31 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::SrLatn => Entry { timeago_tokens: ::phf::Map { - key: 15467950696543387533, + key: 12913932095322966823, disps: &[ + (3, 0), + (2, 9), + (1, 4), (0, 0), - (4, 16), - (1, 12), - (4, 19), - (2, 15), ], entries: &[ - ("meseca", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("minut", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("god.", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("minuta", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("nedelje", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("meseci", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("sek.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("d.", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("sata", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("min.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("godine", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("mes.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("ned.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("godina", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("sekunde", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("č.", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("sekundi", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("dana", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("dan", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("sekunda", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("nedelju", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("godina", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("godine", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("mesec", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("minut", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("nedelje", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("sekunde", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("meseci", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("minuta", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("sat", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("meseca", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("dana", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("godinu", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("sekundi", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("sata", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("sati", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("nedelja", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ], @@ -6173,33 +5870,26 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Sv => Entry { timeago_tokens: ::phf::Map { - key: 12213676231523076107, + key: 15467950696543387533, disps: &[ - (9, 3), - (6, 13), - (8, 17), - (1, 0), + (2, 11), + (2, 0), + (9, 1), ], entries: &[ + ("år", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("månader", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("timmar", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("dagar", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("vecka", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("sekund", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("månad", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("veckor", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("minut", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("dag", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("min", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("månader", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("mån.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("sekunder", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("tim", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("sekund", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("vecka", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("s", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("månad", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("dagar", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("v.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("minuter", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("år", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("veckor", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("timme", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("timmar", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("d", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("minuter", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("sekunder", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -6358,37 +6048,31 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Ta => Entry { timeago_tokens: ::phf::Map { - key: 12913932095322966823, + key: 8694567506910003252, disps: &[ - (0, 6), - (3, 0), - (20, 14), - (4, 0), - (5, 17), + (5, 3), + (2, 13), + (11, 0), + (1, 10), ], entries: &[ - ("வ\u{bbe}ரத\u{bcd}திற\u{bcd}கு", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("ஆண\u{bcd}டுகளுக\u{bcd}கு", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("வ\u{bbe}ரங\u{bcd}களுக\u{bcd}கு", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("நிமி.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("நிமிடம\u{bcd}", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("நிமிடத\u{bcd}திற\u{bcd}கு", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("நிமிடங\u{bcd}கள\u{bcd}", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("ந\u{bbe}ளுக\u{bcd}கு", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("விந\u{bbe}டிகளுக\u{bcd}கு", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("விந\u{bbe}.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("ஆண\u{bcd}டிற\u{bcd}கு", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("மணிநேரம\u{bcd}", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("விந\u{bbe}டிகள\u{bcd}", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("ம\u{bbe}த.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("விந\u{bbe}டிக\u{bcd}கு", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("ந\u{bbe}ட\u{bcd}களுக\u{bcd}கு", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("விந\u{bbe}டி", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("ம\u{bbe}தத\u{bcd}துக\u{bcd}கு", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("நிமிடத\u{bcd}திற\u{bcd}கு", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("விந\u{bbe}டிகளுக\u{bcd}கு", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("நிமிடங\u{bcd}களுக\u{bcd}கு", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("வ\u{bbe}ர.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("மணி.", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("ஆண\u{bcd}டிற\u{bcd}கு", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("நிமிடங\u{bcd}கள\u{bcd}", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("வ\u{bbe}ரங\u{bcd}களுக\u{bcd}கு", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("விந\u{bbe}டி", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("ஆண\u{bcd}டுகளுக\u{bcd}கு", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("ம\u{bbe}தங\u{bcd}களுக\u{bcd}கு", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("ந\u{bbe}ளுக\u{bcd}கு", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("வ\u{bbe}ரம\u{bcd}", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("மணிநேரம\u{bcd}", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("ந\u{bbe}ட\u{bcd}களுக\u{bcd}கு", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("நிமிடம\u{bcd}", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("விந\u{bbe}டிக\u{bcd}கு", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -6460,34 +6144,30 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Te => Entry { timeago_tokens: ::phf::Map { - key: 8694567506910003252, + key: 15467950696543387533, disps: &[ - (0, 0), - (2, 16), - (1, 2), - (3, 18), + (1, 4), + (1, 0), + (5, 0), + (9, 14), ], entries: &[ - ("స\u{c46}క.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("గంటల", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("న\u{c3f}మ\u{c3f}ష\u{c3e}లు", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("న\u{c46}ల", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("గం.", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("సం.", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("స\u{c46}కన\u{c4d}ల", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("ర\u{c4b}జుల", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("స\u{c46}కను", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("సంవత\u{c4d}సరం", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("న\u{c46}లల", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("న\u{c3f}మ\u{c3f}.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("గంట", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("సంవత\u{c4d}సర\u{c3e}ల", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("ర\u{c4b}జు", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("వ\u{c3e}రం", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("ర\u{c4b}జుల", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("గంట", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("వ\u{c3e}ర\u{c3e}ల", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("న\u{c3f}మ\u{c3f}ష\u{c3e}ల", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("స\u{c46}కన\u{c4d}లు", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("సంవత\u{c4d}సర\u{c3e}ల", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("స\u{c46}కన\u{c4d}ల", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("న\u{c3f}మ\u{c3f}షం", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("ర\u{c4b}జు", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("న\u{c46}ల", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("స\u{c46}కన\u{c4d}లు", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("సంవత\u{c4d}సరం", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("న\u{c3f}మ\u{c3f}ష\u{c3e}లు", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("స\u{c46}కను", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("గంటల", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("న\u{c3f}మ\u{c3f}ష\u{c3e}ల", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("న\u{c46}లల", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -6560,30 +6240,22 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Th => Entry { timeago_tokens: ::phf::Map { - key: 8694567506910003252, + key: 12913932095322966823, disps: &[ - (0, 4), (0, 0), - (5, 14), - (0, 15), + (8, 2), ], entries: &[ - ("ท\u{e35}\u{e48}แล\u{e49}ว", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("นาท\u{e35}ท\u{e35}\u{e48}ผ\u{e48}านมา", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("นาท\u{e35}ท\u{e35}\u{e48}แล\u{e49}ว", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("ชม.", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("ส\u{e31}ปดาห\u{e4c}ท\u{e35}\u{e48}ผ\u{e48}านมา", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("ว\u{e34}นาท\u{e35}", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("ช\u{e31}\u{e48}วโมงท\u{e35}\u{e48}ผ\u{e48}านมา", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("นาท\u{e35}ท\u{e35}\u{e48}ผ\u{e48}านมา", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("นาท\u{e35}", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("ว\u{e31}นท\u{e35}\u{e48}ผ\u{e48}านมา", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("ว\u{e34}นาท\u{e35}ท\u{e35}\u{e48}ผ\u{e48}านมา", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("ว\u{e34}นาท\u{e35}ท\u{e35}\u{e48}แล\u{e49}ว", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("ส\u{e31}ปดาห\u{e4c}ท\u{e35}\u{e48}แล\u{e49}ว", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("ป\u{e35}ท\u{e35}\u{e48}แล\u{e49}ว", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("เด\u{e37}อนท\u{e35}\u{e48}แล\u{e49}ว", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("ส\u{e31}ปดาห\u{e4c}ท\u{e35}\u{e48}ผ\u{e48}านมา", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("ว\u{e31}นท\u{e35}\u{e48}แล\u{e49}ว", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("เด\u{e37}อนท\u{e35}\u{e48}ผ\u{e48}านมา", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("ช\u{e31}\u{e48}วโมงท\u{e35}\u{e48}ผ\u{e48}านมา", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("ว\u{e34}นาท\u{e35}ท\u{e35}\u{e48}ผ\u{e48}านมา", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -6660,24 +6332,19 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Tr => Entry { timeago_tokens: ::phf::Map { - key: 7485420634051515786, + key: 12913932095322966823, disps: &[ - (4, 4), - (1, 0), - (2, 3), + (6, 0), + (0, 6), ], entries: &[ + ("gün", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("hafta", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("saat", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("hf.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("yıl", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("ay", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("dakika", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("hafta", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ("saniye", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("dk.", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("yıl", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("sn.", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("sa.", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("gün", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -6750,51 +6417,37 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Uk => Entry { timeago_tokens: ::phf::Map { - key: 8694567506910003252, + key: 12913932095322966823, disps: &[ - (0, 23), - (9, 17), + (1, 19), + (10, 3), + (15, 2), + (0, 9), (0, 0), - (25, 6), - (13, 19), - (1, 11), - (1, 24), ], entries: &[ ("тиждень", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("секунду", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("тижня", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("місяць", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("р.", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("місяці", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("хвилина", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("годину", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("с", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("день", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("годин", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("рік", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("секунд", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("року", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("години", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("днів", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("хвилини", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("тижні", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("місяців", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("дн.", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("секунда", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("років", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("місяць", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("днів", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("рік", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("секунду", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("секунди", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("хвилину", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("тижнів", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("хв", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("год", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("хвилин", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("дні", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("секунда", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("хвилини", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("хвилина", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("місяці", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("години", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("секунд", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("роки", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("місяця", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("дня", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("міс.", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("тиж.", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("хвилину", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("годин", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("день", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("місяців", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("годину", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("років", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("дні", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("хвилин", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -6867,28 +6520,27 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Ur => Entry { timeago_tokens: ::phf::Map { - key: 4066803471364472071, + key: 12213676231523076107, disps: &[ - (14, 4), - (2, 0), - (1, 6), + (11, 7), + (0, 10), + (1, 0), ], entries: &[ - ("ہفتہ", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("مہینے", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("سال", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("گھنٹے", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("منٹ،", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("گھنٹہ", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("ماہ", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("دن", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("ہفتے", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("مہینہ", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("منٹس", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), ("منٹ", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("ہفتے", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("ہفتہ", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("منٹ،", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("گھنٹے", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("سال", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("سیکنڈز", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("دن", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("سیکنڈ", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("دنوں", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("سیکنڈز", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("منٹس", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("مہینہ", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("گھنٹہ", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("مہینے", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], @@ -7045,19 +6697,20 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Vi => Entry { timeago_tokens: ::phf::Map { - key: 15467950696543387533, + key: 10121458955350035957, disps: &[ - (2, 3), - (1, 0), + (7, 3), + (7, 0), ], entries: &[ ("giờ", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), - ("giây", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("ngày", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("tuần", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("giây", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("năm", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("tiếng", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), ("tháng", TaToken { n: 1, unit: Some(TimeUnit::Month) }), ("phút", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("năm", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("tuần", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ], }, date_order: &[DateCmp::D, DateCmp::M, DateCmp::Y], @@ -7139,11 +6792,11 @@ pub(crate) fn entry(lang: Language) -> Entry { timeago_nd_tokens: ::phf::Map { key: 12913932095322966823, disps: &[ - (1, 0), + (0, 0), ], entries: &[ + ("日", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("今", TaToken { n: 0, unit: Some(TimeUnit::Day) }), - ("昨", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ], }, comma_decimal: false, @@ -7209,11 +6862,11 @@ pub(crate) fn entry(lang: Language) -> Entry { timeago_nd_tokens: ::phf::Map { key: 12913932095322966823, disps: &[ - (1, 0), + (0, 0), ], entries: &[ + ("天", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("今", TaToken { n: 0, unit: Some(TimeUnit::Day) }), - ("昨", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ], }, comma_decimal: false, @@ -7276,11 +6929,11 @@ pub(crate) fn entry(lang: Language) -> Entry { timeago_nd_tokens: ::phf::Map { key: 12913932095322966823, disps: &[ - (1, 0), + (0, 0), ], entries: &[ + ("天", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ("今", TaToken { n: 0, unit: Some(TimeUnit::Day) }), - ("昨", TaToken { n: 1, unit: Some(TimeUnit::Day) }), ], }, comma_decimal: false, @@ -7317,38 +6970,27 @@ pub(crate) fn entry(lang: Language) -> Entry { }, Language::Zu => Entry { timeago_tokens: ::phf::Map { - key: 106375038446233661, + key: 8694567506910003252, disps: &[ - (0, 13), - (7, 20), - (6, 13), - (1, 0), - (21, 18), + (1, 8), + (0, 0), + (11, 4), ], entries: &[ - ("ezedlule.", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("inyanga", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("amaviki", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("osukwini", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("ezingu", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("elingu", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("usuku", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("izinsuku", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("odlule", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("olungu", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("unyaka", TaToken { n: 1, unit: Some(TimeUnit::Year) }), - ("amasekhondi", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("ezinsukwini", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("isekhondi", TaToken { n: 1, unit: Some(TimeUnit::Second) }), - ("izinyanga", TaToken { n: 1, unit: Some(TimeUnit::Month) }), - ("iviki", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("evikini", TaToken { n: 1, unit: Some(TimeUnit::Week) }), - ("olwedlule", TaToken { n: 1, unit: Some(TimeUnit::Day) }), - ("iminithi", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("amaminithi", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), - ("iminyaka", TaToken { n: 1, unit: Some(TimeUnit::Year) }), ("emahoreni", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("iviki", TaToken { n: 1, unit: Some(TimeUnit::Week) }), + ("amasekhondi", TaToken { n: 1, unit: Some(TimeUnit::Second) }), + ("izinyanga", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("iminithi", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("ezinsukwini", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("osukwini", TaToken { n: 1, unit: Some(TimeUnit::Day) }), + ("amaminithi", TaToken { n: 1, unit: Some(TimeUnit::Minute) }), + ("unyaka", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("iminyaka", TaToken { n: 1, unit: Some(TimeUnit::Year) }), + ("inyanga", TaToken { n: 1, unit: Some(TimeUnit::Month) }), + ("isekhondi", TaToken { n: 1, unit: Some(TimeUnit::Second) }), ("ihora", TaToken { n: 1, unit: Some(TimeUnit::Hour) }), + ("amaviki", TaToken { n: 1, unit: Some(TimeUnit::Week) }), ], }, date_order: &[DateCmp::D, DateCmp::Y], diff --git a/src/util/mod.rs b/src/util/mod.rs index 5f05ae4..a16b68c 100644 --- a/src/util/mod.rs +++ b/src/util/mod.rs @@ -26,7 +26,7 @@ pub static VIDEO_ID_REGEX: Lazy = Lazy::new(|| Regex::new(r"^[A-Za-z0-9_- pub static CHANNEL_ID_REGEX: Lazy = Lazy::new(|| Regex::new(r"^UC[A-Za-z0-9_-]{22}$").unwrap()); pub static PLAYLIST_ID_REGEX: Lazy = - Lazy::new(|| Regex::new(r"^(?:PL|RD|OLAK|UU)[A-Za-z0-9_-]{16,50}$").unwrap()); + Lazy::new(|| Regex::new(r"^(?:PL|RDCLAK|OLAK|UU)[A-Za-z0-9_-]{16,50}$").unwrap()); pub static ALBUM_ID_REGEX: Lazy = Lazy::new(|| Regex::new(r"^MPREb_[A-Za-z0-9_-]{11}$").unwrap()); pub static VANITY_PATH_REGEX: Lazy = Lazy::new(|| { @@ -128,35 +128,7 @@ where buf.parse() } -/// Parse a string after removing all non-numeric characters. -/// -/// If the string contains multiple numbers, it returns the product of them. -pub fn parse_numeric_prod(string: &str) -> Option -where - F: FromStr + Copy + std::ops::Mul, -{ - let mut n = None; - let mut buf = String::new(); - - for c in string.chars() { - if c.is_ascii_digit() { - buf.push(c); - } else if !buf.is_empty() { - if let Ok(x) = buf.parse::() { - n = n.map(|n| n * x).or(Some(x)); - } - buf.clear(); - } - } - if !buf.is_empty() { - if let Ok(x) = buf.parse::() { - n = n.map(|n| n * x).or(Some(x)); - } - } - n -} - -/// Parse all numbers occurring in a string and return them as a vec +/// Parse all numbers occurring in a string and reurn them as a vec pub fn parse_numeric_vec(string: &str) -> Vec where F: FromStr, diff --git a/src/util/timeago.rs b/src/util/timeago.rs index 5c90b16..8f9cebd 100644 --- a/src/util/timeago.rs +++ b/src/util/timeago.rs @@ -199,20 +199,7 @@ pub fn parse_timeago(lang: Language, textual_date: &str) -> Option { let entry = dictionary::entry(lang); let filtered_str = filter_str(textual_date); - let qu: u8 = util::parse_numeric_prod(textual_date).unwrap_or(1); - - // French uses 'a' as a short form of years. - // Since 'a' is also a word in French, it cannot be parsed as a token. - if matches!( - lang, - Language::Fr | Language::FrCa | Language::Es | Language::Es419 | Language::EsUs - ) && textual_date.ends_with(" a") - { - return Some(TimeAgo { - n: qu, - unit: TimeUnit::Year, - }); - } + let qu: u8 = util::parse_numeric(textual_date).unwrap_or(1); TaTokenParser::new(&entry, util::lang_by_char(lang), false, &filtered_str) .next() @@ -416,10 +403,10 @@ mod tests { use crate::util::tests::TESTFILES; #[rstest] - #[case::de(Language::De, "vor 1 Sekunde", Some(TimeAgo { n: 1, unit: TimeUnit::Second }))] - #[case::ar(Language::Ar, "قبل ساعة واحدة", Some(TimeAgo { n: 1, unit: TimeUnit::Hour }))] + #[case(Language::De, "vor 1 Sekunde", Some(TimeAgo { n: 1, unit: TimeUnit::Second }))] + #[case(Language::Ar, "قبل ساعة واحدة", Some(TimeAgo { n: 1, unit: TimeUnit::Hour }))] // No-break space - #[case::nbsp(Language::De, "Vor 3\u{a0}Tagen aktualisiert", Some(TimeAgo { n: 3, unit: TimeUnit::Day }))] + #[case(Language::De, "Vor 3\u{a0}Tagen aktualisiert", Some(TimeAgo { n: 3, unit: TimeUnit::Day }))] fn t_parse( #[case] lang: Language, #[case] textual_date: &str, @@ -594,196 +581,7 @@ mod tests { assert_eq!( parse_timeago(*lang, s), Some(expect[n]), - "Language: {lang}, txt: `{s}`" - ); - }); - }) - } - - #[test] - fn t_testfile_short() { - let json_path = path!(*TESTFILES / "dict" / "timeago_samples_short.json"); - - let expect = [ - TimeAgo { - n: 35, - unit: TimeUnit::Minute, - }, - TimeAgo { - n: 50, - unit: TimeUnit::Minute, - }, - TimeAgo { - n: 1, - unit: TimeUnit::Hour, - }, - TimeAgo { - n: 2, - unit: TimeUnit::Hour, - }, - TimeAgo { - n: 3, - unit: TimeUnit::Hour, - }, - TimeAgo { - n: 4, - unit: TimeUnit::Hour, - }, - TimeAgo { - n: 5, - unit: TimeUnit::Hour, - }, - TimeAgo { - n: 6, - unit: TimeUnit::Hour, - }, - TimeAgo { - n: 7, - unit: TimeUnit::Hour, - }, - TimeAgo { - n: 8, - unit: TimeUnit::Hour, - }, - TimeAgo { - n: 9, - unit: TimeUnit::Hour, - }, - TimeAgo { - n: 12, - unit: TimeUnit::Hour, - }, - TimeAgo { - n: 17, - unit: TimeUnit::Hour, - }, - TimeAgo { - n: 18, - unit: TimeUnit::Hour, - }, - TimeAgo { - n: 19, - unit: TimeUnit::Hour, - }, - TimeAgo { - n: 20, - unit: TimeUnit::Hour, - }, - TimeAgo { - n: 10, - unit: TimeUnit::Hour, - }, - TimeAgo { - n: 11, - unit: TimeUnit::Hour, - }, - TimeAgo { - n: 13, - unit: TimeUnit::Hour, - }, - TimeAgo { - n: 1, - unit: TimeUnit::Day, - }, - TimeAgo { - n: 2, - unit: TimeUnit::Day, - }, - TimeAgo { - n: 3, - unit: TimeUnit::Day, - }, - TimeAgo { - n: 4, - unit: TimeUnit::Day, - }, - TimeAgo { - n: 6, - unit: TimeUnit::Day, - }, - TimeAgo { - n: 8, - unit: TimeUnit::Day, - }, - TimeAgo { - n: 10, - unit: TimeUnit::Day, - }, - TimeAgo { - n: 11, - unit: TimeUnit::Day, - }, - TimeAgo { - n: 12, - unit: TimeUnit::Day, - }, - TimeAgo { - n: 13, - unit: TimeUnit::Day, - }, - TimeAgo { - n: 2, - unit: TimeUnit::Week, - }, - TimeAgo { - n: 3, - unit: TimeUnit::Week, - }, - TimeAgo { - n: 1, - unit: TimeUnit::Month, - }, - TimeAgo { - n: 4, - unit: TimeUnit::Week, - }, - TimeAgo { - n: 7, - unit: TimeUnit::Month, - }, - TimeAgo { - n: 10, - unit: TimeUnit::Month, - }, - TimeAgo { - n: 1, - unit: TimeUnit::Year, - }, - TimeAgo { - n: 2, - unit: TimeUnit::Year, - }, - TimeAgo { - n: 3, - unit: TimeUnit::Year, - }, - TimeAgo { - n: 4, - unit: TimeUnit::Year, - }, - TimeAgo { - n: 5, - unit: TimeUnit::Year, - }, - ]; - - let json_file = File::open(json_path).unwrap(); - let strings_map: BTreeMap> = - serde_json::from_reader(BufReader::new(json_file)).unwrap(); - - strings_map.iter().for_each(|(lang, strings)| { - assert_eq!(strings.len(), expect.len(), "Language: {lang}"); - strings.iter().enumerate().for_each(|(n, s)| { - let mut exp = expect[n]; - if *lang == Language::Mn && exp.unit == TimeUnit::Week { - exp.unit = TimeUnit::Day; - exp.n *= 7; - } - - assert_eq!( - parse_timeago(*lang, s), - Some(exp), - "Language: {lang}, txt: `{s}`" + "Language: {lang}, n: {n}" ); }); }) diff --git a/testfiles/dict/cldr_data/.gitignore b/testfiles/dict/cldr_data/.gitignore deleted file mode 100644 index d5f19d8..0000000 --- a/testfiles/dict/cldr_data/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -node_modules -package-lock.json diff --git a/testfiles/dict/cldr_data/collect_ta_tokens.js b/testfiles/dict/cldr_data/collect_ta_tokens.js deleted file mode 100644 index 57ee3c7..0000000 --- a/testfiles/dict/cldr_data/collect_ta_tokens.js +++ /dev/null @@ -1,162 +0,0 @@ -const fs = require("fs"); - -const DICT_PATH = "../dictionary.json"; - -function translateLang(lang) { - switch (lang) { - case "iw": // Hebrew - return "he"; - case "zh-CN": // Simplified Chinese - return "zh-Hans"; - case "zh-HK": - return "zh-Hant-HK"; - case "zh-TW": - return "zh-Hant"; - default: - return lang; - } -} - -function prepString(s, by_char) { - const replaced = s.toLowerCase().replace("{0}", "").replace("-", " "); - if (by_char) { - return replaced.replace(/\s/, "").split(""); - } else { - return replaced.split(/\s+/); - } -} - -function storeToken(tokens, word, unit) { - if (word) { - if (word in tokens && tokens[word] != unit) { - tokens[word] = null; - } else { - tokens[word] = unit; - } - } -} - -function validateTokens(tokens, lang) { - const units = { Y: 1, M: 1, W: 1, D: 1, h: 1, m: 1, s: 1 }; - - if (lang === "iw") { - tokens["שתי"] = "2"; - } - - for (const [key, val] of Object.entries(tokens)) { - if (val === null) { - delete tokens[key]; - } else { - delete units[val]; - } - } - if (Object.keys(units).length > 0) { - console.log( - `missing units ${JSON.stringify( - Object.keys(units) - )} for lang: ${lang}; tokens: ${JSON.stringify(tokens)}` - ); - } -} - -function validateNdTokens(tokens, lang) { - const units = { "0D": 1, "1D": 1 }; - - for (const [key, val] of Object.entries(tokens)) { - if (val === null) { - delete tokens[key]; - } else { - delete units[val]; - } - } - - if (Object.keys(units).length > 0) { - console.log( - `missing nd tokens ${JSON.stringify( - Object.keys(units) - )} for lang: ${lang}; tokens: ${JSON.stringify(tokens)}` - ); - } else if (Object.keys(tokens).length > 2) { - console.log( - `too many nd tokens for lang: ${lang}; tokens: ${JSON.stringify(tokens)}` - ); - } -} - -const sortObject = (obj) => - Object.keys(obj) - .sort() - .reduce((res, key) => ((res[key] = obj[key]), res), {}); - -function collectTimeago(lang, by_char, timeagoTokens, timeagoNdTokens) { - const cldrLang = translateLang(lang); - const dates = require(`cldr-dates-modern/main/${cldrLang}/dateFields.json`); - const dateFields = dates.main[cldrLang].dates.fields; - - for (const [unitStr, unit] of Object.entries(units)) { - for (const unitFields of [dateFields[unitStr], dateFields[`${unitStr}-short`]]) { - for (const [sKey, s] of Object.entries(unitFields["relativeTime-type-past"])) { - let u = unit; - if (s.indexOf("{0}") === -1) { - if (sKey.endsWith("-zero")) { - u = "0" + u; - } else if (sKey.endsWith("-one")) { - u = "1" + u; - } else if (sKey.endsWith("-two")) { - u = "2" + u; - } else { - throw new Error(`Invalid time pattern. lang: ${lang} key: ${sKey}`); - } - } - - const words = prepString(s, by_char); - for (const word of words) { - storeToken(timeagoTokens, word, u); - } - } - } - } - - if (dateFields.day["relative-type-0"]) { - const words = prepString(dateFields.day["relative-type-0"], by_char); - for (const word of words) { - storeToken(timeagoNdTokens, word, "0D"); - } - } - if (dateFields.day["relative-type--1"]) { - const words = prepString(dateFields.day["relative-type--1"], by_char); - for (const word of words) { - storeToken(timeagoNdTokens, word, "1D"); - } - } -} - -const dict = JSON.parse(fs.readFileSync(DICT_PATH)); - -const units = { - second: "s", - minute: "m", - hour: "h", - day: "D", - week: "W", - month: "M", - year: "Y", -}; - -for (const [mainLang, entry] of Object.entries(dict)) { - const langs = [mainLang, ...entry["equivalent"]]; - - const timeagoTokens = {}; - const timeagoNdTokens = {}; - - for (lang of langs) { - collectTimeago(lang, entry["by_char"], timeagoTokens, timeagoNdTokens); - } - validateTokens(timeagoTokens, mainLang); - // validateNdTokens(timeagoNdTokens, mainLang); - - dict[mainLang]["timeago_tokens"] = timeagoTokens; - // dict[mainLang]["timeago_nd_tokens"] = timeagoNdTokens; -} - -fs.writeFileSync(DICT_PATH, JSON.stringify(dict, null, 2)); diff --git a/testfiles/dict/cldr_data/package.json b/testfiles/dict/cldr_data/package.json deleted file mode 100644 index 18d5cae..0000000 --- a/testfiles/dict/cldr_data/package.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "name": "cldr_data", - "version": "1.0.0", - "description": "Build the RustyPipe parsing dictionary using CLDR data", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" - }, - "dependencies": { - "cldr-dates-modern": "^43.0.0", - "cldr-numbers-modern": "^43.0.0" - } -} diff --git a/testfiles/dict/dictionary.json b/testfiles/dict/dictionary.json index 9f71cb2..6bca334 100644 --- a/testfiles/dict/dictionary.json +++ b/testfiles/dict/dictionary.json @@ -3,24 +3,19 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "sekonde": "s", - "sekondes": "s", - "s.": "s", - "minuut": "m", - "minute": "m", - "min.": "m", - "uur": "h", - "u.": "h", - "dag": "D", "dae": "D", - "week": "W", - "weke": "W", - "w.": "W", + "dag": "D", + "jaar": "Y", "maand": "M", "maande": "M", - "md.": "M", - "jaar": "Y", - "j.": "Y" + "minute": "m", + "minuut": "m", + "sekonde": "s", + "sekondes": "s", + "ure": "h", + "uur": "h", + "week": "W", + "weke": "W" }, "date_order": "DY", "months": { @@ -38,8 +33,8 @@ "sep.": 9 }, "timeago_nd_tokens": { - "vandag": "0D", - "gister": "1D" + "gister": "1D", + "vandag": "0D" }, "comma_decimal": true, "number_tokens": { @@ -63,21 +58,20 @@ "timeago_tokens": { "ሰከንድ": "s", "ሰከንዶች": "s", - "ደቂቃ": "m", - "ደቂቃ፣": "m", - "ደቂቃዎች": "m", - "ደቂቃዎች፣": "m", "ሰዓት": "h", "ሰዓቶች": "h", - "ቀን": "D", - "ቀናት": "D", - "ቀኖች": "D", - "ሳምንት": "W", "ሳምንታት": "W", - "ወር": "M", + "ሳምንት": "W", + "ቀናት": "D", + "ቀን": "D", "ወራት": "M", + "ወር": "M", + "ዓመታት": "Y", "ዓመት": "Y", - "ዓመታት": "Y" + "ደቂቃ": "m", + "ደቂቃዎች": "m", + "ደቂቃዎች፣": "m", + "ደቂቃ፣": "m" }, "date_order": "DY", "months": { @@ -95,8 +89,8 @@ "ፌብሩ": 2 }, "timeago_nd_tokens": { - "ዛሬ": "0D", - "ትላንት": "1D" + "ትላንት": "1D", + "ዛሬ": "0D" }, "comma_decimal": false, "number_tokens": { @@ -119,42 +113,40 @@ "equivalent": [], "by_char": false, "timeago_tokens": { + "أسابيع": "W", + "أسبوع": "W", + "أسبوعين": "2W", + "أشهر": "M", + "أيام": "D", "ثانية": "s", - "ثوانِ": "s", - "ثوانٍ": "s", - "ثوان": "s", "ثانيتين": "2s", - "وثانيتان": "2s", + "ثوان": "s", + "ثوانٍ": "s", + "ثوانِ": "s", "دقائق": "m", "دقيقة": "m", "دقيقتان": "2m", "دقيقتين": "2m", - "ساعتين": "2h", "ساعات": "h", "ساعة": "h", - "يومين": "2D", - "أيام": "D", - "يومًا": "D", - "يوم": "D", - "أسبوعين": "2W", - "أسابيع": "W", - "أسبوعًا": "W", - "أسبوع": "W", - "شهرين": "2M", - "أشهر": "M", - "شهرًا": "M", - "خلال": "M", - "شهر": "M", + "ساعتين": "2h", + "سنة": "Y", "سنتين": "2Y", "سنوات": "Y", - "سنة": "Y", - "وثانية": "s" + "شهر": "M", + "شهرين": "2M", + "شهرًا": "M", + "وثانية": "s", + "وثانيتان": "2s", + "يوم": "D", + "يومين": "2D", + "يومًا": "D" }, "date_order": "DMY", "months": {}, "timeago_nd_tokens": { - "اليوم": "0D", - "البارحة": "1D" + "البارحة": "1D", + "اليوم": "0D" }, "comma_decimal": false, "number_tokens": { @@ -179,13 +171,13 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "ছেকেণ্ড": "s", - "মিনিট": "m", "ঘণ্টা": "h", + "ছেকেণ্ড": "s", "দিন": "D", - "সপ্তাহ": "W", + "বছৰৰ": "Y", "মাহ": "M", - "বছৰৰ": "Y" + "মিনিট": "m", + "সপ্তাহ": "W" }, "date_order": "DMY", "months": {}, @@ -224,13 +216,13 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "saniyə": "s", + "ay": "M", "dəqiqə": "m", - "saat": "h", "gün": "D", "həftə": "W", - "ay": "M", - "il": "Y" + "il": "Y", + "saat": "h", + "saniyə": "s" }, "date_order": "DY", "months": { @@ -249,7 +241,9 @@ }, "timeago_nd_tokens": { "bugün": "0D", - "dünən": "1D" + "dünən": "1D", + "güncəlləndi": "1D", + "güncəllənib": "0D" }, "comma_decimal": true, "number_tokens": { @@ -271,39 +265,32 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "секунду": "s", - "секунды": "s", - "секунд": "s", - "секунда": "s", - "с": "s", - "хвіліну": "m", - "хвіліны": "m", - "хвілін": "m", - "хвіліна": "m", - "хв": "m", + "гадзін": "h", "гадзіну": "h", "гадзіны": "h", - "гадзін": "h", - "гадз": "h", + "гадоў": "Y", + "гады": "Y", + "год": "Y", + "года": "Y", "дзень": "D", - "дні": "D", "дзён": "D", "дня": "D", - "тыдзень": "W", - "тыдні": "W", - "тыдняў": "W", - "тыдня": "W", - "тыд": "W", + "дні": "D", "месяц": "M", - "месяцы": "M", - "месяцаў": "M", "месяца": "M", - "мес.": "M", - "год": "Y", - "гады": "Y", - "гадоў": "Y", - "года": "Y", - "г.": "Y" + "месяцаў": "M", + "месяцы": "M", + "секунд": "s", + "секунда": "s", + "секунду": "s", + "секунды": "s", + "тыдзень": "W", + "тыдня": "W", + "тыдні": "W", + "хвілін": "m", + "хвіліна": "m", + "хвіліну": "m", + "хвіліны": "m" }, "date_order": "DY", "months": { @@ -345,32 +332,26 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "секунда": "s", - "секунди": "s", - "сек": "s", - "минута": "m", - "минути": "m", - "мин": "m", - "час": "h", - "часа": "h", - "ч": "h", - "ден": "D", - "дни": "D", - "седмица": "W", - "седмици": "W", - "седм.": "W", - "месец": "M", - "месеца": "M", - "м.": "M", "година": "Y", "години": "Y", - "г.": "Y" + "ден": "D", + "дни": "D", + "месец": "M", + "месеца": "M", + "минута": "m", + "минути": "m", + "седмица": "W", + "седмици": "W", + "секунда": "s", + "секунди": "s", + "час": "h", + "часа": "h" }, "date_order": "DMY", "months": {}, "timeago_nd_tokens": { - "днес": "0D", - "вчера": "1D" + "вчера": "1D", + "днес": "0D" }, "comma_decimal": true, "number_tokens": { @@ -393,13 +374,13 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "সেকেন্ড": "s", - "মিনিট": "m", "ঘন্টা": "h", "দিন": "D", - "সপ্তাহ": "W", + "বছর": "Y", "মাস": "M", - "বছর": "Y" + "মিনিট": "m", + "সপ্তাহ": "W", + "সেকেন্ড": "s" }, "date_order": "DY", "months": { @@ -446,33 +427,26 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "sekundu": "s", - "sekunde": "s", - "sekundi": "s", - "sekunda": "s", - "sek.": "s", - "minutu": "m", - "minute": "m", - "minuta": "m", - "min.": "m", - "sat": "h", - "sata": "h", - "sati": "h", "dan": "D", "dana": "D", - "d.": "D", - "sedmicu": "W", - "sedmice": "W", - "sedmica": "W", - "sed.": "W", + "godina": "Y", + "godine": "Y", + "godinu": "Y", + "minuta": "m", + "minute": "m", + "minutu": "m", "mjesec": "M", "mjeseca": "M", "mjeseci": "M", - "mj.": "M", - "godinu": "Y", - "godine": "Y", - "godina": "Y", - "god.": "Y" + "sat": "h", + "sata": "h", + "sati": "h", + "sedmice": "W", + "sedmicu": "W", + "sekunda": "s", + "sekunde": "s", + "sekundi": "s", + "sekundu": "s" }, "date_order": "DY", "months": { @@ -514,24 +488,20 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "segon": "s", - "segons": "s", - "s": "s", - "minut": "m", - "minuts": "m", - "min": "m", - "hora": "h", - "hores": "h", - "h": "h", + "any": "Y", + "anys": "Y", "dia": "D", "dies": "D", - "setmana": "W", - "setmanes": "W", - "setm.": "W", + "hora": "h", + "hores": "h", "mes": "M", "mesos": "M", - "any": "Y", - "anys": "Y" + "minut": "m", + "minuts": "m", + "segon": "s", + "segons": "s", + "setmana": "W", + "setmanes": "W" }, "date_order": "DY", "months": { @@ -549,8 +519,8 @@ "set.": 9 }, "timeago_nd_tokens": { - "avui": "0D", - "ahir": "1D" + "ahir": "1D", + "avui": "0D" }, "comma_decimal": true, "number_tokens": { @@ -572,39 +542,27 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "sekundou": "s", - "sekundami": "s", - "sekundy": "s", - "sekund": "s", - "sekunda": "s", - "s": "s", - "minutou": "m", - "minutami": "m", - "minuty": "m", - "minut": "m", - "minuta": "m", - "min": "m", - "hodinou": "h", - "hodinami": "h", - "hodiny": "h", - "h": "h", "dnem": "D", "dny": "D", - "dne": "D", - "týdnem": "W", - "týdny": "W", - "týdne": "W", - "týd.": "W", + "hodinami": "h", + "hodinou": "h", + "lety": "Y", + "minut": "m", + "minuta": "m", + "minutami": "m", + "minutou": "m", + "minuty": "m", "měsícem": "M", "měsíci": "M", - "měsíce": "M", - "měs.": "M", "rokem": "Y", - "lety": "Y", - "roku": "Y", "roky": "Y", - "r.": "Y", - "l.": "Y" + "sekund": "s", + "sekunda": "s", + "sekundami": "s", + "sekundou": "s", + "sekundy": "s", + "týdnem": "W", + "týdny": "W" }, "date_order": "DMY", "months": {}, @@ -631,22 +589,18 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "sekund": "s", - "sekunder": "s", - "sek.": "s", - "minut": "m", - "minutter": "m", - "min.": "m", - "time": "h", - "timer": "h", "dag": "D", "dage": "D", - "uge": "W", - "uger": "W", + "minut": "m", + "minutter": "m", "måned": "M", "måneder": "M", - "md.": "M", - "mdr.": "M", + "sekund": "s", + "sekunder": "s", + "time": "h", + "timer": "h", + "uge": "W", + "uger": "W", "år": "Y" }, "date_order": "DY", @@ -688,29 +642,26 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "sekunde": "s", - "sekunden": "s", - "sek.": "s", + "jahr": "Y", + "jahren": "Y", "minute": "m", "minuten": "m", - "min.": "m", + "monat": "M", + "monaten": "M", + "sekunde": "s", + "sekunden": "s", "stunde": "h", "stunden": "h", - "std.": "h", "tag": "D", "tagen": "D", "woche": "W", - "wochen": "W", - "monat": "M", - "monaten": "M", - "jahr": "Y", - "jahren": "Y" + "wochen": "W" }, "date_order": "DMY", "months": {}, "timeago_nd_tokens": { - "heute": "0D", - "gestern": "1D" + "gestern": "1D", + "heute": "0D" }, "comma_decimal": true, "number_tokens": { @@ -732,25 +683,20 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "δευτερόλεπτο": "s", + "έτη": "Y", + "έτος": "Y", "δευτερόλεπτα": "s", - "δευτ.": "s", - "λεπτό": "m", - "λεπτά": "m", - "λεπ.": "m", - "ώρα": "h", - "ώρες": "h", - "ώ.": "h", - "ημέρα": "D", - "ημέρες": "D", - "ημ.": "D", + "δευτερόλεπτο": "s", "εβδομάδα": "W", "εβδομάδες": "W", - "εβδ.": "W", + "ημέρα": "D", + "ημέρες": "D", + "λεπτά": "m", + "λεπτό": "m", "μήνα": "M", "μήνες": "M", - "έτος": "Y", - "έτη": "Y" + "ώρα": "h", + "ώρες": "h" }, "date_order": "DY", "months": { @@ -789,35 +735,26 @@ } }, "en": { - "equivalent": ["en-GB", "en-IN"], + "equivalent": [ + "en-GB", + "en-IN" + ], "by_char": false, "timeago_tokens": { - "second": "s", - "seconds": "s", - "sec": "s", - "s": "s", - "minute": "m", - "minutes": "m", - "min": "m", - "m": "m", - "hour": "h", - "hours": "h", - "hr": "h", - "h": "h", "day": "D", "days": "D", - "d": "D", - "week": "W", - "weeks": "W", - "wk": "W", - "w": "W", + "hour": "h", + "hours": "h", + "minute": "m", + "minutes": "m", "month": "M", "months": "M", - "mo": "M", + "second": "s", + "seconds": "s", + "week": "W", + "weeks": "W", "year": "Y", - "years": "Y", - "yr": "Y", - "y": "Y" + "years": "Y" }, "date_order": "DY", "months": { @@ -861,26 +798,20 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "segundo": "s", - "segundos": "s", - "s": "s", - "minuto": "m", - "minutos": "m", - "min": "m", - "hora": "h", - "horas": "h", - "h": "h", + "año": "Y", + "años": "Y", "día": "D", "días": "D", - "d": "D", - "semana": "W", - "semanas": "W", - "sem.": "W", + "hora": "h", + "horas": "h", "mes": "M", "meses": "M", - "m": "M", - "año": "Y", - "años": "Y" + "minuto": "m", + "minutos": "m", + "segundo": "s", + "segundos": "s", + "semana": "W", + "semanas": "W" }, "date_order": "DY", "months": { @@ -898,8 +829,8 @@ "sept": 9 }, "timeago_nd_tokens": { - "hoy": "0D", - "ayer": "1D" + "ayer": "1D", + "hoy": "0D" }, "comma_decimal": true, "number_tokens": { @@ -916,28 +847,25 @@ } }, "es-US": { - "equivalent": ["es-419"], + "equivalent": [ + "es-419" + ], "by_char": false, "timeago_tokens": { - "segundo": "s", - "segundos": "s", - "s": "s", - "minuto": "m", - "minutos": "m", - "min": "m", - "hora": "h", - "horas": "h", - "h": "h", + "año": "Y", + "años": "Y", "día": "D", "días": "D", - "semana": "W", - "semanas": "W", - "sem.": "W", + "hora": "h", + "horas": "h", "mes": "M", "meses": "M", - "m": "M", - "año": "Y", - "años": "Y" + "minuto": "m", + "minutos": "m", + "segundo": "s", + "segundos": "s", + "semana": "W", + "semanas": "W" }, "date_order": "DY", "months": { @@ -955,8 +883,8 @@ "sept": 9 }, "timeago_nd_tokens": { - "hoy": "0D", - "ayer": "1D" + "ayer": "1D", + "hoy": "0D" }, "comma_decimal": false, "number_tokens": { @@ -978,26 +906,22 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "sekundi": "s", - "sekund": "s", - "sekundit": "s", - "sek": "s", - "minuti": "m", - "minut": "m", - "minutit": "m", - "min": "m", - "tunni": "h", - "t": "h", - "päev": "D", - "päeva": "D", - "p": "D", - "nädala": "W", - "nädal": "W", - "näd": "W", + "aasta": "Y", + "aastat": "Y", "kuu": "M", "kuud": "M", - "aasta": "Y", - "a": "Y" + "minut": "m", + "minuti": "m", + "minutit": "m", + "nädal": "W", + "nädala": "W", + "nädalat": "W", + "päev": "D", + "päeva": "D", + "sekund": "s", + "sekundi": "s", + "sekundit": "s", + "tunni": "h" }, "date_order": "DY", "months": { @@ -1015,8 +939,8 @@ "veebr": 2 }, "timeago_nd_tokens": { - "täna": "0D", - "eile": "1D" + "eile": "1D", + "täna": "0D" }, "comma_decimal": true, "number_tokens": { @@ -1039,13 +963,16 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "segundo": "s", + "aste": "W", + "astebete": "W", + "egun": "D", + "hilabete": "M", "minutu": "m", "ordu": "h", - "egun": "D", - "aste": "W", - "hilabete": "M", - "urte": "Y" + "ordubete": "h", + "segundo": "s", + "urte": "Y", + "urtebete": "Y" }, "date_order": "YD", "months": { @@ -1063,8 +990,8 @@ "uzt.": 7 }, "timeago_nd_tokens": { - "gaur": "0D", - "atzo": "1D" + "atzo": "1D", + "gaur": "0D" }, "comma_decimal": true, "number_tokens": { @@ -1087,11 +1014,11 @@ "timeago_tokens": { "ثانیه": "s", "دقیقه": "m", - "ساعت": "h", "روز": "D", - "هفته": "W", + "ساعت": "h", + "سال": "Y", "ماه": "M", - "سال": "Y" + "هفته": "W" }, "date_order": "DY", "months": { @@ -1134,33 +1061,26 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "sekunti": "s", - "sekuntia": "s", - "s": "s", - "minuutti": "m", - "minuuttia": "m", - "min": "m", - "tunti": "h", - "tuntia": "h", - "t": "h", - "päivä": "D", - "päivää": "D", - "pv": "D", - "viikko": "W", - "viikkoa": "W", - "vk": "W", "kuukausi": "M", "kuukautta": "M", - "kk": "M", + "minuutti": "m", + "minuuttia": "m", + "päivä": "D", + "päivää": "D", + "sekunti": "s", + "sekuntia": "s", + "tunti": "h", + "tuntia": "h", + "viikko": "W", + "viikkoa": "W", "vuosi": "Y", - "vuotta": "Y", - "v": "Y" + "vuotta": "Y" }, "date_order": "DMY", "months": {}, "timeago_nd_tokens": { - "tänään": "0D", - "eilen": "1D" + "eilen": "1D", + "tänään": "0D" }, "comma_decimal": true, "number_tokens": { @@ -1184,14 +1104,12 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "segundo": "s", - "seg.": "s", - "minuto": "m", - "min.": "m", - "oras": "h", "araw": "D", - "linggo": "W", "buwan": "M", + "linggo": "W", + "minuto": "m", + "oras": "h", + "segundo": "s", "taon": "Y" }, "date_order": "DY", @@ -1210,8 +1128,8 @@ "set": 9 }, "timeago_nd_tokens": { - "ngayong": "0D", - "kahapon": "1D" + "kahapon": "1D", + "ngayong": "0D" }, "comma_decimal": false, "number_tokens": { @@ -1230,28 +1148,24 @@ } }, "fr": { - "equivalent": ["fr-CA"], + "equivalent": [ + "fr-CA" + ], "by_char": false, "timeago_tokens": { - "seconde": "s", - "secondes": "s", - "s": "s", - "minute": "m", - "minutes": "m", - "min": "m", + "an": "Y", + "ans": "Y", "heure": "h", "heures": "h", - "h": "h", "jour": "D", "jours": "D", - "j": "D", - "semaine": "W", - "semaines": "W", - "sem.": "W", + "minute": "m", + "minutes": "m", "mois": "M", - "m.": "M", - "an": "Y", - "ans": "Y" + "seconde": "s", + "secondes": "s", + "semaine": "W", + "semaines": "W" }, "date_order": "DY", "months": { @@ -1297,24 +1211,20 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "segundo": "s", - "segundos": "s", - "s": "s", - "minuto": "m", - "minutos": "m", - "min": "m", - "hora": "h", - "horas": "h", - "h": "h", + "ano": "Y", + "anos": "Y", "día": "D", "días": "D", - "semana": "W", - "semanas": "W", - "sem.": "W", + "hora": "h", + "horas": "h", "mes": "M", "meses": "M", - "ano": "Y", - "anos": "Y" + "minuto": "m", + "minutos": "m", + "segundo": "s", + "segundos": "s", + "semana": "W", + "semanas": "W" }, "date_order": "DY", "months": { @@ -1354,14 +1264,13 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "સેકંડ": "s", - "મિનિટ": "m", + "અઠવાડિયા": "W", "કલાક": "h", "દિવસ": "D", - "અઠવાડિયા": "W", - "અઠ.": "W", "મહિના": "M", - "વર્ષ": "Y" + "મિનિટ": "m", + "વર્ષ": "Y", + "સેકંડ": "s" }, "date_order": "DY", "months": { @@ -1402,16 +1311,13 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "सेकंड": "s", - "से॰": "s", - "मिनट": "m", - "मि॰": "m", "घंटे": "h", - "घं॰": "h", "दिन": "D", - "सप्ताह": "W", "माह": "M", - "वर्ष": "Y" + "मिनट": "m", + "वर्ष": "Y", + "सप्ताह": "W", + "सेकंड": "s" }, "date_order": "DY", "months": { @@ -1454,33 +1360,26 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "sekundu": "s", - "sekunde": "s", - "sekundi": "s", - "sekunda": "s", - "s": "s", - "minutu": "m", - "minute": "m", - "minuta": "m", - "min": "m", - "sat": "h", - "sata": "h", - "sati": "h", - "h": "h", "dan": "D", "dana": "D", - "tjedan": "W", - "tjedna": "W", - "tjedana": "W", - "tj.": "W", + "godina": "Y", + "godine": "Y", + "godinu": "Y", + "minuta": "m", + "minute": "m", + "minutu": "m", "mjesec": "M", "mjeseca": "M", "mjeseci": "M", - "mj.": "M", - "godinu": "Y", - "godine": "Y", - "godina": "Y", - "g.": "Y" + "sat": "h", + "sata": "h", + "sati": "h", + "sekunda": "s", + "sekunde": "s", + "sekundi": "s", + "sekundu": "s", + "tjedan": "W", + "tjedna": "W" }, "date_order": "DY", "months": { @@ -1522,22 +1421,22 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "másodperc": "s", - "másodperccel": "s", - "másodperce": "s", - "perc": "m", - "perccel": "m", - "perce": "m", - "órája": "h", - "órával": "h", - "napja": "D", - "nappal": "D", "hete": "W", "héttel": "W", "hónapja": "M", "hónappal": "M", + "másodperc": "s", + "másodperccel": "s", + "másodperce": "s", + "napja": "D", + "nappal": "D", + "perc": "m", + "perccel": "m", + "perce": "m", "éve": "Y", - "évvel": "Y" + "évvel": "Y", + "órája": "h", + "órával": "h" }, "date_order": "YD", "months": { @@ -1579,18 +1478,13 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "վայրկյան": "s", - "վրկ": "s", - "րոպե": "m", - "ր": "m", - "ժամ": "h", - "ժ": "h", - "օր": "D", - "շաբաթ": "W", - "շաբ": "W", "ամիս": "M", + "ժամ": "h", + "շաբաթ": "W", + "վայրկյան": "s", "տարի": "Y", - "տ": "Y" + "րոպե": "m", + "օր": "D" }, "date_order": "DY", "months": { @@ -1633,19 +1527,13 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "detik": "s", - "dtk": "s", - "menit": "m", - "mnt": "m", - "jam": "h", - "hari": "D", - "h": "D", - "minggu": "W", - "mgg": "W", "bulan": "M", - "bln": "M", - "tahun": "Y", - "thn": "Y" + "detik": "s", + "hari": "D", + "jam": "h", + "menit": "m", + "minggu": "W", + "tahun": "Y" }, "date_order": "DY", "months": { @@ -1687,26 +1575,22 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "sekúndu": "s", - "sekúndum": "s", - "sekúnda": "s", - "sekúndur": "s", - "sek.": "s", - "mínútu": "m", - "mínútum": "m", - "mínúta": "m", - "mínútur": "m", - "mín.": "m", - "klukkustund": "h", - "klukkustundum": "h", - "klst.": "h", "degi": "D", "dögum": "D", - "viku": "W", - "vikum": "W", + "klukkustund": "h", + "klukkustundum": "h", "mánuði": "M", "mánuðum": "M", - "mán.": "M", + "mínúta": "m", + "mínútu": "m", + "mínútum": "m", + "mínútur": "m", + "sekúnda": "s", + "sekúndu": "s", + "sekúndum": "s", + "sekúndur": "s", + "viku": "W", + "vikum": "W", "ári": "Y", "árum": "Y" }, @@ -1752,26 +1636,20 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "secondo": "s", - "secondi": "s", - "sec.": "s", - "minuto": "m", - "minuti": "m", - "min": "m", - "ora": "h", - "ore": "h", - "h": "h", - "giorno": "D", + "anni": "Y", + "anno": "Y", "giorni": "D", - "g": "D", - "gg": "D", - "settimana": "W", - "settimane": "W", - "sett.": "W", + "giorno": "D", "mese": "M", "mesi": "M", - "anno": "Y", - "anni": "Y" + "minuti": "m", + "minuto": "m", + "ora": "h", + "ore": "h", + "secondi": "s", + "secondo": "s", + "settimana": "W", + "settimane": "W" }, "date_order": "DY", "months": { @@ -1789,8 +1667,8 @@ "set": 9 }, "timeago_nd_tokens": { - "oggi": "0D", - "ieri": "1D" + "ieri": "1D", + "oggi": "0D" }, "comma_decimal": true, "number_tokens": { @@ -1812,30 +1690,26 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "שניה": "s", - "שניות": "s", - "שנייה": "1s", - "דקה": "1m", - "דק׳": "m", + "דקה": "m", "דקות": "m", - "שעה": "1h", - "שעתיים": "2h", - "שעות": "h", - "שע׳": "h", + "חודש": "M", + "חודשיים": "2M", + "חודשים": "M", "יום": "D", "יומיים": "2D", "ימים": "D", - "אתמול": "1D", - "שבוע": "1W", - "שבועיים": "2W", + "שבוע": "W", "שבועות": "W", - "שב׳": "W", - "חודש": "1M", - "חודשיים": "2M", - "חודשים": "M", - "שנתיים": "2Y", - "שנים": "Y", + "שבועיים": "2W", "שנה": "Y", + "שניה": "s", + "שניות": "s", + "שנייה": "s", + "שנים": "Y", + "שנתיים": "2Y", + "שעה": "h", + "שעות": "h", + "שעתיים": "2h", "שתי": "2" }, "date_order": "DY", @@ -1854,8 +1728,8 @@ "בפבר׳": 2 }, "timeago_nd_tokens": { - "היום": "0D", - "אתמול": "1D" + "אתמול": "1D", + "היום": "0D" }, "comma_decimal": false, "number_tokens": { @@ -1878,19 +1752,19 @@ "equivalent": [], "by_char": true, "timeago_tokens": { - "秒": "s", "分": "m", - "時": "h", + "年": "Y", "日": "D", - "週": "W", + "時": "h", "月": "M", - "年": "Y" + "秒": "s", + "週": "W" }, "date_order": "YMD", "months": {}, "timeago_nd_tokens": { - "本": "0D", - "昨": "1D" + "日": "1D", + "本": "0D" }, "comma_decimal": false, "number_tokens": { @@ -1910,19 +1784,15 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "წამი": "s", - "წამის": "s", - "წმ": "s", - "წუთი": "m", - "წუთის": "m", - "წთ": "m", - "საათის": "h", - "სთ": "h", "დღის": "D", "თვის": "M", "კვირის": "W", - "კვ.": "W", - "წლის": "Y" + "საათის": "h", + "წამი": "s", + "წამის": "s", + "წლის": "Y", + "წუთი": "m", + "წუთის": "m" }, "date_order": "DY", "months": { @@ -1940,8 +1810,8 @@ "სექ.": 9 }, "timeago_nd_tokens": { - "დღეს": "0D", - "გუშინ": "1D" + "გუშინ": "1D", + "დღეს": "0D" }, "comma_decimal": true, "number_tokens": { @@ -1964,18 +1834,13 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "секунд": "s", - "сек.": "s", - "минут": "m", - "мин.": "m", - "сағат": "h", - "сағ.": "h", - "күн": "D", - "апта": "W", - "ап.": "W", "ай": "M", + "апта": "W", "жыл": "Y", - "ж.": "Y" + "күн": "D", + "минут": "m", + "сағат": "h", + "секунд": "s" }, "date_order": "YD", "months": { @@ -2066,24 +1931,23 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "ಸೆಕೆಂಡ್": "s", - "ಸೆಕೆಂಡುಗಳ": "s", - "ಸೆಕೆಂಡುಗಳು": "s", - "ನಿಮಿಷದ": "m", - "ನಿಮಿಷಗಳ": "m", - "ನಿಮಿಷಗಳು": "m", - "ನಿಮಿಷವು": "m", "ಗಂಟೆ": "h", "ಗಂಟೆಗಳ": "h", - "ದಿನದ": "D", - "ದಿನಗಳ": "D", - "ವಾರದ": "W", - "ವಾರಗಳ": "W", "ತಿಂಗಳ": "M", "ತಿಂಗಳುಗಳ": "M", - "ತಿಂಗಳು": "M", + "ದಿನಗಳ": "D", + "ದಿನದ": "D", + "ನಿಮಿಷಗಳ": "m", + "ನಿಮಿಷಗಳು": "m", + "ನಿಮಿಷದ": "m", + "ನಿಮಿಷವು": "m", + "ವರ್ಷಗಳ": "Y", "ವರ್ಷದ": "Y", - "ವರ್ಷಗಳ": "Y" + "ವಾರಗಳ": "W", + "ವಾರದ": "W", + "ಸೆಕೆಂಡುಗಳ": "s", + "ಸೆಕೆಂಡುಗಳು": "s", + "ಸೆಕೆಂಡ್": "s" }, "date_order": "DY", "months": { @@ -2124,19 +1988,19 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "초": "s", + "개월": "M", + "년": "Y", "분": "m", "시간": "h", "일": "D", "주": "W", - "개월": "M", - "년": "Y" + "초": "s" }, "date_order": "YMD", "months": {}, "timeago_nd_tokens": { - "오늘": "0D", - "어제": "1D" + "어제": "1D", + "오늘": "0D" }, "comma_decimal": false, "number_tokens": { @@ -2159,17 +2023,13 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "секунд": "s", - "сек.": "s", - "мүнөт": "m", - "мүн.": "m", - "саат": "h", - "саат.": "h", - "күн": "D", - "апта": "W", - "апт.": "W", "ай": "M", - "жыл": "Y" + "апта": "W", + "жыл": "Y", + "күн": "D", + "мүнөт": "m", + "саат": "h", + "секунд": "s" }, "date_order": "YD", "months": { @@ -2211,20 +2071,15 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "ວິນາທີກ່ອນ": "s", - "ວິນາທີ": "s", - "ວິ.": "s", - "ນາທີກ່ອນ": "m", - "ນາທີ": "m", - "ນທ.": "m", "ຊົ່ວໂມງກ່ອນ": "h", - "ຊມ.": "h", + "ນາທີ": "m", + "ນາທີກ່ອນ": "m", + "ປີກ່ອນ": "Y", "ມື້ກ່ອນ": "D", + "ວິນາທີ": "s", + "ວິນາທີກ່ອນ": "s", "ອາທິດກ່ອນ": "W", - "ອທ.": "W", - "ເດືອນກ່ອນ": "M", - "ດ.": "M", - "ປີກ່ອນ": "Y" + "ເດືອນກ່ອນ": "M" }, "date_order": "DY", "months": { @@ -2242,8 +2097,8 @@ "ສ.ຫ.": 8 }, "timeago_nd_tokens": { - "ອັບເດດມື້ນີ້": "0D", - "ອັດເດດມື້ວານນີ້": "1D" + "ອັດເດດມື້ວານນີ້": "1D", + "ອັບເດດມື້ນີ້": "0D" }, "comma_decimal": true, "number_tokens": { @@ -2267,47 +2122,37 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "sekundę": "s", - "sekundes": "s", - "sekundės": "s", - "sekundė": "s", - "sekundžių": "s", - "sek.": "s", - "minutę": "m", - "minutes": "m", - "minutės": "m", - "minutė": "m", - "minučių": "m", - "min.": "m", - "valandą": "h", - "valandas": "h", - "valandos": "h", - "valandų": "h", - "val.": "h", - "dieną": "D", - "dienas": "D", - "dienos": "D", - "dienų": "D", "d.": "D", - "savaitę": "W", - "savaites": "W", - "savaitės": "W", - "savaičių": "W", - "sav.": "W", - "mėnesį": "M", - "mėnesius": "M", - "mėnesio": "M", - "mėnesių": "M", - "mėn.": "M", + "dienas": "D", + "dieną": "D", + "dienų": "D", "metus": "Y", "metų": "Y", - "m.": "Y" + "minutes": "m", + "minutė": "m", + "minutės": "m", + "minutę": "m", + "minučių": "m", + "mėnesius": "M", + "mėnesių": "M", + "mėnesį": "M", + "savaites": "W", + "savaitę": "W", + "savaičių": "W", + "sekundes": "s", + "sekundė": "s", + "sekundės": "s", + "sekundę": "s", + "sekundžių": "s", + "valandas": "h", + "valandą": "h", + "valandų": "h" }, "date_order": "YMD", "months": {}, "timeago_nd_tokens": { - "šiandien": "0D", - "vakar": "1D" + "vakar": "1D", + "šiandien": "0D" }, "comma_decimal": true, "number_tokens": { @@ -2330,31 +2175,24 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "sekundēm": "s", - "sekundes": "s", - "sekunde": "s", - "sekunžu": "s", - "sek.": "s", - "minūtēm": "m", - "minūtes": "m", - "minūte": "m", - "minūšu": "m", - "min.": "m", - "stundām": "h", - "stundas": "h", - "st.": "h", - "dienām": "D", "dienas": "D", - "d.": "D", - "nedēļām": "W", - "nedēļas": "W", - "ned.": "W", - "mēnešiem": "M", - "mēneša": "M", - "mēn.": "M", - "gadiem": "Y", + "dienām": "D", "gada": "Y", - "g.": "Y" + "gadiem": "Y", + "minūte": "m", + "minūtes": "m", + "minūtēm": "m", + "minūšu": "m", + "mēneša": "M", + "mēnešiem": "M", + "nedēļas": "W", + "nedēļām": "W", + "sekunde": "s", + "sekundes": "s", + "sekundēm": "s", + "sekunžu": "s", + "stundas": "h", + "stundām": "h" }, "date_order": "YD", "months": { @@ -2372,8 +2210,8 @@ "sept.": 9 }, "timeago_nd_tokens": { - "šodien": "0D", - "vakar": "1D" + "vakar": "1D", + "šodien": "0D" }, "comma_decimal": true, "number_tokens": { @@ -2396,29 +2234,26 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "секунда": "s", - "секунди": "s", - "сек.": "s", - "минута": "m", - "минути": "m", - "мин.": "m", - "час": "h", - "часа": "h", - "ден": "D", - "дена": "D", - "седмица": "W", - "седмици": "W", - "месец": "M", - "месеци": "M", "година": "Y", "години": "Y", - "год.": "Y" + "ден": "D", + "дена": "D", + "месец": "M", + "месеци": "M", + "минута": "m", + "минути": "m", + "седмица": "W", + "седмици": "W", + "секунда": "s", + "секунди": "s", + "час": "h", + "часа": "h" }, "date_order": "DMY", "months": {}, "timeago_nd_tokens": { - "денес": "0D", - "вчера": "1D" + "вчера": "1D", + "денес": "0D" }, "comma_decimal": true, "number_tokens": { @@ -2442,13 +2277,13 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "സെക്കൻഡ്": "s", - "മിനിറ്റ്": "m", - "മണിക്കൂർ": "h", - "ദിവസം": "D", "ആഴ്ച": "W", + "ദിവസം": "D", + "മണിക്കൂർ": "h", "മാസം": "M", - "വർഷം": "Y" + "മിനിറ്റ്": "m", + "വർഷം": "Y", + "സെക്കൻഡ്": "s" }, "date_order": "YD", "months": { @@ -2466,8 +2301,8 @@ "സെപ്റ്റം": 9 }, "timeago_nd_tokens": { - "ഇന്ന്": "0D", - "ഇന്നലെ": "1D" + "ഇന്നലെ": "1D", + "ഇന്ന്": "0D" }, "comma_decimal": false, "number_tokens": { @@ -2489,19 +2324,15 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "секундын": "s", - "секунд": "s", - "сек": "s", - "минутын": "m", + "жилийн": "Y", "минут": "m", - "мин": "m", - "цагийн": "h", - "ц": "h", - "өдрийн": "D", - "хоногийн": "D", - "долоо": "W", + "минутын": "m", "сарын": "M", - "жилийн": "Y" + "секунд": "s", + "секундын": "s", + "хоногийн": "W", + "цагийн": "h", + "өдрийн": "D" }, "date_order": "YMD", "months": {}, @@ -2530,25 +2361,23 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "सेकंदापूर्वी": "s", - "सेकंदांपूर्वी": "s", - "सेकंद": "s", - "से.": "s", - "मिनिटापूर्वी": "m", - "मिनिटांपूर्वी": "m", - "मिनिट": "m", - "मिनिटे": "m", - "मिनि.": "m", - "तासापूर्वी": "h", - "तासांपूर्वी": "h", - "दिवसापूर्वी": "D", - "दिवसांपूर्वी": "D", - "आठवड्यापूर्वी": "W", "आठवड्यांपूर्वी": "W", - "महिन्यापूर्वी": "M", + "आठवड्यापूर्वी": "W", + "तासांपूर्वी": "h", + "तासापूर्वी": "h", + "दिवसांपूर्वी": "D", + "दिवसापूर्वी": "D", "महिन्यांपूर्वी": "M", + "महिन्यापूर्वी": "M", + "मिनिट": "m", + "मिनिटांपूर्वी": "m", + "मिनिटापूर्वी": "m", + "मिनिटे": "m", + "वर्षांपूर्वी": "Y", "वर्षापूर्वी": "Y", - "वर्षांपूर्वी": "Y" + "सेकंद": "s", + "सेकंदांपूर्वी": "s", + "सेकंदापूर्वी": "s" }, "date_order": "DY", "months": { @@ -2592,17 +2421,13 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "saat": "s", - "minit": "m", - "min": "m", - "jam": "h", - "hari": "D", - "minggu": "W", - "mgu": "W", "bulan": "M", - "bln": "M", - "tahun": "Y", - "thn": "Y" + "hari": "D", + "jam": "h", + "minggu": "W", + "minit": "m", + "saat": "s", + "tahun": "Y" }, "date_order": "DY", "months": { @@ -2669,8 +2494,8 @@ "ဩ": 8 }, "timeago_nd_tokens": { - "ယနေ့": "0D", - "မနေ့က": "1D" + "မနေ့က": "1D", + "ယနေ့": "0D" }, "comma_decimal": false, "number_tokens": { @@ -2747,21 +2572,18 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "seconde": "s", - "seconden": "s", - "sec.": "s", - "minuut": "m", - "minuten": "m", - "min.": "m", - "uur": "h", "dag": "D", "dagen": "D", - "dgn": "D", - "week": "W", - "weken": "W", + "jaar": "Y", "maand": "M", "maanden": "M", - "jaar": "Y" + "minuten": "m", + "minuut": "m", + "seconde": "s", + "seconden": "s", + "uur": "h", + "week": "W", + "weken": "W" }, "date_order": "DY", "months": { @@ -2779,8 +2601,8 @@ "sep": 9 }, "timeago_nd_tokens": { - "vandaag": "0D", - "gisteren": "1D" + "gisteren": "1D", + "vandaag": "0D" }, "comma_decimal": true, "number_tokens": { @@ -2802,25 +2624,19 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "sekund": "s", - "sekunder": "s", - "sek": "s", - "minutt": "m", - "minutter": "m", - "min": "m", - "time": "h", - "timer": "h", - "t": "h", "dag": "D", "dager": "D", "døgn": "D", - "d.": "D", - "uke": "W", - "uker": "W", - "u.": "W", + "minutt": "m", + "minutter": "m", "måned": "M", "måneder": "M", - "md.": "M", + "sekund": "s", + "sekunder": "s", + "time": "h", + "timer": "h", + "uke": "W", + "uker": "W", "år": "Y" }, "date_order": "DY", @@ -2865,20 +2681,14 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "ସେକେଣ୍ଡ": "s", - "ସେ.": "s", + "ଘଣ୍ଟା": "h", + "ଦିନ": "D", + "ବର୍ଷ": "Y", + "ମାସ": "M", "ମିନିଟ୍": "m", "ମିନିଟ୍‌": "m", - "ମି.": "m", - "ଘଣ୍ଟା": "h", - "ଘ.": "h", - "ଦିନ": "D", "ସପ୍ତାହ": "W", - "ସପ୍ତା.": "W", - "ମାସ": "M", - "ମା.": "M", - "ବର୍ଷ": "Y", - "ବ.": "Y" + "ସେକେଣ୍ଡ": "s" }, "date_order": "DY", "months": { @@ -2926,16 +2736,16 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "ਸਕਿੰਟ": "s", - "ਮਿੰਟ": "m", "ਘੰਟਾ": "h", "ਘੰਟੇ": "h", "ਦਿਨ": "D", - "ਹਫ਼ਤਾ": "W", - "ਹਫ਼ਤੇ": "W", "ਮਹੀਨਾ": "M", "ਮਹੀਨੇ": "M", - "ਸਾਲ": "Y" + "ਮਿੰਟ": "m", + "ਸਕਿੰਟ": "s", + "ਸਾਲ": "Y", + "ਹਫ਼ਤਾ": "W", + "ਹਫ਼ਤੇ": "W" }, "date_order": "DY", "months": { @@ -2978,38 +2788,27 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "sekundę": "s", - "sekundy": "s", - "sekunda": "s", - "sekund": "s", - "sek.": "s", - "minutę": "m", - "minuty": "m", - "minut": "m", - "minuta": "m", - "min": "m", - "godzinę": "h", - "godziny": "h", - "godzin": "h", - "godz.": "h", - "dzień": "D", "dni": "D", - "dnia": "D", - "tydzień": "W", - "tygodnie": "W", - "tygodni": "W", - "tygodnia": "W", - "tydz.": "W", - "tyg.": "W", + "dzień": "D", + "godzin": "h", + "godziny": "h", + "godzinę": "h", + "lat": "Y", + "lata": "Y", "miesiąc": "M", "miesiące": "M", "miesięcy": "M", - "miesiąca": "M", - "mies.": "M", + "minut": "m", + "minuta": "m", + "minuty": "m", + "minutę": "m", "rok": "Y", - "lata": "Y", - "lat": "Y", - "roku": "Y" + "sekund": "s", + "sekunda": "s", + "sekundy": "s", + "sekundę": "s", + "tydzień": "W", + "tygodnie": "W" }, "date_order": "DY", "months": { @@ -3051,24 +2850,20 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "segundo": "s", - "segundos": "s", - "seg.": "s", - "minuto": "m", - "minutos": "m", - "min.": "m", - "hora": "h", - "horas": "h", - "h": "h", + "ano": "Y", + "anos": "Y", "dia": "D", "dias": "D", - "semana": "W", - "semanas": "W", - "sem.": "W", - "mês": "M", + "hora": "h", + "horas": "h", "meses": "M", - "ano": "Y", - "anos": "Y" + "minuto": "m", + "minutos": "m", + "mês": "M", + "segundo": "s", + "segundos": "s", + "semana": "W", + "semanas": "W" }, "date_order": "DY", "months": { @@ -3110,24 +2905,20 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "segundo": "s", - "segundos": "s", - "s": "s", - "minuto": "m", - "minutos": "m", - "min": "m", - "hora": "h", - "horas": "h", - "h": "h", + "ano": "Y", + "anos": "Y", "dia": "D", "dias": "D", - "semana": "W", - "semanas": "W", - "sem.": "W", - "mês": "M", + "hora": "h", + "horas": "h", "meses": "M", - "ano": "Y", - "anos": "Y" + "minuto": "m", + "minutos": "m", + "mês": "M", + "segundo": "s", + "segundos": "s", + "semana": "W", + "semanas": "W" }, "date_order": "DMY", "months": {}, @@ -3154,24 +2945,20 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "secundă": "s", - "secunde": "s", - "sec.": "s", + "an": "Y", + "ani": "Y", + "luni": "M", + "lună": "M", "minut": "m", "minute": "m", - "min.": "m", - "oră": "h", "ore": "h", - "h": "h", - "zi": "D", - "zile": "D", - "săptămână": "W", + "oră": "h", + "secunde": "s", + "secundă": "s", "săptămâni": "W", - "săpt.": "W", - "lună": "M", - "luni": "M", - "an": "Y", - "ani": "Y" + "săptămână": "W", + "zi": "D", + "zile": "D" }, "date_order": "DY", "months": { @@ -3213,37 +3000,28 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "секунду": "s", - "секунды": "s", - "секунд": "s", - "секунда": "s", - "сек.": "s", - "минуту": "m", - "минуты": "m", - "минут": "m", - "минута": "m", - "мин.": "m", - "час": "h", - "часа": "h", - "часов": "h", - "ч": "h", + "год": "Y", + "года": "Y", "день": "D", - "дня": "D", "дней": "D", - "дн.": "D", - "неделю": "W", - "недели": "W", - "недель": "W", - "нед.": "W", + "дня": "D", + "лет": "Y", "месяц": "M", "месяца": "M", "месяцев": "M", - "мес.": "M", - "год": "Y", - "года": "Y", - "лет": "Y", - "г.": "Y", - "л.": "Y" + "минут": "m", + "минута": "m", + "минуту": "m", + "минуты": "m", + "недели": "W", + "неделю": "W", + "секунд": "s", + "секунда": "s", + "секунду": "s", + "секунды": "s", + "час": "h", + "часа": "h", + "часов": "h" }, "date_order": "DY", "months": { @@ -3261,8 +3039,8 @@ "янв.": 1 }, "timeago_nd_tokens": { - "сегодня": "0D", - "вчера": "1D" + "вчера": "1D", + "сегодня": "0D" }, "comma_decimal": true, "number_tokens": { @@ -3284,12 +3062,12 @@ "by_char": false, "timeago_tokens": { "තත්පර": "s", - "මිනිත්තු": "m", - "පැය": "h", "දින": "D", - "සති": "W", + "පැය": "h", "මාස": "M", - "වසර": "Y" + "මිනිත්තු": "m", + "වසර": "Y", + "සති": "W" }, "date_order": "YD", "months": { @@ -3331,37 +3109,26 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "sekundou": "s", - "sekundami": "s", - "sekundy": "s", - "sekunda": "s", - "sekúnd": "s", - "s": "s", - "minútou": "m", - "minútami": "m", - "minúty": "m", + "dňami": "D", + "dňom": "D", + "hodinami": "h", + "hodinou": "h", + "mesiacmi": "M", + "mesiacom": "M", "minút": "m", "minúta": "m", - "min": "m", - "hodinou": "h", - "hodinami": "h", - "h": "h", - "dňom": "D", - "dňami": "D", - "dňa": "D", - "d.": "D", - "týždňom": "W", - "týždňami": "W", - "týždňa": "W", - "týž.": "W", - "mesiacom": "M", - "mesiacmi": "M", - "mesiaca": "M", - "mes.": "M", - "rokom": "Y", + "minútami": "m", + "minútou": "m", + "minúty": "m", "rokmi": "Y", - "roka": "Y", - "r.": "Y" + "rokom": "Y", + "sekunda": "s", + "sekundami": "s", + "sekundou": "s", + "sekundy": "s", + "sekúnd": "s", + "týždňami": "W", + "týždňom": "W" }, "date_order": "DMY", "months": {}, @@ -3390,40 +3157,36 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "sekund": "s", - "sekunda": "s", - "sekunde": "s", - "sekundi": "s", - "sekundo": "s", - "sekundama": "s", - "sekundami": "s", - "s": "s", - "minut": "m", - "minuta": "m", - "minute": "m", - "minuti": "m", - "minuto": "m", - "minutama": "m", - "minutami": "m", - "min.": "m", - "uro": "h", - "urama": "h", - "urami": "h", + "dnem": "D", + "dnevi": "D", "dnevom": "D", "dnevoma": "D", - "dnevi": "D", - "dnem": "D", - "tednom": "W", - "tednoma": "W", - "tedni": "W", - "ted.": "W", + "leti": "Y", + "letom": "Y", + "letoma": "Y", "mesecem": "M", "mesecema": "M", "meseci": "M", - "mes.": "M", - "letom": "Y", - "letoma": "Y", - "leti": "Y" + "minut": "m", + "minuta": "m", + "minutama": "m", + "minutami": "m", + "minute": "m", + "minuti": "m", + "minuto": "m", + "sekund": "s", + "sekunda": "s", + "sekundama": "s", + "sekundami": "s", + "sekunde": "s", + "sekundi": "s", + "sekundo": "s", + "tedni": "W", + "tednom": "W", + "tednoma": "W", + "urama": "h", + "urami": "h", + "uro": "h" }, "date_order": "DY", "months": { @@ -3465,16 +3228,14 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "sekondë": "s", - "sekonda": "s", - "sek": "s", - "minutë": "m", - "minuta": "m", - "min": "m", - "orë": "h", "ditë": "D", "javë": "W", + "minuta": "m", + "minutë": "m", "muaj": "M", + "orë": "h", + "sekonda": "s", + "sekondë": "s", "vit": "Y", "vjet": "Y" }, @@ -3494,8 +3255,8 @@ "tet": 10 }, "timeago_nd_tokens": { - "sot": "0D", - "dje": "1D" + "dje": "1D", + "sot": "0D" }, "comma_decimal": true, "number_tokens": { @@ -3518,27 +3279,24 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "секунде": "s", - "секунди": "s", - "секунда": "s", - "сек.": "s", - "минута": "m", - "минут": "m", - "мин.": "m", - "сата": "h", - "сати": "h", - "ч.": "h", + "година": "Y", + "године": "Y", + "годину": "Y", + "дан": "D", "дана": "D", - "д.": "D", - "недеље": "W", - "недеља": "W", - "нед.": "W", + "месец": "M", "месеца": "M", "месеци": "M", - "мес.": "M", - "године": "Y", - "година": "Y", - "год.": "Y" + "минут": "m", + "минута": "m", + "недеље": "W", + "недељу": "W", + "сат": "h", + "сата": "h", + "сати": "h", + "секунда": "s", + "секунде": "s", + "секунди": "s" }, "date_order": "DMY", "months": {}, @@ -3567,27 +3325,25 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "sekunde": "s", - "sekundi": "s", - "sekunda": "s", - "sek.": "s", - "minuta": "m", - "minut": "m", - "min.": "m", - "sata": "h", - "sati": "h", - "č.": "h", + "dan": "D", "dana": "D", - "d.": "D", - "nedelje": "W", - "nedelja": "W", - "ned.": "W", + "godina": "Y", + "godine": "Y", + "godinu": "Y", + "mesec": "M", "meseca": "M", "meseci": "M", - "mes.": "M", - "godine": "Y", - "godina": "Y", - "god.": "Y" + "minut": "m", + "minuta": "m", + "nedelja": "W", + "nedelje": "W", + "nedelju": "W", + "sat": "h", + "sata": "h", + "sati": "h", + "sekunda": "s", + "sekunde": "s", + "sekundi": "s" }, "date_order": "DMY", "months": {}, @@ -3616,24 +3372,18 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "sekund": "s", - "sekunder": "s", - "s": "s", - "minut": "m", - "minuter": "m", - "min": "m", - "timme": "h", - "timmar": "h", - "tim": "h", "dag": "D", "dagar": "D", - "d": "D", - "vecka": "W", - "veckor": "W", - "v.": "W", + "minut": "m", + "minuter": "m", "månad": "M", "månader": "M", - "mån.": "M", + "sekund": "s", + "sekunder": "s", + "timmar": "h", + "timme": "h", + "vecka": "W", + "veckor": "W", "år": "Y" }, "date_order": "DY", @@ -3675,15 +3425,15 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "sekunde": "s", "dakika": "m", - "saa": "h", - "siku": "D", - "wiki": "W", - "mwezi": "M", + "miaka": "Y", "miezi": "M", "mwaka": "Y", - "miaka": "Y" + "mwezi": "M", + "saa": "h", + "sekunde": "s", + "siku": "D", + "wiki": "W" }, "date_order": "DY", "months": { @@ -3701,8 +3451,8 @@ "sep": 9 }, "timeago_nd_tokens": { - "leo": "0D", - "jana": "1D" + "jana": "1D", + "leo": "0D" }, "comma_decimal": false, "number_tokens": { @@ -3725,28 +3475,23 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "விநாடிக்கு": "s", - "விநாடிகளுக்கு": "s", - "விநா.": "s", - "விநாடி": "s", - "விநாடிகள்": "s", - "நிமிடத்திற்கு": "m", + "ஆண்டிற்கு": "Y", + "ஆண்டுகளுக்கு": "Y", + "நாட்களுக்கு": "D", + "நாளுக்கு": "D", "நிமிடங்களுக்கு": "m", - "நிமி.": "m", "நிமிடங்கள்": "m", + "நிமிடத்திற்கு": "m", "நிமிடம்": "m", "மணிநேரம்": "h", - "மணி.": "h", - "நாளுக்கு": "D", - "நாட்களுக்கு": "D", - "வாரத்திற்கு": "W", - "வாரங்களுக்கு": "W", - "வார.": "W", - "மாதத்துக்கு": "M", "மாதங்களுக்கு": "M", - "மாத.": "M", - "ஆண்டிற்கு": "Y", - "ஆண்டுகளுக்கு": "Y" + "மாதத்துக்கு": "M", + "வாரங்களுக்கு": "W", + "வாரம்": "W", + "விநாடி": "s", + "விநாடிகளுக்கு": "s", + "விநாடிகள்": "s", + "விநாடிக்கு": "s" }, "date_order": "DY", "months": { @@ -3787,26 +3532,22 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "సెకను": "s", - "సెకన్ల": "s", - "సెకన్లు": "s", - "సెక.": "s", + "గంట": "h", + "గంటల": "h", "నిమిషం": "m", "నిమిషాల": "m", "నిమిషాలు": "m", - "నిమి.": "m", - "గంట": "h", - "గంటల": "h", - "గం.": "h", + "నెల": "M", + "నెలల": "M", "రోజు": "D", "రోజుల": "D", "వారం": "W", "వారాల": "W", - "నెల": "M", - "నెలల": "M", "సంవత్సరం": "Y", "సంవత్సరాల": "Y", - "సం.": "Y" + "సెకను": "s", + "సెకన్ల": "s", + "సెకన్లు": "s" }, "date_order": "DY", "months": { @@ -3848,22 +3589,16 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "วินาทีที่ผ่านมา": "s", - "วินาทีที่แล้ว": "s", - "วินาที": "s", - "นาทีที่ผ่านมา": "m", - "นาทีที่แล้ว": "m", - "นาที": "m", "ชั่วโมงที่ผ่านมา": "h", - "ชม.": "h", - "ที่แล้ว": "h", + "นาที": "m", + "นาทีที่ผ่านมา": "m", + "ปีที่แล้ว": "Y", "วันที่ผ่านมา": "D", "วันที่แล้ว": "D", + "วินาที": "s", + "วินาทีที่ผ่านมา": "s", "สัปดาห์ที่ผ่านมา": "W", - "สัปดาห์ที่แล้ว": "W", - "เดือนที่ผ่านมา": "M", - "เดือนที่แล้ว": "M", - "ปีที่แล้ว": "Y" + "เดือนที่ผ่านมา": "M" }, "date_order": "DY", "months": { @@ -3881,8 +3616,8 @@ "เม.ย.": 4 }, "timeago_nd_tokens": { - "อัปเดตแล้ววันนี้": "0D", - "อัปเดตเมื่อวานนี้": "1D" + "อัปเดตเมื่อวานนี้": "1D", + "อัปเดตแล้ววันนี้": "0D" }, "comma_decimal": false, "number_tokens": { @@ -3908,16 +3643,12 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "saniye": "s", - "sn.": "s", + "ay": "M", "dakika": "m", - "dk.": "m", - "saat": "h", - "sa.": "h", "gün": "D", "hafta": "W", - "hf.": "W", - "ay": "M", + "saat": "h", + "saniye": "s", "yıl": "Y" }, "date_order": "DY", @@ -3960,40 +3691,28 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "секунду": "s", - "секунди": "s", - "секунд": "s", - "секунда": "s", - "с": "s", - "хвилину": "m", - "хвилини": "m", - "хвилин": "m", - "хвилина": "m", - "хв": "m", - "годину": "h", - "години": "h", "годин": "h", - "год": "h", + "години": "h", + "годину": "h", "день": "D", "дні": "D", "днів": "D", - "дня": "D", - "дн.": "D", - "тиждень": "W", - "тижні": "W", - "тижнів": "W", - "тижня": "W", - "тиж.": "W", "місяць": "M", "місяці": "M", "місяців": "M", - "місяця": "M", - "міс.": "M", - "рік": "Y", "роки": "Y", "років": "Y", - "року": "Y", - "р.": "Y" + "рік": "Y", + "секунд": "s", + "секунда": "s", + "секунди": "s", + "секунду": "s", + "тиждень": "W", + "тижні": "W", + "хвилин": "m", + "хвилина": "m", + "хвилини": "m", + "хвилину": "m" }, "date_order": "DY", "months": { @@ -4011,8 +3730,8 @@ "черв.": 6 }, "timeago_nd_tokens": { - "сьогодні": "0D", - "вчора": "1D" + "вчора": "1D", + "сьогодні": "0D" }, "comma_decimal": true, "number_tokens": { @@ -4035,21 +3754,20 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "سیکنڈز": "s", + "دن": "D", + "دنوں": "D", + "سال": "Y", "سیکنڈ": "s", + "سیکنڈز": "s", "منٹ": "m", "منٹ،": "m", "منٹس": "m", - "گھنٹہ": "h", - "گھنٹے": "h", - "دن": "D", - "دنوں": "D", - "ہفتہ": "W", - "ہفتے": "W", "مہینہ": "M", "مہینے": "M", - "ماہ": "M", - "سال": "Y" + "گھنٹہ": "h", + "گھنٹے": "h", + "ہفتہ": "W", + "ہفتے": "W" }, "date_order": "DY", "months": { @@ -4092,12 +3810,12 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "soniya": "s", "daqiqa": "m", - "soat": "h", - "kun": "D", "hafta": "W", + "kun": "D", "oy": "M", + "soat": "h", + "soniya": "s", "yil": "Y" }, "date_order": "DY", @@ -4139,12 +3857,13 @@ "by_char": false, "timeago_tokens": { "giây": "s", - "phút": "m", "giờ": "h", "ngày": "D", - "tuần": "W", + "năm": "Y", + "phút": "m", "tháng": "M", - "năm": "Y" + "tiếng": "h", + "tuần": "W" }, "date_order": "DMY", "months": {}, @@ -4171,19 +3890,19 @@ "equivalent": [], "by_char": true, "timeago_tokens": { - "秒": "s", "分": "m", - "小": "h", - "天": "D", "周": "W", + "天": "D", + "小": "h", + "年": "Y", "月": "M", - "年": "Y" + "秒": "s" }, "date_order": "YMD", "months": {}, "timeago_nd_tokens": { "今": "0D", - "昨": "1D" + "日": "1D" }, "comma_decimal": false, "number_tokens": { @@ -4205,20 +3924,20 @@ "equivalent": [], "by_char": true, "timeago_tokens": { - "秒": "s", "分": "m", - "小": "h", "天": "D", + "小": "h", + "年": "Y", "日": "D", - "期": "W", "月": "M", - "年": "Y" + "期": "W", + "秒": "s" }, "date_order": "YMD", "months": {}, "timeago_nd_tokens": { "今": "0D", - "昨": "1D" + "天": "1D" }, "comma_decimal": false, "number_tokens": { @@ -4250,7 +3969,7 @@ "months": {}, "timeago_nd_tokens": { "今": "0D", - "昨": "1D" + "天": "1D" }, "comma_decimal": false, "number_tokens": { @@ -4270,29 +3989,20 @@ "equivalent": [], "by_char": false, "timeago_tokens": { - "isekhondi": "s", - "amasekhondi": "s", - "iminithi": "m", "amaminithi": "m", - "ihora": "h", - "emahoreni": "h", - "osukwini": "D", - "olungu": "D", - "olwedlule": "D", - "ezinsukwini": "D", - "ezingu": "D", - "ezedlule.": "D", - "usuku": "D", - "izinsuku": "D", - "iviki": "W", - "evikini": "W", - "elingu": "W", + "amasekhondi": "s", "amaviki": "W", + "emahoreni": "h", + "ezinsukwini": "D", + "ihora": "h", + "iminithi": "m", + "iminyaka": "Y", "inyanga": "M", + "isekhondi": "s", + "iviki": "W", "izinyanga": "M", - "unyaka": "Y", - "odlule": "Y", - "iminyaka": "Y" + "osukwini": "D", + "unyaka": "Y" }, "date_order": "DY", "months": { @@ -4310,8 +4020,8 @@ "sep": 9 }, "timeago_nd_tokens": { - "namuhla": "0D", - "izolo": "1D" + "izolo": "1D", + "namuhla": "0D" }, "comma_decimal": false, "number_tokens": { diff --git a/testfiles/dict/timeago_samples_short.json b/testfiles/dict/timeago_samples_short.json deleted file mode 100644 index 1b3aac6..0000000 --- a/testfiles/dict/timeago_samples_short.json +++ /dev/null @@ -1,3488 +0,0 @@ -{ - "af": [ - "35 min. gelede", - "50 min. gelede", - "1 u. gelede", - "2 u. gelede", - "3 u. gelede", - "4 u. gelede", - "5 u. gelede", - "6 u. gelede", - "7 u. gelede", - "8 u. gelede", - "9 u. gelede", - "12 u. gelede", - "17 u. gelede", - "18 u. gelede", - "19 u. gelede", - "20 u. gelede", - "10 u. gelede", - "11 u. gelede", - "13 u. gelede", - "1 dag gelede", - "2 dae gelede", - "3 dae gelede", - "4 dae gelede", - "6 dae gelede", - "8 dae gelede", - "10 dae gelede", - "11 dae gelede", - "12 dae gelede", - "13 dae gelede", - "2 w. gelede", - "3 w. gelede", - "1 md. gelede", - "4 w. gelede", - "7 md. gelede", - "10 md. gelede", - "1 j. gelede", - "2 j. gelede", - "3 j. gelede", - "4 j. gelede", - "5 j. gelede" - ], - "am": [ - "ከ35 ደቂቃዎች በፊት", - "ከ50 ደቂቃዎች በፊት", - "ከ1 ሰዓት በፊት", - "ከ2 ሰዓቶች በፊት", - "ከ3 ሰዓቶች በፊት", - "ከ4 ሰዓቶች በፊት", - "ከ5 ሰዓቶች በፊት", - "ከ6 ሰዓቶች በፊት", - "ከ7 ሰዓቶች በፊት", - "ከ8 ሰዓቶች በፊት", - "ከ9 ሰዓቶች በፊት", - "ከ12 ሰዓቶች በፊት", - "ከ17 ሰዓቶች በፊት", - "ከ18 ሰዓቶች በፊት", - "ከ19 ሰዓቶች በፊት", - "ከ20 ሰዓቶች በፊት", - "ከ10 ሰዓቶች በፊት", - "ከ11 ሰዓቶች በፊት", - "ከ13 ሰዓቶች በፊት", - "ከ 1 ቀን በፊት", - "ከ2 ቀኖች በፊት", - "ከ3 ቀኖች በፊት", - "ከ4 ቀኖች በፊት", - "ከ6 ቀኖች በፊት", - "ከ8 ቀኖች በፊት", - "ከ10 ቀኖች በፊት", - "ከ11 ቀኖች በፊት", - "ከ12 ቀኖች በፊት", - "ከ13 ቀኖች በፊት", - "ከ2 ሳምንታት በፊት", - "ከ3 ሳምንታት በፊት", - "ከ1 ወራት በፊት", - "ከ4 ሳምንታት በፊት", - "ከ7 ወራት በፊት", - "ከ10 ወራት በፊት", - "ከ1 ዓመታት በፊት", - "ከ2 ዓመታት በፊት", - "ከ3 ዓመታት በፊት", - "ከ4 ዓመታት በፊት", - "ከ5 ዓመታት በፊት" - ], - "ar": [ - "قبل 35 دقيقة", - "قبل 50 دقيقة", - "قبل ساعة واحدة", - "قبل ساعتين", - "قبل 3 ساعات", - "قبل 4 ساعات", - "قبل 5 ساعات", - "قبل 6 ساعات", - "قبل 7 ساعات", - "قبل 8 ساعات", - "قبل 9 ساعات", - "قبل 12 ساعة", - "قبل 17 ساعة", - "قبل 18 ساعة", - "قبل 19 ساعة", - "قبل 20 ساعة", - "قبل 10 ساعات", - "قبل 11 ساعة", - "قبل 13 ساعة", - "قبل يوم واحد", - "قبل يومين", - "قبل 3 أيام", - "قبل 4 أيام", - "قبل 6 أيام", - "قبل 8 أيام", - "قبل 10 أيام", - "قبل 11 يومًا", - "قبل 12 يومًا", - "قبل 13 يومًا", - "قبل أسبوعين", - "قبل 3 أسابيع", - "قبل شهر واحد", - "قبل 4 أسابيع", - "خلال 7 أشهر", - "خلال 10 أشهر", - "قبل سنة واحدة", - "قبل سنتين", - "قبل 3 سنوات", - "قبل 4 سنوات", - "قبل 5 سنوات" - ], - "as": [ - "35 মিনিট পূৰ্বে", - "50 মিনিট পূৰ্বে", - "1 ঘণ্টা পূৰ্বে", - "2 ঘণ্টা পূৰ্বে", - "3 ঘণ্টা পূৰ্বে", - "4 ঘণ্টা পূৰ্বে", - "5 ঘণ্টা পূৰ্বে", - "6 ঘণ্টা পূৰ্বে", - "7 ঘণ্টা পূৰ্বে", - "8 ঘণ্টা পূৰ্বে", - "9 ঘণ্টা পূৰ্বে", - "12 ঘণ্টা পূৰ্বে", - "17 ঘণ্টা পূৰ্বে", - "18 ঘণ্টা পূৰ্বে", - "19 ঘণ্টা পূৰ্বে", - "20 ঘণ্টা পূৰ্বে", - "10 ঘণ্টা পূৰ্বে", - "11 ঘণ্টা পূৰ্বে", - "13 ঘণ্টা পূৰ্বে", - "1 দিন পূৰ্বে", - "2 দিন পূৰ্বে", - "3 দিন পূৰ্বে", - "4 দিন পূৰ্বে", - "6 দিন পূৰ্বে", - "8 দিন পূৰ্বে", - "10 দিন পূৰ্বে", - "11 দিন পূৰ্বে", - "12 দিন পূৰ্বে", - "13 দিন পূৰ্বে", - "2 সপ্তাহ পূৰ্বে", - "3 সপ্তাহ পূৰ্বে", - "1 মাহ পূৰ্বে", - "4 সপ্তাহ পূৰ্বে", - "7 মাহ পূৰ্বে", - "10 মাহ পূৰ্বে", - "1 বছৰৰ পূৰ্বে", - "2 বছৰৰ পূৰ্বে", - "3 বছৰৰ পূৰ্বে", - "4 বছৰৰ পূৰ্বে", - "5 বছৰৰ পূৰ্বে" - ], - "az": [ - "35 dəqiqə öncə", - "50 dəqiqə öncə", - "1 saat öncə", - "2 saat öncə", - "3 saat öncə", - "4 saat öncə", - "5 saat öncə", - "6 saat öncə", - "7 saat öncə", - "8 saat öncə", - "9 saat öncə", - "12 saat öncə", - "17 saat öncə", - "18 saat öncə", - "19 saat öncə", - "20 saat öncə", - "10 saat öncə", - "11 saat öncə", - "13 saat öncə", - "1 gün öncə", - "2 gün öncə", - "3 gün öncə", - "4 gün öncə", - "6 gün öncə", - "8 gün öncə", - "10 gün öncə", - "11 gün öncə", - "12 gün öncə", - "13 gün öncə", - "2 həftə öncə", - "3 həftə öncə", - "1 ay öncə", - "4 həftə öncə", - "7 ay öncə", - "10 ay öncə", - "1 il öncə", - "2 il öncə", - "3 il öncə", - "4 il öncə", - "5 il öncə" - ], - "be": [ - "35 хв таму", - "50 хв таму", - "1 гадз таму", - "2 гадз таму", - "3 гадз таму", - "4 гадз таму", - "5 гадз таму", - "6 гадз таму", - "7 гадз таму", - "8 гадз таму", - "9 гадз таму", - "12 гадз таму", - "17 гадз таму", - "18 гадз таму", - "19 гадз таму", - "20 гадз таму", - "10 гадз таму", - "11 гадз таму", - "13 гадз таму", - "1 дзень таму", - "2 дні таму", - "3 дні таму", - "4 дні таму", - "6 дзён таму", - "8 дзён таму", - "10 дзён таму", - "11 дзён таму", - "12 дзён таму", - "13 дзён таму", - "2 тыд таму", - "3 тыд таму", - "1 мес. таму", - "4 тыд таму", - "7 мес. таму", - "10 мес. таму", - "1 г. таму", - "2 г. таму", - "3 г. таму", - "4 г. таму", - "5 г. таму" - ], - "bg": [ - "преди 35 мин", - "преди 50 мин", - "преди 1 ч", - "преди 2 ч", - "преди 3 ч", - "преди 4 ч", - "преди 5 ч", - "преди 6 ч", - "преди 7 ч", - "преди 8 ч", - "преди 9 ч", - "преди 12 ч", - "преди 17 ч", - "преди 18 ч", - "преди 19 ч", - "преди 20 ч", - "преди 10 ч", - "преди 11 ч", - "преди 13 ч", - "преди 1 ден", - "преди 2 дни", - "преди 3 дни", - "преди 4 дни", - "преди 6 дни", - "преди 8 дни", - "преди 10 дни", - "преди 11 дни", - "преди 12 дни", - "преди 13 дни", - "преди 2 седм.", - "преди 3 седм.", - "преди 1 м.", - "преди 4 седм.", - "преди 7 м.", - "преди 10 м.", - "преди 1 г.", - "преди 2 г.", - "преди 3 г.", - "преди 4 г.", - "преди 5 г." - ], - "bn": [ - "35 মিনিট আগে", - "50 মিনিট আগে", - "1 ঘন্টা আগে", - "2 ঘন্টা আগে", - "3 ঘন্টা আগে", - "4 ঘন্টা আগে", - "5 ঘন্টা আগে", - "6 ঘন্টা আগে", - "7 ঘন্টা আগে", - "8 ঘন্টা আগে", - "9 ঘন্টা আগে", - "12 ঘন্টা আগে", - "17 ঘন্টা আগে", - "18 ঘন্টা আগে", - "19 ঘন্টা আগে", - "20 ঘন্টা আগে", - "10 ঘন্টা আগে", - "11 ঘন্টা আগে", - "13 ঘন্টা আগে", - "1 দিন আগে", - "2 দিন আগে", - "3 দিন আগে", - "4 দিন আগে", - "6 দিন আগে", - "8 দিন আগে", - "10 দিন আগে", - "11 দিন আগে", - "12 দিন আগে", - "13 দিন আগে", - "2 সপ্তাহ আগে", - "3 সপ্তাহ আগে", - "1 মাস আগে", - "4 সপ্তাহ আগে", - "7 মাস আগে", - "10 মাস আগে", - "1 বছর পূর্বে", - "2 বছর পূর্বে", - "3 বছর পূর্বে", - "4 বছর পূর্বে", - "5 বছর পূর্বে" - ], - "bs": [ - "prije 35 min.", - "prije 50 min.", - "prije 1 sat", - "prije 2 sata", - "prije 3 sata", - "prije 4 sata", - "prije 5 sati", - "prije 6 sati", - "prije 7 sati", - "prije 8 sati", - "prije 9 sati", - "prije 12 sati", - "prije 17 sati", - "prije 18 sati", - "prije 19 sati", - "prije 20 sati", - "prije 10 sati", - "prije 11 sati", - "prije 13 sati", - "prije 1 d.", - "prije 2 d.", - "prije 3 d.", - "prije 4 d.", - "prije 6 d.", - "prije 8 d.", - "prije 10 d.", - "prije 11 d.", - "prije 12 d.", - "prije 13 d.", - "prije 2 sed.", - "prije 3 sed.", - "prije 1 mj.", - "prije 4 sed.", - "prije 7 mj.", - "prije 10 mj.", - "prije 1 god.", - "prije 2 god.", - "prije 3 god.", - "prije 4 god.", - "prije 5 god." - ], - "ca": [ - "fa 35 min", - "fa 50 min", - "fa 1 h", - "fa 2 h", - "fa 3 h", - "fa 4 h", - "fa 5 h", - "fa 6 h", - "fa 7 h", - "fa 8 h", - "fa 9 h", - "fa 12 h", - "fa 17 h", - "fa 18 h", - "fa 19 h", - "fa 20 h", - "fa 10 h", - "fa 11 h", - "fa 13 h", - "fa 1 dia", - "fa 2 dies", - "fa 3 dies", - "fa 4 dies", - "fa 6 dies", - "fa 8 dies", - "fa 10 dies", - "fa 11 dies", - "fa 12 dies", - "fa 13 dies", - "fa 2 setm.", - "fa 3 setm.", - "fa 1 mes", - "fa 4 setm.", - "fa 7 mesos", - "fa 10 mesos", - "fa 1 any", - "fa 2 anys", - "fa 3 anys", - "fa 4 anys", - "fa 5 anys" - ], - "cs": [ - "před 35 min", - "před 50 min", - "před 1 h", - "před 2 h", - "před 3 h", - "před 4 h", - "před 5 h", - "před 6 h", - "před 7 h", - "před 8 h", - "před 9 h", - "před 12 h", - "před 17 h", - "před 18 h", - "před 19 h", - "před 20 h", - "před 10 h", - "před 11 h", - "před 13 h", - "před 1 dnem", - "před 2 dny", - "před 3 dny", - "před 4 dny", - "před 6 dny", - "před 8 dny", - "před 10 dny", - "před 11 dny", - "před 12 dny", - "před 13 dny", - "před 2 týd.", - "před 3 týd.", - "před 1 měs.", - "před 4 týd.", - "před 7 měs.", - "před 10 měs.", - "před 1 r.", - "před 2 r.", - "před 3 r.", - "před 4 r.", - "před 5 l." - ], - "da": [ - "35 min. siden", - "50 min. siden", - "1 time siden", - "2 timer siden", - "3 timer siden", - "4 timer siden", - "5 timer siden", - "6 timer siden", - "7 timer siden", - "8 timer siden", - "9 timer siden", - "12 timer siden", - "17 timer siden", - "18 timer siden", - "19 timer siden", - "20 timer siden", - "10 timer siden", - "11 timer siden", - "13 timer siden", - "1 dag siden", - "2 dage siden", - "3 dage siden", - "4 dage siden", - "6 dage siden", - "8 dage siden", - "10 dage siden", - "11 dage siden", - "12 dage siden", - "13 dage siden", - "2 uger siden", - "3 uger siden", - "1 md. siden", - "4 uger siden", - "7 mdr. siden", - "10 mdr. siden", - "1 år siden", - "2 år siden", - "3 år siden", - "4 år siden", - "5 år siden" - ], - "de": [ - "vor 35 Min.", - "vor 50 Min.", - "vor 1 Std.", - "vor 2 Std.", - "vor 3 Std.", - "vor 4 Std.", - "vor 5 Std.", - "vor 6 Std.", - "vor 7 Std.", - "vor 8 Std.", - "vor 9 Std.", - "vor 12 Std.", - "vor 17 Std.", - "vor 18 Std.", - "vor 19 Std.", - "vor 20 Std.", - "vor 10 Std.", - "vor 11 Std.", - "vor 13 Std.", - "vor 1 Tag", - "vor 2 Tagen", - "vor 3 Tagen", - "vor 4 Tagen", - "vor 6 Tagen", - "vor 8 Tagen", - "vor 10 Tagen", - "vor 11 Tagen", - "vor 12 Tagen", - "vor 13 Tagen", - "vor 2 Wochen", - "vor 3 Wochen", - "vor 1 Monat", - "vor 4 Wochen", - "vor 7 Monaten", - "vor 10 Monaten", - "vor 1 Jahr", - "vor 2 Jahren", - "vor 3 Jahren", - "vor 4 Jahren", - "vor 5 Jahren" - ], - "el": [ - "πριν από 35 λεπ.", - "πριν από 50 λεπ.", - "πριν από 1 ώ.", - "πριν από 2 ώ.", - "πριν από 3 ώ.", - "πριν από 4 ώ.", - "πριν από 5 ώ.", - "πριν από 6 ώ.", - "πριν από 7 ώ.", - "πριν από 8 ώ.", - "πριν από 9 ώ.", - "πριν από 12 ώ.", - "πριν από 17 ώ.", - "πριν από 18 ώ.", - "πριν από 19 ώ.", - "πριν από 20 ώ.", - "πριν από 10 ώ.", - "πριν από 11 ώ.", - "πριν από 13 ώ.", - "πριν από 1 ημ.", - "πριν από 2 ημ.", - "πριν από 3 ημ.", - "πριν από 4 ημ.", - "πριν από 6 ημ.", - "πριν από 8 ημ.", - "πριν από 10 ημ.", - "πριν από 11 ημ.", - "πριν από 12 ημ.", - "πριν από 13 ημ.", - "πριν από 2 εβδ.", - "πριν από 3 εβδ.", - "πριν από 1 μήνα", - "πριν από 4 εβδ.", - "πριν από 7 μήνες", - "πριν από 10 μήνες", - "πριν από 1 έτος", - "πριν από 2 έτη", - "πριν από 3 έτη", - "πριν από 4 έτη", - "πριν από 5 έτη" - ], - "en": [ - "35 min ago", - "50 min ago", - "1h ago", - "2h ago", - "3h ago", - "4h ago", - "5h ago", - "6h ago", - "7h ago", - "8h ago", - "9h ago", - "12h ago", - "17h ago", - "18h ago", - "19h ago", - "20h ago", - "10h ago", - "11h ago", - "13h ago", - "1d ago", - "2d ago", - "3d ago", - "4d ago", - "6d ago", - "8d ago", - "10d ago", - "11d ago", - "12d ago", - "13d ago", - "2w ago", - "3w ago", - "1mo ago", - "4w ago", - "7mo ago", - "10mo ago", - "1y ago", - "2y ago", - "3y ago", - "4y ago", - "5y ago" - ], - "en-GB": [ - "35 min ago", - "50 min ago", - "1 hr ago", - "2 hr ago", - "3 hr ago", - "4 hr ago", - "5 hr ago", - "6 hr ago", - "7 hr ago", - "8 hr ago", - "9 hr ago", - "12 hr ago", - "17 hr ago", - "18 hr ago", - "19 hr ago", - "20 hr ago", - "10 hr ago", - "11 hr ago", - "13 hr ago", - "1 day ago", - "2 days ago", - "3 days ago", - "4 days ago", - "6 days ago", - "8 days ago", - "10 days ago", - "11 days ago", - "12 days ago", - "13 days ago", - "2 wk ago", - "3 wk ago", - "1 mo ago", - "4 wk ago", - "7 mo ago", - "10 mo ago", - "1 yr ago", - "2 yr ago", - "3 yr ago", - "4 yr ago", - "5 yr ago" - ], - "en-IN": [ - "35 min ago", - "50 min ago", - "1 hr ago", - "2 hr ago", - "3 hr ago", - "4 hr ago", - "5 hr ago", - "6 hr ago", - "7 hr ago", - "8 hr ago", - "9 hr ago", - "12 hr ago", - "17 hr ago", - "18 hr ago", - "19 hr ago", - "20 hr ago", - "10 hr ago", - "11 hr ago", - "13 hr ago", - "1 day ago", - "2 days ago", - "3 days ago", - "4 days ago", - "6 days ago", - "8 days ago", - "10 days ago", - "11 days ago", - "12 days ago", - "13 days ago", - "2 wk ago", - "3 wk ago", - "1 mo ago", - "4 wk ago", - "7 mo ago", - "10 mo ago", - "1 yr ago", - "2 yr ago", - "3 yr ago", - "4 yr ago", - "5 yr ago" - ], - "es": [ - "hace 35 min", - "hace 50 min", - "hace 1 h", - "hace 2 h", - "hace 3 h", - "hace 4 h", - "hace 5 h", - "hace 6 h", - "hace 7 h", - "hace 8 h", - "hace 9 h", - "hace 12 h", - "hace 17 h", - "hace 18 h", - "hace 19 h", - "hace 20 h", - "hace 10 h", - "hace 11 h", - "hace 13 h", - "hace 1 d", - "hace 2 d", - "hace 3 d", - "hace 4 d", - "hace 6 d", - "hace 8 d", - "hace 10 d", - "hace 11 d", - "hace 12 d", - "hace 13 d", - "hace 2 sem.", - "hace 3 sem.", - "hace 1 m", - "hace 4 sem.", - "hace 7 m", - "hace 10 m", - "hace 1 a", - "hace 2 a", - "hace 3 a", - "hace 4 a", - "hace 5 a" - ], - "es-419": [ - "hace 35 min", - "hace 50 min", - "hace 1 h", - "hace 2 h", - "hace 3 h", - "hace 4 h", - "hace 5 h", - "hace 6 h", - "hace 7 h", - "hace 8 h", - "hace 9 h", - "hace 12 h", - "hace 17 h", - "hace 18 h", - "hace 19 h", - "hace 20 h", - "hace 10 h", - "hace 11 h", - "hace 13 h", - "hace 1 día", - "hace 2 días", - "hace 3 días", - "hace 4 días", - "hace 6 días", - "hace 8 días", - "hace 10 días", - "hace 11 días", - "hace 12 días", - "hace 13 días", - "hace 2 sem.", - "hace 3 sem.", - "hace 1 m", - "hace 4 sem.", - "hace 7 m", - "hace 10 m", - "hace 1 a", - "hace 2 a", - "hace 3 a", - "hace 4 a", - "hace 5 a" - ], - "es-US": [ - "hace 35 min", - "hace 50 min", - "hace 1 h", - "hace 2 h", - "hace 3 h", - "hace 4 h", - "hace 5 h", - "hace 6 h", - "hace 7 h", - "hace 8 h", - "hace 9 h", - "hace 12 h", - "hace 17 h", - "hace 18 h", - "hace 19 h", - "hace 20 h", - "hace 10 h", - "hace 11 h", - "hace 13 h", - "hace 1 día", - "hace 2 días", - "hace 3 días", - "hace 4 días", - "hace 6 días", - "hace 8 días", - "hace 10 días", - "hace 11 días", - "hace 12 días", - "hace 13 días", - "hace 2 sem.", - "hace 3 sem.", - "hace 1 m", - "hace 4 sem.", - "hace 7 m", - "hace 10 m", - "hace 1 a", - "hace 2 a", - "hace 3 a", - "hace 4 a", - "hace 5 a" - ], - "et": [ - "35 min eest", - "50 min eest", - "1 t eest", - "2 t eest", - "3 t eest", - "4 t eest", - "5 t eest", - "6 t eest", - "7 t eest", - "8 t eest", - "9 t eest", - "12 t eest", - "17 t eest", - "18 t eest", - "19 t eest", - "20 t eest", - "10 t eest", - "11 t eest", - "13 t eest", - "1 p eest", - "2 p eest", - "3 p eest", - "4 p eest", - "6 p eest", - "8 p eest", - "10 p eest", - "11 p eest", - "12 p eest", - "13 p eest", - "2 näd eest", - "3 näd eest", - "1 kuu eest", - "4 näd eest", - "7 kuu eest", - "10 kuu eest", - "1 a eest", - "2 a eest", - "3 a eest", - "4 a eest", - "5 a eest" - ], - "eu": [ - "Duela 35 minutu", - "Duela 50 minutu", - "Duela 1 ordu", - "Duela 2 ordu", - "Duela 3 ordu", - "Duela 4 ordu", - "Duela 5 ordu", - "Duela 6 ordu", - "Duela 7 ordu", - "Duela 8 ordu", - "Duela 9 ordu", - "Duela 12 ordu", - "Duela 17 ordu", - "Duela 18 ordu", - "Duela 19 ordu", - "Duela 20 ordu", - "Duela 10 ordu", - "Duela 11 ordu", - "Duela 13 ordu", - "Duela 1 egun", - "Duela 2 egun", - "Duela 3 egun", - "Duela 4 egun", - "Duela 6 egun", - "Duela 8 egun", - "Duela 10 egun", - "Duela 11 egun", - "Duela 12 egun", - "Duela 13 egun", - "Duela 2 aste", - "Duela 3 aste", - "Duela 1 hilabete", - "Duela 4 aste", - "Duela 7 hilabete", - "Duela 10 hilabete", - "Duela 1 urte", - "Duela 2 urte", - "Duela 3 urte", - "Duela 4 urte", - "Duela 5 urte" - ], - "fa": [ - "35 دقیقه پیش", - "50 دقیقه پیش", - "1 ساعت پیش", - "2 ساعت پیش", - "3 ساعت پیش", - "4 ساعت پیش", - "5 ساعت پیش", - "6 ساعت پیش", - "7 ساعت پیش", - "8 ساعت پیش", - "9 ساعت پیش", - "12 ساعت پیش", - "17 ساعت پیش", - "18 ساعت پیش", - "19 ساعت پیش", - "20 ساعت پیش", - "10 ساعت پیش", - "11 ساعت پیش", - "13 ساعت پیش", - "1 روز پیش", - "2 روز پیش", - "3 روز پیش", - "4 روز پیش", - "6 روز پیش", - "8 روز پیش", - "10 روز پیش", - "11 روز پیش", - "12 روز پیش", - "13 روز پیش", - "2 هفته پیش", - "3 هفته پیش", - "1 ماه پیش", - "4 هفته پیش", - "7 ماه پیش", - "10 ماه پیش", - "1 سال پیش", - "2 سال پیش", - "3 سال پیش", - "4 سال پیش", - "5 سال پیش" - ], - "fi": [ - "35 min sitten", - "50 min sitten", - "1 t sitten", - "2 t sitten", - "3 t sitten", - "4 t sitten", - "5 t sitten", - "6 t sitten", - "7 t sitten", - "8 t sitten", - "9 t sitten", - "12 t sitten", - "17 t sitten", - "18 t sitten", - "19 t sitten", - "20 t sitten", - "10 t sitten", - "11 t sitten", - "13 t sitten", - "1 pv sitten", - "2 pv sitten", - "3 pv sitten", - "4 pv sitten", - "6 pv sitten", - "8 pv sitten", - "10 pv sitten", - "11 pv sitten", - "12 pv sitten", - "13 pv sitten", - "2 vk sitten", - "3 vk sitten", - "1 kk sitten", - "4 vk sitten", - "7 kk sitten", - "10 kk sitten", - "1 v sitten", - "2 v sitten", - "3 v sitten", - "4 v sitten", - "5 v sitten" - ], - "fil": [ - "35 min. ang nakalipas", - "50 min. ang nakalipas", - "1 oras ang nakalipas", - "2 oras ang nakalipas", - "3 oras ang nakalipas", - "4 oras ang nakalipas", - "5 oras ang nakalipas", - "6 oras ang nakalipas", - "7 oras ang nakalipas", - "8 oras ang nakalipas", - "9 oras ang nakalipas", - "12 oras ang nakalipas", - "17 oras ang nakalipas", - "18 oras ang nakalipas", - "19 oras ang nakalipas", - "20 oras ang nakalipas", - "10 oras ang nakalipas", - "11 oras ang nakalipas", - "13 oras ang nakalipas", - "1 araw ang nakalipas", - "2 araw ang nakalipas", - "3 araw ang nakalipas", - "4 (na) araw ang nakalipas", - "6 (na) araw ang nakalipas", - "8 araw ang nakalipas", - "10 araw ang nakalipas", - "11 araw ang nakalipas", - "12 araw ang nakalipas", - "13 araw ang nakalipas", - "2 linggo ang nakalipas", - "3 linggo ang nakalipas", - "1 buwan ang nakalipas", - "4 (na) linggo ang nakalipas", - "7 buwan ang nakalipas", - "10 buwan ang nakalipas", - "1 taon ang nakalipas", - "2 taon ang nakalipas", - "3 taon ang nakalipas", - "4 taon ang nakalipas", - "5 taon ang nakalipas" - ], - "fr": [ - "il y a 35 min", - "il y a 50 min", - "il y a 1 h", - "il y a 2 h", - "il y a 3 h", - "il y a 4 h", - "il y a 5 h", - "il y a 6 h", - "il y a 7 h", - "il y a 8 h", - "il y a 9 h", - "il y a 12 h", - "il y a 17 h", - "il y a 18 h", - "il y a 19 h", - "il y a 20 h", - "il y a 10 h", - "il y a 11 h", - "il y a 13 h", - "il y a 1 j", - "il y a 2 j", - "il y a 3 j", - "il y a 4 j", - "il y a 6 j", - "il y a 8 j", - "il y a 10 j", - "il y a 11 j", - "il y a 12 j", - "il y a 13 j", - "il y a 2 sem.", - "il y a 3 sem.", - "il y a 1 m.", - "il y a 4 sem.", - "il y a 7 m.", - "il y a 10 m.", - "il y a 1 a", - "il y a 2 a", - "il y a 3 a", - "il y a 4 a", - "il y a 5 a" - ], - "fr-CA": [ - "il y a 35 min", - "il y a 50 min", - "il y a 1 h", - "il y a 2 h", - "il y a 3 h", - "il y a 4 h", - "il y a 5 h", - "il y a 6 h", - "il y a 7 h", - "il y a 8 h", - "il y a 9 h", - "il y a 12 h", - "il y a 17 h", - "il y a 18 h", - "il y a 19 h", - "il y a 20 h", - "il y a 10 h", - "il y a 11 h", - "il y a 13 h", - "il y a 1 j", - "il y a 2 j", - "il y a 3 j", - "il y a 4 j", - "il y a 6 j", - "il y a 8 j", - "il y a 10 j", - "il y a 11 j", - "il y a 12 j", - "il y a 13 j", - "il y a 2 sem.", - "il y a 3 sem.", - "il y a 1 m.", - "il y a 4 sem.", - "il y a 7 m.", - "il y a 10 m.", - "il y a 1 a", - "il y a 2 a", - "il y a 3 a", - "il y a 4 a", - "il y a 5 a" - ], - "gl": [ - "hai 35 min", - "hai 50 min", - "hai 1 h", - "hai 2 h", - "hai 3 h", - "hai 4 h", - "hai 5 h", - "hai 6 h", - "hai 7 h", - "hai 8 h", - "hai 9 h", - "hai 12 h", - "hai 17 h", - "hai 18 h", - "hai 19 h", - "hai 20 h", - "hai 10 h", - "hai 11 h", - "hai 13 h", - "hai 1 día", - "hai 2 días", - "hai 3 días", - "hai 4 días", - "hai 6 días", - "hai 8 días", - "hai 10 días", - "hai 11 días", - "hai 12 días", - "hai 13 días", - "hai 2 sem.", - "hai 3 sem.", - "hai 1 mes", - "hai 4 sem.", - "hai 7 meses", - "hai 10 meses", - "hai 1 ano", - "hai 2 anos", - "hai 3 anos", - "hai 4 anos", - "hai 5 anos" - ], - "gu": [ - "35 મિનિટ પહેલાં", - "50 મિનિટ પહેલાં", - "1 કલાક પહેલાં", - "2 કલાક પહેલાં", - "3 કલાક પહેલાં", - "4 કલાક પહેલાં", - "5 કલાક પહેલાં", - "6 કલાક પહેલાં", - "7 કલાક પહેલાં", - "8 કલાક પહેલાં", - "9 કલાક પહેલાં", - "12 કલાક પહેલાં", - "17 કલાક પહેલાં", - "18 કલાક પહેલાં", - "19 કલાક પહેલાં", - "20 કલાક પહેલાં", - "10 કલાક પહેલાં", - "11 કલાક પહેલાં", - "13 કલાક પહેલાં", - "1 દિવસ પહેલાં", - "2 દિવસ પહેલાં", - "3 દિવસ પહેલાં", - "4 દિવસ પહેલાં", - "6 દિવસ પહેલાં", - "8 દિવસ પહેલાં", - "10 દિવસ પહેલાં", - "11 દિવસ પહેલાં", - "12 દિવસ પહેલાં", - "13 દિવસ પહેલાં", - "2 અઠ. પહેલાં", - "3 અઠ. પહેલાં", - "1 મહિના પહેલાં", - "4 અઠ. પહેલાં", - "7 મહિના પહેલાં", - "10 મહિના પહેલાં", - "1 વર્ષ પહેલાં", - "2 વર્ષ પહેલાં", - "3 વર્ષ પહેલાં", - "4 વર્ષ પહેલાં", - "5 વર્ષ પહેલાં" - ], - "hi": [ - "35 मि॰ पहले", - "50 मि॰ पहले", - "1 घं॰ पहले", - "2 घं॰ पहले", - "3 घं॰ पहले", - "4 घं॰ पहले", - "5 घं॰ पहले", - "6 घं॰ पहले", - "7 घं॰ पहले", - "8 घं॰ पहले", - "9 घं॰ पहले", - "12 घं॰ पहले", - "17 घं॰ पहले", - "18 घं॰ पहले", - "19 घं॰ पहले", - "20 घं॰ पहले", - "10 घं॰ पहले", - "11 घं॰ पहले", - "13 घं॰ पहले", - "1 दिन पहले", - "2 दिन पहले", - "3 दिन पहले", - "4 दिन पहले", - "6 दिन पहले", - "8 दिन पहले", - "10 दिन पहले", - "11 दिन पहले", - "12 दिन पहले", - "13 दिन पहले", - "2 सप्ताह पहले", - "3 सप्ताह पहले", - "1 माह पहले", - "4 सप्ताह पहले", - "7 माह पहले", - "10 माह पहले", - "1 वर्ष पहले", - "2 वर्ष पहले", - "3 वर्ष पहले", - "4 वर्ष पहले", - "5 वर्ष पहले" - ], - "hr": [ - "prije 35 min", - "prije 50 min", - "prije 1 h", - "prije 2 h", - "prije 3 h", - "prije 4 h", - "prije 5 h", - "prije 6 h", - "prije 7 h", - "prije 8 h", - "prije 9 h", - "prije 12 h", - "prije 17 h", - "prije 18 h", - "prije 19 h", - "prije 20 h", - "prije 10 h", - "prije 11 h", - "prije 13 h", - "prije 1 dan", - "prije 2 dana", - "prije 3 dana", - "prije 4 dana", - "prije 6 dana", - "prije 8 dana", - "prije 10 dana", - "prije 11 dana", - "prije 12 dana", - "prije 13 dana", - "prije 2 tj.", - "prije 3 tj.", - "prije 1 mj.", - "prije 4 tj.", - "prije 7 mj.", - "prije 10 mj.", - "prije 1 g.", - "prije 2 g.", - "prije 3 g.", - "prije 4 g.", - "prije 5 g." - ], - "hu": [ - "35 perccel ezelőtt", - "50 perccel ezelőtt", - "1 órával ezelőtt", - "2 órával ezelőtt", - "3 órával ezelőtt", - "4 órával ezelőtt", - "5 órával ezelőtt", - "6 órával ezelőtt", - "7 órával ezelőtt", - "8 órával ezelőtt", - "9 órával ezelőtt", - "12 órával ezelőtt", - "17 órával ezelőtt", - "18 órával ezelőtt", - "19 órával ezelőtt", - "20 órával ezelőtt", - "10 órával ezelőtt", - "11 órával ezelőtt", - "13 órával ezelőtt", - "1 napja", - "2 napja", - "3 napja", - "4 napja", - "6 napja", - "8 napja", - "10 napja", - "11 napja", - "12 napja", - "13 napja", - "2 héttel ezelőtt", - "3 héttel ezelőtt", - "1 hónappal ezelőtt", - "4 héttel ezelőtt", - "7 hónappal ezelőtt", - "10 hónappal ezelőtt", - "1 évvel ezelőtt", - "2 évvel ezelőtt", - "3 évvel ezelőtt", - "4 évvel ezelőtt", - "5 évvel ezelőtt" - ], - "hy": [ - "35 ր առաջ", - "50 ր առաջ", - "1 ժ առաջ", - "2 ժ առաջ", - "3 ժ առաջ", - "4 ժ առաջ", - "5 ժ առաջ", - "6 ժ առաջ", - "7 ժ առաջ", - "8 ժ առաջ", - "9 ժ առաջ", - "12 ժ առաջ", - "17 ժ առաջ", - "18 ժ առաջ", - "19 ժ առաջ", - "20 ժ առաջ", - "10 ժ առաջ", - "11 ժ առաջ", - "13 ժ առաջ", - "1 օր առաջ", - "2 օր առաջ", - "3 օր առաջ", - "4 օր առաջ", - "6 օր առաջ", - "8 օր առաջ", - "10 օր առաջ", - "11 օր առաջ", - "12 օր առաջ", - "13 օր առաջ", - "2 շաբ առաջ", - "3 շաբ առաջ", - "1 ամիս առաջ", - "4 շաբ առաջ", - "7 ամիս առաջ", - "10 ամիս առաջ", - "1 տ առաջ", - "2 տ առաջ", - "3 տ առաջ", - "4 տ առաջ", - "5 տ առաջ" - ], - "id": [ - "35 mnt lalu", - "50 mnt lalu", - "1 jam lalu", - "2 jam lalu", - "3 jam lalu", - "4 jam lalu", - "5 jam lalu", - "6 jam lalu", - "7 jam lalu", - "8 jam lalu", - "9 jam lalu", - "12 jam lalu", - "17 jam lalu", - "18 jam lalu", - "19 jam lalu", - "20 jam lalu", - "10 jam lalu", - "11 jam lalu", - "13 jam lalu", - "1 h lalu", - "2 h lalu", - "3 h lalu", - "4 h lalu", - "6 h lalu", - "8 h lalu", - "10 h lalu", - "11 h lalu", - "12 h lalu", - "13 h lalu", - "2 mgg lalu", - "3 mgg lalu", - "1 bln lalu", - "4 mgg lalu", - "7 bln lalu", - "10 bln lalu", - "1 thn lalu", - "2 thn lalu", - "3 thn lalu", - "4 thn lalu", - "5 thn lalu" - ], - "is": [ - "fyrir 35 mín.", - "fyrir 50 mín.", - "fyrir 1 klst.", - "fyrir 2 klst.", - "fyrir 3 klst.", - "fyrir 4 klst.", - "fyrir 5 klst.", - "fyrir 6 klst.", - "fyrir 7 klst.", - "fyrir 8 klst.", - "fyrir 9 klst.", - "fyrir 12 klst.", - "fyrir 17 klst.", - "fyrir 18 klst.", - "fyrir 19 klst.", - "fyrir 20 klst.", - "fyrir 10 klst.", - "fyrir 11 klst.", - "fyrir 13 klst.", - "fyrir 1 degi", - "fyrir 2 dögum", - "fyrir 3 dögum", - "fyrir 4 dögum", - "fyrir 6 dögum", - "fyrir 8 dögum", - "fyrir 10 dögum", - "fyrir 11 dögum", - "fyrir 12 dögum", - "fyrir 13 dögum", - "fyrir 2 vikum", - "fyrir 3 vikum", - "fyrir 1 mán.", - "fyrir 4 vikum", - "fyrir 7 mán.", - "fyrir 10 mán.", - "fyrir 1 ári", - "fyrir 2 árum", - "fyrir 3 árum", - "fyrir 4 árum", - "fyrir 5 árum" - ], - "it": [ - "35 min fa", - "50 min fa", - "1 h fa", - "2 h fa", - "3 h fa", - "4 h fa", - "5 h fa", - "6 h fa", - "7 h fa", - "8 h fa", - "9 h fa", - "12 h fa", - "17 h fa", - "18 h fa", - "19 h fa", - "20 h fa", - "10 h fa", - "11 h fa", - "13 h fa", - "1 g fa", - "2 gg fa", - "3 gg fa", - "4 gg fa", - "6 gg fa", - "8 gg fa", - "10 gg fa", - "11 gg fa", - "12 gg fa", - "13 gg fa", - "2 sett. fa", - "3 sett. fa", - "1 mese fa", - "4 sett. fa", - "7 mesi fa", - "10 mesi fa", - "1 anno fa", - "2 anni fa", - "3 anni fa", - "4 anni fa", - "5 anni fa" - ], - "iw": [ - "לפני 35 דק׳", - "לפני 50 דק׳", - "לפני שעה", - "לפני שעתיים", - "לפני 3 שע׳", - "לפני 4 שע׳", - "לפני 5 שע׳", - "לפני 6 שע׳", - "לפני 7 שע׳", - "לפני 8 שע׳", - "לפני 9 שע׳", - "לפני 12 שע׳", - "לפני 17 שע׳", - "לפני 18 שע׳", - "לפני 19 שע׳", - "לפני 20 שע׳", - "לפני 10 שע׳", - "לפני 11 שע׳", - "לפני 13 שע׳", - "אתמול", - "לפני יומיים", - "לפני 3 ימים", - "לפני 4 ימים", - "לפני 6 ימים", - "לפני 8 ימים", - "לפני 10 ימים", - "לפני 11 ימים", - "לפני 12 ימים", - "לפני 13 ימים", - "לפני שבועיים", - "לפני 3 שב׳", - "לפני חודש", - "לפני 4 שב׳", - "לפני 7 חודשים", - "לפני 10 חודשים", - "לפני שנה", - "לפני שנתיים", - "לפני 3 שנים", - "לפני 4 שנים", - "לפני 5 שנים" - ], - "ja": [ - "35 分前", - "50 分前", - "1 時間前", - "2 時間前", - "3 時間前", - "4 時間前", - "5 時間前", - "6 時間前", - "7 時間前", - "8 時間前", - "9 時間前", - "12 時間前", - "17 時間前", - "18 時間前", - "19 時間前", - "20 時間前", - "10 時間前", - "11 時間前", - "13 時間前", - "1 日前", - "2 日前", - "3 日前", - "4 日前", - "6 日前", - "8 日前", - "10 日前", - "11 日前", - "12 日前", - "13 日前", - "2 週間前", - "3 週間前", - "1 か月前", - "4 週間前", - "7 か月前", - "10 か月前", - "1 年前", - "2 年前", - "3 年前", - "4 年前", - "5 年前" - ], - "ka": [ - "35 წთ წინ", - "50 წთ წინ", - "1 სთ წინ", - "2 სთ წინ", - "3 სთ წინ", - "4 სთ წინ", - "5 სთ წინ", - "6 სთ წინ", - "7 სთ წინ", - "8 სთ წინ", - "9 სთ წინ", - "12 სთ წინ", - "17 სთ წინ", - "18 სთ წინ", - "19 სთ წინ", - "20 სთ წინ", - "10 სთ წინ", - "11 სთ წინ", - "13 სთ წინ", - "1 დღის წინ", - "2 დღის წინ", - "3 დღის წინ", - "4 დღის წინ", - "6 დღის წინ", - "8 დღის წინ", - "10 დღის წინ", - "11 დღის წინ", - "12 დღის წინ", - "13 დღის წინ", - "2 კვ. წინ", - "3 კვ. წინ", - "1 თვის წინ", - "4 კვ. წინ", - "7 თვის წინ", - "10 თვის წინ", - "1 წლის წინ", - "2 წლის წინ", - "3 წლის წინ", - "4 წლის წინ", - "5 წლის წინ" - ], - "kk": [ - "35 мин. бұрын", - "50 мин. бұрын", - "1 сағ. бұрын", - "2 сағ. бұрын", - "3 сағ. бұрын", - "4 сағ. бұрын", - "5 сағ. бұрын", - "6 сағ. бұрын", - "7 сағ. бұрын", - "8 сағ. бұрын", - "9 сағ. бұрын", - "12 сағ. бұрын", - "17 сағ. бұрын", - "18 сағ. бұрын", - "19 сағ. бұрын", - "20 сағ. бұрын", - "10 сағ. бұрын", - "11 сағ. бұрын", - "13 сағ. бұрын", - "1 күн бұрын", - "2 күн бұрын", - "3 күн бұрын", - "4 күн бұрын", - "6 күн бұрын", - "8 күн бұрын", - "10 күн бұрын", - "11 күн бұрын", - "12 күн бұрын", - "13 күн бұрын", - "2 ап. бұрын", - "3 ап. бұрын", - "1 ай бұрын", - "4 ап. бұрын", - "7 ай бұрын", - "10 ай бұрын", - "1 ж. бұрын", - "2 ж. бұрын", - "3 ж. бұрын", - "4 ж. бұрын", - "5 ж. бұрын" - ], - "km": [ - "35 នាទី​​មុន", - "50 នាទី​​មុន", - "1 ម៉ោង​មុន", - "2 ម៉ោង​មុន", - "3 ម៉ោង​មុន", - "4 ម៉ោង​មុន", - "5 ម៉ោង​មុន", - "6 ម៉ោង​មុន", - "7 ម៉ោង​មុន", - "8 ម៉ោង​មុន", - "9 ម៉ោង​មុន", - "12 ម៉ោង​មុន", - "17 ម៉ោង​មុន", - "18 ម៉ោង​មុន", - "19 ម៉ោង​មុន", - "20 ម៉ោង​មុន", - "10 ម៉ោង​មុន", - "11 ម៉ោង​មុន", - "13 ម៉ោង​មុន", - "1 ថ្ងៃ​​មុន", - "2 ថ្ងៃ​​មុន", - "3 ថ្ងៃ​​មុន", - "4 ថ្ងៃ​​មុន", - "6 ថ្ងៃ​​មុន", - "8 ថ្ងៃ​​មុន", - "10 ថ្ងៃ​​មុន", - "11 ថ្ងៃ​​មុន", - "12 ថ្ងៃ​​មុន", - "13 ថ្ងៃ​​មុន", - "2 សប្ដាហ៍​មុន", - "3 សប្ដាហ៍​មុន", - "1 ខែមុន", - "4 សប្ដាហ៍​មុន", - "7 ខែមុន", - "10 ខែមុន", - "1 ឆ្នាំ​មុន", - "2 ឆ្នាំ​មុន", - "3 ឆ្នាំ​មុន", - "4 ឆ្នាំ​មុន", - "5 ឆ្នាំ​មុន" - ], - "kn": [ - "35 ನಿಮಿಷಗಳ ಹಿಂದೆ", - "50 ನಿಮಿಷಗಳ ಹಿಂದೆ", - "1 ಗಂಟೆ ಹಿಂದೆ", - "2 ಗಂಟೆಗಳ ಹಿಂದೆ", - "3 ಗಂಟೆಗಳ ಹಿಂದೆ", - "4 ಗಂಟೆಗಳ ಹಿಂದೆ", - "5 ಗಂಟೆಗಳ ಹಿಂದೆ", - "6 ಗಂಟೆಗಳ ಹಿಂದೆ", - "7 ಗಂಟೆಗಳ ಹಿಂದೆ", - "8 ಗಂಟೆಗಳ ಹಿಂದೆ", - "9 ಗಂಟೆಗಳ ಹಿಂದೆ", - "12 ಗಂಟೆಗಳ ಹಿಂದೆ", - "17 ಗಂಟೆಗಳ ಹಿಂದೆ", - "18 ಗಂಟೆಗಳ ಹಿಂದೆ", - "19 ಗಂಟೆಗಳ ಹಿಂದೆ", - "20 ಗಂಟೆಗಳ ಹಿಂದೆ", - "10 ಗಂಟೆಗಳ ಹಿಂದೆ", - "11 ಗಂಟೆಗಳ ಹಿಂದೆ", - "13 ಗಂಟೆಗಳ ಹಿಂದೆ", - "1 ದಿನದ ಹಿಂದೆ", - "2 ದಿನಗಳ ಹಿಂದೆ", - "3 ದಿನಗಳ ಹಿಂದೆ", - "4 ದಿನಗಳ ಹಿಂದೆ", - "6 ದಿನಗಳ ಹಿಂದೆ", - "8 ದಿನಗಳ ಹಿಂದೆ", - "10 ದಿನಗಳ ಹಿಂದೆ", - "11 ದಿನಗಳ ಹಿಂದೆ", - "12 ದಿನಗಳ ಹಿಂದೆ", - "13 ದಿನಗಳ ಹಿಂದೆ", - "2 ವಾರಗಳ ಹಿಂದೆ", - "3 ವಾರಗಳ ಹಿಂದೆ", - "1 ತಿಂಗಳು ಹಿಂದೆ", - "4 ವಾರಗಳ ಹಿಂದೆ", - "7 ತಿಂಗಳುಗಳ ಹಿಂದೆ", - "10 ತಿಂಗಳುಗಳ ಹಿಂದೆ", - "1 ವರ್ಷದ ಹಿಂದೆ", - "2 ವರ್ಷಗಳ ಹಿಂದೆ", - "3 ವರ್ಷಗಳ ಹಿಂದೆ", - "4 ವರ್ಷಗಳ ಹಿಂದೆ", - "5 ವರ್ಷಗಳ ಹಿಂದೆ" - ], - "ko": [ - "35분 전", - "50분 전", - "1시간 전", - "2시간 전", - "3시간 전", - "4시간 전", - "5시간 전", - "6시간 전", - "7시간 전", - "8시간 전", - "9시간 전", - "12시간 전", - "17시간 전", - "18시간 전", - "19시간 전", - "20시간 전", - "10시간 전", - "11시간 전", - "13시간 전", - "1일 전", - "2일 전", - "3일 전", - "4일 전", - "6일 전", - "8일 전", - "10일 전", - "11일 전", - "12일 전", - "13일 전", - "2주 전", - "3주 전", - "1개월 전", - "4주 전", - "7개월 전", - "10개월 전", - "1년 전", - "2년 전", - "3년 전", - "4년 전", - "5년 전" - ], - "ky": [ - "35 мүн. мурун", - "50 мүн. мурун", - "1 саат. мурун", - "2 саат. мурун", - "3 саат. мурун", - "4 саат. мурун", - "5 саат. мурун", - "6 саат. мурун", - "7 саат. мурун", - "8 саат. мурун", - "9 саат. мурун", - "12 саат. мурун", - "17 саат. мурун", - "18 саат. мурун", - "19 саат. мурун", - "20 саат. мурун", - "10 саат. мурун", - "11 саат. мурун", - "13 саат. мурун", - "1 күн мурун", - "2 күн мурун", - "3 күн мурун", - "4 күн мурун", - "6 күн мурун", - "8 күн мурун", - "10 күн мурун", - "11 күн мурун", - "12 күн мурун", - "13 күн мурун", - "2 апт. мурун", - "3 апт. мурун", - "1 ай мурун", - "4 апт. мурун", - "7 ай мурун", - "10 ай мурун", - "1 жыл мурун", - "2 жыл мурун", - "3 жыл мурун", - "4 жыл мурун", - "5 жыл мурун" - ], - "lo": [ - "35 ນທ. ກ່ອນ", - "50 ນທ. ກ່ອນ", - "1 ຊມ. ກ່ອນ", - "2 ຊມ. ກ່ອນ", - "3 ຊມ. ກ່ອນ", - "4 ຊມ. ກ່ອນ", - "5 ຊມ. ກ່ອນ", - "6 ຊມ. ກ່ອນ", - "7 ຊມ. ກ່ອນ", - "8 ຊມ. ກ່ອນ", - "9 ຊມ. ກ່ອນ", - "12 ຊມ. ກ່ອນ", - "17 ຊມ. ກ່ອນ", - "18 ຊມ. ກ່ອນ", - "19 ຊມ. ກ່ອນ", - "20 ຊມ. ກ່ອນ", - "10 ຊມ. ກ່ອນ", - "11 ຊມ. ກ່ອນ", - "13 ຊມ. ກ່ອນ", - "1 ມື້ກ່ອນ", - "2 ມື້ກ່ອນ", - "3 ມື້ກ່ອນ", - "4 ມື້ກ່ອນ", - "6 ມື້ກ່ອນ", - "8 ມື້ກ່ອນ", - "10 ມື້ກ່ອນ", - "11 ມື້ກ່ອນ", - "12 ມື້ກ່ອນ", - "13 ມື້ກ່ອນ", - "2 ອທ. ກ່ອນ", - "3 ອທ. ກ່ອນ", - "1 ດ. ກ່ອນ", - "4 ອທ. ກ່ອນ", - "7 ດ. ກ່ອນ", - "10 ດ. ກ່ອນ", - "1 ປີກ່ອນ", - "2 ປີກ່ອນ", - "3 ປີກ່ອນ", - "4 ປີກ່ອນ", - "5 ປີກ່ອນ" - ], - "lt": [ - "prieš 35 min.", - "prieš 50 min.", - "prieš 1 val.", - "prieš 2 val.", - "prieš 3 val.", - "prieš 4 val.", - "prieš 5 val.", - "prieš 6 val.", - "prieš 7 val.", - "prieš 8 val.", - "prieš 9 val.", - "prieš 12 val.", - "prieš 17 val.", - "prieš 18 val.", - "prieš 19 val.", - "prieš 20 val.", - "prieš 10 val.", - "prieš 11 val.", - "prieš 13 val.", - "prieš 1 d.", - "prieš 2 d.", - "prieš 3 d.", - "prieš 4 d.", - "prieš 6 d.", - "prieš 8 d.", - "prieš 10 d.", - "prieš 11 d.", - "prieš 12 d.", - "prieš 13 d.", - "prieš 2 sav.", - "prieš 3 sav.", - "prieš 1 mėn.", - "prieš 4 sav.", - "prieš 7 mėn.", - "prieš 10 mėn.", - "prieš 1 m.", - "prieš 2 m.", - "prieš 3 m.", - "prieš 4 m.", - "prieš 5 m." - ], - "lv": [ - "pirms 35 min.", - "pirms 50 min.", - "pirms 1 st.", - "pirms 2 st.", - "pirms 3 st.", - "pirms 4 st.", - "pirms 5 st.", - "pirms 6 st.", - "pirms 7 st.", - "pirms 8 st.", - "pirms 9 st.", - "pirms 12 st.", - "pirms 17 st.", - "pirms 18 st.", - "pirms 19 st.", - "pirms 20 st.", - "pirms 10 st.", - "pirms 11 st.", - "pirms 13 st.", - "pirms 1 d.", - "pirms 2 d.", - "pirms 3 d.", - "pirms 4 d.", - "pirms 6 d.", - "pirms 8 d.", - "pirms 10 d.", - "pirms 11 d.", - "pirms 12 d.", - "pirms 13 d.", - "pirms 2 ned.", - "pirms 3 ned.", - "pirms 1 mēn.", - "pirms 4 ned.", - "pirms 7 mēn.", - "pirms 10 mēn.", - "pirms 1 g.", - "pirms 2 g.", - "pirms 3 g.", - "pirms 4 g.", - "pirms 5 g." - ], - "mk": [ - "пред 35 мин.", - "пред 50 мин.", - "пред 1 час", - "пред 2 часа", - "пред 3 часа", - "пред 4 часа", - "пред 5 часа", - "пред 6 часа", - "пред 7 часа", - "пред 8 часа", - "пред 9 часа", - "пред 12 часа", - "пред 17 часа", - "пред 18 часа", - "пред 19 часа", - "пред 20 часа", - "пред 10 часа", - "пред 11 часа", - "пред 13 часа", - "пред 1 ден", - "пред 2 дена", - "пред 3 дена", - "пред 4 дена", - "пред 6 дена", - "пред 8 дена", - "пред 10 дена", - "пред 11 дена", - "пред 12 дена", - "пред 13 дена", - "пред 2 седмици", - "пред 3 седмици", - "пред 1 месец", - "пред 4 седмици", - "пред 7 месеци", - "пред 10 месеци", - "пред 1 год.", - "пред 2 год.", - "пред 3 год.", - "пред 4 год.", - "пред 5 год." - ], - "ml": [ - "35 മിനിറ്റ് മുമ്പ്", - "50 മിനിറ്റ് മുമ്പ്", - "1 മണിക്കൂർ മുമ്പ്", - "2 മണിക്കൂർ മുമ്പ്", - "3 മണിക്കൂർ മുമ്പ്", - "4 മണിക്കൂർ മുമ്പ്", - "5 മണിക്കൂർ മുമ്പ്", - "6 മണിക്കൂർ മുമ്പ്", - "7 മണിക്കൂർ മുമ്പ്", - "8 മണിക്കൂർ മുമ്പ്", - "9 മണിക്കൂർ മുമ്പ്", - "12 മണിക്കൂർ മുമ്പ്", - "17 മണിക്കൂർ മുമ്പ്", - "18 മണിക്കൂർ മുമ്പ്", - "19 മണിക്കൂർ മുമ്പ്", - "20 മണിക്കൂർ മുമ്പ്", - "10 മണിക്കൂർ മുമ്പ്", - "11 മണിക്കൂർ മുമ്പ്", - "13 മണിക്കൂർ മുമ്പ്", - "1 ദിവസം മുമ്പ്", - "2 ദിവസം മുമ്പ്", - "3 ദിവസം മുമ്പ്", - "4 ദിവസം മുമ്പ്", - "6 ദിവസം മുമ്പ്", - "8 ദിവസം മുമ്പ്", - "10 ദിവസം മുമ്പ്", - "11 ദിവസം മുമ്പ്", - "12 ദിവസം മുമ്പ്", - "13 ദിവസം മുമ്പ്", - "2 ആഴ്ച മുമ്പ്", - "3 ആഴ്ച മുമ്പ്", - "1 മാസം മുമ്പ്", - "4 ആഴ്ച മുമ്പ്", - "7 മാസം മുമ്പ്", - "10 മാസം മുമ്പ്", - "1 വർഷം മുമ്പ്", - "2 വർഷം മുമ്പ്", - "3 വർഷം മുമ്പ്", - "4 വർഷം മുമ്പ്", - "5 വർഷം മുമ്പ്" - ], - "mn": [ - "35 мин өмнө", - "50 мин өмнө", - "1 ц өмнө", - "2 ц өмнө", - "3 ц өмнө", - "4 ц өмнө", - "5 ц өмнө", - "6 ц өмнө", - "7 ц өмнө", - "8 ц өмнө", - "9 ц өмнө", - "12 ц өмнө", - "17 ц өмнө", - "18 ц өмнө", - "19 ц өмнө", - "20 ц өмнө", - "10 ц өмнө", - "11 ц өмнө", - "13 ц өмнө", - "1 өдрийн өмнө", - "2 өдрийн өмнө", - "3 өдрийн өмнө", - "4 өдрийн өмнө", - "6 өдрийн өмнө", - "8 өдрийн өмнө", - "10 өдрийн өмнө", - "11 өдрийн өмнө", - "12 өдрийн өмнө", - "13 өдрийн өмнө", - "2 7 хоногийн өмнө", - "3 7 хоногийн өмнө", - "1 сарын өмнө", - "4 7 хоногийн өмнө", - "7 сарын өмнө", - "10 сарын өмнө", - "1 жилийн өмнө", - "2 жилийн өмнө", - "3 жилийн өмнө", - "4 жилийн өмнө", - "5 жилийн өмнө" - ], - "mr": [ - "35 मिनि. पूर्वी", - "50 मिनि. पूर्वी", - "1 तासापूर्वी", - "2 तासांपूर्वी", - "3 तासांपूर्वी", - "4 तासांपूर्वी", - "5 तासांपूर्वी", - "6 तासांपूर्वी", - "7 तासांपूर्वी", - "8 तासांपूर्वी", - "9 तासांपूर्वी", - "12 तासांपूर्वी", - "17 तासांपूर्वी", - "18 तासांपूर्वी", - "19 तासांपूर्वी", - "20 तासांपूर्वी", - "10 तासांपूर्वी", - "11 तासांपूर्वी", - "13 तासांपूर्वी", - "1 दिवसापूर्वी", - "2 दिवसांपूर्वी", - "3 दिवसांपूर्वी", - "4 दिवसांपूर्वी", - "6 दिवसांपूर्वी", - "8 दिवसांपूर्वी", - "10 दिवसांपूर्वी", - "11 दिवसांपूर्वी", - "12 दिवसांपूर्वी", - "13 दिवसांपूर्वी", - "2 आठवड्यांपूर्वी", - "3 आठवड्यांपूर्वी", - "1 महिन्यापूर्वी", - "4 आठवड्यांपूर्वी", - "7 महिन्यांपूर्वी", - "10 महिन्यांपूर्वी", - "1 वर्षापूर्वी", - "2 वर्षांपूर्वी", - "3 वर्षांपूर्वी", - "4 वर्षांपूर्वी", - "5 वर्षांपूर्वी" - ], - "ms": [ - "35 min lalu", - "50 min lalu", - "1 jam lalu", - "2 jam lalu", - "3 jam lalu", - "4 jam lalu", - "5 jam lalu", - "6 jam lalu", - "7 jam lalu", - "8 jam lalu", - "9 jam lalu", - "12 jam lalu", - "17 jam lalu", - "18 jam lalu", - "19 jam lalu", - "20 jam lalu", - "10 jam lalu", - "11 jam lalu", - "13 jam lalu", - "1 hari lalu", - "2 hari lalu", - "3 hari lalu", - "4 hari lalu", - "6 hari lalu", - "8 hari lalu", - "10 hari lalu", - "11 hari lalu", - "12 hari lalu", - "13 hari lalu", - "2 mgu lalu", - "3 mgu lalu", - "1 bln lalu", - "4 mgu lalu", - "7 bln lalu", - "10 bln lalu", - "1 thn lalu", - "2 thn lalu", - "3 thn lalu", - "4 thn lalu", - "5 thn lalu" - ], - "my": [ - "ပြီးခဲ့သည့် 35 မိနစ်", - "ပြီးခဲ့သည့် 50 မိနစ်", - "ပြီးခဲ့သည့် 1 နာရီ", - "ပြီးခဲ့သည့် 2 နာရီ", - "ပြီးခဲ့သည့် 3 နာရီ", - "ပြီးခဲ့သည့် 4 နာရီ", - "ပြီးခဲ့သည့် 5 နာရီ", - "ပြီးခဲ့သည့် 6 နာရီ", - "ပြီးခဲ့သည့် 7 နာရီ", - "ပြီးခဲ့သည့် 8 နာရီ", - "ပြီးခဲ့သည့် 9 နာရီ", - "ပြီးခဲ့သည့် 12 နာရီ", - "ပြီးခဲ့သည့် 17 နာရီ", - "ပြီးခဲ့သည့် 18 နာရီ", - "ပြီးခဲ့သည့် 19 နာရီ", - "ပြီးခဲ့သည့် 20 နာရီ", - "ပြီးခဲ့သည့် 10 နာရီ", - "ပြီးခဲ့သည့် 11 နာရီ", - "ပြီးခဲ့သည့် 13 နာရီ", - "ပြီးခဲ့သည့် 1 ရက်", - "ပြီးခဲ့သည့် 2 ရက်", - "ပြီးခဲ့သည့် 3 ရက်", - "ပြီးခဲ့သည့် 4 ရက်", - "ပြီးခဲ့သည့် 6 ရက်", - "ပြီးခဲ့သည့် 8 ရက်", - "ပြီးခဲ့သည့် 10 ရက်", - "ပြီးခဲ့သည့် 11 ရက်", - "ပြီးခဲ့သည့် 12 ရက်", - "ပြီးခဲ့သည့် 13 ရက်", - "ပြီးခဲ့သည့် 2 ပတ်", - "ပြီးခဲ့သည့် 3 ပတ်", - "ပြီးခဲ့သည့် 1 လ", - "ပြီးခဲ့သည့် 4 ပတ်", - "ပြီးခဲ့သည့် 7 လ", - "ပြီးခဲ့သည့် 10 လ", - "ပြီးခဲ့သည့် 1 နှစ်", - "ပြီးခဲ့သည့် 2 နှစ်", - "ပြီးခဲ့သည့် 3 နှစ်", - "ပြီးခဲ့သည့် 4 နှစ်", - "ပြီးခဲ့သည့် 5 နှစ်" - ], - "ne": [ - "35 मिनेट पहिले", - "50 मिनेट पहिले", - "1 घण्टा पहिले", - "2 घण्टा पहिले", - "3 घण्टा पहिले", - "4 घण्टा पहिले", - "5 घण्टा पहिले", - "6 घण्टा पहिले", - "7 घण्टा पहिले", - "8 घण्टा पहिले", - "9 घण्टा पहिले", - "12 घण्टा पहिले", - "17 घण्टा पहिले", - "18 घण्टा पहिले", - "19 घण्टा पहिले", - "20 घण्टा पहिले", - "10 घण्टा पहिले", - "11 घण्टा पहिले", - "13 घण्टा पहिले", - "1 दिन पहिले", - "2 दिन पहिले", - "3 दिन पहिले", - "4 दिन पहिले", - "6 दिन पहिले", - "8 दिन पहिले", - "10 दिन पहिले", - "11 दिन पहिले", - "12 दिन पहिले", - "13 दिन पहिले", - "2 हप्ता पहिले", - "3 हप्ता पहिले", - "1 महिना पहिले", - "4 हप्ता पहिले", - "7 महिना पहिले", - "10 महिना पहिले", - "1 वर्ष अघि", - "2 वर्ष अघि", - "3 वर्ष अघि", - "4 वर्ष अघि", - "5 वर्ष अघि" - ], - "nl": [ - "35 min. geleden", - "50 min. geleden", - "1 uur geleden", - "2 uur geleden", - "3 uur geleden", - "4 uur geleden", - "5 uur geleden", - "6 uur geleden", - "7 uur geleden", - "8 uur geleden", - "9 uur geleden", - "12 uur geleden", - "17 uur geleden", - "18 uur geleden", - "19 uur geleden", - "20 uur geleden", - "10 uur geleden", - "11 uur geleden", - "13 uur geleden", - "1 dag geleden", - "2 dgn geleden", - "3 dgn geleden", - "4 dgn geleden", - "6 dgn geleden", - "8 dgn geleden", - "10 dgn geleden", - "11 dgn geleden", - "12 dgn geleden", - "13 dgn geleden", - "2 weken geleden", - "3 weken geleden", - "1 maand geleden", - "4 weken geleden", - "7 maanden geleden", - "10 maanden geleden", - "1 jaar geleden", - "2 jaar geleden", - "3 jaar geleden", - "4 jaar geleden", - "5 jaar geleden" - ], - "no": [ - "for 35 min siden", - "for 50 min siden", - "for 1 t siden", - "for 2 t siden", - "for 3 t siden", - "for 4 t siden", - "for 5 t siden", - "for 6 t siden", - "for 7 t siden", - "for 8 t siden", - "for 9 t siden", - "for 12 t siden", - "for 17 t siden", - "for 18 t siden", - "for 19 t siden", - "for 20 t siden", - "for 10 t siden", - "for 11 t siden", - "for 13 t siden", - "for 1 d. siden", - "for 2 d. siden", - "for 3 d. siden", - "for 4 d. siden", - "for 6 d. siden", - "for 8 d. siden", - "for 10 d. siden", - "for 11 d. siden", - "for 12 d. siden", - "for 13 d. siden", - "for 2 u. siden", - "for 3 u. siden", - "for 1 md. siden", - "for 4 u. siden", - "for 7 md. siden", - "for 10 md. siden", - "for 1 år siden", - "for 2 år siden", - "for 3 år siden", - "for 4 år siden", - "for 5 år siden" - ], - "or": [ - "35 ମି. ପୂର୍ବେ", - "50 ମି. ପୂର୍ବେ", - "1 ଘ. ପୂର୍ବେ", - "2 ଘ. ପୂର୍ବେ", - "3 ଘ. ପୂର୍ବେ", - "4 ଘ. ପୂର୍ବେ", - "5 ଘ. ପୂର୍ବେ", - "6 ଘ. ପୂର୍ବେ", - "7 ଘ. ପୂର୍ବେ", - "8 ଘ. ପୂର୍ବେ", - "9 ଘ. ପୂର୍ବେ", - "12 ଘ. ପୂର୍ବେ", - "17 ଘ. ପୂର୍ବେ", - "18 ଘ. ପୂର୍ବେ", - "19 ଘ. ପୂର୍ବେ", - "20 ଘ. ପୂର୍ବେ", - "10 ଘ. ପୂର୍ବେ", - "11 ଘ. ପୂର୍ବେ", - "13 ଘ. ପୂର୍ବେ", - "1 ଦିନ ପୂର୍ବେ", - "2 ଦିନ ପୂର୍ବେ", - "3 ଦିନ ପୂର୍ବେ", - "4 ଦିନ ପୂର୍ବେ", - "6 ଦିନ ପୂର୍ବେ", - "8 ଦିନ ପୂର୍ବେ", - "10 ଦିନ ପୂର୍ବେ", - "11 ଦିନ ପୂର୍ବେ", - "12 ଦିନ ପୂର୍ବେ", - "13 ଦିନ ପୂର୍ବେ", - "2 ସପ୍ତା. ପୂର୍ବେ", - "3 ସପ୍ତା. ପୂର୍ବେ", - "1 ମା. ପୂର୍ବେ", - "4 ସପ୍ତା. ପୂର୍ବେ", - "7 ମା. ପୂର୍ବେ", - "10 ମା. ପୂର୍ବେ", - "1 ବ. ପୂର୍ବେ", - "2 ବ. ପୂର୍ବେ", - "3 ବ. ପୂର୍ବେ", - "4 ବ. ପୂର୍ବେ", - "5 ବ. ପୂର୍ବେ" - ], - "pa": [ - "35 ਮਿੰਟ ਪਹਿਲਾਂ", - "50 ਮਿੰਟ ਪਹਿਲਾਂ", - "1 ਘੰਟਾ ਪਹਿਲਾਂ", - "2 ਘੰਟੇ ਪਹਿਲਾਂ", - "3 ਘੰਟੇ ਪਹਿਲਾਂ", - "4 ਘੰਟੇ ਪਹਿਲਾਂ", - "5 ਘੰਟੇ ਪਹਿਲਾਂ", - "6 ਘੰਟੇ ਪਹਿਲਾਂ", - "7 ਘੰਟੇ ਪਹਿਲਾਂ", - "8 ਘੰਟੇ ਪਹਿਲਾਂ", - "9 ਘੰਟੇ ਪਹਿਲਾਂ", - "12 ਘੰਟੇ ਪਹਿਲਾਂ", - "17 ਘੰਟੇ ਪਹਿਲਾਂ", - "18 ਘੰਟੇ ਪਹਿਲਾਂ", - "19 ਘੰਟੇ ਪਹਿਲਾਂ", - "20 ਘੰਟੇ ਪਹਿਲਾਂ", - "10 ਘੰਟੇ ਪਹਿਲਾਂ", - "11 ਘੰਟੇ ਪਹਿਲਾਂ", - "13 ਘੰਟੇ ਪਹਿਲਾਂ", - "1 ਦਿਨ ਪਹਿਲਾਂ", - "2 ਦਿਨ ਪਹਿਲਾਂ", - "3 ਦਿਨ ਪਹਿਲਾਂ", - "4 ਦਿਨ ਪਹਿਲਾਂ", - "6 ਦਿਨ ਪਹਿਲਾਂ", - "8 ਦਿਨ ਪਹਿਲਾਂ", - "10 ਦਿਨ ਪਹਿਲਾਂ", - "11 ਦਿਨ ਪਹਿਲਾਂ", - "12 ਦਿਨ ਪਹਿਲਾਂ", - "13 ਦਿਨ ਪਹਿਲਾਂ", - "2 ਹਫ਼ਤੇ ਪਹਿਲਾਂ", - "3 ਹਫ਼ਤੇ ਪਹਿਲਾਂ", - "1 ਮਹੀਨਾ ਪਹਿਲਾਂ", - "4 ਹਫ਼ਤੇ ਪਹਿਲਾਂ", - "7 ਮਹੀਨੇ ਪਹਿਲਾਂ", - "10 ਮਹੀਨੇ ਪਹਿਲਾਂ", - "1 ਸਾਲ ਪਹਿਲਾਂ", - "2 ਸਾਲ ਪਹਿਲਾਂ", - "3 ਸਾਲ ਪਹਿਲਾਂ", - "4 ਸਾਲ ਪਹਿਲਾਂ", - "5 ਸਾਲ ਪਹਿਲਾਂ" - ], - "pl": [ - "35 min temu", - "50 min temu", - "1 godz. temu", - "2 godz. temu", - "3 godz. temu", - "4 godz. temu", - "5 godz. temu", - "6 godz. temu", - "7 godz. temu", - "8 godz. temu", - "9 godz. temu", - "12 godz. temu", - "17 godz. temu", - "18 godz. temu", - "19 godz. temu", - "20 godz. temu", - "10 godz. temu", - "11 godz. temu", - "13 godz. temu", - "1 dzień temu", - "2 dni temu", - "3 dni temu", - "4 dni temu", - "6 dni temu", - "8 dni temu", - "10 dni temu", - "11 dni temu", - "12 dni temu", - "13 dni temu", - "2 tyg. temu", - "3 tyg. temu", - "1 mies. temu", - "4 tyg. temu", - "7 mies. temu", - "10 mies. temu", - "1 rok temu", - "2 lata temu", - "3 lata temu", - "4 lata temu", - "5 lat temu" - ], - "pt": [ - "há 35 min.", - "há 50 min.", - "há 1 h", - "há 2 h", - "há 3 h", - "há 4 h", - "há 5 h", - "há 6 h", - "há 7 h", - "há 8 h", - "há 9 h", - "há 12 h", - "há 17 h", - "há 18 h", - "há 19 h", - "há 20 h", - "há 10 h", - "há 11 h", - "há 13 h", - "há 1 dia", - "há 2 dias", - "há 3 dias", - "há 4 dias", - "há 6 dias", - "há 8 dias", - "há 10 dias", - "há 11 dias", - "há 12 dias", - "há 13 dias", - "há 2 sem.", - "há 3 sem.", - "há 1 mês", - "há 4 sem.", - "há 7 meses", - "há 10 meses", - "há 1 ano", - "há 2 anos", - "há 3 anos", - "há 4 anos", - "há 5 anos" - ], - "pt-PT": [ - "há 35 min", - "há 50 min", - "há 1 h", - "há 2 h", - "há 3 h", - "há 4 h", - "há 5 h", - "há 6 h", - "há 7 h", - "há 8 h", - "há 9 h", - "há 12 h", - "há 17 h", - "há 18 h", - "há 19 h", - "há 20 h", - "há 10 h", - "há 11 h", - "há 13 h", - "há 1 dia", - "há 2 dias", - "há 3 dias", - "há 4 dias", - "há 6 dias", - "há 8 dias", - "há 10 dias", - "há 11 dias", - "há 12 dias", - "há 13 dias", - "há 2 sem.", - "há 3 sem.", - "há 1 mês", - "há 4 sem.", - "há 7 meses", - "há 10 meses", - "há 1 ano", - "há 2 anos", - "há 3 anos", - "há 4 anos", - "há 5 anos" - ], - "ro": [ - "acum 35 min.", - "acum 50 min.", - "acum 1 h", - "acum 2 h", - "acum 3 h", - "acum 4 h", - "acum 5 h", - "acum 6 h", - "acum 7 h", - "acum 8 h", - "acum 9 h", - "acum 12 h", - "acum 17 h", - "acum 18 h", - "acum 19 h", - "acum 20 h", - "acum 10 h", - "acum 11 h", - "acum 13 h", - "acum 1 zi", - "acum 2 zile", - "acum 3 zile", - "acum 4 zile", - "acum 6 zile", - "acum 8 zile", - "acum 10 zile", - "acum 11 zile", - "acum 12 zile", - "acum 13 zile", - "acum 2 săpt.", - "acum 3 săpt.", - "acum 1 lună", - "acum 4 săpt.", - "acum 7 luni", - "acum 10 luni", - "acum 1 an", - "acum 2 ani", - "acum 3 ani", - "acum 4 ani", - "acum 5 ani" - ], - "ru": [ - "35 мин. назад", - "50 мин. назад", - "1 ч назад", - "2 ч назад", - "3 ч назад", - "4 ч назад", - "5 ч назад", - "6 ч назад", - "7 ч назад", - "8 ч назад", - "9 ч назад", - "12 ч назад", - "17 ч назад", - "18 ч назад", - "19 ч назад", - "20 ч назад", - "10 ч назад", - "11 ч назад", - "13 ч назад", - "1 дн. назад", - "2 дн. назад", - "3 дн. назад", - "4 дн. назад", - "6 дн. назад", - "8 дн. назад", - "10 дн. назад", - "11 дн. назад", - "12 дн. назад", - "13 дн. назад", - "2 нед. назад", - "3 нед. назад", - "1 мес. назад", - "4 нед. назад", - "7 мес. назад", - "10 мес. назад", - "1 г. назад", - "2 г. назад", - "3 г. назад", - "4 г. назад", - "5 л. назад" - ], - "si": [ - "මිනිත්තු 35කට පෙර", - "මිනිත්තු 50කට පෙර", - "පැය 1කට පෙර", - "පැය 2කට පෙර", - "පැය 3කට පෙර", - "පැය 4කට පෙර", - "පැය 5කට පෙර", - "පැය 6කට පෙර", - "පැය 7කට පෙර", - "පැය 8කට පෙර", - "පැය 9කට පෙර", - "පැය 12කට පෙර", - "පැය 17කට පෙර", - "පැය 18කට පෙර", - "පැය 19කට පෙර", - "පැය 20කට පෙර", - "පැය 10කට පෙර", - "පැය 11කට පෙර", - "පැය 13කට පෙර", - "දින 1කට පෙර", - "දින 2කට පෙර", - "දින 3කට පෙර", - "දින 4කට පෙර", - "දින 6කට පෙර", - "දින 8කට පෙර", - "දින 10කට පෙර", - "දින 11කට පෙර", - "දින 12කට පෙර", - "දින 13කට පෙර", - "සති 2කට පෙර", - "සති 3කට පෙර", - "මාස 1කට පෙර", - "සති 4කට පෙර", - "මාස 7කට පෙර", - "මාස 10කට පෙර", - "වසර 1කට පෙර", - "වසර 2කට පෙර", - "වසර 3කට පෙර", - "වසර 4කට පෙර", - "වසර 5කට පෙර" - ], - "sk": [ - "pred 35 min", - "pred 50 min", - "pred 1 h", - "pred 2 h", - "pred 3 h", - "pred 4 h", - "pred 5 h", - "pred 6 h", - "pred 7 h", - "pred 8 h", - "pred 9 h", - "pred 12 h", - "pred 17 h", - "pred 18 h", - "pred 19 h", - "pred 20 h", - "pred 10 h", - "pred 11 h", - "pred 13 h", - "pred 1 d.", - "pred 2 d.", - "pred 3 d.", - "pred 4 d.", - "pred 6 d.", - "pred 8 d.", - "pred 10 d.", - "pred 11 d.", - "pred 12 d.", - "pred 13 d.", - "pred 2 týž.", - "pred 3 týž.", - "pred 1 mes.", - "pred 4 týž.", - "pred 7 mes.", - "pred 10 mes.", - "pred 1 r.", - "pred 2 r.", - "pred 3 r.", - "pred 4 r.", - "pred 5 r." - ], - "sl": [ - "pred 35 min.", - "pred 50 min.", - "pred 1 uro", - "pred 2 urama", - "pred 3 urami", - "pred 4 urami", - "pred 5 urami", - "pred 6 urami", - "pred 7 urami", - "pred 8 urami", - "pred 9 urami", - "pred 12 urami", - "pred 17 urami", - "pred 18 urami", - "pred 19 urami", - "pred 20 urami", - "pred 10 urami", - "pred 11 urami", - "pred 13 urami", - "pred 1 dnevom", - "pred 2 dnevoma", - "pred 3 dnevi", - "pred 4 dnevi", - "pred 6 dnevi", - "pred 8 dnevi", - "pred 10 dnevi", - "pred 11 dnevi", - "pred 12 dnevi", - "pred 13 dnevi", - "pred 2 ted.", - "pred 3 ted.", - "pred 1 mes.", - "pred 4 ted.", - "pred 7 mes.", - "pred 10 mes.", - "pred 1 letom", - "pred 2 letoma", - "pred 3 leti", - "pred 4 leti", - "pred 5 leti" - ], - "sq": [ - "35 min më parë", - "50 min më parë", - "1 orë më parë", - "2 orë më parë", - "3 orë më parë", - "4 orë më parë", - "5 orë më parë", - "6 orë më parë", - "7 orë më parë", - "8 orë më parë", - "9 orë më parë", - "12 orë më parë", - "17 orë më parë", - "18 orë më parë", - "19 orë më parë", - "20 orë më parë", - "10 orë më parë", - "11 orë më parë", - "13 orë më parë", - "1 ditë më parë", - "2 ditë më parë", - "3 ditë më parë", - "4 ditë më parë", - "6 ditë më parë", - "8 ditë më parë", - "10 ditë më parë", - "11 ditë më parë", - "12 ditë më parë", - "13 ditë më parë", - "2 javë më parë", - "3 javë më parë", - "1 muaj më parë", - "4 javë më parë", - "7 muaj më parë", - "10 muaj më parë", - "1 vit më parë", - "2 vjet më parë", - "3 vjet më parë", - "4 vjet më parë", - "5 vjet më parë" - ], - "sr": [ - "пре 35 мин.", - "пре 50 мин.", - "пре 1 ч.", - "пре 2 ч.", - "пре 3 ч.", - "пре 4 ч.", - "пре 5 ч.", - "пре 6 ч.", - "пре 7 ч.", - "пре 8 ч.", - "пре 9 ч.", - "пре 12 ч.", - "пре 17 ч.", - "пре 18 ч.", - "пре 19 ч.", - "пре 20 ч.", - "пре 10 ч.", - "пре 11 ч.", - "пре 13 ч.", - "пре 1 д.", - "пре 2 д.", - "пре 3 д.", - "пре 4 д.", - "пре 6 д.", - "пре 8 д.", - "пре 10 д.", - "пре 11 д.", - "пре 12 д.", - "пре 13 д.", - "пре 2 нед.", - "пре 3 нед.", - "пре 1 мес.", - "пре 4 нед.", - "пре 7 мес.", - "пре 10 мес.", - "пре 1 год.", - "пре 2 год.", - "пре 3 год.", - "пре 4 год.", - "пре 5 год." - ], - "sr-Latn": [ - "pre 35 min.", - "pre 50 min.", - "pre 1 č.", - "pre 2 č.", - "pre 3 č.", - "pre 4 č.", - "pre 5 č.", - "pre 6 č.", - "pre 7 č.", - "pre 8 č.", - "pre 9 č.", - "pre 12 č.", - "pre 17 č.", - "pre 18 č.", - "pre 19 č.", - "pre 20 č.", - "pre 10 č.", - "pre 11 č.", - "pre 13 č.", - "pre 1 d.", - "pre 2 d.", - "pre 3 d.", - "pre 4 d.", - "pre 6 d.", - "pre 8 d.", - "pre 10 d.", - "pre 11 d.", - "pre 12 d.", - "pre 13 d.", - "pre 2 ned.", - "pre 3 ned.", - "pre 1 mes.", - "pre 4 ned.", - "pre 7 mes.", - "pre 10 mes.", - "pre 1 god.", - "pre 2 god.", - "pre 3 god.", - "pre 4 god.", - "pre 5 god." - ], - "sv": [ - "för 35 min sen", - "för 50 min sen", - "för 1 tim sedan", - "för 2 tim sedan", - "för 3 tim sedan", - "för 4 tim sedan", - "för 5 tim sedan", - "för 6 tim sedan", - "för 7 tim sedan", - "för 8 tim sedan", - "för 9 tim sedan", - "för 12 tim sedan", - "för 17 tim sedan", - "för 18 tim sedan", - "för 19 tim sedan", - "för 20 tim sedan", - "för 10 tim sedan", - "för 11 tim sedan", - "för 13 tim sedan", - "för 1 d sedan", - "för 2 d sedan", - "för 3 d sedan", - "för 4 d sedan", - "för 6 d sedan", - "för 8 d sedan", - "för 10 d sedan", - "för 11 d sedan", - "för 12 d sedan", - "för 13 d sedan", - "för 2 v. sedan", - "för 3 v. sedan", - "för 1 mån. sen", - "för 4 v. sedan", - "för 7 mån. sen", - "för 10 mån. sen", - "för 1 år sen", - "för 2 år sen", - "för 3 år sen", - "för 4 år sen", - "för 5 år sen" - ], - "sw": [ - "dakika 35 zilizopita", - "dakika 50 zilizopita", - "saa 1 iliyopita", - "saa 2 zilizopita", - "saa 3 zilizopita", - "saa 4 zilizopita", - "saa 5 zilizopita", - "saa 6 zilizopita", - "saa 7 zilizopita", - "saa 8 zilizopita", - "saa 9 zilizopita", - "saa 12 zilizopita", - "saa 17 zilizopita", - "saa 18 zilizopita", - "saa 19 zilizopita", - "saa 20 zilizopita", - "saa 10 zilizopita", - "saa 11 zilizopita", - "saa 13 zilizopita", - "siku 1 iliyopita", - "siku 2 zilizopita", - "siku 3 zilizopita", - "siku 4 zilizopita", - "siku 6 zilizopita", - "siku 8 zilizopita", - "siku 10 zilizopita", - "siku 11 zilizopita", - "siku 12 zilizopita", - "siku 13 zilizopita", - "wiki 2 zilizopita", - "wiki 3 zilizopita", - "mwezi 1 uliopita", - "wiki 4 zilizopita", - "miezi 7 iliyopita", - "miezi 10 iliyopita", - "mwaka 1 uliopita", - "miaka 2 iliyopita", - "miaka 3 iliyopita", - "miaka 4 iliyopita", - "miaka 5 iliyopita" - ], - "ta": [ - "35 நிமி. முன்", - "50 நிமி. முன்", - "1 மணி. முன்", - "2 மணி. முன்", - "3 மணி. முன்", - "4 மணி. முன்", - "5 மணி. முன்", - "6 மணி. முன்", - "7 மணி. முன்", - "8 மணி. முன்", - "9 மணி. முன்", - "12 மணி. முன்", - "17 மணி. முன்", - "18 மணி. முன்", - "19 மணி. முன்", - "20 மணி. முன்", - "10 மணி. முன்", - "11 மணி. முன்", - "13 மணி. முன்", - "1 நாளுக்கு முன்", - "2 நாட்களுக்கு முன்", - "3 நாட்களுக்கு முன்", - "4 நாட்களுக்கு முன்", - "6 நாட்களுக்கு முன்", - "8 நாட்களுக்கு முன்", - "10 நாட்களுக்கு முன்", - "11 நாட்களுக்கு முன்", - "12 நாட்களுக்கு முன்", - "13 நாட்களுக்கு முன்", - "2 வார. முன்", - "3 வார. முன்", - "1 மாத. முன்", - "4 வார. முன்", - "7 மாத. முன்", - "10 மாத. முன்", - "1 ஆண்டிற்கு முன்", - "2 ஆண்டுகளுக்கு முன்", - "3 ஆண்டுகளுக்கு முன்", - "4 ஆண்டுகளுக்கு முன்", - "5 ஆண்டுகளுக்கு முன்" - ], - "te": [ - "35 నిమి. క్రితం", - "50 నిమి. క్రితం", - "1 గం. క్రితం", - "2 గం. క్రితం", - "3 గం. క్రితం", - "4 గం. క్రితం", - "5 గం. క్రితం", - "6 గం. క్రితం", - "7 గం. క్రితం", - "8 గం. క్రితం", - "9 గం. క్రితం", - "12 గం. క్రితం", - "17 గం. క్రితం", - "18 గం. క్రితం", - "19 గం. క్రితం", - "20 గం. క్రితం", - "10 గం. క్రితం", - "11 గం. క్రితం", - "13 గం. క్రితం", - "1 రోజు క్రితం", - "2 రోజుల క్రితం", - "3 రోజుల క్రితం", - "4 రోజుల క్రితం", - "6 రోజుల క్రితం", - "8 రోజుల క్రితం", - "10 రోజుల క్రితం", - "11 రోజుల క్రితం", - "12 రోజుల క్రితం", - "13 రోజుల క్రితం", - "2 వారాల క్రితం", - "3 వారాల క్రితం", - "1 నెల క్రితం", - "4 వారాల క్రితం", - "7 నెలల క్రితం", - "10 నెలల క్రితం", - "1 సం. క్రితం", - "2 సం. క్రితం", - "3 సం. క్రితం", - "4 సం. క్రితం", - "5 సం. క్రితం" - ], - "th": [ - "35 นาทีที่แล้ว", - "50 นาทีที่แล้ว", - "1 ชม. ที่แล้ว", - "2 ชม. ที่แล้ว", - "3 ชม. ที่แล้ว", - "4 ชม. ที่แล้ว", - "5 ชม. ที่แล้ว", - "6 ชม. ที่แล้ว", - "7 ชม. ที่แล้ว", - "8 ชม. ที่แล้ว", - "9 ชม. ที่แล้ว", - "12 ชม. ที่แล้ว", - "17 ชม. ที่แล้ว", - "18 ชม. ที่แล้ว", - "19 ชม. ที่แล้ว", - "20 ชม. ที่แล้ว", - "10 ชม. ที่แล้ว", - "11 ชม. ที่แล้ว", - "13 ชม. ที่แล้ว", - "1 วันที่แล้ว", - "2 วันที่แล้ว", - "3 วันที่แล้ว", - "4 วันที่แล้ว", - "6 วันที่แล้ว", - "8 วันที่แล้ว", - "10 วันที่แล้ว", - "11 วันที่แล้ว", - "12 วันที่แล้ว", - "13 วันที่แล้ว", - "2 สัปดาห์ที่แล้ว", - "3 สัปดาห์ที่แล้ว", - "1 เดือนที่แล้ว", - "4 สัปดาห์ที่แล้ว", - "7 เดือนที่แล้ว", - "10 เดือนที่แล้ว", - "1 ปีที่แล้ว", - "2 ปีที่แล้ว", - "3 ปีที่แล้ว", - "4 ปีที่แล้ว", - "5 ปีที่แล้ว" - ], - "tr": [ - "35 dk. önce", - "50 dk. önce", - "1 sa. önce", - "2 sa. önce", - "3 sa. önce", - "4 sa. önce", - "5 sa. önce", - "6 sa. önce", - "7 sa. önce", - "8 sa. önce", - "9 sa. önce", - "12 sa. önce", - "17 sa. önce", - "18 sa. önce", - "19 sa. önce", - "20 sa. önce", - "10 sa. önce", - "11 sa. önce", - "13 sa. önce", - "1 gün önce", - "2 gün önce", - "3 gün önce", - "4 gün önce", - "6 gün önce", - "8 gün önce", - "10 gün önce", - "11 gün önce", - "12 gün önce", - "13 gün önce", - "2 hf. önce", - "3 hf. önce", - "1 ay önce", - "4 hf. önce", - "7 ay önce", - "10 ay önce", - "1 yıl önce", - "2 yıl önce", - "3 yıl önce", - "4 yıl önce", - "5 yıl önce" - ], - "uk": [ - "35 хв тому", - "50 хв тому", - "1 год тому", - "2 год тому", - "3 год тому", - "4 год тому", - "5 год тому", - "6 год тому", - "7 год тому", - "8 год тому", - "9 год тому", - "12 год тому", - "17 год тому", - "18 год тому", - "19 год тому", - "20 год тому", - "10 год тому", - "11 год тому", - "13 год тому", - "1 дн. тому", - "2 дн. тому", - "3 дн. тому", - "4 дн. тому", - "6 дн. тому", - "8 дн. тому", - "10 дн. тому", - "11 дн. тому", - "12 дн. тому", - "13 дн. тому", - "2 тиж. тому", - "3 тиж. тому", - "1 міс. тому", - "4 тиж. тому", - "7 міс. тому", - "10 міс. тому", - "1 р. тому", - "2 р. тому", - "3 р. тому", - "4 р. тому", - "5 р. тому" - ], - "ur": [ - "35 منٹ پہلے", - "50 منٹ پہلے", - "1 گھنٹے پہلے", - "2 گھنٹے پہلے", - "3 گھنٹے پہلے", - "4 گھنٹے پہلے", - "5 گھنٹے پہلے", - "6 گھنٹے پہلے", - "7 گھنٹے پہلے", - "8 گھنٹے پہلے", - "9 گھنٹے پہلے", - "12 گھنٹے پہلے", - "17 گھنٹے پہلے", - "18 گھنٹے پہلے", - "19 گھنٹے پہلے", - "20 گھنٹے پہلے", - "10 گھنٹے پہلے", - "11 گھنٹے پہلے", - "13 گھنٹے پہلے", - "1 دن پہلے", - "2 دن پہلے", - "3 دن پہلے", - "4 دن پہلے", - "6 دن پہلے", - "8 دن پہلے", - "10 دن پہلے", - "11 دن پہلے", - "12 دن پہلے", - "13 دن پہلے", - "2 ہفتے پہلے", - "3 ہفتے پہلے", - "1 ماہ قبل", - "4 ہفتے پہلے", - "7 ماہ قبل", - "10 ماہ قبل", - "1 سال پہلے", - "2 سال پہلے", - "3 سال پہلے", - "4 سال پہلے", - "5 سال پہلے" - ], - "uz": [ - "35 daqiqa oldin", - "50 daqiqa oldin", - "1 soat oldin", - "2 soat oldin", - "3 soat oldin", - "4 soat oldin", - "5 soat oldin", - "6 soat oldin", - "7 soat oldin", - "8 soat oldin", - "9 soat oldin", - "12 soat oldin", - "17 soat oldin", - "18 soat oldin", - "19 soat oldin", - "20 soat oldin", - "10 soat oldin", - "11 soat oldin", - "13 soat oldin", - "1 kun oldin", - "2 kun oldin", - "3 kun oldin", - "4 kun oldin", - "6 kun oldin", - "8 kun oldin", - "10 kun oldin", - "11 kun oldin", - "12 kun oldin", - "13 kun oldin", - "2 hafta oldin", - "3 hafta oldin", - "1 oy oldin", - "4 hafta oldin", - "7 oy oldin", - "10 oy oldin", - "1 yil oldin", - "2 yil oldin", - "3 yil oldin", - "4 yil oldin", - "5 yil oldin" - ], - "vi": [ - "35 phút trước", - "50 phút trước", - "1 giờ trước", - "2 giờ trước", - "3 giờ trước", - "4 giờ trước", - "5 giờ trước", - "6 giờ trước", - "7 giờ trước", - "8 giờ trước", - "9 giờ trước", - "12 giờ trước", - "17 giờ trước", - "18 giờ trước", - "19 giờ trước", - "20 giờ trước", - "10 giờ trước", - "11 giờ trước", - "13 giờ trước", - "1 ngày trước", - "2 ngày trước", - "3 ngày trước", - "4 ngày trước", - "6 ngày trước", - "8 ngày trước", - "10 ngày trước", - "11 ngày trước", - "12 ngày trước", - "13 ngày trước", - "2 tuần trước", - "3 tuần trước", - "1 tháng trước", - "4 tuần trước", - "7 tháng trước", - "10 tháng trước", - "1 năm trước", - "2 năm trước", - "3 năm trước", - "4 năm trước", - "5 năm trước" - ], - "zh-CN": [ - "35分钟前", - "50分钟前", - "1小时前", - "2小时前", - "3小时前", - "4小时前", - "5小时前", - "6小时前", - "7小时前", - "8小时前", - "9小时前", - "12小时前", - "17小时前", - "18小时前", - "19小时前", - "20小时前", - "10小时前", - "11小时前", - "13小时前", - "1天前", - "2天前", - "3天前", - "4天前", - "6天前", - "8天前", - "10天前", - "11天前", - "12天前", - "13天前", - "2周前", - "3周前", - "1个月前", - "4周前", - "7个月前", - "10个月前", - "1年前", - "2年前", - "3年前", - "4年前", - "5年前" - ], - "zh-HK": [ - "35 分鐘前", - "50 分鐘前", - "1 小時前", - "2 小時前", - "3 小時前", - "4 小時前", - "5 小時前", - "6 小時前", - "7 小時前", - "8 小時前", - "9 小時前", - "12 小時前", - "17 小時前", - "18 小時前", - "19 小時前", - "20 小時前", - "10 小時前", - "11 小時前", - "13 小時前", - "1 日前", - "2 日前", - "3 日前", - "4 日前", - "6 日前", - "8 日前", - "10 日前", - "11 日前", - "12 日前", - "13 日前", - "2 星期前", - "3 星期前", - "1 個月前", - "4 星期前", - "7 個月前", - "10 個月前", - "1 年前", - "2 年前", - "3 年前", - "4 年前", - "5 年前" - ], - "zh-TW": [ - "35 分鐘前", - "50 分鐘前", - "1 小時前", - "2 小時前", - "3 小時前", - "4 小時前", - "5 小時前", - "6 小時前", - "7 小時前", - "8 小時前", - "9 小時前", - "12 小時前", - "17 小時前", - "18 小時前", - "19 小時前", - "20 小時前", - "10 小時前", - "11 小時前", - "13 小時前", - "1 天前", - "2 天前", - "3 天前", - "4 天前", - "6 天前", - "8 天前", - "10 天前", - "11 天前", - "12 天前", - "13 天前", - "2 週前", - "3 週前", - "1 個月前", - "4 週前", - "7 個月前", - "10 個月前", - "1 年前", - "2 年前", - "3 年前", - "4 年前", - "5 年前" - ], - "zu": [ - "35 amaminithi edlule", - "50 amaminithi edlule", - "1 ihora eledlule", - "emahoreni angu-2 edlule", - "emahoreni angu-3 edlule", - "emahoreni angu-4 edlule", - "emahoreni angu-5 edlule", - "emahoreni angu-6 edlule", - "emahoreni angu-7 edlule", - "emahoreni angu-8 edlule", - "emahoreni angu-9 edlule", - "emahoreni angu-12 edlule", - "emahoreni angu-17 edlule", - "emahoreni angu-18 edlule", - "emahoreni angu-19 edlule", - "emahoreni angu-20 edlule", - "emahoreni angu-10 edlule", - "emahoreni angu-11 edlule", - "emahoreni angu-13 edlule", - "1 usuku olwedlule", - "2 izinsuku ezedlule", - "3 izinsuku ezedlule", - "4 izinsuku ezedlule", - "6 izinsuku ezedlule", - "8 izinsuku ezedlule", - "10 izinsuku ezedlule", - "11 izinsuku ezedlule", - "12 izinsuku ezedlule", - "13 izinsuku ezedlule", - "amaviki angu-2 edlule", - "amaviki angu-3 edlule", - "1 izinyanga ezedlule", - "amaviki angu-4 edlule", - "7 izinyanga ezedlule", - "10 izinyanga ezedlule", - "1 unyaka odlule", - "2 unyaka odlule", - "3 unyaka odlule", - "4 unyaka odlule", - "5 unyaka odlule" - ] -} diff --git a/tests/youtube.rs b/tests/youtube.rs index 3aacb2f..bd5e1e3 100644 --- a/tests/youtube.rs +++ b/tests/youtube.rs @@ -2336,12 +2336,7 @@ fn lang() -> Language { /// Get a new RustyPipe instance #[fixture] fn rp(lang: Language) -> RustyPipe { - let vdata = std::env::var("YT_VDATA").ok(); - RustyPipe::builder() - .strict() - .lang(lang) - .visitor_data_opt(vdata) - .build() + RustyPipe::builder().strict().lang(lang).build() } /// Get a flag signaling if the language is set to English