about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/build-image.yml5
-rw-r--r--Gemfile2
-rw-r--r--Gemfile.lock18
-rw-r--r--app/controllers/api/v1/admin/accounts_controller.rb16
-rw-r--r--app/controllers/api/v2/admin/accounts_controller.rb31
-rw-r--r--app/javascript/mastodon/locales/cs.json46
-rw-r--r--app/javascript/mastodon/locales/fa.json4
-rw-r--r--app/javascript/mastodon/locales/fr.json4
-rw-r--r--app/javascript/mastodon/locales/gd.json8
-rw-r--r--app/javascript/mastodon/locales/pt-BR.json40
-rw-r--r--app/javascript/mastodon/locales/sq.json8
-rw-r--r--app/javascript/mastodon/locales/th.json4
-rw-r--r--app/javascript/mastodon/locales/uk.json10
-rw-r--r--app/javascript/styles/mastodon/components.scss74
-rw-r--r--app/models/account_filter.rb4
-rw-r--r--app/services/notify_service.rb40
-rw-r--r--config/deploy.rb2
-rw-r--r--config/locales/activerecord.ku.yml2
-rw-r--r--config/locales/ar.yml3
-rw-r--r--config/locales/ca.yml17
-rw-r--r--config/locales/cs.yml35
-rw-r--r--config/locales/da.yml19
-rw-r--r--config/locales/de.yml16
-rw-r--r--config/locales/devise.ku.yml26
-rw-r--r--config/locales/devise.th.yml2
-rw-r--r--config/locales/doorkeeper.fa.yml31
-rw-r--r--config/locales/doorkeeper.gd.yml37
-rw-r--r--config/locales/doorkeeper.ku.yml4
-rw-r--r--config/locales/doorkeeper.pt-BR.yml1
-rw-r--r--config/locales/doorkeeper.uk.yml15
-rw-r--r--config/locales/es-AR.yml17
-rw-r--r--config/locales/es-MX.yml22
-rw-r--r--config/locales/es.yml11
-rw-r--r--config/locales/eu.yml8
-rw-r--r--config/locales/fa.yml123
-rw-r--r--config/locales/fi.yml16
-rw-r--r--config/locales/fr.yml24
-rw-r--r--config/locales/gd.yml117
-rw-r--r--config/locales/gl.yml21
-rw-r--r--config/locales/he.yml11
-rw-r--r--config/locales/hu.yml13
-rw-r--r--config/locales/id.yml21
-rw-r--r--config/locales/is.yml9
-rw-r--r--config/locales/it.yml9
-rw-r--r--config/locales/ja.yml4
-rw-r--r--config/locales/ko.yml13
-rw-r--r--config/locales/ku.yml51
-rw-r--r--config/locales/lv.yml21
-rw-r--r--config/locales/pl.yml9
-rw-r--r--config/locales/pt-BR.yml1
-rw-r--r--config/locales/pt-PT.yml21
-rw-r--r--config/locales/ru.yml29
-rw-r--r--config/locales/simple_form.cs.yml1
-rw-r--r--config/locales/simple_form.fa.yml34
-rw-r--r--config/locales/simple_form.gd.yml9
-rw-r--r--config/locales/simple_form.ku.yml36
-rw-r--r--config/locales/simple_form.th.yml2
-rw-r--r--config/locales/sq.yml24
-rw-r--r--config/locales/sv.yml4
-rw-r--r--config/locales/th.yml23
-rw-r--r--config/locales/tr.yml16
-rw-r--r--config/locales/uk.yml18
-rw-r--r--config/locales/vi.yml74
-rw-r--r--config/locales/zh-CN.yml16
-rw-r--r--config/locales/zh-TW.yml15
-rw-r--r--config/routes.rb4
-rw-r--r--package.json8
-rw-r--r--spec/controllers/api/v1/admin/accounts_controller_spec.rb35
-rw-r--r--spec/controllers/api/v2/admin/accounts_controller_spec.rb73
-rw-r--r--yarn.lock36
70 files changed, 900 insertions, 623 deletions
diff --git a/.github/workflows/build-image.yml b/.github/workflows/build-image.yml
index 880fdfac9..b3a8d5105 100644
--- a/.github/workflows/build-image.yml
+++ b/.github/workflows/build-image.yml
@@ -13,6 +13,9 @@ on:
 jobs:
   build-image:
     runs-on: ubuntu-latest
+    strategy:
+      matrix:
+        os: [linux/arm64, linux/amd64]
     steps:
       - uses: actions/checkout@v2
       - uses: docker/setup-qemu-action@v1
@@ -36,7 +39,7 @@ jobs:
       - uses: docker/build-push-action@v2
         with:
           context: .
-          platforms: linux/amd64,linux/arm64
+          platforms: ${{ matrix.os }}
           push: ${{ github.event_name != 'pull_request' }}
           tags: ${{ steps.meta.outputs.tags }}
           cache-from: type=registry,ref=ghcr.io/${{ github.repository_owner }}/mastodon:latest
diff --git a/Gemfile b/Gemfile
index 8bb361f49..4c8cd2f5a 100644
--- a/Gemfile
+++ b/Gemfile
@@ -139,7 +139,7 @@ group :development do
   gem 'brakeman', '~> 5.2', require: false
   gem 'bundler-audit', '~> 0.9', require: false
 
-  gem 'capistrano', '~> 3.16'
+  gem 'capistrano', '~> 3.17'
   gem 'capistrano-rails', '~> 1.6'
   gem 'capistrano-rbenv', '~> 2.2'
   gem 'capistrano-yarn', '~> 2.0'
diff --git a/Gemfile.lock b/Gemfile.lock
index 88ac007d5..e784b81cf 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -96,7 +96,7 @@ GEM
       aws-sigv4 (~> 1.4)
     aws-sigv4 (1.4.0)
       aws-eventstream (~> 1, >= 1.0.2)
-    bcrypt (3.1.16)
+    bcrypt (3.1.17)
     better_errors (2.9.1)
       coderay (>= 1.0.0)
       erubi (>= 1.0.0)
@@ -121,7 +121,7 @@ GEM
       bundler (>= 1.2.0, < 3)
       thor (~> 1.0)
     byebug (11.1.3)
-    capistrano (3.16.0)
+    capistrano (3.17.0)
       airbrussh (>= 1.0.0)
       i18n
       rake (>= 10.0.0)
@@ -157,7 +157,7 @@ GEM
     climate_control (0.2.0)
     coderay (1.1.3)
     color_diff (0.1)
-    concurrent-ruby (1.1.9)
+    concurrent-ruby (1.1.10)
     connection_pool (2.2.5)
     cose (1.0.0)
       cbor (~> 0.5.9)
@@ -174,11 +174,11 @@ GEM
       railties (>= 4.1.0)
       responders
       warden (~> 1.2.3)
-    devise-two-factor (4.0.1)
-      activesupport (< 6.2)
+    devise-two-factor (4.0.2)
+      activesupport (< 7.1)
       attr_encrypted (>= 1.3, < 4, != 2)
       devise (~> 4.0)
-      railties (< 6.2)
+      railties (< 7.1)
       rotp (~> 6.0)
     devise_pam_authenticatable2 (9.2.0)
       devise (>= 4.0.0)
@@ -433,7 +433,7 @@ GEM
     openssl-signature_algorithm (0.4.0)
     orm_adapter (0.5.0)
     ox (2.14.10)
-    parallel (1.22.0)
+    parallel (1.22.1)
     parser (3.1.1.0)
       ast (~> 2.4.1)
     parslet (2.0.0)
@@ -562,7 +562,7 @@ GEM
     rspec-support (3.11.0)
     rspec_junit_formatter (0.5.1)
       rspec-core (>= 2, < 4, != 2.12.0)
-    rubocop (1.26.0)
+    rubocop (1.26.1)
       parallel (~> 1.10)
       parser (>= 3.1.0.0)
       rainbow (>= 2.2.2, < 4.0)
@@ -735,7 +735,7 @@ DEPENDENCIES
   browser
   bullet (~> 7.0)
   bundler-audit (~> 0.9)
-  capistrano (~> 3.16)
+  capistrano (~> 3.17)
   capistrano-rails (~> 1.6)
   capistrano-rbenv (~> 2.2)
   capistrano-yarn (~> 2.0)
diff --git a/app/controllers/api/v1/admin/accounts_controller.rb b/app/controllers/api/v1/admin/accounts_controller.rb
index 65330b8c8..4b6dab208 100644
--- a/app/controllers/api/v1/admin/accounts_controller.rb
+++ b/app/controllers/api/v1/admin/accounts_controller.rb
@@ -104,13 +104,27 @@ class Api::V1::Admin::AccountsController < Api::BaseController
   end
 
   def filtered_accounts
-    AccountFilter.new(filter_params).results
+    AccountFilter.new(translated_filter_params).results
   end
 
   def filter_params
     params.permit(*FILTER_PARAMS)
   end
 
+  def translated_filter_params
+    translated_params = { origin: 'local', status: 'active' }.merge(filter_params.slice(*AccountFilter::KEYS))
+
+    translated_params[:origin] = 'remote' if params[:remote].present?
+
+    %i(active pending disabled silenced suspended).each do |status|
+      translated_params[:status] = status.to_s if params[status].present?
+    end
+
+    translated_params[:permissions] = 'staff' if params[:staff].present?
+
+    translated_params
+  end
+
   def insert_pagination_headers
     set_pagination_headers(next_path, prev_path)
   end
diff --git a/app/controllers/api/v2/admin/accounts_controller.rb b/app/controllers/api/v2/admin/accounts_controller.rb
new file mode 100644
index 000000000..a89e6835e
--- /dev/null
+++ b/app/controllers/api/v2/admin/accounts_controller.rb
@@ -0,0 +1,31 @@
+# frozen_string_literal: true
+
+class Api::V2::Admin::AccountsController < Api::V1::Admin::AccountsController
+  FILTER_PARAMS = %i(
+    origin
+    status
+    permissions
+    username
+    by_domain
+    display_name
+    email
+    ip
+    invited_by
+  ).freeze
+
+  PAGINATION_PARAMS = (%i(limit) + FILTER_PARAMS).freeze
+
+  private
+
+  def filtered_accounts
+    AccountFilter.new(filter_params).results
+  end
+
+  def filter_params
+    params.permit(*FILTER_PARAMS)
+  end
+
+  def pagination_params(core_params)
+    params.slice(*PAGINATION_PARAMS).permit(*PAGINATION_PARAMS).merge(core_params)
+  end
+end
diff --git a/app/javascript/mastodon/locales/cs.json b/app/javascript/mastodon/locales/cs.json
index d48780042..c6ffaa6f2 100644
--- a/app/javascript/mastodon/locales/cs.json
+++ b/app/javascript/mastodon/locales/cs.json
@@ -75,7 +75,7 @@
   "column.domain_blocks": "Blokované domény",
   "column.favourites": "Oblíbené",
   "column.follow_requests": "Žádosti o sledování",
-  "column.home": "Domů",
+  "column.home": "Domovská časová osa",
   "column.lists": "Seznamy",
   "column.mutes": "Skrytí uživatelé",
   "column.notifications": "Oznámení",
@@ -294,7 +294,7 @@
   "navigation_bar.discover": "Objevujte",
   "navigation_bar.domain_blocks": "Blokované domény",
   "navigation_bar.edit_profile": "Upravit profil",
-  "navigation_bar.explore": "Explore",
+  "navigation_bar.explore": "Objevování",
   "navigation_bar.favourites": "Oblíbené",
   "navigation_bar.filters": "Skrytá slova",
   "navigation_bar.follow_requests": "Žádosti o sledování",
@@ -318,7 +318,7 @@
   "notification.poll": "Anketa, ve které jste hlasovali, skončila",
   "notification.reblog": "Uživatel {name} boostnul váš příspěvek",
   "notification.status": "Nový příspěvek od {name}",
-  "notification.update": "{name} edited a post",
+  "notification.update": "uživatel {name} upravil příspěvek",
   "notifications.clear": "Smazat oznámení",
   "notifications.clear_confirmation": "Opravdu chcete trvale smazat všechna vaše oznámení?",
   "notifications.column_settings.admin.sign_up": "New sign-ups:",
@@ -338,7 +338,7 @@
   "notifications.column_settings.status": "Nové příspěvky:",
   "notifications.column_settings.unread_notifications.category": "Nepřečtená oznámení",
   "notifications.column_settings.unread_notifications.highlight": "Zvýraznit nepřečtená oznámení",
-  "notifications.column_settings.update": "Edits:",
+  "notifications.column_settings.update": "Úpravy:",
   "notifications.filter.all": "Vše",
   "notifications.filter.boosts": "Boosty",
   "notifications.filter.favourites": "Oblíbení",
@@ -380,7 +380,7 @@
   "relative_time.days": "{number} d",
   "relative_time.full.days": "{number, plural, one {# day} other {# days}} ago",
   "relative_time.full.hours": "{number, plural, one {# hour} other {# hours}} ago",
-  "relative_time.full.just_now": "just now",
+  "relative_time.full.just_now": "právě teď",
   "relative_time.full.minutes": "{number, plural, one {# minute} other {# minutes}} ago",
   "relative_time.full.seconds": "{number, plural, one {# second} other {# seconds}} ago",
   "relative_time.hours": "{number} h",
@@ -391,11 +391,11 @@
   "reply_indicator.cancel": "Zrušit",
   "report.block": "Block",
   "report.block_explanation": "You will not see their posts. They will not be able to see your posts or follow you. They will be able to tell that they are blocked.",
-  "report.categories.other": "Other",
+  "report.categories.other": "Ostatní",
   "report.categories.spam": "Spam",
-  "report.categories.violation": "Content violates one or more server rules",
-  "report.category.subtitle": "Choose the best match",
-  "report.category.title": "Tell us what's going on with this {type}",
+  "report.categories.violation": "Obsah porušuje jedno nebo více pravidel serveru",
+  "report.category.subtitle": "Vyberte nejbližší možnost",
+  "report.category.title": "Povězte nám, proč chcete {type} nahlásit",
   "report.category.title_account": "profile",
   "report.category.title_status": "post",
   "report.close": "Done",
@@ -404,20 +404,20 @@
   "report.forward_hint": "Tento účet je z jiného serveru. Chcete na něj také poslat anonymizovanou kopii hlášení?",
   "report.mute": "Mute",
   "report.mute_explanation": "You will not see their posts. They can still follow you and see your posts and will not know that they are muted.",
-  "report.next": "Next",
+  "report.next": "Dále",
   "report.placeholder": "Dodatečné komentáře",
-  "report.reasons.dislike": "I don't like it",
-  "report.reasons.dislike_description": "It is not something you want to see",
-  "report.reasons.other": "It's something else",
-  "report.reasons.other_description": "The issue does not fit into other categories",
-  "report.reasons.spam": "It's spam",
-  "report.reasons.spam_description": "Malicious links, fake engagement, or repetitive replies",
-  "report.reasons.violation": "It violates server rules",
-  "report.reasons.violation_description": "You are aware that it breaks specific rules",
-  "report.rules.subtitle": "Select all that apply",
-  "report.rules.title": "Which rules are being violated?",
-  "report.statuses.subtitle": "Select all that apply",
-  "report.statuses.title": "Are there any posts that back up this report?",
+  "report.reasons.dislike": "Nelíbí se mi",
+  "report.reasons.dislike_description": "Není to něco, co chcete vidět",
+  "report.reasons.other": "Jde o něco jiného",
+  "report.reasons.other_description": "Problém neodpovídá ostatním kategoriím",
+  "report.reasons.spam": "Je to spam",
+  "report.reasons.spam_description": "Škodlivé odkazy, falešné interakce nebo opakované odpovědi",
+  "report.reasons.violation": "Porušuje pravidla serveru",
+  "report.reasons.violation_description": "Máte za to, že porušuje konkrétní pravidla",
+  "report.rules.subtitle": "Vyberte všechna relevantní",
+  "report.rules.title": "Která pravidla porušuje?",
+  "report.statuses.subtitle": "Vyberte všechny relevantní",
+  "report.statuses.title": "Existují příspěvky dokládající toto hlášení?",
   "report.submit": "Odeslat",
   "report.target": "Nahlášení uživatele {target}",
   "report.thanks.take_action": "Here are your options for controlling what you see on Mastodon:",
@@ -490,7 +490,7 @@
   "suggestions.dismiss": "Odmítnout návrh",
   "suggestions.header": "Mohlo by vás zajímat…",
   "tabs_bar.federated_timeline": "Federovaná",
-  "tabs_bar.home": "Domů",
+  "tabs_bar.home": "Domovská",
   "tabs_bar.local_timeline": "Místní",
   "tabs_bar.notifications": "Oznámení",
   "tabs_bar.search": "Hledat",
diff --git a/app/javascript/mastodon/locales/fa.json b/app/javascript/mastodon/locales/fa.json
index d5276039d..73a65ed78 100644
--- a/app/javascript/mastodon/locales/fa.json
+++ b/app/javascript/mastodon/locales/fa.json
@@ -9,7 +9,7 @@
   "account.browse_more_on_origin_server": "مرور بیش‌تر روی نمایهٔ اصلی",
   "account.cancel_follow_request": "لغو درخواست پی‌گیری",
   "account.direct": "پیام مستقیم به ‎@{name}",
-  "account.disable_notifications": "آگاهی به من هنگام فرستادن‌های ‎@{name} پایان یابد",
+  "account.disable_notifications": "آگاه کردن من هنگام فرسته‌های ‎@{name} را متوقّف کن",
   "account.domain_blocked": "دامنه مسدود شد",
   "account.edit_profile": "ویرایش نمایه",
   "account.enable_notifications": "هنگام فرسته‌های ‎@{name} مرا آگاه کن",
@@ -444,7 +444,7 @@
   "status.admin_status": "گشودن این فرسته در واسط مدیریت",
   "status.block": "مسدود کردن ‎@{name}",
   "status.bookmark": "نشانک",
-  "status.cancel_reblog_private": "لغو تقویت",
+  "status.cancel_reblog_private": "ناتقویت",
   "status.cannot_reblog": "این فرسته قابل تقویت نیست",
   "status.copy": "رونوشت پیوند فرسته",
   "status.delete": "حذف",
diff --git a/app/javascript/mastodon/locales/fr.json b/app/javascript/mastodon/locales/fr.json
index 65d3c6ea1..13d89502b 100644
--- a/app/javascript/mastodon/locales/fr.json
+++ b/app/javascript/mastodon/locales/fr.json
@@ -229,7 +229,7 @@
   "keyboard_shortcuts.blocked": "Ouvrir la liste des comptes bloqués",
   "keyboard_shortcuts.boost": "Partager le message",
   "keyboard_shortcuts.column": "Se placer dans une colonne",
-  "keyboard_shortcuts.compose": "se placer dans la zone de rédaction",
+  "keyboard_shortcuts.compose": "Se placer dans la zone de rédaction",
   "keyboard_shortcuts.description": "Description",
   "keyboard_shortcuts.direct": "Ouvrir la colonne des messages directs",
   "keyboard_shortcuts.down": "Descendre dans la liste",
@@ -246,7 +246,7 @@
   "keyboard_shortcuts.muted": "Ouvrir la liste des comptes masqués",
   "keyboard_shortcuts.my_profile": "Ouvrir votre profil",
   "keyboard_shortcuts.notifications": "Ouvrir la colonne de notifications",
-  "keyboard_shortcuts.open_media": "ouvrir le média",
+  "keyboard_shortcuts.open_media": "Ouvrir le média",
   "keyboard_shortcuts.pinned": "Ouvrir la liste des messages épinglés",
   "keyboard_shortcuts.profile": "Ouvrir le profil de l’auteur·rice",
   "keyboard_shortcuts.reply": "Répondre au message",
diff --git a/app/javascript/mastodon/locales/gd.json b/app/javascript/mastodon/locales/gd.json
index aae73a23e..9ca41b2f6 100644
--- a/app/javascript/mastodon/locales/gd.json
+++ b/app/javascript/mastodon/locales/gd.json
@@ -18,7 +18,7 @@
   "account.followers": "Luchd-leantainn",
   "account.followers.empty": "Chan eil neach sam bith a’ leantainn air a’ chleachdaiche seo fhathast.",
   "account.followers_counter": "{count, plural, one {{counter} neach-leantainn} two {{counter} neach-leantainn} few {{counter} luchd-leantainn} other {{counter} luchd-leantainn}}",
-  "account.following": "Following",
+  "account.following": "A’ leantainn",
   "account.following_counter": "{count, plural, one {A’ leantainn air {counter}} two {A’ leantainn air {counter}} few {A’ leantainn air {counter}} other {A’ leantainn air {counter}}}",
   "account.follows.empty": "Chan eil an cleachdaiche seo a’ leantainn air neach sam bith fhathast.",
   "account.follows_you": "’Gad leantainn",
@@ -41,12 +41,12 @@
   "account.statuses_counter": "{count, plural, one {{counter} phost} two {{counter} phost} few {{counter} postaichean} other {{counter} post}}",
   "account.unblock": "Dì-bhac @{name}",
   "account.unblock_domain": "Dì-bhac an àrainn {domain}",
-  "account.unblock_short": "Unblock",
+  "account.unblock_short": "Dì-bhac",
   "account.unendorse": "Na brosnaich air a’ phròifil",
   "account.unfollow": "Na lean tuilleadh",
   "account.unmute": "Dì-mhùch @{name}",
   "account.unmute_notifications": "Dì-mhùch na brathan o @{name}",
-  "account.unmute_short": "Unmute",
+  "account.unmute_short": "Dì-mhùch",
   "account_note.placeholder": "Briog airson nòta a chur ris",
   "admin.dashboard.daily_retention": "Reat glèidheadh nan cleachdaichean às dèidh an clàradh a-rèir latha",
   "admin.dashboard.monthly_retention": "Reat glèidheadh nan cleachdaichean às dèidh an clàradh a-rèir mìos",
@@ -294,7 +294,7 @@
   "navigation_bar.discover": "Fidir",
   "navigation_bar.domain_blocks": "Àrainnean bacte",
   "navigation_bar.edit_profile": "Deasaich a’ phròifil",
-  "navigation_bar.explore": "Explore",
+  "navigation_bar.explore": "Rùraich",
   "navigation_bar.favourites": "Na h-annsachdan",
   "navigation_bar.filters": "Faclan mùchte",
   "navigation_bar.follow_requests": "Iarrtasan leantainn",
diff --git a/app/javascript/mastodon/locales/pt-BR.json b/app/javascript/mastodon/locales/pt-BR.json
index c597aa20d..2b9755c06 100644
--- a/app/javascript/mastodon/locales/pt-BR.json
+++ b/app/javascript/mastodon/locales/pt-BR.json
@@ -18,7 +18,7 @@
   "account.followers": "Seguidores",
   "account.followers.empty": "Nada aqui.",
   "account.followers_counter": "{count, plural, one {{counter} seguidor} other {{counter} seguidores}}",
-  "account.following": "Following",
+  "account.following": "Seguindo",
   "account.following_counter": "{count, plural, one {segue {counter}} other {segue {counter}}}",
   "account.follows.empty": "Nada aqui.",
   "account.follows_you": "te segue",
@@ -41,14 +41,14 @@
   "account.statuses_counter": "{count, plural, one {{counter} Toot} other {{counter} Toots}}",
   "account.unblock": "Desbloquear @{name}",
   "account.unblock_domain": "Desbloquear domínio {domain}",
-  "account.unblock_short": "Unblock",
+  "account.unblock_short": "Desbloquear",
   "account.unendorse": "Remover",
   "account.unfollow": "Deixar de seguir",
   "account.unmute": "Dessilenciar @{name}",
   "account.unmute_notifications": "Mostrar notificações de @{name}",
-  "account.unmute_short": "Unmute",
+  "account.unmute_short": "Reativar",
   "account_note.placeholder": "Nota pessoal sobre este perfil aqui",
-  "admin.dashboard.daily_retention": "User retention rate by day after sign-up",
+  "admin.dashboard.daily_retention": "Taxa de retenção de usuários por dia, após a inscrição",
   "admin.dashboard.monthly_retention": "Taxa de retenção de usuários por mês, após a inscrição",
   "admin.dashboard.retention.average": "Média",
   "admin.dashboard.retention.cohort": "Mês de inscrição",
@@ -168,7 +168,7 @@
   "empty_column.community": "A linha local está vazia. Publique algo para começar!",
   "empty_column.direct": "Nada aqui. Quando você enviar ou receber toots diretos, eles aparecerão aqui.",
   "empty_column.domain_blocks": "Nada aqui.",
-  "empty_column.explore_statuses": "Nothing is trending right now. Check back later!",
+  "empty_column.explore_statuses": "Nada está em alta no momento. Volte mais tarde!",
   "empty_column.favourited_statuses": "Nada aqui. Quando você favoritar um toot, ele aparecerá aqui.",
   "empty_column.favourites": "Nada aqui. Quando alguém favoritar, o autor aparecerá aqui.",
   "empty_column.follow_recommendations": "Parece que não há sugestões para você. Tente usar a pesquisa para encontrar pessoas que você possa conhecer ou explorar hashtags.",
@@ -294,7 +294,7 @@
   "navigation_bar.discover": "Descobrir",
   "navigation_bar.domain_blocks": "Domínios bloqueados",
   "navigation_bar.edit_profile": "Editar perfil",
-  "navigation_bar.explore": "Explore",
+  "navigation_bar.explore": "Explorar",
   "navigation_bar.favourites": "Favoritos",
   "navigation_bar.filters": "Palavras filtradas",
   "navigation_bar.follow_requests": "Seguidores pendentes",
@@ -390,42 +390,42 @@
   "relative_time.today": "hoje",
   "reply_indicator.cancel": "Cancelar",
   "report.block": "Bloquear",
-  "report.block_explanation": "You will not see their posts. They will not be able to see your posts or follow you. They will be able to tell that they are blocked.",
+  "report.block_explanation": "Você não verá suas postagens. Eles não poderão ver suas postagens ou segui-lo. Eles serão capazes de perceber que estão bloqueados.",
   "report.categories.other": "Outro",
   "report.categories.spam": "Spam",
   "report.categories.violation": "O conteúdo viola uma ou mais regras do servidor",
-  "report.category.subtitle": "Choose the best match",
-  "report.category.title": "Tell us what's going on with this {type}",
+  "report.category.subtitle": "Escolha a alternativa de melhor correspondência",
+  "report.category.title": "Conte-nos o que está acontecendo com esse {type}",
   "report.category.title_account": "perfil",
   "report.category.title_status": "publicação",
   "report.close": "Concluído",
-  "report.comment.title": "Is there anything else you think we should know?",
+  "report.comment.title": "Há algo mais que você acredita que devemos saber?",
   "report.forward": "Encaminhar para {target}",
   "report.forward_hint": "A conta está em outra instância. Enviar uma cópia anônima da denúncia para lá?",
   "report.mute": "Silenciar",
-  "report.mute_explanation": "You will not see their posts. They can still follow you and see your posts and will not know that they are muted.",
+  "report.mute_explanation": "Você não verá suas postagens. Eles ainda podem seguir você e ver suas postagens e não saberão que estão silenciados.",
   "report.next": "Próximo",
   "report.placeholder": "Comentários adicionais aqui",
   "report.reasons.dislike": "Eu não gosto disso",
-  "report.reasons.dislike_description": "It is not something you want to see",
-  "report.reasons.other": "It's something else",
+  "report.reasons.dislike_description": "Não é algo que você quer ver",
+  "report.reasons.other": "É outra coisa",
   "report.reasons.other_description": "O problema não se encaixa em outras categorias",
   "report.reasons.spam": "É spam",
-  "report.reasons.spam_description": "Malicious links, fake engagement, or repetitive replies",
-  "report.reasons.violation": "It violates server rules",
+  "report.reasons.spam_description": "Links maliciosos, envolvimento falso ou respostas repetitivas",
+  "report.reasons.violation": "Viola as regras do servidor",
   "report.reasons.violation_description": "Você está ciente de que isso quebra regras específicas",
   "report.rules.subtitle": "Selecione tudo que se aplica",
-  "report.rules.title": "Which rules are being violated?",
+  "report.rules.title": "Que regras estão sendo violadas?",
   "report.statuses.subtitle": "Selecione tudo que se aplica",
-  "report.statuses.title": "Are there any posts that back up this report?",
+  "report.statuses.title": "Existem postagens que respaldam esse relatório?",
   "report.submit": "Enviar",
   "report.target": "Denunciando {target}",
-  "report.thanks.take_action": "Here are your options for controlling what you see on Mastodon:",
+  "report.thanks.take_action": "Aqui estão suas opções para controlar o que você vê no Mastodon:",
   "report.thanks.take_action_actionable": "Enquanto revisamos isso, você pode tomar medidas contra @{name}:",
   "report.thanks.title": "Não quer ver isto?",
   "report.thanks.title_actionable": "Obrigado por reportar. Vamos analisar.",
-  "report.unfollow": "Unfollow @{name}",
-  "report.unfollow_explanation": "You are following this account. To not see their posts in your home feed anymore, unfollow them.",
+  "report.unfollow": "Deixar de seguir @{name}",
+  "report.unfollow_explanation": "Você está seguindo esta conta. Para não mais ver os posts dele em sua página inicial, deixe de segui-lo.",
   "search.placeholder": "Pesquisar",
   "search_popout.search_format": "Formato de pesquisa avançada",
   "search_popout.tips.full_text": "Texto simples retorna toots que você escreveu, favoritou, deu boost, ou em que foi mencionado, assim como nomes de usuário e de exibição, e hashtags correspondentes.",
diff --git a/app/javascript/mastodon/locales/sq.json b/app/javascript/mastodon/locales/sq.json
index d1047f5da..ce3cdabd0 100644
--- a/app/javascript/mastodon/locales/sq.json
+++ b/app/javascript/mastodon/locales/sq.json
@@ -18,7 +18,7 @@
   "account.followers": "Ndjekës",
   "account.followers.empty": "Këtë përdorues ende s’e ndjek kush.",
   "account.followers_counter": "{count, plural, one {{counter} Ndjekës} other {{counter} Ndjekës}}",
-  "account.following": "Following",
+  "account.following": "Ndjekje",
   "account.following_counter": "{count, plural, one {{counter} i Ndjekur} other {{counter} të Ndjekur}}",
   "account.follows.empty": "Ky përdorues ende s’ndjek kënd.",
   "account.follows_you": "Ju ndjek",
@@ -41,12 +41,12 @@
   "account.statuses_counter": "{count, plural, one {{counter} Mesazh} other {{counter} Mesazhe}}",
   "account.unblock": "Zhbllokoje @{name}",
   "account.unblock_domain": "Zhblloko përkatësinë {domain}",
-  "account.unblock_short": "Unblock",
+  "account.unblock_short": "Zhbllokoje",
   "account.unendorse": "Mos e përfshi në profil",
   "account.unfollow": "Resht së ndjekuri",
   "account.unmute": "Ktheji zërin @{name}",
   "account.unmute_notifications": "Hiqua ndalimin e shfaqjes njoftimeve nga @{name}",
-  "account.unmute_short": "Unmute",
+  "account.unmute_short": "Çheshtoje",
   "account_note.placeholder": "Klikoni për të shtuar shënim",
   "admin.dashboard.daily_retention": "Shkallë mbajtjeje përdoruesi, në ditë, pas regjistrimit",
   "admin.dashboard.monthly_retention": "Shkallë mbajtjeje përdoruesi, në muaj, pas regjistrimit",
@@ -294,7 +294,7 @@
   "navigation_bar.discover": "Zbuloni",
   "navigation_bar.domain_blocks": "Përkatësi të bllokuara",
   "navigation_bar.edit_profile": "Përpunoni profilin",
-  "navigation_bar.explore": "Explore",
+  "navigation_bar.explore": "Eksploroni",
   "navigation_bar.favourites": "Të parapëlqyer",
   "navigation_bar.filters": "Fjalë të heshtuara",
   "navigation_bar.follow_requests": "Kërkesa për ndjekje",
diff --git a/app/javascript/mastodon/locales/th.json b/app/javascript/mastodon/locales/th.json
index f7eddd11b..f8477e8fd 100644
--- a/app/javascript/mastodon/locales/th.json
+++ b/app/javascript/mastodon/locales/th.json
@@ -128,7 +128,7 @@
   "confirmations.logout.confirm": "ออกจากระบบ",
   "confirmations.logout.message": "คุณแน่ใจหรือไม่ว่าต้องการออกจากระบบ?",
   "confirmations.mute.confirm": "ซ่อน",
-  "confirmations.mute.explanation": "นี่จะซ่อนโพสต์จากเขาและโพสต์ที่กล่าวถึงเขา แต่จะยังอนุญาตให้เขาเห็นโพสต์ของคุณและติดตามคุณ",
+  "confirmations.mute.explanation": "นี่จะซ่อนโพสต์จากเขาและโพสต์ที่กล่าวถึงเขา แต่จะยังคงอนุญาตให้เขาเห็นโพสต์ของคุณและติดตามคุณ",
   "confirmations.mute.message": "คุณแน่ใจหรือไม่ว่าต้องการซ่อน {name}?",
   "confirmations.redraft.confirm": "ลบแล้วร่างใหม่",
   "confirmations.redraft.message": "คุณแน่ใจหรือไม่ว่าต้องการลบโพสต์นี้แล้วร่างโพสต์ใหม่? รายการโปรดและการดันจะหายไป และการตอบกลับโพสต์ดั้งเดิมจะไม่มีความเกี่ยวพัน",
@@ -403,7 +403,7 @@
   "report.forward": "ส่งต่อไปยัง {target}",
   "report.forward_hint": "บัญชีมาจากเซิร์ฟเวอร์อื่น ส่งสำเนาของรายงานที่ไม่ระบุตัวตนไปที่นั่นด้วย?",
   "report.mute": "ซ่อน",
-  "report.mute_explanation": "คุณจะไม่เห็นโพสต์ของเขา เขายังสามารถติดตามคุณและเห็นโพสต์ของคุณและจะไม่ทราบว่ามีการซ่อนเขา",
+  "report.mute_explanation": "คุณจะไม่เห็นโพสต์ของเขา เขายังคงสามารถติดตามคุณและเห็นโพสต์ของคุณและจะไม่ทราบว่ามีการซ่อนเขา",
   "report.next": "ถัดไป",
   "report.placeholder": "ความคิดเห็นเพิ่มเติม",
   "report.reasons.dislike": "ฉันไม่ชอบโพสต์",
diff --git a/app/javascript/mastodon/locales/uk.json b/app/javascript/mastodon/locales/uk.json
index 876f8aa8a..e2e1386e6 100644
--- a/app/javascript/mastodon/locales/uk.json
+++ b/app/javascript/mastodon/locales/uk.json
@@ -18,7 +18,7 @@
   "account.followers": "Підписники",
   "account.followers.empty": "Ніхто ще не підписався на цього користувача.",
   "account.followers_counter": "{count, plural, one {{counter} Підписник} few {{counter} Підписники} many {{counter} Підписників} other {{counter} Підписники}}",
-  "account.following": "Following",
+  "account.following": "Стежите",
   "account.following_counter": "{count, plural, one {{counter} Підписка} few {{counter} Підписки} many {{counter} Підписок} other {{counter} Підписки}}",
   "account.follows.empty": "Цей користувач ще ні на кого не підписався.",
   "account.follows_you": "Підписаний(-а) на вас",
@@ -402,7 +402,7 @@
   "report.comment.title": "Is there anything else you think we should know?",
   "report.forward": "Надіслати до {target}",
   "report.forward_hint": "Це акаунт з іншого серверу. Відправити анонімізовану копію скарги і туди?",
-  "report.mute": "Mute",
+  "report.mute": "Заглушити",
   "report.mute_explanation": "You will not see their posts. They can still follow you and see your posts and will not know that they are muted.",
   "report.next": "Далі",
   "report.placeholder": "Додаткові коментарі",
@@ -415,8 +415,8 @@
   "report.reasons.violation": "It violates server rules",
   "report.reasons.violation_description": "You are aware that it breaks specific rules",
   "report.rules.subtitle": "Select all that apply",
-  "report.rules.title": "Which rules are being violated?",
-  "report.statuses.subtitle": "Select all that apply",
+  "report.rules.title": "Які правила порушено?",
+  "report.statuses.subtitle": "Виберіть усі варіанти, що підходять",
   "report.statuses.title": "Are there any posts that back up this report?",
   "report.submit": "Відправити",
   "report.target": "Скаржимося на {target}",
@@ -424,7 +424,7 @@
   "report.thanks.take_action_actionable": "While we review this, you can take action against @{name}:",
   "report.thanks.title": "Don't want to see this?",
   "report.thanks.title_actionable": "Thanks for reporting, we'll look into this.",
-  "report.unfollow": "Unfollow @{name}",
+  "report.unfollow": "Відписатися від @{name}",
   "report.unfollow_explanation": "You are following this account. To not see their posts in your home feed anymore, unfollow them.",
   "search.placeholder": "Пошук",
   "search_popout.search_format": "Розширений формат пошуку",
diff --git a/app/javascript/styles/mastodon/components.scss b/app/javascript/styles/mastodon/components.scss
index 713d24c0f..442ffd2c0 100644
--- a/app/javascript/styles/mastodon/components.scss
+++ b/app/javascript/styles/mastodon/components.scss
@@ -1009,6 +1009,43 @@
   .audio-player {
     margin-top: 8px;
   }
+
+  &.light {
+    .status__relative-time,
+    .status__visibility-icon {
+      color: $light-text-color;
+    }
+
+    .status__display-name {
+      color: $inverted-text-color;
+    }
+
+    .display-name {
+      color: $light-text-color;
+
+      strong {
+        color: $inverted-text-color;
+      }
+    }
+
+    .status__content {
+      color: $inverted-text-color;
+
+      a {
+        color: $highlight-text-color;
+      }
+
+      a.status__content__spoiler-link {
+        color: $primary-text-color;
+        background: $ui-primary-color;
+
+        &:hover,
+        &:focus {
+          background: lighten($ui-primary-color, 8%);
+        }
+      }
+    }
+  }
 }
 
 .status__relative-time,
@@ -1154,43 +1191,6 @@
   .audio-player {
     margin-top: 8px;
   }
-
-  &.light {
-    .status__relative-time,
-    .status__visibility-icon {
-      color: $light-text-color;
-    }
-
-    .status__display-name {
-      color: $inverted-text-color;
-    }
-
-    .display-name {
-      color: $light-text-color;
-
-      strong {
-        color: $inverted-text-color;
-      }
-    }
-
-    .status__content {
-      color: $inverted-text-color;
-
-      a {
-        color: $highlight-text-color;
-      }
-
-      a.status__content__spoiler-link {
-        color: $primary-text-color;
-        background: $ui-primary-color;
-
-        &:hover,
-        &:focus {
-          background: lighten($ui-primary-color, 8%);
-        }
-      }
-    }
-  }
 }
 
 .detailed-status__meta {
diff --git a/app/models/account_filter.rb b/app/models/account_filter.rb
index 9da1522dd..ec309ce09 100644
--- a/app/models/account_filter.rb
+++ b/app/models/account_filter.rb
@@ -80,6 +80,10 @@ class AccountFilter
       accounts_with_users.merge(User.pending)
     when 'suspended'
       Account.suspended
+    when 'disabled'
+      accounts_with_users.merge(User.disabled)
+    when 'silenced'
+      Account.silenced
     else
       raise "Unknown status: #{value}"
     end
diff --git a/app/services/notify_service.rb b/app/services/notify_service.rb
index b1f9fd755..a90f17cfd 100644
--- a/app/services/notify_service.rb
+++ b/app/services/notify_service.rb
@@ -48,47 +48,23 @@ class NotifyService < BaseService
     return false if @notification.target_status.in_reply_to_id.nil?
 
     # Using an SQL CTE to avoid unneeded back-and-forth with SQL server in case of long threads
-    !Status.count_by_sql([<<-SQL.squish, id: @notification.target_status.in_reply_to_id, recipient_id: @recipient.id, sender_id: @notification.from_account.id]).zero?
-      WITH RECURSIVE ancestors(id, in_reply_to_id, replying_to_sender, path) AS (
-          SELECT
-            s.id,
-            s.in_reply_to_id,
-            (CASE
-              WHEN s.account_id = :recipient_id THEN
-                EXISTS (
-                  SELECT *
-                  FROM mentions m
-                  WHERE m.silent = FALSE AND m.account_id = :sender_id AND m.status_id = s.id
-                )
-              ELSE
-                FALSE
-             END),
-            ARRAY[s.id]
+    !Status.count_by_sql([<<-SQL.squish, id: @notification.target_status.in_reply_to_id, recipient_id: @recipient.id, sender_id: @notification.from_account.id, depth_limit: 100]).zero?
+      WITH RECURSIVE ancestors(id, in_reply_to_id, mention_id, path, depth) AS (
+          SELECT s.id, s.in_reply_to_id, m.id, ARRAY[s.id], 0
           FROM statuses s
+          LEFT JOIN mentions m ON m.silent = FALSE AND m.account_id = :sender_id AND m.status_id = s.id
           WHERE s.id = :id
         UNION ALL
-          SELECT
-            s.id,
-            s.in_reply_to_id,
-            (CASE
-              WHEN s.account_id = :recipient_id THEN
-                EXISTS (
-                  SELECT *
-                  FROM mentions m
-                  WHERE m.silent = FALSE AND m.account_id = :sender_id AND m.status_id = s.id
-                )
-              ELSE
-                FALSE
-             END),
-            st.path || s.id
+          SELECT s.id, s.in_reply_to_id, m.id, st.path || s.id, st.depth + 1
           FROM ancestors st
           JOIN statuses s ON s.id = st.in_reply_to_id
-          WHERE st.replying_to_sender IS FALSE AND NOT s.id = ANY(path)
+          LEFT JOIN mentions m ON m.silent = FALSE AND m.account_id = :sender_id AND m.status_id = s.id
+          WHERE st.mention_id IS NULL AND NOT s.id = ANY(path) AND st.depth < :depth_limit
       )
       SELECT COUNT(*)
       FROM ancestors st
       JOIN statuses s ON s.id = st.id
-      WHERE st.replying_to_sender IS TRUE AND s.visibility = 3
+      WHERE st.mention_id IS NOT NULL AND s.visibility = 3
     SQL
   end
 
diff --git a/config/deploy.rb b/config/deploy.rb
index f642e6e59..8a2316b57 100644
--- a/config/deploy.rb
+++ b/config/deploy.rb
@@ -1,6 +1,6 @@
 # frozen_string_literal: true
 
-lock '3.16.0'
+lock '3.17.0'
 
 set :repo_url, ENV.fetch('REPO', 'https://github.com/mastodon/mastodon.git')
 set :branch, ENV.fetch('BRANCH', 'master')
diff --git a/config/locales/activerecord.ku.yml b/config/locales/activerecord.ku.yml
index 3a3a1d843..340b7a777 100644
--- a/config/locales/activerecord.ku.yml
+++ b/config/locales/activerecord.ku.yml
@@ -9,7 +9,7 @@ ku:
         agreement: Peymana karûbarê
         email: Navnîşana E-nameyê
         locale: Herêmî
-        password: Pêborîn
+        password: Borînpeyv
       user/account:
         username: Navê bikarhêneriyê
       user/invite_request:
diff --git a/config/locales/ar.yml b/config/locales/ar.yml
index 4ccadab8b..ba66c5749 100644
--- a/config/locales/ar.yml
+++ b/config/locales/ar.yml
@@ -474,9 +474,6 @@ ar:
       delivery_error_days: أيام أخطاء التوصيل
       delivery_error_hint: إذا كان التوصيل غير ممكناً لـ%{count} يوم، فستوضع عليها علامة {غير قابلة للتسليم} تلقائياً.
       empty: لم يتم العثور على نطاقات.
-      known_accounts:
-        one: "%{count} حساب معروف"
-        other: "%{count} حسابات معروفة"
       moderation:
         all: كافتها
         limited: محدود
diff --git a/config/locales/ca.yml b/config/locales/ca.yml
index 6c5fc95fe..d7a8a4858 100644
--- a/config/locales/ca.yml
+++ b/config/locales/ca.yml
@@ -168,7 +168,6 @@ ca:
       previous_strikes_description_html:
         one: Aquest compte té <strong>una</strong> acció.
         other: Aquest compte té <strong>%{count}</strong> accions.
-        zero: Aquest compte està <strong>al dia</strong>.
       promote: Promociona
       protocol: Protocol
       public: Públic
@@ -530,7 +529,6 @@ ca:
       known_accounts:
         one: "%{count} compte conegut"
         other: "%{count} comptes coneguts"
-        zero: Cap compte conegut
       moderation:
         all: Totes
         limited: Limitades
@@ -775,6 +773,11 @@ ca:
     system_checks:
       database_schema_check:
         message_html: Hi ha pendents migracions de la base de dades. Si us plau executa-les per a assegurar que l'aplicació es comporta com s'espera
+      elasticsearch_running_check:
+        message_html: No s'ha pogut connectar a Elasticsearch. Si us plau verifica que estigui funcionant o desactiva la cerca de text complet
+      elasticsearch_version_check:
+        message_html: 'Versió incompatible de Elasticsearch: %{value}'
+        version_comparison: Elasticsearch %{running_version} està funcionant mentre %{required_version} és requerida
       rules_check:
         action: Gestiona les normes del servidor
         message_html: No has definit cap norma del servidor.
@@ -795,9 +798,8 @@ ca:
         disallow: No permetre l'enllaç
         disallow_provider: No permetre el mitjà
         shared_by_over_week:
-          one: Compartit per un usuari en la darrera setmana
-          other: Compartit per %{count} usuaris en la darrera setmana
-          zero: Compartit per ningú en la darrera setmana
+          one: Compartit per una persona en la darrera setmana
+          other: Compartit per %{count} persones en la darrera setmana
         title: Enllaços en tendència
         usage_comparison: Compartit %{today} vegades avui, comparat amb %{yesterday} d'ahir
       pending_review: Revisió pendent
@@ -838,9 +840,8 @@ ca:
         usable: Pot ser emprat
         usage_comparison: Usat %{today} vegades avui, comparat amb %{yesterday} d'ahir
         used_by_over_week:
-          one: Emprat per un usuari en la darrera setmana
-          other: Emprat per %{count} usuaris en la darrera setmana
-          zero: Emprat per ningú en la darrera setmana
+          one: Emprat per una persona en la darrera setmana
+          other: Emprat per %{count} persones en la darrera setmana
       title: Tendència
     warning_presets:
       add_new: Afegir-ne un de nou
diff --git a/config/locales/cs.yml b/config/locales/cs.yml
index 8eda24b4f..107aa9a0b 100644
--- a/config/locales/cs.yml
+++ b/config/locales/cs.yml
@@ -168,6 +168,11 @@ cs:
       not_subscribed: Neodebírá
       pending: Čeká na posouzení
       perform_full_suspension: Pozastavit
+      previous_strikes_description_html:
+        few: Tento účet má <strong>%{count}</strong> strajky.
+        many: Tento účet má <strong>%{count}</strong> strajků.
+        one: Tento účet má <strong>jeden</strong> strajk.
+        other: Tento účet má <strong>%{count}</strong> strajků.
       promote: Povýšit
       protocol: Protokol
       public: Veřejný
@@ -366,6 +371,7 @@ cs:
       enable: Povolit
       enabled: Povoleno
       enabled_msg: Emoji bylo úspěšně povoleno
+      image_hint: PNG nebo GIF do %{size}
       list: Uvést
       listed: Uvedeno
       new:
@@ -446,6 +452,8 @@ cs:
       title: Doporučená sledování
       unsuppress: Obnovit doporučení sledování
     instances:
+      availability:
+        warning: Poslední pokus o připojení k tomuto serveru byl neúspěšný
       back_to_all: Vše
       back_to_limited: Omezený
       back_to_warning: Varování
@@ -527,12 +535,15 @@ cs:
           one: "%{count} poznámka"
           other: "%{count} poznámek"
       action_taken_by: Akci vykonal uživatel
-      are_you_sure: Opravu?
+      are_you_sure: Jste si jisti?
       assign_to_self: Přidělit ke mně
       assigned: Přiřazený moderátor
       by_target_domain: Doména nahlášeného účtu
+      category: Kategorie
+      category_description_html: Důvod nahlášení tohoto účtu a/nebo obsahu bude uveden v komunikaci s nahlášeným účtem
       comment:
         none: Žádné
+      comment_description_html: 'Pro upřesnění uživatel %{name} napsal:'
       created_at: Nahlášené
       forwarded: Přeposláno
       forwarded_to: Přeposláno na %{domain}
@@ -544,13 +555,19 @@ cs:
         create_and_unresolve: Znovu otevřít s poznámkou
         delete: Smazat
         placeholder: Popište, jaké akce byly vykonány, nebo jakékoliv jiné související aktuality…
+        title: Poznámky
+      notes_description_html: Zobrazit a zanechat poznámky pro ostatní moderátory i sebe v budoucnu
+      remote_user_placeholder: vzdálený uživatel z %{instance}
       reopen: Znovu otevřít hlášení
       report: 'Nahlásit #%{id}'
       reported_account: Nahlášený účet
       reported_by: Nahlášeno uživatelem
       resolved: Vyřešeno
       resolved_msg: Hlášení úspěšně vyřešeno!
+      skip_to_actions: Přeskočit k akcím
       status: Stav
+      statuses: Nahlášený obsah
+      statuses_description_html: Obsah porušující pravidla bude uveden v komunikaci s nahlášeným účtem
       target_origin: Původ nahlášeného účtu
       title: Hlášení
       unassign: Odebrat
@@ -666,6 +683,11 @@ cs:
     system_checks:
       database_schema_check:
         message_html: Na spuštění čekají databázové migrace. Nechte je prosím proběhnout pro zajištění očekávaného chování aplikace
+      elasticsearch_running_check:
+        message_html: Nelze se připojit k Elasticsearch. Prosím zkontrolujte, že běží, nebo vypněte fulltextové vyhledávání
+      elasticsearch_version_check:
+        message_html: 'Nekompatibilní verze Elasticsearch: %{value}'
+        version_comparison: Je spuštěn Elasticsearch %{running_version} místo vyžadovaného %{required_version}
       rules_check:
         action: Spravovat pravidla serveru
         message_html: Nedefinovali jste žádná pravidla serveru.
@@ -1041,6 +1063,9 @@ cs:
     carry_mutes_over_text: Tento účet se přesunul z %{acct}, který jste skryli.
     copy_account_note_text: 'Tento účet se přesunul z %{acct}, zde byly Vaše předchozí poznámky o něm:'
   notification_mailer:
+    admin:
+      sign_up:
+        subject: Uživatel %{name} se zaregistroval
     digest:
       action: Zobrazit všechna oznámení
       body: Zde najdete stručný souhrn zpráv, které jste zmeškali od vaší poslední návštěvy %{since}
@@ -1082,6 +1107,8 @@ cs:
       title: Nový boost
     status:
       subject: Nový příspěvek od %{name}
+    update:
+      subject: Uživatel %{name} upravil příspěvek
   notifications:
     email_events: Události pro e-mailová oznámení
     email_events_hint: 'Vyberte události, pro které chcete dostávat oznámení:'
@@ -1163,6 +1190,9 @@ cs:
     reply:
       proceed: Pokračovat k odpovědi
       prompt: 'Chcete odpovědět na tento příspěvek:'
+  reports:
+    errors:
+      invalid_rules: neodkazuje na platná pravidla
   scheduled_statuses:
     over_daily_limit: Překročili jste limit %{limit} příspěvků naplánovaných na tento den
     over_total_limit: Překročili jste limit %{limit} naplánovaných příspěvků
@@ -1251,6 +1281,7 @@ cs:
         other: "%{count} videí"
     boosted_from_html: Boostnuto z %{acct_link}
     content_warning: 'Varování o obsahu: %{warning}'
+    default_language: Stejný jako jazyk rozhraní
     disallowed_hashtags:
       few: 'obsahoval nepovolené hashtagy: %{tags}'
       many: 'obsahoval nepovolené hashtagy: %{tags}'
@@ -1450,6 +1481,8 @@ cs:
       subject: Potvrďte prosím pokus o přihlášení
       title: Pokus o přihlášení
     warning:
+      explanation:
+        delete_statuses: Bylo shledáno, že některé vaše příspěvky porušují jednu nebo více zásad komunity a následně byly odstraněny moderátory %{instance}.
       subject:
         disable: Váš účet %{acct} byl zmrazen
         none: Varování pro %{acct}
diff --git a/config/locales/da.yml b/config/locales/da.yml
index b264dffae..d3182ad7f 100644
--- a/config/locales/da.yml
+++ b/config/locales/da.yml
@@ -166,9 +166,8 @@ da:
       perform_full_suspension: Suspendér
       previous_strikes: Tidligere anmeldelser (strikes)
       previous_strikes_description_html:
-        one: Denne konto har <strong>et</strong> anmeldelse.
+        one: Denne konto har <strong>en</strong> anmeldelse.
         other: Denne konto har <strong>%{count}</strong> anmeldelser.
-        zero: Denne konto er <strong>på god fod</strong>.
       promote: Forfrem
       protocol: Protokol
       public: Offentlig
@@ -530,7 +529,6 @@ da:
       known_accounts:
         one: "%{count} kendt konto"
         other: "%{count} kendte konti"
-        zero: Ingen kendt konto
       moderation:
         all: Alle
         limited: Begrænset
@@ -775,6 +773,11 @@ da:
     system_checks:
       database_schema_check:
         message_html: Databasemigreringer afventer. Kør dem for at sikre den forventede adfærd fra applikationen
+      elasticsearch_running_check:
+        message_html: Kunne ikke oprette forbindelse til Elasticsearch. Tjek, at den kører, eller deaktivér fuldtekstsøgning
+      elasticsearch_version_check:
+        message_html: 'Inkompatibel Elasticsearch-version: %{value}'
+        version_comparison: Elasticsearch %{running_version} kører, men %{required_version} kræves
       rules_check:
         action: Håndtér serverregler
         message_html: Ingen serverregler defineret.
@@ -795,9 +798,8 @@ da:
         disallow: Tillad ikke link
         disallow_provider: Tillad ikke udgiver
         shared_by_over_week:
-          one: Delt af én person i løbet af den seneste uge
-          other: Delt af %{count} personer i løbet af den seneste uge
-          zero: Ikke delt af nogen i løbet af den seneste uge
+          one: Delt af én person den seneste uge
+          other: Delt af %{count} personer den seneste uge
         title: Populære links
         usage_comparison: Delt %{today} gange i dag, sammenlignet med %{yesterday} i går
       pending_review: Afventer revision
@@ -838,9 +840,8 @@ da:
         usable: Kan anvendes
         usage_comparison: Anvendt %{today} gange i dag, sammenlignet med %{yesterday} i går
         used_by_over_week:
-          one: Anvendt af én person i løbet af den seneste uge
-          other: Anvendt af %{count} personer i løbet af den seneste uge
-          zero: Ikke anvendt af nogen i løbet af den seneste uge
+          one: Brugt af én person den seneste uge
+          other: Brugt af %{count} personer den seneste uge
       title: Trends
     warning_presets:
       add_new: Tilføj ny
diff --git a/config/locales/de.yml b/config/locales/de.yml
index d595fdd42..78ba2c440 100644
--- a/config/locales/de.yml
+++ b/config/locales/de.yml
@@ -165,10 +165,6 @@ de:
       pending: In Warteschlange
       perform_full_suspension: Verbannen
       previous_strikes: Vorherige Strikes
-      previous_strikes_description_html:
-        one: Dieses Konto hat <strong>einen</strong> Strike.
-        other: Dieses Konto hat <strong>%{count}</strong> Strikes.
-        zero: Dieses Konto ist <strong>in gutem Stand</strong>.
       promote: Befördern
       protocol: Protokoll
       public: Öffentlich
@@ -527,10 +523,6 @@ de:
       delivery_error_hint: Wenn eine Lieferung für %{count} Tage nicht möglich ist, wird sie automatisch als nicht lieferbar markiert.
       destroyed_msg: Daten von %{domain} sind nun in der Warteschlange für die bevorstehende Löschung.
       empty: Keine Domains gefunden.
-      known_accounts:
-        one: "%{count} bekanntes Konto"
-        other: "%{count} bekannte Konten"
-        zero: Kein bekanntes Konto
       moderation:
         all: Alle
         limited: Beschränkt
@@ -794,10 +786,6 @@ de:
         description_html: Dies sind Links, die derzeit von Konten geteilt werden, von denen dein Server Beiträge sieht. Es kann deinen Benutzern helfen, herauszufinden, was in der Welt vor sich geht. Es werden keine Links öffentlich angezeigt, bis du den Publisher genehmigst. Du kannst auch einzelne Links zulassen oder ablehnen.
         disallow: Verbiete Link
         disallow_provider: Verbiete Herausgeber
-        shared_by_over_week:
-          one: In der letzten Woche geteilt von einer Person
-          other: In der letzten Woche geteilt von %{count} Personen
-          zero: Geteilt von niemandem in der letzten Woche
         title: Angesagte Links
         usage_comparison: Heute %{today} mal geteilt, gestern %{yesterday} mal
       pending_review: Überprüfung ausstehend
@@ -837,10 +825,6 @@ de:
         trending_rank: 'Trend #%{rank}'
         usable: Kann verwendet werden
         usage_comparison: Heute %{today} mal genutzt, gestern %{yesterday} mal
-        used_by_over_week:
-          one: In der letzten Woche genutzt von einer Person
-          other: In der letzten Woche genutzt von %{count} Personen
-          zero: Genutzt von niemandem in der letzten Woche
       title: Trends
     warning_presets:
       add_new: Neu hinzufügen
diff --git a/config/locales/devise.ku.yml b/config/locales/devise.ku.yml
index 9ae76dab2..18187a156 100644
--- a/config/locales/devise.ku.yml
+++ b/config/locales/devise.ku.yml
@@ -8,10 +8,10 @@ ku:
     failure:
       already_authenticated: Jixwe te berê têketin kiriye.
       inactive: Ajimêra te hîn nehatiye çalakkirin.
-      invalid: Nederbasdar %{authentication_keys} an jî şîfre.
+      invalid: "%{authentication_keys} an jî borînpeyv nederbasdar e."
       last_attempt: Peşiya kilît kirina ajimêra te carek din jî biceribîne.
       locked: Ajimêra ye hat kilît kirin.
-      not_found_in_database: Nederbasdar %{authentication_keys} an jî şîfre.
+      not_found_in_database: "%{authentication_keys} an jî borînpeyv nederbasdar e."
       pending: Ajimêra te hîn tê vekolandin.
       timeout: Danişîna te qedîya. Ji kerema xwe ji bo berdewamiyê dîsa têkeve.
       unauthenticated: Peşiya berdewamiya te têketina xwe bike an jî xwe tomar bike.
@@ -33,10 +33,10 @@ ku:
         subject: 'Mastodon: E-name hate guhertin'
         title: Navnîşana e-nameya nû
       password_change:
-        explanation: Pêborîna ajimêra te hate guhertin.
+        explanation: Borînpeyva ajimêra te hate guhertin.
         extra: Heke te ajimêra xwe ne guhertiye. Ew tê wateya ku kesek ketiye ajimêrê te. Jkx pêborîna xwe zû biguherîne an jî bi rêveberiya rajekar re têkeve têkiliyê heke tu êdî nikare ajimêra xwe bi kar bînî.
         subject: 'Mastodon: pêborîn hate guhertin'
-        title: Pêborîn hate guhertin
+        title: Borînpeyv hate guhertin
       reconfirmation_instructions:
         explanation: Navnîşana nû piştrast bike da ku tu e-nameya xwe biguherînî.
         extra: |-
@@ -45,13 +45,13 @@ ku:
         subject: 'Mastodon: E-nameyê piştrast bike bo %{instance}'
         title: Navnîşana e-nameyê piştrast bike
       reset_password_instructions:
-        action: Pêborînê biguherîne
+        action: Borînpeyvê biguherîne
         explanation: Te ji bo ajimêra xwe daxwaza pêborîneke nû kiriye.
-        extra: Heke te ev daxwaz nekir, jkx guh nede vê e-nameyê. Pêborîna te wê neyê guhertin heya ku tu li girêdana Jêrin bitikînî û yeka nû çê bikî.
+        extra: Heke te ev daxwaz nekir, jkx guh nede vê e-nameyê. Borînpeyva te wê neyê guhertin heya ku tu li girêdana Jêrin bitikînî û yeka nû çê bikî.
         subject: 'Mastodon: rêwerzên jê birina pêborîn'
-        title: Pêborîn ji nû ve saz bike
+        title: Borînpeyv ji nû ve saz bike
       two_factor_disabled:
-        explanation: Ji bo ajimêrê te piştrastkirina du-faktorî hat asteng kirin. Niha tu tenê bi navnîşana e-name û şîfre ya xwe dikarî têketin bikî.
+        explanation: Ji bo ajimêrê te piştrastkirina du-faktorî hat asteng kirin. Niha tu tenê bi navnîşana e-name û borînpeyva xwe dikarî têketinê bikî.
         subject: 'Mastodon: piştrastkirina du- faktorî neçalak bike'
         title: 2FA Neçalak e
       two_factor_enabled:
@@ -85,11 +85,11 @@ ku:
       failure: Nikare ji %{kind} rastandinê bikê ji bo " %{reason}".
       success: Ji ajimêra %{kind} bi serkeftî hate rastandin.
     passwords:
-      no_token: Tu nikarî xwe bigihînî vê rûpelê bêyî ku tu ji e-nameya ji nû ve sazkirina pêborînê wernegerî. Heke tu ji e-nameya ji nû ve sazkirina pêborînê tê, ji kerema xwe pê ewle be ku tu girêdanê ya tevahî bi kar tînî.
-      send_instructions: Heke navnîşana te ya e-nameyê di danegeha me da hebê, tu yê di navnîşana xwe ya e-nameyê da girêdana rizgarkirina pêborînê bistînî. Heke te ev e-name wernegirtibe, ji kerema xwe peldanka xwe ya spamê kontrol bike.
-      send_paranoid_instructions: Heke navnîşana te ya e-nameyê di danegeha me da hebê, tu yê di navnîşana xwe ya e-nameyê da girêdana rizgarkirina pêborînê bistînî di hundir çend xulkan de. Heke te ev e-name wernegirtibe, ji kerema xwe peldanka xwe ya spamê kontrol bike.
-      updated: Pêborîna te bi serkeftî hate guhertin. Niha tu têketî ye.
-      updated_not_active: Pêborîna te bi serkeftî hate guhertin.
+      no_token: Tu nikarî xwe bigihînî vê rûpelê bêyî ku tu ji e-nameya ji nû ve sazkirina borînpeyvê wernegerî. Heke tu ji e-nameya ji nû ve sazkirina borînpeyvê tê, ji kerema xwe pê ewle be ku tu girêdanê ya tevahî bi kar tînî.
+      send_instructions: Heke navnîşana te ya e-nameyê di danegeha me da hebê, tu yê di navnîşana xwe ya e-nameyê da girêdana rizgarkirina borînpeyvê bistînî. Heke te ev e-name wernegirtibe, ji kerema xwe peldanka xwe ya spamê kontrol bike.
+      send_paranoid_instructions: Heke navnîşana te ya e-nameyê di danegeha me da hebê, tu yê di navnîşana xwe ya e-nameyê da girêdana rizgarkirina borînpeyvê bistînî di hundir çend xulkan de. Heke te ev e-name wernegirtibe, ji kerema xwe peldanka xwe ya spamê kontrol bike.
+      updated: Borînpeyva te bi serkeftî hate guhertin. Niha tu têketî ye.
+      updated_not_active: Borînpeyva te bi serkeftî hate guhertin.
     registrations:
       destroyed: Xatirê te! Ajimêra te bi serkeftî hate pûçkirin. Em hêvî dikin ku tu di nêzîk de te dîsa bibînin.
       signed_up: Bi xêr hatî! Te bi serkeftî tomarkirin kir.
diff --git a/config/locales/devise.th.yml b/config/locales/devise.th.yml
index 14f99f2c3..287ea49c5 100644
--- a/config/locales/devise.th.yml
+++ b/config/locales/devise.th.yml
@@ -12,7 +12,7 @@ th:
       last_attempt: คุณลองได้อีกหนึ่งครั้งก่อนที่บัญชีของคุณจะถูกล็อค
       locked: บัญชีของคุณถูกล็อค
       not_found_in_database: "%{authentication_keys} หรือรหัสผ่านไม่ถูกต้อง"
-      pending: บัญชีของคุณยังอยู่ระหว่างการตรวจทาน
+      pending: บัญชีของคุณยังคงอยู่ระหว่างการตรวจทาน
       timeout: เซสชันของคุณหมดอายุแล้ว โปรดลงชื่อเข้าอีกครั้งเพื่อดำเนินการต่อ
       unauthenticated: คุณจำเป็นต้องลงชื่อเข้าหรือลงทะเบียนก่อนดำเนินการต่อ
       unconfirmed: คุณต้องยืนยันที่อยู่อีเมลของคุณก่อนดำเนินการต่อ
diff --git a/config/locales/doorkeeper.fa.yml b/config/locales/doorkeeper.fa.yml
index cc479fbc1..9f455e64b 100644
--- a/config/locales/doorkeeper.fa.yml
+++ b/config/locales/doorkeeper.fa.yml
@@ -29,7 +29,7 @@ fa:
       edit:
         title: ویرایش برنامه
       form:
-        error: اوخ! ببینید چیزی را اشتباهی در فرم وارد نکرده‌اید؟
+        error: اوخ! ببینید چیزی را اشتباهی در فرم وارد نکرده‌اید
       help:
         native_redirect_uri: برای آزمایش‌های محلی %{native_redirect_uri} را به کار ببرید
         redirect_uri: هر URI را در یک سطر جدا بنویسید
@@ -60,6 +60,7 @@ fa:
       error:
         title: خطایی رخ داد
       new:
+        review_permissions: بازبینی اجازه‌ها
         title: نیاز به اجازه دادن
       show:
         title: این کد مجوز را کپی کرده و در برنامه وارد کنید.
@@ -69,6 +70,7 @@ fa:
       confirmations:
         revoke: آیا مطمئن هستید؟
       index:
+        scopes: اجازه‌ها
         title: برنامه‌های مجاز
     errors:
       messages:
@@ -104,6 +106,29 @@ fa:
       authorized_applications:
         destroy:
           notice: برنامه فسخ شد.
+    grouped_scopes:
+      access:
+        read: فقط دسترسی خواندن
+        read/write: دسترسی خواندن و نوشتن
+        write: فقط دسترسی نوشتن
+      title:
+        accounts: حساب‌ها
+        all: همه چیز
+        blocks: مسدودها
+        bookmarks: نشانک‌ها
+        conversations: گفت‌وگوها
+        crypto: رمزگذاری سرتاسری
+        favourites: پسندیده‌ها
+        filters: پالایه‌ها
+        follows: پی‌گرفتگان
+        lists: سیاهه‌ها
+        media: پیوست‌های رسانه‌ای
+        mutes: خموش‌ها
+        notifications: آگاهی‌ها
+        push: آگاهی‌های ارسالی
+        reports: گزارش‌ها
+        search: جست‌وجو
+        statuses: فرسته‌ها
     layouts:
       admin:
         nav:
@@ -118,11 +143,12 @@ fa:
       admin:write: تغییر تمام داده‌ها روی کارساز
       admin:write:accounts: انجام کنش مدیریتی روی حساب‌ها
       admin:write:reports: انجام کنش مدیریتی روی گزارش‌ها
+      crypto: از رمزگذاری سرتاسر استفاده کنید
       follow: پیگیری، مسدودسازی، لغو مسدودسازی، و لغو پیگیری حساب‌ها
       push: دریافت آگاهی‌ای ارسالیتان
       read: خواندن اطلاعات حساب شما
       read:accounts: دیدن اطّلاعات حساب
-      read:blocks: دیدن انسدادهایتان
+      read:blocks: دیدن مسدودهایتان
       read:bookmarks: دیدن نشانک‌هایتان
       read:favourites: دیدن برگزیده‌هایتان
       read:filters: دیدن پالایه‌هایتان
@@ -137,6 +163,7 @@ fa:
       write:accounts: تغییر نمایه‌تان
       write:blocks: انسداد حساب‌ها و دامنه‌ها
       write:bookmarks: نشانک‌گذاری وضعیت‌ها
+      write:conversations: مکالمات را بی‌صدا و حذف کنید
       write:favourites: برگزیدن وضعیت‌ها
       write:filters: ایحاد پالایش‌ها
       write:follows: پی‌گیری افراد
diff --git a/config/locales/doorkeeper.gd.yml b/config/locales/doorkeeper.gd.yml
index 217dca738..c5a830fc7 100644
--- a/config/locales/doorkeeper.gd.yml
+++ b/config/locales/doorkeeper.gd.yml
@@ -60,6 +60,8 @@ gd:
       error:
         title: Thachair mearachd
       new:
+        prompt_html: Bu mhiann le %{client_name} cead gus an cunntas agad inntrigeadh. Seo aplacaid threas-phàrtaidh. <strong>Mur eil earbsa agad ann, na ùghdarraich e.</strong>
+        review_permissions: Thoir sùil air na ceadan
         title: Tha feum air ùghdarrachadh
       show:
         title: Dèan lethbhreac dhen chòd ùghdarrachaidh seo ’s cuir san aplacaid e.
@@ -69,6 +71,12 @@ gd:
       confirmations:
         revoke: A bheil thu cinnteach?
       index:
+        authorized_at: Air ùghdarrachadh %{date}
+        description_html: Seo na h-aplacaidean as urrainn dhaibh an cunntas agad inntrigeadh leis an API. Ma tha aplacaid an-seo nach aithne dhut no ma tha droch-ghiùlan air aplacaid, ’s urrainn dhut an t-inntrigeadh aice a chùl-ghairm.
+        last_used_at: Air a chleachdadh %{date} an turas mu dheireadh
+        never_used: Cha deach a chleachdadh a-riamh
+        scopes: Ceadan
+        superapp: Inntearnail
         title: Na h-aplacaidean ùghdarraichte agad
     errors:
       messages:
@@ -104,6 +112,33 @@ gd:
       authorized_applications:
         destroy:
           notice: Chaidh an t-iarrtas a chùl-ghairm.
+    grouped_scopes:
+      access:
+        read: Inntrigeadh leughaidh a-mhàin
+        read/write: Inntrigeadh leughaidh is sgrìobhaidh
+        write: Inntrigeadh sgrìobhaidh a-mhàin
+      title:
+        accounts: Cunntasan
+        admin/accounts: Rianachd nan cunntas
+        admin/all: Gach gleus na rianachd
+        admin/reports: Rianachd nan gearan
+        all: A h-uile rud
+        blocks: Bacaidhean
+        bookmarks: Comharran-lìn
+        conversations: Còmhraidhean
+        crypto: Crioptachadh o cheann gu ceann
+        favourites: Annsachdan
+        filters: Criathragan
+        follow: Dàimhean
+        follows: Leantainn
+        lists: Liostaichean
+        media: Ceanglachain mheadhanan
+        mutes: Mùchaidhean
+        notifications: Brathan
+        push: Brathan putaidh
+        reports: Gearanan
+        search: Lorg
+        statuses: Postaichean
     layouts:
       admin:
         nav:
@@ -118,6 +153,7 @@ gd:
       admin:write: dàta sam bith atharrachadh air an fhrithealaiche
       admin:write:accounts: gnìomhan na maorsainneachd a ghabhail air cunntasan
       admin:write:reports: gnìomhan na maorsainneachd a ghabhail air gearanan
+      crypto: crioptachadh o cheann gu ceann a chleachdadh
       follow: dàimhean chunntasan atharrachadh
       push: na brathan putaidh agad fhaighinn
       read: dàta sam bith a’ cunntais agad a leughadh
@@ -137,6 +173,7 @@ gd:
       write:accounts: a’ phròifil agad atharrachadh
       write:blocks: cunntasan is àrainnean a bhacadh
       write:bookmarks: comharran-lìn a dhèanamh de phostaichean
+      write:conversations: còmhraidhean a mhùchadh is a sguabadh às
       write:favourites: postaichean a chur ris na h-annsachdan
       write:filters: criathragan a chruthachadh
       write:follows: leantainn air daoine
diff --git a/config/locales/doorkeeper.ku.yml b/config/locales/doorkeeper.ku.yml
index 6db8bb73d..f92a228d1 100644
--- a/config/locales/doorkeeper.ku.yml
+++ b/config/locales/doorkeeper.ku.yml
@@ -31,7 +31,7 @@ ku:
       form:
         error: Wey li min! kontrol bikeku form çewtî tê de tune
       help:
-        native_redirect_uri: Bo testên herêmî %{native_redirect_uri} bikar bîne
+        native_redirect_uri: Bo testên herêmî %{native_redirect_uri} bi kar bîne
         redirect_uri: Serê URl de rêzek bikarbînin
         scopes: Berfirehî bi valahîyan re veqetîne. Bo bikaranîna berfirehî ya standard vala bihêle.
       index:
@@ -81,7 +81,7 @@ ku:
     errors:
       messages:
         access_denied: Xwedîyê çavkanîyê an jî destûrmendê rajeker daxwazî red kirin.
-        credential_flow_not_configured: Herikîna pêborînê bawername ya xwediyê çavkaniyê, ji ber Doorkeeper.configure.resource_owner_from_credentials nehat pevsazkirin.
+        credential_flow_not_configured: Herikîna borînpeyvê bawername ya xwediyê çavkaniyê, ji ber Doorkeeper.configure.resource_owner_from_credentials nehat pevsazkirin.
         invalid_client: Erêkirina nasnameyê rajegir ji ber rajegirê nediyar têk çû, erêkirina nasnameyê rajegir di nav da tinne an jî rêbaza erêkirinê ne piştgirêdayî ye.
         invalid_grant: Mafê ku hatiye peyda kirin ne derbasdar e, qediya ye, pûç e, girêdana ya ku di daxwaza mafê de tê bikaranîn li hev nagire an jî rajegirekî din hildaye.
         invalid_redirect_uri: Girêdan beralîkirî ya di nav da ne derbasdar e.
diff --git a/config/locales/doorkeeper.pt-BR.yml b/config/locales/doorkeeper.pt-BR.yml
index 7c77af88b..93cd0c55a 100644
--- a/config/locales/doorkeeper.pt-BR.yml
+++ b/config/locales/doorkeeper.pt-BR.yml
@@ -113,6 +113,7 @@ pt-BR:
         accounts: Contas
         all: Tudo
         blocks: Blocos
+        bookmarks: Salvos
         conversations: Conversas
         crypto: Criptografia de ponta a ponta
         favourites: Favoritos
diff --git a/config/locales/doorkeeper.uk.yml b/config/locales/doorkeeper.uk.yml
index 7d522497d..e9000cf46 100644
--- a/config/locales/doorkeeper.uk.yml
+++ b/config/locales/doorkeeper.uk.yml
@@ -60,6 +60,7 @@ uk:
       error:
         title: Сталася помилка
       new:
+        review_permissions: Переглянути дозволи
         title: Необхідна авторизація
       show:
         title: Скопіюйте цей код авторизації та вставте його у додаток.
@@ -69,8 +70,11 @@ uk:
       confirmations:
         revoke: Ви впевнені?
       index:
+        authorized_at: Авторизовано %{date}
+        last_used_at: Востаннє використано %{date}
         never_used: Ніколи не використовувалися
         scopes: Дозволи
+        superapp: Внутрішній
         title: Ваші авторизовані додатки
     errors:
       messages:
@@ -107,17 +111,27 @@ uk:
         destroy:
           notice: Авторизацію додатка відкликано.
     grouped_scopes:
+      access:
+        read: Доступ без права внесення змін
+        read/write: Доступ до читання і запису
+        write: Доступ лише для запису
       title:
         accounts: Облікові записи
+        admin/accounts: Адміністрація облікових записів
+        admin/all: Усі адміністративні функції
         admin/reports: Адміністрація звітів
         all: Усе
         blocks: Блокування
         bookmarks: Закладки
         conversations: Бесіди
         crypto: Наскрізне шифрування
+        favourites: Вподобане
         filters: Фільтри
+        follow: Взаємозв'язки
+        follows: Підписки
         lists: Списки
         media: Мультимедійні вкладення
+        mutes: Заглушені
         notifications: Сповіщення
         push: Push-сповіщення
         reports: Скарги
@@ -157,6 +171,7 @@ uk:
       write:accounts: змінювати ваш профіль
       write:blocks: блокувати облікові записи і домени
       write:bookmarks: додавати пости в закладки
+      write:conversations: заглушити і видалити розмови
       write:favourites: вподобані статуси
       write:filters: створювати фільтри
       write:follows: підписуйтесь на людей
diff --git a/config/locales/es-AR.yml b/config/locales/es-AR.yml
index 2acc958a7..36b46eb47 100644
--- a/config/locales/es-AR.yml
+++ b/config/locales/es-AR.yml
@@ -168,7 +168,6 @@ es-AR:
       previous_strikes_description_html:
         one: Esta cuenta tiene <strong>un</strong> incumplimiento.
         other: Esta cuenta tiene <strong>%{count}</strong> incumplimientos.
-        zero: Esta cuenta está <strong>en buen estado</strong>.
       promote: Promover
       protocol: Protocolo
       public: Pública
@@ -530,7 +529,6 @@ es-AR:
       known_accounts:
         one: "%{count} cuenta conocida"
         other: "%{count} cuentas conocidas"
-        zero: Ninguna cuenta conocida
       moderation:
         all: Todas
         limited: Limitadas
@@ -775,6 +773,11 @@ es-AR:
     system_checks:
       database_schema_check:
         message_html: Hay migraciones pendientes de la base de datos. Por favor, ejecutalas para asegurarte de que la aplicación funciona según lo esperado
+      elasticsearch_running_check:
+        message_html: No se pudo conectar a Elasticsearch. Por favor, revisá que se esté ejecutando, o deshabilitá la búsqueda de texto completo
+      elasticsearch_version_check:
+        message_html: 'Versión incompatible de Elasticsearch: %{value}'
+        version_comparison: Se está ejecutando la versión %{running_version} de Elasticsearch, mientras que la versión requerida es la %{required_version}
       rules_check:
         action: Administrar reglas del servidor
         message_html: No definiste ninguna regla del servidor.
@@ -795,9 +798,8 @@ es-AR:
         disallow: Rechazar enlace
         disallow_provider: Rechazar medio
         shared_by_over_week:
-          one: Compartido por una persona en la última semana
-          other: Compartido por %{count} personas en la última semana
-          zero: Compartido por nadie en la última semana
+          one: Compartido por una persona durante la última semana
+          other: Compartido por %{count} personas durante la última semana
         title: Enlaces en tendencia
         usage_comparison: Compartido %{today} veces hoy, comparado con la/s %{yesterday} vez/veces de ayer
       pending_review: Revisión pendiente
@@ -838,9 +840,8 @@ es-AR:
         usable: Pueden usarse
         usage_comparison: Usadas %{today} veces hoy, comparado con la/s %{yesterday} vez/veces de ayer
         used_by_over_week:
-          one: Usada por una persona en la última semana
-          other: Usada por %{count} personas en la última semana
-          zero: Usada por nadie en la última semana
+          one: Usada por una persona durante la última semana
+          other: Usada por %{count} personas durante la última semana
       title: Tendencias
     warning_presets:
       add_new: Agregar nuevo
diff --git a/config/locales/es-MX.yml b/config/locales/es-MX.yml
index da321d7ee..17af40f2c 100644
--- a/config/locales/es-MX.yml
+++ b/config/locales/es-MX.yml
@@ -165,10 +165,6 @@ es-MX:
       pending: Revisión pendiente
       perform_full_suspension: Suspender
       previous_strikes: Amonestaciones anteriores
-      previous_strikes_description_html:
-        one: Esta cuenta tiene <strong>una</strong> amonestación.
-        other: Esta cuenta tiene <strong>%{count}</strong> amonestaciones.
-        zero: Esta cuenta está <strong>en buen estado</strong>.
       promote: Promocionar
       protocol: Protocolo
       public: Público
@@ -490,6 +486,7 @@ es-MX:
           other: Intentos fallidos en %{count} días diferentes.
         no_failures_recorded: No hay fallos en el registro.
         title: Disponibilidad
+        warning: El último intento de conexión a este servidor no ha tenido éxito
       back_to_all: Todos
       back_to_limited: Limitados
       back_to_warning: Advertencia
@@ -526,10 +523,6 @@ es-MX:
       delivery_error_hint: Si la entrega no es posible a lo largo de %{count} días, se marcará automáticamente como no entregable.
       destroyed_msg: Los datos de %{domain} están ahora en cola para su inminente eliminación.
       empty: No se encontraron dominios.
-      known_accounts:
-        one: "%{count} cuenta conocida"
-        other: "%{count} cuentas conocidas"
-        zero: Ninguna cuenta conocida
       moderation:
         all: Todos
         limited: Limitado
@@ -774,6 +767,11 @@ es-MX:
     system_checks:
       database_schema_check:
         message_html: Hay migraciones pendientes de la base de datos. Por favor, ejecútalas para asegurarte de que la aplicación funciona como debería
+      elasticsearch_running_check:
+        message_html: No se pudo conectar a Elasticsearch. Por favor, comprueba que está ejecutándose, o desactiva la búsqueda de texto completo
+      elasticsearch_version_check:
+        message_html: 'Versión incompatible de Elasticsearch: %{value}'
+        version_comparison: Elasticsearch %{running_version} se está ejecutando pero se necesita Elasticsearch %{required_version}
       rules_check:
         action: Administrar reglas del servidor
         message_html: No ha definido ninguna regla del servidor.
@@ -793,10 +791,6 @@ es-MX:
         description_html: Estos son enlaces que actualmente están siendo compartidos mucho por las cuentas desde las que tu servidor ve los mensajes. Pueden ayudar a tus usuarios a averiguar qué está pasando en el mundo. Ningún enlace se muestren públicamente hasta que autorice al dominio. También puede permitir o rechazar enlaces individuales.
         disallow: Rechazar enlace
         disallow_provider: Rechazar editor
-        shared_by_over_week:
-          one: Compartido por una persona en la última semana
-          other: Compartido por %{count} personas durante la última semana
-          zero: Compartido por nadie en la última semana
         title: Enlaces en tendencia
         usage_comparison: Compartido %{today} veces hoy, comparado a %{yesterday} ayer
       pending_review: Revisión pendiente
@@ -836,10 +830,6 @@ es-MX:
         trending_rank: Tendencia n.º %{rank}
         usable: Pueden usarse
         usage_comparison: Usada %{today} veces hoy, comparado con %{yesterday} ayer
-        used_by_over_week:
-          one: Usada por una persona durante la última semana
-          other: Usada por %{count} personas durante la última semana
-          zero: Usada por nadie en la última semana
       title: Tendencias
     warning_presets:
       add_new: Añadir nuevo
diff --git a/config/locales/es.yml b/config/locales/es.yml
index 31970da48..2ac09ea44 100644
--- a/config/locales/es.yml
+++ b/config/locales/es.yml
@@ -168,7 +168,6 @@ es:
       previous_strikes_description_html:
         one: Esta cuenta tiene <strong>una</strong> amonestación.
         other: Esta cuenta tiene <strong>%{count}</strong> amonestaciones.
-        zero: Esta cuenta está <strong>en buen estado</strong>.
       promote: Promocionar
       protocol: Protocolo
       public: Público
@@ -530,7 +529,6 @@ es:
       known_accounts:
         one: "%{count} cuenta conocida"
         other: "%{count} cuentas conocidas"
-        zero: Ninguna cuenta conocida
       moderation:
         all: Todos
         limited: Limitado
@@ -775,6 +773,11 @@ es:
     system_checks:
       database_schema_check:
         message_html: Hay migraciones pendientes de la base de datos. Por favor, ejecútalas para asegurarte de que la aplicación funciona como debería
+      elasticsearch_running_check:
+        message_html: No se pudo conectar a Elasticsearch. Por favor, comprueba que está ejecutándose, o desactiva la búsqueda de texto completo
+      elasticsearch_version_check:
+        message_html: 'Versión incompatible de Elasticsearch: %{value}'
+        version_comparison: Elasticsearch %{running_version} se está ejecutando pero se necesita Elasticsearch %{required_version}
       rules_check:
         action: Administrar reglas del servidor
         message_html: No ha definido ninguna regla del servidor.
@@ -795,9 +798,8 @@ es:
         disallow: Rechazar enlace
         disallow_provider: Rechazar medio
         shared_by_over_week:
-          one: Compartido por una persona en la última semana
+          one: Compartido por una persona durante la última semana
           other: Compartido por %{count} personas durante la última semana
-          zero: Compartido por nadie en la última semana
         title: Enlaces en tendencia
         usage_comparison: Compartido %{today} veces hoy, comparado con %{yesterday} ayer
       pending_review: Revisión pendiente
@@ -840,7 +842,6 @@ es:
         used_by_over_week:
           one: Usada por una persona durante la última semana
           other: Usada por %{count} personas durante la última semana
-          zero: Usada por nadie en la última semana
       title: Tendencias
     warning_presets:
       add_new: Añadir nuevo
diff --git a/config/locales/eu.yml b/config/locales/eu.yml
index d6f49058e..a41a77baf 100644
--- a/config/locales/eu.yml
+++ b/config/locales/eu.yml
@@ -163,10 +163,6 @@ eu:
       pending: Berrikusketa egiteke
       perform_full_suspension: Kanporatu
       previous_strikes: Aurreko abisuak
-      previous_strikes_description_html:
-        one: Kontu honek abisu <strong>bat</strong> dauka.
-        other: Kontu honek <strong>%{count}</strong> abisu dauzka.
-        zero: Kontu honek <strong>ez dauka abisurik</strong>.
       promote: Sustatu
       protocol: Protokoloa
       public: Publikoa
@@ -497,10 +493,6 @@ eu:
       delivery_error_hint: Banaketa ezin bada %{count} egunean egin, banaezin bezala markatuko da automatikoki.
       destroyed_msg: "%{domain} domeinuko datuak berehala ezabatzeko ilaran daude orain."
       empty: Ez da domeinurik aurkitu.
-      known_accounts:
-        one: Kontu ezagun %{count}
-        other: "%{count} kontu ezagun"
-        zero: Kontu ezagunik ez
       moderation:
         all: Denak
         limited: Mugatua
diff --git a/config/locales/fa.yml b/config/locales/fa.yml
index 1776505ba..2379e63da 100644
--- a/config/locales/fa.yml
+++ b/config/locales/fa.yml
@@ -16,6 +16,7 @@ fa:
     contact: تماس
     contact_missing: تنظیم نشده
     contact_unavailable: موجود نیست
+    continue_to_web: در کارهٔ وب ادامه دهید
     discover_users: یافتن کاربران
     documentation: مستندات
     federation_hint_html: با حسابی روی %{instance} می‌توانید افراد روی هر کارساز ماستودون و بیش از آن را پی بگیرید.
@@ -25,6 +26,8 @@ fa:
       این حساب، بازیگری مجازی به نمایندگی خود کارساز بوده و کاربری واقعی نیست.
       این حساب برای مقاصد خودگردانی به کار می‌رفته و نباید مسدود شود؛ مگر این که بخواهید کل نمونه را مسدود کنید که در آن صورت نیز باید از انسداد دامنه استفاده کنید.
     learn_more: بیشتر بدانید
+    logged_in_as_html: شما هم‌اکنون به عنوان %{username} وارد شده‌اید.
+    logout_before_registering: شما هم‌اکنون وارد شده‌اید.
     privacy_policy: سیاست رازداری
     rules: قوانین کارساز
     rules_html: 'در زیر خلاصه‌ای از قوانینی که در صورت علاقه به داشتن حسابی روی این کارساز ماستودون، باید رعایت کنید آمده است:'
@@ -75,10 +78,10 @@ fa:
     pin_errors:
       following: باید کاربری که می‌خواهید پیشنهاد دهید را دنبال کرده باشید
     posts:
-      one: بوق
-      other: بوق
-    posts_tab_heading: بوق‌ها
-    posts_with_replies: بوق‌ها و پاسخ‌ها
+      one: فرسته
+      other: فرسته‌ها
+    posts_tab_heading: فرسته‌ها
+    posts_with_replies: فرسته‌ها و پاسخ‌ها
     roles:
       admin: مدیر
       bot: ربات
@@ -161,6 +164,7 @@ fa:
       not_subscribed: مشترک نیست
       pending: در انتظار بررسی
       perform_full_suspension: تعلیق
+      previous_strikes: اخطارهای پیشین
       promote: ترفیع‌دادن
       protocol: پروتکل
       public: عمومی
@@ -202,8 +206,9 @@ fa:
       silence: خموشاندن
       silenced: خموشانده
       statuses: نوشته‌ها
-      strikes: اخطار های پیشین
+      strikes: اخطارهای پیشین
       subscribe: اشتراک
+      suspend: تعلیق
       suspended: تعلیق‌شده
       suspension_irreversible: داده‌های این حساب به صورت بی‌بازگشت حذف شد. می‌توانید برای قابل استفاده کردنش، آن را نامعلّق کنید، ولی این کار هیچ داده‌ای را که از پیش داده، برنخواهد گرداند.
       suspension_reversible_hint_html: حساب معلّق شد و داده‌ها به صورت کامل در %{date} برداشته خواهند شد. تا آن زمان، حساب می‌تواند بی هیچ عوارضی بازگردانده شود. اگر می‌خواهید فوراً همهٔ داده‌های حساب را بردارید، می‌توانید در پایین این کار را بکنید.
@@ -224,6 +229,7 @@ fa:
       whitelisted: فهرست مجاز
     action_logs:
       action_types:
+        approve_appeal: پذیرش درخواست تجدیدنظر
         approve_user: تایید کاربر
         assigned_to_self_report: واگذاری گزارش
         change_email_user: تغییر رایانامه برای کاربر
@@ -255,6 +261,7 @@ fa:
         enable_user: به کار انداختن کاربر
         memorialize_account: یادسپاری حساب
         promote_user: ترفیع کاربر
+        reject_appeal: رد کردن درخواست تجدیدنظر
         reject_user: رد کاربر
         remove_avatar_user: برداشتن تصویر نمایه
         reopen_report: بازگشایی گزارش
@@ -273,6 +280,7 @@ fa:
         update_domain_block: به‌روزرسانی مسدودسازی دامنه
         update_status: به‌روز رسانی وضعیت
       actions:
+        approve_appeal_html: "%{name} درخواست تجدیدنظر تصمیم مدیر را از %{target} پذیرفت"
         approve_user_html: "%{name} ثبت نام %{target} را تایید کرد"
         assigned_to_self_report_html: "%{name} رسیدگی به گزارش %{target} را به عهده گرفت"
         change_email_user_html: "%{name} نشانی رایانامهٔ کاربر %{target} را عوض کرد"
@@ -304,6 +312,7 @@ fa:
         enable_user_html: "%{name} ورود را برای کاربر %{target} فعال کرد"
         memorialize_account_html: "%{name} حساب %{target} را تبدیل به صفحهٔ یادمان کرد"
         promote_user_html: "%{name} کاربر %{target} را ترفیع داد"
+        reject_appeal_html: "%{name} درخواست تجدیدنظر تصمیم مدیر را از %{target} رد کرد"
         reject_user_html: "%{name} ثبت نام %{target} را رد کرد"
         remove_avatar_user_html: "%{name} تصویر نمایهٔ %{target} را حذف کرد"
         reopen_report_html: "%{name} گزارش %{target} را دوباره به جریان انداخت"
@@ -381,6 +390,18 @@ fa:
       media_storage: ذخیره‌ساز رسانه
       new_users: کاربران جدید
       opened_reports: گزارش باز شده
+      pending_appeals_html:
+        one: "<strong>%{count}</strong> درخواست تجدیدنظر در انتظار"
+        other: "<strong>%{count}</strong> درخواست تجدیدنظر در انتظار"
+      pending_reports_html:
+        one: "<strong>%{count}</strong> گزارش در انتظار"
+        other: "<strong>%{count}</strong> گزارش در انتظار"
+      pending_tags_html:
+        one: "<strong>%{count}</strong> هشتگ در انتظار"
+        other: "<strong>%{count}</strong> هشتگ در انتظار"
+      pending_users_html:
+        one: "<strong>%{count}</strong> کاربر در انتظار"
+        other: "<strong>%{count}</strong> کاربر در انتظار"
       resolved_reports: گزارش حل شده
       software: نرم‌افزار
       sources: منابع ثبت‌نام
@@ -389,6 +410,10 @@ fa:
       top_languages: زبان‌های فعّال‌تر
       top_servers: کاربران فعّال‌تر
       website: پایگاه وب
+    disputes:
+      appeals:
+        empty: هیچ درخواست تجدیدنظری یافت نشد
+        title: درخواست‌های تجدیدنظر
     domain_allows:
       add_new: مجاز کردن دامنه
       created_msg: دامنه با موفقیت مجاز شد
@@ -497,11 +522,11 @@ fa:
     relays:
       add_new: افزودن رلهٔ تازه
       delete: حذف
-      description_html: یک <strong>رلهٔ میان‌سروری</strong> (federation relay) یک سرور میانجی است که حجم زیادی از بوق‌های عمومی را بین سرورهای گوناگونی که عضوش می‌شوند جابه‌جا می‌کند. <strong>رله‌ها به سرورهای کوچک و متوسط کمک می‌کنند تا مطالب عمومی بیشتری را بیابند.</strong> اگر رله نباشد، این مطالب عمومی تنها وقتی پیدا می‌شوند که کاربران محلی خودشان پیگیر کاربران روی سرورهای دیگر شوند.
+      description_html: یک <strong>رلهٔ میان‌سروری</strong> (federation relay) یک سرور میانجی است که حجم زیادی از فرسته‌های عمومی را بین سرورهای گوناگونی که عضوش می‌شوند جابه‌جا می‌کند. <strong>رله‌ها به سرورهای کوچک و متوسط کمک می‌کنند تا مطالب عمومی بیشتری را بیابند.</strong> اگر رله نباشد، این مطالب عمومی تنها وقتی پیدا می‌شوند که کاربران محلی خودشان پیگیر کاربران روی سرورهای دیگر شوند.
       disable: از کار انداختن
       disabled: از کار افتاده
       enable: به کار انداختن
-      enable_hint: اگر فعال باشد، کارساز شما عضو همهٔ بوق‌های عمومی‌ای را که از این رله می‌آید می‌گیرد، و بوق‌های عمومی این کارساز را به آن می‌فرستند.
+      enable_hint: اگر فعال باشد، کارساز شما عضو همهٔ فرسته‌های عمومی‌ای را که از این رله می‌آید می‌گیرد، و فرسته‌های عمومی این کارساز را به آن می‌فرستند.
       enabled: فعال
       inbox_url: نشانی رله
       pending: در انتظار پذیرش رله
@@ -567,10 +592,10 @@ fa:
       title: قوانین کارساز
     settings:
       activity_api_enabled:
-        desc_html: تعداد بوق‌های محلی، کاربران فعال، و کاربران تازه در هر هفته
+        desc_html: تعداد فرسته‌های محلی، کاربران فعال، و کاربران تازه در هر هفته
         title: انتشار آمار تجمیعی دربارهٔ فعالیت کاربران
       bootstrap_timeline_accounts:
-        desc_html: نام‌های کاربری را با ویرگول از هم جدا کنید. تنها حساب‌های محلی و قفل‌نشده کار می‌کنند. اگر این‌جا را خالی بگذارید، به طور پیش‌فرض همهٔ مدیرهای این سرور پی‌گرفته خواهند شد.
+        desc_html: نام‌های کاربری را با ویرگول از هم جدا کنید. این حساب‌ها تضمین می‌شوند که در پیشنهادهای پی‌گیری نشان داده شوند
         title: پیگیری‌های پیش‌فرض برای کاربران تازه
       contact_information:
         email: ایمیل کاری
@@ -584,7 +609,7 @@ fa:
       domain_blocks:
         all: برای همه
         disabled: برای هیچ‌کدام
-        title: نمایش دامین‌های مسدودشده
+        title: نمایش دامنه‌های مسدود شده
         users: برای کاربران محلی واردشده
       domain_blocks_rationale:
         title: دیدن دلیل
@@ -623,7 +648,7 @@ fa:
           open: همه می‌توانند ثبت نام کنند
         title: شرایط ثبت نام
       show_known_fediverse_at_about_page:
-        desc_html: اگر انتخاب شود، بوق‌های همهٔ سرورهای دیگر نیز در پیش‌نمایش این سرور نمایش می‌یابد. وگرنه فقط بوق‌های محلی نشان داده می‌شوند.
+        desc_html: اگر از کار انداخته شود، خط‌زمانی همگانی را محدود می‌کند؛ تا فقط محتوای محلّی را نمایش دهد.
         title: نمایش سرورهای دیگر در پیش‌نمایش این سرور
       show_staff_badge:
         desc_html: نمایش علامت همکار روی صفحهٔ کاربر
@@ -653,7 +678,7 @@ fa:
         title: بگذارید که برچسب‌های پرطرفدار بدون بازبینی قبلی نمایش داده شوند
       trends:
         desc_html: برچسب‌های عمومی که پیش‌تر بازبینی شده‌اند و هم‌اینک پرطرفدارند
-        title: برچسب‌های پرطرفدار
+        title: پرطرفدارها
     site_uploads:
       delete: پرونده بارگذاری شده را پاک کنید
       destroyed_msg: بارگذاری پایگاه با موفقیت حذف شد!
@@ -666,9 +691,12 @@ fa:
       deleted: پاک‌شده
       media:
         title: رسانه
-      no_status_selected: هیچ بوقی تغییری نکرد زیرا هیچ‌کدام از آن‌ها انتخاب نشده بودند
+      no_status_selected: هیچ فرسته‌ای تغییری نکرد زیرا هیچ‌کدام از آن‌ها انتخاب نشده بودند
       title: نوشته‌های حساب
       with_media: دارای عکس یا ویدیو
+    strikes:
+      appeal_approved: درخواست تجدیدنظر کرد
+      appeal_pending: درخواست تجدیدنظر در انتظار
     system_checks:
       database_schema_check:
         message_html: تعداد مهاجرت پایگاه داده در انتظار انجام هستند. لطفا آن‌ها را اجرا کنید تا اطمینان یابید که برنامه مطابق انتظار رفتار خواهد کرد
@@ -707,6 +735,7 @@ fa:
         not_listable: پیشنهاد نخواهد شد
         not_usable: غیر قابل استفاده
         title: برچسب‌های پرطرفدار
+        trending_rank: 'پرطرفدار #%{rank}'
         usable: قابل استفاده
       title: پرطرفدار
     warning_presets:
@@ -716,6 +745,10 @@ fa:
       empty: هنز هیچ پیش‌تنظیم هشداری را تعریف نکرده‌اید.
       title: مدیریت هشدارهای پیش‌فرض
   admin_mailer:
+    new_appeal:
+      actions:
+        none: یک هشدار
+        silence: برای محدود کردن حساب آنها
     new_pending_account:
       body: جزئیات حساب تازه این‌جاست. شما می‌توانید آن را تأیید یا رد کنید.
       subject: حساب تازه‌ای در %{instance} نیازمند بررسی است (%{username})
@@ -723,6 +756,9 @@ fa:
       body: کاربر %{reporter} کاربر %{target} را گزارش داد
       body_remote: کسی از %{domain} گزارش %{target} را فرستاده
       subject: گزارش تازه‌ای برای %{instance} (#%{id})
+    new_trends:
+      new_trending_links:
+        no_approved_links: در حال حاضر هیچ پیوند پرطرفداری پذیرفته نشده است.
   aliases:
     add_new: ساختن نام مستعار
     created_msg: نام مستعار تازه با موفقیت ساخته شد. الان می‌توانید انتقال از حساب قدیمی را آغاز کنید.
@@ -741,7 +777,7 @@ fa:
       guide_link: https://crowdin.com/project/mastodon
       guide_link_text: همه می‌توانند کمک کنند.
     sensitive_content: محتوای حساس
-    toot_layout: آرایش بوق
+    toot_layout: آرایش فرسته
   application_mailer:
     notification_preferences: تغییر ترجیحات ایمیل
     salutation: "%{name}،"
@@ -861,6 +897,18 @@ fa:
     directory: شاخهٔ نمایه
     explanation: کاربران را بر اساس علاقه‌مندی‌هایشان بیابید
     explore_mastodon: گشت و گذار در %{title}
+  disputes:
+    strikes:
+      appeal: درخواست تجدیدنظر
+      appeal_rejected: درخواست تجدیدنظر رد شده است
+      appeal_submitted_at: درخواست تجدیدنظر فرستاده شد
+      appeals:
+        submit: فرستادن درخواست تجدیدنظر
+      title_actions:
+        none: هشدار
+      your_appeal_approved: درخواست تجدیدنظر شما پذیرفته شد
+      your_appeal_pending: شما یک درخواست تجدیدنظر فرستادید
+      your_appeal_rejected: درخواست تجدیدنظر شما رد شد
   domain_validator:
     invalid_domain: نام دامین معتبر نیست
   errors:
@@ -892,7 +940,7 @@ fa:
     blocks: حساب‌های مسدودشده
     bookmarks: نشانک‌ها
     csv: CSV
-    domain_blocks: دامین‌های مسدودشده
+    domain_blocks: دامنه‌های مسدود شده
     lists: سیاهه‌ها
     mutes: حساب‌های بی‌صداشده
     storage: تصویرهای ذخیره‌شده
@@ -998,7 +1046,7 @@ fa:
       not_ready: پرونده‌هایی که پردازش را تمام نکرده‌اند نمی‌توانند پیوست شوند. یکبار دیگر امتحان کنید!
       too_many: نمی‌توان بیشتر از ۴ تصویر بارگذاری کرد
   migrations:
-    acct: username@domain حساب تازه
+    acct: جابه‌جایی به
     cancel: لغو انتقال
     cancel_explanation: با لغو انتقال، حساب شما دوباره فعال می‌شود، ولی این کار پیگیران شما را که به حساب دیگر منتقل شده‌اند برنمی‌گرداند.
     cancelled_msg: انتقال حساب با موفقیت لغو شد.
@@ -1067,9 +1115,9 @@ fa:
     poll:
       subject: نظرسنجی‌ای از %{name} پایان یافت
     reblog:
-      body: "%{name} نوشتهٔ شما را بازبوقید:"
-      subject: "%{name} نوشتهٔ شما را بازبوقید"
-      title: بازبوق تازه
+      body: "%{name} فرستهٔ شما را تقویت کرد:"
+      subject: "%{name} فرستهٔ شما را تقویت کرد"
+      title: تقویت تازه
     status:
       subject: "%{name} چیزی فرستاد"
   notifications:
@@ -1145,17 +1193,17 @@ fa:
     reason_html: "<strong>چرا این گام ضروریست؟</strong> ممکن است <code>%{instance}</code> کارسازی نباشد که شما رویش حساب دارید؛ پس لازم است پیش از هرچیز، به کارساز خودتان هدایتتان کنیم."
   remote_interaction:
     favourite:
-      proceed: به سمت پسندیدن این بوق
-      prompt: 'شما می‌خواهید این بوق را بپسندید:'
+      proceed: به سمت پسندیدن
+      prompt: 'شما می‌خواهید این فرسته را بپسندید:'
     reblog:
-      proceed: به سمت بازبوقیدن
-      prompt: 'شما می‌خواهید این بوق را بازببوقید:'
+      proceed: به سمت تقویت
+      prompt: 'شما می‌خواهید این فرسته را تقویت کنید:'
     reply:
       proceed: به سمت پاسخ‌دادن
-      prompt: 'شما می‌خواهید به این بوق پاسخ دهید:'
+      prompt: 'شما می‌خواهید به این فرسته پاسخ دهید:'
   scheduled_statuses:
-    over_daily_limit: شما از حد مجاز %{limit} بوق زمان‌بندی‌شده در آن روز فراتر رفته‌اید
-    over_total_limit: شما از حد مجاز %{limit} بوق زمان‌بندی‌شده فراتر رفته‌اید
+    over_daily_limit: شما از حد مجاز %{limit} فرسته زمان‌بندی‌شده در آن روز فراتر رفته‌اید
+    over_total_limit: شما از حد مجاز %{limit} فرسته زمان‌بندی‌شده فراتر رفته‌اید
     too_soon: زمان تعیین‌شده باید در آینده باشد
   sessions:
     activity: آخرین فعالیت
@@ -1233,19 +1281,19 @@ fa:
       video:
         one: "%{count} ویدیو"
         other: "%{count} ویدیو"
-    boosted_from_html: بازبوقیده از طرف %{acct_link}
+    boosted_from_html: تقویت شده از طرف %{acct_link}
     content_warning: 'هشدا محتوا: %{warning}'
     disallowed_hashtags:
       one: 'دارای هشتگ غیرمجاز: %{tags}'
       other: 'دارای هشتگ‌های غیرمجاز: %{tags}'
     errors:
       in_reply_not_found: به نظر نمی‌رسد وضعیتی که می‌خواهید به آن پاسخ دهید، وجود داشته باشد.
-    open_in_web: بازکردن در وب
+    open_in_web: گشودن در وب
     over_character_limit: از حد مجاز %{max} حرف فراتر رفتید
     pin_errors:
       limit: از این بیشتر نمی‌شود نوشته‌های ثابت داشت
       ownership: نوشته‌های دیگران را نمی‌توان ثابت کرد
-      reblog: بازبوق‌ها را نمی‌توان ثابت کرد
+      reblog: تقویت را نمی‌توان سنجاق کرد
     poll:
       total_people:
         one: "%{count} نفر"
@@ -1295,17 +1343,17 @@ fa:
       '2629746': ۱ ماه
       '31556952': ۱ سال
       '5259492': ۲ ماه
-      '604800': 1 week
+      '604800': ۱ هفته
       '63113904': ۲ سال
       '7889238': ۳ ماه
     min_age_label: کرانهٔ سن
     min_favs: نگه داشتن فرسته‌هایی با برگزینش بیش از
     min_favs_hint: هیچ یک از فرسته‌هایتان را که بیش از این تعداد برگزیده شده باشند، حذف نمی‌کند. برای حذف فرسته‌ها فارغ از تعداد برگزینش‌هایشان، خالی بگذارید
     min_reblogs: نگه داشتن فرسته‌هایی با تقویت بیش از
-    min_reblogs_hint: هیچ یک از فرسته‌هایتان را که بیش از این تعداد تق. یت شده باشند، حذف نمی‌کند. برای حذف فرسته‌ها فارغ از تعداد تقویت‌هایشان، خالی بگذارید
+    min_reblogs_hint: هیچ یک از فرسته‌هایتان را که بیش از این تعداد تقویت شده باشند، حذف نمی‌کند. برای حذف فرسته‌ها فارغ از تعداد تقویت‌هایشان، خالی بگذارید
   stream_entries:
     pinned: نوشته‌های ثابت
-    reblogged: بازبوقید
+    reblogged: تقویت شده
     sensitive_content: محتوای حساس
   tags:
     does_not_match_previous_name: با نام پیشین مطابق نیست
@@ -1417,6 +1465,15 @@ fa:
     recovery_instructions_html: اگر تلفن خود را گم کردید، می‌توانید با یکی از کدهای بازیابی زیر کنترل حساب خود را به دست بگیرید. <strong>این کدها را در جای امنی نگه دارید.</strong> مثلاً آن‌ها را چاپ کنید و کنار سایر مدارک مهم خود قرار دهید.
     webauthn: کلیدهای امنیتی
   user_mailer:
+    appeal_approved:
+      action: به حساب خودتان بروید
+      explanation: درخواست تجدیدنظر اخطار علیه حساب شما در %{strike_date} که در %{appeal_date} ارسال کرده‌اید، پذیرفته شده است. حساب شما بار دیگر در وضعیت خوبی قرار دارد.
+      subject: درخواست تجدیدنظر شما در %{date} پذیرفته شد
+      title: درخواست تجدیدنظر پذیرفته شد
+    appeal_rejected:
+      explanation: درخواست تجدیدنظر اخطار علیه حساب شما در %{strike_date} که در %{appeal_date} ارسال کرده‌اید، رد شده است.
+      subject: درخواست تجدیدنظر شما در %{date} رد شده است
+      title: درخواست تجدیدنظر رد شد
     backup_ready:
       explanation: شما یک نسخهٔ پشتیبان کامل از حساب خود را درخواست کردید. این پشتیبان الان آمادهٔ بارگیری است!
       subject: بایگانی شما آمادهٔ دریافت است
@@ -1428,6 +1485,8 @@ fa:
       subject: لطفاً تلاش برای ورود را تأیید کنید
       title: تلاش برای ورود
     warning:
+      appeal: فرستادن یک درخواست تجدیدنظر
+      appeal_description: اگر فکر می‌کنید این یک خطا است، می‌توانید یک درخواست تجدیدنظر به کارکنان %{instance} ارسال کنید.
       categories:
         spam: هرزنامه
       reason: 'دلیل:'
diff --git a/config/locales/fi.yml b/config/locales/fi.yml
index 918c505b1..1cdaed6ef 100644
--- a/config/locales/fi.yml
+++ b/config/locales/fi.yml
@@ -165,10 +165,6 @@ fi:
       pending: Odottaa tarkistusta
       perform_full_suspension: Siirrä kokonaan jäähylle
       previous_strikes: Aiemmat varoitukset
-      previous_strikes_description_html:
-        one: Tällä tilillä on <strong>yksi</strong> varoitus.
-        other: Tällä tilillä on <strong>%{count}</strong> varoitusta.
-        zero: Tämä tili on <strong>hyvässä kunnossa</strong>.
       promote: Ylennä
       protocol: Protokolla
       public: Julkinen
@@ -495,10 +491,6 @@ fi:
       delivery_error_hint: Jos toimitus ei ole mahdollista %{count} päivän aikana, se merkitään automaattisesti toimittamattomaksi.
       destroyed_msg: Tiedot %{domain} on nyt jonossa välitöntä poistoa varten.
       empty: Verkkotunnuksia ei löytynyt.
-      known_accounts:
-        one: "%{count} tunnettu tili"
-        other: "%{count} tunnettua tiliä"
-        zero: Ei tunnettua tiliä
       moderation:
         all: Kaikki
         limited: Rajoitettu
@@ -760,10 +752,6 @@ fi:
         description_html: Nämä ovat linkkejä, joita jaetaan tällä hetkellä paljon tileillä, joilta palvelimesi näkee viestejä. Se voi auttaa käyttäjiäsi saamaan selville, mitä maailmassa tapahtuu. Linkkejä ei näytetä julkisesti, ennen kuin hyväksyt julkaisijan. Voit myös sallia tai hylätä yksittäiset linkit.
         disallow: Hylkää linkki
         disallow_provider: Estä julkaisija
-        shared_by_over_week:
-          one: Jakanut yksi henkilö viimeisen viikon aikana
-          other: Jakanut %{count} henkilöä viimeisen viikon aikana
-          zero: Kukaan ei ole jakanut viimeisen viikon aikana
         title: Suositut linkit
         usage_comparison: Jaettu %{today} kertaa tänään verrattuna eilen %{yesterday}
       pending_review: Odottaa tarkistusta
@@ -803,10 +791,6 @@ fi:
         trending_rank: 'Nousussa #%{rank}'
         usable: Voidaan käyttää
         usage_comparison: Käytetty %{today} kertaa tänään, verrattuna %{yesterday} eiliseen
-        used_by_over_week:
-          one: Yhden henkilön käyttämä viimeisen viikon aikana
-          other: Käyttänyt %{count} henkilöä viimeisen viikon aikana
-          zero: Ei kenenkään käytössä viimeisen viikon aikana
       title: Trendit
     warning_presets:
       add_new: Lisää uusi
diff --git a/config/locales/fr.yml b/config/locales/fr.yml
index e3879be0a..bc1902cf8 100644
--- a/config/locales/fr.yml
+++ b/config/locales/fr.yml
@@ -166,9 +166,8 @@ fr:
       perform_full_suspension: Suspendre
       previous_strikes: Sanctions précédentes
       previous_strikes_description_html:
-        one: Ce compte a reçu <strong>une</strong> sanction.
+        one: Ce compte a reçu <strong>%{count}</strong> sanction.
         other: Ce compte a reçu <strong>%{count}</strong> sanctions.
-        zero: Ce compte est <strong>en règle</strong>.
       promote: Promouvoir
       protocol: Protocole
       public: Publique
@@ -482,8 +481,12 @@ fr:
     instances:
       availability:
         failure_threshold_reached: Le seuil de défaillance a été atteint le %{date}.
+        failures_recorded:
+          one: Tentative échouée pendant %{count} jour.
+          other: Tentatives échouées pendant %{count} jours différents.
         no_failures_recorded: Pas d'échec enregistré.
         title: Disponibilité
+        warning: La dernière tentative de connexion à ce serveur a échoué
       back_to_all: Tout
       back_to_limited: Limité
       back_to_warning: Avertissement
@@ -523,7 +526,6 @@ fr:
       known_accounts:
         one: "%{count} compte connu"
         other: "%{count} comptes connus"
-        zero: Pas de compte connu
       moderation:
         all: Tout
         limited: Limité
@@ -768,6 +770,11 @@ fr:
     system_checks:
       database_schema_check:
         message_html: Vous avez des migrations de base de données en attente. Veuillez les exécuter pour vous assurer que l'application se comporte comme prévu
+      elasticsearch_running_check:
+        message_html: Impossible de se connecter à Elasticsearch. Veuillez vérifier qu’il est en cours d’exécution ou désactiver la recherche en plein texte
+      elasticsearch_version_check:
+        message_html: 'Version d’Elasticsearch incompatible : %{value}'
+        version_comparison: Elasticsearch %{running_version} est en cours d’exécution alors que %{required_version} est requise
       rules_check:
         action: Gérer les règles du serveur
         message_html: Vous n'avez pas défini de règles pour le serveur.
@@ -788,9 +795,8 @@ fr:
         disallow: Interdire le lien
         disallow_provider: Interdire l'éditeur
         shared_by_over_week:
-          one: Partagé par une personne au cours de la semaine dernière
-          other: Partagé par %{count} personnes au cours de la semaine dernière
-          zero: Non partagé au cours de la semaine dernière
+          one: Partagé par %{count} personne au cours de la dernière semaine
+          other: Partagé par %{count} personnes au cours de la dernière semaine
         title: Liens tendances
         usage_comparison: Partagé %{today} fois aujourd'hui, comparé à %{yesterday} hier
       pending_review: En attente de révision
@@ -831,9 +837,8 @@ fr:
         usable: Peut être utilisé
         usage_comparison: Utilisé %{today} fois aujourd'hui, comparé à %{yesterday} hier
         used_by_over_week:
-          one: Utilisé par une personne au cours de la semaine dernière
-          other: Utilisé par %{count} personnes au cours de la semaine dernière
-          zero: Non utilisé au cours de la semaine dernière
+          one: Utilisé par %{count} personne au cours de la dernière semaine
+          other: Utilisé par %{count} personnes au cours de la dernière semaine
       title: Tendances
     warning_presets:
       add_new: Ajouter un nouveau
@@ -1431,6 +1436,7 @@ fr:
     disallowed_hashtags:
       one: 'contient un hashtag désactivé : %{tags}'
       other: 'contient les hashtags désactivés : %{tags}'
+    edited_at_html: Édité le %{date}
     errors:
       in_reply_not_found: Le message auquel vous essayez de répondre ne semble pas exister.
     open_in_web: Ouvrir sur le web
diff --git a/config/locales/gd.yml b/config/locales/gd.yml
index 6729b0443..0f6524fbd 100644
--- a/config/locales/gd.yml
+++ b/config/locales/gd.yml
@@ -173,10 +173,6 @@ gd:
       pending: A’ feitheamh air lèirmheas
       perform_full_suspension: Cuir à rèim
       previous_strikes: Rabhaidhean roimhe
-      previous_strikes_description_html:
-        one: Fhuair an cunntas seo <strong>aon</strong> rabhadh.
-        other: Fhuair an cunntas seo <strong>%{count}</strong> rabhaidhean.
-        zero: Tha <strong>deagh chliù</strong> aig a’ chunntas seo.
       promote: Àrdaich
       protocol: Pròtacal
       public: Poblach
@@ -381,6 +377,7 @@ gd:
       enable: Cuir an comas
       enabled: Chaidh a chur an comas
       enabled_msg: Chaidh an t-Emoji sin a chur an comas
+      image_hint: PNG no GIF suas ri %{size}
       list: Liosta
       listed: Liostaichte
       new:
@@ -485,6 +482,7 @@ gd:
         resolve: Fuasgail an àrainn
         title: Bac àrainn puist-d ùr
       no_email_domain_block_selected: Cha deach bacadh àrainn puist-d sam bith atharrachadh o nach deach gin dhiubh a thaghadh
+      resolved_dns_records_hint_html: Thèid ainm na h-àrainne fhuasgladh nan àrainnean MX a leanas agus an urra riutha-san gun gabh iad ri post-d. Ma bhacas tu àrainn MX, bacaidh seo an clàradh o sheòladh puist-d sam bith a chleachdas an aon àrainn MX fiù ’s ma bhios ainm àrainne eadar-dhealaichte ’ga sealltainn. <strong>Thoir an aire nach bac thu solaraichean puist-d mòra.</strong>
       resolved_through_html: Chaidh fuasgladh slighe %{domain}
       title: Àrainnean puist-d ’gam bacadh
     follow_recommendations:
@@ -496,11 +494,46 @@ gd:
       title: Molaidhean leantainn
       unsuppress: Aisig am moladh leantainn
     instances:
+      availability:
+        description_html:
+          few: Ma dh’fhàilligeas an lìbhrigeadh dhan àrainn fad <strong>%{count} làithean</strong>, chan fheuch sinn a-rithist leis an lìbhrigeadh ach às dèidh lìbhrigeadh fhaighinn <em>on àrainn ud fhèin</em>.
+          one: Ma dh’fhàilligeas an lìbhrigeadh dhan àrainn fad <strong>%{count} latha</strong>, chan fheuch sinn a-rithist leis an lìbhrigeadh ach às dèidh lìbhrigeadh fhaighinn <em>on àrainn ud fhèin</em>.
+          other: Ma dh’fhàilligeas an lìbhrigeadh dhan àrainn fad <strong>%{count} latha</strong>, chan fheuch sinn a-rithist leis an lìbhrigeadh ach às dèidh lìbhrigeadh fhaighinn <em>on àrainn ud fhèin</em>.
+          two: Ma dh’fhàilligeas an lìbhrigeadh dhan àrainn fad <strong>%{count} latha</strong>, chan fheuch sinn a-rithist leis an lìbhrigeadh ach às dèidh lìbhrigeadh fhaighinn <em>on àrainn ud fhèin</em>.
+        failure_threshold_reached: Chaidh stairsneach an fhàilligidh a ruigsinn %{date}.
+        failures_recorded:
+          few: Oidhirp a dh’fhàillig rè %{count} làithean.
+          one: Oidhirp a dh’fhàillig rè %{count} latha.
+          other: Oidhirp a dh’fhàillig rè %{count} latha.
+          two: Oidhirp a dh’fhàillig rè %{count} latha.
+        no_failures_recorded: Cha deach fàilligeadh sam bith a chlàradh.
+        title: Faotainneachd
+        warning: Cha deach leis an oidhirp mu dheireadh air ceangal ris an fhrithealaiche seo
       back_to_all: Na h-uile
       back_to_limited: Cuingichte
       back_to_warning: Rabhadh
       by_domain: Àrainn
       confirm_purge: A bheil thu cinnteach gu bheil thu airson an dàta on àrainn seo a sguabadh às gu buan?
+      content_policies:
+        comment: Nòta taobh a-staigh
+        description_html: "’S urrainn dhut poileasaidhean susbainte a mhìneachadh a thèid a chur an sàs air a h-uile cunntas on àrainn seo ’s a fo-àrainnean-se."
+        policies:
+          reject_media: Diùlt meadhanan
+          reject_reports: Diùlt gearanan
+          silence: Cuingich
+          suspend: Cuir à rèim
+        policy: Poileasaidh
+        reason: Adhbhar poblach
+        title: Poileasaidhean susbainte
+      dashboard:
+        instance_accounts_dimension: Cunntasan ’gan leantainn as trice
+        instance_accounts_measure: cunntasan ’gan stòradh
+        instance_followers_measure: an luchd-leantainn againne thall
+        instance_follows_measure: an luchd-leantainn acasan an-seo
+        instance_languages_dimension: Brod nan cànan
+        instance_media_attachments_measure: ceanglachain mheadhanan ’gan stòradh
+        instance_reports_measure: gearanan mun dèidhinn
+        instance_statuses_measure: postaichean ’gan stòradh
       delivery:
         all: Na h-uile
         clear: Falamhaich na mearachdan lìbhrigidh
@@ -512,10 +545,6 @@ gd:
       delivery_error_hint: Mura gabh a lìbhrigeadh fad %{count} là(ithean), thèid comharra a chur ris gu fèin-obrachail a dh’innseas nach gabh a lìbhrigeadh.
       destroyed_msg: Tha an dàta o %{domain} air ciutha an sguabaidh às aithghearr.
       empty: Cha deach àrainn a lorg.
-      known_accounts:
-        one: "%{count} chunntas as aithne dhuinn"
-        other: "%{count} cunntas(an) as aithne dhuinn"
-        zero: Gun chunntas as aithne dhuinn
       moderation:
         all: Na h-uile
         limited: Cuingichte
@@ -523,12 +552,14 @@ gd:
       private_comment: Beachd prìobhaideachd
       public_comment: Beachd poblach
       purge: Purgaidich
+      purge_description_html: Ma tha thu dhen bheachd gu bheil an àrainn seo far loidhne gu buan, ’s urrainn dhut a h-uile clàr cunntais ’s an dàta co-cheangailte on àrainn ud a sguabadh às san stòras agad. Dh’fhaoidte gun doir sin greis mhath.
       title: Co-nasgadh
       total_blocked_by_us: "‘Ga bhacadh leinne"
       total_followed_by_them: "’Ga leantainn leotha-san"
       total_followed_by_us: "’Ga leantainn leinne"
       total_reported: Gearanan mun dèidhinn
       total_storage: Ceanglachain mheadhanan
+      totals_time_period_hint_html: Gabhaidh na h-iomlanan gu h-ìosal a-staigh an dàta o chian nan cian.
     invites:
       deactivate_all: Cuir na h-uile à gnìomh
       filter:
@@ -584,9 +615,13 @@ gd:
       action_log: Sgrùd an loga
       action_taken_by: Chaidh an gnìomh a ghabhail le
       actions:
+        delete_description_html: Thèid na postaichean le gearan orra a sguabadh às agus rabhadh a chlàradh gus do chuideachadh ach am bi thu nas teinne le droch-ghiùlan on aon chunntas sam àm ri teachd.
+        mark_as_sensitive_description_html: Thèid comharra an fhrionasachd a chur ris na meadhanan sna postaichean le gearan orra agus rabhadh a chlàradh gus do chuideachadh ach am bi thu nas teinne le droch-ghiùlan on aon chunntas sam àm ri teachd.
         other_description_html: Seall barrachd roghainnean airson giùlan a’ chunntais a stiùireadh agus an conaltradh leis a’ chunntas a chaidh gearan a dhèanamh mu dhèidhinn a ghnàthachadh.
+        resolve_description_html: Cha dèid gnìomh sam bith a ghabhail an aghaidh a’ chunntais le gearan air agus thèid an gearan a dhùnadh gun rabhadh a chlàradh.
         silence_description_html: Chan fhaic ach an fheadhainn a tha a’ leantainn oirre mu thràth no a lorgas a làimh i a’ phròifil seo agus cuingichidh seo uiread nan daoine a ruigeas i gu mòr. Gabhaidh seo a neo-dhèanamh uair sam bith.
         suspend_description_html: Cha ghabh a’ phròifil seo agus an t-susbaint gu leòr aice inntrigeadh gus an dèid a sguabadh às air deireadh na sgeòil. Cha ghabh eadar-ghabhail a dhèanamh leis a’ chunntas. Gabhaidh seo a neo-dhèanamh am broinn 30 latha.
+      actions_description_html: Cuir romhad dè an gnìomh a ghabhas tu gus an gearan seo fhuasgladh. Ma chuireas tu peanas air a’ chunntas le gearan air, gheibh iad brath air a’ phost-d mura tagh thu an roinn-seòrsa <strong>Spama</strong>.
       add_to_report: Cuir barrachd ris a’ ghearan
       are_you_sure: A bheil thu cinnteach?
       assign_to_self: Iomruin dhomh-sa
@@ -756,6 +791,11 @@ gd:
     system_checks:
       database_schema_check:
         message_html: Tha imrichean stòir-dhàta ri dhèiligeadh ann. Ruith iad a dhèanamh cinnteach gum bi giùlan na h-aplacaid mar a bhiodhte ’n dùil
+      elasticsearch_running_check:
+        message_html: Cha b’ urrainn dhuinn ceangal ri Elasticsearch. Dearbh thu bheil e a’ ruith no cuir an lorg làn-teacsa à comas
+      elasticsearch_version_check:
+        message_html: 'Tionndadh Elasticsearch nach eil co-chòrdail: %{value}'
+        version_comparison: Tha Elasticsearch %{running_version} a ruith ach tha feum air %{required_version}
       rules_check:
         action: Stiùirich riaghailtean an fhrithealaiche
         message_html: Cha do mhìnich thu riaghailtean an fhrithealaiche fhathast.
@@ -772,23 +812,22 @@ gd:
       links:
         allow: Ceadaich an ceangal
         allow_provider: Ceadaich am foillsichear
+        description_html: Seo na ceanglaichean a tha ’gan co-roinneadh le iomadh cunntas on a chì am frithealaiche agad na postaichean. Faodaidh iad a bhith ’nan cuideachadh dhan luchd-cleachdaidh ach am faigh iad a-mach dè tha tachairt air an t-saoghal. Cha dèid ceanglaichean a shealltainn gu poblach gus an aontaich thu ris an fhoillsichear. ’S urrainn dhut ceanglaichean àraidh a cheadachadh no a dhiùltadh cuideachd.
         disallow: Na ceadaich an ceangal
         disallow_provider: Na ceadaich am foillsichear
-        shared_by_over_week:
-          one: Chaidh a cho-roinneadh le aonar rè na seachdain seo chaidh
-          other: Chaidh a cho-roinneadh le %{count} rè na seachdain seo chaidh
-          zero: Cha deach a cho-roinneadh rè na seachdain seo chaidh
         title: Ceanglaichean a’ treandadh
         usage_comparison: Chaidh a cho-roinneadh %{today} tura(i)s an-diugh an coimeas ri %{yesterday} an-dè
       pending_review: A’ feitheamh air lèirmheas
       preview_card_providers:
         allowed: Faodaidh ceanglaichean on fhoillsichear seo treandadh
+        description_html: Seo na h-àrainnean on a thèid ceanglaichean a cho-roinneadh air an fhrithealaiche agad gu tric. Cha bhi ceanglaichean a’ treandadh mura dh’aontaich thu ri àrainn a’ cheangail. Gabhaidh d’ aonta (no do dhiùltadh) a-staigh na fo-àrainnean.
         rejected: Cha treandaich ceanglaichean on fhoillsichear seo
         title: Foillsichearan
       rejected: Air a dhiùltadh
       statuses:
         allow: Ceadaich am post
         allow_account: Ceadaich an t-ùghdar
+        description_html: Seo na postaichean air a bheil am frithealaiche agad eòlach ’s a tha ’gan co-roinneadh is ’nan annsachd gu tric aig an àm seo. Faodaidh iad a bhith ’nan cuideachadh dhan luchd-cleachdaidh ùr no a thill ach an lorg iad daoine airson leantainn orra. Cha dèid postaichean a shealltainn gu poblach gus an gabh thu ris an ùghdar agus gus an aontaich an t-ùghdar gun dèid an cunntas aca a mholadh do dhaoine eile. ’S urrainn dhut postaichean àraidh a cheadachadh no a dhiùltadh cuideachd.
         disallow: Na ceadaich am post
         disallow_account: Na ceadaich an t-ùghdar
         not_discoverable: Cha do chuir an t-ùghdar roimhe gun gabh a lorg
@@ -806,6 +845,7 @@ gd:
           tag_servers_dimension: Brod nam frithealaichean
           tag_servers_measure: frithealaichean eadar-dhealaichte
           tag_uses_measure: cleachdaidhean iomlan
+        description_html: Seo na tagaichean hais a nochdas ann an grunn phostaichean a chì am frithealaiche agad aig an àm seo. Faodaidh iad a bhith ’nan cuideachadh dhan luchd-cleachdaidh agad ach am faigh iad a-mach cò air a tha daoine a’ bruidhinn nas trice aig an àm seo. Cha dèid tagaichean hais a shealltainn gu poblach gus an aontaich thu riutha.
         listable: Gabhaidh a mholadh
         not_listable: Cha dèid a mholadh
         not_trendable: Cha nochd e am measg nan treandaichean
@@ -816,10 +856,6 @@ gd:
         trending_rank: 'A’ treandadh #%{rank}'
         usable: Gabhaidh a chleachdadh
         usage_comparison: Chaidh a chleachdadh %{today} tura(i)s an-diugh an coimeas ri %{yesterday} an-dè
-        used_by_over_week:
-          one: Chaidh a chleachdadh le aonar rè na seachdain seo chaidh
-          other: Chaidh a chleachdadh le %{count} rè na seachdain seo chaidh
-          zero: Cha deach a chleachdadh rè na seachdain seo chaidh
       title: Treandaichean
     warning_presets:
       add_new: Cuir fear ùr ris
@@ -851,12 +887,15 @@ gd:
       body: 'Tha na nithean seo feumach air lèirmheas mus nochd iad gu poblach:'
       new_trending_links:
         no_approved_links: Chan eil ceangal a’ treandadh le aontachadh ann.
+        requirements: "’S urrainn do ghin dhe na tagraichean seo dol thairis air #%{rank} a tha aig a’ cheangal “%{lowest_link_title}” a’ treandadh as ìsle le aontachadh agus sgòr de %{lowest_link_score} air."
         title: Ceanglaichean a’ treandadh
       new_trending_statuses:
         no_approved_statuses: Chan eil post a’ treandadh le aontachadh ann.
+        requirements: "’S urrainn do ghin dhe na tagraichean seo dol thairis air #%{rank} a tha aig a’ phost %{lowest_status_url} a’ treandadh as ìsle le aontachadh agus sgòr de %{lowest_status_score} air."
         title: Postaichean a’ treandadh
       new_trending_tags:
         no_approved_tags: Chan eil taga hais a’ treandadh le aontachadh ann.
+        requirements: "’S urrainn do ghin dhe na tagraichean seo dol thairis air #%{rank} a tha aig an taga hais #%{lowest_tag_name} a’ treandadh as ìsle le aontachadh agus sgòr de %{lowest_tag_score} air."
         title: Tagaichean hais a’ treandadh
       subject: Tha treandaichean ùra a’ feitheamh air lèirmheas air %{instance}
   aliases:
@@ -1011,6 +1050,19 @@ gd:
         submit: Cuir a-null an t-ath-thagradh
       associated_report: An gearan co-cheangailte
       created_at: Ceann-là
+      description_html: Seo na gnìomhan a chaidh a ghabhail an aghaidh a’ chunntais agad agus na rabhaidhean a chaidh a chur thugad le luchd-obrach %{instance}.
+      recipient: Faightear
+      status: 'Post #%{id}'
+      status_removed: Chaidh am post a thoirt air falbh on t-siostam mu thràth
+      title: "%{action} o %{date}"
+      title_actions:
+        delete_statuses: Toirt air falbh puist
+        disable: Reòthadh cunntais
+        mark_statuses_as_sensitive: Comharra na frionasachd air postaichean
+        none: Rabhadh
+        sensitive: Comharra na frionasachd air cunntais
+        silence: Cuingeachadh cunntais
+        suspend: Cur à rèim cunntais
       your_appeal_approved: Chaidh aontachadh ris an ath-thagradh agad
       your_appeal_pending: Chuir thu ath-thagradh a-null
       your_appeal_rejected: Chaidh an t-ath-thagradh agad a dhiùltadh
@@ -1192,6 +1244,9 @@ gd:
     carry_mutes_over_text: Chaidh an cleachdaiche seo imrich o %{acct} a b’ àbhaist dhut a mhùchadh.
     copy_account_note_text: 'Da cleachdaiche air gluasad o %{acct}, seo na nòtaichean a bh’ agad mu dhèidhinn roimhe:'
   notification_mailer:
+    admin:
+      sign_up:
+        subject: Chlàraich %{name}
     digest:
       action: Seall a h-uile brath
       body: Seo geàrr-chunntas air na h-atharraichean nach fhaca thu on tadhal mu dheireadh agad %{since}
@@ -1233,6 +1288,8 @@ gd:
       title: Brosnachadh ùr
     status:
       subject: Tha %{name} air post a sgrìobhadh
+    update:
+      subject: Dheasaich %{name} post
   notifications:
     email_events: Tachartasan nam brathan puist-d
     email_events_hint: 'Tagh na tachartasan dhan a bheil thu airson brathan fhaighinn:'
@@ -1314,6 +1371,9 @@ gd:
     reply:
       proceed: Lean air adhart gus freagairt
       prompt: 'Tha thu airson freagairt dhan phost seo:'
+  reports:
+    errors:
+      invalid_rules: gun iomradh air riaghailtean dligheach
   scheduled_statuses:
     over_daily_limit: Chaidh thu thar na crìoch de %{limit} post(aichean) sgeidealaichte an-diugh
     over_total_limit: Chaidh thu thar na crìoch de %{limit} post(aichean) sgeidealaichte
@@ -1380,6 +1440,7 @@ gd:
     profile: Pròifil
     relationships: Dàimhean leantainn
     statuses_cleanup: Sguabadh às fèin-obrachail phostaichean
+    strikes: Rabhaidhean na maorsainneachd
     two_factor_authentication: Dearbhadh dà-cheumnach
     webauthn_authentication: Iuchraichean tèarainteachd
   statuses:
@@ -1402,11 +1463,13 @@ gd:
         two: "%{count} video"
     boosted_from_html: Brosnachadh o %{acct_link}
     content_warning: 'Rabhadh susbainte: %{warning}'
+    default_language: Co-ionnan ri cànan na h-eadar-aghaidh
     disallowed_hashtags:
       few: "– bha na tagaichean hais toirmisgte seo ann: %{tags}"
       one: "– bha na tagaichean hais toirmisgte seo ann: %{tags}"
       other: "– bha na tagaichean hais toirmisgte seo ann: %{tags}"
       two: "– bha na tagaichean hais toirmisgte seo ann: %{tags}"
+    edited_at_html: Air a dheasachadh %{date}
     errors:
       in_reply_not_found: Tha coltas nach eil am post dhan a tha thu airson freagairt ann.
     open_in_web: Fosgail air an lìon
@@ -1469,7 +1532,7 @@ gd:
       '2629746': Mìos
       '31556952': Bliadhna
       '5259492': 2 mhìos
-      '604800': 1 week
+      '604800': Seachdain
       '63113904': 2 bhliadhna
       '7889238': 3 mìosan
     min_age_label: Stairsneach aoise
@@ -1484,7 +1547,7 @@ gd:
   tags:
     does_not_match_previous_name: "– chan eil seo a-rèir an ainm roimhe"
   terms:
-    body_html: '<h2>Poileasaidh prìobhaideachd</h2> <h3 id="collect">Dè am fiosrachadh a chruinnicheas sinn?</h3> <ul> <li><em>Fiosrachadh bunasach a’ cunntais</em>: Ma chlàraicheas tu leis an fhrithealaiche seo, dh’fhaoidte gun dèid iarraidh ort gun cuir thu a-steach ainm-cleachdaiche, seòladh puist-d agus facal-faire. Faodaidh tu barrachd fiosrachaidh a chur ris a’ phròifil agad ma thogras tu, can ainm-taisbeanaidh agus teacsa mu do dhèidhinn agus dealbhan pròifile ’s banna-chinn a luchdadh suas. Thèid an t-ainm-cleachdaiche, an t-ainm-taisbeanaidh, an teacsa mu do dhèidhinn agus dealbhan na pròifile ’s a bhanna-chinn a shealltainn gu poblach an-còmhnaidh.</li> <li><em>Postaichean, luchd-leantainn agus fiosrachadh poblach eile</em>: Tha liosta nan daoine air a leanas tu poblach mar a tha i dhan luchd-leantainn agad. Nuair a chuireas tu a-null teachdaireachd, thèid an t-àm ’s an ceann-latha a stòradh cho math ris an aplacaid leis an do chuir thu am foirm a-null. Faodaidh ceanglachain meadhain a bhith am broinn teachdaireachdan, can dealbhan no videothan. Tha postaichean poblach agus postaichean falaichte o liostaichean ri ’m faighinn gu poblach. Nuair a bhrosnaicheas tu post air a’ phròifil agad, ’s e fiosrachadh poblach a tha sin cuideachd. Thèid na postaichean agad a lìbhrigeadh dhan luchd-leantainn agad agus is ciall dha seo gun dèid an lìbhrigeadh gu frithealaichean eile aig amannan is gun dèid lethbhreacan dhiubh a stòradh thall. Nuair a sguabas tu às post, thèid sin a lìbhrigeadh dhan luchd-leantainn agad cuideachd. Tha ath-bhlogachadh no dèanamh annsachd de phost eile poblach an-còmhnaidh.</li> <li><em>Postaichean dìreach is dhan luchd-leantainn a-mhàin</em>: Thèid a h-uile post a stòradh ’s a phròiseasadh air an fhrithealaiche. Thèid na postaichean dhan luchd-leantainn a-mhàin a lìbhrigeadh dhan luchd-leantainn agad agus dhan luchd-chleachdaidh a chaidh iomradh a dhèanamh orra sa phost. Thèid postaichean dìreach a lìbhrigeadh dhan luchd-chleachdaidh a chaidh iomradh a dhèanamh orra sa phost a-mhàin. Is ciall dha seo gun dèid an lìbhrigeadh gu frithealaichean eile aig amannan is gun dèid lethbhreacan dhiubh a stòradh thall. Nì sinn ar dìcheall gun cuingich sinn an t-inntrigeadh dha na postaichean air na daoine a fhuair ùghdarrachadh dhaibh ach dh’fhaoidte nach dèan frithealaichean eile seo. Mar sin dheth, tha e cudromach gun doir thu sùil air na frithealaichean dhan a bhuineas an luchd-leantainn agad. Faodaidh tu roghainn a chur air no dheth a leigeas leat aontachadh ri luchd-leantainn ùra no an diùltadh a làimh. <em>Thoir an aire gum faic rianairean an fhrithealaiche agus frithealaiche sam bith a gheibh am fiosrachadh na teachdaireachdan dhen leithid</em> agus gur urrainn dha na faightearan glacaidhean-sgrìn no lethbhreacan dhiubh a dhèanamh no an cho-roinneadh air dòighean eile. <em>Na co-roinn fiosrachadh cunnartach air Mastodon idir.</em></li> <li><em>IPan is meata-dàta eile</em>: Nuair a nì thu clàradh a-steach, clàraidh sinn an seòladh IP on a rinn thu clàradh a-steach cuide ri ainm aplacaid a’ bhrabhsair agad. Bidh a h-uile seisean clàraidh a-steach ri làimh dhut airson an lèirmheas agus an cùl-ghairm sna roghainnean. Thèid an seòladh IP as ùire a chleachd thu a stòradh suas ri 12 mhìos. Faodaidh sinn cuideachd logaichean an fhrithealaiche a chumail a ghabhas a-steach seòladh IP aig a h-uile iarrtas dhan fhrithealaiche againn.</li> </ul> <hr class="spacer" /> <h3 id="use">Dè na h-adhbharan air an cleachd sinn am fiosrachadh agad?</h3> <p>Seo na dòighean air an cleachd sinn fiosrachadh sam bith a chruinnich sinn uat ma dh’fhaoidte:</p> <ul> <li>Airson bun-ghleusan Mhastodon a lìbhrigeadh. Chan urrainn dhut conaltradh le susbaint càich no an t-susbaint agad fhèin a phostadh ach nuair a bhios tu air do chlàradh a-steach. Mar eisimpleir, faodaidh tu leantainn air càch ach am faic thu na postaichean aca còmhla air loidhne-ama pearsanaichte na dachaigh agad.</li> <li>Airson cuideachadh le maorsainneachd na coimhearsnachd, can airson coimeas a dhèanamh eadar an seòladh IP agad ri feadhainn eile feuch am mothaich sinn do sheachnadh toirmisg no briseadh eile nan riaghailtean.</li> <li>Faodaidh sinn an seòladh puist-d agad a chleachdadh airson fiosrachadh no brathan mu chonaltraidhean càich leis an t-susbaint agad no teachdaireachdan a chur thugad, airson freagairt ri ceasnachaidhean agus/no iarrtasan no ceistean eile.</li> </ul> <hr class="spacer" /> <h3 id="protect">Ciamar a dhìonas sinn am fiosrachadh agad?</h3> <p>Cuiridh sinn iomadh gleus tèarainteachd an sàs ach an glèidheadh sinn sàbhailteachd an fhiosrachaidh phearsanta agad nuair a chuireas tu gin a-steach, nuair a chuireas tu a-null e no nuair a nì thu inntrigeadh air. Am measg gleusan eile, thèid seisean a’ bhrabhsair agad cuide ris an trafaig eadar na h-aplacaidean agad ’s an API a dhìon le SSL agus thèid hais a dhèanamh dhen fhacal-fhaire agad le algairim aon-shligheach làidir. Faodaidh tu dearbhadh dà-cheumnach a chur an comas airson barrachd tèarainteachd a chur ris an inntrigeadh dhan chunntas agad.</p> <hr class="spacer" /> <h3 id="data-retention">Dè am poileasaidh cumail dàta againn?</h3> <p>Nì sinn ar dìcheall:</p> <ul> <li>Nach cùm sinn logaidhean an fhrithealaiche sa bheil seòlaidhean IP nan iarrtasan uile dhan fhrithealaiche seo nas fhaide na 90 latha ma chumas sinn logaichean dhen leithid idir.</li> <li>Nach cùm sinn na seòlaidhean IP a tha co-cheangailte ri cleachdaichean clàraichte nas fhaide na 12 mhìos.</li> </ul> <p>’S urrainn dhut tasg-lann iarraidh dhen t-susbaint agad ’s a luchdadh a-nuas is gabhaidh seo a-staigh na postaichean, na ceanglachain meadhain, dealbh na pròifil agus dealbh a’ bhanna-chinn agad.</p> <p>’S urrainn dhut an cunntas agad a sguabadh às gu buan uair sam bith.</p> <hr class="spacer"/> <h3 id="cookies">An cleachd sinn briosgaidhean?</h3> <p>Cleachdaidh. ’S e faidhlichean beaga a tha sna briosgaidean a thar-chuireas làrach no solaraiche seirbheise gu clàr-cruaidh a’ choimpiutair agad leis a’ bhrabhsair-lìn agad (ma cheadaicheas tu sin). Bheir na briosgaidean sin comas dhan làrach gun aithnich i am brabhsair agad agus ma tha cunntas clàraichte agad, gun co-cheangail i ris a’ chunntas chlàraichte agad e.</p> <p>Cleachdaidh sinn briosgaidean airson na roghainnean agad a thuigsinn ’s a ghlèidheadh gus an tadhail thu oirnn san àm ri teachd.</p> <hr class="spacer" /> <h3 id="disclose">Am foillsich sinn fiosrachadh sam bith gu pàrtaidhean air an taobh a-muigh?</h3> <p>Cha reic, malairt no tar-chuir sinn fiosrachadh air a dh’aithnichear thu fhèin gu pàrtaidh sam bith air an taobh a-muigh. Cha ghabh seo a-staigh treas-phàrtaidhean earbsach a chuidicheas leinn le ruith na làraich againn, le obrachadh a’ ghnìomhachais againn no gus an t-seirbheis a thoirt leat cho fada ’s a dh’aontaicheas na treas-phàrtaidhean sin gun cùm iad am fiosrachadh dìomhair. Faodaidh sinn am fiosrachadh agad fhoillseachadh cuideachd nuair a bhios sinn dhen bheachd gu bheil am foillseachadh sin iomchaidh airson gèilleadh dhan lagh, poileasaidhean na làraich againn èigneachadh no na còraichean, an sealbh no an t-sàbhailteachd againn fhèin no aig càch a dhìon.</p> <p>Dh’fhaoidte gun dèid an t-susbaint phoblach agad a luchdadh a-nuas le frithealaichean eile san lìonra. Thèid na postaichean poblach agad ’s an fheadhainn dhan luchd-leantainn a-mhàin a lìbhrigeadh dha na frithealaichean far a bheil an luchd-leantainn agad a’ còmhnaidh agus thèid na teachdaireachdan dìreach a lìbhrigeadh gu frithealaichean nam faightearan nuair a bhios iad a’ còmhnaidh air frithealaiche eile.</p> <p>Nuair a dh’ùghdarraicheas tu aplacaid gun cleachd i an cunntas agad, a-rèir sgòp nan ceadan a dh’aontaicheas tu riutha, faodaidh i fiosrachadh poblach na pròifil agad, liosta na feadhna air a bhios tu a’ leantainn, an luchd-leantainn agad, na liostaichean agad, na postaichean agad uile ’s na h-annsachdan agad inntrigeadh. Chan urrainn do dh’aplacaidean an seòladh puist-d no am facal-faire agad inntrigeadh idir.</p> <hr class="spacer" /> <h3 id="children">Cleachdadh na làraich leis a’ chloinn</h3> <p>Ma tha am frithealaiche seo san Aonadh Eòrpach (AE) no san Roinn Eaconomach na h-Eòrpa (EEA): Tha an làrach, na batharan agus na seirbheisean againn uile ag amas air an fheadhainn a tha co-dhiù 16 bliadhnaichean a dh’aois. Ma tha thu nas òige na 16 bliadhnaichean a dh’aois, tha e riatanach fon GDPR (<a href="https://en.wikipedia.org/wiki/General_Data_Protection_Regulation">General Data Protection Regulation</a>) nach cleachd thu an làrach seo.</p> <p>Ma tha am frithealaiche seo sna Stàitean Aonaichte (SAA): Tha an làrach, na batharan agus na seirbheisean againn uile ag amas air an fheadhainn a tha co-dhiù 13 bliadhnaichean a dh’aois. Ma tha thu nas òige na 16 bliadhnaichean a dh’aois, tha e riatanach fon COPPA (<a href="https://en.wikipedia.org/wiki/Children%27s_Online_Privacy_Protection_Act">Children''s Online Privacy Protection Act</a>)ha an làrach, na batharan agus na seirbheisean againn uile ag amas air an fheadhainn a tha co-dhiù 16 bliadhnaichean a dh’aois. Ma tha thu nas òige na 16 bliadhnaichean a dh’aois, tha e riatanach fon GDPR (<a href="https://en.wikipedia.org/wiki/General_Data_Protection_Regulation">General Data Protection Regulation</a>) nach cleachd thu an làrach seo.</p> <p>Ma tha am frithealaiche seo sna Stàitean Aonaichte (SAA): Tha an làrach, na batharan agus na seirbheisean againn uile ag amas air an fheadhainn a tha co-dhiù 13 bliadhnaichean a dh’aois. Ma tha thu nas òige na 16 bliadhnaichean a dh’aois, tha e riatanach fon COPPA (<a href="https://en.wikipedia.org/wiki/Children%27s_Online_Privacy_Protection_Act">Children''s Online Privacy Protection Act</a>) nach cleachd thu an làrach seo.</p> <p>Dh’fhaoidte gu bheil am frithealaiche seo fo riatanasan lagha eile ma tha e ann an uachdranas laghail eile.</p> <hr class="spacer" /> <h3 id="changes">Atharraichean air a’ phoileasaidh phrìobhaideachd againn</h3> <p>Ma chuireas sinn romhainn am poileasaidh prìobhaideachd againn atharrachadh, postaichidh sinn na h-atharraichean dhan duilleag seo.</p> <p>Tha an sgrìobhainn seo fo cheadachas CC-BY-SA. Chaidh ùrachadh an turas mu dheireadh an t-7mh dhen Mhart 2018.</p> <p>Chaidh a fhreagarrachadh o thùs o <a href="https://github.com/discourse/discourse">phoileasaidh prìobhaideachd Discourse</a>.</p> nach cleachd thu an làrach seo.</p> <p>Dh’fhaoidte gu bheil am frithealaiche seo fo riatanasan lagha eile ma tha e ann an uachdranas laghail eile.</p> <hr class="spacer" /> <h3 id="changes">Atharraichean air a’ phoileasaidh phrìobhaideachd againn</h3> <p>Ma chuireas sinn romhainn am poileasaidh prìobhaideachd againn atharrachadh, postaichidh sinn na h-atharraichean dhan duilleag seo.</p> <p>Tha an sgrìobhainn seo fo cheadachas CC-BY-SA. Chaidh ùrachadh an turas mu dheireadh an t-7mh dhen Mhart 2018.</p> <p>Chaidh a fhreagarrachadh o thùs o <a href="https://github.com/discourse/discourse">phoileasaidh prìobhaideachd Discourse</a>.</p>
+    body_html: '<h2>Poileasaidh prìobhaideachd</h2> <h3 id="collect">Dè am fiosrachadh a chruinnicheas sinn?</h3> <ul> <li><em>Fiosrachadh bunasach a’ cunntais</em>: Ma chlàraicheas tu leis an fhrithealaiche seo, dh’fhaoidte gun dèid iarraidh ort gun cuir thu a-steach ainm-cleachdaiche, seòladh puist-d agus facal-faire. Faodaidh tu barrachd fiosrachaidh a chur ris a’ phròifil agad ma thogras tu, can ainm-taisbeanaidh agus teacsa mu do dhèidhinn agus dealbhan pròifile ’s banna-chinn a luchdadh suas. Thèid an t-ainm-cleachdaiche, an t-ainm-taisbeanaidh, an teacsa mu do dhèidhinn agus dealbhan na pròifile ’s a bhanna-chinn a shealltainn gu poblach an-còmhnaidh.</li> <li><em>Postaichean, luchd-leantainn agus fiosrachadh poblach eile</em>: Tha liosta nan daoine air a leanas tu poblach mar a tha i dhan luchd-leantainn agad. Nuair a chuireas tu a-null teachdaireachd, thèid an t-àm ’s an ceann-latha a stòradh cho math ris an aplacaid leis an do chuir thu am foirm a-null. Faodaidh ceanglachain meadhain a bhith am broinn teachdaireachdan, can dealbhan no videothan. Tha postaichean poblach agus postaichean falaichte o liostaichean ri ’m faighinn gu poblach. Nuair a bhrosnaicheas tu post air a’ phròifil agad, ’s e fiosrachadh poblach a tha sin cuideachd. Thèid na postaichean agad a lìbhrigeadh dhan luchd-leantainn agad agus is ciall dha seo gun dèid an lìbhrigeadh gu frithealaichean eile aig amannan is gun dèid lethbhreacan dhiubh a stòradh thall. Nuair a sguabas tu às post, thèid sin a lìbhrigeadh dhan luchd-leantainn agad cuideachd. Tha ath-bhlogachadh no dèanamh annsachd de phost eile poblach an-còmhnaidh.</li> <li><em>Postaichean dìreach is dhan luchd-leantainn a-mhàin</em>: Thèid a h-uile post a stòradh ’s a phròiseasadh air an fhrithealaiche. Thèid na postaichean dhan luchd-leantainn a-mhàin a lìbhrigeadh dhan luchd-leantainn agad agus dhan luchd-chleachdaidh a chaidh iomradh a dhèanamh orra sa phost. Thèid postaichean dìreach a lìbhrigeadh dhan luchd-chleachdaidh a chaidh iomradh a dhèanamh orra sa phost a-mhàin. Is ciall dha seo gun dèid an lìbhrigeadh gu frithealaichean eile aig amannan is gun dèid lethbhreacan dhiubh a stòradh thall. Nì sinn ar dìcheall gun cuingich sinn an t-inntrigeadh dha na postaichean air na daoine a fhuair ùghdarrachadh dhaibh ach dh’fhaoidte nach dèan frithealaichean eile seo. Mar sin dheth, tha e cudromach gun doir thu sùil air na frithealaichean dhan a bhuineas an luchd-leantainn agad. Faodaidh tu roghainn a chur air no dheth a leigeas leat aontachadh ri luchd-leantainn ùra no an diùltadh a làimh. <em>Thoir an aire gum faic rianairean an fhrithealaiche agus frithealaiche sam bith a gheibh am fiosrachadh na teachdaireachdan dhen leithid</em> agus gur urrainn dha na faightearan glacaidhean-sgrìn no lethbhreacan dhiubh a dhèanamh no an cho-roinneadh air dòighean eile. <em>Na co-roinn fiosrachadh cunnartach air Mastodon idir.</em></li> <li><em>IPan is meata-dàta eile</em>: Nuair a nì thu clàradh a-steach, clàraidh sinn an seòladh IP on a rinn thu clàradh a-steach cuide ri ainm aplacaid a’ bhrabhsair agad. Bidh a h-uile seisean clàraidh a-steach ri làimh dhut airson an lèirmheas agus an cùl-ghairm sna roghainnean. Thèid an seòladh IP as ùire a chleachd thu a stòradh suas ri 12 mhìos. Faodaidh sinn cuideachd logaichean an fhrithealaiche a chumail a ghabhas a-steach seòladh IP aig a h-uile iarrtas dhan fhrithealaiche againn.</li> </ul> <hr class="spacer" /> <h3 id="use">Dè na h-adhbharan air an cleachd sinn am fiosrachadh agad?</h3> <p>Seo na dòighean air an cleachd sinn fiosrachadh sam bith a chruinnich sinn uat ma dh’fhaoidte:</p> <ul> <li>Airson bun-ghleusan Mhastodon a lìbhrigeadh. Chan urrainn dhut eadar-ghnìomh a ghabhail le susbaint càich no an t-susbaint agad fhèin a phostadh ach nuair a bhios tu air do chlàradh a-steach. Mar eisimpleir, faodaidh tu leantainn air càch ach am faic thu na postaichean aca còmhla air loidhne-ama pearsanaichte na dachaigh agad.</li> <li>Airson cuideachadh le maorsainneachd na coimhearsnachd, can airson coimeas a dhèanamh eadar an seòladh IP agad ri feadhainn eile feuch am mothaich sinn do sheachnadh toirmisg no briseadh eile nan riaghailtean.</li> <li>Faodaidh sinn an seòladh puist-d agad a chleachdadh airson fiosrachadh no brathan mu eadar-ghnìomhan a ghabh càch leis an t-susbaint agad no teachdaireachdan a chur thugad, airson freagairt ri ceasnachaidhean agus/no iarrtasan no ceistean eile.</li> </ul> <hr class="spacer" /> <h3 id="protect">Ciamar a dhìonas sinn am fiosrachadh agad?</h3> <p>Cuiridh sinn iomadh gleus tèarainteachd an sàs ach an glèidheadh sinn sàbhailteachd an fhiosrachaidh phearsanta agad nuair a chuireas tu gin a-steach, nuair a chuireas tu a-null e no nuair a nì thu inntrigeadh air. Am measg gleusan eile, thèid seisean a’ bhrabhsair agad cuide ris an trafaig eadar na h-aplacaidean agad ’s an API a dhìon le SSL agus thèid hais a dhèanamh dhen fhacal-fhaire agad le algairim aon-shligheach làidir. Faodaidh tu dearbhadh dà-cheumnach a chur an comas airson barrachd tèarainteachd a chur ris an inntrigeadh dhan chunntas agad.</p> <hr class="spacer" /> <h3 id="data-retention">Dè am poileasaidh cumail dàta againn?</h3> <p>Nì sinn ar dìcheall:</p> <ul> <li>Nach cùm sinn logaidhean an fhrithealaiche sa bheil seòlaidhean IP nan iarrtasan uile dhan fhrithealaiche seo nas fhaide na 90 latha ma chumas sinn logaichean dhen leithid idir.</li> <li>Nach cùm sinn na seòlaidhean IP a tha co-cheangailte ri cleachdaichean clàraichte nas fhaide na 12 mhìos.</li> </ul> <p>’S urrainn dhut tasg-lann iarraidh dhen t-susbaint agad ’s a luchdadh a-nuas is gabhaidh seo a-staigh na postaichean, na ceanglachain meadhain, dealbh na pròifil agus dealbh a’ bhanna-chinn agad.</p> <p>’S urrainn dhut an cunntas agad a sguabadh às gu buan uair sam bith.</p> <hr class="spacer"/> <h3 id="cookies">An cleachd sinn briosgaidhean?</h3> <p>Cleachdaidh. ’S e faidhlichean beaga a tha sna briosgaidean a thar-chuireas làrach no solaraiche seirbheise gu clàr-cruaidh a’ choimpiutair agad leis a’ bhrabhsair-lìn agad (ma cheadaicheas tu sin). Bheir na briosgaidean sin comas dhan làrach gun aithnich i am brabhsair agad agus ma tha cunntas clàraichte agad, gun co-cheangail i ris a’ chunntas chlàraichte agad e.</p> <p>Cleachdaidh sinn briosgaidean airson na roghainnean agad a thuigsinn ’s a ghlèidheadh gus an tadhail thu oirnn san àm ri teachd.</p> <hr class="spacer" /> <h3 id="disclose">Am foillsich sinn fiosrachadh sam bith gu pàrtaidhean air an taobh a-muigh?</h3> <p>Cha reic, malairt no tar-chuir sinn fiosrachadh air a dh’aithnichear thu fhèin gu pàrtaidh sam bith air an taobh a-muigh. Cha ghabh seo a-staigh treas-phàrtaidhean earbsach a chuidicheas leinn le ruith na làraich againn, le obrachadh a’ ghnìomhachais againn no gus an t-seirbheis a thoirt leat cho fada ’s a dh’aontaicheas na treas-phàrtaidhean sin gun cùm iad am fiosrachadh dìomhair. Faodaidh sinn am fiosrachadh agad fhoillseachadh cuideachd nuair a bhios sinn dhen bheachd gu bheil am foillseachadh sin iomchaidh airson gèilleadh dhan lagh, poileasaidhean na làraich againn èigneachadh no na còraichean, an sealbh no an t-sàbhailteachd againn fhèin no aig càch a dhìon.</p> <p>Dh’fhaoidte gun dèid an t-susbaint phoblach agad a luchdadh a-nuas le frithealaichean eile san lìonra. Thèid na postaichean poblach agad ’s an fheadhainn dhan luchd-leantainn a-mhàin a lìbhrigeadh dha na frithealaichean far a bheil an luchd-leantainn agad a’ còmhnaidh agus thèid na teachdaireachdan dìreach a lìbhrigeadh gu frithealaichean nam faightearan nuair a bhios iad a’ còmhnaidh air frithealaiche eile.</p> <p>Nuair a dh’ùghdarraicheas tu aplacaid gun cleachd i an cunntas agad, a-rèir sgòp nan ceadan a dh’aontaicheas tu riutha, faodaidh i fiosrachadh poblach na pròifil agad, liosta na feadhna air a bhios tu a’ leantainn, an luchd-leantainn agad, na liostaichean agad, na postaichean agad uile ’s na h-annsachdan agad inntrigeadh. Chan urrainn do dh’aplacaidean an seòladh puist-d no am facal-faire agad inntrigeadh idir.</p> <hr class="spacer" /> <h3 id="children">Cleachdadh na làraich leis a’ chloinn</h3> <p>Ma tha am frithealaiche seo san Aonadh Eòrpach (AE) no san Roinn Eaconomach na h-Eòrpa (EEA): Tha an làrach, na batharan agus na seirbheisean againn uile ag amas air an fheadhainn a tha co-dhiù 16 bliadhnaichean a dh’aois. Ma tha thu nas òige na 16 bliadhnaichean a dh’aois, tha e riatanach fon GDPR (<a href="https://en.wikipedia.org/wiki/General_Data_Protection_Regulation">General Data Protection Regulation</a>) nach cleachd thu an làrach seo.</p> <p>Ma tha am frithealaiche seo sna Stàitean Aonaichte (SAA): Tha an làrach, na batharan agus na seirbheisean againn uile ag amas air an fheadhainn a tha co-dhiù 13 bliadhnaichean a dh’aois. Ma tha thu nas òige na 16 bliadhnaichean a dh’aois, tha e riatanach fon COPPA (<a href="https://en.wikipedia.org/wiki/Children%27s_Online_Privacy_Protection_Act">Children''s Online Privacy Protection Act</a>)ha an làrach, na batharan agus na seirbheisean againn uile ag amas air an fheadhainn a tha co-dhiù 16 bliadhnaichean a dh’aois. Ma tha thu nas òige na 16 bliadhnaichean a dh’aois, tha e riatanach fon GDPR (<a href="https://en.wikipedia.org/wiki/General_Data_Protection_Regulation">General Data Protection Regulation</a>) nach cleachd thu an làrach seo.</p> <p>Ma tha am frithealaiche seo sna Stàitean Aonaichte (SAA): Tha an làrach, na batharan agus na seirbheisean againn uile ag amas air an fheadhainn a tha co-dhiù 13 bliadhnaichean a dh’aois. Ma tha thu nas òige na 16 bliadhnaichean a dh’aois, tha e riatanach fon COPPA (<a href="https://en.wikipedia.org/wiki/Children%27s_Online_Privacy_Protection_Act">Children''s Online Privacy Protection Act</a>) nach cleachd thu an làrach seo.</p> <p>Dh’fhaoidte gu bheil am frithealaiche seo fo riatanasan lagha eile ma tha e ann an uachdranas laghail eile.</p> <hr class="spacer" /> <h3 id="changes">Atharraichean air a’ phoileasaidh phrìobhaideachd againn</h3> <p>Ma chuireas sinn romhainn am poileasaidh prìobhaideachd againn atharrachadh, postaichidh sinn na h-atharraichean dhan duilleag seo.</p> <p>Tha an sgrìobhainn seo fo cheadachas CC-BY-SA. Chaidh ùrachadh an turas mu dheireadh an t-7mh dhen Mhart 2018.</p> <p>Chaidh a fhreagarrachadh o thùs o <a href="https://github.com/discourse/discourse">phoileasaidh prìobhaideachd Discourse</a>.</p>
 
       '
     title: Teirmichean na seirbheise ⁊ poileasaidh prìobhaideachd %{instance}
@@ -1513,6 +1576,15 @@ gd:
     recovery_instructions_html: Ma chailleas tu an t-inntrigeadh dhan fhòn agad, ’s urrainn dhut fear dhe na còdan aisig gu h-ìosal a chleachdadh airson faighinn a-steach dhan chunntas agad a-rithist. <strong>Cùm na còdan aisig sàbhailte</strong>. Mar eisimpleir, ’s urrainn dhut an clò-bhualadh ’s a chumail far a bheil thu a’ cumail na sgrìobhainnean cudromach eile agad.
     webauthn: Iuchraichean tèarainteachd
   user_mailer:
+    appeal_approved:
+      action: Tadhail air a’ chunntas agad
+      explanation: Chaidh aontachadh ris an ath-thagradh agad air an rabhadh o %{strike_date} a chuir thu a-null %{appeal_date}. Tha deagh chliù air a’ chunntas agad a-rithist.
+      subject: Chaidh aontachadh ris an ath-thagradh agad o %{date}
+      title: Chaidh aontachadh ri ath-thagradh
+    appeal_rejected:
+      explanation: Chaidh an t-ath-thagradh agad air an rabhadh o %{strike_date} a chuir thu a-null %{appeal_date} a dhiùltadh.
+      subject: Chaidh an t-ath-thagradh agad o %{date} a dhiùltadh
+      title: Chaidh ath-thagradh a dhiùltadh
     backup_ready:
       explanation: Dh’iarr thu lethbhreac-glèidhidh slàn dhen chunntas Mastodon agad. Tha e deis ri luchdadh a-nuas a-nis!
       subject: Tha an tasg-lann agad deis ri luchdadh a-nuas
@@ -1524,25 +1596,34 @@ gd:
       subject: Dearbh an oidhirp air clàradh a-steach
       title: Oidhirp clàraidh a-steach
     warning:
+      appeal: Cuir ath-thagradh a-null
+      appeal_description: Ma tha thu dhen bheachd gur e mearachd a th’ ann, ’s urrainn dhut ath-thagradh a chur a-null gun sgioba aig %{instance}.
       categories:
         spam: Spama
         violation: Tha an t-susbaint a’ briseadh na riaghailtean giùlain a leanas
       explanation:
+        delete_statuses: Thathar dhen bheachd gu bheil cuid dhe na postaichean agad a’ briseadh riaghailt no riaghailtean giùlain agus chaidh an toirt air falbh le maoir %{instance} an uairsin.
         disable: Chan urrainn dhut an cunntas agad a chleachdadh tuilleadh ach mairidh a’ phròifil ’s an dàta eile agad. Faodaidh tu lethbhreac-glèidhidh dhen dàta agad iarraidh, roghainnean a’ chunntais atharrachadh no an cunntas agad a sguabadh às.
+        mark_statuses_as_sensitive: Chuir maoir %{instance} comharra na frionasachd ri cuid dhe na postaichean agad. Is ciall dha seo gum feumar gnogag a thoirt air na meadhanan sna postaichean mus faicear ro-shealladh. ’S urrainn dhut fhèin comharra a chur gu bheil meadhan frionasach nuair a sgrìobhas tu post san à ri teachd.
         sensitive: O seo a-mach, thèid comharra na frionasachd a chur ri faidhle meadhain sam bith a luchdaicheas tu suas agus thèid am falach air cùlaibh rabhaidh a ghabhas briogadh air.
         silence: "’S urrainn dhut an cunntas agad a chleachdadh fhathast ach chan fhaic ach na daoine a tha a’ leantainn ort mu thràth na postaichean agad air an fhrithealaiche seo agus dh’fhaoidte gun dèid d’ às-dhùnadh o iomadh gleus luirg. Gidheadh, faodaidh càch leantainn ort a làimh fhathast."
         suspend: Chan urrainn dhut an cunntas agad a chleachdadh tuilleadh agus chan fhaigh thu grèim air a’ phròifil no air an dàta eile agad. ’S urrainn dhut clàradh a-steach fhathast airson lethbhreac-glèidhidh dhen dàta agad iarraidh mur dèid an dàta a thoirt air falbh an ceann 30 latha gu slàn ach cumaidh sinn cuid dhen dàta bhunasach ach nach seachain thu an cur à rèim.
       reason: 'Adhbhar:'
+      statuses: 'Iomradh air postaichean:'
       subject:
         delete_statuses: Chaidh na postaichean agad air %{acct} a thoirt air falbh
         disable: Chaidh an cunntas %{acct} agad a reòthadh
+        mark_statuses_as_sensitive: Chaidh comharra na frionasachd a chur ris na postaichean agad air %{acct}
         none: Rabhadh dha %{acct}
+        sensitive: Thèid comharra na frionasachd a chur ris na postaichean agad air %{acct} o seo a-mach
         silence: Chaidh an cunntas %{acct} agad a chuingeachadh
         suspend: Chaidh an cunntas %{acct} agad a chur à rèim
       title:
         delete_statuses: Chaidh postaichean a thoirt air falbh
         disable: Cunntas reòite
+        mark_statuses_as_sensitive: Chaidh comharra na frionasachd a chur ri postaichean
         none: Rabhadh
+        sensitive: Chaidh comharra na frionasachd a chur ri cunntas
         silence: Cunntas cuingichte
         suspend: Cunntas à rèim
     welcome:
diff --git a/config/locales/gl.yml b/config/locales/gl.yml
index 27642844c..e28d9e018 100644
--- a/config/locales/gl.yml
+++ b/config/locales/gl.yml
@@ -165,10 +165,6 @@ gl:
       pending: Revisión pendente
       perform_full_suspension: Suspender
       previous_strikes: Accións previas
-      previous_strikes_description_html:
-        one: Esta conta ten <strong>un</strong> evento.
-        other: Esta conta ten <strong>%{count}</strong> eventos.
-        zero: Esta conta ten <strong>boa reputación</strong>.
       promote: Promocionar
       protocol: Protocolo
       public: Público
@@ -527,10 +523,6 @@ gl:
       delivery_error_hint: Se non é posible a entrega durante %{count} días, será automáticamente marcado como non entregable.
       destroyed_msg: Os datos desde %{domain} están na cola para o borrado inminente.
       empty: Non se atopan dominios.
-      known_accounts:
-        one: "%{count} conta coñecida"
-        other: "%{count} contas coñecidas"
-        zero: Sen contas coñecidas
       moderation:
         all: Todo
         limited: Limitado
@@ -775,6 +767,11 @@ gl:
     system_checks:
       database_schema_check:
         message_html: Existen migracións pendentes na base de datos. Bota man desta tarefa para facer que a aplicación funcione como se agarda dela
+      elasticsearch_running_check:
+        message_html: Non se puido conectar con Elasticsearch. Comproba que está funcionando, ou desactiva a busca por texto completo
+      elasticsearch_version_check:
+        message_html: 'Versión incompatible de Elasticsearch: %{value}'
+        version_comparison: Está executándose Elasticsearch %{running_version} pero requírese a %{required_version}
       rules_check:
         action: Xestionar regras do servidor
         message_html: Non tes definidas regras para o servidor.
@@ -794,10 +791,6 @@ gl:
         description_html: Estas son ligazóns que actualmente están sendo compartidas por moitas contas das que o teu servidor recibe publicación. Pode ser de utilidade para as túas usuarias para saber o que acontece polo mundo. Non se mostran ligazóns de xeito público a non ser que autorices a quen as publica. Tamén podes permitir ou rexeitar ligazóns de xeito individual.
         disallow: Denegar ligazón
         disallow_provider: Denegar orixe
-        shared_by_over_week:
-          one: Compartido por unha persoa na última semana
-          other: Compartido por %{count} persoas na última semana
-          zero: Non foi compartido na última semana
         title: Ligazóns en voga
         usage_comparison: Compartido %{today} veces hoxe, comparado con %{yesterday} onte
       pending_review: Revisión pendente
@@ -837,10 +830,6 @@ gl:
         trending_rank: 'En voga #%{rank}'
         usable: Pode ser usado
         usage_comparison: Utilizado %{today} veces hoxe, comparado coas %{yesterday} de onte
-        used_by_over_week:
-          one: Utilizado por unha persoa na última semana
-          other: Utilizado por %{count} persoas na última semana
-          zero: Non foi utilizado na última semana
       title: Tendencias
     warning_presets:
       add_new: Engadir novo
diff --git a/config/locales/he.yml b/config/locales/he.yml
index 67f3df609..97138fffa 100644
--- a/config/locales/he.yml
+++ b/config/locales/he.yml
@@ -169,17 +169,6 @@ he:
         remove_from_report: הסרה מהדיווח
         report: דווח
     title: ניהול
-    trends:
-      links:
-        shared_by_over_week:
-          one: שותף ע"י משתמש\ת אחד\ת בשבוע האחרון
-          other: שותף ע"י %{count} משתמשים בשבוע האחרון
-          zero: לא שותף בכלל בשבוע האחרון
-      tags:
-        used_by_over_week:
-          one: היה בשימוש משתמש\ת אחד\ת בשבוע האחרון
-          other: היה בשימוש ע"י %{count} משתמשים בשבוע האחרון
-          zero: לא היה בשימוש בכלל בשבוע האחרון
   application_mailer:
     settings: 'שינוי הגדרות דוא"ל: %{link}'
     view: 'תצוגה:'
diff --git a/config/locales/hu.yml b/config/locales/hu.yml
index ec2d4fa94..abe5baf48 100644
--- a/config/locales/hu.yml
+++ b/config/locales/hu.yml
@@ -170,7 +170,6 @@ hu:
       previous_strikes_description_html:
         one: Ezt a fiókot <strong>egyszer</strong> szankcionálták.
         other: Ezt a fiókot <strong>%{count}</strong> esetben szankcionálták.
-        zero: Ez a fiók <strong>makulátlan</strong>.
       promote: Előléptetés
       protocol: Protokoll
       public: Nyilvános
@@ -532,7 +531,6 @@ hu:
       known_accounts:
         one: "%{count} ismert fiók"
         other: "%{count} ismert fiók"
-        zero: Nincs ismert fiók
       moderation:
         all: Mind
         limited: Korlátozott
@@ -777,6 +775,11 @@ hu:
     system_checks:
       database_schema_check:
         message_html: Vannak esedékes adatbázis migrációink. Kérlek, futtasd őket, hogy biztosítsd, hogy az alkalmazás megfelelően működjön
+      elasticsearch_running_check:
+        message_html: Nem sikerült az Elasticsearchhöz kapcsolódni. Ellenőrizze, hogy fut-e, vagy kapcsolja ki a teljes szöveges keresést.
+      elasticsearch_version_check:
+        message_html: 'Nem kompatibilis Elasticsearch verzió: %{value}'
+        version_comparison: Az Elasticsearch %{running_version} fut, de %{required_version} szükséges
       rules_check:
         action: Szerver szabályok menedzselése
         message_html: Még nem definiáltál egy szerver szabályt sem.
@@ -797,9 +800,8 @@ hu:
         disallow: Hivatkozás letiltása
         disallow_provider: Közzétevő letiltása
         shared_by_over_week:
-          one: Egy ember osztotta meg az elmúlt héten
-          other: "%{count} ember osztotta meg az elmúlt héten"
-          zero: Senki sem osztotta meg az elmúlt héten
+          one: Egy ember osztotta meg a múlt héten
+          other: "%{count} ember osztotta meg a múlt héten"
         title: Felkapott hivatkozások
         usage_comparison: "%{today} alkalommal lett ma megosztva, a tegnapi %{yesterday} alkalomhoz képest"
       pending_review: Áttekintésre vár
@@ -842,7 +844,6 @@ hu:
         used_by_over_week:
           one: Egy ember használta a múlt héten
           other: "%{count} ember használta a múlt héten"
-          zero: Senki sem használta a múlt héten
       title: Trendek
     warning_presets:
       add_new: Új hozzáadása
diff --git a/config/locales/id.yml b/config/locales/id.yml
index 63b9066ce..ccb71ebdd 100644
--- a/config/locales/id.yml
+++ b/config/locales/id.yml
@@ -160,9 +160,7 @@ id:
       perform_full_suspension: Lakukan suspen penuh
       previous_strikes: Peringatan sebelumnya
       previous_strikes_description_html:
-        one: Akun ini mendapatkan <strong>satu</strong> peringatan.
-        other: Akun ini mendapatkan <strong>%{count}</strong> peringatan.
-        zero: Akun ini <strong>status bagus</strong>.
+        other: Akun ini mendapatkan <strong>%{count}</strong> hukuman.
       promote: Promosikan
       protocol: Protokol
       public: Publik
@@ -515,9 +513,7 @@ id:
       destroyed_msg: Data dari %{domain} masuk antrean dihapus dalam waktu dekat.
       empty: Domain tidak ditemukan.
       known_accounts:
-        one: "%{count} akun dikenal"
-        other: "%{count} akun dikenal"
-        zero: Tidak ada akun yang dikenal
+        other: "%{count} akun yang dikenal"
       moderation:
         all: Semua
         limited: Terbatas
@@ -761,6 +757,11 @@ id:
     system_checks:
       database_schema_check:
         message_html: Ada proses migrasi basis data tertunda. Silakan jalankan untuk memastikan aplikasi bekerja seperti yang diharapkan
+      elasticsearch_running_check:
+        message_html: Tidak dapat tersambung ke Elasticsearch. Pastikan itu berjalan, atau nonaktifkan pencarian teks penuh
+      elasticsearch_version_check:
+        message_html: 'Versi Elasticsearch tidak kompatibel: %{value}'
+        version_comparison: Elasticsearch %{running_version} sedang berjalan, sementara yang diwajibkan adalah %{required_version}
       rules_check:
         action: Kelola aturan server
         message_html: Anda belum menentukan aturan server apapun.
@@ -781,9 +782,7 @@ id:
         disallow: Batalkan izin tautan
         disallow_provider: Batalkan izin penerbit
         shared_by_over_week:
-          one: Dibagikan oleh satu orang lebih dari seminggu lalu
-          other: Dibagikan oleh %{count} orang lebih dari seminggu lalu
-          zero: Tidak dibagikan siapapun lebih dari seminggu lalu
+          other: Dibagikan oleh %{count} orang selama seminggu terakhir
         title: Tautan sedang tren
         usage_comparison: Dibagikan %{today} kali hari ini, dibandingkan %{yesterday} kemarin
       pending_review: Tinjauan tertunda
@@ -823,9 +822,7 @@ id:
         usable: Dapat digunakan
         usage_comparison: Digunakan %{today} kali hari ini, dibandingkan %{yesterday} kemarin
         used_by_over_week:
-          one: Dipakai oleh satu orang lebih dari seminggu lalu
-          other: Dipakai oleh %{count} orang selama seminggu terakhir
-          zero: Tidak dipakai siapapun lebih dari seminggu lalu
+          other: Digunakan oleh %{count} orang selama seminggu terakhir
       title: Tren
     warning_presets:
       add_new: Tambah baru
diff --git a/config/locales/is.yml b/config/locales/is.yml
index 92eb0e31e..910ae0b79 100644
--- a/config/locales/is.yml
+++ b/config/locales/is.yml
@@ -168,7 +168,6 @@ is:
       previous_strikes_description_html:
         one: Þessi notandaaðgangur er með <strong>eina</strong> refsingu.
         other: Þessi notandaaðgangur er með <strong>%{count}</strong> refsingar.
-        zero: Þessi notandaaðgangur er <strong>í góðu lagi</strong>.
       promote: Hækka í tign
       protocol: Samskiptamáti
       public: Opinber
@@ -530,7 +529,6 @@ is:
       known_accounts:
         one: "%{count} þekktur notandaaðgangur"
         other: "%{count} þekktir notendaaðgangar"
-        zero: Enginn þekktur notandaaðgangur
       moderation:
         all: Allt
         limited: Takmarkað
@@ -775,6 +773,11 @@ is:
     system_checks:
       database_schema_check:
         message_html: Það eru fyrirliggjandi yfirfærslur á gagnagrunnum. Keyrðu þær til að tryggja að forritið hegði sér eins og skyldi
+      elasticsearch_running_check:
+        message_html: Gat ekki tengst við Elasticsearch-leitina. Gakktu úr skugga um að hún sé í gangi, eða gerðu leit í öllum texta óvirka
+      elasticsearch_version_check:
+        message_html: 'Ósamhæfð útgáfa Elasticsearch-leitar: %{value}'
+        version_comparison: Elasticsearch %{running_version} er í gangi á meðan útgáfa %{required_version} er nauðsynleg
       rules_check:
         action: Sýsla með reglur netþjónsins
         message_html: Þú hefur ekki skilgreint neinar reglur fyrir netþjón.
@@ -797,7 +800,6 @@ is:
         shared_by_over_week:
           one: Deilt af einum aðila síðustu vikuna
           other: Deilt af %{count} aðilum síðustu vikuna
-          zero: Ekki deilt af neinum aðila síðustu vikuna
         title: Vinsælir tenglar
         usage_comparison: Deilt %{today} sinnum í dag, samanborið við %{yesterday} í gær
       pending_review: Bíður eftir yfirlestri
@@ -840,7 +842,6 @@ is:
         used_by_over_week:
           one: Notað af einum aðila síðustu vikuna
           other: Notað af %{count} aðilum síðustu vikuna
-          zero: Ekki notað af neinum aðila síðustu vikuna
       title: Tilhneiging
     warning_presets:
       add_new: Bæta við nýju
diff --git a/config/locales/it.yml b/config/locales/it.yml
index 5af135fbc..92cd18d1a 100644
--- a/config/locales/it.yml
+++ b/config/locales/it.yml
@@ -168,7 +168,6 @@ it:
       previous_strikes_description_html:
         one: Questo account ha <strong>una</strong> violazione.
         other: Questo account ha <strong>%{count}</strong> violazioni.
-        zero: Questo account ha <strong>una buona reputazione</strong>.
       promote: Promuovi
       protocol: Protocollo
       public: Pubblico
@@ -530,7 +529,6 @@ it:
       known_accounts:
         one: "%{count} account noto"
         other: "%{count} account noti"
-        zero: Nessun account noto
       moderation:
         all: Tutto
         limited: Limitato
@@ -775,6 +773,11 @@ it:
     system_checks:
       database_schema_check:
         message_html: Ci sono migrazioni del database in attesa. Sei pregato di eseguirle per assicurarti che l'applicazione si comporti come previsto
+      elasticsearch_running_check:
+        message_html: Impossibile connettersi a Elasticsearch. Verificare che sia in esecuzione o disabilitare la ricerca full-text
+      elasticsearch_version_check:
+        message_html: 'Versione Elasticsearch incompatibile: %{value}'
+        version_comparison: È in esecuzione la versione %{running_version} di Elasticsearch, ma è richiesta la versione %{required_version}
       rules_check:
         action: Gestisci regole del server
         message_html: Non hai definito alcuna regola del server.
@@ -797,7 +800,6 @@ it:
         shared_by_over_week:
           one: Condiviso da una persona nell'ultima settimana
           other: Condiviso da %{count} persone nell'ultima settimana
-          zero: Condiviso da nessuno nell'ultima settimana
         title: Link in tendenza
         usage_comparison: Condiviso %{today} volte oggi, rispetto a %{yesterday} ieri
       pending_review: Revisione in sospeso
@@ -840,7 +842,6 @@ it:
         used_by_over_week:
           one: Usato da una persona nell'ultima settimana
           other: Usato da %{count} persone nell'ultima settimana
-          zero: Usato da nessuno nell'ultima settimana
       title: Tendenze
     warning_presets:
       add_new: Aggiungi nuovo
diff --git a/config/locales/ja.yml b/config/locales/ja.yml
index 58c4694c0..84559e499 100644
--- a/config/locales/ja.yml
+++ b/config/locales/ja.yml
@@ -474,10 +474,6 @@ ja:
       delivery_error_hint: "%{count} 日間配送ができない場合は、自動的に配送不可としてマークされます。"
       destroyed_msg: "%{domain} からのデータは、すぐに削除されるように、キューに追加されました。"
       empty: ドメインが見つかりませんでした。
-      known_accounts:
-        one: 既知のアカウントが%{count}件あります
-        other: 既知のアカウントが%{count}件あります
-        zero: 既知のアカウントはありません
       moderation:
         all: すべて
         limited: 制限あり
diff --git a/config/locales/ko.yml b/config/locales/ko.yml
index 19cabb1ce..a8e8e3622 100644
--- a/config/locales/ko.yml
+++ b/config/locales/ko.yml
@@ -162,9 +162,7 @@ ko:
       perform_full_suspension: 정지시키기
       previous_strikes: 이전의 처벌들
       previous_strikes_description_html:
-        one: 이 계정은 <strong>한<strong> 번의 처벌이 있었습니다.
         other: 이 계정은 <strong>%{count}</strong> 번의 처벌이 있었습니다.
-        zero: 이 계정은 처벌 기록이 <strong>없습니다</strong>.
       promote: 승급
       protocol: 프로토콜
       public: 공개
@@ -519,9 +517,7 @@ ko:
       destroyed_msg: "%{domain}의 데이터는 곧바로 지워지도록 대기열에 들어갔습니다."
       empty: 도메인이 하나도 없습니다.
       known_accounts:
-        one: "%{count} 개의 알려진 계정"
         other: "%{count} 개의 알려진 계정"
-        zero: 알려진 계정이 없습니다
       moderation:
         all: 모두
         limited: 제한됨
@@ -765,6 +761,11 @@ ko:
     system_checks:
       database_schema_check:
         message_html: 데이터베이스 마이그레이션이 대기중입니다. 응용프로그램이 예상한대로 동작할 수 있도록 마이그레이션을 실행해 주세요
+      elasticsearch_running_check:
+        message_html: Elasticsearch에 연결할 수 없습니다. 실행중인지 확인하거나, 전문검색을 비활성화하세요
+      elasticsearch_version_check:
+        message_html: '호환되지 않는 Elasticsearch 버전: %{value}'
+        version_comparison: Elasticsearch %{required_version}버전이 필요하지만 %{running_version}버전이 실행 중입니다.
       rules_check:
         action: 서버 규칙 관리
         message_html: 아직 서버규칙을 정하지 않았습니다.
@@ -785,9 +786,7 @@ ko:
         disallow: 링크 거부하기
         disallow_provider: 출처 거부하기
         shared_by_over_week:
-          one: 지난 주 동안 한 명의 사람이 공유했습니다
           other: 지난 주 동안 %{count} 명의 사람들이 공유했습니다
-          zero: 지난 주 동안 공유한 사람이 없습니다
         title: 유행하는 링크
         usage_comparison: 오늘은 %{today}회 공유되었고, 어제는 %{yesterday}회 공유되었습니다
       pending_review: 심사 대기
@@ -827,9 +826,7 @@ ko:
         usable: 사용 가능
         usage_comparison: 오늘은 %{today}회 사용되었고, 어제는 %{yesterday}회 사용되었습니다
         used_by_over_week:
-          one: 지난 주 동안 한 명의 사람이 사용했습니다
           other: 지난 주 동안 %{count} 명의 사람들이 사용했습니다
-          zero: 지난 주 동안 사용한 사람이 없습니다
       title: 유행
     warning_presets:
       add_new: 새로 추가
diff --git a/config/locales/ku.yml b/config/locales/ku.yml
index 7dac9ae44..1f5554f4b 100644
--- a/config/locales/ku.yml
+++ b/config/locales/ku.yml
@@ -168,7 +168,6 @@ ku:
       previous_strikes_description_html:
         one: Ev ajimêr <strong>yek</strong> binpêkirin kiriye.
         other: Ev ajimêr <strong>%{count}</strong> binpêkirin kiriye.
-        zero: Ev ajimêr <strong>di rewşeke baş de ye</strong>.
       promote: Derbasê asteke bilind be
       protocol: Protokol
       public: Gelemperî
@@ -186,7 +185,7 @@ ku:
         send: E-nameya pejirandinê dîsa bişîne
         success: E-nameya pejirandinê bi awayekî serkeftî hate şandin!
       reset: Ji nû ve saz bike
-      reset_password: Pêborînê ji nû ve saz bike
+      reset_password: Borînpeyvê ji nû ve saz bike
       resubscribe: Dîsa beşdar bibe
       role: Maf
       roles:
@@ -198,9 +197,9 @@ ku:
       search_same_email_domain: Bikarhênerên din ên bi heman navpera e-nameyê
       search_same_ip: Bikarhênerên din ên xwedî heman IP
       security_measures:
-        only_password: Têne pêborîn
-        password_and_2fa: Pêborîn û 2FA
-        password_and_sign_in_token: Pêborîn û navnîşana e-nameyê
+        only_password: Têne borînpeyv
+        password_and_2fa: Borînpeyv û 2FA
+        password_and_sign_in_token: Borînpeyv û navnîşana e-nameyê
       sensitive: Hêz-hestiyar
       sensitized: Wek hestiyar hatiye nîşankirin
       shared_inbox_url: URLya wergirtiyên parvekirî
@@ -269,7 +268,7 @@ ku:
         reject_user: Bikarhêner nepejirîne
         remove_avatar_user: Avatarê rake
         reopen_report: Ragihandina ji nû ve veke
-        reset_password_user: Pêborînê ji nû ve saz bike
+        reset_password_user: Borînpeyvê ji nû ve saz bike
         resolve_report: Ragihandinê çareser bike
         sensitive_account: Ajimêra hêz-hestiyar
         silence_account: Ajimêrê bi sînor bike
@@ -320,7 +319,7 @@ ku:
         reject_user_html: "%{name} tomarkirina ji %{target} nepejirand"
         remove_avatar_user_html: "%{name} avatara bikarhêner %{target} rakir"
         reopen_report_html: "%{name} ragihandina %{target} ji nû ve vekir"
-        reset_password_user_html: "%{name} pêborîna bikarhênerê %{target} ji nû ve saz kir"
+        reset_password_user_html: "%{name} borînpeyva bikarhêner %{target} ji nû ve saz kir"
         resolve_report_html: "%{name} ragihandina %{target} çareser kir"
         sensitive_account_html: "%{name} medyayê %{target} wekî hestiyarî nîşan kir"
         silence_account_html: "%{name} ajimêra %{target} bi sînor kir"
@@ -532,7 +531,6 @@ ku:
       known_accounts:
         one: "%{count} ajimêra naskirî"
         other: "%{count} ajimêrên naskirî"
-        zero: Ajimêra naskirî tune ye
       moderation:
         all: Hemû
         limited: Sînorkirî
@@ -777,6 +775,11 @@ ku:
     system_checks:
       database_schema_check:
         message_html: Koçberiyên databasê yên li bendê hene. Ji kerema xwe wan bişopîne da ku bicîh bikî ku sepan wekî ku tê hêvî kirin tevbigere
+      elasticsearch_running_check:
+        message_html: Bi Elasticsearch re nayê girêdan. Ji kerema xwe kontrol bike ku ew dixebite, an lêgerîna tev-nivîsî neçalak bike
+      elasticsearch_version_check:
+        message_html: 'Guhertoya Elasticsearch a nelihevhatî: %{value}'
+        version_comparison: Elasticsearch %{running_version} dixebite lê %{required_version} pêwîst e
       rules_check:
         action: Rêzikên rajekara bi rê ve bibe
         message_html: Te qet rêzikên rajekara diyar nekiriye.
@@ -798,8 +801,7 @@ ku:
         disallow_provider: Mafê nede weşanger
         shared_by_over_week:
           one: Di nava hefteya dawî de ji aliyê keskekî ve hate parvekirin
-          other: Di nava hefteya dawî de ji aliyê %{count} kes ve hate parvekirin
-          zero: Di nava hefteya dawî de ji aliyê kesekî ve nehate parvekirin
+          other: Di nava hefteya dawî de ji aliyê %{count} ve hate parvekirin
         title: Girêdanên di rojevê de
         usage_comparison: Îro %{today} car hate parvekirin, li gorî %{yesterday} duh
       pending_review: Li benda nirxandinê ye
@@ -842,7 +844,6 @@ ku:
         used_by_over_week:
           one: Di nava hefteya dawî de ji aliyê kesekî ve hatiye bikaranîn
           other: Di nava hefteya dawî de ji %{count} kes ve hatiye bikaranîn
-          zero: Di nava hefteya dawî de ji aliyê kesekî ve nehate bikaranîn
       title: Rojev
     warning_presets:
       add_new: Yeka nû tevlî bike
@@ -921,7 +922,7 @@ ku:
     your_token: Nîşana gihîştina te
   auth:
     apply_for_account: Daxwaza vexwendinekê bike
-    change_password: Pêborîn
+    change_password: Borînpeyv
     checkbox_agreement_html: Ez <a href="%{rules_path}" target="_blank">rêbazên rajeker</a> û <a href="%{terms_path}" target="_blank">hêmanên karûbaran</a> dipejirînim
     checkbox_agreement_without_rules_html: Ez <a href="%{terms_path}" target="_blank">hêmanên karûbaran</a> rêbazên rajeker dipejirînim
     delete_account: Ajimêr jê bibe
@@ -932,8 +933,8 @@ ku:
       suffix: Bi ajimêrekê, tu yê karibî kesan bişopînî, rojanekirinan bişînî û bi bikarhênerên ji her rajekarê Mastodon re peyaman bişînî û bêhtir!
     didnt_get_confirmation: Te rêwerzên pejirandinê wernegirt?
     dont_have_your_security_key: Kilîda te ya ewlehiyê tune ye?
-    forgot_password: Te pêborîna xwe jibîrkir?
-    invalid_reset_password_token: Ji nû ve sazkirina pêborînê nederbasdar e an jî qediya ye. Jkx daxwaza yeka nû bike.
+    forgot_password: Te borînpeyva xwe ji bîr kir?
+    invalid_reset_password_token: Ji nû ve sazkirina borînpeyvê nederbasdar e an jî qediya ye. Jkx daxwaza yeka nû bike.
     link_to_otp: Ji têlefona xwe an jî ji kodeke rizgarkirinê kodeke du-gavî binivîsine
     link_to_webauth: Amûra kilîta ewlehiya xwe bi kar bîne
     log_in_with: Têkeve bi riya
@@ -948,9 +949,9 @@ ku:
     register: Tomar bibe
     registration_closed: "%{instance} endamên nû napejirîne"
     resend_confirmation: Rêwerên pejirandinê ji nû ve bişîne
-    reset_password: Pêborînê ji nû ve saz bike
+    reset_password: Borînpeyvê ji nû ve saz bike
     security: Ewlehî
-    set_new_password: Pêborîneke nû ji nû ve saz bike
+    set_new_password: Borînpeyveke nû ji nû ve saz bike
     setup:
       email_below_hint_html: Heke navnîşana e-nameya jêrîn ne rast be, tu dikarî wê li vir biguherîne û e-nameyeke pejirandinê ya nû bistîne.
       email_settings_hint_html: E-nameya pejirandinê ji %{email} re hate şandin. Heke ew navnîşana e-nameyê ne rast be, tu dikarî wê di sazkariyên ajimêr de biguherîne.
@@ -964,7 +965,7 @@ ku:
       view_strikes: Binpêkirinên berê yên dijî ajimêrê xwe bibîne
     too_fast: Form pir zû hat şandin, dîsa biceribîne.
     trouble_logging_in: Têketina te de pirsgirêk çêdibe?
-    use_security_key: Kilîteke ewlehiyê bikar bîne
+    use_security_key: Kilîteke ewlehiyê bi kar bîne
   authorize_follow:
     already_following: Jixwe tu vê ajimêrê dişopînî
     already_requested: Jixwe te ji vê ajimêrê re daxwazîya şopandinê şandi bû
@@ -979,9 +980,9 @@ ku:
     title: "%{acct} bişopîne"
   challenge:
     confirm: Bidomîne
-    hint_html: "<strong>Nîşe:</strong>Ji bo demjimêreke din em ê pêborîna te careke din ji te nexwazin."
-    invalid_password: Pêborîna nederbasdar
-    prompt: Ji bo bidomî lêborînê bipejirîne
+    hint_html: "<strong>Nîşe:</strong>Ji bo demjimêreke din em ê borînpeyva te careke din ji te nexwazin."
+    invalid_password: Borînpeyva nederbasdar
+    prompt: Ji bo bidomî borînpeyvê bipejirîne
   crypto:
     errors:
       invalid_key: ed25519 ne derbasdare ne jî Curve25519 kilîta
@@ -1006,7 +1007,7 @@ ku:
       x_seconds: "%{count}çirke"
   deletes:
     challenge_not_passed: Zanyariyên ku te nivîsandî ne rast in
-    confirm_password: Pêborîna xwe ya heyî binivîsine da ku nasnameya xwe piştrast bikî
+    confirm_password: Borînpeyva xwe ya heyî binivîsine da ku nasnameya xwe piştrast bikî
     confirm_username: Navê bikarhêneriyê xwe binivîse da ku prosedurê piştrast bike
     proceed: Ajimêr jê bibe
     success_msg: Ajimêra te bi serkeftî hate jêbirin
@@ -1176,10 +1177,10 @@ ku:
   login_activities:
     authentication_methods:
       otp: sepandina rastandina du-gavî
-      password: pêborîn
+      password: borînpeyv
       sign_in_token: koda ewlehiyê bo e-nameyê
       webauthn: kilîtên ewlehiyê
-    description_html: Heke çalakiya ku nas nakî dibînî, çêtir dibe ku pêborîna xwe biguherînî û rastandina du-gavî çalak bikî.
+    description_html: Heke çalakiya ku nas nakî dibînî, çêtir dibe ku borînpeyva xwe biguherînî û rastandina du-gavî çalak bikî.
     empty: Dîroka piştrastkirinê tune ye
     failed_sign_in_html: Hewldana têketinê ser neket bi%{method} ji %{ip} (%{browser}) de
     successful_sign_in_html: Bi serkeftî têketin bi %{method} ji %{ip}(%{browser}) çêbû
@@ -1637,7 +1638,7 @@ ku:
     sign_in_token:
       details: 'Li vir hûrgiliyên hewldanê hene:'
       explanation: 'Me hewildanek têketina ajimêra te ji navnîşana IP ya nenas destnîşan kir. Ger ev tu bî, ji kerema xwe koda ewlehiyê ya jêr binivîsîne di rûpela jêpirsînê de:'
-      further_actions: 'Ger ev ne tu bî, ji kerema xwe re pêborîna xwe biguherîne û li ser ajimêra xwe rastkirina du-gavî çalak bike. Tu dikarî wê ji vê derê çê bikî:'
+      further_actions: 'Ku ev ne tu bî, ji kerema xwe re borînpeyva xwe biguherîne û li ser ajimêra xwe rastkirina du-gavî çalak bike. Tu dikarî wê ji vê derê çê bikî:'
       subject: Ji kerema xwe re hewldanên têketinê piştrast bike
       title: Hewldanên têketinê
     warning:
@@ -1694,7 +1695,7 @@ ku:
     invalid_otp_token: Koda du-gavî ya nelê
     invalid_sign_in_token: Kilîda ewlehiyê a nelê
     otp_lost_help_html: Heke te gihîştina herduyan ji dest da, dibe ku tu bi %{email} re têkilî deyne
-    seamless_external_login: Te bi servîsekî biyanî re têketina xwe kir, ji ber vê yekê şîfre û e-name nayê bikaranîn.
+    seamless_external_login: Te bi rajekarke biyanî re têketina xwe kir, ji ber vê yekê borînpeyv û e-name nayê bikaranîn.
     signed_in_as: 'Têketin wekî:'
     suspicious_sign_in_confirmation: Xuya dike ku te berê têketin ji vê amûrê nekiriye, ji ber vê yekê em kodeke ewlehiyê ji navnîşana e-nameya te re dişînin da ku piştrast bikî ku tu ye an na.
   verification:
diff --git a/config/locales/lv.yml b/config/locales/lv.yml
index 3440da7ef..d695c5191 100644
--- a/config/locales/lv.yml
+++ b/config/locales/lv.yml
@@ -169,10 +169,6 @@ lv:
       pending: Gaida pārskatīšanu
       perform_full_suspension: Apturēt
       previous_strikes: Iepriekšējie brīdinājumi
-      previous_strikes_description_html:
-        one: Šim kontam ir <strong>viens</strong> brīdinājums.
-        other: Šim kontam ir <strong>%{count}</strong> brīdinājumi.
-        zero: Š konta <strong>stāvoklis ir labs</strong>.
       promote: Veicināt
       protocol: Protokols
       public: Publisks
@@ -538,10 +534,6 @@ lv:
       delivery_error_hint: Ja piegāde nav iespējama %{count} dienas, tā tiks automātiski atzīmēta kā nepiegādājama.
       destroyed_msg: Dati no %{domain} tagad ir gaidīšanas rindā, lai tos drīzumā dzēstu.
       empty: Domēni nav atrasti.
-      known_accounts:
-        one: "%{count} zināms konts"
-        other: "%{count} zināmi konti"
-        zero: Nav zināmu kontu
       moderation:
         all: Visas
         limited: Ierobežotās
@@ -787,6 +779,11 @@ lv:
     system_checks:
       database_schema_check:
         message_html: Notiek datubāzu migrācijas. Lūdzu, palaid tās, lai nodrošinātu, ka lietojumprogramma darbojas, kā paredzēts
+      elasticsearch_running_check:
+        message_html: Nevarēja izveidot savienojumu ar Elasticsearch. Lūdzu, pārbaudi, vai tā darbojas, vai atspējo pilna teksta meklēšanu
+      elasticsearch_version_check:
+        message_html: 'Nesaderīga Elasticsearch versija: %{value}'
+        version_comparison: Darbojas Elasticsearch %{running_version}, tomēr ir nepieciešama %{required_version}
       rules_check:
         action: Pārvaldīt servera nosacījumus
         message_html: Tu neesi definējis nevienu servera nosacījumu.
@@ -806,10 +803,6 @@ lv:
         description_html: Šīs ir saites, kuras pašlaik bieži koplieto konti, no kuriem tavs serveris redz ziņas. Tas var palīdzēt taviem lietotājiem uzzināt, kas notiek pasaulē. Kamēr tu neapstiprini izdevēju, neviena saite netiek rādīta publiski. Vari arī atļaut vai noraidīt atsevišķas saites.
         disallow: Neatļaut saiti
         disallow_provider: Neatļaut publicētāju
-        shared_by_over_week:
-          one: Pēdējās nedēļas laikā kopīgoja viena persona
-          other: Pēdējās nedēļas laikā kopīgoja %{count} personas
-          zero: Pēdējās nedēļas laikā neviens nav kopīgojis
         title: Populārākās saites
         usage_comparison: Šodien kopīgots %{today} reizes, salīdzinot ar %{yesterday} vakar
       pending_review: Gaida pārskatīšanu
@@ -850,10 +843,6 @@ lv:
         trending_rank: 'Populārākie #%{rank}'
         usable: Var tikt lietots
         usage_comparison: Šodien lietots %{today} reizes, salīdzinot ar %{yesterday} vakar
-        used_by_over_week:
-          one: Pēdējās nedēļas laikā izmantoja viens cilvēks
-          other: Pēdējās nedēļas laikā izmantoja %{count} personas
-          zero: Pēdējās nedēļas laikā neviens nav izmantojis
       title: Tendences
     warning_presets:
       add_new: Pievienot jaunu
diff --git a/config/locales/pl.yml b/config/locales/pl.yml
index 9a093f9d3..15755bde7 100644
--- a/config/locales/pl.yml
+++ b/config/locales/pl.yml
@@ -170,10 +170,6 @@ pl:
       pending: Oczekuje na przegląd
       perform_full_suspension: Zawieś
       previous_strikes: Poprzednie ostrzeżenia
-      previous_strikes_description_html:
-        one: To konto ma <strong>jedno</strong> ostrzeżenie.
-        other: To konto ma <strong>%{count}</strong> ostrzeżeń.
-        zero: To konto jest <strong>w dobrym stanie</strong>.
       promote: Podnieś uprawnienia
       protocol: Protokół
       public: Publiczne
@@ -748,6 +744,11 @@ pl:
     system_checks:
       database_schema_check:
         message_html: Istnieją oczekujące migracje bazy danych. Uruchom je, aby upewnić się, że aplikacja działa tak, jak powinna
+      elasticsearch_running_check:
+        message_html: Nie można połączyć się z Elasticsearch. Sprawdź czy jest uruchomiony lub wyłącz wyszukiwanie pełnotekstowe
+      elasticsearch_version_check:
+        message_html: 'Niekompatybilna wersja Elasticsearch: %{value}'
+        version_comparison: Elasticsearch w wersji %{running_version} jest uruchomiony, ale wymagana wersja to %{required_version}
       rules_check:
         action: Zarządzaj regułami serwera
         message_html: Nie zdefiniowano żadnych reguł serwera.
diff --git a/config/locales/pt-BR.yml b/config/locales/pt-BR.yml
index 912e42a7d..1d0de0d4a 100644
--- a/config/locales/pt-BR.yml
+++ b/config/locales/pt-BR.yml
@@ -1471,6 +1471,7 @@ pt-BR:
       title:
         delete_statuses: Publicações removidas
         disable: Conta bloqueada
+        mark_statuses_as_sensitive: Postagens marcadas como sensíveis
         none: Aviso
         silence: Conta silenciada
         suspend: Conta banida
diff --git a/config/locales/pt-PT.yml b/config/locales/pt-PT.yml
index 348545cbf..05f6ebf07 100644
--- a/config/locales/pt-PT.yml
+++ b/config/locales/pt-PT.yml
@@ -165,10 +165,6 @@ pt-PT:
       pending: Pendente de revisão
       perform_full_suspension: Fazer suspensão completa
       previous_strikes: Punições anteriores
-      previous_strikes_description_html:
-        one: Esta conta tem <strong>1</strong> punição.
-        other: Esta conta tem <strong>%{count}</strong> punições.
-        zero: Esta conta está <strong>em situação regular</strong>.
       promote: Promover
       protocol: Protocolo
       public: Público
@@ -527,10 +523,6 @@ pt-PT:
       delivery_error_hint: Se a entrega não for possível durante %{count} dias, será automaticamente marcada como não realizável.
       destroyed_msg: Dados de %{domain} estão agora na fila para iminente eliminação.
       empty: Não foram encontrados domínios.
-      known_accounts:
-        one: "%{count} conta conhecida"
-        other: "%{count} contas conhecidas"
-        zero: Nenhuma conta conhecida
       moderation:
         all: Todas
         limited: Limitadas
@@ -775,6 +767,11 @@ pt-PT:
     system_checks:
       database_schema_check:
         message_html: Existem migrações de base de dados pendentes. Por favor, execute-as para garantir que o aplicativo se comporte como esperado
+      elasticsearch_running_check:
+        message_html: Não foi possível conectar ao Elasticsearch. Por favor, verifique se está em execução, ou desabilite a pesquisa de texto completo
+      elasticsearch_version_check:
+        message_html: 'Versão de Elasticsearch incompatível: %{value}'
+        version_comparison: A versão de Elasticsearch %{running_version} está em execução. No entanto, é obrigatória a versão %{required_version}
       rules_check:
         action: Gerir regras da instância
         message_html: Não definiu nenhuma regra para a instância.
@@ -794,10 +791,6 @@ pt-PT:
         description_html: Estes são links que atualmente estão a ser frequentemente partilhados por contas visiveis pelo seu servidor. Eles podem ajudar os seus utilizador a descobrir o que está a acontecer no mundo. Nenhum link é exibido publicamente até que aprove o editor. Também pode permitir ou rejeitar links individualmente.
         disallow: Não permitir link
         disallow_provider: Não permitir editor
-        shared_by_over_week:
-          one: Partilhado por uma pessoa na última semana
-          other: Partilhado por %{count} pessoas na última semana
-          zero: Partilhado por ninguém na última semana
         title: Links em destaque
         usage_comparison: Partilhado %{today} vezes hoje, em comparação com %{yesterday} ontem
       pending_review: Pendente de revisão
@@ -837,10 +830,6 @@ pt-PT:
         trending_rank: 'Tendência #%{rank}'
         usable: Pode ser utilizada
         usage_comparison: Utilizada %{today} vezes hoje, em comparação com %{yesterday} ontem
-        used_by_over_week:
-          one: Utilizada por uma pessoa na última semana
-          other: Utilizada por %{count} pessoas na última semana
-          zero: Utilizada por ninguém na última semana
       title: Tendências
     warning_presets:
       add_new: Adicionar novo
diff --git a/config/locales/ru.yml b/config/locales/ru.yml
index 4440f3336..d6eab2a99 100644
--- a/config/locales/ru.yml
+++ b/config/locales/ru.yml
@@ -174,9 +174,10 @@ ru:
       perform_full_suspension: Блокировка
       previous_strikes: Предыдущие замечания
       previous_strikes_description_html:
-        one: У этой учетной записи <strong>одно</strong> замечание.
-        other: У этой учетной записи <strong>%{count}</strong> замечания.
-        zero: У этой учетной записи <strong>хорошая репутация</strong>.
+        few: У этой учётной записи <strong>%{count}</strong> замечания.
+        many: У этой учётной записи <strong>%{count}</strong> замечаний.
+        one: У этой учётной записи <strong>одно</strong> замечание.
+        other: У этой учетной записи <strong>%{count}</strong> замечание.
       promote: Повысить
       protocol: Протокол
       public: Публичный
@@ -505,9 +506,10 @@ ru:
       destroyed_msg: Данные для домена %{domain} поставлены в очередь на удаление.
       empty: Домены не найдены.
       known_accounts:
+        few: "%{count} известные учётные записи"
+        many: "%{count} известных учётных записей"
         one: "%{count} известная учётная запись"
-        other: "%{count} известных учётных записей"
-        zero: Нет известных учётных записей
+        other: "%{count} известная учётная запись"
       moderation:
         all: Все
         limited: Ограниченные
@@ -748,6 +750,11 @@ ru:
     system_checks:
       database_schema_check:
         message_html: Есть отложенные миграции базы данных. Запустите их, чтобы убедиться, что приложение работает должным образом
+      elasticsearch_running_check:
+        message_html: Не удалось подключиться к Elasticsearch. Пожалуйста, проверьте, что он запущен, или отключите полнотекстовый поиск
+      elasticsearch_version_check:
+        message_html: 'Несовместимая версия Elasticsearch: %{value}'
+        version_comparison: Запущен Elasticsearch %{running_version}, а необходим %{required_version}
       rules_check:
         action: Управление правилами сервера
         message_html: Вы не определили правила сервера.
@@ -767,9 +774,10 @@ ru:
         disallow: Запретить ссылку
         disallow_provider: Отклонить издание
         shared_by_over_week:
+          few: Поделилось %{count} человека за последнюю неделю
+          many: Поделилось %{count} человек за последнюю неделю
           one: Поделился один человек за последнюю неделю
-          other: Поделилось %{count} людей за последнюю неделю
-          zero: Никто не поделился за последнюю неделю
+          other: Поделился %{count} человек за последнюю неделю
         title: Актуальные ссылки
         usage_comparison: Поделились %{today} раз сегодня, по сравнению с %{yesterday} вчера
       pending_review: Ожидает рассмотрения
@@ -797,9 +805,10 @@ ru:
         usable: Может использоваться
         usage_comparison: Использовано %{today} сегодня, для сравнения вчера %{yesterday}
         used_by_over_week:
-          one: За последнюю неделю использовано одним человеком
-          other: За последнюю неделю использовано %{count} людьми
-          zero: За последнюю неделю никто не использовал
+          few: За последнюю неделю использовало %{count} человека
+          many: За последнюю неделю использовало %{count} человек
+          one: За последнюю неделю использовал один человек
+          other: За последнюю неделю использовал %{count} человек
       title: Популярное
     warning_presets:
       add_new: Добавить
diff --git a/config/locales/simple_form.cs.yml b/config/locales/simple_form.cs.yml
index 3276b4843..233a9f6ee 100644
--- a/config/locales/simple_form.cs.yml
+++ b/config/locales/simple_form.cs.yml
@@ -35,6 +35,7 @@ cs:
         current_password: Z bezpečnostních důvodů prosím zadejte heslo současného účtu
         current_username: Potvrďte prosím tuto akci zadáním uživatelského jména aktuálního účtu
         digest: Odesíláno pouze po dlouhé době nečinnosti a pouze, pokud jste při své nepřítomnosti obdrželi osobní zprávy
+        discoverable: Umožnit, aby mohli váš účet objevit neznámí lidé pomocí doporučení, trendů a dalších funkcí
         email: Bude vám poslán potvrzovací e-mail
         fields: Na profilu můžete mít až 4 položky zobrazené jako tabulka
         header: PNG, GIF či JPG. Maximálně %{size}. Bude zmenšen na %{dimensions} px
diff --git a/config/locales/simple_form.fa.yml b/config/locales/simple_form.fa.yml
index 7fdd3b7a8..e3b4921cd 100644
--- a/config/locales/simple_form.fa.yml
+++ b/config/locales/simple_form.fa.yml
@@ -7,12 +7,12 @@ fa:
       account_migration:
         acct: نشانی username@domain را برای حسابی که می‌خواهید به آن منتقل شوید بنویسید
       account_warning_preset:
-        text: می‌توانید مانند بوق‌های معمولی کاربران دیگر را نام ببرید یا پیوند و برچسب بگذارید
+        text: می‌توانید مانند فرسته‌های معمولی کاربران دیگر را نام ببرید یا پیوند و برچسب بگذارید
         title: اختیاری. برای گیرنده قابل مشاهده نیست
       admin_account_action:
-        include_statuses: این کاربر خواهد دید که کدام بوق او موجب اقدام مدیریتی یا هشدار شده است
+        include_statuses: این کاربر خواهد دید که کدام فرسته او موجب اقدام مدیریتی یا هشدار شده است
         send_email_notification: توضیحی که کاربر می‌بینید که برای حسابش چه رخ داده است
-        text_html: اختیاری. می‌توانید مثل بوق‌های معمولی بنویسید. می‌توانید برای صرفه‌جویی در زمان <a href="%{path}">هشدارهای ازپیش‌آماده بیفزایید</a>
+        text_html: اختیاری. می‌توانید مثل فرسته‌های معمولی بنویسید. می‌توانید برای صرفه‌جویی در زمان <a href="%{path}">هشدارهای ازپیش‌آماده بیفزایید</a>
         type_html: با حساب <strong>%{acct}</strong> می‌خواهید چه کار کنید؟‌
         types:
           disable: از استفادهٔ کاربر از حسابش جلوگیری می‌کند، ولی محتوایش را حذف یا پنهان نمی‌کند.
@@ -26,9 +26,9 @@ fa:
         ends_at: اختیاری. اعلامیه در این به صورت خودکار نامنتشر خواهد شد
         scheduled_at: برای انتشار فوری اعلامیه، خالی بگذارید
         starts_at: اختیاری. در صورتی که اعلامیه‌تان محدود به بازهٔ زمانی خاصی است
-        text: می‌توانید مانند یک بوق‌ معمولی بنویسید. یادتان باشد که اعلامیهٔ شما فضای صفحهٔ کاربران را اشغال خواهد کرد
+        text: می‌توانید مانند یک فرسته‌ معمولی بنویسید. یادتان باشد که اعلامیهٔ شما فضای صفحهٔ کاربران را اشغال خواهد کرد
       appeal:
-        text: فقط یک بار می‌توانید برای اخطار اعتراض کنید
+        text: فقط یک بار می‌توانید برای اخطار درخواست تجدیدنظر کنید
       defaults:
         autofollow: کسانی که از راه دعوت‌نامه عضو می‌شوند به طور خودکار پیگیر شما خواهند شد
         avatar: یکی از قالب‌های PNG یا  GIF یا JPG. بیشترین اندازه %{size}. تصویر به اندازهٔ %{dimensions} پیکسل تبدیل خواهد شد
@@ -42,20 +42,20 @@ fa:
         fields: شما می‌توانید تا چهار مورد را در یک جدول در نمایهٔ خود نمایش دهید
         header: یکی از قالب‌های PNG یا  GIF یا JPG. بیشترین اندازه %{size}. تصویر به اندازهٔ %{dimensions} پیکسل تبدیل خواهد شد
         inbox_url: نشانی صفحهٔ اصلی رله‌ای را که می‌خواهید به کار ببرید کپی کنید
-        irreversible: بوق‌های پالوده به طور برگشت‌ناپذیری ناپدید می‌شوند، حتا اگر بعدها پالایه برداشته شود
+        irreversible: فرسته‌های پالوده به طور برگشت‌ناپذیری ناپدید می‌شوند، حتا اگر بعدها پالایه برداشته شود
         locale: زبان واسط کاربری، رایانامه‌ها و آگاهی‌های ارسالی
         locked: باید پیگیران تازه را خودتان تأیید کنید
         password: دست‌کم باید ۸ نویسه داشته باشد
-        phrase: مستقل از کوچکی و بزرگی حروف، با متن اصلی یا هشدار محتوای بوق‌ها مقایسه می‌شود
+        phrase: مستقل از کوچکی و بزرگی حروف، با متن اصلی یا هشدار محتوای فرسته‌ها مقایسه می‌شود
         scopes: واسط‌های برنامه‌نویسی که این برنامه به آن دسترسی دارد. اگر بالاترین سطح دسترسی را انتخاب کنید، دیگر نیازی به انتخاب سطح‌های پایینی ندارید.
-        setting_aggregate_reblogs: برای بازبوق‌هایی که به تازگی برایتان نمایش داده شده‌اند، بازبوق‌های بیشتر را نشان نده (فقط روی بازبوق‌های اخیر تأثیر می‌گذارد)
+        setting_aggregate_reblogs: برای تقویت‌هایی که به تازگی برایتان نمایش داده شده‌اند، تقویت‌های بیشتر را نمایش نده (فقط روی تقویت‌های اخیر تأثیر می‌گذارد)
         setting_default_sensitive: تصاویر حساس به طور پیش‌فرض پنهان هستند و می‌توانند با یک کلیک آشکار شوند
         setting_display_media_default: تصویرهایی را که به عنوان حساس علامت زده شده‌اند پنهان کن
         setting_display_media_hide_all: همیشه همهٔ عکس‌ها و ویدیوها را پنهان کن
         setting_display_media_show_all: همیشه تصویرهایی را که به عنوان حساس علامت زده شده‌اند را نشان بده
         setting_hide_network: فهرست پیگیران شما و فهرست کسانی که شما پی می‌گیرید روی نمایهٔ شما دیده نخواهد شد
         setting_noindex: روی نمایهٔ عمومی و صفحهٔ نوشته‌های شما تأثیر می‌گذارد
-        setting_show_application: برنامه‌ای که به کمک آن بوق می‌زنید، در جزئیات بوق شما نمایش خواهد یافت
+        setting_show_application: برنامه‌ای که به کمک آن فرسته می‌زنید، در جزئیات فرسته شما نمایش خواهد یافت
         setting_use_blurhash: سایه‌ها بر اساس رنگ‌های به‌کاررفته در تصویر پنهان‌شده ساخته می‌شوند ولی جزئیات تصویر در آن‌ها آشکار نیست
         setting_use_pending_items: به جای پیش‌رفتن خودکار در فهرست، به‌روزرسانی فهرست نوشته‌ها را پشت یک کلیک پنهان کن
         username: نام کاربری شما روی %{domain} یکتا خواهد بود
@@ -103,7 +103,7 @@ fa:
         text: متن از پیش آماده‌شده
         title: عنوان
       admin_account_action:
-        include_statuses: بوق‌های گزارش‌شده را در ایمیل بگنجان
+        include_statuses: فرسته‌های گزارش‌شده را در ایمیل بگنجان
         send_email_notification: اطلاع‌رسانی به کاربر از راه ایمیل
         text: هشدار موردی
         type: کنش
@@ -150,10 +150,10 @@ fa:
         password: رمز
         phrase: کلیدواژه یا عبارت
         setting_advanced_layout: فعال‌سازی رابط کاربری پیشرفته
-        setting_aggregate_reblogs: بازبوق‌ها را متحد کن
+        setting_aggregate_reblogs: تقویت‌ها را در خط‌زمانی گروه‌بندی کن
         setting_auto_play_gif: پخش خودکار تصویرهای متحرک
-        setting_boost_modal: نمایش پیغام تأیید پیش از بازبوقیدن
-        setting_crop_images: در بوق‌های بازنشده، تصویرها را به ابعاد ۱۶×۹ کوچک کن
+        setting_boost_modal: نمایش پیغام تأیید پیش از تقویت کردن
+        setting_crop_images: در فرسته‌های ناگسترده، تصویرها را به ابعاد ‎۱۶×۹ کوچک کن
         setting_default_language: زبان نوشته‌های شما
         setting_default_privacy: حریم خصوصی نوشته‌ها
         setting_default_sensitive: همیشه تصاویر را به عنوان حساس علامت بزن
@@ -163,7 +163,7 @@ fa:
         setting_display_media_default: پیش‌فرض
         setting_display_media_hide_all: نهفتن همه
         setting_display_media_show_all: نمایش همه
-        setting_expand_spoilers: همیشه بوق‌هایی را که هشدار محتوا دارند کامل نشان بده
+        setting_expand_spoilers: همیشه فرسته‌هایی را که هشدار محتوا دارند کامل نشان بده
         setting_hide_network: نهفتن شبکهٔ ارتباطی
         setting_noindex: درخواست از موتورهای جستجوگر برای ظاهر نشدن در نتایج جستجو
         setting_reduce_motion: کاستن از حرکت در پویانمایی‌ها
@@ -200,14 +200,14 @@ fa:
           sign_up_requires_approval: محدود کردن ثبت نام‌ها
         severity: قانون
       notification_emails:
-        appeal: شخصی به تصمیم ناظر اعتراض کرد
+        appeal: شخصی به تصمیم مدیر اعتراض کرد
         digest: فرستادن رایانامه‌های خلاصه
         favourite: وقتی کسی نوشتهٔ شما را پسندید ایمیل بفرست
         follow: وقتی کسی پیگیر شما شد ایمیل بفرست
         follow_request: وقتی کسی درخواست پیگیری کرد ایمیل بفرست
         mention: وقتی کسی از شما نام برد ایمیل بفرست
         pending_account: وقتی حساب تازه‌ای نیاز به بازبینی داشت ایمیل بفرست
-        reblog: وقتی کسی نوشتهٔ شما را بازبوقید ایمیل بفرست
+        reblog: وقتی کسی فرستهٔ شما را تقویت کرد ایمیل بفرست
         report: گزارش جدیدی فرستاده شد
         trending_tag: روند جدیدی نیازمند بازبینی است
       rule:
@@ -216,7 +216,7 @@ fa:
         listable: اجازه به این برچسب برای ظاهر شدن در جست‌وجوها و پیشنهادها
         name: برچسب
         trendable: بگذارید که این برچسب در موضوعات پرطرفدار دیده شود
-        usable: بگذارید که این برچسب در بوق‌ها به کار بروند
+        usable: بگذارید که این برچسب در فرسته‌ها به کار بروند
     'no': خیر
     recommended: توصیه می‌شود
     required:
diff --git a/config/locales/simple_form.gd.yml b/config/locales/simple_form.gd.yml
index ac71f8307..31b636344 100644
--- a/config/locales/simple_form.gd.yml
+++ b/config/locales/simple_form.gd.yml
@@ -27,6 +27,8 @@ gd:
         scheduled_at: Fàg seo bàn airson am brath-fios fhoillseachadh sa bhad
         starts_at: Roghainnean. Cleachd seo airson am brath-fios a chuingeachadh rè ama shònraichte
         text: "’S urrainn dhut co-chàradh puist a chleachdadh. Thoir an aire air am meud a chaitheas am brath-fios air sgrìn an luchd-chleachdaidh"
+      appeal:
+        text: Chan urrainn dhut ath-thagradh a dhèanamh air rabhadh ach aon turas
       defaults:
         autofollow: Leanaidh na daoine a chlàraicheas leis a cuireadh ort gu fèin-obrachail
         avatar: PNG, GIF or JPG. %{size} air a char as motha. Thèid a sgèileadh sìos gu %{dimensions}px
@@ -35,6 +37,7 @@ gd:
         current_password: A chùm tèarainteachd, cuir a-steach facal-faire a’ chunntais làithrich
         current_username: Airson seo a dhearbhadh, cuir a-steach ainm-cleachdaiche a’ chunntais làithrich
         digest: Cha dèid seo a chur ach nuair a bhios tu air ùine mhòr gun ghnìomh a ghabhail agus ma fhuair thu teachdaireachd phearsanta fhad ’s a bha thu air falbh
+        discoverable: Ceadaich gun lorg coigrich an cunntas agad le taic o mholaidhean, treandaichean is gleusan eile
         email: Thèid post-d dearbhaidh a chur thugad
         fields: Faodaidh tu suas ri 4 nithean a shealltainn mar chlàr air a’ phròifil agad
         header: PNG, GIF or JPG. %{size} air a char as motha. Thèid a sgèileadh sìos gu %{dimensions}px
@@ -60,6 +63,7 @@ gd:
       domain_allow:
         domain: "’S urrainn dhan àrainn seo dàta fhaighinn on fhrithealaiche seo agus thèid an dàta a thig a-steach uaithe a phròiseasadh ’s a stòradh"
       email_domain_block:
+        domain: Seo ainm na h-àrainne a nochdas san t-seòladh puist-d no sa chlàr MX a chleachdas e. Thèid an dearbhadh aig àm a’ chlàraidh.
         with_dns_records: Thèid oidhirp a dhèanamh air fuasgladh clàran DNS na h-àrainne a chaidh a thoirt seachad agus thèid na toraidhean a bhacadh cuideachd
       featured_tag:
         name: 'Mholamaid fear dhe na tagaichean seo:'
@@ -116,6 +120,8 @@ gd:
         scheduled_at: Cuir foillseachadh air an sgeideal
         starts_at: Toiseach an tachartais
         text: Brath-fios
+      appeal:
+        text: Mìnich carson a bu chòir an caochladh a chur orra
       defaults:
         autofollow: Thoir cuireadh dhaibh airson leantainn air a’ chunntas agad
         avatar: Avatar
@@ -194,6 +200,7 @@ gd:
           sign_up_requires_approval: Cuingich clàraidhean ùra
         severity: Riaghailt
       notification_emails:
+        appeal: Tha cuideigin ag ath-thagradh co-dhùnadh na maorsainneachd
         digest: Cuir puist-d le geàrr-chunntas
         favourite: Is annsa le cuideigin am post agad
         follow: Lean cuideigin ort
@@ -201,6 +208,8 @@ gd:
         mention: Thug cuideigin iomradh ort
         pending_account: Tha cunntas ùr feumach air lèirmheas
         reblog: Bhrosnaich cuideigin am post agad
+        report: Chaidh gearan ùr a chur a-null
+        trending_tag: Tha treand ùr ri lèirmheasadh
       rule:
         text: Riaghailt
       tag:
diff --git a/config/locales/simple_form.ku.yml b/config/locales/simple_form.ku.yml
index dcf723591..09621771d 100644
--- a/config/locales/simple_form.ku.yml
+++ b/config/locales/simple_form.ku.yml
@@ -3,20 +3,20 @@ ku:
   simple_form:
     hints:
       account_alias:
-        acct: Ajimêrê ku tu dixwazî bar bikî navê bikarhêner@domain diyar bike
+        acct: Ajimêrê ku tu dixwazî jê bar bikî navê bikarhêner@navpar diyar bike
       account_migration:
-        acct: Ajimêrê ku tu dixwazî bar bikî navê bikarhêner@domain diyar bike
+        acct: Ajimêrê ku tu dixwazî bar bikî bo wê navê bikarhêner@navpar diyar bike
       account_warning_preset:
-        text: Tu dikarî wek URLyan, hashtagan û şîroveyan, tootê ristesazî jî bikarbînî
+        text: Tu dikarî hevoksaziya şandiyê wekî URL, hashtag û şîroveyan, bi kar bînî
         title: Bi dilê xwe ye. Ji wergir re nay xûyakirin
       admin_account_action:
-        include_statuses: Bikarhênerê bibîne kîjan toot dibin sedemê çalakî an jî agahdarî
+        include_statuses: Bikarhêner wê bibîne kîjan şandî dibin sedemê çalakî an jî agahdarikirina çavdêriyê
         send_email_notification: Bikarhêner dê ravekirinê tiştê ku bi ajimêra wan re qewimî bistîne
-        text_html: Bi dili xwe ye. Tu dikarî hevoksazî ye toot bikarbînî. Tu dikarî <a href="%{path}"> pêşsazîyên hişyariyê lê zêde bikî </a> ji bo ku demê derbas nekî
+        text_html: Bi dilê xwe ye. Tu dikarî hevoksaziye şandiyê bi kar bînî. Tu dikarî <a href="%{path}"> pêşsaziyên hişyariyê tevlî bikî </a> ji bo ku demê derbas nekî
         type_html: Hilbijêre ka tu yê çi bikî bi <strong>%{acct}</strong> re
         types:
-          disable: Nehêle bila bikarhêner ajimêrê xwe bikar bîne lê naverokan jê nebe an jî veneşêre.
-          none: Ji bo ku tu hişyariyekê ji bikarhêner re bişînî vê bi kar bîne, bêyî ku çalakiyeke din dest lê neda.
+          disable: Nehêle bikarhêner ajimêrê xwe bi kar bîne lê naverokan jê nabe an jî veneşêre.
+          none: Ji bo ku tu hişyariyekê ji bikarhêner re bişînî vê bi kar bîne, bêyî ku çalakiyeke din bikî.
           sensitive: Neçar bihêle ku ev bikarhêner hemû pêvekên medyayê hestiyar nîşan bike.
           silence: Pêşî li bikarhêneran bigire ku bikarhêner bi herkesî ra xûyabarî neşîne, post û agahdarîyên xwe ji mirovên ku wan naşopîne veşêre.
           suspend: Pêşîya hevbandorîya vî ajimêrê bigire û naveroka wê jê bibe. Di nava 30 rojan de tê vegerandin.
@@ -26,7 +26,7 @@ ku:
         ends_at: Bi dilê xwe ye. Daxuyanî di vê demê de bi xweberî ji weşanê de rabe
         scheduled_at: Vala bihêle ku yekcar daxûyanî were weşandin
         starts_at: Bi dilê xwe ye. Heke daxûyanî ya te di demeke diyar ve girêdayî be
-        text: Tu dikarî hevoksazî yên toot bikarbînî. Ji kerema xwe cihê ku ev daxuyanî li ser dîmenderê bikarhêner bigire baldar be
+        text: Tu dikarî hevoksaziya şandiyê bi kar bînî. Ji kerema xwe bila haya te ji cihê ku ev daxuyanî li ser dîmenderê bikarhêner bigire hebe
       appeal:
         text: Tu dikarî tenê carekê îtîraza binpêkirinê bikî
       defaults:
@@ -34,7 +34,7 @@ ku:
         avatar: PNG, GIF an jî JPG. Herî zêde %{size} dê ber bi %{dimensions}px ve were kêmkirin
         bot: Ji yên din re nîşan bike ku ajimêr bi piranî kiryarên xweberî dike û dibe ku neyê çavdêrî kirin
         context: Yek an jî zêdetir girêdan divê parzûn were sepandin
-        current_password: Ji bo ewlehiyê ji kerema xwe şîfreya ajimêrê xwe niha têkevin
+        current_password: Ji bo ewlehiyê ji kerema xwe borînpeyva ajimêrê xwe têxe
         current_username: Ji bo piştrastkirinê, ji kerema xwe navê bikarhêner ya ajimêrê niha binvîse
         digest: Tenê piştî demek dirêj neçalakiyê de û tenê di nebûna te da peyamên teybetî standî be tê şandin
         discoverable: Mafê biden ku ajimêra te bi pêşniyar û taybetmendiyên din ji aliyê biyaniyan ve bê vedîtin
@@ -42,10 +42,10 @@ ku:
         fields: Tu dikarî heya 4 hêmanan wekî tabloyek li ser profîla xwe nîşan bidî
         header: PNG, GIF an jî JPG. Herî zêde %{size} ber bi %{dimensions}px ve were kêmkirin
         inbox_url: URLyê di rûpela pêşî de guhêrkerê ku tu dixwazî bi kar bînî jê bigire
-        irreversible: Tootên parzûnkirî êdî bê veger wenda bibe, heger parzûn paşê were rakirin jî nabe
+        irreversible: Şandiyên parzûnkirî êdî bê veger wenda bibe, heger parzûn paşê were rakirin jî nabe
         locale: Zimanê navrûyê bikarhêner, agahdarîyên e-name û pêl kirin
         locked: Bi destan daxwazên şopê hilbijêrîne da ku kî bikaribe te bişopîne
-        password: Herî kêm 8 karakter bikar bîne
+        password: Herî kêm 8 tîpan bi kar bîne
         phrase: Ji rewşa nivîsê tîpên girdek/hûrdek an jî ji hişyariya naveroka ya şandiyê wek serbixwe wê were hevbeş kirin
         scopes: |-
           Sepana ku dê kîjan maf bide bigihije APIyan.
@@ -56,7 +56,7 @@ ku:
         setting_display_media_hide_all: Medyayê tim veşêre
         setting_display_media_show_all: Medyayê tim nîşan bike
         setting_hide_network: Kesên ku te dişopîne û kesên tu dişopînî ev ên profîla te de were veşartin
-        setting_noindex: Bandor li hemî profîla te û tootên rûpela te dike
+        setting_noindex: Bandor li hemî profîla te û şandiyên rûpela te dike
         setting_show_application: Navê sepana ku tu ji bo şandinê wê bi kar tîne dê di dîtinê berferh ên di şandiyên te de were xuyakirin
         setting_use_blurhash: Gradyen xwe bi rengên dîtbarîyên veşartî ve radigire, lê belê hûrgilîyan diveşêre
         setting_use_pending_items: Li şûna ku herkê wek bixweber bizivirînî nûvekirina demnameyê li paş tikandinekî veşêre
@@ -129,10 +129,10 @@ ku:
         avatar: Wêne
         bot: Ev ajimêrekî bot e
         chosen_languages: Parzûnê zimanan
-        confirm_new_password: Peborîna nû bipejirîne
-        confirm_password: Peborîn bipejirîne
+        confirm_new_password: Borînpeyva nû bipejirîne
+        confirm_password: Borînpeyvê bipejirîne
         context: Parzûnê naverokan
-        current_password: Pêborîna heyî
+        current_password: Borînpeyva heyî
         data: Dane
         discoverable: Ji yên din re ajimêrê pêşniyar bike
         display_name: Navê nîşandanê
@@ -146,10 +146,10 @@ ku:
         locale: Zimanê navrûyê
         locked: Ajimêr kilît bike
         max_uses: Hejmara bikaranîna herî zêde
-        new_password: Pêborîna nû
+        new_password: Borînpeyva nû
         note: Jiyanname
         otp_attempt: Koda du faktoran
-        password: Pêborîn
+        password: Borînpeyv
         phrase: Peyvkilîd an jî hevok
         setting_advanced_layout: Navrûya tevnê yê pêşketî çalak bike
         setting_aggregate_reblogs: Di demnameyê de şandiyên bilindkirî kom bike
@@ -169,7 +169,7 @@ ku:
         setting_hide_network: Grafîka xwe ya civakî veşêre
         setting_noindex: Bes e nexe di nav rêzên lêgerîna gerokan
         setting_reduce_motion: Lîstikên livoka kêm bike
-        setting_show_application: Sepana ku ji bo şandina toot'a tê bikaranîn diyar bike
+        setting_show_application: Sepana ku ji bo şandina şandiyan tê bikaranîn diyar bike
         setting_system_font_ui: Curenivîsa berdest a pergalê bi kar bîne
         setting_theme: Rûkarê malperê
         setting_trends: Rojeva îro nîşan bide
diff --git a/config/locales/simple_form.th.yml b/config/locales/simple_form.th.yml
index b954b50fe..ed8420aea 100644
--- a/config/locales/simple_form.th.yml
+++ b/config/locales/simple_form.th.yml
@@ -20,7 +20,7 @@ th:
           sensitive: บังคับให้ทำเครื่องหมายไฟล์แนบสื่อของผู้ใช้นี้ทั้งหมดว่าละเอียดอ่อน
           silence: ป้องกันไม่ให้ผู้ใช้สามารถโพสต์โดยมีการมองเห็นเป็นสาธารณะ ซ่อนโพสต์และการแจ้งเตือนของเขาจากผู้คนที่ไม่ได้กำลังติดตามผู้ใช้
           suspend: ป้องกันไม่ให้มีการโต้ตอบใด ๆ จากหรือไปยังบัญชีนี้และลบเนื้อหาของบัญชี แปลงกลับได้ภายใน 30 วัน
-        warning_preset_id: ไม่จำเป็น คุณยังสามารถเพิ่มข้อความที่กำหนดเองที่จุดสิ้นสุดของค่าที่ตั้งไว้ล่วงหน้า
+        warning_preset_id: ไม่จำเป็น คุณยังคงสามารถเพิ่มข้อความที่กำหนดเองที่จุดสิ้นสุดของค่าที่ตั้งไว้ล่วงหน้า
       announcement:
         all_day: เมื่อกาเครื่องหมาย จะแสดงเฉพาะวันที่ของช่วงเวลาเท่านั้น
         ends_at: ไม่จำเป็น จะเลิกเผยแพร่ประกาศที่เวลานี้โดยอัตโนมัติ
diff --git a/config/locales/sq.yml b/config/locales/sq.yml
index a497ef81a..560f4bff7 100644
--- a/config/locales/sq.yml
+++ b/config/locales/sq.yml
@@ -166,9 +166,8 @@ sq:
       perform_full_suspension: Pezulloje
       previous_strikes: Paralajmërime të mëparshme
       previous_strikes_description_html:
-        one: Kjo llogari ka <strong>one</strong> paralajmërim.
+        one: Kjo llogari ka <strong>një</strong> paralajmërim.
         other: Kjo llogari ka <strong>%{count}</strong> paralajmërime.
-        zero: Kjo llogari është <strong>në pozita të mira</strong>.
       promote: Promovojeni
       protocol: Protokoll
       public: Publike
@@ -373,6 +372,7 @@ sq:
       enable: Aktivizoje
       enabled: I aktivizuar
       enabled_msg: Ai emoxhi u aktivizua me sukses
+      image_hint: PNG ose GIF deri në %{size}
       list: Vëre në listë
       listed: Në listë
       new:
@@ -468,6 +468,7 @@ sq:
         title: Zë i ri email në listë bllokimesh
       no_email_domain_block_selected: S’u ndryshuan blloqe përkatësish email, ngaqë s’qe përzgjedhur ndonjë
       resolved_dns_records_hint_html: Emri i përkatësisë jep u përket përkatësive vijuese MX, që janë përgjegjëset për pranim email-esh. Bllokimi i një përkatësie MX do të bllokojë regjistrime nga çfarëdo adrese email që përdor të njëjtën përkatësi MX, edhe nëse emri i dukshëm i përkatësisë është i ndryshëm. <strong>Jini i kujdesshëm të mos bllokoni shërbime të njohur email-esh.</strong>
+      resolved_through_html: Zgjidhur përmes %{domain}
       title: Listë bllokimesh email-esh
     follow_recommendations:
       description_html: "<strong>Rekomandimet për ndjekje ndihmojnë përdoruesit e rinj të gjejnë shpejt lëndë me interes</strong>. Kur një përdorues nuk ka ndërvepruar mjaftueshëm me të tjerët, që të formohen rekomandime të personalizuara ndjekjeje, rekomandohen këto llogari. Ato përzgjidhen çdo ditë, prej një përzierje llogarish me shkallën më të lartë të angazhimit dhe numrin më të lartë të ndjekësve vendorë për një gjuhë të dhënë."
@@ -487,6 +488,7 @@ sq:
           one: Përpjekje e dështuar në %{count} ditë.
           other: Përpjekje e dështuar në %{count} ditë të ndryshme.
         no_failures_recorded: S’ka dështime të regjistruara.
+        warning: Përpjekja e fundit për t’u lidhur me këtë shërbyes ka qenë e pasuksesshme
       back_to_all: Krejt
       back_to_limited: E kufizuar
       back_to_warning: Kujdes
@@ -526,7 +528,6 @@ sq:
       known_accounts:
         one: "%{count} llogari e njohur"
         other: "%{count} llogari të njohura"
-        zero: Pa llogari të njohur
       moderation:
         all: Krejt
         limited: Të kufizuarat
@@ -771,6 +772,11 @@ sq:
     system_checks:
       database_schema_check:
         message_html: Ka migrime bazash të dhënash pezull. Ju lutemi, kryejini, për të qenë të sigurt se aplikacioni sillet siç priteet
+      elasticsearch_running_check:
+        message_html: S’u lidh dot me Elasticsearch. Ju lutemi, kontrolloni nëse ky xhiron, ose çaktivizoni kërkimin në tërë tekstin
+      elasticsearch_version_check:
+        message_html: 'Version Elasticsearch i papërputhshëm: %{value}'
+        version_comparison: Xhiron Elasticsearch %{running_version}, ndërkohë që është i domosdoshëm %{required_version}
       rules_check:
         action: Administroni rregulla shërbyesi
         message_html: S’keni përcaktuar ndonjë rregull shërbyesi.
@@ -791,9 +797,8 @@ sq:
         disallow: Hiq lejimin e lidhjes
         disallow_provider: Mos e lejo botuesin
         shared_by_over_week:
-          one: Ndarë nga një person javën e kaluar
-          other: Ndarë nga %{count} persona javën e kaluar
-          zero: E pandarë nga njeri gjatë javës së kaluar
+          one: Ndarë me të tjerë nga një person gjatë javës së kaluar
+          other: Ndarë me të tjerë nga %{count} vetë gjatë javës së kaluar
         title: Lidhje në modë
         usage_comparison: Ndarë %{today} herë sot, kundrejt %{yesterday} dje
       pending_review: Në pritje të shqyrtimit
@@ -832,9 +837,8 @@ sq:
         usable: Mund të përdoret
         usage_comparison: Përdorur %{today} herë sot, krahasuar me %{yesterday} dje
         used_by_over_week:
-          one: Përdorur nga një persona gjatë javës së kaluar
-          other: Përdorur nga %{count} persona gjatë javës së kaluar
-          zero: E papërdorur nga njeri gjatë javës së kaluar
+          one: Përdorur nga një person gjatë javës së kaluar
+          other: Përdorur nga %{count} vetë gjatë javës së kaluar
       title: Në modë
     warning_presets:
       add_new: Shtoni të ri
@@ -1408,6 +1412,7 @@ sq:
     profile: Profil
     relationships: Ndjekje dhe ndjekës
     statuses_cleanup: Fshirje e automatizuar postimesh
+    strikes: Paralajmërime nga moderimi
     two_factor_authentication: Mirëfilltësim Dyfaktorësh
     webauthn_authentication: Kyçe sigurie
   statuses:
@@ -1428,6 +1433,7 @@ sq:
     disallowed_hashtags:
       one: 'përmbante një hashtag të palejuar: %{tags}'
       other: 'përmbante hashtag-ë të palejuar: %{tags}'
+    edited_at_html: Përpunuar më %{date}
     errors:
       in_reply_not_found: Gjendja të cilës po provoni t’i përgjigjeni s’duket se ekziston.
     open_in_web: Hape në internet
diff --git a/config/locales/sv.yml b/config/locales/sv.yml
index 441044516..c8424e5f5 100644
--- a/config/locales/sv.yml
+++ b/config/locales/sv.yml
@@ -160,10 +160,6 @@ sv:
       pending: Inväntar granskning
       perform_full_suspension: Utför full avstängning
       previous_strikes: Tidigare varningar
-      previous_strikes_description_html:
-        one: Detta konto har <strong>en</strong> varning.
-        other: Detta konto har <strong>%{count}</strong> varningar.
-        zero: Detta konto är <strong>i gott skick</strong>.
       promote: Befordra
       protocol: Protokoll
       public: Offentlig
diff --git a/config/locales/th.yml b/config/locales/th.yml
index d6248b7a8..ce40b9517 100644
--- a/config/locales/th.yml
+++ b/config/locales/th.yml
@@ -156,10 +156,6 @@ th:
       pending: การตรวจทานที่รอดำเนินการ
       perform_full_suspension: ระงับ
       previous_strikes: การดำเนินการก่อนหน้านี้
-      previous_strikes_description_html:
-        one: บัญชีนี้มี <strong>หนึ่ง</strong> การดำเนินการ
-        other: บัญชีนี้มี <strong>%{count}</strong> การดำเนินการ
-        zero: บัญชีนี้ <strong>อยู่ในสถานะที่ดี</strong>
       promote: เลื่อนขั้น
       protocol: โปรโตคอล
       public: สาธารณะ
@@ -490,10 +486,6 @@ th:
       delivery_available: มีการจัดส่ง
       delivery_error_days: วันที่มีข้อผิดพลาดการจัดส่ง
       empty: ไม่พบโดเมน
-      known_accounts:
-        one: "%{count} บัญชีที่รู้จัก"
-        other: "%{count} บัญชีที่รู้จัก"
-        zero: ไม่มีบัญชีที่รู้จัก
       moderation:
         all: ทั้งหมด
         limited: จำกัดอยู่
@@ -717,6 +709,8 @@ th:
         suspend: "%{name} ได้ระงับบัญชีของ %{target}"
       appeal_approved: อุทธรณ์แล้ว
     system_checks:
+      elasticsearch_version_check:
+        message_html: 'รุ่น Elasticsearch ที่เข้ากันไม่ได้: %{value}'
       rules_check:
         action: จัดการกฎของเซิร์ฟเวอร์
         message_html: คุณไม่ได้กำหนดกฎของเซิร์ฟเวอร์ใด ๆ
@@ -735,10 +729,6 @@ th:
         allow_provider: อนุญาตผู้เผยแพร่
         disallow: ไม่อนุญาตลิงก์
         disallow_provider: ไม่อนุญาตผู้เผยแพร่
-        shared_by_over_week:
-          one: แบ่งปันโดยหนึ่งคนในช่วงสัปดาห์ที่ผ่านมา
-          other: แบ่งปันโดย %{count} คนในช่วงสัปดาห์ที่ผ่านมา
-          zero: ไม่มีใครแบ่งปันในช่วงสัปดาห์ที่ผ่านมา
         title: ลิงก์ที่กำลังนิยม
         usage_comparison: แบ่งปัน %{today} ครั้งวันนี้ เทียบกับ %{yesterday} เมื่อวานนี้
       pending_review: การตรวจทานที่รอดำเนินการ
@@ -773,10 +763,6 @@ th:
         trending_rank: 'กำลังนิยม #%{rank}'
         usable: สามารถใช้
         usage_comparison: ใช้ %{today} ครั้งวันนี้ เทียบกับ %{yesterday} เมื่อวานนี้
-        used_by_over_week:
-          one: ใช้โดยหนึ่งคนในช่วงสัปดาห์ที่ผ่านมา
-          other: ใช้โดย %{count} คนในช่วงสัปดาห์ที่ผ่านมา
-          zero: ไม่มีใครใช้ในช่วงสัปดาห์ที่ผ่านมา
       title: แนวโน้ม
     warning_presets:
       add_new: เพิ่มใหม่
@@ -1439,11 +1425,12 @@ th:
         spam: สแปม
         violation: เนื้อหาละเมิดหลักเกณฑ์ชุมชนดังต่อไปนี้
       explanation:
-        delete_statuses: มีการพบว่าบางโพสต์ของคุณละเมิดหนึ่งหลักเกณฑ์ชุมชนหรือมากกว่าและได้รับการเอาออกโดยผู้ควบคุมของ %{instance} ในเวลาต่อมา
+        delete_statuses: มีการพบว่าโพสต์บางส่วนของคุณละเมิดหนึ่งหลักเกณฑ์ชุมชนหรือมากกว่าและได้รับการเอาออกโดยผู้ควบคุมของ %{instance} ในเวลาต่อมา
         disable: คุณไม่สามารถใช้บัญชีของคุณได้อีกต่อไป แต่โปรไฟล์และข้อมูลอื่น ๆ ของคุณยังคงอยู่ในสภาพเดิม คุณสามารถขอข้อมูลสำรองของข้อมูลของคุณ เปลี่ยนการตั้งค่าบัญชี หรือลบบัญชีของคุณ
-        mark_statuses_as_sensitive: ทำเครื่องหมายบางโพสต์ของคุณว่าละเอียดอ่อนโดยผู้ควบคุมของ %{instance} แล้ว นี่หมายความว่าผู้คนจะต้องแตะสื่อในโพสต์ก่อนที่จะแสดงตัวอย่าง คุณสามารถทำเครื่องหมายสื่อว่าละเอียดอ่อนด้วยตัวคุณเองเมื่อโพสต์ในอนาคต
+        mark_statuses_as_sensitive: ทำเครื่องหมายโพสต์บางส่วนของคุณว่าละเอียดอ่อนโดยผู้ควบคุมของ %{instance} แล้ว นี่หมายความว่าผู้คนจะต้องแตะสื่อในโพสต์ก่อนที่จะแสดงตัวอย่าง คุณสามารถทำเครื่องหมายสื่อว่าละเอียดอ่อนด้วยตัวคุณเองเมื่อโพสต์ในอนาคต
         sensitive: จากนี้ไป จะทำเครื่องหมายไฟล์สื่อที่อัปโหลดทั้งหมดของคุณว่าละเอียดอ่อนและซ่อนอยู่หลังการคลิกไปยังคำเตือน
         silence: คุณยังคงสามารถใช้บัญชีของคุณแต่เฉพาะผู้คนที่กำลังติดตามคุณอยู่แล้วเท่านั้นที่จะเห็นโพสต์ของคุณในเซิร์ฟเวอร์นี้ และอาจแยกคุณออกจากคุณลักษณะการค้นพบต่าง ๆ อย่างไรก็ตาม ผู้อื่นอาจยังติดตามคุณด้วยตนเอง
+        suspend: คุณไม่สามารถใช้บัญชีของคุณได้อีกต่อไป และจะไม่สามารถเข้าถึงโปรไฟล์และข้อมูลอื่น ๆ ของคุณได้อีกต่อไป คุณยังคงสามารถเข้าสู่ระบบเพื่อขอข้อมูลสำรองของข้อมูลของคุณจนกว่าจะเอาข้อมูลออกอย่างสมบูรณ์ในเวลาประมาณ 30 วัน แต่เราจะเก็บรักษาข้อมูลพื้นฐานบางอย่างไว้เพื่อป้องกันไม่ให้คุณหลบเลี่ยงการระงับ
       reason: 'เหตุผล:'
       statuses: 'โพสต์ที่อ้างถึง:'
       subject:
diff --git a/config/locales/tr.yml b/config/locales/tr.yml
index 47a55326b..2733f5eba 100644
--- a/config/locales/tr.yml
+++ b/config/locales/tr.yml
@@ -165,10 +165,6 @@ tr:
       pending: Bekleyen yorum
       perform_full_suspension: Askıya al
       previous_strikes: Önceki eylemler
-      previous_strikes_description_html:
-        one: Bu hesap için <strong>bir</strong> eylem yapılmış.
-        other: Bu hesap için <strong>%{count}</strong> eylem yapılmış.
-        zero: Bu hesap <strong>hali iyi durumda</strong>.
       promote: Yükselt
       protocol: Protokol
       public: Herkese açık
@@ -527,10 +523,6 @@ tr:
       delivery_error_hint: Eğer teslimat %{count} gün boyunca mümkün olmazsa, otomatik olarak teslim edilemiyor olarak işaretlenecek.
       destroyed_msg: "%{domain} alan adından veriler hemen silinmek üzere kuyruğa alındı."
       empty: Alan adı bulunamadı.
-      known_accounts:
-        one: "%{count} bilinen hesap"
-        other: "%{count} bilinen hesap"
-        zero: Bilinen hesap yok
       moderation:
         all: Tümü
         limited: Sınırlı
@@ -794,10 +786,6 @@ tr:
         description_html: Bu bağlantılar şu anda sunucunuzun gönderilerini gördüğü hesaplarca bolca paylaşılıyor. Kullanıcılarınızın dünyada neler olduğunu görmesine yardımcı olabilir. Yayıncıyı onaylamadığınız sürece hiçbir bağlantı herkese açık yayınlanmaz. Tekil bağlantıları onaylayabilir veya reddedebilirsiniz.
         disallow: Bağlantıya izin verme
         disallow_provider: Yayıncıya izin verme
-        shared_by_over_week:
-          one: Geçen hafta bir kişi paylaştı
-          other: Geçen hafta %{count} kişi paylaştı
-          zero: Geçen hafta kimse paylaşmadı
         title: Öne çıkan bağlantılar
         usage_comparison: Bugün %{today} kere paylaşıldı, dün %{yesterday} kere paylaşılmıştı
       pending_review: İnceleme bekliyor
@@ -837,10 +825,6 @@ tr:
         trending_rank: 'Öne çıkanlar #%{rank}'
         usable: Kullanılabilir
         usage_comparison: Bugün %{today} kere kullanıldı, dün %{yesterday} kere kullanılmıştı
-        used_by_over_week:
-          one: Geçen hafta bir kişi tarafından kullanıldı
-          other: Geçen hafta %{count} kişi tarafından kullanıldı
-          zero: Geçen hafta kimse tarafından kullanılmadı
       title: Öne çıkanlar
     warning_presets:
       add_new: Yeni ekle
diff --git a/config/locales/uk.yml b/config/locales/uk.yml
index ec0036226..a42f048d6 100644
--- a/config/locales/uk.yml
+++ b/config/locales/uk.yml
@@ -440,10 +440,15 @@ uk:
       add_new: Додати
       created_msg: Успішно додано поштовий домен до чорного списку
       delete: Видалити
+      dns:
+        types:
+          mx: MX-запис
       domain: Домен
       new:
         create: Додати домен
+        resolve: Розв'язати домен
         title: Нове блокування поштового домену
+      resolved_through_html: Розв'язано через %{domain}
       title: Чорний список поштових доменів
     follow_recommendations:
       description_html: "<strong>Слідувати рекомендаціям та допомогти новим користувачам швидко знайти цікавий вміст</strong>. Коли користувачі не взаємодіяли з іншими людьми достатньо, щоб сформувати персоналізовані рекомендації, радимо замість цього вказувати ці облікові записи. Вони щоденно переобчислюються з масиву облікових записів з найбільшою кількістю недавніх взаємодій і найбільшою кількістю місцевих підписників розраховується для цієї мови."
@@ -481,10 +486,6 @@ uk:
       delivery_error_hint: Якщо доставляння неможливе впродовж %{count} днів, воно автоматично позначиться недоставленим.
       destroyed_msg: Дані з %{domain} тепер у черзі на видалення.
       empty: Доменів не знайдено.
-      known_accounts:
-        one: "%{count} відомий обліковий запис"
-        other: "%{count} відомих облікових записів"
-        zero: Немає відомих облікових записів
       moderation:
         all: Усі
         limited: Обмежені
@@ -571,6 +572,7 @@ uk:
       forwarded: Переслано
       forwarded_to: Переслано до %{domain}
       mark_as_resolved: Відмітити як вирішену
+      mark_as_sensitive: Позначити делікатним
       mark_as_unresolved: Відмітити як невирішену
       no_one_assigned: Ніхто
       notes:
@@ -745,6 +747,7 @@ uk:
       statuses:
         allow: Дозволити оприлюднення
         allow_account: Дозволити автора
+        disallow: Заборонити допис
         disallow_account: Заборонити автора
       tags:
         current_score: Поточний результат %{score}
@@ -862,6 +865,7 @@ uk:
     status:
       account_status: Статус облікового запису
       confirming: Очікуємо на завершення підтвердження за допомогою електронної пошти.
+      functional: Ваш обліковий запис повністю робочий.
       pending: Ваша заява очікує на розгляд нашим персоналом. Це може зайняти деякий час. Ви отримаєте електронний лист, якщо ваша заява буде схвалена.
       redirecting_to: Ваш обліковий запис наразі неактивний, тому що він перенаправлений до %{acct}.
     too_fast: Форму подано занадто швидко, спробуйте ще раз.
@@ -938,13 +942,16 @@ uk:
         submit: Подати апеляцію
       associated_report: Пов'язана скарга
       created_at: Застарілі
+      recipient: Адресант
       status: 'Допис #%{id}'
       status_removed: Допис уже вилучено з системи
       title: "%{action} від %{date}"
       title_actions:
         delete_statuses: Вилучення допису
         disable: Заморожування облікового запису
+        mark_statuses_as_sensitive: Позначати дописи делікатними
         none: Попередження
+        sensitive: Позначення облікового запису делікатним
         silence: Обмеження облікового запису
         suspend: Призупинення облікового запису
       your_appeal_approved: Вашу апеляцію було схвалено
@@ -1128,6 +1135,9 @@ uk:
     carry_mutes_over_text: Цей користувач переїхав з %{acct}, який ви заглушили.
     copy_account_note_text: 'Цей користувач був переміщений з %{acct}, ось ваші попередні нотатки:'
   notification_mailer:
+    admin:
+      sign_up:
+        subject: "%{name} приєднується"
     digest:
       action: Показати усі сповіщення
       body: Коротко про пропущене вами з Вашого останнього входу %{since}
diff --git a/config/locales/vi.yml b/config/locales/vi.yml
index ea196a5cd..14e6c1c3b 100644
--- a/config/locales/vi.yml
+++ b/config/locales/vi.yml
@@ -160,9 +160,7 @@ vi:
       perform_full_suspension: Vô hiệu hóa
       previous_strikes: Lịch sử kiểm duyệt
       previous_strikes_description_html:
-        one: Người dùng này có <strong>một</strong> lần cảnh cáo.
-        other: Người dùng này có <strong>%{count}</strong> lần cảnh cáo.
-        zero: Người dùng này <strong>chưa từng bị cảnh cáo</strong>.
+        other: Người này bị cảnh cáo <strong>%{count}</strong> lần.
       promote: Chỉ định vai trò
       protocol: Giao thức
       public: Công khai
@@ -230,22 +228,22 @@ vi:
         approve_appeal: Phê duyệt kháng cáo
         approve_user: Phê duyệt người dùng
         assigned_to_self_report: Tự xử lý báo cáo
-        change_email_user: Đổi email
-        confirm_user: Xác thực
-        create_account_warning: Cảnh cáo
+        change_email_user: Đổi email người dùng
+        confirm_user: Xác thực người dùng
+        create_account_warning: Cảnh cáo người dùng
         create_announcement: Tạo thông báo mới
-        create_custom_emoji: Tạo emoji mới
-        create_domain_allow: Tạo cho phép máy chủ mới
-        create_domain_block: Tạo chặn máy chủ mới
-        create_email_domain_block: Tạo chặn tên miền email mới
+        create_custom_emoji: Tạo emoji
+        create_domain_allow: Cho phép máy chủ
+        create_domain_block: Chặn máy chủ
+        create_email_domain_block: Chặn tên miền email
         create_ip_block: Tạo chặn IP mới
-        create_unavailable_domain: Tạo máy chủ không khả dụng
+        create_unavailable_domain: Máy chủ không khả dụng
         demote_user: Xóa vai trò
         destroy_announcement: Xóa thông báo
         destroy_custom_emoji: Xóa emoji
-        destroy_domain_allow: Xóa máy chủ cho phép
-        destroy_domain_block: Xóa máy chủ đã chặn
-        destroy_email_domain_block: Xóa tên miền email đã chặn
+        destroy_domain_allow: Bỏ cho phép máy chủ
+        destroy_domain_block: Bỏ chặn máy chủ
+        destroy_email_domain_block: Bỏ chặn tên miền email
         destroy_instance: Thanh trừng máy chủ
         destroy_ip_block: Xóa IP đã chặn
         destroy_status: Xóa tút
@@ -253,10 +251,10 @@ vi:
         disable_2fa_user: Vô hiệu hóa 2FA
         disable_custom_emoji: Vô hiệu hóa emoji
         disable_sign_in_token_auth_user: Tắt xác thực bằng email cho người dùng
-        disable_user: Khóa người dùng
-        enable_custom_emoji: Kích hoạt Emoji
+        disable_user: Vô hiệu hóa đăng nhập
+        enable_custom_emoji: Cho phép Emoji
         enable_sign_in_token_auth_user: Bật xác thực bằng email cho người dùng
-        enable_user: Kích hoạt lại người dùng
+        enable_user: Bỏ vô hiệu hóa đăng nhập
         memorialize_account: Đánh dấu tưởng niệm
         promote_user: Chỉ định vai trò
         reject_appeal: Từ chối kháng cáo
@@ -265,24 +263,24 @@ vi:
         reopen_report: Mở lại báo cáo
         reset_password_user: Đặt lại mật khẩu
         resolve_report: Xử lý báo cáo
-        sensitive_account: Đánh dấu nhạy cảm
-        silence_account: Đánh dấu hạn chế
-        suspend_account: Đánh dấu vô hiệu hóa
+        sensitive_account: Áp đặt nhạy cảm
+        silence_account: Áp đặt hạn chế
+        suspend_account: Áp đặt vô hiệu hóa
         unassigned_report: Báo cáo chưa xử lý
         unblock_email_account: Mở khóa địa chỉ email
         unsensitive_account: Bỏ nhạy cảm
         unsilence_account: Bỏ hạn chế
         unsuspend_account: Bỏ vô hiệu hóa
         update_announcement: Cập nhật thông báo
-        update_custom_emoji: Cập nhật Emoji mới
+        update_custom_emoji: Cập nhật Emoji
         update_domain_block: Cập nhật máy chủ chặn
         update_status: Cập nhật tút
       actions:
         approve_appeal_html: "%{name} đã phê duyệt quyết định kiểm duyệt từ %{target}"
         approve_user_html: "%{name} đã chấp nhận đăng ký từ %{target}"
         assigned_to_self_report_html: "%{name} tự xử lý báo cáo %{target}"
-        change_email_user_html: "%{name} đã thay đổi địa chỉ email cho %{target}"
-        confirm_user_html: "%{name} xác nhận địa chỉ email của người dùng %{target}"
+        change_email_user_html: "%{name} đã thay đổi địa chỉ email của %{target}"
+        confirm_user_html: "%{name} đã xác thực địa chỉ email của %{target}"
         create_account_warning_html: "%{name} đã gửi cảnh cáo %{target}"
         create_announcement_html: "%{name} tạo thông báo mới %{target}"
         create_custom_emoji_html: "%{name} đã tải lên biểu tượng cảm xúc mới %{target}"
@@ -307,14 +305,14 @@ vi:
         disable_user_html: "%{name} vô hiệu hóa đăng nhập %{target}"
         enable_custom_emoji_html: "%{name} cho phép Emoji %{target}"
         enable_sign_in_token_auth_user_html: "%{name} bật xác thực email của %{target}"
-        enable_user_html: "%{name} mở khóa cho người dùng %{target}"
+        enable_user_html: "%{name} bỏ vô hiệu hóa đăng nhập %{target}"
         memorialize_account_html: "%{name} đã biến tài khoản %{target} thành một trang tưởng niệm"
         promote_user_html: "%{name} chỉ định vai trò cho %{target}"
-        reject_appeal_html: "%{name} đã phản đối quyết định kiểm duyệt từ %{target}"
+        reject_appeal_html: "%{name} đã từ chối kháng cáo của %{target}"
         reject_user_html: "%{name} đã từ chối đăng ký từ %{target}"
         remove_avatar_user_html: "%{name} đã xóa ảnh đại diện của %{target}"
         reopen_report_html: "%{name} mở lại báo cáo %{target}"
-        reset_password_user_html: "%{name} đặt lại mật khẩu của người dùng %{target}"
+        reset_password_user_html: "%{name} đã đặt lại mật khẩu của %{target}"
         resolve_report_html: "%{name} đã xử lý báo cáo %{target}"
         sensitive_account_html: "%{name} đánh dấu nội dung của %{target} là nhạy cảm"
         silence_account_html: "%{name} đã ẩn %{target}"
@@ -323,15 +321,15 @@ vi:
         unblock_email_account_html: "%{name} mở khóa địa chỉ email của %{target}"
         unsensitive_account_html: "%{name} đánh dấu nội dung của %{target} là bình thường"
         unsilence_account_html: "%{name} đã bỏ ẩn %{target}"
-        unsuspend_account_html: "%{name} đã ngừng vô hiệu hóa %{target}"
+        unsuspend_account_html: "%{name} đã bỏ vô hiệu hóa %{target}"
         update_announcement_html: "%{name} cập nhật thông báo %{target}"
         update_custom_emoji_html: "%{name} đã cập nhật emoji %{target}"
         update_domain_block_html: "%{name} cập nhật chặn máy chủ %{target}"
         update_status_html: "%{name} cập nhật tút của %{target}"
       deleted_status: "(tút đã xóa)"
       empty: Không tìm thấy bản ghi.
-      filter_by_action: Lọc theo hành động
-      filter_by_user: Lọc theo người
+      filter_by_action: Theo hành động
+      filter_by_user: Theo người
       title: Nhật ký kiểm duyệt
     announcements:
       destroyed_msg: Xóa thông báo thành công!
@@ -477,6 +475,7 @@ vi:
           other: Thất bại tạm thời vào %{count} ngày khác.
         no_failures_recorded: Chưa bao giờ thất bại.
         title: Khả dụng
+        warning: Lần thử cuối cùng để kết nối tới máy chủ này đã không thành công
       back_to_all: Toàn bộ
       back_to_limited: Hạn chế
       back_to_warning: Cảnh báo
@@ -514,9 +513,7 @@ vi:
       destroyed_msg: Dữ liệu từ %{domain} đã lên lịch để xóa.
       empty: Không có máy chủ nào.
       known_accounts:
-        one: "%{count} người dùng đã biết"
-        other: "%{count} người dùng đã biết"
-        zero: Không có người dùng đã biết
+        other: "%{count} tài khoản đã biết"
       moderation:
         all: Tất cả
         limited: Hạn chế
@@ -760,6 +757,11 @@ vi:
     system_checks:
       database_schema_check:
         message_html: Có cơ sở dữ liệu đang chờ xử lý. Xin khởi động nó để ứng dụng có thể hoạt động một cách ổn định nhất
+      elasticsearch_running_check:
+        message_html: Không thể kết nối Elasticsearch. Hãy kiểm tra xem nó có đang chạy, hay tìm kiếm full-text bị tắt
+      elasticsearch_version_check:
+        message_html: 'Phiên bản Elasticsearch không tương thích: %{value}'
+        version_comparison: Đang dùng Elasticsearch %{running_version} trong khi bắt buộc phải có %{required_version}
       rules_check:
         action: Sửa quy tắc máy chủ
         message_html: Bạn chưa cập nhật quy tắc máy chủ.
@@ -780,9 +782,7 @@ vi:
         disallow: Cấm liên kết
         disallow_provider: Cấm nguồn đăng
         shared_by_over_week:
-          one: một người chia sẻ trong tuần qua
-          other: "%{count} người chia sẻ trong tuần qua"
-          zero: Không ai chia sẻ trong tuần qua
+          other: "%{count} người chia sẻ tuần rồi"
         title: Liên kết xu hướng
         usage_comparison: Chia sẻ %{today} lần hôm nay, so với %{yesterday} lần hôm qua
       pending_review: Đang chờ
@@ -822,9 +822,7 @@ vi:
         usable: Có thể dùng
         usage_comparison: Dùng %{today} lần hôm nay, so với %{yesterday} hôm qua
         used_by_over_week:
-          one: Dùng bởi một người trong tuần qua
-          other: Dùng bởi %{count} người trong tuần qua
-          zero: Không ai dùng trong tuần qua
+          other: "%{count} người dùng tuần rồi"
       title: Xu hướng
     warning_presets:
       add_new: Thêm mới
diff --git a/config/locales/zh-CN.yml b/config/locales/zh-CN.yml
index 6341b4eed..48c2ec09a 100644
--- a/config/locales/zh-CN.yml
+++ b/config/locales/zh-CN.yml
@@ -161,10 +161,6 @@ zh-CN:
       pending: 待审核
       perform_full_suspension: 封禁
       previous_strikes: 既往处罚
-      previous_strikes_description_html:
-        one: 此账号有<strong>1次</strong>处罚。
-        other: 此账号有<strong>%{count}次</strong>处罚。
-        zero: 此账号<strong>记录良好</strong>。
       promote: 升任
       protocol: 协议
       public: 公开页面
@@ -516,10 +512,6 @@ zh-CN:
       delivery_error_hint: 如果投递已不可用 %{count} 天,它将被自动标记为无法投递。
       destroyed_msg: "%{domain} 中的数据现在正在排队等待被立刻删除。"
       empty: 暂无域名。
-      known_accounts:
-        one: "%{count} 个已知帐户"
-        other: "%{count} 个已知帐户"
-        zero: 没有已知账户
       moderation:
         all: 全部
         limited: 受限的
@@ -782,10 +774,6 @@ zh-CN:
         description_html: 这些是当前此服务器可见账号的嘟文中被大量分享的链接。它可以帮助用户了解正在发生的事情。发布者获得批准前不会公开显示任何链接。你也可以批准或拒绝单个链接。
         disallow: 不允许链接
         disallow_provider: 不允许发布者
-        shared_by_over_week:
-          one: 过去一周内被 1 个人分享过
-          other: 过去一周内被 %{count} 个人分享过
-          zero: 过去一周内未被分享过
         title: 热门链接
         usage_comparison: 今日被分享 %{today} 次,前一日为 %{yesterday} 次
       pending_review: 待审核
@@ -824,10 +812,6 @@ zh-CN:
         trending_rank: '热门 #%{rank}'
         usable: 可以使用
         usage_comparison: 今日被使用 %{today} 次,前一日为 %{yesterday} 次
-        used_by_over_week:
-          one: 过去一周内被 1 个人使用过
-          other: 过去一周内被 %{count} 个人使用过
-          zero: 过去一周内未被使用过
       title: 流行趋势
     warning_presets:
       add_new: 添加新条目
diff --git a/config/locales/zh-TW.yml b/config/locales/zh-TW.yml
index 1b64f9893..90625c5fd 100644
--- a/config/locales/zh-TW.yml
+++ b/config/locales/zh-TW.yml
@@ -160,9 +160,7 @@ zh-TW:
       perform_full_suspension: 停權
       previous_strikes: 先前的警示
       previous_strikes_description_html:
-        one: 此帳號已有 <strong>1</strong> 次警示。
         other: 此帳號已有 <strong>%{count}</strong> 次警示。
-        zero: 此帳號<strong>信譽良好</strong>。
       promote: 晉級
       protocol: 協議
       public: 公開
@@ -517,9 +515,7 @@ zh-TW:
       destroyed_msg: 來自 %{domain} 的資料現在正在佇列中等待刪除。
       empty: 找不到網域
       known_accounts:
-        one: "%{count} 個已知帳號"
         other: "%{count} 個已知帳號"
-        zero: 沒有已知帳號
       moderation:
         all: 全部
         limited: 限制
@@ -763,6 +759,11 @@ zh-TW:
     system_checks:
       database_schema_check:
         message_html: 有挂起的数据库迁移,请运行它们以确保应用程序按照预期运行。
+      elasticsearch_running_check:
+        message_html: 無法連接 Elasticsearch。請檢查是否正在執行中,或者已關閉全文搜尋。
+      elasticsearch_version_check:
+        message_html: 不相容的 Elasticsearch 版本:%{value}
+        version_comparison: Elasticsearch %{running_version} 版正在執行,需要 %{required_version} 版。
       rules_check:
         action: 管理服务器规则
         message_html: 你没有定义任何服务器规则。
@@ -783,9 +784,7 @@ zh-TW:
         disallow: 不允許連結
         disallow_provider: 不允許發行者
         shared_by_over_week:
-          one: 上週由 1 個人分享
-          other: 上週由 %{count} 個人分享
-          zero: 上週無人分享
+          other: 上週被 %{count} 名使用者分享
         title: 熱門連結
         usage_comparison: 於今日被 %{today} 人分享,相較於昨日 %{yesterday} 人
       pending_review: 等待審核中
@@ -825,9 +824,7 @@ zh-TW:
         usable: 可被使用
         usage_comparison: 於今日被使用 %{today} 次,相較於昨日 %{yesterday} 次
         used_by_over_week:
-          one: 上週被 1 個人使用
           other: 上週被 %{count} 個人使用
-          zero: 上週無人使用
       title: 熱門榜
     warning_presets:
       add_new: 新增
diff --git a/config/routes.rb b/config/routes.rb
index 4ed2ee760..55e17ab14 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -581,6 +581,10 @@ Rails.application.routes.draw do
       resources :media, only: [:create]
       get '/search', to: 'search#index', as: :search
       resources :suggestions, only: [:index]
+
+      namespace :admin do
+        resources :accounts, only: [:index]
+      end
     end
 
     namespace :web do
diff --git a/package.json b/package.json
index c2be11290..8eddc9242 100644
--- a/package.json
+++ b/package.json
@@ -78,7 +78,7 @@
     "arrow-key-navigation": "^1.2.0",
     "autoprefixer": "^9.8.8",
     "axios": "^0.26.1",
-    "babel-loader": "^8.2.3",
+    "babel-loader": "^8.2.4",
     "babel-plugin-lodash": "^3.3.4",
     "babel-plugin-preval": "^5.1.0",
     "babel-plugin-react-intl": "^6.2.0",
@@ -177,7 +177,7 @@
     "ws": "^8.5.0"
   },
   "devDependencies": {
-    "@testing-library/jest-dom": "^5.16.2",
+    "@testing-library/jest-dom": "^5.16.3",
     "@testing-library/react": "^12.1.4",
     "babel-eslint": "^10.1.0",
     "babel-jest": "^27.5.1",
@@ -187,13 +187,13 @@
     "eslint-plugin-promise": "~6.0.0",
     "eslint-plugin-react": "~7.29.4",
     "jest": "^27.5.1",
-    "prettier": "^2.6.0",
+    "prettier": "^2.6.1",
     "raf": "^3.4.1",
     "react-intl-translations-manager": "^5.0.3",
     "react-test-renderer": "^16.14.0",
     "sass-lint": "^1.13.1",
     "webpack-dev-server": "^3.11.3",
-    "yargs": "^17.3.1"
+    "yargs": "^17.4.0"
   },
   "resolutions": {
     "kind-of": "^6.0.3"
diff --git a/spec/controllers/api/v1/admin/accounts_controller_spec.rb b/spec/controllers/api/v1/admin/accounts_controller_spec.rb
index 3f61bbc0b..b69595f7e 100644
--- a/spec/controllers/api/v1/admin/accounts_controller_spec.rb
+++ b/spec/controllers/api/v1/admin/accounts_controller_spec.rb
@@ -30,15 +30,44 @@ RSpec.describe Api::V1::Admin::AccountsController, type: :controller do
   end
 
   describe 'GET #index' do
+    let!(:remote_account)       { Fabricate(:account, domain: 'example.org') }
+    let!(:other_remote_account) { Fabricate(:account, domain: 'foo.bar') }
+    let!(:suspended_account)    { Fabricate(:account, suspended: true) }
+    let!(:suspended_remote)     { Fabricate(:account, domain: 'foo.bar', suspended: true) }
+    let!(:disabled_account)     { Fabricate(:user, disabled: true).account }
+    let!(:pending_account)      { Fabricate(:user, approved: false).account }
+    let!(:admin_account)        { user.account }
+
+    let(:params) { {} }
+
     before do
-      get :index
+      pending_account.user.update(approved: false)
+      get :index, params: params
     end
 
     it_behaves_like 'forbidden for wrong scope', 'write:statuses'
     it_behaves_like 'forbidden for wrong role', 'user'
 
-    it 'returns http success' do
-      expect(response).to have_http_status(200)
+    [
+      [{ active: 'true', local: 'true', staff: 'true' }, [:admin_account]],
+      [{ by_domain: 'example.org', remote: 'true' }, [:remote_account]],
+      [{ suspended: 'true' }, [:suspended_account]],
+      [{ disabled: 'true' }, [:disabled_account]],
+      [{ pending: 'true' }, [:pending_account]],
+    ].each do |params, expected_results|
+      context "when called with #{params.inspect}" do
+        let(:params) { params }
+
+        it 'returns http success' do
+          expect(response).to have_http_status(200)
+        end
+
+        it "returns the correct accounts (#{expected_results.inspect})" do
+          json = body_as_json
+
+          expect(json.map { |a| a[:id].to_i }).to eq (expected_results.map { |symbol| send(symbol).id })
+        end
+      end
     end
   end
 
diff --git a/spec/controllers/api/v2/admin/accounts_controller_spec.rb b/spec/controllers/api/v2/admin/accounts_controller_spec.rb
new file mode 100644
index 000000000..3212ddb84
--- /dev/null
+++ b/spec/controllers/api/v2/admin/accounts_controller_spec.rb
@@ -0,0 +1,73 @@
+require 'rails_helper'
+
+RSpec.describe Api::V2::Admin::AccountsController, type: :controller do
+  render_views
+
+  let(:role)   { 'moderator' }
+  let(:user)   { Fabricate(:user, role: role) }
+  let(:scopes) { 'admin:read admin:write' }
+  let(:token)  { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
+  let(:account) { Fabricate(:account) }
+
+  before do
+    allow(controller).to receive(:doorkeeper_token) { token }
+  end
+
+  shared_examples 'forbidden for wrong scope' do |wrong_scope|
+    let(:scopes) { wrong_scope }
+
+    it 'returns http forbidden' do
+      expect(response).to have_http_status(403)
+    end
+  end
+
+  shared_examples 'forbidden for wrong role' do |wrong_role|
+    let(:role) { wrong_role }
+
+    it 'returns http forbidden' do
+      expect(response).to have_http_status(403)
+    end
+  end
+
+  describe 'GET #index' do
+    let!(:remote_account)       { Fabricate(:account, domain: 'example.org') }
+    let!(:other_remote_account) { Fabricate(:account, domain: 'foo.bar') }
+    let!(:suspended_account)    { Fabricate(:account, suspended: true) }
+    let!(:suspended_remote)     { Fabricate(:account, domain: 'foo.bar', suspended: true) }
+    let!(:disabled_account)     { Fabricate(:user, disabled: true).account }
+    let!(:pending_account)      { Fabricate(:user, approved: false).account }
+    let!(:admin_account)        { user.account }
+
+    let(:params) { {} }
+
+    before do
+      pending_account.user.update(approved: false)
+      get :index, params: params
+    end
+
+    it_behaves_like 'forbidden for wrong scope', 'write:statuses'
+    it_behaves_like 'forbidden for wrong role', 'user'
+
+    [
+      [{ status: 'active', origin: 'local', permissions: 'staff' }, [:admin_account]],
+      [{ by_domain: 'example.org', origin: 'remote' }, [:remote_account]],
+      [{ status: 'suspended' }, [:suspended_remote, :suspended_account]],
+      [{ status: 'disabled' }, [:disabled_account]],
+      [{ status: 'pending' }, [:pending_account]],
+    ].each do |params, expected_results|
+      context "when called with #{params.inspect}" do
+        let(:params) { params }
+
+        it 'returns http success' do
+          expect(response).to have_http_status(200)
+        end
+
+        it "returns the correct accounts (#{expected_results.inspect})" do
+          json = body_as_json
+
+          expect(json.map { |a| a[:id].to_i }).to eq (expected_results.map { |symbol| send(symbol).id })
+        end
+      end
+    end
+  end
+end
diff --git a/yarn.lock b/yarn.lock
index 1c0eee6f4..d913e470e 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1490,10 +1490,10 @@
     lz-string "^1.4.4"
     pretty-format "^27.0.2"
 
-"@testing-library/jest-dom@^5.16.2":
-  version "5.16.2"
-  resolved "https://registry.yarnpkg.com/@testing-library/jest-dom/-/jest-dom-5.16.2.tgz#f329b36b44aa6149cd6ced9adf567f8b6aa1c959"
-  integrity sha512-6ewxs1MXWwsBFZXIk4nKKskWANelkdUehchEOokHsN8X7c2eKXGw+77aRV63UU8f/DTSVUPLaGxdrj4lN7D/ug==
+"@testing-library/jest-dom@^5.16.3":
+  version "5.16.3"
+  resolved "https://registry.yarnpkg.com/@testing-library/jest-dom/-/jest-dom-5.16.3.tgz#b76851a909586113c20486f1679ffb4d8ec27bfa"
+  integrity sha512-u5DfKj4wfSt6akfndfu1eG06jsdyA/IUrlX2n3pyq5UXgXMhXY+NJb8eNK/7pqPWAhCKsCGWDdDO0zKMKAYkEA==
   dependencies:
     "@babel/runtime" "^7.9.2"
     "@types/testing-library__jest-dom" "^5.9.1"
@@ -2366,13 +2366,13 @@ babel-jest@^27.5.1:
     graceful-fs "^4.2.9"
     slash "^3.0.0"
 
-babel-loader@^8.2.3:
-  version "8.2.3"
-  resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.2.3.tgz#8986b40f1a64cacfcb4b8429320085ef68b1342d"
-  integrity sha512-n4Zeta8NC3QAsuyiizu0GkmRcQ6clkV9WFUnUf1iXP//IeSKbWjofW3UHyZVwlOB4y039YQKefawyTn64Zwbuw==
+babel-loader@^8.2.4:
+  version "8.2.4"
+  resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.2.4.tgz#95f5023c791b2e9e2ca6f67b0984f39c82ff384b"
+  integrity sha512-8dytA3gcvPPPv4Grjhnt8b5IIiTcq/zeXOPk4iTYI0SVXcsmuGg7JtBRDp8S9X+gJfhQ8ektjXZlDu1Bb33U8A==
   dependencies:
     find-cache-dir "^3.3.1"
-    loader-utils "^1.4.0"
+    loader-utils "^2.0.0"
     make-dir "^3.1.0"
     schema-utils "^2.6.5"
 
@@ -2948,7 +2948,7 @@ caniuse-api@^3.0.0:
 
 caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001219, caniuse-lite@^1.0.30001271, caniuse-lite@^1.0.30001286:
   version "1.0.30001310"
-  resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001310.tgz"
+  resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001310.tgz#da02cd07432c9eece6992689d1b84ca18139eea8"
   integrity sha512-cb9xTV8k9HTIUA3GnPUJCk0meUnrHL5gy5QePfDjxHyNBcnzPzrHFv5GqfP7ue5b1ZyzZL0RJboD6hQlPXjhjg==
 
 chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3:
@@ -8661,10 +8661,10 @@ prelude-ls@~1.1.2:
   resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
   integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=
 
-prettier@^2.6.0:
-  version "2.6.0"
-  resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.6.0.tgz#12f8f504c4d8ddb76475f441337542fa799207d4"
-  integrity sha512-m2FgJibYrBGGgQXNzfd0PuDGShJgRavjUoRCw1mZERIWVSXF0iLzLm+aOqTAbLnC3n6JzUhAA8uZnFVghHJ86A==
+prettier@^2.6.1:
+  version "2.6.1"
+  resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.6.1.tgz#d472797e0d7461605c1609808e27b80c0f9cfe17"
+  integrity sha512-8UVbTBYGwN37Bs9LERmxCPjdvPxlEowx2urIL6urHzdb3SDq4B/Z6xLFCblrSnE4iKWcS6ziJ3aOYrc1kz/E2A==
 
 pretty-format@^25.2.1, pretty-format@^25.5.0:
   version "25.5.0"
@@ -11546,10 +11546,10 @@ yargs@^16.2.0:
     y18n "^5.0.5"
     yargs-parser "^20.2.2"
 
-yargs@^17.3.1:
-  version "17.3.1"
-  resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.3.1.tgz#da56b28f32e2fd45aefb402ed9c26f42be4c07b9"
-  integrity sha512-WUANQeVgjLbNsEmGk20f+nlHgOqzRFpiGWVaBrYGYIGANIIu3lWjoyi0fNlFmJkvfhCZ6BXINe7/W2O2bV4iaA==
+yargs@^17.4.0:
+  version "17.4.0"
+  resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.4.0.tgz#9fc9efc96bd3aa2c1240446af28499f0e7593d00"
+  integrity sha512-WJudfrk81yWFSOkZYpAZx4Nt7V4xp7S/uJkX0CnxovMCt1wCE8LNftPpNuF9X/u9gN5nsD7ycYtRcDf2pL3UiA==
   dependencies:
     cliui "^7.0.2"
     escalade "^3.1.1"