about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/test-chart.yml138
-rw-r--r--.rubocop.yml6
-rw-r--r--CHANGELOG.md7
-rw-r--r--Dockerfile178
-rw-r--r--Gemfile10
-rw-r--r--Gemfile.lock38
-rw-r--r--app/controllers/accounts_controller.rb2
-rw-r--r--app/controllers/admin/domain_blocks_controller.rb4
-rw-r--r--app/controllers/admin/email_domain_blocks_controller.rb2
-rw-r--r--app/controllers/admin/export_domain_allows_controller.rb6
-rw-r--r--app/controllers/admin/export_domain_blocks_controller.rb6
-rw-r--r--app/controllers/api/base_controller.rb2
-rw-r--r--app/controllers/api/v1/followed_tags_controller.rb6
-rw-r--r--app/controllers/api/v1/tags_controller.rb2
-rw-r--r--app/controllers/auth/registrations_controller.rb2
-rw-r--r--app/controllers/auth/sessions_controller.rb4
-rw-r--r--app/controllers/concerns/admin_export_controller_concern.rb8
-rw-r--r--app/controllers/oauth/authorizations_controller.rb6
-rw-r--r--app/controllers/settings/base_controller.rb2
-rw-r--r--app/controllers/statuses_cleanup_controller.rb4
-rw-r--r--app/javascript/flavours/glitch/components/media_gallery.js4
-rw-r--r--app/javascript/flavours/glitch/features/account/components/header.js11
-rw-r--r--app/javascript/flavours/glitch/features/account_gallery/components/media_item.js4
-rw-r--r--app/javascript/flavours/glitch/features/account_timeline/index.js8
-rw-r--r--app/javascript/flavours/glitch/features/compose/components/compose_form.js2
-rw-r--r--app/javascript/flavours/glitch/features/compose/components/dropdown.js4
-rw-r--r--app/javascript/flavours/glitch/features/compose/components/options.js32
-rw-r--r--app/javascript/flavours/glitch/features/compose/components/privacy_dropdown.js3
-rw-r--r--app/javascript/flavours/glitch/features/compose/containers/dropdown_container.js12
-rw-r--r--app/javascript/flavours/glitch/features/compose/containers/options_container.js10
-rw-r--r--app/javascript/flavours/glitch/features/compose/containers/privacy_dropdown_container.js23
-rw-r--r--app/javascript/flavours/glitch/features/emoji/emoji.js23
-rw-r--r--app/javascript/flavours/glitch/features/explore/index.js20
-rw-r--r--app/javascript/flavours/glitch/features/getting_started/components/trends.js7
-rw-r--r--app/javascript/flavours/glitch/features/local_settings/navigation/item/index.js4
-rw-r--r--app/javascript/flavours/glitch/features/ui/components/header.js2
-rw-r--r--app/javascript/flavours/glitch/reducers/accounts_map.js3
-rw-r--r--app/javascript/flavours/glitch/reducers/compose.js4
-rw-r--r--app/javascript/flavours/glitch/styles/components/columns.scss35
-rw-r--r--app/javascript/flavours/glitch/styles/components/index.scss10
-rw-r--r--app/javascript/flavours/glitch/styles/mastodon-light/diff.scss20
-rw-r--r--app/javascript/mastodon/components/media_gallery.js4
-rw-r--r--app/javascript/mastodon/components/status_content.js2
-rw-r--r--app/javascript/mastodon/features/account/components/header.js11
-rw-r--r--app/javascript/mastodon/features/account_gallery/components/media_item.js4
-rw-r--r--app/javascript/mastodon/features/account_timeline/index.js8
-rw-r--r--app/javascript/mastodon/features/emoji/__tests__/emoji-test.js5
-rw-r--r--app/javascript/mastodon/features/emoji/emoji.js23
-rw-r--r--app/javascript/mastodon/features/explore/index.js20
-rw-r--r--app/javascript/mastodon/features/getting_started/components/trends.js7
-rw-r--r--app/javascript/mastodon/features/ui/components/header.js2
-rw-r--r--app/javascript/mastodon/locales/af.json401
-rw-r--r--app/javascript/mastodon/locales/an.json649
-rw-r--r--app/javascript/mastodon/locales/ar.json37
-rw-r--r--app/javascript/mastodon/locales/ast.json427
-rw-r--r--app/javascript/mastodon/locales/be.json649
-rw-r--r--app/javascript/mastodon/locales/bg.json91
-rw-r--r--app/javascript/mastodon/locales/bn.json9
-rw-r--r--app/javascript/mastodon/locales/br.json265
-rw-r--r--app/javascript/mastodon/locales/bs.json649
-rw-r--r--app/javascript/mastodon/locales/ca.json411
-rw-r--r--app/javascript/mastodon/locales/ckb.json9
-rw-r--r--app/javascript/mastodon/locales/co.json5
-rw-r--r--app/javascript/mastodon/locales/cs.json229
-rw-r--r--app/javascript/mastodon/locales/cy.json233
-rw-r--r--app/javascript/mastodon/locales/da.json37
-rw-r--r--app/javascript/mastodon/locales/de.json95
-rw-r--r--app/javascript/mastodon/locales/defaultMessages.json18
-rw-r--r--app/javascript/mastodon/locales/el.json187
-rw-r--r--app/javascript/mastodon/locales/en-GB.json5
-rw-r--r--app/javascript/mastodon/locales/en.json5
-rw-r--r--app/javascript/mastodon/locales/eo.json213
-rw-r--r--app/javascript/mastodon/locales/es-AR.json5
-rw-r--r--app/javascript/mastodon/locales/es-MX.json37
-rw-r--r--app/javascript/mastodon/locales/es.json51
-rw-r--r--app/javascript/mastodon/locales/et.json593
-rw-r--r--app/javascript/mastodon/locales/eu.json5
-rw-r--r--app/javascript/mastodon/locales/fa.json63
-rw-r--r--app/javascript/mastodon/locales/fi.json13
-rw-r--r--app/javascript/mastodon/locales/fo.json649
-rw-r--r--app/javascript/mastodon/locales/fr-QC.json649
-rw-r--r--app/javascript/mastodon/locales/fr.json15
-rw-r--r--app/javascript/mastodon/locales/fy.json49
-rw-r--r--app/javascript/mastodon/locales/ga.json125
-rw-r--r--app/javascript/mastodon/locales/gd.json7
-rw-r--r--app/javascript/mastodon/locales/gl.json25
-rw-r--r--app/javascript/mastodon/locales/he.json51
-rw-r--r--app/javascript/mastodon/locales/hi.json115
-rw-r--r--app/javascript/mastodon/locales/hr.json5
-rw-r--r--app/javascript/mastodon/locales/hu.json25
-rw-r--r--app/javascript/mastodon/locales/hy.json5
-rw-r--r--app/javascript/mastodon/locales/id.json21
-rw-r--r--app/javascript/mastodon/locales/ig.json5
-rw-r--r--app/javascript/mastodon/locales/io.json5
-rw-r--r--app/javascript/mastodon/locales/is.json17
-rw-r--r--app/javascript/mastodon/locales/it.json551
-rw-r--r--app/javascript/mastodon/locales/ja.json5
-rw-r--r--app/javascript/mastodon/locales/ka.json5
-rw-r--r--app/javascript/mastodon/locales/kab.json85
-rw-r--r--app/javascript/mastodon/locales/kk.json5
-rw-r--r--app/javascript/mastodon/locales/kn.json5
-rw-r--r--app/javascript/mastodon/locales/ko.json39
-rw-r--r--app/javascript/mastodon/locales/ku.json49
-rw-r--r--app/javascript/mastodon/locales/kw.json5
-rw-r--r--app/javascript/mastodon/locales/lt.json25
-rw-r--r--app/javascript/mastodon/locales/lv.json15
-rw-r--r--app/javascript/mastodon/locales/mk.json5
-rw-r--r--app/javascript/mastodon/locales/ml.json21
-rw-r--r--app/javascript/mastodon/locales/mr.json5
-rw-r--r--app/javascript/mastodon/locales/ms.json379
-rw-r--r--app/javascript/mastodon/locales/my.json5
-rw-r--r--app/javascript/mastodon/locales/nl.json29
-rw-r--r--app/javascript/mastodon/locales/nn.json31
-rw-r--r--app/javascript/mastodon/locales/no.json129
-rw-r--r--app/javascript/mastodon/locales/oc.json5
-rw-r--r--app/javascript/mastodon/locales/pa.json5
-rw-r--r--app/javascript/mastodon/locales/pl.json5
-rw-r--r--app/javascript/mastodon/locales/pt-BR.json19
-rw-r--r--app/javascript/mastodon/locales/pt-PT.json5
-rw-r--r--app/javascript/mastodon/locales/ro.json305
-rw-r--r--app/javascript/mastodon/locales/ru.json89
-rw-r--r--app/javascript/mastodon/locales/sa.json87
-rw-r--r--app/javascript/mastodon/locales/sc.json67
-rw-r--r--app/javascript/mastodon/locales/sco.json649
-rw-r--r--app/javascript/mastodon/locales/si.json5
-rw-r--r--app/javascript/mastodon/locales/sk.json67
-rw-r--r--app/javascript/mastodon/locales/sl.json5
-rw-r--r--app/javascript/mastodon/locales/sq.json5
-rw-r--r--app/javascript/mastodon/locales/sr-Latn.json5
-rw-r--r--app/javascript/mastodon/locales/sr.json399
-rw-r--r--app/javascript/mastodon/locales/sv.json35
-rw-r--r--app/javascript/mastodon/locales/szl.json5
-rw-r--r--app/javascript/mastodon/locales/ta.json5
-rw-r--r--app/javascript/mastodon/locales/tai.json5
-rw-r--r--app/javascript/mastodon/locales/te.json5
-rw-r--r--app/javascript/mastodon/locales/th.json15
-rw-r--r--app/javascript/mastodon/locales/tr.json39
-rw-r--r--app/javascript/mastodon/locales/tt.json5
-rw-r--r--app/javascript/mastodon/locales/ug.json5
-rw-r--r--app/javascript/mastodon/locales/uk.json39
-rw-r--r--app/javascript/mastodon/locales/ur.json5
-rw-r--r--app/javascript/mastodon/locales/vi.json13
-rw-r--r--app/javascript/mastodon/locales/whitelist_an.json2
-rw-r--r--app/javascript/mastodon/locales/whitelist_be.json2
-rw-r--r--app/javascript/mastodon/locales/whitelist_bs.json2
-rw-r--r--app/javascript/mastodon/locales/whitelist_fo.json2
-rw-r--r--app/javascript/mastodon/locales/whitelist_fr-QC.json2
-rw-r--r--app/javascript/mastodon/locales/whitelist_sco.json2
-rw-r--r--app/javascript/mastodon/locales/zgh.json5
-rw-r--r--app/javascript/mastodon/locales/zh-CN.json57
-rw-r--r--app/javascript/mastodon/locales/zh-HK.json255
-rw-r--r--app/javascript/mastodon/locales/zh-TW.json5
-rw-r--r--app/javascript/mastodon/reducers/accounts_map.js3
-rw-r--r--app/javascript/mastodon/reducers/compose.js4
-rw-r--r--app/javascript/styles/mastodon/components.scss10
-rw-r--r--app/lib/vacuum/statuses_vacuum.rb43
-rw-r--r--app/models/account/field.rb3
-rw-r--r--app/models/account_filter.rb8
-rw-r--r--app/models/admin/import.rb35
-rw-r--r--app/models/form/account_batch.rb4
-rw-r--r--app/models/media_attachment.rb1
-rw-r--r--app/models/poll.rb1
-rw-r--r--app/models/status.rb15
-rw-r--r--app/models/user.rb5
-rw-r--r--app/policies/email_domain_block_policy.rb4
-rw-r--r--app/serializers/manifest_serializer.rb1
-rw-r--r--app/services/activitypub/process_status_update_service.rb8
-rw-r--r--app/services/delete_account_service.rb2
-rw-r--r--app/services/verify_link_service.rb4
-rw-r--r--app/validators/admin_import_validator.rb19
-rw-r--r--app/views/application/_card.html.haml2
-rw-r--r--app/views/auth/challenges/new.html.haml2
-rw-r--r--app/views/auth/confirmations/new.html.haml2
-rw-r--r--app/views/auth/passwords/edit.html.haml4
-rw-r--r--app/views/auth/passwords/new.html.haml2
-rw-r--r--app/views/auth/registrations/_sessions.html.haml2
-rw-r--r--app/views/auth/registrations/edit.html.haml8
-rw-r--r--app/views/auth/registrations/new.html.haml14
-rw-r--r--app/views/auth/sessions/new.html.haml6
-rw-r--r--app/views/auth/sessions/two_factor/_otp_authentication_form.html.haml2
-rw-r--r--app/views/auth/setup/show.html.haml2
-rw-r--r--app/views/settings/deletes/show.html.haml4
-rw-r--r--app/views/settings/migration/redirects/new.html.haml4
-rw-r--r--app/views/settings/migrations/show.html.haml4
-rw-r--r--app/views/settings/two_factor_authentication/confirmations/new.html.haml2
-rw-r--r--app/views/settings/two_factor_authentication/webauthn_credentials/new.html.haml2
-rw-r--r--app/views/statuses/_detailed_status.html.haml4
-rw-r--r--app/views/statuses/_simple_status.html.haml4
-rw-r--r--app/views/statuses/show.html.haml1
-rw-r--r--config/application.rb1
-rw-r--r--config/environments/production.rb24
-rw-r--r--config/initializers/cache_logging.rb3
-rw-r--r--config/initializers/content_security_policy.rb3
-rw-r--r--config/initializers/doorkeeper.rb10
-rw-r--r--config/locales-glitch/en.yml20
-rw-r--r--config/locales-glitch/ko.yml20
-rw-r--r--config/locales/activerecord.af.yml18
-rw-r--r--config/locales/activerecord.an.yml55
-rw-r--r--config/locales/activerecord.ast.yml19
-rw-r--r--config/locales/activerecord.be.yml55
-rw-r--r--config/locales/activerecord.bs.yml1
-rw-r--r--config/locales/activerecord.ca.yml10
-rw-r--r--config/locales/activerecord.cs.yml4
-rw-r--r--config/locales/activerecord.cy.yml6
-rw-r--r--config/locales/activerecord.eo.yml6
-rw-r--r--config/locales/activerecord.et.yml40
-rw-r--r--config/locales/activerecord.fi.yml2
-rw-r--r--config/locales/activerecord.fo.yml55
-rw-r--r--config/locales/activerecord.fr-QC.yml55
-rw-r--r--config/locales/activerecord.it.yml14
-rw-r--r--config/locales/activerecord.ko.yml2
-rw-r--r--config/locales/activerecord.ms.yml35
-rw-r--r--config/locales/activerecord.pt-BR.yml12
-rw-r--r--config/locales/activerecord.sco.yml55
-rw-r--r--config/locales/activerecord.sr-Latn.yml46
-rw-r--r--config/locales/activerecord.sr.yml31
-rw-r--r--config/locales/activerecord.zh-HK.yml23
-rw-r--r--config/locales/af.yml73
-rw-r--r--config/locales/an.yml1662
-rw-r--r--config/locales/ar.yml99
-rw-r--r--config/locales/ast.yml463
-rw-r--r--config/locales/be.yml1047
-rw-r--r--config/locales/bg.yml201
-rw-r--r--config/locales/br.yml270
-rw-r--r--config/locales/bs.yml12
-rw-r--r--config/locales/ca.yml109
-rw-r--r--config/locales/ckb.yml2
-rw-r--r--config/locales/co.yml2
-rw-r--r--config/locales/cs.yml29
-rw-r--r--config/locales/cy.yml1515
-rw-r--r--config/locales/da.yml27
-rw-r--r--config/locales/de.yml469
-rw-r--r--config/locales/devise.an.yml115
-rw-r--r--config/locales/devise.ar.yml8
-rw-r--r--config/locales/devise.ast.yml86
-rw-r--r--config/locales/devise.be.yml117
-rw-r--r--config/locales/devise.bg.yml40
-rw-r--r--config/locales/devise.br.yml2
-rw-r--r--config/locales/devise.bs.yml1
-rw-r--r--config/locales/devise.ca.yml18
-rw-r--r--config/locales/devise.cy.yml91
-rw-r--r--config/locales/devise.de.yml10
-rw-r--r--config/locales/devise.et.yml105
-rw-r--r--config/locales/devise.fi.yml4
-rw-r--r--config/locales/devise.fo.yml115
-rw-r--r--config/locales/devise.fr-QC.yml115
-rw-r--r--config/locales/devise.fr.yml2
-rw-r--r--config/locales/devise.fy.yml8
-rw-r--r--config/locales/devise.ms.yml52
-rw-r--r--config/locales/devise.sco.yml115
-rw-r--r--config/locales/devise.sr-Latn.yml56
-rw-r--r--config/locales/devise.sr.yml2
-rw-r--r--config/locales/devise.th.yml6
-rw-r--r--config/locales/devise.uk.yml2
-rw-r--r--config/locales/devise.zh-CN.yml28
-rw-r--r--config/locales/doorkeeper.af.yml106
-rw-r--r--config/locales/doorkeeper.an.yml185
-rw-r--r--config/locales/doorkeeper.ar.yml4
-rw-r--r--config/locales/doorkeeper.ast.yml82
-rw-r--r--config/locales/doorkeeper.be.yml185
-rw-r--r--config/locales/doorkeeper.br.yml14
-rw-r--r--config/locales/doorkeeper.bs.yml1
-rw-r--r--config/locales/doorkeeper.ca.yml8
-rw-r--r--config/locales/doorkeeper.cy.yml106
-rw-r--r--config/locales/doorkeeper.de.yml6
-rw-r--r--config/locales/doorkeeper.eo.yml17
-rw-r--r--config/locales/doorkeeper.et.yml35
-rw-r--r--config/locales/doorkeeper.fo.yml185
-rw-r--r--config/locales/doorkeeper.fr-QC.yml185
-rw-r--r--config/locales/doorkeeper.ga.yml4
-rw-r--r--config/locales/doorkeeper.gl.yml4
-rw-r--r--config/locales/doorkeeper.ko.yml30
-rw-r--r--config/locales/doorkeeper.ku.yml18
-rw-r--r--config/locales/doorkeeper.ms.yml53
-rw-r--r--config/locales/doorkeeper.no.yml8
-rw-r--r--config/locales/doorkeeper.pt-BR.yml2
-rw-r--r--config/locales/doorkeeper.sco.yml185
-rw-r--r--config/locales/doorkeeper.sr-Latn.yml73
-rw-r--r--config/locales/doorkeeper.sr.yml73
-rw-r--r--config/locales/doorkeeper.uk.yml4
-rw-r--r--config/locales/doorkeeper.zh-CN.yml10
-rw-r--r--config/locales/doorkeeper.zh-HK.yml37
-rw-r--r--config/locales/el.yml27
-rw-r--r--config/locales/en.yml27
-rw-r--r--config/locales/eo.yml558
-rw-r--r--config/locales/es-AR.yml27
-rw-r--r--config/locales/es-MX.yml59
-rw-r--r--config/locales/es.yml45
-rw-r--r--config/locales/et.yml569
-rw-r--r--config/locales/eu.yml10
-rw-r--r--config/locales/fa.yml8
-rw-r--r--config/locales/fi.yml45
-rw-r--r--config/locales/fo.yml671
-rw-r--r--config/locales/fr-QC.yml1639
-rw-r--r--config/locales/fr.yml37
-rw-r--r--config/locales/ga.yml47
-rw-r--r--config/locales/gd.yml28
-rw-r--r--config/locales/gl.yml47
-rw-r--r--config/locales/he.yml80
-rw-r--r--config/locales/hu.yml33
-rw-r--r--config/locales/hy.yml1
-rw-r--r--config/locales/id.yml37
-rw-r--r--config/locales/io.yml3
-rw-r--r--config/locales/is.yml27
-rw-r--r--config/locales/it.yml31
-rw-r--r--config/locales/ja.yml20
-rw-r--r--config/locales/ka.yml2
-rw-r--r--config/locales/kab.yml32
-rw-r--r--config/locales/kk.yml2
-rw-r--r--config/locales/ko.yml73
-rw-r--r--config/locales/ku.yml136
-rw-r--r--config/locales/lt.yml4
-rw-r--r--config/locales/lv.yml37
-rw-r--r--config/locales/ms.yml385
-rw-r--r--config/locales/nl.yml37
-rw-r--r--config/locales/nn.yml263
-rw-r--r--config/locales/no.yml317
-rw-r--r--config/locales/oc.yml2
-rw-r--r--config/locales/pl.yml27
-rw-r--r--config/locales/pt-BR.yml293
-rw-r--r--config/locales/pt-PT.yml27
-rw-r--r--config/locales/ro.yml196
-rw-r--r--config/locales/ru.yml131
-rw-r--r--config/locales/sc.yml2
-rw-r--r--config/locales/sco.yml874
-rw-r--r--config/locales/si.yml2
-rw-r--r--config/locales/simple_form.af.yml20
-rw-r--r--config/locales/simple_form.an.yml309
-rw-r--r--config/locales/simple_form.ar.yml15
-rw-r--r--config/locales/simple_form.ast.yml103
-rw-r--r--config/locales/simple_form.be.yml218
-rw-r--r--config/locales/simple_form.bg.yml41
-rw-r--r--config/locales/simple_form.br.yml16
-rw-r--r--config/locales/simple_form.bs.yml1
-rw-r--r--config/locales/simple_form.ca.yml80
-rw-r--r--config/locales/simple_form.cy.yml246
-rw-r--r--config/locales/simple_form.de.yml170
-rw-r--r--config/locales/simple_form.eo.yml104
-rw-r--r--config/locales/simple_form.es.yml12
-rw-r--r--config/locales/simple_form.et.yml94
-rw-r--r--config/locales/simple_form.fo.yml75
-rw-r--r--config/locales/simple_form.fr-QC.yml309
-rw-r--r--config/locales/simple_form.fr.yml4
-rw-r--r--config/locales/simple_form.ga.yml4
-rw-r--r--config/locales/simple_form.gd.yml2
-rw-r--r--config/locales/simple_form.gl.yml8
-rw-r--r--config/locales/simple_form.he.yml6
-rw-r--r--config/locales/simple_form.is.yml2
-rw-r--r--config/locales/simple_form.ja.yml2
-rw-r--r--config/locales/simple_form.kab.yml5
-rw-r--r--config/locales/simple_form.ku.yml14
-rw-r--r--config/locales/simple_form.ms.yml147
-rw-r--r--config/locales/simple_form.nl.yml6
-rw-r--r--config/locales/simple_form.no.yml81
-rw-r--r--config/locales/simple_form.pt-BR.yml40
-rw-r--r--config/locales/simple_form.ro.yml2
-rw-r--r--config/locales/simple_form.ru.yml41
-rw-r--r--config/locales/simple_form.sco.yml305
-rw-r--r--config/locales/simple_form.sr.yml2
-rw-r--r--config/locales/simple_form.th.yml3
-rw-r--r--config/locales/simple_form.uk.yml50
-rw-r--r--config/locales/simple_form.zh-CN.yml28
-rw-r--r--config/locales/simple_form.zh-HK.yml93
-rw-r--r--config/locales/sk.yml10
-rw-r--r--config/locales/sl.yml27
-rw-r--r--config/locales/sq.yml21
-rw-r--r--config/locales/sr-Latn.yml2
-rw-r--r--config/locales/sr.yml6
-rw-r--r--config/locales/sv.yml29
-rw-r--r--config/locales/th.yml47
-rw-r--r--config/locales/tr.yml22
-rw-r--r--config/locales/uk.yml73
-rw-r--r--config/locales/vi.yml31
-rw-r--r--config/locales/zh-CN.yml117
-rw-r--r--config/locales/zh-HK.yml531
-rw-r--r--config/locales/zh-TW.yml25
-rw-r--r--config/navigation.rb2
-rw-r--r--lib/enumerable.rb26
-rw-r--r--lib/mastodon/redis_config.rb1
-rw-r--r--lib/mastodon/version.rb2
-rw-r--r--package.json36
-rw-r--r--spec/controllers/admin/statuses_controller_spec.rb2
-rw-r--r--spec/controllers/api/v1/tags_controller_spec.rb4
-rw-r--r--spec/models/account/field_spec.rb10
-rw-r--r--spec/services/activitypub/process_status_update_service_spec.rb6
-rw-r--r--spec/services/favourite_service_spec.rb2
-rw-r--r--spec/services/follow_service_spec.rb2
-rw-r--r--spec/services/verify_link_service_spec.rb20
-rw-r--r--spec/views/statuses/show.html.haml_spec.rb2
-rw-r--r--yarn.lock677
390 files changed, 25734 insertions, 6683 deletions
diff --git a/.github/workflows/test-chart.yml b/.github/workflows/test-chart.yml
deleted file mode 100644
index b9ff80855..000000000
--- a/.github/workflows/test-chart.yml
+++ /dev/null
@@ -1,138 +0,0 @@
-# This is a GitHub workflow defining a set of jobs with a set of steps.
-# ref: https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions
-#
-name: Test chart
-
-on:
-  pull_request:
-    paths:
-      - "chart/**"
-      - "!**.md"
-      - ".github/workflows/test-chart.yml"
-  push:
-    paths:
-      - "chart/**"
-      - "!**.md"
-      - ".github/workflows/test-chart.yml"
-    branches-ignore:
-      - "dependabot/**"
-  workflow_dispatch:
-
-permissions:
-  contents: read
-
-defaults:
-  run:
-    working-directory: chart
-
-jobs:
-  lint-templates:
-    runs-on: ubuntu-22.04
-
-    steps:
-      - uses: actions/checkout@v3
-      - uses: actions/setup-python@v4
-        with:
-          python-version: "3.x"
-
-      - name: Install dependencies (yamllint)
-        run: pip install yamllint
-
-      - run: helm dependency update
-
-      - name: helm lint
-        run: |
-          helm lint . \
-              --values dev-values.yaml
-
-      - name: helm template
-        run: |
-          helm template . \
-              --values dev-values.yaml \
-              --output-dir rendered-templates
-
-      - name: yamllint (only on templates we manage)
-        run: |
-          rm -rf rendered-templates/mastodon/charts
-
-          yamllint rendered-templates \
-            --config-data "{rules: {indentation: {spaces: 2}, line-length: disable}}"
-
-  # This job helps us validate that rendered templates are valid k8s resources
-  # against a k8s api-server, via "helm template --validate", but also that a
-  # basic configuration can be used to successfully startup mastodon.
-  #
-  test-install:
-    runs-on: ubuntu-22.04
-    timeout-minutes: 15
-
-    strategy:
-      fail-fast: false
-      matrix:
-        include:
-          # k3s-channel reference: https://update.k3s.io/v1-release/channels
-          - k3s-channel: latest
-          - k3s-channel: stable
-
-          # This represents the oldest configuration we test against.
-          #
-          # The k8s version chosen is based on the oldest still supported k8s
-          # version among two managed k8s services, GKE, EKS.
-          # - GKE: https://endoflife.date/google-kubernetes-engine
-          # - EKS: https://endoflife.date/amazon-eks
-          #
-          # The helm client's version can influence what helper functions is
-          # available for use in the templates, currently we need v3.6.0 or
-          # higher.
-          #
-          - k3s-channel: v1.21
-            helm-version: v3.6.0
-
-    steps:
-      - uses: actions/checkout@v3
-
-      # This action starts a k8s cluster with NetworkPolicy enforcement and
-      # installs both kubectl and helm.
-      #
-      # ref: https://github.com/jupyterhub/action-k3s-helm#readme
-      #
-      - uses: jupyterhub/action-k3s-helm@v3
-        with:
-          k3s-channel: ${{ matrix.k3s-channel }}
-          helm-version: ${{ matrix.helm-version }}
-          metrics-enabled: false
-          traefik-enabled: false
-          docker-enabled: false
-
-      - run: helm dependency update
-
-      # Validate rendered helm templates against the k8s api-server
-      - name: helm template --validate
-        run: |
-          helm template --validate mastodon . \
-              --values dev-values.yaml
-
-      - name: helm install
-        run: |
-          helm install mastodon . \
-              --values dev-values.yaml \
-              --timeout 10m
-
-      # This actions provides a report about the state of the k8s cluster,
-      # providing logs etc on anything that has failed and workloads marked as
-      # important.
-      #
-      # ref: https://github.com/jupyterhub/action-k8s-namespace-report#readme
-      #
-      - name: Kubernetes namespace report
-        uses: jupyterhub/action-k8s-namespace-report@v1
-        if: always()
-        with:
-          important-workloads: >-
-            deploy/mastodon-sidekiq
-            deploy/mastodon-streaming
-            deploy/mastodon-web
-            job/mastodon-assets-precompile
-            job/mastodon-chewy-upgrade
-            job/mastodon-create-admin
-            job/mastodon-db-migrate
diff --git a/.rubocop.yml b/.rubocop.yml
index 8dc2d1c47..aec11b030 100644
--- a/.rubocop.yml
+++ b/.rubocop.yml
@@ -2,7 +2,7 @@ require:
   - rubocop-rails
 
 AllCops:
-  TargetRubyVersion: 2.5
+  TargetRubyVersion: 2.7
   NewCops: disable
   Exclude:
     - 'spec/**/*'
@@ -243,6 +243,10 @@ Style/HashTransformKeys:
 Style/HashTransformValues:
   Enabled: false
 
+Style/HashSyntax:
+  Enabled: true
+  EnforcedStyle: ruby19_no_mixed_keys
+
 Style/IfUnlessModifier:
   Enabled: false
 
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 4392cc658..b1ad9e5fd 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -3,6 +3,13 @@ Changelog
 
 All notable changes to this project will be documented in this file.
 
+## [4.0.2] - 2022-11-15
+### Fixed
+
+- Fix wrong color on mentions hidden behind content warning in web UI ([Gargron](https://github.com/mastodon/mastodon/pull/20724))
+- Fix filters from other users being used in the streaming service ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/20719))
+- Fix `unsafe-eval` being used when `wasm-unsafe-eval` is enough in Content Security Policy ([Gargron](https://github.com/mastodon/mastodon/pull/20729), [prplecake](https://github.com/mastodon/mastodon/pull/20606))
+
 ## [4.0.1] - 2022-11-14
 ### Fixed
 
diff --git a/Dockerfile b/Dockerfile
index dd301e864..27fec2b5f 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,129 +1,105 @@
-FROM ubuntu:20.04 as build-dep
-
-# Use bash for the shell
-SHELL ["/bin/bash", "-c"]
-RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections
-
-# Install Node v16 (LTS)
-ENV NODE_VER="16.17.1"
-RUN ARCH= && \
-    dpkgArch="$(dpkg --print-architecture)" && \
-  case "${dpkgArch##*-}" in \
-    amd64) ARCH='x64';; \
-    ppc64el) ARCH='ppc64le';; \
-    s390x) ARCH='s390x';; \
-    arm64) ARCH='arm64';; \
-    armhf) ARCH='armv7l';; \
-    i386) ARCH='x86';; \
-    *) echo "unsupported architecture"; exit 1 ;; \
-  esac && \
-    echo "Etc/UTC" > /etc/localtime && \
-	apt-get update && \
-	apt-get install -y --no-install-recommends ca-certificates wget python3 apt-utils && \
-	cd ~ && \
-	wget -q https://nodejs.org/download/release/v$NODE_VER/node-v$NODE_VER-linux-$ARCH.tar.gz && \
-	tar xf node-v$NODE_VER-linux-$ARCH.tar.gz && \
-	rm node-v$NODE_VER-linux-$ARCH.tar.gz && \
-	mv node-v$NODE_VER-linux-$ARCH /opt/node
-
-# Install Ruby 3.0
-ENV RUBY_VER="3.0.4"
-RUN apt-get update && \
-  apt-get install -y --no-install-recommends build-essential \
-    bison libyaml-dev libgdbm-dev libreadline-dev libjemalloc-dev \
-		libncurses5-dev libffi-dev zlib1g-dev libssl-dev && \
-	cd ~ && \
-	wget https://cache.ruby-lang.org/pub/ruby/${RUBY_VER%.*}/ruby-$RUBY_VER.tar.gz && \
-	tar xf ruby-$RUBY_VER.tar.gz && \
-	cd ruby-$RUBY_VER && \
-	./configure --prefix=/opt/ruby \
-	  --with-jemalloc \
-	  --with-shared \
-	  --disable-install-doc && \
-	make -j"$(nproc)" > /dev/null && \
-	make install && \
-	rm -rf ../ruby-$RUBY_VER.tar.gz ../ruby-$RUBY_VER
-
-ENV PATH="${PATH}:/opt/ruby/bin:/opt/node/bin"
-
-RUN npm install -g npm@latest && \
-	npm install -g yarn && \
-	gem install bundler && \
-	apt-get update && \
-	apt-get install -y --no-install-recommends git libicu-dev libidn11-dev \
-	libpq-dev shared-mime-info
+# syntax=docker/dockerfile:1.4
+# This needs to be bullseye-slim because the Ruby image is built on bullseye-slim
+ARG NODE_VERSION="16.17.1-bullseye-slim"
 
-COPY Gemfile* package.json yarn.lock /opt/mastodon/
+FROM ghcr.io/moritzheiber/ruby-jemalloc:3.0.4-slim as ruby
+FROM node:${NODE_VERSION} as build
+
+COPY --link --from=ruby /opt/ruby /opt/ruby
 
-RUN cd /opt/mastodon && \
-  bundle config set --local deployment 'true' && \
-  bundle config set --local without 'development test' && \
-  bundle config set silence_root_warning true && \
-	bundle install -j"$(nproc)" && \
-	yarn install --pure-lockfile
+ENV DEBIAN_FRONTEND="noninteractive" \
+    PATH="${PATH}:/opt/ruby/bin"
 
-FROM ubuntu:20.04
+SHELL ["/bin/bash", "-o", "pipefail", "-c"]
 
-# Copy over all the langs needed for runtime
-COPY --from=build-dep /opt/node /opt/node
-COPY --from=build-dep /opt/ruby /opt/ruby
+WORKDIR /opt/mastodon
+COPY Gemfile* package.json yarn.lock /opt/mastodon/
 
-# Add more PATHs to the PATH
-ENV PATH="${PATH}:/opt/ruby/bin:/opt/node/bin:/opt/mastodon/bin"
+RUN apt update && \
+    apt-get install -y --no-install-recommends build-essential \
+        ca-certificates \
+        git \
+        libicu-dev \
+        libidn11-dev \
+        libpq-dev \
+        libjemalloc-dev \
+        zlib1g-dev \
+        libgdbm-dev \
+        libgmp-dev \
+        libssl-dev \
+        libyaml-0-2 \
+        ca-certificates \
+        libreadline8 \
+        python3 \
+        shared-mime-info && \
+    bundle config set --local deployment 'true' && \
+    bundle config set --local without 'development test' && \
+    bundle config set silence_root_warning true && \
+    bundle install -j"$(nproc)" && \
+    yarn install --pure-lockfile
+
+FROM node:${NODE_VERSION}
+
+ARG UID="991"
+ARG GID="991"
+
+COPY --link --from=ruby /opt/ruby /opt/ruby
 
-# Create the mastodon user
-ARG UID=991
-ARG GID=991
 SHELL ["/bin/bash", "-o", "pipefail", "-c"]
+
+ENV DEBIAN_FRONTEND="noninteractive" \
+    PATH="${PATH}:/opt/ruby/bin:/opt/mastodon/bin"
+
 RUN apt-get update && \
-	echo "Etc/UTC" > /etc/localtime && \
-	apt-get install -y --no-install-recommends whois wget && \
-	addgroup --gid $GID mastodon && \
-	useradd -m -u $UID -g $GID -d /opt/mastodon mastodon && \
-	echo "mastodon:$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 24 | mkpasswd -s -m sha-256)" | chpasswd && \
-	rm -rf /var/lib/apt/lists/*
-
-# Install mastodon runtime deps
-RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections
-RUN apt-get update && \
-  apt-get -y --no-install-recommends install \
-	  libssl1.1 libpq5 imagemagick ffmpeg libjemalloc2 \
-	  libicu66 libidn11 libyaml-0-2 \
-	  file ca-certificates tzdata libreadline8 gcc tini apt-utils && \
-	ln -s /opt/mastodon /mastodon && \
-	gem install bundler && \
-	rm -rf /var/cache && \
-	rm -rf /var/lib/apt/lists/*
-
-# Copy over mastodon source, and dependencies from building, and set permissions
-COPY --chown=mastodon:mastodon . /opt/mastodon
-COPY --from=build-dep --chown=mastodon:mastodon /opt/mastodon /opt/mastodon
+    echo "Etc/UTC" > /etc/localtime && \
+    groupadd -g "${GID}" mastodon && \
+    useradd -u "$UID" -g "${GID}" -m -d /opt/mastodon mastodon && \
+    apt-get -y --no-install-recommends install whois \
+        wget \
+        procps \
+        libssl1.1 \
+        libpq5 \
+        imagemagick \
+        ffmpeg \
+        libjemalloc2 \
+        libicu67 \
+        libidn11 \
+        libyaml-0-2 \
+        file \
+        ca-certificates \
+        tzdata \
+        libreadline8 \
+        tini && \
+    ln -s /opt/mastodon /mastodon
+
+# Note: no, cleaning here since Debian does this automatically
+# See the file /etc/apt/apt.conf.d/docker-clean within the Docker image's filesystem
 
-# Run mastodon services in prod mode
-ENV RAILS_ENV="production"
-ENV NODE_ENV="production"
+COPY --chown=mastodon:mastodon . /opt/mastodon
+COPY --chown=mastodon:mastodon --from=build /opt/mastodon /opt/mastodon
 
-# Tell rails to serve static files
-ENV RAILS_SERVE_STATIC_FILES="true"
-ENV BIND="0.0.0.0"
+ENV RAILS_ENV="production" \
+    NODE_ENV="production" \
+    RAILS_SERVE_STATIC_FILES="true" \
+    BIND="0.0.0.0"
 
 USER mastodon
+WORKDIR /opt/mastodon
 
 ARG SOURCE_COMMIT
 ENV SOURCE_TAG $SOURCE_COMMIT
 
 # Precompile assets
-RUN cd ~ && OTP_SECRET=_ SECRET_KEY_BASE=_ rails assets:precompile --trace && yarn cache clean
+RUN OTP_SECRET=precompile_placeholder SECRET_KEY_BASE=precompile_placeholder rails assets:precompile && \
+    yarn cache clean
 
 # Empty temporary files
 USER root
-
 RUN rm -rf /opt/mastodon/tmp/*
 
 # Set the run user
 USER mastodon
 
 # Set the work dir and the container entry point
-WORKDIR /opt/mastodon
 ENTRYPOINT ["/usr/bin/tini", "--"]
 EXPOSE 3000 4000
diff --git a/Gemfile b/Gemfile
index 1bff6cc7d..9843d1cee 100644
--- a/Gemfile
+++ b/Gemfile
@@ -1,7 +1,7 @@
 # frozen_string_literal: true
 
 source 'https://rubygems.org'
-ruby '>= 2.6.0', '< 3.1.0'
+ruby '>= 2.7.0', '< 3.1.0'
 
 gem 'pkg-config', '~> 1.4'
 gem 'rexml', '~> 3.2'
@@ -26,7 +26,7 @@ gem 'blurhash', '~> 0.1'
 
 gem 'active_model_serializers', '~> 0.10'
 gem 'addressable', '~> 2.8'
-gem 'bootsnap', '~> 1.13.0', require: false
+gem 'bootsnap', '~> 1.14.0', require: false
 gem 'browser'
 gem 'charlock_holmes', '~> 0.7.7'
 gem 'chewy', '~> 7.2'
@@ -55,7 +55,7 @@ gem 'redis-namespace', '~> 1.9'
 gem 'htmlentities', '~> 4.3'
 gem 'http', '~> 5.1'
 gem 'http_accept_language', '~> 2.1'
-gem 'httplog', '~> 1.6.0'
+gem 'httplog', '~> 1.6.2'
 gem 'idn-ruby', require: 'idn'
 gem 'kaminari', '~> 1.2'
 gem 'link_header', '~> 0.0'
@@ -113,7 +113,7 @@ group :production, :test do
 end
 
 group :test do
-  gem 'capybara', '~> 3.37'
+  gem 'capybara', '~> 3.38'
   gem 'climate_control', '~> 0.2'
   gem 'faker', '~> 2.23'
   gem 'microformats', '~> 4.4'
@@ -136,7 +136,7 @@ group :development do
   gem 'memory_profiler'
   gem 'rubocop', '~> 1.30', require: false
   gem 'rubocop-rails', '~> 2.15', require: false
-  gem 'brakeman', '~> 5.3', require: false
+  gem 'brakeman', '~> 5.4', require: false
   gem 'bundler-audit', '~> 0.9', require: false
 
   gem 'capistrano', '~> 3.17'
diff --git a/Gemfile.lock b/Gemfile.lock
index ddd89fa16..237edb61c 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -122,9 +122,9 @@ GEM
       debug_inspector (>= 0.0.1)
     blurhash (0.1.6)
       ffi (~> 1.14)
-    bootsnap (1.13.0)
+    bootsnap (1.14.0)
       msgpack (~> 1.2)
-    brakeman (5.3.1)
+    brakeman (5.4.0)
     browser (4.2.0)
     brpoplpush-redis_script (0.1.2)
       concurrent-ruby (~> 1.0, >= 1.0.5)
@@ -152,7 +152,7 @@ GEM
       sshkit (~> 1.3)
     capistrano-yarn (2.0.2)
       capistrano (~> 3.0)
-    capybara (3.37.1)
+    capybara (3.38.0)
       addressable
       matrix
       mini_mime (>= 0.1.3)
@@ -311,7 +311,7 @@ GEM
     http-form_data (2.3.0)
     http_accept_language (2.1.1)
     httpclient (2.8.3)
-    httplog (1.6.0)
+    httplog (1.6.2)
       rack (>= 2.0)
       rainbow (>= 2.0.0)
     i18n (1.12.0)
@@ -327,7 +327,7 @@ GEM
       rails-i18n
       rainbow (>= 2.2.2, < 4.0)
       terminal-table (>= 1.5.1)
-    idn-ruby (0.1.4)
+    idn-ruby (0.1.5)
     ipaddress (0.8.3)
     jmespath (1.6.1)
     json (2.6.2)
@@ -343,7 +343,7 @@ GEM
       multi_json (~> 1.15)
       rack (~> 2.2)
       rdf (~> 3.2, >= 3.2.9)
-    json-ld-preloaded (3.2.0)
+    json-ld-preloaded (3.2.2)
       json-ld (~> 3.2)
       rdf (~> 3.2)
     jsonapi-renderer (0.2.2)
@@ -395,7 +395,7 @@ GEM
     mario-redis-lock (1.2.1)
       redis (>= 3.0.5)
     matrix (0.4.2)
-    memory_profiler (1.0.0)
+    memory_profiler (1.0.1)
     method_source (1.0.0)
     microformats (4.4.1)
       json (~> 2.2)
@@ -406,7 +406,7 @@ GEM
     mini_mime (1.1.2)
     mini_portile2 (2.8.0)
     minitest (5.16.3)
-    msgpack (1.5.4)
+    msgpack (1.6.0)
     multi_json (1.15.0)
     multipart-post (2.1.1)
     net-ldap (0.17.1)
@@ -414,7 +414,7 @@ GEM
       net-ssh (>= 2.6.5, < 8.0.0)
     net-ssh (7.0.1)
     nio4r (2.5.8)
-    nokogiri (1.13.8)
+    nokogiri (1.13.9)
       mini_portile2 (~> 2.8.0)
       racc (~> 1.4)
     nsa (0.2.8)
@@ -422,7 +422,7 @@ GEM
       concurrent-ruby (~> 1.0, >= 1.0.2)
       sidekiq (>= 3.5)
       statsd-ruby (~> 1.4, >= 1.4.0)
-    oj (3.13.21)
+    oj (3.13.23)
     omniauth (1.9.2)
       hashie (>= 3.4.6)
       rack (>= 1.6.2, < 3)
@@ -457,7 +457,7 @@ GEM
     parslet (2.0.0)
     pastel (0.8.0)
       tty-color (~> 0.5)
-    pg (1.4.3)
+    pg (1.4.5)
     pghero (2.8.3)
       activerecord (>= 5)
     pkg-config (1.4.9)
@@ -545,7 +545,7 @@ GEM
     redis (4.5.1)
     redis-namespace (1.9.0)
       redis (>= 4)
-    regexp_parser (2.5.0)
+    regexp_parser (2.6.0)
     request_store (1.5.1)
       rack (>= 1.4)
     responders (3.0.1)
@@ -611,8 +611,8 @@ GEM
       activerecord (>= 4.0.0)
       railties (>= 4.0.0)
     semantic_range (3.0.0)
-    sidekiq (6.5.7)
-      connection_pool (>= 2.2.5)
+    sidekiq (6.5.8)
+      connection_pool (>= 2.2.5, < 3)
       rack (~> 2.0)
       redis (>= 4.5.0, < 5)
     sidekiq-bulk (0.2.0)
@@ -684,7 +684,7 @@ GEM
       unf (~> 0.1.0)
     tzinfo (2.0.5)
       concurrent-ruby (~> 1.0)
-    tzinfo-data (1.2022.4)
+    tzinfo-data (1.2022.6)
       tzinfo (>= 1.0.0)
     unf (0.1.4)
       unf_ext
@@ -741,8 +741,8 @@ DEPENDENCIES
   better_errors (~> 2.9)
   binding_of_caller (~> 1.0)
   blurhash (~> 0.1)
-  bootsnap (~> 1.13.0)
-  brakeman (~> 5.3)
+  bootsnap (~> 1.14.0)
+  brakeman (~> 5.4)
   browser
   bullet (~> 7.0)
   bundler-audit (~> 0.9)
@@ -750,7 +750,7 @@ DEPENDENCIES
   capistrano-rails (~> 1.6)
   capistrano-rbenv (~> 2.2)
   capistrano-yarn (~> 2.0)
-  capybara (~> 3.37)
+  capybara (~> 3.38)
   charlock_holmes (~> 0.7.7)
   chewy (~> 7.2)
   climate_control (~> 0.2)
@@ -779,7 +779,7 @@ DEPENDENCIES
   htmlentities (~> 4.3)
   http (~> 5.1)
   http_accept_language (~> 2.1)
-  httplog (~> 1.6.0)
+  httplog (~> 1.6.2)
   i18n-tasks (~> 1.0)
   idn-ruby
   json-ld
diff --git a/app/controllers/accounts_controller.rb b/app/controllers/accounts_controller.rb
index f36a0c859..4d03a04b7 100644
--- a/app/controllers/accounts_controller.rb
+++ b/app/controllers/accounts_controller.rb
@@ -17,6 +17,8 @@ class AccountsController < ApplicationController
     respond_to do |format|
       format.html do
         expires_in 0, public: true unless user_signed_in?
+
+        @rss_url = rss_url
       end
 
       format.rss do
diff --git a/app/controllers/admin/domain_blocks_controller.rb b/app/controllers/admin/domain_blocks_controller.rb
index 32f1f9a5d..e79f7a43e 100644
--- a/app/controllers/admin/domain_blocks_controller.rb
+++ b/app/controllers/admin/domain_blocks_controller.rb
@@ -9,9 +9,9 @@ module Admin
       @form = Form::DomainBlockBatch.new(form_domain_block_batch_params.merge(current_account: current_account, action: action_from_button))
       @form.save
     rescue ActionController::ParameterMissing
-      flash[:alert] = I18n.t('admin.email_domain_blocks.no_domain_block_selected')
+      flash[:alert] = I18n.t('admin.domain_blocks.no_domain_block_selected')
     rescue Mastodon::NotPermittedError
-      flash[:alert] = I18n.t('admin.domain_blocks.created_msg')
+      flash[:alert] = I18n.t('admin.domain_blocks.not_permitted')
     else
       redirect_to admin_instances_path(limited: '1'), notice: I18n.t('admin.domain_blocks.created_msg')
     end
diff --git a/app/controllers/admin/email_domain_blocks_controller.rb b/app/controllers/admin/email_domain_blocks_controller.rb
index 593457b94..a0a43de19 100644
--- a/app/controllers/admin/email_domain_blocks_controller.rb
+++ b/app/controllers/admin/email_domain_blocks_controller.rb
@@ -19,7 +19,7 @@ module Admin
     rescue ActionController::ParameterMissing
       flash[:alert] = I18n.t('admin.email_domain_blocks.no_email_domain_block_selected')
     rescue Mastodon::NotPermittedError
-      flash[:alert] = I18n.t('admin.custom_emojis.not_permitted')
+      flash[:alert] = I18n.t('admin.email_domain_blocks.not_permitted')
     ensure
       redirect_to admin_email_domain_blocks_path
     end
diff --git a/app/controllers/admin/export_domain_allows_controller.rb b/app/controllers/admin/export_domain_allows_controller.rb
index eb2955ac3..57fb12c62 100644
--- a/app/controllers/admin/export_domain_allows_controller.rb
+++ b/app/controllers/admin/export_domain_allows_controller.rb
@@ -8,8 +8,6 @@ module Admin
 
     before_action :set_dummy_import!, only: [:new]
 
-    ROWS_PROCESSING_LIMIT = 20_000
-
     def new
       authorize :domain_allow, :create?
     end
@@ -23,9 +21,11 @@ module Admin
       authorize :domain_allow, :create?
       begin
         @import = Admin::Import.new(import_params)
+        return render :new unless @import.validate
+
         parse_import_data!(export_headers)
 
-        @data.take(ROWS_PROCESSING_LIMIT).each do |row|
+        @data.take(Admin::Import::ROWS_PROCESSING_LIMIT).each do |row|
           domain = row['#domain'].strip
           next if DomainAllow.allowed?(domain)
 
diff --git a/app/controllers/admin/export_domain_blocks_controller.rb b/app/controllers/admin/export_domain_blocks_controller.rb
index 545bd94ed..fb0cd05d2 100644
--- a/app/controllers/admin/export_domain_blocks_controller.rb
+++ b/app/controllers/admin/export_domain_blocks_controller.rb
@@ -8,8 +8,6 @@ module Admin
 
     before_action :set_dummy_import!, only: [:new]
 
-    ROWS_PROCESSING_LIMIT = 20_000
-
     def new
       authorize :domain_block, :create?
     end
@@ -23,12 +21,14 @@ module Admin
       authorize :domain_block, :create?
 
       @import = Admin::Import.new(import_params)
+      return render :new unless @import.validate
+
       parse_import_data!(export_headers)
 
       @global_private_comment = I18n.t('admin.export_domain_blocks.import.private_comment_template', source: @import.data_file_name, date: I18n.l(Time.now.utc))
 
       @form = Form::DomainBlockBatch.new
-      @domain_blocks = @data.take(ROWS_PROCESSING_LIMIT).filter_map do |row|
+      @domain_blocks = @data.take(Admin::Import::ROWS_PROCESSING_LIMIT).filter_map do |row|
         domain = row['#domain'].strip
         next if DomainBlock.rule_for(domain).present?
 
diff --git a/app/controllers/api/base_controller.rb b/app/controllers/api/base_controller.rb
index 665425f29..defef0656 100644
--- a/app/controllers/api/base_controller.rb
+++ b/app/controllers/api/base_controller.rb
@@ -129,7 +129,7 @@ class Api::BaseController < ApplicationController
   end
 
   def set_cache_headers
-    response.headers['Cache-Control'] = 'no-cache, no-store, max-age=0, must-revalidate'
+    response.headers['Cache-Control'] = 'private, no-store'
   end
 
   def disallow_unauthenticated_api_access?
diff --git a/app/controllers/api/v1/followed_tags_controller.rb b/app/controllers/api/v1/followed_tags_controller.rb
index f0dfd044c..eae2bdc01 100644
--- a/app/controllers/api/v1/followed_tags_controller.rb
+++ b/app/controllers/api/v1/followed_tags_controller.rb
@@ -3,11 +3,11 @@
 class Api::V1::FollowedTagsController < Api::BaseController
   TAGS_LIMIT = 100
 
-  before_action -> { doorkeeper_authorize! :follow, :read, :'read:follows' }, except: :show
+  before_action -> { doorkeeper_authorize! :follow, :read, :'read:follows' }
   before_action :require_user!
   before_action :set_results
 
-  after_action :insert_pagination_headers, only: :show
+  after_action :insert_pagination_headers
 
   def index
     render json: @results.map(&:tag), each_serializer: REST::TagSerializer, relationships: TagRelationshipsPresenter.new(@results.map(&:tag), current_user&.account_id)
@@ -43,7 +43,7 @@ class Api::V1::FollowedTagsController < Api::BaseController
   end
 
   def records_continue?
-    @results.size == limit_param(TAG_LIMIT)
+    @results.size == limit_param(TAGS_LIMIT)
   end
 
   def pagination_params(core_params)
diff --git a/app/controllers/api/v1/tags_controller.rb b/app/controllers/api/v1/tags_controller.rb
index 32f71bdce..272362c31 100644
--- a/app/controllers/api/v1/tags_controller.rb
+++ b/app/controllers/api/v1/tags_controller.rb
@@ -12,7 +12,7 @@ class Api::V1::TagsController < Api::BaseController
   end
 
   def follow
-    TagFollow.create!(tag: @tag, account: current_account, rate_limit: true)
+    TagFollow.create_with(rate_limit: true).find_or_create_by!(tag: @tag, account: current_account)
     render json: @tag, serializer: REST::TagSerializer
   end
 
diff --git a/app/controllers/auth/registrations_controller.rb b/app/controllers/auth/registrations_controller.rb
index edef0d5bb..d363efeee 100644
--- a/app/controllers/auth/registrations_controller.rb
+++ b/app/controllers/auth/registrations_controller.rb
@@ -159,6 +159,6 @@ class Auth::RegistrationsController < Devise::RegistrationsController
   end
 
   def set_cache_headers
-    response.headers['Cache-Control'] = 'no-cache, no-store, max-age=0, must-revalidate'
+    response.headers['Cache-Control'] = 'private, no-store'
   end
 end
diff --git a/app/controllers/auth/sessions_controller.rb b/app/controllers/auth/sessions_controller.rb
index 13dfebcdd..16c18baa2 100644
--- a/app/controllers/auth/sessions_controller.rb
+++ b/app/controllers/auth/sessions_controller.rb
@@ -15,6 +15,10 @@ class Auth::SessionsController < Devise::SessionsController
   before_action :set_instance_presenter, only: [:new]
   before_action :set_body_classes
 
+  content_security_policy only: :new do |p|
+    p.form_action(false)
+  end
+
   def check_suspicious!
     user = find_user
     @login_is_suspicious = suspicious_sign_in?(user) unless user.nil?
diff --git a/app/controllers/concerns/admin_export_controller_concern.rb b/app/controllers/concerns/admin_export_controller_concern.rb
index 013915d02..b40c76557 100644
--- a/app/controllers/concerns/admin_export_controller_concern.rb
+++ b/app/controllers/concerns/admin_export_controller_concern.rb
@@ -27,13 +27,13 @@ module AdminExportControllerConcern
     params.require(:admin_import).permit(:data)
   end
 
-  def import_data
-    Paperclip.io_adapters.for(@import.data).read
+  def import_data_path
+    params[:admin_import][:data].path
   end
 
   def parse_import_data!(default_headers)
-    data = CSV.parse(import_data, headers: true)
-    data = CSV.parse(import_data, headers: default_headers) unless data.headers&.first&.strip&.include?(default_headers[0])
+    data = CSV.read(import_data_path, headers: true, encoding: 'UTF-8')
+    data = CSV.read(import_data_path, headers: default_headers, encoding: 'UTF-8') unless data.headers&.first&.strip&.include?(default_headers[0])
     @data = data.reject(&:blank?)
   end
 end
diff --git a/app/controllers/oauth/authorizations_controller.rb b/app/controllers/oauth/authorizations_controller.rb
index 137346ed0..d6e7d0800 100644
--- a/app/controllers/oauth/authorizations_controller.rb
+++ b/app/controllers/oauth/authorizations_controller.rb
@@ -8,6 +8,10 @@ class Oauth::AuthorizationsController < Doorkeeper::AuthorizationsController
   before_action :set_pack
   before_action :set_cache_headers
 
+  content_security_policy do |p|
+    p.form_action(false)
+  end
+
   include Localized
 
   private
@@ -35,6 +39,6 @@ class Oauth::AuthorizationsController < Doorkeeper::AuthorizationsController
   end
 
   def set_cache_headers
-    response.headers['Cache-Control'] = 'no-cache, no-store, max-age=0, must-revalidate'
+    response.headers['Cache-Control'] = 'private, no-store'
   end
 end
diff --git a/app/controllers/settings/base_controller.rb b/app/controllers/settings/base_controller.rb
index dee3922d8..bf17b918c 100644
--- a/app/controllers/settings/base_controller.rb
+++ b/app/controllers/settings/base_controller.rb
@@ -19,7 +19,7 @@ class Settings::BaseController < ApplicationController
   end
 
   def set_cache_headers
-    response.headers['Cache-Control'] = 'no-cache, no-store, max-age=0, must-revalidate'
+    response.headers['Cache-Control'] = 'private, no-store'
   end
 
   def require_not_suspended!
diff --git a/app/controllers/statuses_cleanup_controller.rb b/app/controllers/statuses_cleanup_controller.rb
index 3d4f4af02..0e7bb835f 100644
--- a/app/controllers/statuses_cleanup_controller.rb
+++ b/app/controllers/statuses_cleanup_controller.rb
@@ -20,6 +20,10 @@ class StatusesCleanupController < ApplicationController
     # Do nothing
   end
 
+  def require_functional!
+    redirect_to edit_user_registration_path unless current_user.functional_or_moved?
+  end
+
   private
 
   def set_pack
diff --git a/app/javascript/flavours/glitch/components/media_gallery.js b/app/javascript/flavours/glitch/components/media_gallery.js
index 5414b4858..ac0d05926 100644
--- a/app/javascript/flavours/glitch/components/media_gallery.js
+++ b/app/javascript/flavours/glitch/components/media_gallery.js
@@ -4,7 +4,6 @@ import PropTypes from 'prop-types';
 import { is } from 'immutable';
 import IconButton from './icon_button';
 import { defineMessages, injectIntl, FormattedMessage } from 'react-intl';
-import { isIOS } from '../is_mobile';
 import classNames from 'classnames';
 import { autoPlayGif, displayMedia, useBlurhash } from 'flavours/glitch/initial_state';
 import { debounce } from 'lodash';
@@ -202,7 +201,7 @@ class Item extends React.PureComponent {
         </a>
       );
     } else if (attachment.get('type') === 'gifv') {
-      const autoPlay = !isIOS() && this.getAutoPlay();
+      const autoPlay = this.getAutoPlay();
 
       thumbnail = (
         <div className={classNames('media-gallery__gifv', { autoplay: autoPlay })}>
@@ -216,6 +215,7 @@ class Item extends React.PureComponent {
             onMouseEnter={this.handleMouseEnter}
             onMouseLeave={this.handleMouseLeave}
             autoPlay={autoPlay}
+            playsInline
             loop
             muted
           />
diff --git a/app/javascript/flavours/glitch/features/account/components/header.js b/app/javascript/flavours/glitch/features/account/components/header.js
index 47c074ec3..9a5f2fd62 100644
--- a/app/javascript/flavours/glitch/features/account/components/header.js
+++ b/app/javascript/flavours/glitch/features/account/components/header.js
@@ -141,6 +141,17 @@ class Header extends ImmutablePureComponent {
     }
   }
 
+  handleShare = () => {
+    const { account } = this.props;
+
+    navigator.share({
+      text: `${titleFromAccount(account)}\n${account.get('note_plain')}`,
+      url: account.get('url'),
+    }).catch((e) => {
+      if (e.name !== 'AbortError') console.error(e);
+    });
+  }
+
   render () {
     const { account, hidden, intl, domain } = this.props;
     const { signedIn } = this.context.identity;
diff --git a/app/javascript/flavours/glitch/features/account_gallery/components/media_item.js b/app/javascript/flavours/glitch/features/account_gallery/components/media_item.js
index a16ee4806..f7a7fd467 100644
--- a/app/javascript/flavours/glitch/features/account_gallery/components/media_item.js
+++ b/app/javascript/flavours/glitch/features/account_gallery/components/media_item.js
@@ -2,7 +2,6 @@ import Blurhash from 'flavours/glitch/components/blurhash';
 import classNames from 'classnames';
 import Icon from 'flavours/glitch/components/icon';
 import { autoPlayGif, displayMedia, useBlurhash } from 'flavours/glitch/initial_state';
-import { isIOS } from 'flavours/glitch/is_mobile';
 import PropTypes from 'prop-types';
 import React from 'react';
 import ImmutablePropTypes from 'react-immutable-proptypes';
@@ -109,7 +108,8 @@ export default class MediaItem extends ImmutablePureComponent {
             src={attachment.get('url')}
             onMouseEnter={this.handleMouseEnter}
             onMouseLeave={this.handleMouseLeave}
-            autoPlay={!isIOS() && autoPlayGif}
+            autoPlay={autoPlayGif}
+            playsInline
             loop
             muted
           />
diff --git a/app/javascript/flavours/glitch/features/account_timeline/index.js b/app/javascript/flavours/glitch/features/account_timeline/index.js
index b735af0ac..b79082f00 100644
--- a/app/javascript/flavours/glitch/features/account_timeline/index.js
+++ b/app/javascript/flavours/glitch/features/account_timeline/index.js
@@ -25,7 +25,13 @@ const emptyList = ImmutableList();
 const mapStateToProps = (state, { params: { acct, id, tagged }, withReplies = false }) => {
   const accountId = id || state.getIn(['accounts_map', normalizeForLookup(acct)]);
 
-  if (!accountId) {
+  if (accountId === null) {
+    return {
+      isLoading: false,
+      isAccount: false,
+      statusIds: emptyList,
+    };
+  } else if (!accountId) {
     return {
       isLoading: true,
       statusIds: emptyList,
diff --git a/app/javascript/flavours/glitch/features/compose/components/compose_form.js b/app/javascript/flavours/glitch/features/compose/components/compose_form.js
index 516648f4b..abdd247a0 100644
--- a/app/javascript/flavours/glitch/features/compose/components/compose_form.js
+++ b/app/javascript/flavours/glitch/features/compose/components/compose_form.js
@@ -356,10 +356,8 @@ class ComposeForm extends ImmutablePureComponent {
           <OptionsContainer
             advancedOptions={advancedOptions}
             disabled={isSubmitting}
-            onChangeVisibility={onChangeVisibility}
             onToggleSpoiler={spoilersAlwaysOn ? null : onChangeSpoilerness}
             onUpload={onPaste}
-            privacy={privacy}
             isEditing={isEditing}
             sensitive={sensitive || (spoilersAlwaysOn && spoilerText && spoilerText.length > 0)}
             spoiler={spoilersAlwaysOn ? (spoilerText && spoilerText.length > 0) : spoiler}
diff --git a/app/javascript/flavours/glitch/features/compose/components/dropdown.js b/app/javascript/flavours/glitch/features/compose/components/dropdown.js
index 6b6d3de94..3de198c45 100644
--- a/app/javascript/flavours/glitch/features/compose/components/dropdown.js
+++ b/app/javascript/flavours/glitch/features/compose/components/dropdown.js
@@ -9,13 +9,13 @@ import IconButton from 'flavours/glitch/components/icon_button';
 import DropdownMenu from './dropdown_menu';
 
 //  Utils.
-import { isUserTouching } from 'flavours/glitch/is_mobile';
 import { assignHandlers } from 'flavours/glitch/utils/react_helpers';
 
 //  The component.
 export default class ComposerOptionsDropdown extends React.PureComponent {
 
   static propTypes = {
+    isUserTouching: PropTypes.func,
     disabled: PropTypes.bool,
     icon: PropTypes.string,
     items: PropTypes.arrayOf(PropTypes.shape({
@@ -49,7 +49,7 @@ export default class ComposerOptionsDropdown extends React.PureComponent {
     const { onModalOpen } = this.props;
     const { open } = this.state;
 
-    if (isUserTouching()) {
+    if (this.props.isUserTouching && this.props.isUserTouching()) {
       if (this.state.open) {
         this.props.onModalClose();
       } else {
diff --git a/app/javascript/flavours/glitch/features/compose/components/options.js b/app/javascript/flavours/glitch/features/compose/components/options.js
index c6278f4cb..b5276c371 100644
--- a/app/javascript/flavours/glitch/features/compose/components/options.js
+++ b/app/javascript/flavours/glitch/features/compose/components/options.js
@@ -10,8 +10,8 @@ import { connect } from 'react-redux';
 //  Components.
 import IconButton from 'flavours/glitch/components/icon_button';
 import TextIconButton from './text_icon_button';
-import Dropdown from './dropdown';
-import PrivacyDropdown from './privacy_dropdown';
+import DropdownContainer from '../containers/dropdown_container';
+import PrivacyDropdownContainer from '../containers/privacy_dropdown_container';
 import LanguageDropdown from '../containers/language_dropdown_container';
 import ImmutablePureComponent from 'react-immutable-pure-component';
 
@@ -126,15 +126,11 @@ class ComposerOptions extends ImmutablePureComponent {
     hasPoll: PropTypes.bool,
     intl: PropTypes.object.isRequired,
     onChangeAdvancedOption: PropTypes.func,
-    onChangeVisibility: PropTypes.func,
     onChangeContentType: PropTypes.func,
     onTogglePoll: PropTypes.func,
     onDoodleOpen: PropTypes.func,
-    onModalClose: PropTypes.func,
-    onModalOpen: PropTypes.func,
     onToggleSpoiler: PropTypes.func,
     onUpload: PropTypes.func,
-    privacy: PropTypes.string,
     contentType: PropTypes.string,
     resetFileKey: PropTypes.number,
     spoiler: PropTypes.bool,
@@ -195,12 +191,8 @@ class ComposerOptions extends ImmutablePureComponent {
       hasPoll,
       onChangeAdvancedOption,
       onChangeContentType,
-      onChangeVisibility,
       onTogglePoll,
-      onModalClose,
-      onModalOpen,
       onToggleSpoiler,
-      privacy,
       resetFileKey,
       spoiler,
       showContentTypeChoice,
@@ -239,7 +231,7 @@ class ComposerOptions extends ImmutablePureComponent {
           multiple
           style={{ display: 'none' }}
         />
-        <Dropdown
+        <DropdownContainer
           disabled={disabled || !allowMedia}
           icon='paperclip'
           items={[
@@ -255,8 +247,6 @@ class ComposerOptions extends ImmutablePureComponent {
             },
           ]}
           onChange={this.handleClickAttach}
-          onModalClose={onModalClose}
-          onModalOpen={onModalOpen}
           title={formatMessage(messages.attach)}
         />
         {!!pollLimits && (
@@ -275,15 +265,9 @@ class ComposerOptions extends ImmutablePureComponent {
           />
         )}
         <hr />
-        <PrivacyDropdown
-          disabled={disabled || isEditing}
-          onChange={onChangeVisibility}
-          onModalClose={onModalClose}
-          onModalOpen={onModalOpen}
-          value={privacy}
-        />
+        <PrivacyDropdownContainer disabled={disabled || isEditing} />
         {showContentTypeChoice && (
-          <Dropdown
+          <DropdownContainer
             disabled={disabled}
             icon={(contentTypeItems[contentType.split('/')[1]] || {}).icon}
             items={[
@@ -292,8 +276,6 @@ class ComposerOptions extends ImmutablePureComponent {
               contentTypeItems.markdown,
             ]}
             onChange={onChangeContentType}
-            onModalClose={onModalClose}
-            onModalOpen={onModalOpen}
             title={formatMessage(messages.content_type)}
             value={contentType}
           />
@@ -308,7 +290,7 @@ class ComposerOptions extends ImmutablePureComponent {
           />
         )}
         <LanguageDropdown />
-        <Dropdown
+        <DropdownContainer
           disabled={disabled || isEditing}
           icon='ellipsis-h'
           items={advancedOptions ? [
@@ -325,8 +307,6 @@ class ComposerOptions extends ImmutablePureComponent {
           ] : null}
           onChange={onChangeAdvancedOption}
           renderItemContents={this.renderToggleItemContents}
-          onModalClose={onModalClose}
-          onModalOpen={onModalOpen}
           title={formatMessage(messages.advanced_options_icon_title)}
           closeOnChange={false}
         />
diff --git a/app/javascript/flavours/glitch/features/compose/components/privacy_dropdown.js b/app/javascript/flavours/glitch/features/compose/components/privacy_dropdown.js
index 14364b0a0..02cf72289 100644
--- a/app/javascript/flavours/glitch/features/compose/components/privacy_dropdown.js
+++ b/app/javascript/flavours/glitch/features/compose/components/privacy_dropdown.js
@@ -32,7 +32,7 @@ class PrivacyDropdown extends React.PureComponent {
   };
 
   render () {
-    const { value, onChange, onModalOpen, onModalClose, disabled, noDirect, container, intl: { formatMessage } } = this.props;
+    const { value, onChange, onModalOpen, onModalClose, disabled, noDirect, container, isUserTouching, intl: { formatMessage } } = this.props;
 
     //  We predefine our privacy items so that we can easily pick the
     //  dropdown icon later.
@@ -75,6 +75,7 @@ class PrivacyDropdown extends React.PureComponent {
         icon={(privacyItems[value] || {}).icon}
         items={items}
         onChange={onChange}
+        isUserTouching={isUserTouching}
         onModalClose={onModalClose}
         onModalOpen={onModalOpen}
         title={formatMessage(messages.change_privacy)}
diff --git a/app/javascript/flavours/glitch/features/compose/containers/dropdown_container.js b/app/javascript/flavours/glitch/features/compose/containers/dropdown_container.js
new file mode 100644
index 000000000..3ac16505f
--- /dev/null
+++ b/app/javascript/flavours/glitch/features/compose/containers/dropdown_container.js
@@ -0,0 +1,12 @@
+import { connect } from 'react-redux';
+import { isUserTouching } from 'flavours/glitch/is_mobile';
+import { openModal, closeModal } from 'flavours/glitch/actions/modal';
+import Dropdown from '../components/dropdown';
+
+const mapDispatchToProps = dispatch => ({
+  isUserTouching,
+  onModalOpen: props => dispatch(openModal('ACTIONS', props)),
+  onModalClose: () => dispatch(closeModal()),
+});
+
+export default connect(null, mapDispatchToProps)(Dropdown);
diff --git a/app/javascript/flavours/glitch/features/compose/containers/options_container.js b/app/javascript/flavours/glitch/features/compose/containers/options_container.js
index c792aa582..6c3db8173 100644
--- a/app/javascript/flavours/glitch/features/compose/containers/options_container.js
+++ b/app/javascript/flavours/glitch/features/compose/containers/options_container.js
@@ -6,7 +6,7 @@ import {
   addPoll,
   removePoll,
 } from 'flavours/glitch/actions/compose';
-import { closeModal, openModal } from 'flavours/glitch/actions/modal';
+import { openModal } from 'flavours/glitch/actions/modal';
 
 function mapStateToProps (state) {
   const spoilersAlwaysOn = state.getIn(['local_settings', 'always_show_spoilers_field']);
@@ -48,14 +48,6 @@ const mapDispatchToProps = (dispatch) => ({
   onDoodleOpen() {
     dispatch(openModal('DOODLE', { noEsc: true }));
   },
-
-  onModalClose() {
-    dispatch(closeModal());
-  },
-
-  onModalOpen(props) {
-    dispatch(openModal('ACTIONS', props));
-  },
 });
 
 export default connect(mapStateToProps, mapDispatchToProps)(Options);
diff --git a/app/javascript/flavours/glitch/features/compose/containers/privacy_dropdown_container.js b/app/javascript/flavours/glitch/features/compose/containers/privacy_dropdown_container.js
new file mode 100644
index 000000000..5591d89c4
--- /dev/null
+++ b/app/javascript/flavours/glitch/features/compose/containers/privacy_dropdown_container.js
@@ -0,0 +1,23 @@
+import { connect } from 'react-redux';
+import PrivacyDropdown from '../components/privacy_dropdown';
+import { changeComposeVisibility } from 'flavours/glitch/actions/compose';
+import { openModal, closeModal } from 'flavours/glitch/actions/modal';
+import { isUserTouching } from 'flavours/glitch/is_mobile';
+
+const mapStateToProps = state => ({
+  value: state.getIn(['compose', 'privacy']),
+});
+
+const mapDispatchToProps = dispatch => ({
+
+  onChange (value) {
+    dispatch(changeComposeVisibility(value));
+  },
+
+  isUserTouching,
+  onModalOpen: props => dispatch(openModal('ACTIONS', props)),
+  onModalClose: () => dispatch(closeModal()),
+
+});
+
+export default connect(mapStateToProps, mapDispatchToProps)(PrivacyDropdown);
diff --git a/app/javascript/flavours/glitch/features/emoji/emoji.js b/app/javascript/flavours/glitch/features/emoji/emoji.js
index 50a399114..4f33200b6 100644
--- a/app/javascript/flavours/glitch/features/emoji/emoji.js
+++ b/app/javascript/flavours/glitch/features/emoji/emoji.js
@@ -19,8 +19,6 @@ const emojiFilename = (filename) => {
   return borderedEmoji.includes(filename) ? (filename + '_border') : filename;
 };
 
-const domParser = new DOMParser();
-
 const emojifyTextNode = (node, customEmojis) => {
   let str = node.textContent;
 
@@ -39,7 +37,7 @@ const emojifyTextNode = (node, customEmojis) => {
       }
     }
 
-    let rend, replacement = '';
+    let rend, replacement = null;
     if (i === str.length) {
       break;
     } else if (str[i] === ':') {
@@ -51,7 +49,14 @@ const emojifyTextNode = (node, customEmojis) => {
         // if you want additional emoji handler, add statements below which set replacement and return true.
         if (shortname in customEmojis) {
           const filename = autoPlayGif ? customEmojis[shortname].url : customEmojis[shortname].static_url;
-          replacement = `<img draggable="false" class="emojione custom-emoji" alt="${shortname}" title="${shortname}" src="${filename}" data-original="${customEmojis[shortname].url}" data-static="${customEmojis[shortname].static_url}" />`;
+          replacement = document.createElement('img');
+          replacement.setAttribute('draggable', false);
+          replacement.setAttribute('class', 'emojione custom-emoji');
+          replacement.setAttribute('alt', shortname);
+          replacement.setAttribute('title', shortname);
+          replacement.setAttribute('src', filename);
+          replacement.setAttribute('data-original', customEmojis[shortname].url);
+          replacement.setAttribute('data-static', customEmojis[shortname].static_url);
           return true;
         }
         return false;
@@ -59,7 +64,12 @@ const emojifyTextNode = (node, customEmojis) => {
     } else if (!useSystemEmojiFont) { // matched to unicode emoji
       const { filename, shortCode } = unicodeMapping[match];
       const title = shortCode ? `:${shortCode}:` : '';
-      replacement = `<img draggable="false" class="emojione" alt="${match}" title="${title}" src="${assetHost}/emoji/${emojiFilename(filename)}.svg" />`;
+      replacement = document.createElement('img');
+      replacement.setAttribute('draggable', false);
+      replacement.setAttribute('class', 'emojione');
+      replacement.setAttribute('alt', match);
+      replacement.setAttribute('title', title);
+      replacement.setAttribute('src', `${assetHost}/emoji/${emojiFilename(filename)}.svg`);
       rend = i + match.length;
       // If the matched character was followed by VS15 (for selecting text presentation), skip it.
       if (str.codePointAt(rend) === 65038) {
@@ -69,9 +79,8 @@ const emojifyTextNode = (node, customEmojis) => {
 
     fragment.append(document.createTextNode(str.slice(0, i)));
     if (replacement) {
-      fragment.append(domParser.parseFromString(replacement, 'text/html').documentElement.getElementsByTagName('img')[0]);
+      fragment.append(replacement);
     }
-    node.textContent = str.slice(0, i);
     str = str.slice(rend);
   }
 
diff --git a/app/javascript/flavours/glitch/features/explore/index.js b/app/javascript/flavours/glitch/features/explore/index.js
index 24fa26eec..ba435d7e3 100644
--- a/app/javascript/flavours/glitch/features/explore/index.js
+++ b/app/javascript/flavours/glitch/features/explore/index.js
@@ -24,6 +24,16 @@ const mapStateToProps = state => ({
   isSearching: state.getIn(['search', 'submitted']) || !showTrends,
 });
 
+// Fix strange bug on Safari where <span> (rendered by FormattedMessage) disappears
+// after clicking around Explore top bar (issue #20885).
+// Removing width=100% from <a> also fixes it, as well as replacing <span> with <div>
+// We're choosing to wrap span with div to keep the changes local only to this tool bar.
+const WrapFormattedMessage = ({ children, ...props }) => <div><FormattedMessage {...props}>{children}</FormattedMessage></div>;
+WrapFormattedMessage.propTypes = {
+  children: PropTypes.any,
+};
+
+
 export default @connect(mapStateToProps)
 @injectIntl
 class Explore extends React.PureComponent {
@@ -47,7 +57,7 @@ class Explore extends React.PureComponent {
     this.column = c;
   }
 
-  render () {
+  render() {
     const { intl, multiColumn, isSearching } = this.props;
     const { signedIn } = this.context.identity;
 
@@ -70,10 +80,10 @@ class Explore extends React.PureComponent {
           ) : (
             <React.Fragment>
               <div className='account__section-headline'>
-                <NavLink exact to='/explore'><FormattedMessage id='explore.trending_statuses' defaultMessage='Posts' /></NavLink>
-                <NavLink exact to='/explore/tags'><FormattedMessage id='explore.trending_tags' defaultMessage='Hashtags' /></NavLink>
-                <NavLink exact to='/explore/links'><FormattedMessage id='explore.trending_links' defaultMessage='News' /></NavLink>
-                {signedIn && <NavLink exact to='/explore/suggestions'><FormattedMessage id='explore.suggested_follows' defaultMessage='For you' /></NavLink>}
+                <NavLink exact to='/explore'><WrapFormattedMessage id='explore.trending_statuses' defaultMessage='Posts' /></NavLink>
+                <NavLink exact to='/explore/tags'><WrapFormattedMessage id='explore.trending_tags' defaultMessage='Hashtags' /></NavLink>
+                <NavLink exact to='/explore/links'><WrapFormattedMessage id='explore.trending_links' defaultMessage='News' /></NavLink>
+                {signedIn && <NavLink exact to='/explore/suggestions'><WrapFormattedMessage id='explore.suggested_follows' defaultMessage='For you' /></NavLink>}
               </div>
 
               <Switch>
diff --git a/app/javascript/flavours/glitch/features/getting_started/components/trends.js b/app/javascript/flavours/glitch/features/getting_started/components/trends.js
index 5158f6689..d45934d6e 100644
--- a/app/javascript/flavours/glitch/features/getting_started/components/trends.js
+++ b/app/javascript/flavours/glitch/features/getting_started/components/trends.js
@@ -4,6 +4,7 @@ import PropTypes from 'prop-types';
 import ImmutablePropTypes from 'react-immutable-proptypes';
 import { ImmutableHashtag as Hashtag } from 'flavours/glitch/components/hashtag';
 import { FormattedMessage } from 'react-intl';
+import { Link } from 'react-router-dom';
 
 export default class Trends extends ImmutablePureComponent {
 
@@ -36,7 +37,11 @@ export default class Trends extends ImmutablePureComponent {
 
     return (
       <div className='getting-started__trends'>
-        <h4><FormattedMessage id='trends.trending_now' defaultMessage='Trending now' /></h4>
+        <h4>
+          <Link to={'/explore/tags'}>
+            <FormattedMessage id='trends.trending_now' defaultMessage='Trending now' />
+          </Link>
+        </h4>
 
         {trends.take(1).map(hashtag => <Hashtag key={hashtag.get('name')} hashtag={hashtag} />)}
       </div>
diff --git a/app/javascript/flavours/glitch/features/local_settings/navigation/item/index.js b/app/javascript/flavours/glitch/features/local_settings/navigation/item/index.js
index 4dec7d154..739c5ebae 100644
--- a/app/javascript/flavours/glitch/features/local_settings/navigation/item/index.js
+++ b/app/javascript/flavours/glitch/features/local_settings/navigation/item/index.js
@@ -50,6 +50,8 @@ export default class LocalSettingsPage extends React.PureComponent {
       <a
         href={href}
         className={finalClassName}
+        title={title}
+        aria-label={title}
       >
         {iconElem} <span>{title}</span>
       </a>
@@ -60,6 +62,8 @@ export default class LocalSettingsPage extends React.PureComponent {
         role='button'
         tabIndex='0'
         className={finalClassName}
+        title={title}
+        aria-label={title}
       >
         {iconElem} <span>{title}</span>
       </a>
diff --git a/app/javascript/flavours/glitch/features/ui/components/header.js b/app/javascript/flavours/glitch/features/ui/components/header.js
index 6c2fb40ba..891f7fc07 100644
--- a/app/javascript/flavours/glitch/features/ui/components/header.js
+++ b/app/javascript/flavours/glitch/features/ui/components/header.js
@@ -36,7 +36,7 @@ class Header extends React.PureComponent {
     if (signedIn) {
       content = (
         <>
-          {location.pathname !== '/publish' && <Link to='/publish' className='button'><FormattedMessage id='compose_form.publish' defaultMessage='Publish' /></Link>}
+          {location.pathname !== '/publish' && <Link to='/publish' className='button'><FormattedMessage id='compose_form.publish_form' defaultMessage='Publish' /></Link>}
           <Account />
         </>
       );
diff --git a/app/javascript/flavours/glitch/reducers/accounts_map.js b/app/javascript/flavours/glitch/reducers/accounts_map.js
index 53e08c8fb..444bbda19 100644
--- a/app/javascript/flavours/glitch/reducers/accounts_map.js
+++ b/app/javascript/flavours/glitch/reducers/accounts_map.js
@@ -1,4 +1,5 @@
 import { ACCOUNT_IMPORT, ACCOUNTS_IMPORT } from '../actions/importer';
+import { ACCOUNT_LOOKUP_FAIL } from '../actions/accounts';
 import { Map as ImmutableMap } from 'immutable';
 
 export const normalizeForLookup = str => str.toLowerCase();
@@ -7,6 +8,8 @@ const initialState = ImmutableMap();
 
 export default function accountsMap(state = initialState, action) {
   switch(action.type) {
+  case ACCOUNT_LOOKUP_FAIL:
+    return action.error?.response?.status === 404 ? state.set(normalizeForLookup(action.acct), null) : state;
   case ACCOUNT_IMPORT:
     return state.set(normalizeForLookup(action.account.acct), action.account.id);
   case ACCOUNTS_IMPORT:
diff --git a/app/javascript/flavours/glitch/reducers/compose.js b/app/javascript/flavours/glitch/reducers/compose.js
index 1edc70add..b1c792406 100644
--- a/app/javascript/flavours/glitch/reducers/compose.js
+++ b/app/javascript/flavours/glitch/reducers/compose.js
@@ -578,6 +578,10 @@ export default function compose(state = initialState, action) {
       if (action.status.get('spoiler_text').length > 0) {
         map.set('spoiler', true);
         map.set('spoiler_text', action.status.get('spoiler_text'));
+
+        if (map.get('media_attachments').size >= 1) {
+          map.set('sensitive', true);
+        }
       } else {
         map.set('spoiler', false);
         map.set('spoiler_text', '');
diff --git a/app/javascript/flavours/glitch/styles/components/columns.scss b/app/javascript/flavours/glitch/styles/components/columns.scss
index c61815e07..71edf7fb3 100644
--- a/app/javascript/flavours/glitch/styles/components/columns.scss
+++ b/app/javascript/flavours/glitch/styles/components/columns.scss
@@ -558,6 +558,7 @@ $ui-header-height: 55px;
   border-radius: 4px;
   margin-bottom: 10px;
   align-items: stretch;
+  gap: 2px;
 }
 
 .pillbar-button {
@@ -565,7 +566,6 @@ $ui-header-height: 55px;
   color: #fafafa;
   padding: 2px;
   margin: 0;
-  margin-left: 2px;
   font-size: inherit;
   flex: auto;
   background-color: $ui-base-color;
@@ -578,43 +578,20 @@ $ui-header-height: 55px;
   }
 
   &:not([disabled]) {
-    &:hover {
-      background-color: darken($ui-base-color, 10%);
-    }
-
+    &:hover,
     &:focus {
-      background-color: darken($ui-base-color, 15%);
-    }
-
-    &:active {
-      background-color: darken($ui-base-color, 20%);
+      background-color: darken($ui-base-color, 10%);
     }
 
     &.active {
-      background-color: $ui-highlight-color;
-      box-shadow: inset 0 5px darken($ui-highlight-color, 20%);
-
-      &:hover {
-        background-color: lighten($ui-highlight-color, 10%);
-        box-shadow: inset 0 5px darken($ui-highlight-color, 10%);
-      }
+      background-color: darken($ui-highlight-color, 2%);
 
+      &:hover,
       &:focus {
-        background-color: lighten($ui-highlight-color, 15%);
-        box-shadow: inset 0 5px darken($ui-highlight-color, 5%);
-      }
-
-      &:active {
-        background-color: lighten($ui-highlight-color, 20%);
-        box-shadow: inset 0 5px $ui-highlight-color;
+        background-color: $ui-highlight-color;
       }
     }
   }
-
-  /* TODO: check RTL? */
-  &:first-child {
-    margin-left: 0;
-  }
 }
 
 .limited-account-hint {
diff --git a/app/javascript/flavours/glitch/styles/components/index.scss b/app/javascript/flavours/glitch/styles/components/index.scss
index b00038afd..80b0598a5 100644
--- a/app/javascript/flavours/glitch/styles/components/index.scss
+++ b/app/javascript/flavours/glitch/styles/components/index.scss
@@ -1051,12 +1051,16 @@
     margin-top: 10px;
 
     h4 {
+      border-bottom: 1px solid lighten($ui-base-color, 8%);
+      padding: 10px;
       font-size: 12px;
       text-transform: uppercase;
-      color: $darker-text-color;
-      padding: 10px;
       font-weight: 500;
-      border-bottom: 1px solid lighten($ui-base-color, 8%);
+
+      a {
+        color: $darker-text-color;
+        text-decoration: none;
+      }
     }
 
     @media screen and (max-height: 810px) {
diff --git a/app/javascript/flavours/glitch/styles/mastodon-light/diff.scss b/app/javascript/flavours/glitch/styles/mastodon-light/diff.scss
index 6489c2f80..9fc1aed2a 100644
--- a/app/javascript/flavours/glitch/styles/mastodon-light/diff.scss
+++ b/app/javascript/flavours/glitch/styles/mastodon-light/diff.scss
@@ -712,6 +712,26 @@ html {
 
 // Glitch-soc-specific changes
 
+.pillbar-button {
+  background: $ui-secondary-color;
+
+  &:not([disabled]) {
+    &:hover,
+    &:focus {
+      background: darken($ui-secondary-color, 10%);
+    }
+
+    &.active {
+      background-color: darken($ui-highlight-color, 2%);
+
+      &:hover,
+      &:focus {
+        background: lighten($ui-highlight-color, 10%);
+      }
+    }
+  }
+}
+
 .glitch.local-settings {
   background: $ui-base-color;
   border: 1px solid lighten($ui-base-color, 8%);
diff --git a/app/javascript/mastodon/components/media_gallery.js b/app/javascript/mastodon/components/media_gallery.js
index 2e7ce2e60..bf7982cea 100644
--- a/app/javascript/mastodon/components/media_gallery.js
+++ b/app/javascript/mastodon/components/media_gallery.js
@@ -4,7 +4,6 @@ import PropTypes from 'prop-types';
 import { is } from 'immutable';
 import IconButton from './icon_button';
 import { defineMessages, injectIntl, FormattedMessage } from 'react-intl';
-import { isIOS } from '../is_mobile';
 import classNames from 'classnames';
 import { autoPlayGif, cropImages, displayMedia, useBlurhash } from '../initial_state';
 import { debounce } from 'lodash';
@@ -181,7 +180,7 @@ class Item extends React.PureComponent {
         </a>
       );
     } else if (attachment.get('type') === 'gifv') {
-      const autoPlay = !isIOS() && this.getAutoPlay();
+      const autoPlay = this.getAutoPlay();
 
       thumbnail = (
         <div className={classNames('media-gallery__gifv', { autoplay: autoPlay })}>
@@ -195,6 +194,7 @@ class Item extends React.PureComponent {
             onMouseEnter={this.handleMouseEnter}
             onMouseLeave={this.handleMouseLeave}
             autoPlay={autoPlay}
+            playsInline
             loop
             muted
           />
diff --git a/app/javascript/mastodon/components/status_content.js b/app/javascript/mastodon/components/status_content.js
index fbc66eabf..6f3093d63 100644
--- a/app/javascript/mastodon/components/status_content.js
+++ b/app/javascript/mastodon/components/status_content.js
@@ -249,7 +249,7 @@ class StatusContent extends React.PureComponent {
       let mentionsPlaceholder = '';
 
       const mentionLinks = status.get('mentions').map(item => (
-        <Link to={`/@${item.get('acct')}`} key={item.get('id')} className='mention'>
+        <Link to={`/@${item.get('acct')}`} key={item.get('id')} className='status-link mention'>
           @<span>{item.get('username')}</span>
         </Link>
       )).reduce((aggregate, item) => [...aggregate, item, ' '], []);
diff --git a/app/javascript/mastodon/features/account/components/header.js b/app/javascript/mastodon/features/account/components/header.js
index 1825e0de6..5eb89c0ea 100644
--- a/app/javascript/mastodon/features/account/components/header.js
+++ b/app/javascript/mastodon/features/account/components/header.js
@@ -149,6 +149,17 @@ class Header extends ImmutablePureComponent {
     }
   }
 
+  handleShare = () => {
+    const { account } = this.props;
+
+    navigator.share({
+      text: `${titleFromAccount(account)}\n${account.get('note_plain')}`,
+      url: account.get('url'),
+    }).catch((e) => {
+      if (e.name !== 'AbortError') console.error(e);
+    });
+  }
+
   render () {
     const { account, hidden, intl, domain } = this.props;
     const { signedIn } = this.context.identity;
diff --git a/app/javascript/mastodon/features/account_gallery/components/media_item.js b/app/javascript/mastodon/features/account_gallery/components/media_item.js
index 3190caeb4..f16fe07f1 100644
--- a/app/javascript/mastodon/features/account_gallery/components/media_item.js
+++ b/app/javascript/mastodon/features/account_gallery/components/media_item.js
@@ -2,7 +2,6 @@ import Blurhash from 'mastodon/components/blurhash';
 import classNames from 'classnames';
 import Icon from 'mastodon/components/icon';
 import { autoPlayGif, displayMedia, useBlurhash } from 'mastodon/initial_state';
-import { isIOS } from 'mastodon/is_mobile';
 import PropTypes from 'prop-types';
 import React from 'react';
 import ImmutablePropTypes from 'react-immutable-proptypes';
@@ -109,7 +108,8 @@ export default class MediaItem extends ImmutablePureComponent {
             src={attachment.get('url')}
             onMouseEnter={this.handleMouseEnter}
             onMouseLeave={this.handleMouseLeave}
-            autoPlay={!isIOS() && autoPlayGif}
+            autoPlay={autoPlayGif}
+            playsInline
             loop
             muted
           />
diff --git a/app/javascript/mastodon/features/account_timeline/index.js b/app/javascript/mastodon/features/account_timeline/index.js
index 525837c72..bdb430a33 100644
--- a/app/javascript/mastodon/features/account_timeline/index.js
+++ b/app/javascript/mastodon/features/account_timeline/index.js
@@ -26,7 +26,13 @@ const emptyList = ImmutableList();
 const mapStateToProps = (state, { params: { acct, id, tagged }, withReplies = false }) => {
   const accountId = id || state.getIn(['accounts_map', normalizeForLookup(acct)]);
 
-  if (!accountId) {
+  if (accountId === null) {
+    return {
+      isLoading: false,
+      isAccount: false,
+      statusIds: emptyList,
+    };
+  } else if (!accountId) {
     return {
       isLoading: true,
       statusIds: emptyList,
diff --git a/app/javascript/mastodon/features/emoji/__tests__/emoji-test.js b/app/javascript/mastodon/features/emoji/__tests__/emoji-test.js
index 2f19aab7e..72a732e3b 100644
--- a/app/javascript/mastodon/features/emoji/__tests__/emoji-test.js
+++ b/app/javascript/mastodon/features/emoji/__tests__/emoji-test.js
@@ -88,5 +88,10 @@ describe('emoji', () => {
       expect(emojify('💂‍♀️💂‍♂️'))
         .toEqual('<img draggable="false" class="emojione" alt="💂\u200D♀️" title=":female-guard:" src="/emoji/1f482-200d-2640-fe0f_border.svg"><img draggable="false" class="emojione" alt="💂\u200D♂️" title=":male-guard:" src="/emoji/1f482-200d-2642-fe0f_border.svg">');
     });
+
+    it('keeps ordering as expected (issue fixed by PR 20677)', () => {
+      expect(emojify('<p>💕 <a class="hashtag" href="https://example.com/tags/foo" rel="nofollow noopener noreferrer" target="_blank">#<span>foo</span></a> test: foo.</p>'))
+        .toEqual('<p><img draggable="false" class="emojione" alt="💕" title=":two_hearts:" src="/emoji/1f495.svg"> <a class="hashtag" href="https://example.com/tags/foo" rel="nofollow noopener noreferrer" target="_blank">#<span>foo</span></a> test: foo.</p>');
+    });
   });
 });
diff --git a/app/javascript/mastodon/features/emoji/emoji.js b/app/javascript/mastodon/features/emoji/emoji.js
index 52a8458fb..bc3dd8c60 100644
--- a/app/javascript/mastodon/features/emoji/emoji.js
+++ b/app/javascript/mastodon/features/emoji/emoji.js
@@ -19,8 +19,6 @@ const emojiFilename = (filename) => {
   return borderedEmoji.includes(filename) ? (filename + '_border') : filename;
 };
 
-const domParser = new DOMParser();
-
 const emojifyTextNode = (node, customEmojis) => {
   let str = node.textContent;
 
@@ -39,7 +37,7 @@ const emojifyTextNode = (node, customEmojis) => {
       }
     }
 
-    let rend, replacement = '';
+    let rend, replacement = null;
     if (i === str.length) {
       break;
     } else if (str[i] === ':') {
@@ -51,7 +49,14 @@ const emojifyTextNode = (node, customEmojis) => {
         // if you want additional emoji handler, add statements below which set replacement and return true.
         if (shortname in customEmojis) {
           const filename = autoPlayGif ? customEmojis[shortname].url : customEmojis[shortname].static_url;
-          replacement = `<img draggable="false" class="emojione custom-emoji" alt="${shortname}" title="${shortname}" src="${filename}" data-original="${customEmojis[shortname].url}" data-static="${customEmojis[shortname].static_url}" />`;
+          replacement = document.createElement('img');
+          replacement.setAttribute('draggable', false);
+          replacement.setAttribute('class', 'emojione custom-emoji');
+          replacement.setAttribute('alt', shortname);
+          replacement.setAttribute('title', shortname);
+          replacement.setAttribute('src', filename);
+          replacement.setAttribute('data-original', customEmojis[shortname].url);
+          replacement.setAttribute('data-static', customEmojis[shortname].static_url);
           return true;
         }
         return false;
@@ -59,7 +64,12 @@ const emojifyTextNode = (node, customEmojis) => {
     } else { // matched to unicode emoji
       const { filename, shortCode } = unicodeMapping[match];
       const title = shortCode ? `:${shortCode}:` : '';
-      replacement = `<img draggable="false" class="emojione" alt="${match}" title="${title}" src="${assetHost}/emoji/${emojiFilename(filename)}.svg" />`;
+      replacement = document.createElement('img');
+      replacement.setAttribute('draggable', false);
+      replacement.setAttribute('class', 'emojione');
+      replacement.setAttribute('alt', match);
+      replacement.setAttribute('title', title);
+      replacement.setAttribute('src', `${assetHost}/emoji/${emojiFilename(filename)}.svg`);
       rend = i + match.length;
       // If the matched character was followed by VS15 (for selecting text presentation), skip it.
       if (str.codePointAt(rend) === 65038) {
@@ -69,9 +79,8 @@ const emojifyTextNode = (node, customEmojis) => {
 
     fragment.append(document.createTextNode(str.slice(0, i)));
     if (replacement) {
-      fragment.append(domParser.parseFromString(replacement, 'text/html').documentElement.getElementsByTagName('img')[0]);
+      fragment.append(replacement);
     }
-    node.textContent = str.slice(0, i);
     str = str.slice(rend);
   }
 
diff --git a/app/javascript/mastodon/features/explore/index.js b/app/javascript/mastodon/features/explore/index.js
index 552def142..286170c9f 100644
--- a/app/javascript/mastodon/features/explore/index.js
+++ b/app/javascript/mastodon/features/explore/index.js
@@ -24,6 +24,16 @@ const mapStateToProps = state => ({
   isSearching: state.getIn(['search', 'submitted']) || !showTrends,
 });
 
+// Fix strange bug on Safari where <span> (rendered by FormattedMessage) disappears
+// after clicking around Explore top bar (issue #20885).
+// Removing width=100% from <a> also fixes it, as well as replacing <span> with <div>
+// We're choosing to wrap span with div to keep the changes local only to this tool bar.
+const WrapFormattedMessage = ({ children, ...props }) => <div><FormattedMessage {...props}>{children}</FormattedMessage></div>;
+WrapFormattedMessage.propTypes = {
+  children: PropTypes.any,
+};
+
+
 export default @connect(mapStateToProps)
 @injectIntl
 class Explore extends React.PureComponent {
@@ -47,7 +57,7 @@ class Explore extends React.PureComponent {
     this.column = c;
   }
 
-  render () {
+  render() {
     const { intl, multiColumn, isSearching } = this.props;
     const { signedIn } = this.context.identity;
 
@@ -70,10 +80,10 @@ class Explore extends React.PureComponent {
           ) : (
             <React.Fragment>
               <div className='account__section-headline'>
-                <NavLink exact to='/explore'><FormattedMessage id='explore.trending_statuses' defaultMessage='Posts' /></NavLink>
-                <NavLink exact to='/explore/tags'><FormattedMessage id='explore.trending_tags' defaultMessage='Hashtags' /></NavLink>
-                <NavLink exact to='/explore/links'><FormattedMessage id='explore.trending_links' defaultMessage='News' /></NavLink>
-                {signedIn && <NavLink exact to='/explore/suggestions'><FormattedMessage id='explore.suggested_follows' defaultMessage='For you' /></NavLink>}
+                <NavLink exact to='/explore'><WrapFormattedMessage id='explore.trending_statuses' defaultMessage='Posts' /></NavLink>
+                <NavLink exact to='/explore/tags'><WrapFormattedMessage id='explore.trending_tags' defaultMessage='Hashtags' /></NavLink>
+                <NavLink exact to='/explore/links'><WrapFormattedMessage id='explore.trending_links' defaultMessage='News' /></NavLink>
+                {signedIn && <NavLink exact to='/explore/suggestions'><WrapFormattedMessage id='explore.suggested_follows' defaultMessage='For you' /></NavLink>}
               </div>
 
               <Switch>
diff --git a/app/javascript/mastodon/features/getting_started/components/trends.js b/app/javascript/mastodon/features/getting_started/components/trends.js
index 71c7c458d..8dcdb4f61 100644
--- a/app/javascript/mastodon/features/getting_started/components/trends.js
+++ b/app/javascript/mastodon/features/getting_started/components/trends.js
@@ -4,6 +4,7 @@ import PropTypes from 'prop-types';
 import ImmutablePropTypes from 'react-immutable-proptypes';
 import { ImmutableHashtag as Hashtag } from 'mastodon/components/hashtag';
 import { FormattedMessage } from 'react-intl';
+import { Link } from 'react-router-dom';
 
 export default class Trends extends ImmutablePureComponent {
 
@@ -36,7 +37,11 @@ export default class Trends extends ImmutablePureComponent {
 
     return (
       <div className='getting-started__trends'>
-        <h4><FormattedMessage id='trends.trending_now' defaultMessage='Trending now' /></h4>
+        <h4>
+          <Link to={'/explore/tags'}>
+            <FormattedMessage id='trends.trending_now' defaultMessage='Trending now' />
+          </Link>
+        </h4>
 
         {trends.take(3).map(hashtag => <Hashtag key={hashtag.get('name')} hashtag={hashtag} />)}
       </div>
diff --git a/app/javascript/mastodon/features/ui/components/header.js b/app/javascript/mastodon/features/ui/components/header.js
index 4e109080e..bbb0ca1c6 100644
--- a/app/javascript/mastodon/features/ui/components/header.js
+++ b/app/javascript/mastodon/features/ui/components/header.js
@@ -35,7 +35,7 @@ class Header extends React.PureComponent {
     if (signedIn) {
       content = (
         <>
-          {location.pathname !== '/publish' && <Link to='/publish' className='button'><FormattedMessage id='compose_form.publish' defaultMessage='Publish' /></Link>}
+          {location.pathname !== '/publish' && <Link to='/publish' className='button'><FormattedMessage id='compose_form.publish_form' defaultMessage='Publish' /></Link>}
           <Account />
         </>
       );
diff --git a/app/javascript/mastodon/locales/af.json b/app/javascript/mastodon/locales/af.json
index 854312fdf..60a814373 100644
--- a/app/javascript/mastodon/locales/af.json
+++ b/app/javascript/mastodon/locales/af.json
@@ -1,231 +1,232 @@
 {
   "about.blocks": "Gemodereerde bedieners",
   "about.contact": "Kontak:",
-  "about.disclaimer": "Mastodon is gratis, oop-bron sagteware, en 'n handelsmerk van Mastodon gGmbH.",
+  "about.disclaimer": "Mastodon is gratis oopbronsagteware en ’n handelsmerk van Mastodon gGmbH.",
   "about.domain_blocks.no_reason_available": "Rede nie beskikbaar nie",
   "about.domain_blocks.preamble": "Mastodon generally allows you to view content from and interact with users from any other server in the fediverse. These are the exceptions that have been made on this particular server.",
   "about.domain_blocks.silenced.explanation": "You will generally not see profiles and content from this server, unless you explicitly look it up or opt into it by following.",
   "about.domain_blocks.silenced.title": "Beperk",
   "about.domain_blocks.suspended.explanation": "No data from this server will be processed, stored or exchanged, making any interaction or communication with users from this server impossible.",
   "about.domain_blocks.suspended.title": "Opgeskort",
-  "about.not_available": "Hierdie informasie is nie beskikbaar gemaak op hierdie bediener nie.",
-  "about.powered_by": "Gedesentraliseerde sosiale media bekragtig deur {mastodon}",
-  "about.rules": "Bediener reëls",
+  "about.not_available": "Hierdie inligting is nie op hierdie bediener beskikbaar gestel nie.",
+  "about.powered_by": "Gedesentraliseerde sosiale media aangedryf deur {mastodon}",
+  "about.rules": "Bedienerreëls",
   "account.account_note_header": "Nota",
   "account.add_or_remove_from_list": "Voeg by of verwyder van lyste",
   "account.badges.bot": "Bot",
   "account.badges.group": "Groep",
-  "account.block": "Blok @{name}",
-  "account.block_domain": "Blokeer alles van {domain}",
-  "account.blocked": "Geblok",
-  "account.browse_more_on_origin_server": "Snuffel rond op oorspronklike profiel",
-  "account.cancel_follow_request": "Onttrek volg aanvraag",
+  "account.block": "Blokkeer @{name}",
+  "account.block_domain": "Blokkeer domein {domain}",
+  "account.blocked": "Geblokkeer",
+  "account.browse_more_on_origin_server": "Verken die oorspronklike profiel",
+  "account.cancel_follow_request": "Herroep volgversoek",
   "account.direct": "Stuur direkte boodskap aan @{name}",
-  "account.disable_notifications": "Hou op om kennisgewings te stuur wanneer @{name} plasings maak",
-  "account.domain_blocked": "Domein geblok",
+  "account.disable_notifications": "Hou op om my van @{name} se plasings te laat weet",
+  "account.domain_blocked": "Domein geblokkeer",
   "account.edit_profile": "Redigeer profiel",
-  "account.enable_notifications": "Stel my in kennis wanneer @{name} plasings maak",
-  "account.endorse": "Beklemtoon op profiel",
+  "account.enable_notifications": "Laat weet my wanneer @{name} iets plaas",
+  "account.endorse": "Toon op profiel",
   "account.featured_tags.last_status_at": "Laaste plasing op {date}",
-  "account.featured_tags.last_status_never": "Geen plasings",
+  "account.featured_tags.last_status_never": "Geen plasings nie",
   "account.featured_tags.title": "{name}'s featured hashtags",
   "account.follow": "Volg",
-  "account.followers": "Volgelinge",
-  "account.followers.empty": "Niemand volg tans hierdie gebruiker nie.",
+  "account.followers": "Volgers",
+  "account.followers.empty": "Hierdie gebruiker het nog nie volgers nie.",
   "account.followers_counter": "{count, plural, one {{counter} Follower} other {{counter} Followers}}",
   "account.following": "Volg",
   "account.following_counter": "{count, plural, one {{counter} Following} other {{counter} Following}}",
-  "account.follows.empty": "Die gebruiker volg nie tans iemand nie.",
+  "account.follows.empty": "Die gebruiker volg nog niemand.",
   "account.follows_you": "Volg jou",
   "account.go_to_profile": "Gaan na profiel",
-  "account.hide_reblogs": "Versteek hupstoot vanaf @{name}",
+  "account.hide_reblogs": "Versteek plasings wat deur @{name} aangestuur is",
   "account.joined_short": "Aangesluit",
   "account.languages": "Change subscribed languages",
-  "account.link_verified_on": "Eienaarskap van die skakel was getoets op {date}",
+  "account.link_verified_on": "Eienaarskap van hierdie skakel is nagegaan op {date}",
   "account.locked_info": "Die rekening se privaatheidstatus is gesluit. Die eienaar hersien handmatig wie hom/haar kan volg.",
   "account.media": "Media",
   "account.mention": "Noem @{name}",
-  "account.moved_to": "{name} het aangedui dat hul nuwe rekening die volgende is:",
-  "account.mute": "Demp @{name}",
-  "account.mute_notifications": "Demp kennisgewings van @{name}",
-  "account.muted": "Gedemp",
+  "account.moved_to": "{name} het aangedui hulle nuwe rekening is nou:",
+  "account.mute": "Doof @{name} uit",
+  "account.mute_notifications": "Doof kennisgewings van @{name} uit",
+  "account.muted": "Uitgedoof",
   "account.open_original_page": "Maak oorspronklike blad oop",
-  "account.posts": "Toots",
-  "account.posts_with_replies": "Toots and replies",
+  "account.posts": "Plasings",
+  "account.posts_with_replies": "Plasings en antwoorde",
   "account.report": "Rapporteer @{name}",
-  "account.requested": "Awaiting approval",
+  "account.requested": "Wag op goedkeuring. Klik om volgversoek te kanselleer",
   "account.share": "Deel @{name} se profiel",
-  "account.show_reblogs": "Wys hupstote vanaf @{name}",
-  "account.statuses_counter": "{count, plural, one {{counter} Toot} other {{counter} Toots}}",
-  "account.unblock": "Ontblok @{name}",
-  "account.unblock_domain": "Ontblok domein {domain}",
-  "account.unblock_short": "Ontblok",
-  "account.unendorse": "Moenie beklemtoon op profiel nie",
+  "account.show_reblogs": "Wys aangestuurde plasings van @{name}",
+  "account.statuses_counter": "{count, plural, one {{counter} Plaas} other {{counter} Plasings}}",
+  "account.unblock": "Deblokkeer @{name}",
+  "account.unblock_domain": "Deblokkeer domein {domain}",
+  "account.unblock_short": "Deblokkeer",
+  "account.unendorse": "Moenie op profiel toon nie",
   "account.unfollow": "Ontvolg",
-  "account.unmute": "Ontdemp @{name}",
-  "account.unmute_notifications": "Ontdemp kennisgewings vanaf @{name}",
-  "account.unmute_short": "Ontdemp",
-  "account_note.placeholder": "Click to add a note",
+  "account.unmute": "Hef uitdowing van @{name} op",
+  "account.unmute_notifications": "Toon weer kennisgewings van @{name}",
+  "account.unmute_short": "Hef uitdowing op",
+  "account_note.placeholder": "Klik om nota by te voeg",
   "admin.dashboard.daily_retention": "User retention rate by day after sign-up",
   "admin.dashboard.monthly_retention": "User retention rate by month after sign-up",
   "admin.dashboard.retention.average": "Gemiddeld",
-  "admin.dashboard.retention.cohort": "Registrasie-maand",
+  "admin.dashboard.retention.cohort": "Registrasiemaand",
   "admin.dashboard.retention.cohort_size": "Nuwe gebruikers",
-  "alert.rate_limited.message": "Probeer asb. weer na {retry_time, time, medium}.",
-  "alert.rate_limited.title": "Tempo-beperk",
-  "alert.unexpected.message": "'n Onverwagte fout het voorgekom.",
+  "alert.rate_limited.message": "Probeer asseblief weer na {retry_time, time, medium}.",
+  "alert.rate_limited.title": "Deurvloei beperk",
+  "alert.unexpected.message": "Iets het skeefgeloop.",
   "alert.unexpected.title": "Oeps!",
   "announcement.announcement": "Aankondiging",
   "attachments_list.unprocessed": "(unprocessed)",
   "audio.hide": "Hide audio",
   "autosuggest_hashtag.per_week": "{count} per week",
-  "boost_modal.combo": "Jy kan {combo} druk om hierdie volgende keer oor te slaan",
+  "boost_modal.combo": "Druk {combo} om dit volgende keer oor te slaan",
   "bundle_column_error.copy_stacktrace": "Copy error report",
   "bundle_column_error.error.body": "The requested page could not be rendered. It could be due to a bug in our code, or a browser compatibility issue.",
   "bundle_column_error.error.title": "Ag nee!",
   "bundle_column_error.network.body": "There was an error when trying to load this page. This could be due to a temporary problem with your internet connection or this server.",
-  "bundle_column_error.network.title": "Netwerk fout",
+  "bundle_column_error.network.title": "Netwerkfout",
   "bundle_column_error.retry": "Probeer weer",
-  "bundle_column_error.return": "Gaan terug huistoe",
+  "bundle_column_error.return": "Keer terug na die tuisblad",
   "bundle_column_error.routing.body": "The requested page could not be found. Are you sure the URL in the address bar is correct?",
   "bundle_column_error.routing.title": "404",
-  "bundle_modal_error.close": "Maak toe",
-  "bundle_modal_error.message": "Iets het verkeerd gegaan terwyl hierdie komponent besig was om te laai.",
+  "bundle_modal_error.close": "Sluit",
+  "bundle_modal_error.message": "Die laai van die komponent het iewers skeefgeloop.",
   "bundle_modal_error.retry": "Probeer weer",
   "closed_registrations.other_server_instructions": "Since Mastodon is decentralized, you can create an account on another server and still interact with this one.",
   "closed_registrations_modal.description": "Creating an account on {domain} is currently not possible, but please keep in mind that you do not need an account specifically on {domain} to use Mastodon.",
   "closed_registrations_modal.find_another_server": "Vind 'n ander bediener",
-  "closed_registrations_modal.preamble": "Mastodon is gedesentraliseerd, so ongeag van waar jou rekening geskep word, jy sal in staat wees enige iemand op hierdie bediener te volg en interaksie te he. Jy kan dit ook self 'n bediener bestuur!",
-  "closed_registrations_modal.title": "Aanteken by Mastodon",
-  "column.about": "Aangaande",
+  "closed_registrations_modal.preamble": "Omdat Mastodon gedesentraliseer is, kan jy op hierdie bediener enigiemand volg en met enigiemand gesels, al is jou rekening op ‘n ander bediener. Jy kan selfs jou eie bediener by die netwerk voeg!",
+  "closed_registrations_modal.title": "Registreer op Mastodon",
+  "column.about": "Oor",
   "column.blocks": "Geblokkeerde gebruikers",
   "column.bookmarks": "Boekmerke",
   "column.community": "Plaaslike tydlyn",
   "column.direct": "Direkte boodskappe",
   "column.directory": "Blaai deur profiele",
-  "column.domain_blocks": "Geblokte domeine",
+  "column.domain_blocks": "Geblokkeerde domeine",
   "column.favourites": "Gunstelinge",
   "column.follow_requests": "Volgversoeke",
   "column.home": "Tuis",
   "column.lists": "Lyste",
-  "column.mutes": "Gedempte gebruikers",
+  "column.mutes": "Uitgedoofte gebruikers",
   "column.notifications": "Kennisgewings",
-  "column.pins": "Pinned toot",
+  "column.pins": "Vasgemaakte plasings",
   "column.public": "Gefedereerde tydlyn",
   "column_back_button.label": "Terug",
   "column_header.hide_settings": "Versteek instellings",
   "column_header.moveLeft_settings": "Skuif kolom na links",
   "column_header.moveRight_settings": "Skuif kolom na regs",
-  "column_header.pin": "Pen vas",
+  "column_header.pin": "Maak vas",
   "column_header.show_settings": "Wys instellings",
-  "column_header.unpin": "Ontpen",
+  "column_header.unpin": "Maak los",
   "column_subheading.settings": "Instellings",
   "community.column_settings.local_only": "Slegs plaaslik",
-  "community.column_settings.media_only": "Media only",
-  "community.column_settings.remote_only": "Slegs afgeleë",
+  "community.column_settings.media_only": "Slegs media",
+  "community.column_settings.remote_only": "Slegs elders",
   "compose.language.change": "Verander taal",
   "compose.language.search": "Soek tale...",
   "compose_form.direct_message_warning_learn_more": "Leer meer",
-  "compose_form.encryption_warning": "Plasings op Mastodon het nie end-tot-end enkripsie nie. Moet nie enige sensitiewe inligting oor Mastodon deel nie.",
-  "compose_form.hashtag_warning": "This toot won't be listed under any hashtag as it is unlisted. Only public toots can be searched by hashtag.",
-  "compose_form.lock_disclaimer": "Jou rekening is nie {locked}. Enigeeen kan jou volg om jou slegs-volgeling plasings te sien.",
+  "compose_form.encryption_warning": "Plasings op Mastodon is nie van punt tot punt versleutel nie. Moet geen sensitiewe inligting op Mastodon deel nie.",
+  "compose_form.hashtag_warning": "Hierdie plasing is ongelys en sal dus onder geen hutsetiket verskyn nie. Slegs openbare plasings is vindbaar wanneer daar na hutsetikette gesoek word.",
+  "compose_form.lock_disclaimer": "Jou rekening is nie {locked} nie. Enigiemand kan jou volg en sien wat jy vir jou volgers plaas.",
   "compose_form.lock_disclaimer.lock": "gesluit",
-  "compose_form.placeholder": "What is on your mind?",
-  "compose_form.poll.add_option": "Voeg 'n keuse by",
+  "compose_form.placeholder": "Wat wil jy deel?",
+  "compose_form.poll.add_option": "Voeg ’n keuse by",
   "compose_form.poll.duration": "Duur van peiling",
   "compose_form.poll.option_placeholder": "Keuse {number}",
   "compose_form.poll.remove_option": "Verwyder hierdie keuse",
-  "compose_form.poll.switch_to_multiple": "Verander die peiling na verskeie keuses",
-  "compose_form.poll.switch_to_single": "Verander die peiling na 'n enkel keuse",
+  "compose_form.poll.switch_to_multiple": "Verander peiling om meer as een keuse toe te laat",
+  "compose_form.poll.switch_to_single": "Verander die peiling om slegs een keuse toe te laat",
   "compose_form.publish": "Publiseer",
+  "compose_form.publish_form": "Publiseer",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Stoor veranderinge",
   "compose_form.sensitive.hide": "{count, plural, one {Mark media as sensitive} other {Mark media as sensitive}}",
   "compose_form.sensitive.marked": "{count, plural, one {Media is marked as sensitive} other {Media is marked as sensitive}}",
   "compose_form.sensitive.unmarked": "{count, plural, one {Media is not marked as sensitive} other {Media is not marked as sensitive}}",
-  "compose_form.spoiler.marked": "Text is hidden behind warning",
-  "compose_form.spoiler.unmarked": "Text is not hidden",
+  "compose_form.spoiler.marked": "Verwyder inhoudswaarskuwing",
+  "compose_form.spoiler.unmarked": "Voeg inhoudswaarskuwing by",
   "compose_form.spoiler_placeholder": "Skryf jou waarskuwing hier",
   "confirmation_modal.cancel": "Kanselleer",
-  "confirmations.block.block_and_report": "Block & Rapporteer",
-  "confirmations.block.confirm": "Blokeer",
-  "confirmations.block.message": "Is jy seker dat jy {name} wil blok?",
-  "confirmations.cancel_follow_request.confirm": "Trek aanvaag terug",
-  "confirmations.cancel_follow_request.message": "Is jy seker dat jy jou aanvraag om {name} te volg, terug wil trek?",
+  "confirmations.block.block_and_report": "Blokkeer en rapporteer",
+  "confirmations.block.confirm": "Blokkeer",
+  "confirmations.block.message": "Is jy seker jy wil {name} blokkeer?",
+  "confirmations.cancel_follow_request.confirm": "Herroep versoek",
+  "confirmations.cancel_follow_request.message": "Is jy seker jy wil jou versoek om {name} te volg, terugtrek?",
   "confirmations.delete.confirm": "Wis uit",
-  "confirmations.delete.message": "Are you sure you want to delete this status?",
+  "confirmations.delete.message": "Is jy seker jy wil hierdie plasing uitvee?",
   "confirmations.delete_list.confirm": "Wis uit",
-  "confirmations.delete_list.message": "Is jy seker dat jy hierdie lys permanent wil uitwis?",
-  "confirmations.discard_edit_media.confirm": "Verwerp",
+  "confirmations.delete_list.message": "Is jy seker jy wil hierdie lys permanent verwyder?",
+  "confirmations.discard_edit_media.confirm": "Gooi weg",
   "confirmations.discard_edit_media.message": "You have unsaved changes to the media description or preview, discard them anyway?",
-  "confirmations.domain_block.confirm": "Hide entire domain",
+  "confirmations.domain_block.confirm": "Blokkeer die hele domein",
   "confirmations.domain_block.message": "Are you really, really sure you want to block the entire {domain}? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain in any public timelines or your notifications. Your followers from that domain will be removed.",
   "confirmations.logout.confirm": "Teken Uit",
-  "confirmations.logout.message": "Is jy seker jy wil uit teken?",
+  "confirmations.logout.message": "Is jy seker jy wil uitteken?",
   "confirmations.mute.confirm": "Mute",
   "confirmations.mute.explanation": "This will hide posts from them and posts mentioning them, but it will still allow them to see your posts and follow you.",
   "confirmations.mute.message": "Are you sure you want to mute {name}?",
   "confirmations.redraft.confirm": "Delete & redraft",
-  "confirmations.redraft.message": "Are you sure you want to delete this status and re-draft it? Favourites and boosts will be lost, and replies to the original post will be orphaned.",
-  "confirmations.reply.confirm": "Reageer",
+  "confirmations.redraft.message": "Is jy seker jy wil hierdie plasing uitvee en oorbegin? Goedkeurings en aangestuurde plasings gaan verdwyn en antwoorde op jou oorspronklike plasing gaan wees gelaat word.",
+  "confirmations.reply.confirm": "Antwoord",
   "confirmations.reply.message": "Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?",
   "confirmations.unfollow.confirm": "Unfollow",
   "confirmations.unfollow.message": "Are you sure you want to unfollow {name}?",
   "conversation.delete": "Delete conversation",
   "conversation.mark_as_read": "Merk as gelees",
-  "conversation.open": "Besigtig gesprek",
+  "conversation.open": "Sien gesprek",
   "conversation.with": "Met {names}",
   "copypaste.copied": "Copied",
   "copypaste.copy": "Copy",
-  "directory.federated": "Vanaf bekende fediverse",
-  "directory.local": "Slegs vanaf {domain}",
+  "directory.federated": "Van bekende fediversum",
+  "directory.local": "Slegs van {domain}",
   "directory.new_arrivals": "New arrivals",
   "directory.recently_active": "Recently active",
-  "disabled_account_banner.account_settings": "Rekening instellings",
-  "disabled_account_banner.text": "Jou rekening {disabledAccount} is tans onaktief.",
+  "disabled_account_banner.account_settings": "Rekeninginstellings",
+  "disabled_account_banner.text": "Jou rekening {disabledAccount} is tans gedeaktiveer.",
   "dismissable_banner.community_timeline": "These are the most recent public posts from people whose accounts are hosted by {domain}.",
   "dismissable_banner.dismiss": "Dismiss",
   "dismissable_banner.explore_links": "These news stories are being talked about by people on this and other servers of the decentralized network right now.",
   "dismissable_banner.explore_statuses": "These posts from this and other servers in the decentralized network are gaining traction on this server right now.",
   "dismissable_banner.explore_tags": "These hashtags are gaining traction among people on this and other servers of the decentralized network right now.",
   "dismissable_banner.public_timeline": "These are the most recent public posts from people on this and other servers of the decentralized network that this server knows about.",
-  "embed.instructions": "Embed this status on your website by copying the code below.",
-  "embed.preview": "Here is what it will look like:",
-  "emoji_button.activity": "Activity",
+  "embed.instructions": "Bed hierdie plasing op jou webblad in met die kode wat jy hier onder kan kopieer.",
+  "embed.preview": "Dit sal so lyk:",
+  "emoji_button.activity": "Aktiwiteit",
   "emoji_button.clear": "Maak skoon",
-  "emoji_button.custom": "Custom",
-  "emoji_button.flags": "Flags",
-  "emoji_button.food": "Food & Drink",
+  "emoji_button.custom": "Eie",
+  "emoji_button.flags": "Vlae",
+  "emoji_button.food": "Eet- en drinkgoed",
   "emoji_button.label": "Insert emoji",
-  "emoji_button.nature": "Nature",
-  "emoji_button.not_found": "No matching emojis found",
+  "emoji_button.nature": "Natuur",
+  "emoji_button.not_found": "Geen passende emoji gevind nie",
   "emoji_button.objects": "Objects",
   "emoji_button.people": "People",
   "emoji_button.recent": "Frequently used",
   "emoji_button.search": "Soek...",
-  "emoji_button.search_results": "Soek resultate",
+  "emoji_button.search_results": "Soekresultate",
   "emoji_button.symbols": "Symbols",
   "emoji_button.travel": "Travel & Places",
   "empty_column.account_suspended": "Account suspended",
-  "empty_column.account_timeline": "No toots here!",
+  "empty_column.account_timeline": "Geen plasings hier nie!",
   "empty_column.account_unavailable": "Profile unavailable",
   "empty_column.blocks": "You haven't blocked any users yet.",
-  "empty_column.bookmarked_statuses": "You don't have any bookmarked toots yet. When you bookmark one, it will show up here.",
-  "empty_column.community": "Die plaaslike tydlyn is leeg. Skryf iets vir die publiek om die bal aan die rol te kry!",
+  "empty_column.bookmarked_statuses": "Jy het nog geen boekmerke gelaat nie. Boekmerke wat jy by plasings laat, sal jy hier sien.",
+  "empty_column.community": "Die plaaslike tydlyn is leeg. Kry die bal aan die rol deur iets te skryf wat mense kan lees!",
   "empty_column.direct": "Jy het nog nie direkte boodskappe nie. Wanneer jy een stuur of ontvang, sal dit hier verskyn.",
   "empty_column.domain_blocks": "There are no blocked domains yet.",
   "empty_column.explore_statuses": "Nothing is trending right now. Check back later!",
-  "empty_column.favourited_statuses": "You don't have any favourite toots yet. When you favourite one, it will show up here.",
-  "empty_column.favourites": "No one has favourited this toot yet. When someone does, they will show up here.",
+  "empty_column.favourited_statuses": "Jy het nog geen gunstelingplasings nie. As jy een as gunsteling merk, sal jy dit hier sien.",
+  "empty_column.favourites": "Hierdie plasing het nog nie goedkeurings ontvang nie. As iemand dit as gunsteling merk, sien jy dit hier.",
   "empty_column.follow_recommendations": "Looks like no suggestions could be generated for you. You can try using search to look for people you might know or explore trending hashtags.",
-  "empty_column.follow_requests": "Jy het nog geen volg versoeke nie. Wanneer jy een ontvang, sal dit hier vertoon.",
-  "empty_column.hashtag": "There is nothing in this hashtag yet.",
+  "empty_column.follow_requests": "Jy het nog geen volgversoeke nie. Wanneer jy een ontvang, sal dit hier vertoon.",
+  "empty_column.hashtag": "Daar is nog niks vir hierdie hutsetiket nie.",
   "empty_column.home": "Your home timeline is empty! Follow more people to fill it up. {suggestions}",
   "empty_column.home.suggestions": "See some suggestions",
-  "empty_column.list": "There is nothing in this list yet. When members of this list post new statuses, they will appear here.",
+  "empty_column.list": "Hierdie lys is nog leeg. Nuwe plasings deur lyslede sal voortaan hier verskyn.",
   "empty_column.lists": "Jy het nog geen lyste nie. Wanneer jy een skep, sal dit hier vertoon.",
   "empty_column.mutes": "You haven't muted any users yet.",
-  "empty_column.notifications": "Jy het nog geen kennisgewings nie. Wanneer ander mense interaksie het met jou, sal dit hier vertoon.",
+  "empty_column.notifications": "Jy het nog geen kennisgewings nie. Interaksie van ander mense met jou, sal hier vertoon.",
   "empty_column.public": "There is nothing here! Write something publicly, or manually follow users from other servers to fill it up",
   "error.unexpected_crash.explanation": "Due to a bug in our code or a browser compatibility issue, this page could not be displayed correctly.",
   "error.unexpected_crash.explanation_addons": "This page could not be displayed correctly. This error is likely caused by a browser add-on or automatic translation tools.",
@@ -233,12 +234,8 @@
   "error.unexpected_crash.next_steps_addons": "Try disabling them and refreshing the page. If that does not help, you may still be able to use Mastodon through a different browser or native app.",
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "Report issue",
-  "explore.search_results": "Soek resultate",
-  "explore.suggested_follows": "For you",
+  "explore.search_results": "Soekresultate",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
@@ -257,98 +254,98 @@
   "filter_modal.title.status": "Filter a post",
   "follow_recommendations.done": "Done",
   "follow_recommendations.heading": "Follow people you'd like to see posts from! Here are some suggestions.",
-  "follow_recommendations.lead": "Plasings van persone wie jy volg sal in chronologiese volgorde op jou tuis voer vertoon. Jy kan enige tyd ophou om persone te volg en sal dan nie plasings ontvang nie!",
+  "follow_recommendations.lead": "Plasings van mense wat jy volg, kom chronologies in jou tuisvoer verby. Moenie huiwer nie. Volg na hartelus. As daar mense is wie se plasings jy nie meer wil sien nie, ontvolg hulle net!",
   "follow_request.authorize": "Authorize",
   "follow_request.reject": "Reject",
   "follow_requests.unlocked_explanation": "Even though your account is not locked, the {domain} staff thought you might want to review follow requests from these accounts manually.",
-  "footer.about": "Aangaande",
+  "footer.about": "Oor",
   "footer.directory": "Profielgids",
-  "footer.get_app": "Kry die Toep",
-  "footer.invite": "Invite people",
-  "footer.keyboard_shortcuts": "Sleutelbord kortpaaie",
+  "footer.get_app": "Kry die app",
+  "footer.invite": "Nooi ander",
+  "footer.keyboard_shortcuts": "Kortpadsleutels",
   "footer.privacy_policy": "Privaatheidsbeleid",
-  "footer.source_code": "View source code",
+  "footer.source_code": "Wys bronkode",
   "generic.saved": "Saved",
-  "getting_started.heading": "Getting started",
+  "getting_started.heading": "Kom aan die gang",
   "hashtag.column_header.tag_mode.all": "and {additional}",
   "hashtag.column_header.tag_mode.any": "or {additional}",
   "hashtag.column_header.tag_mode.none": "without {additional}",
   "hashtag.column_settings.select.no_options_message": "No suggestions found",
-  "hashtag.column_settings.select.placeholder": "Enter hashtags…",
+  "hashtag.column_settings.select.placeholder": "Voer hutsetikette in…",
   "hashtag.column_settings.tag_mode.all": "All of these",
   "hashtag.column_settings.tag_mode.any": "Any of these",
   "hashtag.column_settings.tag_mode.none": "None of these",
-  "hashtag.column_settings.tag_toggle": "Include additional tags in this column",
-  "hashtag.follow": "Follow hashtag",
+  "hashtag.column_settings.tag_toggle": "Voeg meer etikette by hierdie kolom",
+  "hashtag.follow": "Volg hutsetiket",
   "hashtag.unfollow": "Unfollow hashtag",
   "home.column_settings.basic": "Basic",
-  "home.column_settings.show_reblogs": "Show boosts",
+  "home.column_settings.show_reblogs": "Wys aangestuurde plasings",
   "home.column_settings.show_replies": "Show replies",
   "home.hide_announcements": "Hide announcements",
   "home.show_announcements": "Show announcements",
   "interaction_modal.description.favourite": "With an account on Mastodon, you can favourite this post to let the author know you appreciate it and save it for later.",
   "interaction_modal.description.follow": "With an account on Mastodon, you can follow {name} to receive their posts in your home feed.",
-  "interaction_modal.description.reblog": "With an account on Mastodon, you can boost this post to share it with your own followers.",
-  "interaction_modal.description.reply": "Met 'n rekening op Mastodon kan jy reageer op hierdie plasing.",
+  "interaction_modal.description.reblog": "Met 'n rekening op Mastodon kan jy hierdie plasing aanstuur om dit met jou volgers te deel.",
+  "interaction_modal.description.reply": "Met 'n rekening op Mastodon kan jy op hierdie plasing reageer.",
   "interaction_modal.on_another_server": "On a different server",
   "interaction_modal.on_this_server": "On this server",
   "interaction_modal.other_server_instructions": "Copy and paste this URL into the search field of your favourite Mastodon app or the web interface of your Mastodon server.",
-  "interaction_modal.preamble": "Omdat Mastodon gedesentraliseerd is, kan jy jou bestaande rekening wat by 'n ander Mastodon bediener of versoenbare platform gehuisves is gebruik indien jy nie 'n rekening hier het nie.",
+  "interaction_modal.preamble": "Omdat Mastodon gedesentraliseer is, hoef jy nie ’n rekening op hierdie bediener te hê nie. Jy kan jy jou bestaande Mastodonrekening gebruik, al word dit op 'n ander Mastodonbediener of versoenbare platform waar ook al gehuisves.",
   "interaction_modal.title.favourite": "Favourite {name}'s post",
   "interaction_modal.title.follow": "Follow {name}",
-  "interaction_modal.title.reblog": "Boost {name}'s post",
+  "interaction_modal.title.reblog": "Stuur {name} se plasing aan",
   "interaction_modal.title.reply": "Reageer op {name} se plasing",
   "intervals.full.days": "{number, plural, one {# day} other {# days}}",
   "intervals.full.hours": "{number, plural, one {# hour} other {# hours}}",
   "intervals.full.minutes": "{number, plural, one {# minute} other {# minutes}}",
-  "keyboard_shortcuts.back": "to navigate back",
-  "keyboard_shortcuts.blocked": "to open blocked users list",
-  "keyboard_shortcuts.boost": "to boost",
-  "keyboard_shortcuts.column": "to focus a status in one of the columns",
-  "keyboard_shortcuts.compose": "to focus the compose textarea",
+  "keyboard_shortcuts.back": "Navigeer terug",
+  "keyboard_shortcuts.blocked": "Vertoon lys van geblokkeerde gebruikers",
+  "keyboard_shortcuts.boost": "Stuur aan",
+  "keyboard_shortcuts.column": "Fokuskolom",
+  "keyboard_shortcuts.compose": "Teksveld vir skryf",
   "keyboard_shortcuts.description": "Beskrywing",
-  "keyboard_shortcuts.direct": "om direkte boodskappe kolom oop te maak",
-  "keyboard_shortcuts.down": "to move down in the list",
-  "keyboard_shortcuts.enter": "to open status",
-  "keyboard_shortcuts.favourite": "to favourite",
-  "keyboard_shortcuts.favourites": "to open favourites list",
-  "keyboard_shortcuts.federated": "to open federated timeline",
+  "keyboard_shortcuts.direct": "om kolom vir direkte boodskappe oop te maak",
+  "keyboard_shortcuts.down": "Gaan afwaarts in die lys",
+  "keyboard_shortcuts.enter": "Sien plasing",
+  "keyboard_shortcuts.favourite": "Gunsteling",
+  "keyboard_shortcuts.favourites": "Sien gunstelinge",
+  "keyboard_shortcuts.federated": "Sien gefedereerde stroom",
   "keyboard_shortcuts.heading": "Keyboard Shortcuts",
-  "keyboard_shortcuts.home": "to open home timeline",
+  "keyboard_shortcuts.home": "Sien tuisvoer",
   "keyboard_shortcuts.hotkey": "Hotkey",
-  "keyboard_shortcuts.legend": "to display this legend",
+  "keyboard_shortcuts.legend": "Vertoon hierdie legende",
   "keyboard_shortcuts.local": "to open local timeline",
   "keyboard_shortcuts.mention": "to mention author",
   "keyboard_shortcuts.muted": "to open muted users list",
   "keyboard_shortcuts.my_profile": "to open your profile",
-  "keyboard_shortcuts.notifications": "to open notifications column",
+  "keyboard_shortcuts.notifications": "Vertoon kennisgewingkolom",
   "keyboard_shortcuts.open_media": "to open media",
-  "keyboard_shortcuts.pinned": "to open pinned toots list",
-  "keyboard_shortcuts.profile": "to open author's profile",
+  "keyboard_shortcuts.pinned": "Vertoon vasgemaakte plasings",
+  "keyboard_shortcuts.profile": "Vertoon skrywersprofiel",
   "keyboard_shortcuts.reply": "Reageer op plasing",
-  "keyboard_shortcuts.requests": "to open follow requests list",
-  "keyboard_shortcuts.search": "to focus search",
-  "keyboard_shortcuts.spoilers": "Wys/versteek IW veld",
-  "keyboard_shortcuts.start": "to open \"get started\" column",
+  "keyboard_shortcuts.requests": "Sien volgversoeke",
+  "keyboard_shortcuts.search": "Fokus op soekvenster",
+  "keyboard_shortcuts.spoilers": "Wys/versteek veld vir inhoudswaarskuwing",
+  "keyboard_shortcuts.start": "Open wegspringkolom",
   "keyboard_shortcuts.toggle_hidden": "Wys/versteek teks agter IW",
-  "keyboard_shortcuts.toggle_sensitivity": "to show/hide media",
-  "keyboard_shortcuts.toot": "to start a brand new toot",
-  "keyboard_shortcuts.unfocus": "to un-focus compose textarea/search",
-  "keyboard_shortcuts.up": "to move up in the list",
+  "keyboard_shortcuts.toggle_sensitivity": "Wys/versteek media",
+  "keyboard_shortcuts.toot": "Begin ’n nuwe plasing",
+  "keyboard_shortcuts.unfocus": "Fokus uit van teksveld/soekveld",
+  "keyboard_shortcuts.up": "Beweeg opwaarts in die lys",
   "lightbox.close": "Close",
   "lightbox.compress": "Compress image view box",
   "lightbox.expand": "Expand image view box",
   "lightbox.next": "Next",
   "lightbox.previous": "Previous",
-  "limited_account_hint.action": "Vertoon profiel in elkgeval",
+  "limited_account_hint.action": "Vertoon profiel in elk geval",
   "limited_account_hint.title": "Hierdie profiel is deur moderators van {domain} versteek.",
-  "lists.account.add": "Add to list",
-  "lists.account.remove": "Remove from list",
-  "lists.delete": "Delete list",
-  "lists.edit": "Edit list",
-  "lists.edit.submit": "Change title",
-  "lists.new.create": "Add list",
-  "lists.new.title_placeholder": "New list title",
+  "lists.account.add": "Voeg by lys",
+  "lists.account.remove": "Verwyder vanaf lys",
+  "lists.delete": "Verwyder lys",
+  "lists.edit": "Redigeer lys",
+  "lists.edit.submit": "Verander titel",
+  "lists.new.create": "Voeg lys by",
+  "lists.new.title_placeholder": "Nuwe lys titel",
   "lists.replies_policy.followed": "Any followed user",
   "lists.replies_policy.list": "Members of the list",
   "lists.replies_policy.none": "No one",
@@ -360,29 +357,29 @@
   "media_gallery.toggle_visible": "{number, plural, one {Hide image} other {Hide images}}",
   "missing_indicator.label": "Not found",
   "missing_indicator.sublabel": "This resource could not be found",
-  "moved_to_account_banner.text": "Jou rekening {disabledAccount} is tans onaktief omdat jy na {movedToAccount} verhuis het.",
+  "moved_to_account_banner.text": "Jou rekening {disabledAccount} is tans gedeaktiveer omdat jy na {movedToAccount} verhuis het.",
   "mute_modal.duration": "Duration",
   "mute_modal.hide_notifications": "Hide notifications from this user?",
   "mute_modal.indefinite": "Indefinite",
-  "navigation_bar.about": "Aangaande",
+  "navigation_bar.about": "Oor",
   "navigation_bar.blocks": "Blocked users",
   "navigation_bar.bookmarks": "Boekmerke",
   "navigation_bar.community_timeline": "Plaaslike tydlyn",
-  "navigation_bar.compose": "Compose new toot",
+  "navigation_bar.compose": "Skep nuwe plasing",
   "navigation_bar.direct": "Direkte boodskappe",
   "navigation_bar.discover": "Discover",
-  "navigation_bar.domain_blocks": "Hidden domains",
+  "navigation_bar.domain_blocks": "Geblokkeerde domeine",
   "navigation_bar.edit_profile": "Redigeer profiel",
   "navigation_bar.explore": "Explore",
   "navigation_bar.favourites": "Gunstelinge",
   "navigation_bar.filters": "Muted words",
   "navigation_bar.follow_requests": "Follow requests",
   "navigation_bar.follows_and_followers": "Follows and followers",
-  "navigation_bar.lists": "Lists",
-  "navigation_bar.logout": "Teken Uit",
+  "navigation_bar.lists": "Lyste",
+  "navigation_bar.logout": "Teken uit",
   "navigation_bar.mutes": "Muted users",
-  "navigation_bar.personal": "Personal",
-  "navigation_bar.pins": "Pinned toots",
+  "navigation_bar.personal": "Persoonlik",
+  "navigation_bar.pins": "Vasgemaakte plasings",
   "navigation_bar.preferences": "Voorkeure",
   "navigation_bar.public_timeline": "Gefedereerde tydlyn",
   "navigation_bar.search": "Soek",
@@ -390,13 +387,13 @@
   "not_signed_in_indicator.not_signed_in": "You need to sign in to access this resource.",
   "notification.admin.report": "{name} reported {target}",
   "notification.admin.sign_up": "{name} signed up",
-  "notification.favourite": "{name} favourited your status",
+  "notification.favourite": "{name} hou van jou plasing",
   "notification.follow": "{name} followed you",
   "notification.follow_request": "{name} has requested to follow you",
   "notification.mention": "{name} mentioned you",
   "notification.own_poll": "Your poll has ended",
   "notification.poll": "A poll you have voted in has ended",
-  "notification.reblog": "{name} boosted your status",
+  "notification.reblog": "{name} het jou plasing aangestuur",
   "notification.status": "{name} just posted",
   "notification.update": "{name} edited a post",
   "notifications.clear": "Clear notifications",
@@ -412,16 +409,16 @@
   "notifications.column_settings.follow_request": "New follow requests:",
   "notifications.column_settings.mention": "Mentions:",
   "notifications.column_settings.poll": "Poll results:",
-  "notifications.column_settings.push": "Stoot kennisgewings",
-  "notifications.column_settings.reblog": "Boosts:",
+  "notifications.column_settings.push": "Stootkennisgewings",
+  "notifications.column_settings.reblog": "Aangestuurde plasings:",
   "notifications.column_settings.show": "Show in column",
   "notifications.column_settings.sound": "Play sound",
-  "notifications.column_settings.status": "New toots:",
+  "notifications.column_settings.status": "Nuwe plasings:",
   "notifications.column_settings.unread_notifications.category": "Unread notifications",
-  "notifications.column_settings.unread_notifications.highlight": "Beklemtoon ongeleesde kennisgewings",
+  "notifications.column_settings.unread_notifications.highlight": "Lig ongelese kennisgewings uit",
   "notifications.column_settings.update": "Edits:",
   "notifications.filter.all": "All",
-  "notifications.filter.boosts": "Boosts",
+  "notifications.filter.boosts": "Aangestuurde plasings",
   "notifications.filter.favourites": "Gunstelinge",
   "notifications.filter.follows": "Follows",
   "notifications.filter.mentions": "Mentions",
@@ -446,16 +443,16 @@
   "poll.votes": "{votes, plural, one {# vote} other {# votes}}",
   "poll_button.add_poll": "Add a poll",
   "poll_button.remove_poll": "Remove poll",
-  "privacy.change": "Adjust status privacy",
-  "privacy.direct.long": "Visible for mentioned users only",
+  "privacy.change": "Verander privaatheid van plasing",
+  "privacy.direct.long": "Slegs sigbaar vir genoemde gebruikers",
   "privacy.direct.short": "Slegs genoemde persone",
-  "privacy.private.long": "Visible for followers only",
-  "privacy.private.short": "Followers-only",
-  "privacy.public.long": "Visible for all",
-  "privacy.public.short": "Public",
-  "privacy.unlisted.long": "Visible for all, but opted-out of discovery features",
-  "privacy.unlisted.short": "Unlisted",
-  "privacy_policy.last_updated": "Laas opdateer om {date}",
+  "privacy.private.long": "Slegs sigbaar vir volgelinge",
+  "privacy.private.short": "Slegs volgelinge",
+  "privacy.public.long": "Sigbaar vir almal",
+  "privacy.public.short": "Publiek",
+  "privacy.unlisted.long": "Sigbaar vir almal, maar onttrek uit verkennings-kenmerke",
+  "privacy.unlisted.short": "Ongelys",
+  "privacy_policy.last_updated": "Laaste bywerking op {date}",
   "privacy_policy.title": "Privaatheidsbeleid",
   "refresh": "Refresh",
   "regeneration_indicator.label": "Loading…",
@@ -502,7 +499,7 @@
   "report.statuses.subtitle": "Select all that apply",
   "report.statuses.title": "Are there any posts that back up this report?",
   "report.submit": "Submit report",
-  "report.target": "Report {target}",
+  "report.target": "Verslag {target}",
   "report.thanks.take_action": "Here are your options for controlling what you see on Mastodon:",
   "report.thanks.take_action_actionable": "While we review this, you can take action against @{name}:",
   "report.thanks.title": "Don't want to see this?",
@@ -516,19 +513,19 @@
   "report_notification.open": "Open report",
   "search.placeholder": "Soek",
   "search.search_or_paste": "Soek of plak URL",
-  "search_popout.search_format": "Gevorderde soek formaat",
-  "search_popout.tips.full_text": "Simple text returns statuses you have written, favourited, boosted, or have been mentioned in, as well as matching usernames, display names, and hashtags.",
-  "search_popout.tips.hashtag": "hits-etiket",
-  "search_popout.tips.status": "status",
-  "search_popout.tips.text": "Eenvoudige teks bring name, gebruiker name en hits-etikette wat ooreenstem, terug",
+  "search_popout.search_format": "Formaat vir gevorderd soek",
+  "search_popout.tips.full_text": "Gewone teks laat sien plasings wat jy geskryf het, van gehou het, aangestuur het of in genoem is, asook ooreenstemmende gebruikersname, vertoonde name en hutsetikette.",
+  "search_popout.tips.hashtag": "hutsetiket",
+  "search_popout.tips.status": "plasing",
+  "search_popout.tips.text": "Gewone teks laat sien ooreenstemmende name, gebruikersname en hutsetikette",
   "search_popout.tips.user": "gebruiker",
   "search_results.accounts": "Mense",
   "search_results.all": "Alles",
-  "search_results.hashtags": "Hits-etiket",
-  "search_results.nothing_found": "Kon niks vind vir hierdie soek terme nie",
-  "search_results.statuses": "Toots",
-  "search_results.statuses_fts_disabled": "Searching toots by their content is not enabled on this Mastodon server.",
-  "search_results.title": "Soek vir {q}",
+  "search_results.hashtags": "Hutsetiket",
+  "search_results.nothing_found": "Hierdie soekwoorde lewer niks op nie",
+  "search_results.statuses": "Plasings",
+  "search_results.statuses_fts_disabled": "Hierdie Mastodonbediener is nie opgestel om soekwoorde in plasings te kan vind nie.",
+  "search_results.title": "Soek {q}",
   "search_results.total": "{count, number} {count, plural, one {resultaat} other {resultate}}",
   "server_banner.about_active_users": "People using this server during the last 30 days (Monthly Active Users)",
   "server_banner.active_users": "active users",
@@ -540,12 +537,12 @@
   "sign_in_banner.sign_in": "Sign in",
   "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts, or interact from your account on a different server.",
   "status.admin_account": "Open moderation interface for @{name}",
-  "status.admin_status": "Open this status in the moderation interface",
+  "status.admin_status": "Open hierdie plasing as moderator",
   "status.block": "Block @{name}",
   "status.bookmark": "Bookmark",
-  "status.cancel_reblog_private": "Unboost",
-  "status.cannot_reblog": "This post cannot be boosted",
-  "status.copy": "Copy link to status",
+  "status.cancel_reblog_private": "Maak aanstuur ongedaan",
+  "status.cannot_reblog": "Hierdie plasing kan nie aangestuur word nie",
+  "status.copy": "Kopieer skakel na hierdie plasing",
   "status.delete": "Delete",
   "status.detailed_status": "Detailed conversation view",
   "status.direct": "Direct message @{name}",
@@ -565,19 +562,19 @@
   "status.more": "More",
   "status.mute": "Mute @{name}",
   "status.mute_conversation": "Mute conversation",
-  "status.open": "Expand this status",
+  "status.open": "Brei hierdie plasing uit",
   "status.pin": "Pin on profile",
-  "status.pinned": "Pinned toot",
+  "status.pinned": "Vasgemaakte plasing",
   "status.read_more": "Read more",
-  "status.reblog": "Boost",
-  "status.reblog_private": "Boost with original visibility",
-  "status.reblogged_by": "{name} boosted",
-  "status.reblogs.empty": "No one has boosted this toot yet. When someone does, they will show up here.",
+  "status.reblog": "Stuur aan",
+  "status.reblog_private": "Stuur aan met oorspronklike sigbaarheid",
+  "status.reblogged_by": "Aangestuur deur {name}",
+  "status.reblogs.empty": "Hierdie plasing is nog deur niemand aangestuur nie. As iemand dit aanstuur, sal jy dit hier sien.",
   "status.redraft": "Delete & re-draft",
   "status.remove_bookmark": "Remove bookmark",
   "status.replied_to": "Replied to {name}",
   "status.reply": "Reageer",
-  "status.replyAll": "Reageer in garing",
+  "status.replyAll": "Reageer op vorige kommentaar",
   "status.report": "Report @{name}",
   "status.sensitive_warning": "Sensitiewe inhoud",
   "status.share": "Share",
@@ -587,8 +584,8 @@
   "status.show_more": "Show more",
   "status.show_more_all": "Show more for all",
   "status.show_original": "Show original",
-  "status.translate": "Translate",
-  "status.translated_from_with": "Translated from {lang} using {provider}",
+  "status.translate": "Vertaal",
+  "status.translated_from_with": "Uit {lang} vertaal deur {provider}",
   "status.uncached_media_warning": "Not available",
   "status.unmute_conversation": "Unmute conversation",
   "status.unpin": "Unpin from profile",
@@ -597,8 +594,8 @@
   "subscribed_languages.target": "Change subscribed languages for {target}",
   "suggestions.dismiss": "Dismiss suggestion",
   "suggestions.header": "You might be interested in…",
-  "tabs_bar.federated_timeline": "Gefedereerde",
-  "tabs_bar.home": "Home",
+  "tabs_bar.federated_timeline": "Federasie",
+  "tabs_bar.home": "Tuis",
   "tabs_bar.local_timeline": "Plaaslik",
   "tabs_bar.notifications": "Kennisgewings",
   "time_remaining.days": "{number, plural, one {# day} other {# days}} left",
@@ -609,7 +606,7 @@
   "timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
   "timeline_hint.resources.followers": "Followers",
   "timeline_hint.resources.follows": "Follows",
-  "timeline_hint.resources.statuses": "Older toots",
+  "timeline_hint.resources.statuses": "Ouer plasings",
   "trends.counter_by_accounts": "{count, plural, one {{counter} person} other {{counter} people}} in the past {days, plural, one {day} other {{days} days}}",
   "trends.trending_now": "Trending now",
   "ui.beforeunload": "Your draft will be lost if you leave Mastodon.",
diff --git a/app/javascript/mastodon/locales/an.json b/app/javascript/mastodon/locales/an.json
new file mode 100644
index 000000000..83722156b
--- /dev/null
+++ b/app/javascript/mastodon/locales/an.json
@@ -0,0 +1,649 @@
+{
+  "about.blocks": "Servidors moderaus",
+  "about.contact": "Contacto:",
+  "about.disclaimer": "Mastodon ye software de codigo ubierto, y una marca comercial de Mastodon gGmbH.",
+  "about.domain_blocks.no_reason_available": "Razón no disponible",
+  "about.domain_blocks.preamble": "Mastodon normalment te permite veyer lo conteniu y interactuar con os usuarios de qualsequier atro servidor en o fediverso. Estas son las excepcions que s'han feito en este servidor en particular.",
+  "about.domain_blocks.silenced.explanation": "Normalment no veyerás perfils y conteniu d'este servidor, de no estar que lo busques explicitament u sigas bella cuenta.",
+  "about.domain_blocks.silenced.title": "Limitau",
+  "about.domain_blocks.suspended.explanation": "Garra dato d'este servidor será procesau, almagazenau u intercambiau, fendo imposible qualsequier interacción u comunicación con os usuarios d'este servidor.",
+  "about.domain_blocks.suspended.title": "Suspendiu",
+  "about.not_available": "Esta información no ye disponible en este servidor.",
+  "about.powered_by": "Retz socials descentralizaus con tecnolochía de {mastodon}",
+  "about.rules": "Reglas d'o servidor",
+  "account.account_note_header": "Nota",
+  "account.add_or_remove_from_list": "Adhibir u eliminar de listas",
+  "account.badges.bot": "Bot",
+  "account.badges.group": "Grupo",
+  "account.block": "Blocar a @{name}",
+  "account.block_domain": "Blocar dominio {domain}",
+  "account.blocked": "Blocau",
+  "account.browse_more_on_origin_server": "Veyer mas en o perfil orichinal",
+  "account.cancel_follow_request": "Retirar solicitut de seguimiento",
+  "account.direct": "Mensache directo a @{name}",
+  "account.disable_notifications": "Deixar de notificar-me quan @{name} publique bella cosa",
+  "account.domain_blocked": "Dominio blocau",
+  "account.edit_profile": "Editar perfil",
+  "account.enable_notifications": "Notificar-me quan @{name} publique bella cosa",
+  "account.endorse": "Amostrar en perfil",
+  "account.featured_tags.last_status_at": "Zaguera publicación lo {date}",
+  "account.featured_tags.last_status_never": "Sin publicacions",
+  "account.featured_tags.title": "Etiquetas destacadas de {name}",
+  "account.follow": "Seguir",
+  "account.followers": "Seguidores",
+  "account.followers.empty": "Encara no sigue dengún a este usuario.",
+  "account.followers_counter": "{count, plural, one {{counter} Seguidor} other {{counter} Seguidores}}",
+  "account.following": "Seguindo",
+  "account.following_counter": "{count, plural, one {{counter} Following} other {{counter} Seguindo}}",
+  "account.follows.empty": "Este usuario encara no sigue a dengún.",
+  "account.follows_you": "Te sigue",
+  "account.go_to_profile": "Ir ta lo perfil",
+  "account.hide_reblogs": "Amagar retutz de @{name}",
+  "account.joined_short": "S'unió",
+  "account.languages": "Cambiar idiomas suscritos",
+  "account.link_verified_on": "Lo proprietario d'este link estió comprebau lo {date}",
+  "account.locked_info": "Lo estau de privacidat d'esta cuenta ye configurau como blocau. Lo proprietario ha de revisar manualment qui puede seguir-le.",
+  "account.media": "Multimedia",
+  "account.mention": "Mencionar a @{name}",
+  "account.moved_to": "{name} ha indicau que la suya nueva cuenta ye agora:",
+  "account.mute": "Silenciar a @{name}",
+  "account.mute_notifications": "Silenciar notificacions de @{name}",
+  "account.muted": "Silenciau",
+  "account.open_original_page": "Ubrir pachina orichinal",
+  "account.posts": "Publicacions",
+  "account.posts_with_replies": "Publicacions y respuestas",
+  "account.report": "Denunciar a @{name}",
+  "account.requested": "Esperando l'aprebación",
+  "account.share": "Compartir lo perfil de @{name}",
+  "account.show_reblogs": "Amostrar retutz de @{name}",
+  "account.statuses_counter": "{count, plural, one {{counter} Publicación} other {{counter} Publicaciones}}",
+  "account.unblock": "Desblocar a @{name}",
+  "account.unblock_domain": "Amostrar a {domain}",
+  "account.unblock_short": "Desblocar",
+  "account.unendorse": "No amostrar en o perfil",
+  "account.unfollow": "Deixar de seguir",
+  "account.unmute": "Deixar de silenciar a @{name}",
+  "account.unmute_notifications": "Deixar de silenciar las notificacions de @{name}",
+  "account.unmute_short": "Deixar de silenciar",
+  "account_note.placeholder": "Clic pa anyadir nota",
+  "admin.dashboard.daily_retention": "Taxa de retención d'usuarios per día dimpués d'o rechistro",
+  "admin.dashboard.monthly_retention": "Taxa de retención d'usuarios per mes dimpués d'o rechistro",
+  "admin.dashboard.retention.average": "Media",
+  "admin.dashboard.retention.cohort": "Mes de rechistro",
+  "admin.dashboard.retention.cohort_size": "Nuevos usuarios",
+  "alert.rate_limited.message": "Per favor reintente dimpués de {retry_time, time, medium}.",
+  "alert.rate_limited.title": "Tarifa limitada",
+  "alert.unexpected.message": "I habió una error inasperada.",
+  "alert.unexpected.title": "Ups!",
+  "announcement.announcement": "Anuncio",
+  "attachments_list.unprocessed": "(sin procesar)",
+  "audio.hide": "Amagar audio",
+  "autosuggest_hashtag.per_week": "{count} per semana",
+  "boost_modal.combo": "Puetz fer clic en {combo} pa blincar este aviso la proxima vegada",
+  "bundle_column_error.copy_stacktrace": "Copiar informe d'error",
+  "bundle_column_error.error.body": "La pachina solicitada no podió estar renderizada. Podría deber-se a una error en o nuestro codigo u a un problema de compatibilidat con o navegador.",
+  "bundle_column_error.error.title": "Oh, no!",
+  "bundle_column_error.network.body": "S'ha produciu una error en intentar cargar esta pachina. Esto puede deber-se a un problema temporal con a tuya connexión a internet u a este servidor.",
+  "bundle_column_error.network.title": "Error de ret",
+  "bundle_column_error.retry": "Intenta-lo de nuevo",
+  "bundle_column_error.return": "Tornar ta l'inicio",
+  "bundle_column_error.routing.body": "No se podió trobar la pachina solicitada. Yes seguro que la URL en a barra d'adrezas ye correcta?",
+  "bundle_column_error.routing.title": "404",
+  "bundle_modal_error.close": "Zarrar",
+  "bundle_modal_error.message": "Bella cosa salió malament en cargar este component.",
+  "bundle_modal_error.retry": "Intenta-lo de nuevo",
+  "closed_registrations.other_server_instructions": "Como Mastodon ye descentralizau, puetz creyar una cuenta en unatro servidor y seguir interactuando con este.",
+  "closed_registrations_modal.description": "La creyación d'una cuenta en {domain} no ye posible actualment, pero tiene en cuenta que no amenestes una cuenta especificament en {domain} pa usar Mastodon.",
+  "closed_registrations_modal.find_another_server": "Buscar unatro servidor",
+  "closed_registrations_modal.preamble": "Mastodon ye descentralizau, per lo que no importa án creyes la tuya cuenta, podrás seguir y interactuar con qualsequier persona en este servidor. Mesmo puetz alochar-lo tu mesmo!",
+  "closed_registrations_modal.title": "Rechistrar-se en Mastodon",
+  "column.about": "Sobre",
+  "column.blocks": "Usuarios blocaus",
+  "column.bookmarks": "Marcadors",
+  "column.community": "Linia de tiempo local",
+  "column.direct": "Mensaches directos",
+  "column.directory": "Buscar perfils",
+  "column.domain_blocks": "Dominios amagaus",
+  "column.favourites": "Favoritos",
+  "column.follow_requests": "Solicitutz de seguimiento",
+  "column.home": "Inicio",
+  "column.lists": "Listas",
+  "column.mutes": "Usuarios silenciaus",
+  "column.notifications": "Notificacions",
+  "column.pins": "Publicacions fixadas",
+  "column.public": "Linia de tiempo federada",
+  "column_back_button.label": "Dezaga",
+  "column_header.hide_settings": "Amagar configuración",
+  "column_header.moveLeft_settings": "Mover columna a la zurda",
+  "column_header.moveRight_settings": "Mover columna a la dreita",
+  "column_header.pin": "Fixar",
+  "column_header.show_settings": "Amostrar achustes",
+  "column_header.unpin": "Deixar de fixar",
+  "column_subheading.settings": "Achustes",
+  "community.column_settings.local_only": "Solo local",
+  "community.column_settings.media_only": "Solo media",
+  "community.column_settings.remote_only": "Solo remoto",
+  "compose.language.change": "Cambiar idioma",
+  "compose.language.search": "Buscar idiomas...",
+  "compose_form.direct_message_warning_learn_more": "Aprender mas",
+  "compose_form.encryption_warning": "Las publicacions en Mastodon no son zifradas de cabo a cabo. No comparta garra información sensible en Mastodon.",
+  "compose_form.hashtag_warning": "Esta publicación no s'amostrará baixo garra hashtag perque no ye listada. Nomás las publicacions publicas se pueden buscar per hashtag.",
+  "compose_form.lock_disclaimer": "La tuya cuenta no ye {locked}. Totz pueden seguir-te pa veyer las tuyas publicacions nomás pa seguidores.",
+  "compose_form.lock_disclaimer.lock": "blocau",
+  "compose_form.placeholder": "En qué yes pensando?",
+  "compose_form.poll.add_option": "Anyadir una opción",
+  "compose_form.poll.duration": "Duración d'a enqüesta",
+  "compose_form.poll.option_placeholder": "Elección {number}",
+  "compose_form.poll.remove_option": "Eliminar esta opción",
+  "compose_form.poll.switch_to_multiple": "Modificar enqüesta pa permitir multiples opcions",
+  "compose_form.poll.switch_to_single": "Modificar enqüesta pa permitir una sola opción",
+  "compose_form.publish": "Publicar",
+  "compose_form.publish_form": "Publicar",
+  "compose_form.publish_loud": "{publish}!",
+  "compose_form.save_changes": "Alzar cambios",
+  "compose_form.sensitive.hide": "{count, plural, one {Marcar material como sensible} other {Marcar material como sensible}}",
+  "compose_form.sensitive.marked": "{count, plural, one {Material marcau como sensible} other {Material marcau como sensible}}",
+  "compose_form.sensitive.unmarked": "{count, plural, one {Material no marcau como sensible} other {Material no marcau como sensible}}",
+  "compose_form.spoiler.marked": "Texto amagau dimpués de l'alvertencia",
+  "compose_form.spoiler.unmarked": "Texto no amagau",
+  "compose_form.spoiler_placeholder": "Alvertencia de conteniu",
+  "confirmation_modal.cancel": "Cancelar",
+  "confirmations.block.block_and_report": "Blocar y Denunciar",
+  "confirmations.block.confirm": "Blocar",
+  "confirmations.block.message": "Yes seguro que quiers blocar a {name}?",
+  "confirmations.cancel_follow_request.confirm": "Retirar solicitut",
+  "confirmations.cancel_follow_request.message": "Yes seguro que deseyas retirar la tuya solicitut pa seguir a {name}?",
+  "confirmations.delete.confirm": "Eliminar",
+  "confirmations.delete.message": "Yes seguro que quiers borrar esta publicación?",
+  "confirmations.delete_list.confirm": "Eliminar",
+  "confirmations.delete_list.message": "Seguro que quiers borrar esta lista permanentment?",
+  "confirmations.discard_edit_media.confirm": "Descartar",
+  "confirmations.discard_edit_media.message": "Tiens cambios sin alzar en a descripción u vista previa d'o fichero audiovisual, descartar-los de totz modos?",
+  "confirmations.domain_block.confirm": "Amagar dominio entero",
+  "confirmations.domain_block.message": "Yes seguro que quiers blocar lo dominio {domain} entero? En cheneral ye prou, y preferible, fer uns quantos bloqueyos y silenciaus concretos. Los tuyos seguidros d'ixe dominio serán eliminaus.",
+  "confirmations.logout.confirm": "Zarrar sesión",
+  "confirmations.logout.message": "Yes seguro de querer zarrar la sesión?",
+  "confirmations.mute.confirm": "Silenciar",
+  "confirmations.mute.explanation": "Esto amagará las publicacions d'ells y en as qualas los has mencionau, pero les permitirá veyer los tuyos mensaches y seguir-te.",
+  "confirmations.mute.message": "Yes seguro que quiers silenciar a {name}?",
+  "confirmations.redraft.confirm": "Borrar y tornar ta borrador",
+  "confirmations.redraft.message": "Yes seguro que quiers eliminar esta publicación y convertir-la en borrador? Perderás totas las respuestas, retutz y favoritos asociaus a ell, y las respuestas a la publicación orichinal quedarán uerfanas.",
+  "confirmations.reply.confirm": "Responder",
+  "confirmations.reply.message": "Responder sobrescribirá lo mensache que yes escribindo. Yes seguro que deseyas continar?",
+  "confirmations.unfollow.confirm": "Deixar de seguir",
+  "confirmations.unfollow.message": "Yes seguro que quiers deixar de seguir a {name}?",
+  "conversation.delete": "Borrar conversación",
+  "conversation.mark_as_read": "Marcar como leyiu",
+  "conversation.open": "Veyer conversación",
+  "conversation.with": "Con {names}",
+  "copypaste.copied": "Copiau",
+  "copypaste.copy": "Copiar",
+  "directory.federated": "Dende lo fediverso conoixiu",
+  "directory.local": "Nomás de {domain}",
+  "directory.new_arrivals": "Recientment plegaus",
+  "directory.recently_active": "Recientment activo",
+  "disabled_account_banner.account_settings": "Achustes d'a cuenta",
+  "disabled_account_banner.text": "La tuya cuenta {disabledAccount} ye actualment deshabilitada.",
+  "dismissable_banner.community_timeline": "Estas son las publicacions publicas mas recients de personas que las suyas cuentas son alochadas en {domain}.",
+  "dismissable_banner.dismiss": "Descartar",
+  "dismissable_banner.explore_links": "Estas noticias son estando discutidas per personas en este y atros servidors d'o ret descentralizau en este momento.",
+  "dismissable_banner.explore_statuses": "Estas publicacions d'este y atros servidors en o ret descentralizau son ganando popularidat en este servidor en este momento.",
+  "dismissable_banner.explore_tags": "Estas tendencias son ganando popularidat entre la chent en este y atros servidors d'o ret descentralizau en este momento.",
+  "dismissable_banner.public_timeline": "Estas son las publicacions publicas mas recients de personas en este y atros servidors d'o ret descentralizau que este servidor conoixe.",
+  "embed.instructions": "Anyade esta publicación a lo tuyo puesto web con o siguient codigo.",
+  "embed.preview": "Asinas ye como se veyerá:",
+  "emoji_button.activity": "Actividat",
+  "emoji_button.clear": "Limpiar",
+  "emoji_button.custom": "Personalizau",
+  "emoji_button.flags": "Marcas",
+  "emoji_button.food": "Minchada y bebida",
+  "emoji_button.label": "Ficar emoji",
+  "emoji_button.nature": "Naturaleza",
+  "emoji_button.not_found": "No i hai garra emoji coincident",
+  "emoji_button.objects": "Obchectos",
+  "emoji_button.people": "Chent",
+  "emoji_button.recent": "Usaus freqüentment",
+  "emoji_button.search": "Buscar...",
+  "emoji_button.search_results": "Resultaus de busqueda",
+  "emoji_button.symbols": "Simbolos",
+  "emoji_button.travel": "Viaches y puestos",
+  "empty_column.account_suspended": "Cuenta suspendida",
+  "empty_column.account_timeline": "No i hai publicacions aquí!",
+  "empty_column.account_unavailable": "Perfil no disponible",
+  "empty_column.blocks": "Encara no has blocau a garra usuario.",
+  "empty_column.bookmarked_statuses": "Encara no tiens garra publicación alzada como marcador. Quan alces una, s'amostrará aquí.",
+  "empty_column.community": "La linia de tiempo local ye vueda. Escribe bella cosa pa empecipiar la fiesta!",
+  "empty_column.direct": "Encara no tiens garra mensache directo. Quan ninvies u recibas un, s'amostrará aquí.",
+  "empty_column.domain_blocks": "Encara no i hai dominios amagaus.",
+  "empty_column.explore_statuses": "Cosa ye en tendencia en este momento. Revisa mas tarde!",
+  "empty_column.favourited_statuses": "Encara no tiens publicacions favoritas. Quan marques una como favorita, amaneixerá aquí.",
+  "empty_column.favourites": "Dengún ha marcau esta publicación como favorita. Quan belún lo faiga, amaneixerá aquí.",
+  "empty_column.follow_recommendations": "Pareixe que no s'ha puesto chenerar garra sucherencia pa tu. Puetz prebar a buscar a chent que talment conoixcas u explorar los hashtags que son en tendencia.",
+  "empty_column.follow_requests": "No tiens garra petición de seguidor. Quan recibas una, s'amostrará aquí.",
+  "empty_column.hashtag": "No i hai cosa en este hashtag encara.",
+  "empty_column.home": "La tuya linia temporal ye vueda! Sigue a mas personas pa replenar-la. {suggestions}",
+  "empty_column.home.suggestions": "Veyer qualques sucherencias",
+  "empty_column.list": "No i hai cosa en esta lista encara. Quan miembros d'esta lista publiquen nuevos estatus, estes amaneixerán qui.",
+  "empty_column.lists": "No tiens garra lista. Quan en crees una, s'amostrará aquí.",
+  "empty_column.mutes": "Encara no has silenciau a garra usuario.",
+  "empty_column.notifications": "No tiens garra notificación encara. Interactúa con atros pa empecipiar una conversación.",
+  "empty_column.public": "No i hai cosa aquí! Escribe bella cosa publicament, u sigue usuarios d'atras instancias manualment pa emplir-lo",
+  "error.unexpected_crash.explanation": "A causa d'una error en o nuestro codigo u a un problema de compatibilidat con o navegador, esta pachina no s'ha puesto amostrar correctament.",
+  "error.unexpected_crash.explanation_addons": "No se podió amostrar correctament esta pachina. Esta error probablement estió causau per un complemento d'o navegador web u per ferramientas de traducción automatica.",
+  "error.unexpected_crash.next_steps": "Intenta actualizar la pachina. Si ixo no aduya, ye posible que puedas usar Mastodon a traviés d'unatro navegador u aplicación nativa.",
+  "error.unexpected_crash.next_steps_addons": "Intenta deshabilitar-los y recarga la pachina. Si ixo no aduya, podrías usar Mastodon a traviés d'un navegador web diferent u aplicación nativa.",
+  "errors.unexpected_crash.copy_stacktrace": "Copiar lo seguimiento de pila en o portafuellas",
+  "errors.unexpected_crash.report_issue": "Informar d'un problema/error",
+  "explore.search_results": "Resultaus de busqueda",
+  "explore.title": "Explorar",
+  "filter_modal.added.context_mismatch_explanation": "Esta categoría de filtro no s'aplica a lo contexto en o qual ha accediu a esta publlicación. Si quiers que la publicación sía filtrada tamién en este contexto, habrás d'editar lo filtro.",
+  "filter_modal.added.context_mismatch_title": "Lo contexto no coincide!",
+  "filter_modal.added.expired_explanation": "Esta categoría de filtro ha caducau, amenesterá cambiar la calendata de caducidat pa que s'aplique.",
+  "filter_modal.added.expired_title": "Filtro caducau!",
+  "filter_modal.added.review_and_configure": "Pa revisar y configurar esta categoría de filtros, vaiga a {settings_link}.",
+  "filter_modal.added.review_and_configure_title": "Achustes de filtro",
+  "filter_modal.added.settings_link": "pachina d'achustes",
+  "filter_modal.added.short_explanation": "Esta publicación ha estau anyadida a la siguient categoría de filtros: {title}.",
+  "filter_modal.added.title": "Filtro anyadiu!",
+  "filter_modal.select_filter.context_mismatch": "no s'aplica a este contexto",
+  "filter_modal.select_filter.expired": "expirau",
+  "filter_modal.select_filter.prompt_new": "Nueva categoría: {name}",
+  "filter_modal.select_filter.search": "Buscar u creyar",
+  "filter_modal.select_filter.subtitle": "Usar una categoría existent u creyar una nueva",
+  "filter_modal.select_filter.title": "Filtrar esta publicación",
+  "filter_modal.title.status": "Filtrar una publicación",
+  "follow_recommendations.done": "Feito",
+  "follow_recommendations.heading": "Sigue a chent que publique cosetas que te faigan goyo! Aquí tiens qualques sucherencias.",
+  "follow_recommendations.lead": "Las publicacions d'a chent a la quala sigas amaneixerán ordenadas cronolochicament en Inicio. No tiengas miedo de cometer errors, puetz deixar-les de seguir en qualsequier momento con a mesma facilidat!",
+  "follow_request.authorize": "Autorizar",
+  "follow_request.reject": "Refusar",
+  "follow_requests.unlocked_explanation": "Tot y que la tuya cuenta no ye privada, lo personal de {domain} ha pensau que talment habrías de revisar manualment las solicitutz de seguimiento d'estas cuentas.",
+  "footer.about": "Sobre",
+  "footer.directory": "Directorio de perfils",
+  "footer.get_app": "Obtener l'aplicación",
+  "footer.invite": "Convidar chent",
+  "footer.keyboard_shortcuts": "Alcorces de teclau",
+  "footer.privacy_policy": "Politica de privacidat",
+  "footer.source_code": "Veyer codigo fuent",
+  "generic.saved": "Alzau",
+  "getting_started.heading": "Primers pasos",
+  "hashtag.column_header.tag_mode.all": "y {additional}",
+  "hashtag.column_header.tag_mode.any": "u {additional}",
+  "hashtag.column_header.tag_mode.none": "sin {additional}",
+  "hashtag.column_settings.select.no_options_message": "No se troboron sucherencias",
+  "hashtag.column_settings.select.placeholder": "Escriba hashtags…",
+  "hashtag.column_settings.tag_mode.all": "Qualsequiera d'estes",
+  "hashtag.column_settings.tag_mode.any": "Qualsequiera d'estes",
+  "hashtag.column_settings.tag_mode.none": "Garra d'estes",
+  "hashtag.column_settings.tag_toggle": "Include additional tags in this column",
+  "hashtag.follow": "Seguir etiqueta",
+  "hashtag.unfollow": "Deixar de seguir etiqueta",
+  "home.column_settings.basic": "Basico",
+  "home.column_settings.show_reblogs": "Amostrar retutz",
+  "home.column_settings.show_replies": "Amostrar respuestas",
+  "home.hide_announcements": "Amagar anuncios",
+  "home.show_announcements": "Amostrar anuncios",
+  "interaction_modal.description.favourite": "Con una cuenta en Mastodon, puetz marcar como favorita esta publicación pa que l'autor saba que te fa goyo y alzar-la asinas pa mas abance.",
+  "interaction_modal.description.follow": "Con una cuenta en Mastodon, puetz seguir {name} pa recibir las suyas publicacions en a tuya linia temporal d'inicio.",
+  "interaction_modal.description.reblog": "Con una cuenta en Mastodon, puetz empentar esta publicación pa compartir-la con os tuyos propios seguidores.",
+  "interaction_modal.description.reply": "Con una cuenta en Mastodon, puetz responder a esta publicación.",
+  "interaction_modal.on_another_server": "En un servidor diferent",
+  "interaction_modal.on_this_server": "En este servidor",
+  "interaction_modal.other_server_instructions": "Copia y apega esta URL en a barra de busqueda d'a tuya aplicación Mastodon favorita u la interficie web d'o tuyo servidor Mastodon.",
+  "interaction_modal.preamble": "Ya que Mastodon ye descentralizau, puetz usar la tuya cuenta existent alochada en unatro servidor Mastodon u plataforma compatible si no tiens una cuenta en este servidor.",
+  "interaction_modal.title.favourite": "Marcar como favorita la publicación de {name}",
+  "interaction_modal.title.follow": "Seguir a {name}",
+  "interaction_modal.title.reblog": "Empentar la publicación de {name}",
+  "interaction_modal.title.reply": "Responder a la publicación de {name}",
+  "intervals.full.days": "{number, plural, one {# día} other {# días}}",
+  "intervals.full.hours": "{number, plural, one {# hora} other {# horas}}",
+  "intervals.full.minutes": "{number, plural, one {# menuto} other {# menutos}}",
+  "keyboard_shortcuts.back": "Tornar enta zaga",
+  "keyboard_shortcuts.blocked": "Ubrir una lista d'usuarios blocaus",
+  "keyboard_shortcuts.boost": "Retutar",
+  "keyboard_shortcuts.column": "Enfocar en una d'as columnas",
+  "keyboard_shortcuts.compose": "Enfocar l'aria de redacción de texto",
+  "keyboard_shortcuts.description": "Descripción",
+  "keyboard_shortcuts.direct": "pa ubrir la columna de mensaches directos",
+  "keyboard_shortcuts.down": "Mover enta baixo en a lista",
+  "keyboard_shortcuts.enter": "Ubrir estau",
+  "keyboard_shortcuts.favourite": "Anyadir en favoritos",
+  "keyboard_shortcuts.favourites": "Ubrir la lista de favoritos",
+  "keyboard_shortcuts.federated": "Ubrir la linia de tiempo federada",
+  "keyboard_shortcuts.heading": "Keyboard Shortcuts",
+  "keyboard_shortcuts.home": "Ubrir linia de tiempo",
+  "keyboard_shortcuts.hotkey": "Tecla calient",
+  "keyboard_shortcuts.legend": "Amostrar esta leyenda",
+  "keyboard_shortcuts.local": "Ubrir linia de tiempo local",
+  "keyboard_shortcuts.mention": "Mencionar a l'autor",
+  "keyboard_shortcuts.muted": "Ubrir la lista d'usuarios silenciaus",
+  "keyboard_shortcuts.my_profile": "Ubrir lo tuyo perfil",
+  "keyboard_shortcuts.notifications": "Ubrir la columna de notificacions",
+  "keyboard_shortcuts.open_media": "Ubrir fichers multimedia",
+  "keyboard_shortcuts.pinned": "Ubrir la lista de publicacions destacadas",
+  "keyboard_shortcuts.profile": "Ubrir lo perfil de l'autor",
+  "keyboard_shortcuts.reply": "Responder publicación",
+  "keyboard_shortcuts.requests": "Ubrir la lista de peticions de seguidores",
+  "keyboard_shortcuts.search": "Meter lo foco en a busqueda",
+  "keyboard_shortcuts.spoilers": "Amostrar/amagar lo campo CW",
+  "keyboard_shortcuts.start": "Ubrir la columna \"prencipiar\"",
+  "keyboard_shortcuts.toggle_hidden": "Amostrar/amagar lo texto marcau como sensible",
+  "keyboard_shortcuts.toggle_sensitivity": "Amostrar/amagar fichers multimedia",
+  "keyboard_shortcuts.toot": "Prencipia una nueva publicación",
+  "keyboard_shortcuts.unfocus": "Retirar lo foco d'a caixa de redacción/busqueda",
+  "keyboard_shortcuts.up": "Ir enta alto en a lista",
+  "lightbox.close": "Zarrar",
+  "lightbox.compress": "Comprimir quadro de visualización d'imachen",
+  "lightbox.expand": "Expandir quadro de visualización d'imachen",
+  "lightbox.next": "Siguient",
+  "lightbox.previous": "Anterior",
+  "limited_account_hint.action": "Amostrar perfil de totz modos",
+  "limited_account_hint.title": "Este perfil ha estau amagau per los moderadors de {domain}.",
+  "lists.account.add": "Anyadir a lista",
+  "lists.account.remove": "Sacar de lista",
+  "lists.delete": "Borrar lista",
+  "lists.edit": "Editar lista",
+  "lists.edit.submit": "Cambiar titol",
+  "lists.new.create": "Anyadir lista",
+  "lists.new.title_placeholder": "Titol d'a nueva lista",
+  "lists.replies_policy.followed": "Qualsequier usuario seguiu",
+  "lists.replies_policy.list": "Miembros d'a lista",
+  "lists.replies_policy.none": "Dengún",
+  "lists.replies_policy.title": "Amostrar respuestas a:",
+  "lists.search": "Buscar entre la chent a la quala sigues",
+  "lists.subheading": "Las tuyas listas",
+  "load_pending": "{count, plural, one {# nuevo elemento} other {# nuevos elementos}}",
+  "loading_indicator.label": "Cargando...",
+  "media_gallery.toggle_visible": "{number, plural, one {Amaga la imachen} other {Amaga las imáchens}}",
+  "missing_indicator.label": "No trobau",
+  "missing_indicator.sublabel": "No se trobó este recurso",
+  "moved_to_account_banner.text": "La tuya cuenta {disabledAccount} ye actualment deshabilitada perque t'has mudau a {movedToAccount}.",
+  "mute_modal.duration": "Duración",
+  "mute_modal.hide_notifications": "Amagar notificacions d'este usuario?",
+  "mute_modal.indefinite": "Indefinida",
+  "navigation_bar.about": "Sobre",
+  "navigation_bar.blocks": "Usuarios blocaus",
+  "navigation_bar.bookmarks": "Marcadors",
+  "navigation_bar.community_timeline": "Linia de tiempo local",
+  "navigation_bar.compose": "Escribir nueva publicación",
+  "navigation_bar.direct": "Mensaches directos",
+  "navigation_bar.discover": "Descubrir",
+  "navigation_bar.domain_blocks": "Dominios amagaus",
+  "navigation_bar.edit_profile": "Editar perfil",
+  "navigation_bar.explore": "Explorar",
+  "navigation_bar.favourites": "Favoritos",
+  "navigation_bar.filters": "Parolas silenciadas",
+  "navigation_bar.follow_requests": "Solicitutz pa seguir-te",
+  "navigation_bar.follows_and_followers": "Seguindo y seguidores",
+  "navigation_bar.lists": "Listas",
+  "navigation_bar.logout": "Zarrar sesión",
+  "navigation_bar.mutes": "Usuarios silenciaus",
+  "navigation_bar.personal": "Personal",
+  "navigation_bar.pins": "Publicacions fixadas",
+  "navigation_bar.preferences": "Preferencias",
+  "navigation_bar.public_timeline": "Linia de tiempo federada",
+  "navigation_bar.search": "Buscar",
+  "navigation_bar.security": "Seguranza",
+  "not_signed_in_indicator.not_signed_in": "Amenestes iniciar sesión pa acceder ta este recurso.",
+  "notification.admin.report": "{name} informó {target}",
+  "notification.admin.sign_up": "{name} se rechistró",
+  "notification.favourite": "{name} marcó lo tuyo estau como favorito",
+  "notification.follow": "{name} t'empecipió a seguir",
+  "notification.follow_request": "{name} ha solicitau seguir-te",
+  "notification.mention": "{name} t'ha mencionau",
+  "notification.own_poll": "La tuya enqüesta ha rematau",
+  "notification.poll": "Una enqüesta en a quala has votau ha rematau",
+  "notification.reblog": "{name} ha retutau la tuya publicación",
+  "notification.status": "{name} acaba de publicar",
+  "notification.update": "{name} editó una publicación",
+  "notifications.clear": "Limpiar notificacions",
+  "notifications.clear_confirmation": "Seguro que quiers limpiar permanentment totas las tuyas notificacions?",
+  "notifications.column_settings.admin.report": "Nuevos informes:",
+  "notifications.column_settings.admin.sign_up": "Nuevos rechistros:",
+  "notifications.column_settings.alert": "Notificacions d'escritorio",
+  "notifications.column_settings.favourite": "Favoritos:",
+  "notifications.column_settings.filter_bar.advanced": "Amostrar totas las categorías",
+  "notifications.column_settings.filter_bar.category": "Barra de filtrau rapido",
+  "notifications.column_settings.filter_bar.show_bar": "Amostrar barra de filtros",
+  "notifications.column_settings.follow": "Nuevos seguidores:",
+  "notifications.column_settings.follow_request": "Nuevas solicitutz de seguimiento:",
+  "notifications.column_settings.mention": "Mencions:",
+  "notifications.column_settings.poll": "Resultaus d'a votación:",
+  "notifications.column_settings.push": "Notificacions push",
+  "notifications.column_settings.reblog": "Retutz:",
+  "notifications.column_settings.show": "Amostrar en columna",
+  "notifications.column_settings.sound": "Reproducir son",
+  "notifications.column_settings.status": "Nuevas publicacions:",
+  "notifications.column_settings.unread_notifications.category": "Notificacions sin leyer",
+  "notifications.column_settings.unread_notifications.highlight": "Destacar notificacions no leyidas",
+  "notifications.column_settings.update": "Edicions:",
+  "notifications.filter.all": "Totz",
+  "notifications.filter.boosts": "Retutz",
+  "notifications.filter.favourites": "Favoritos",
+  "notifications.filter.follows": "Seguidores",
+  "notifications.filter.mentions": "Mencions",
+  "notifications.filter.polls": "Resultaus d'a votación",
+  "notifications.filter.statuses": "Actualizacions de chent a la quala sigues",
+  "notifications.grant_permission": "Conceder permiso.",
+  "notifications.group": "{count} notificacions",
+  "notifications.mark_as_read": "Marcar totas las notificacions como leyidas",
+  "notifications.permission_denied": "No se pueden habilitar las notificacions d'escritorio ya que se denegó lo permiso",
+  "notifications.permission_denied_alert": "No se pueden habilitar las notificacions d'escritorio, ya que lo permiso d'o navegador estió denegau anteriorment",
+  "notifications.permission_required": "Las notificacions d'escritorio no son disponibles perque no s'ha concediu lo permiso requeriu.",
+  "notifications_permission_banner.enable": "Habilitar notificacions d'escritorio",
+  "notifications_permission_banner.how_to_control": "Pa recibir notificacions quan Mastodon no sía ubierto, habilite las notificacions d'escritorio. Puetz controlar con precisión qué tipos d'interaccions cheneran notificacions d'escritorio a traviés d'o botón {icon} d'alto una vegada que sían habilitadas.",
+  "notifications_permission_banner.title": "Nunca te pierdas cosa",
+  "picture_in_picture.restore": "Restaurar",
+  "poll.closed": "Zarrada",
+  "poll.refresh": "Actualizar",
+  "poll.total_people": "{count, plural, one {# persona} other {# personas}}",
+  "poll.total_votes": "{count, plural, one {# voto} other {# votos}}",
+  "poll.vote": "Votar",
+  "poll.voted": "Has votau a favor d'esta respuesta",
+  "poll.votes": "{votes, plural, one {# voto} other {# votos}}",
+  "poll_button.add_poll": "Anyadir una enqüesta",
+  "poll_button.remove_poll": "Eliminar enqüesta",
+  "privacy.change": "Achustar privacidat",
+  "privacy.direct.long": "Nomás amostrar a los usuarios mencionaus",
+  "privacy.direct.short": "Nomás contas mencionadas",
+  "privacy.private.long": "Nomás amostrar a seguidores",
+  "privacy.private.short": "Solo seguidores",
+  "privacy.public.long": "Visible pa totz",
+  "privacy.public.short": "Publico",
+  "privacy.unlisted.long": "Visible pa totz, pero excluyiu d'as funcions d'escubrimiento",
+  "privacy.unlisted.short": "No listau",
+  "privacy_policy.last_updated": "Ultima vegada actualizau {date}",
+  "privacy_policy.title": "Politica de Privacidat",
+  "refresh": "Actualizar",
+  "regeneration_indicator.label": "Cargando…",
+  "regeneration_indicator.sublabel": "La tuya historia d'inicio se ye preparando!",
+  "relative_time.days": "{number} d",
+  "relative_time.full.days": "fa {number, plural, one {# día} other {# días}}",
+  "relative_time.full.hours": "fa {number, plural, one {# hora} other {# horas}}",
+  "relative_time.full.just_now": "chusto agora",
+  "relative_time.full.minutes": "fa {number, plural, one {# menuto} other {# menutos}}",
+  "relative_time.full.seconds": "fa {number, plural, one {# segundo} other {# segundos}}",
+  "relative_time.hours": "{number} h",
+  "relative_time.just_now": "agora",
+  "relative_time.minutes": "{number} m",
+  "relative_time.seconds": "{number} s",
+  "relative_time.today": "hue",
+  "reply_indicator.cancel": "Cancelar",
+  "report.block": "Blocar",
+  "report.block_explanation": "No veyerás las suyas publicacions. No podrán veyer las tuyas publicacions ni seguir-te. Podrán saber que son blocaus.",
+  "report.categories.other": "Atros",
+  "report.categories.spam": "Spam",
+  "report.categories.violation": "Lo conteniu viola una u mas reglas d'o servidor",
+  "report.category.subtitle": "Tría la millor coincidencia",
+  "report.category.title": "Conta-nos lo que ye pasando con este {type}",
+  "report.category.title_account": "perfil",
+  "report.category.title_status": "publicacion",
+  "report.close": "Feito",
+  "report.comment.title": "I hai bella cosa mas que creigas que habríanos de saber?",
+  "report.forward": "Reninviar a {target}",
+  "report.forward_hint": "Esta cuenta ye d'unatro servidor. Ninviar una copia anonimizada de l'informe allí tamién?",
+  "report.mute": "Silenciar",
+  "report.mute_explanation": "No veyerás las suyas publicacions. Encara pueden seguir-te y veyer los tuyos mensaches y no sabrán que son silenciaus.",
+  "report.next": "Siguient",
+  "report.placeholder": "Comentarios adicionals",
+  "report.reasons.dislike": "No me fa goyo",
+  "report.reasons.dislike_description": "No ye bella cosa que quieras veyer",
+  "report.reasons.other": "Ye unatra coseta",
+  "report.reasons.other_description": "Lo problema no encaixa en atras categorías",
+  "report.reasons.spam": "Ye spam",
+  "report.reasons.spam_description": "Vinclos maliciosos, interaccions falsas u respuestas repetitivas",
+  "report.reasons.violation": "Viola las reglas d'o servidor",
+  "report.reasons.violation_description": "Yes conscient que infrinche las normas especificas",
+  "report.rules.subtitle": "Tría totz los que correspondan",
+  "report.rules.title": "Qué normas se son violando?",
+  "report.statuses.subtitle": "Tría totz los que correspondan",
+  "report.statuses.title": "I hai bella publicación que refirme este informe?",
+  "report.submit": "Ninviar",
+  "report.target": "Denunciando a {target}",
+  "report.thanks.take_action": "Aquí son las tuyas opcions pa controlar lo que veyes en Mastodon:",
+  "report.thanks.take_action_actionable": "Mientres revisamos esto, puetz prener medidas contra @{name}:",
+  "report.thanks.title": "No quiers esto?",
+  "report.thanks.title_actionable": "Gracias per informar, estudiaremos esto.",
+  "report.unfollow": "Deixar de seguir a @{name}",
+  "report.unfollow_explanation": "Yes seguindo esta cuenta. Pa no veyer las suyas publicacions en a tuya muro d'inicio, deixa de seguir-la.",
+  "report_notification.attached_statuses": "{count, plural, one {{count} tut adchunto} other {{count} tutz adchuntos}}",
+  "report_notification.categories.other": "Atros",
+  "report_notification.categories.spam": "Spam",
+  "report_notification.categories.violation": "Infracción de regla",
+  "report_notification.open": "Ubrir informe",
+  "search.placeholder": "Buscar",
+  "search.search_or_paste": "Buscar u apegar URL",
+  "search_popout.search_format": "Formato de busqueda abanzada",
+  "search_popout.tips.full_text": "Las busquedas de texto recuperan publicacions que has escrito, marcau como favoritas, retutau u en os quals has estau mencionau, asinas como usuarios, nombres y hashtags.",
+  "search_popout.tips.hashtag": "etiqueta",
+  "search_popout.tips.status": "status",
+  "search_popout.tips.text": "Lo texto simple torna correspondencias de nombre, usuario y hashtag",
+  "search_popout.tips.user": "usuario",
+  "search_results.accounts": "Chent",
+  "search_results.all": "Totz",
+  "search_results.hashtags": "Etiquetas",
+  "search_results.nothing_found": "No se podió trobar cosa pa estes termins de busqueda",
+  "search_results.statuses": "Publicacions",
+  "search_results.statuses_fts_disabled": "Buscar publicacions per lo suyo conteniu no ye disponible en este servidor de Mastodon.",
+  "search_results.title": "Buscar {q}",
+  "search_results.total": "{count, number} {count, plural, one {resultau} other {resultaus}}",
+  "server_banner.about_active_users": "Usuarios activos en o servidor entre los zaguers 30 días (Usuarios Activos Mensuals)",
+  "server_banner.active_users": "usuarios activos",
+  "server_banner.administered_by": "Administrau per:",
+  "server_banner.introduction": "{domain} ye parte d'o ret social descentralizau liderada per {mastodon}.",
+  "server_banner.learn_more": "Saber mas",
+  "server_banner.server_stats": "Estatisticas d'o servidor:",
+  "sign_in_banner.create_account": "Creyar cuenta",
+  "sign_in_banner.sign_in": "Iniciar sesión",
+  "sign_in_banner.text": "Inicia sesión en este servidor pa seguir perfils u etiquetas, alzar, compartir y responder a mensaches. Tamién puetz interactuar dende unatra cuenta en un servidor diferent.",
+  "status.admin_account": "Ubrir interficie de moderación pa @{name}",
+  "status.admin_status": "Ubrir este estau en a interficie de moderación",
+  "status.block": "Blocar a @{name}",
+  "status.bookmark": "Anyadir marcador",
+  "status.cancel_reblog_private": "Desfer retut",
+  "status.cannot_reblog": "Esta publicación no se puede retutar",
+  "status.copy": "Copiar vinclo a lo estau",
+  "status.delete": "Borrar",
+  "status.detailed_status": "Vista de conversación detallada",
+  "status.direct": "Mensache directo a @{name}",
+  "status.edit": "Editar",
+  "status.edited": "Editau {date}",
+  "status.edited_x_times": "Editau {count, plural, one {{count} vez} other {{count} veces}}",
+  "status.embed": "Incrustado",
+  "status.favourite": "Favorito",
+  "status.filter": "Filtrar esta publicación",
+  "status.filtered": "Filtrau",
+  "status.hide": "Amagar publicación",
+  "status.history.created": "{name} creyó {date}",
+  "status.history.edited": "{name} editó {date}",
+  "status.load_more": "Cargar mas",
+  "status.media_hidden": "Conteniu multimedia amagau",
+  "status.mention": "Mencionar @{name}",
+  "status.more": "Más",
+  "status.mute": "Silenciar @{name}",
+  "status.mute_conversation": "Silenciar conversación",
+  "status.open": "Expandir estau",
+  "status.pin": "Fixar",
+  "status.pinned": "Publicación fixada",
+  "status.read_more": "Leyer mas",
+  "status.reblog": "Retutar",
+  "status.reblog_private": "Empentar con l'audiencia orichinal",
+  "status.reblogged_by": "Retutau per {name}",
+  "status.reblogs.empty": "Dengún no ha retutau encara este tut. Quan belún lo faiga, amaneixerá aquí.",
+  "status.redraft": "Borrar y tornar ta borrador",
+  "status.remove_bookmark": "Eliminar marcador",
+  "status.replied_to": "Respondió a {name}",
+  "status.reply": "Responder",
+  "status.replyAll": "Responder a lo filo",
+  "status.report": "Denunciar €{name}",
+  "status.sensitive_warning": "Conteniu sensible",
+  "status.share": "Compartir",
+  "status.show_filter_reason": "Amostrar de totz modos",
+  "status.show_less": "Amostrar menos",
+  "status.show_less_all": "Amostrar menos pa tot",
+  "status.show_more": "Amostrar mas",
+  "status.show_more_all": "Amostrar mas pa tot",
+  "status.show_original": "Amostrar orichinal",
+  "status.translate": "Traducir",
+  "status.translated_from_with": "Traduciu de {lang} usando {provider}",
+  "status.uncached_media_warning": "No disponible",
+  "status.unmute_conversation": "Deixar de silenciar conversación",
+  "status.unpin": "Deixar de fixar",
+  "subscribed_languages.lead": "Nomás los mensaches en os idiomas triaus amaneixerán en o suyo inicio y atras linias de tiempo dimpués d'o cambio. Tríe garra pa recibir mensaches en totz los idiomas.",
+  "subscribed_languages.save": "Alzar cambios",
+  "subscribed_languages.target": "Cambiar idiomas suscritos pa {target}",
+  "suggestions.dismiss": "Descartar sucherencia",
+  "suggestions.header": "Ye posible que t'intrese…",
+  "tabs_bar.federated_timeline": "Federada",
+  "tabs_bar.home": "Inicio",
+  "tabs_bar.local_timeline": "Local",
+  "tabs_bar.notifications": "Notificacions",
+  "time_remaining.days": "{number, plural, one {# día restante} other {# días restantes}}",
+  "time_remaining.hours": "{number, plural, one {# hora restante} other {# horas restantes}}",
+  "time_remaining.minutes": "{number, plural, one {# menuto restante} other {# menutos restantes}}",
+  "time_remaining.moments": "Momentos restantes",
+  "time_remaining.seconds": "{number, plural, one {# segundo restante} other {# segundos restantes}}",
+  "timeline_hint.remote_resource_not_displayed": "{resource} d'atros servidors no s'amuestran.",
+  "timeline_hint.resources.followers": "Seguidores",
+  "timeline_hint.resources.follows": "Seguius",
+  "timeline_hint.resources.statuses": "Publicacions mas antigas",
+  "trends.counter_by_accounts": "{count, plural, one {{counter} persona} other {{counter} personas}} en os zaguers {days, plural, one {días} other {{days} días}}",
+  "trends.trending_now": "Tendencia agora",
+  "ui.beforeunload": "Lo tuyo borrador se perderá si sales de Mastodon.",
+  "units.short.billion": "{count} MM",
+  "units.short.million": "{count} M",
+  "units.short.thousand": "{count} K",
+  "upload_area.title": "Arrociega y suelta pa puyar",
+  "upload_button.label": "Puyar imachens, un vido u un fichero d'audio",
+  "upload_error.limit": "Limite de puyada de fichers excedido.",
+  "upload_error.poll": "Puyada de fichers no permitida con enqüestas.",
+  "upload_form.audio_description": "Describir pa personas con problemas auditivos",
+  "upload_form.description": "Describir pa los usuarios con dificultat visual",
+  "upload_form.description_missing": "Garra descripción anyadida",
+  "upload_form.edit": "Editar",
+  "upload_form.thumbnail": "Cambiar miniatura",
+  "upload_form.undo": "Borrar",
+  "upload_form.video_description": "Describir pa personas con problemas auditivos u visuals",
+  "upload_modal.analyzing_picture": "Analisando imachen…",
+  "upload_modal.apply": "Aplicar",
+  "upload_modal.applying": "Aplicando…",
+  "upload_modal.choose_image": "Triar imachen",
+  "upload_modal.description_placeholder": "Una rapida rabosa marrón blinca sobre lo can perezoso",
+  "upload_modal.detect_text": "Detectar texto d'a imachen",
+  "upload_modal.edit_media": "Editar multimedia",
+  "upload_modal.hint": "Faiga clic u arrociegue lo cerclo en a vista previa pa triar lo punto focal que siempre será a la vista en totas las miniaturas.",
+  "upload_modal.preparing_ocr": "Preparando OCR…",
+  "upload_modal.preview_label": "Vista previa ({ratio})",
+  "upload_progress.label": "Puyando...",
+  "upload_progress.processing": "Procesando…",
+  "video.close": "Zarrar video",
+  "video.download": "Descargar fichero",
+  "video.exit_fullscreen": "Salir de pantalla completa",
+  "video.expand": "Expandir video",
+  "video.fullscreen": "Pantalla completa",
+  "video.hide": "Amagar video",
+  "video.mute": "Silenciar son",
+  "video.pause": "Pausar",
+  "video.play": "Reproducir",
+  "video.unmute": "Deixar de silenciar son"
+}
diff --git a/app/javascript/mastodon/locales/ar.json b/app/javascript/mastodon/locales/ar.json
index ddbc30f1e..6c95d47d6 100644
--- a/app/javascript/mastodon/locales/ar.json
+++ b/app/javascript/mastodon/locales/ar.json
@@ -3,7 +3,7 @@
   "about.contact": "للاتصال:",
   "about.disclaimer": "ماستدون برنامج حر ومفتوح المصدر وعلامة تجارية لـ Mastodon GmbH.",
   "about.domain_blocks.no_reason_available": "السبب غير متوفر",
-  "about.domain_blocks.preamble": "يسمح لك ماستدون عموماً بعرض المحتوى من المستخدمين من أي خادم آخر في الفدرالية والتفاعل معهم. وهذه هي الاستثناءات التي وضعت على هذا الخادوم بالذات.",
+  "about.domain_blocks.preamble": "يسمح لك ماستدون عموماً بعرض المحتوى من المستخدمين من أي خادم آخر في الفدرالية والتفاعل معهم. وهذه هي الاستثناءات التي وضعت على هذا الخادم بالذات.",
   "about.domain_blocks.silenced.explanation": "عموماً، لن ترى ملفات التعريف والمحتوى من هذا الخادم، إلا إذا كنت تبحث عنه بشكل صريح أو تختار أن تتابعه.",
   "about.domain_blocks.silenced.title": "تم كتمه",
   "about.domain_blocks.suspended.explanation": "لن يتم معالجة أي بيانات من هذا الخادم أو تخزينها أو تبادلها، مما يجعل أي تفاعل أو اتصال مع المستخدمين من هذا الخادم مستحيلا.",
@@ -111,7 +111,7 @@
   "column.mutes": "المُستَخدِمون المَكتومون",
   "column.notifications": "الإشعارات",
   "column.pins": "المنشورات المُثَبَّتَة",
-  "column.public": "الخيط الزمني المُوَحَّد",
+  "column.public": "الخيط الفيدرالي",
   "column_back_button.label": "العودة",
   "column_header.hide_settings": "إخفاء الإعدادات",
   "column_header.moveLeft_settings": "نقل العامود إلى اليسار",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "تغيِير الاستطلاع للسماح باِخيارات مُتعدِّدة",
   "compose_form.poll.switch_to_single": "تغيِير الاستطلاع للسماح باِخيار واحد فقط",
   "compose_form.publish": "انشر",
+  "compose_form.publish_form": "انشر",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "احفظ التعديلات",
   "compose_form.sensitive.hide": "{count, plural, one {الإشارة إلى الوَسط كمُحتوى حسّاس} two{الإشارة إلى الوسطان كمُحتويان حسّاسان} other {الإشارة إلى الوسائط كمُحتويات حسّاسة}}",
@@ -184,13 +185,13 @@
   "disabled_account_banner.account_settings": "إعدادات الحساب",
   "disabled_account_banner.text": "حسابك {disabledAccount} معطل حاليا.",
   "dismissable_banner.community_timeline": "هذه هي أحدث المشاركات العامة من الأشخاص الذين تُستضاف حساباتهم على {domain}.",
-  "dismissable_banner.dismiss": "إغلاق",
-  "dismissable_banner.explore_links": "هذه القصص الإخبارية يتحدث عنها أشخاص على هذا الخوادم الأخرى للشبكة اللامركزية في الوقت الحالي.",
+  "dismissable_banner.dismiss": "رفض",
+  "dismissable_banner.explore_links": "هذه القصص الإخبارية يتحدث عنها حاليًا أشخاص على هذا الخادم وكذا على الخوادم الأخرى للشبكة اللامركزية.",
   "dismissable_banner.explore_statuses": "هذه المنشورات مِن هذا الخادم ومِن الخوادم الأخرى في الشبكة اللامركزية تجذب انتباه المستخدمين على هذا الخادم الآن.",
-  "dismissable_banner.explore_tags": "هذه العلامات تكتسب جذب بين الناس على هذا الخوادم الأخرى للشبكة اللامركزية في الوقت الحالي.",
+  "dismissable_banner.explore_tags": "هذه الوسوم تكتسب جذب اهتمام الناس حاليًا على هذا الخادم وكذا على الخوادم الأخرى للشبكة اللامركزية.",
   "dismissable_banner.public_timeline": "هذه هي أحدث المنشورات العامة من الناس على هذا الخادم والخوادم الأخرى للشبكة اللامركزية التي يعرفها هذا الخادم.",
   "embed.instructions": "يمكنكم إدماج هذا المنشور على موقعكم الإلكتروني عن طريق نسخ الشفرة أدناه.",
-  "embed.preview": "هكذا ما سوف يبدو عليه:",
+  "embed.preview": "إليك ما سيبدو عليه:",
   "emoji_button.activity": "الأنشطة",
   "emoji_button.clear": "امسح",
   "emoji_button.custom": "مخصص",
@@ -201,7 +202,7 @@
   "emoji_button.not_found": "لا توجد هناك وجوه تعبيرية مطابقة",
   "emoji_button.objects": "أشياء",
   "emoji_button.people": "الناس",
-  "emoji_button.recent": "الشائعة الاستخدام",
+  "emoji_button.recent": "المُستخدَمة غالباً",
   "emoji_button.search": "ابحث...",
   "emoji_button.search_results": "نتائج البحث",
   "emoji_button.symbols": "رموز",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "انسخ تتبع الارتباطات إلى الحافظة",
   "errors.unexpected_crash.report_issue": "الإبلاغ عن خلل",
   "explore.search_results": "نتائج البحث",
-  "explore.suggested_follows": "لك",
   "explore.title": "استكشف",
-  "explore.trending_links": "الأخبار",
-  "explore.trending_statuses": "المنشورات",
-  "explore.trending_tags": "الوسوم",
   "filter_modal.added.context_mismatch_explanation": "فئة عامل التصفية هذه لا تنطبق على السياق الذي وصلت فيه إلى هذه المشاركة. إذا كنت ترغب في تصفية المنشور في هذا السياق أيضا، فسيتعين عليك تعديل عامل التصفية.",
   "filter_modal.added.context_mismatch_title": "عدم تطابق السياق!",
   "filter_modal.added.expired_explanation": "انتهت صلاحية فئة عامل التصفية هذه، سوف تحتاج إلى تغيير تاريخ انتهاء الصلاحية لتطبيقها.",
@@ -384,7 +381,7 @@
   "navigation_bar.personal": "شخصي",
   "navigation_bar.pins": "المنشورات المُثَبَّتَة",
   "navigation_bar.preferences": "التفضيلات",
-  "navigation_bar.public_timeline": "الخيط العام الموحد",
+  "navigation_bar.public_timeline": "الخيط الفيدرالي",
   "navigation_bar.search": "البحث",
   "navigation_bar.security": "الأمان",
   "not_signed_in_indicator.not_signed_in": "تحتاج إلى تسجيل الدخول للوصول إلى هذا المصدر.",
@@ -399,8 +396,8 @@
   "notification.reblog": "قام {name} بمشاركة منشورك",
   "notification.status": "{name} نشر للتو",
   "notification.update": "عدّلَ {name} منشورًا",
-  "notifications.clear": "امسح الإخطارات",
-  "notifications.clear_confirmation": "أمتأكد من أنك تود مسح جل الإخطارات الخاصة بك و المتلقاة إلى حد الآن ؟",
+  "notifications.clear": "مسح الإشعارات",
+  "notifications.clear_confirmation": "متأكد من أنك تود مسح جميع الإشعارات الخاصة بك و المتلقاة إلى حد الآن ؟",
   "notifications.column_settings.admin.report": "التقارير الجديدة:",
   "notifications.column_settings.admin.sign_up": "التسجيلات الجديدة:",
   "notifications.column_settings.alert": "إشعارات سطح المكتب",
@@ -412,7 +409,7 @@
   "notifications.column_settings.follow_request": "الطلبات الجديد لِمتابَعتك:",
   "notifications.column_settings.mention": "الإشارات:",
   "notifications.column_settings.poll": "نتائج استطلاع الرأي:",
-  "notifications.column_settings.push": "الإخطارات المدفوعة",
+  "notifications.column_settings.push": "الإشعارات",
   "notifications.column_settings.reblog": "الترقيّات:",
   "notifications.column_settings.show": "اعرِضها في عمود",
   "notifications.column_settings.sound": "أصدر صوتا",
@@ -484,7 +481,7 @@
   "report.close": "تم",
   "report.comment.title": "هل لديك شيء آخر لتخبرنا به؟",
   "report.forward": "التحويل إلى {target}",
-  "report.forward_hint": "هذا الحساب ينتمي إلى خادوم آخَر. هل تودّ إرسال نسخة مجهولة مِن التقرير إلى هنالك أيضًا؟",
+  "report.forward_hint": "هذا الحساب ينتمي إلى خادم آخَر. هل تودّ إرسال نسخة مجهولة مِن التقرير إلى هنالك أيضًا؟",
   "report.mute": "كتم",
   "report.mute_explanation": "لن ترى مشاركاتهم. لكن سيبقى بإمكانهم متابعتك ورؤية مشاركاتك دون أن يعرفوا أنهم مكتمون.",
   "report.next": "التالي",
@@ -509,7 +506,7 @@
   "report.thanks.title_actionable": "شُكرًا لَكَ على الإبلاغ، سَوفَ نَنظُرُ فِي هَذَا الأمر.",
   "report.unfollow": "إلغاء متابعة @{name}",
   "report.unfollow_explanation": "أنت تتابع هذا الحساب، لإزالة مَنشوراته من تغذيَتِكَ الرئيسة ألغ متابعته.",
-  "report_notification.attached_statuses": "{count, plural, one {{count} post} other {{count} posts}} attached",
+  "report_notification.attached_statuses": "{count, plural, one {{count} منشور} other {{count} منشورات}} مرفقة",
   "report_notification.categories.other": "آخر",
   "report_notification.categories.spam": "مزعج",
   "report_notification.categories.violation": "القاعدة المنتهَكة",
@@ -537,7 +534,7 @@
   "server_banner.learn_more": "تعلم المزيد",
   "server_banner.server_stats": "إحصائيات الخادم:",
   "sign_in_banner.create_account": "أنشئ حسابًا",
-  "sign_in_banner.sign_in": "لِج",
+  "sign_in_banner.sign_in": "تسجيل الدخول",
   "sign_in_banner.text": "قم بالولوج بحسابك لمتابعة الصفحات الشخصية أو الوسوم، أو لإضافة الرسائل إلى المفضلة ومشاركتها والرد عليها أو التفاعل بواسطة حسابك المتواجد على خادم مختلف.",
   "status.admin_account": "افتح الواجهة الإدارية لـ @{name}",
   "status.admin_status": "افتح هذا المنشور على واجهة الإشراف",
@@ -600,7 +597,7 @@
   "tabs_bar.federated_timeline": "الموحَّد",
   "tabs_bar.home": "الرئيسية",
   "tabs_bar.local_timeline": "الخيط العام المحلي",
-  "tabs_bar.notifications": "الإخطارات",
+  "tabs_bar.notifications": "الإشعارات",
   "time_remaining.days": "{number, plural, one {# يوم} other {# أيام}} متبقية",
   "time_remaining.hours": "{number, plural, one {# ساعة} other {# ساعات}} متبقية",
   "time_remaining.minutes": "{number, plural, one {# دقيقة} other {# دقائق}} متبقية",
@@ -610,7 +607,7 @@
   "timeline_hint.resources.followers": "المتابِعون",
   "timeline_hint.resources.follows": "المتابَعون",
   "timeline_hint.resources.statuses": "المنشورات القديمة",
-  "trends.counter_by_accounts": "{count, plural, one {{counter} person} other {{counter} people}} in the past {days, plural, one {day} other {{days} days}}",
+  "trends.counter_by_accounts": "{count, plural, one {{counter} شخص واحد} other {{counter} أشخاص}} في {days, plural, one {اليوم الماضي} other {{days} الأسام الماضية}}",
   "trends.trending_now": "المتداولة الآن",
   "ui.beforeunload": "سوف تفقد مسودتك إن تركت ماستدون.",
   "units.short.billion": "{count} مليار",
diff --git a/app/javascript/mastodon/locales/ast.json b/app/javascript/mastodon/locales/ast.json
index 78555dc2d..1c5dddb60 100644
--- a/app/javascript/mastodon/locales/ast.json
+++ b/app/javascript/mastodon/locales/ast.json
@@ -1,41 +1,41 @@
 {
-  "about.blocks": "Moderated servers",
-  "about.contact": "Contact:",
-  "about.disclaimer": "Mastodon ye software gratuito y de códigu llibre, y una marca rexistrada de Mastodon gGmbH.",
+  "about.blocks": "Sirvidores llendaos",
+  "about.contact": "Contautu:",
+  "about.disclaimer": "Mastodon ye software gratuito ya de códigu llibre, ya una marca rexistrada de Mastodon gGmbH.",
   "about.domain_blocks.no_reason_available": "El motivu nun ta disponible",
-  "about.domain_blocks.preamble": "Mastodon generally allows you to view content from and interact with users from any other server in the fediverse. These are the exceptions that have been made on this particular server.",
-  "about.domain_blocks.silenced.explanation": "You will generally not see profiles and content from this server, unless you explicitly look it up or opt into it by following.",
-  "about.domain_blocks.silenced.title": "Limited",
-  "about.domain_blocks.suspended.explanation": "No data from this server will be processed, stored or exchanged, making any interaction or communication with users from this server impossible.",
-  "about.domain_blocks.suspended.title": "Suspended",
-  "about.not_available": "This information has not been made available on this server.",
-  "about.powered_by": "Decentralized social media powered by {mastodon}",
-  "about.rules": "Server rules",
+  "about.domain_blocks.preamble": "Polo xeneral, Mastodon permítete ver el conteníu ya interactuar colos perfiles d'otros sirvidores nel fediversu. Estes son les esceiciones que se ficieron nesti sirvidor.",
+  "about.domain_blocks.silenced.explanation": "Polo xeneral, nun ves los perfiles ya el conteníu d'esti sirvidor sacante que los busques o decidas siguilos.",
+  "about.domain_blocks.silenced.title": "Llendóse",
+  "about.domain_blocks.suspended.explanation": "Nun se procesa, atroxa nin intercambia nengún datu d'esti sirvidor, lo que fai que cualesquier interaición o comunicación colos sos perfiles seya imposible.",
+  "about.domain_blocks.suspended.title": "Suspendióse",
+  "about.not_available": "Esta información nun ta disponible nesti sirvidor.",
+  "about.powered_by": "Una rede social descentralizada que tien la teunoloxía de {mastodon}",
+  "about.rules": "Regles del sirvidor",
   "account.account_note_header": "Nota",
-  "account.add_or_remove_from_list": "Add or Remove from lists",
+  "account.add_or_remove_from_list": "Amestar o quitar de les llistes",
   "account.badges.bot": "Robó",
   "account.badges.group": "Grupu",
   "account.block": "Bloquiar a @{name}",
-  "account.block_domain": "Block domain {domain}",
+  "account.block_domain": "Bloquiar el dominiu {domain}",
   "account.blocked": "Blocked",
-  "account.browse_more_on_origin_server": "Browse more on the original profile",
+  "account.browse_more_on_origin_server": "Restolar más nel perfil orixinal",
   "account.cancel_follow_request": "Withdraw follow request",
-  "account.direct": "Direct message @{name}",
-  "account.disable_notifications": "Stop notifying me when @{name} posts",
+  "account.direct": "Unviar un mensaxe direutu a @{name}",
+  "account.disable_notifications": "Dexar d'avisame cuando @{name} espublice artículos",
   "account.domain_blocked": "Domain blocked",
   "account.edit_profile": "Editar el perfil",
-  "account.enable_notifications": "Notify me when @{name} posts",
+  "account.enable_notifications": "Avisame cuando @{name} espublice artículos",
   "account.endorse": "Destacar nel perfil",
   "account.featured_tags.last_status_at": "Last post on {date}",
   "account.featured_tags.last_status_never": "No posts",
-  "account.featured_tags.title": "{name}'s featured hashtags",
+  "account.featured_tags.title": "Etiquetes destacaes de: {name}",
   "account.follow": "Siguir",
   "account.followers": "Siguidores",
-  "account.followers.empty": "Naide sigue a esti usuariu entá.",
+  "account.followers.empty": "Naide sigue a esti perfil entá.",
   "account.followers_counter": "{count, plural, one {{counter} Follower} other {{counter} Followers}}",
   "account.following": "Following",
-  "account.following_counter": "{count, plural, one {{counter} Following} other {{counter} Following}}",
-  "account.follows.empty": "Esti usuariu entá nun sigue a naide.",
+  "account.following_counter": "{count, plural,one {Siguiendo a {counter}} other {Siguiendo a {counter}}}",
+  "account.follows.empty": "Esti perfil entá nun sigue a naide.",
   "account.follows_you": "Síguete",
   "account.go_to_profile": "Go to profile",
   "account.hide_reblogs": "Anubrir les comparticiones de @{name}",
@@ -43,34 +43,34 @@
   "account.languages": "Change subscribed languages",
   "account.link_verified_on": "La propiedá d'esti enllaz foi comprobada'l {date}",
   "account.locked_info": "This account privacy status is set to locked. The owner manually reviews who can follow them.",
-  "account.media": "Media",
+  "account.media": "Multimedia",
   "account.mention": "Mentar a @{name}",
-  "account.moved_to": "{name} has indicated that their new account is now:",
-  "account.mute": "Desactivación de los avisos de @{name}",
-  "account.mute_notifications": "Mute notifications from @{name}",
+  "account.moved_to": "{name} indicó qu'agora la so cuenta nueva ye:",
+  "account.mute": "Mute @{name}",
+  "account.mute_notifications": "Desactivar los avisos de @{name}",
   "account.muted": "Muted",
   "account.open_original_page": "Abrir la páxina orixinal",
   "account.posts": "Artículos",
-  "account.posts_with_replies": "Artículos y rempuestes",
+  "account.posts_with_replies": "Artículos ya rempuestes",
   "account.report": "Report @{name}",
   "account.requested": "Esperando pola aprobación. Calca pa encaboxar la solicitú de siguimientu",
-  "account.share": "Share @{name}'s profile",
-  "account.show_reblogs": "Amosar les comparticiones de @{name}",
+  "account.share": "Compartir el perfil de @{name}",
+  "account.show_reblogs": "Amosar los artículos compartíos de @{name}",
   "account.statuses_counter": "{count, plural, one {{counter} artículu} other {{counter} artículos}}",
   "account.unblock": "Desbloquiar a @{name}",
   "account.unblock_domain": "Amosar {domain}",
   "account.unblock_short": "Unblock",
   "account.unendorse": "Nun destacar nel perfil",
   "account.unfollow": "Dexar de siguir",
-  "account.unmute": "Unmute @{name}",
-  "account.unmute_notifications": "Unmute notifications from @{name}",
+  "account.unmute": "Activar los avisos de @{name}",
+  "account.unmute_notifications": "Activar los avisos de @{name}",
   "account.unmute_short": "Unmute",
   "account_note.placeholder": "Calca equí p'amestar una nota",
   "admin.dashboard.daily_retention": "User retention rate by day after sign-up",
   "admin.dashboard.monthly_retention": "User retention rate by month after sign-up",
   "admin.dashboard.retention.average": "Promediu",
-  "admin.dashboard.retention.cohort": "Sign-up month",
-  "admin.dashboard.retention.cohort_size": "Usuarios nuevos",
+  "admin.dashboard.retention.cohort": "Mes de rexistru",
+  "admin.dashboard.retention.cohort_size": "Perfiles nuevos",
   "alert.rate_limited.message": "Volvi tentalo dempués de la hora: {retry_time, time, medium}.",
   "alert.rate_limited.title": "Rate limited",
   "alert.unexpected.message": "Prodúxose un error inesperáu.",
@@ -81,9 +81,9 @@
   "autosuggest_hashtag.per_week": "{count} per selmana",
   "boost_modal.combo": "Pues primir {combo} pa saltar esto la próxima vegada",
   "bundle_column_error.copy_stacktrace": "Copy error report",
-  "bundle_column_error.error.body": "The requested page could not be rendered. It could be due to a bug in our code, or a browser compatibility issue.",
-  "bundle_column_error.error.title": "¡Meca!",
-  "bundle_column_error.network.body": "There was an error when trying to load this page. This could be due to a temporary problem with your internet connection or this server.",
+  "bundle_column_error.error.body": "La páxina solicitada nun se pudo renderizar. Ye posible que seya pola mor d'un fallu nel códigu o por un problema de compatibilidá del restolador.",
+  "bundle_column_error.error.title": "¡Oh, non!",
+  "bundle_column_error.network.body": "Hebo un error al tentar de cargar esta páxina. Esto pudo ser pola mor d'un problema temporal cola conexón a internet o con esti sirvidor.",
   "bundle_column_error.network.title": "Network error",
   "bundle_column_error.retry": "Try again",
   "bundle_column_error.return": "Go back home",
@@ -92,53 +92,54 @@
   "bundle_modal_error.close": "Close",
   "bundle_modal_error.message": "Asocedió daqué malo mentanto se cargaba esti componente.",
   "bundle_modal_error.retry": "Try again",
-  "closed_registrations.other_server_instructions": "Darréu que Mastodon ye descentralizáu, pues crear una cuenta n'otru sirvidor y siguir interactuando con esti.",
-  "closed_registrations_modal.description": "Creating an account on {domain} is currently not possible, but please keep in mind that you do not need an account specifically on {domain} to use Mastodon.",
-  "closed_registrations_modal.find_another_server": "Find another server",
-  "closed_registrations_modal.preamble": "Mastodon is decentralized, so no matter where you create your account, you will be able to follow and interact with anyone on this server. You can even self-host it!",
-  "closed_registrations_modal.title": "Signing up on Mastodon",
-  "column.about": "About",
-  "column.blocks": "Usuarios bloquiaos",
+  "closed_registrations.other_server_instructions": "Darréu que Mastodon ye una rede social descentralizada, pues crear una cuenta n'otru sirvidor ya siguir interactuando con esti.",
+  "closed_registrations_modal.description": "Anguaño nun ye posible crear cuentes en {domain}, mas ten en cuenta que nun precises una cuenta nesti sirvidor pa usar Mastodon.",
+  "closed_registrations_modal.find_another_server": "Atopar otru sirvidor",
+  "closed_registrations_modal.preamble": "Mastodon ye una rede social descentralizada polo que nun importa ónde crees la cuenta, vas ser a siguir ya interactuar con persones d'esti sirvidor. ¡Ya tamién pues tener el to propiu sirvidor!",
+  "closed_registrations_modal.title": "Rexistru en Mastodon",
+  "column.about": "Tocante a",
+  "column.blocks": "Perfiles bloquiaos",
   "column.bookmarks": "Marcadores",
-  "column.community": "Llinia temporal llocal",
+  "column.community": "Llinia de tiempu llocal",
   "column.direct": "Mensaxes direutos",
   "column.directory": "Browse profiles",
-  "column.domain_blocks": "Dominios anubríos",
+  "column.domain_blocks": "Dominios bloquiaos",
   "column.favourites": "Favoritos",
   "column.follow_requests": "Solicitúes de siguimientu",
   "column.home": "Aniciu",
   "column.lists": "Llistes",
   "column.mutes": "Usuarios silenciaos",
   "column.notifications": "Avisos",
-  "column.pins": "Barritos fixaos",
-  "column.public": "Llinia temporal federada",
+  "column.pins": "Artículos fixaos",
+  "column.public": "Llinia de tiempu federada",
   "column_back_button.label": "Atrás",
   "column_header.hide_settings": "Hide settings",
   "column_header.moveLeft_settings": "Mover la columna a la esquierda",
-  "column_header.moveRight_settings": "Mover la columna a la drecha",
+  "column_header.moveRight_settings": "Mover la columna a la derecha",
   "column_header.pin": "Fixar",
-  "column_header.show_settings": "Amosar axustes",
+  "column_header.show_settings": "Amosar la configuración",
   "column_header.unpin": "Lliberar",
-  "column_subheading.settings": "Axustes",
+  "column_subheading.settings": "Configuración",
   "community.column_settings.local_only": "Local only",
-  "community.column_settings.media_only": "Namái multimedia",
-  "community.column_settings.remote_only": "Remote only",
+  "community.column_settings.media_only": "Namás el conteníu multimedia",
+  "community.column_settings.remote_only": "Namás lo remoto",
   "compose.language.change": "Camudar la llingua",
   "compose.language.search": "Buscar llingües…",
   "compose_form.direct_message_warning_learn_more": "Saber más",
-  "compose_form.encryption_warning": "Posts on Mastodon are not end-to-end encrypted. Do not share any dangerous information over Mastodon.",
+  "compose_form.encryption_warning": "Los artículos de Mastodon nun tán cifraos de puntu a puntu. Nun compartas nengún tipu d'información sensible per Mastodon.",
   "compose_form.hashtag_warning": "This post won't be listed under any hashtag as it is unlisted. Only public posts can be searched by hashtag.",
-  "compose_form.lock_disclaimer": "Your account is not {locked}. Anyone can follow you to view your follower-only posts.",
-  "compose_form.lock_disclaimer.lock": "locked",
+  "compose_form.lock_disclaimer": "La to cuenta nun ye {locked}. Cualesquier perfil pue siguite pa ver los artículos que son namás pa siguidores.",
+  "compose_form.lock_disclaimer.lock": "privada",
   "compose_form.placeholder": "¿En qué pienses?",
-  "compose_form.poll.add_option": "Amestar una escoyeta",
+  "compose_form.poll.add_option": "Amestar una opción",
   "compose_form.poll.duration": "Poll duration",
-  "compose_form.poll.option_placeholder": "Escoyeta {number}",
-  "compose_form.poll.remove_option": "Desaniciar esta escoyeta",
+  "compose_form.poll.option_placeholder": "Opción {number}",
+  "compose_form.poll.remove_option": "Quitar esta opción",
   "compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
   "compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
   "compose_form.publish": "Publish",
-  "compose_form.publish_loud": "{publish}!",
+  "compose_form.publish_form": "Publish",
+  "compose_form.publish_loud": "¡{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "{count, plural, one {Mark media as sensitive} other {Mark media as sensitive}}",
   "compose_form.sensitive.marked": "{count, plural, one {Media is marked as sensitive} other {Media is marked as sensitive}}",
@@ -153,20 +154,20 @@
   "confirmations.cancel_follow_request.confirm": "Withdraw request",
   "confirmations.cancel_follow_request.message": "Are you sure you want to withdraw your request to follow {name}?",
   "confirmations.delete.confirm": "Desaniciar",
-  "confirmations.delete.message": "¿De xuru que quies desaniciar esti estáu?",
+  "confirmations.delete.message": "¿De xuru que quies desaniciar esti artículu?",
   "confirmations.delete_list.confirm": "Desaniciar",
   "confirmations.delete_list.message": "¿De xuru que quies desaniciar dafechu esta llista?",
-  "confirmations.discard_edit_media.confirm": "Discard",
+  "confirmations.discard_edit_media.confirm": "Escartar",
   "confirmations.discard_edit_media.message": "You have unsaved changes to the media description or preview, discard them anyway?",
-  "confirmations.domain_block.confirm": "Anubrir tol dominiu",
-  "confirmations.domain_block.message": "¿De xuru xurísimu que quies bloquiar el dominiu {domain} enteru? Na mayoría de casos bloquiar o silenciar dalguna cuenta ye abondo y preferible. Nun vas ver el conteníu d'esi dominiu en nenguna llinia temporal pública o nos avisos, y van desanciase los tos siguidores d'esi dominiu.",
-  "confirmations.logout.confirm": "Zarrar sesión",
+  "confirmations.domain_block.confirm": "Bloquiar tol dominiu",
+  "confirmations.domain_block.message": "¿De xuru xurísimu que quies bloquiar el dominiu {domain} enteru? Na mayoría de casos bloquiar o silenciar dalguna cuenta ye abondo ya preferible. Nun vas ver el conteníu d'esi dominiu en nenguna llinia temporal pública o nos avisos, ya van desanciase los tos siguidores d'esi dominiu.",
+  "confirmations.logout.confirm": "Zarrar la sesión",
   "confirmations.logout.message": "¿De xuru que quies zarrar la sesión?",
   "confirmations.mute.confirm": "Silenciar",
-  "confirmations.mute.explanation": "Esto va anubrir los espublizamientos y les sos menciones pero entá va permiti-yos ver los tos espublizamientos y siguite.",
+  "confirmations.mute.explanation": "Esto va anubrir los espublizamientos ya les sos menciones pero entá va permiti-yos ver los tos espublizamientos ya siguite.",
   "confirmations.mute.message": "¿De xuru que quies desactivar los avisos de {name}?",
-  "confirmations.redraft.confirm": "Desaniciar y reeditar",
-  "confirmations.redraft.message": "¿De xuru que quies desaniciar esti estáu y reeditalu? Van perdese los favoritos y comparticiones, y les rempuestes al toot orixinal van quedar güérfanes.",
+  "confirmations.redraft.confirm": "Desaniciar ya reeditar",
+  "confirmations.redraft.message": "Are you sure you want to delete this status and re-draft it? Favourites and boosts will be lost, and replies to the original post will be orphaned.",
   "confirmations.reply.confirm": "Responder",
   "confirmations.reply.message": "Responder agora va sobrescribir el mensaxe que tas componiendo anguaño. ¿De xuru que quies siguir?",
   "confirmations.unfollow.confirm": "Dexar de siguir",
@@ -175,8 +176,8 @@
   "conversation.mark_as_read": "Mark as read",
   "conversation.open": "View conversation",
   "conversation.with": "Con {names}",
-  "copypaste.copied": "Copied",
-  "copypaste.copy": "Copy",
+  "copypaste.copied": "Copióse",
+  "copypaste.copy": "Copiar",
   "directory.federated": "Dende'l fediversu",
   "directory.local": "Dende {domain} namái",
   "directory.new_arrivals": "Cuentes nueves",
@@ -184,48 +185,48 @@
   "disabled_account_banner.account_settings": "Account settings",
   "disabled_account_banner.text": "Your account {disabledAccount} is currently disabled.",
   "dismissable_banner.community_timeline": "These are the most recent public posts from people whose accounts are hosted by {domain}.",
-  "dismissable_banner.dismiss": "Dismiss",
-  "dismissable_banner.explore_links": "These news stories are being talked about by people on this and other servers of the decentralized network right now.",
-  "dismissable_banner.explore_statuses": "These posts from this and other servers in the decentralized network are gaining traction on this server right now.",
-  "dismissable_banner.explore_tags": "These hashtags are gaining traction among people on this and other servers of the decentralized network right now.",
-  "dismissable_banner.public_timeline": "These are the most recent public posts from people on this and other servers of the decentralized network that this server knows about.",
-  "embed.instructions": "Empotra esti estáu nun sitiu web copiando'l códigu d'embaxo.",
-  "embed.preview": "Asina ye cómo va vese:",
+  "dismissable_banner.dismiss": "Escartar",
+  "dismissable_banner.explore_links": "Esta seición contién les noticies que se tán comentando puramente agora, nesti ya otros sirvidores de la rede descentralizada.",
+  "dismissable_banner.explore_statuses": "Esta seición contién los artículos d'esti ya otros sirvidores de la rede descentralizada que tán ganando popularidá nesti sirvidor.",
+  "dismissable_banner.explore_tags": "Esta seición contién les etiquetes que tán ganando popularidá ente les persones d'esti ya otros sirvidores de la rede descentralizada.",
+  "dismissable_banner.public_timeline": "Esta seición contién los artículos públicos más recientes de persones nesti ya otros sirvidores de la rede descentralizada qu'esti sirvidor conoz.",
+  "embed.instructions": "Empotra esti artículu nel to sitiu web pente la copia del códigu d'abaxo.",
+  "embed.preview": "Va apaecer asina:",
   "emoji_button.activity": "Actividá",
   "emoji_button.clear": "Clear",
   "emoji_button.custom": "Custom",
   "emoji_button.flags": "Banderes",
-  "emoji_button.food": "Comida y bébora",
+  "emoji_button.food": "Comida ya bébora",
   "emoji_button.label": "Inxertar un fustaxe",
   "emoji_button.nature": "Natura",
-  "emoji_button.not_found": "¡Nun hai fustaxes! (╯°□°)╯︵ ┻━┻",
+  "emoji_button.not_found": "Nun s'atoparon fustaxes que concasen",
   "emoji_button.objects": "Oxetos",
   "emoji_button.people": "Persones",
   "emoji_button.recent": "Úsase davezu",
   "emoji_button.search": "Buscar…",
-  "emoji_button.search_results": "Search results",
+  "emoji_button.search_results": "Resultaos de la busca",
   "emoji_button.symbols": "Símbolos",
-  "emoji_button.travel": "Viaxes y llugares",
+  "emoji_button.travel": "Viaxes ya llugares",
   "empty_column.account_suspended": "Account suspended",
-  "empty_column.account_timeline": "¡Equí nun hai barritos!",
+  "empty_column.account_timeline": "¡Equí nun hai nengún artículu!",
   "empty_column.account_unavailable": "Profile unavailable",
-  "empty_column.blocks": "Entá nun bloquiesti a nengún usuariu.",
-  "empty_column.bookmarked_statuses": "Entá nun tienes nengún barritu en Marcadores. Cuando amiestes unu, va amosase equí.",
+  "empty_column.blocks": "Entá nun bloquiesti a nengún perfil.",
+  "empty_column.bookmarked_statuses": "Entá nun tienes nengún artículu en Marcadores. Cuando amiestes unu, apaez equí.",
   "empty_column.community": "The local timeline is empty. Write something publicly to get the ball rolling!",
-  "empty_column.direct": "Entá nun tienes nengún mensaxe direutu. Cuando unvies o recibas dalgún, va apaecer equí.",
-  "empty_column.domain_blocks": "Entá nun hai dominios anubríos.",
-  "empty_column.explore_statuses": "Nothing is trending right now. Check back later!",
-  "empty_column.favourited_statuses": "Entá nun tienes nengún barritu en Favoritos. Cuando amiestes unu, va amosase equí.",
+  "empty_column.direct": "Entá nun tienes nengún mensaxe direutu. Cuando unvies o recibas dalgún, apaecen equí.",
+  "empty_column.domain_blocks": "Entá nun hai nengún dominiu bloquiáu.",
+  "empty_column.explore_statuses": "Agora nun hai nada en tendencia. ¡Volvi equí dempués!",
+  "empty_column.favourited_statuses": "Entá nun marquesti nengún artículu como favoritu. Cuando marques unu, apaez equí.",
   "empty_column.favourites": "No one has favourited this post yet. When someone does, they will show up here.",
-  "empty_column.follow_recommendations": "Looks like no suggestions could be generated for you. You can try using search to look for people you might know or explore trending hashtags.",
-  "empty_column.follow_requests": "Entá nun tienes nenguna solicitú de siguimientu. Cuando recibas una, va apaecer equí.",
-  "empty_column.hashtag": "Entá nun hai nada nesta etiqueta.",
-  "empty_column.home": "¡Tienes la llinia temporal balera! Visita {public} o usa la gueta pa entamar y conocer a otros usuarios.",
+  "empty_column.follow_recommendations": "Paez que nun se puen xenerar suxerencies pa ti. Pues tentar d'usar la busca p'atopar perfiles que pues conocer o esplorar les etiquetes en tendencia.",
+  "empty_column.follow_requests": "Entá nun tienes nenguna solicitú de siguimientu. Cuando recibas una, apaez equí.",
+  "empty_column.hashtag": "Entá nun hai nada con esta etiqueta.",
+  "empty_column.home": "¡Tienes la llinia temporal balera! Visita {public} o usa la gueta pa entamar ya conocer a otros usuarios.",
   "empty_column.home.suggestions": "See some suggestions",
-  "empty_column.list": "Entá nun hai nada nesta llista. Cuando los miembros d'esta llista espublicen estaos nuevos, van apaecer equí.",
-  "empty_column.lists": "Entá nun tienes nenguna llista. Cuando crees una, va apaecer equí.",
+  "empty_column.list": "Entá nun hai nada nesta llista. Cuando los miembros d'esta llista espublicen artículos nuevos, apaecen equí.",
+  "empty_column.lists": "Entá nun tienes nenguna llista. Cuando crees una, apaez equí.",
   "empty_column.mutes": "You haven't muted any users yet.",
-  "empty_column.notifications": "You don't have any notifications yet. When other people interact with you, you will see it here.",
+  "empty_column.notifications": "Entá nun tienes nengún avisu. Cuando otros perfiles interactúen contigo, vas velos equí.",
   "empty_column.public": "¡Equí nun hai nada! Escribi daqué público o sigui a usuarios d'otros sirvidores pa rellenar esto",
   "error.unexpected_crash.explanation": "Pola mor d'un fallu nel códigu o un problema de compatibilidá del restolador, esta páxina nun se pudo amosar correutamente.",
   "error.unexpected_crash.explanation_addons": "Esta páxina nun se pudo amosar correutamente. Ye probable que dalgún complementu del restolador o dalguna ferramienta de traducción automática produxere esti error.",
@@ -233,16 +234,12 @@
   "error.unexpected_crash.next_steps_addons": "Try disabling them and refreshing the page. If that does not help, you may still be able to use Mastodon through a different browser or native app.",
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "Report issue",
-  "explore.search_results": "Search results",
-  "explore.suggested_follows": "Pa ti",
-  "explore.title": "Explore",
-  "explore.trending_links": "Noticies",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Etiquetes",
-  "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
-  "filter_modal.added.context_mismatch_title": "Context mismatch!",
+  "explore.search_results": "Resultaos de la busca",
+  "explore.title": "Esploración",
+  "filter_modal.added.context_mismatch_explanation": "Esta categoría de peñera nun s'aplica al contestu nel qu'accediesti a esti artículu. Si tamién quies que se peñere l'artículu nesti contestu, tienes d'editar la peñera.",
+  "filter_modal.added.context_mismatch_title": "¡El contestu nun coincide!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
-  "filter_modal.added.expired_title": "Expired filter!",
+  "filter_modal.added.expired_title": "¡La peñera caducó!",
   "filter_modal.added.review_and_configure": "To review and further configure this filter category, go to the {settings_link}.",
   "filter_modal.added.review_and_configure_title": "Filter settings",
   "filter_modal.added.settings_link": "settings page",
@@ -250,130 +247,130 @@
   "filter_modal.added.title": "Filter added!",
   "filter_modal.select_filter.context_mismatch": "does not apply to this context",
   "filter_modal.select_filter.expired": "expired",
-  "filter_modal.select_filter.prompt_new": "New category: {name}",
-  "filter_modal.select_filter.search": "Search or create",
+  "filter_modal.select_filter.prompt_new": "Categoría nueva: {name}",
+  "filter_modal.select_filter.search": "Buscar o crear",
   "filter_modal.select_filter.subtitle": "Use an existing category or create a new one",
   "filter_modal.select_filter.title": "Filter this post",
   "filter_modal.title.status": "Filter a post",
-  "follow_recommendations.done": "Done",
+  "follow_recommendations.done": "Fecho",
   "follow_recommendations.heading": "Follow people you'd like to see posts from! Here are some suggestions.",
-  "follow_recommendations.lead": "Posts from people you follow will show up in chronological order on your home feed. Don't be afraid to make mistakes, you can unfollow people just as easily any time!",
+  "follow_recommendations.lead": "Los artículos de los perfiles que sigas van apaecer n'orde cronolóxicu nel to feed d'aniciu. ¡Nun tengas mieu d'enquivocate, pues dexar de siguilos con facilidá en cualesquier momentu!",
   "follow_request.authorize": "Autorizar",
   "follow_request.reject": "Refugar",
-  "follow_requests.unlocked_explanation": "Even though your account is not locked, the {domain} staff thought you might want to review follow requests from these accounts manually.",
-  "footer.about": "About",
+  "follow_requests.unlocked_explanation": "Magar que la cuenta nun tea bloquiada, ye posible que'l personal del dominiu {domain} quiera revisar manualmente les solicitúes de siguimientu d'estes cuentes.",
+  "footer.about": "Tocante a",
   "footer.directory": "Direutoriu de perfiles",
-  "footer.get_app": "Get the app",
+  "footer.get_app": "Consiguir l'aplicación",
   "footer.invite": "Invite people",
   "footer.keyboard_shortcuts": "Atayos del tecláu",
   "footer.privacy_policy": "Política de privacidá",
-  "footer.source_code": "View source code",
-  "generic.saved": "Saved",
+  "footer.source_code": "Ver el códigu fonte",
+  "generic.saved": "Guardóse",
   "getting_started.heading": "Entamu",
   "hashtag.column_header.tag_mode.all": "y {additional}",
   "hashtag.column_header.tag_mode.any": "o {additional}",
   "hashtag.column_header.tag_mode.none": "ensin {additional}",
-  "hashtag.column_settings.select.no_options_message": "Nun s'alcontraron suxerencies",
+  "hashtag.column_settings.select.no_options_message": "Nun s'atopó nenguna suxerencia",
   "hashtag.column_settings.select.placeholder": "Enter hashtags…",
   "hashtag.column_settings.tag_mode.all": "Toes estes",
   "hashtag.column_settings.tag_mode.any": "Cualesquiera d'estes",
   "hashtag.column_settings.tag_mode.none": "Nenguna d'estes",
   "hashtag.column_settings.tag_toggle": "Incluyir les etiquetes adicionales d'esta columna",
-  "hashtag.follow": "Follow hashtag",
-  "hashtag.unfollow": "Unfollow hashtag",
-  "home.column_settings.basic": "Basic",
-  "home.column_settings.show_reblogs": "Show boosts",
-  "home.column_settings.show_replies": "Amosar rempuestes",
+  "hashtag.follow": "Siguir a la etiqueta",
+  "hashtag.unfollow": "Dexar de siguir a la etiqueta",
+  "home.column_settings.basic": "Configuración básica",
+  "home.column_settings.show_reblogs": "Amosar los artículos compartíos",
+  "home.column_settings.show_replies": "Amosar les rempuestes",
   "home.hide_announcements": "Hide announcements",
   "home.show_announcements": "Show announcements",
-  "interaction_modal.description.favourite": "With an account on Mastodon, you can favourite this post to let the author know you appreciate it and save it for later.",
-  "interaction_modal.description.follow": "With an account on Mastodon, you can follow {name} to receive their posts in your home feed.",
+  "interaction_modal.description.favourite": "Con una cuenta de Mastodon pues marcar esti artículu como favoritu ya avisar al autor/a de que te presta ya que lu guardes pa dempués.",
+  "interaction_modal.description.follow": "Con una cuenta de Mastodon, pues siguir a {name} pa recibir los artículos de so nel to feed d'aniciu.",
   "interaction_modal.description.reblog": "Con una cuenta de Mastodon, pues compartir esti artículu colos perfiles que te sigan.",
   "interaction_modal.description.reply": "Con una cuenta de Mastodon, pues responder a esti artículu.",
   "interaction_modal.on_another_server": "N'otru sirvidor",
   "interaction_modal.on_this_server": "Nesti sirvidor",
-  "interaction_modal.other_server_instructions": "Copia y apiega esta URL nel campu de busca de la to aplicación favorita de Mastodon o na interfaz web de dalgún sirvidor de Mastodon.",
-  "interaction_modal.preamble": "Darréu que Mastodon ye descentralizáu, pues usar una cuenta agospiada n'otru sirvidor de Mastodon o n'otra plataforma compatible si nun tienes cuenta nesti sirvidor.",
+  "interaction_modal.other_server_instructions": "Copia ya apiega esta URL nel campu de busca de la to aplicación favorita de Mastodon o na interfaz web de dalgún sirvidor de Mastodon.",
+  "interaction_modal.preamble": "Darréu que Mastodon ye una rede social descentralizada, pues usar una cuenta agospiada n'otru sirvidor de Mastodon o n'otra plataforma compatible si nun tienes cuenta nesti sirvidor.",
   "interaction_modal.title.favourite": "Favourite {name}'s post",
   "interaction_modal.title.follow": "Follow {name}",
   "interaction_modal.title.reblog": "Boost {name}'s post",
-  "interaction_modal.title.reply": "Reply to {name}'s post",
+  "interaction_modal.title.reply": "Rempuesta al artículu de: {name}",
   "intervals.full.days": "{number, plural, one {# día} other {# díes}}",
   "intervals.full.hours": "{number, plural, one {# hora} other {# hores}}",
   "intervals.full.minutes": "{number, plural, one {# minutu} other {# minutos}}",
-  "keyboard_shortcuts.back": "pa dir p'atrás",
-  "keyboard_shortcuts.blocked": "Abrir la llista d'usuarios bloquiaos",
-  "keyboard_shortcuts.boost": "pa compartir un toot",
-  "keyboard_shortcuts.column": "to focus a status in one of the columns",
+  "keyboard_shortcuts.back": "Dir p'atrás",
+  "keyboard_shortcuts.blocked": "Abrir la llista de perfiles bloquiaos",
+  "keyboard_shortcuts.boost": "Compartir un artículu",
+  "keyboard_shortcuts.column": "Enfocar una columna",
   "keyboard_shortcuts.compose": "Enfocar l'área de composición",
   "keyboard_shortcuts.description": "Descripción",
   "keyboard_shortcuts.direct": "to open direct messages column",
-  "keyboard_shortcuts.down": "pa baxar na llista",
-  "keyboard_shortcuts.enter": "p'abrir estaos",
-  "keyboard_shortcuts.favourite": "p'amestar a Favoritos",
-  "keyboard_shortcuts.favourites": "Abrir la llista de favoritos",
-  "keyboard_shortcuts.federated": "Abrir la llinia temporal federada",
+  "keyboard_shortcuts.down": "Baxar na llista",
+  "keyboard_shortcuts.enter": "Abrir un artículu",
+  "keyboard_shortcuts.favourite": "Marcar un artículu como favoritu",
+  "keyboard_shortcuts.favourites": "Abrir la llista de Favoritos",
+  "keyboard_shortcuts.federated": "Abrir la llinia de tiempu federada",
   "keyboard_shortcuts.heading": "Atayos del tecláu",
-  "keyboard_shortcuts.home": "p'abrir la llinia temporal d'aniciu",
+  "keyboard_shortcuts.home": "Abrir la llinia de tiempu del aniciu",
   "keyboard_shortcuts.hotkey": "Atayu",
-  "keyboard_shortcuts.legend": "p'amosar esta lleenda",
-  "keyboard_shortcuts.local": "p'abrir la llinia temporal llocal",
-  "keyboard_shortcuts.mention": "pa mentar al autor",
-  "keyboard_shortcuts.muted": "Abrir la llista d'usuarios colos avisos desactivaos",
-  "keyboard_shortcuts.my_profile": "p'abrir el to perfil",
+  "keyboard_shortcuts.legend": "Amosar esta lleenda",
+  "keyboard_shortcuts.local": "Abrir la llinia de tiempu llocal",
+  "keyboard_shortcuts.mention": "Mentar al autor/a",
+  "keyboard_shortcuts.muted": "Abrir la llista de perfiles colos avisos desactivaos",
+  "keyboard_shortcuts.my_profile": "Abrir el to perfil",
   "keyboard_shortcuts.notifications": "Abrir la columna d'avisos",
-  "keyboard_shortcuts.open_media": "to open media",
+  "keyboard_shortcuts.open_media": "Abrir el conteníu mutimedia",
   "keyboard_shortcuts.pinned": "Abrir la llista d'artículos fixaos",
   "keyboard_shortcuts.profile": "Abrir el perfil del autor/a",
-  "keyboard_shortcuts.reply": "pa responder",
+  "keyboard_shortcuts.reply": "Responder a un artículu",
   "keyboard_shortcuts.requests": "Abrir la llista de solicitúes de siguimientu",
   "keyboard_shortcuts.search": "Enfocar la barra de busca",
   "keyboard_shortcuts.spoilers": "to show/hide CW field",
   "keyboard_shortcuts.start": "Abrir la columna «Entamar»",
   "keyboard_shortcuts.toggle_hidden": "to show/hide text behind CW",
-  "keyboard_shortcuts.toggle_sensitivity": "to show/hide media",
-  "keyboard_shortcuts.toot": "p'apenzar un barritu nuevu",
+  "keyboard_shortcuts.toggle_sensitivity": "Amosar/anubrir el conteníu multimedia",
+  "keyboard_shortcuts.toot": "Comenzar un artículu nuevu",
   "keyboard_shortcuts.unfocus": "Desenfocar l'área de composición/busca",
-  "keyboard_shortcuts.up": "pa xubir na llista",
+  "keyboard_shortcuts.up": "Xubir na llista",
   "lightbox.close": "Close",
   "lightbox.compress": "Compress image view box",
   "lightbox.expand": "Expand image view box",
   "lightbox.next": "Siguiente",
   "lightbox.previous": "Previous",
-  "limited_account_hint.action": "Show profile anyway",
+  "limited_account_hint.action": "Amosar el perfil de toes toes",
   "limited_account_hint.title": "This profile has been hidden by the moderators of {domain}.",
   "lists.account.add": "Amestar a la llista",
   "lists.account.remove": "Desaniciar de la llista",
   "lists.delete": "Desaniciar la llista",
   "lists.edit": "Editar la llista",
   "lists.edit.submit": "Change title",
-  "lists.new.create": "Add list",
+  "lists.new.create": "Amestar la llista",
   "lists.new.title_placeholder": "Títulu nuevu de la llista",
-  "lists.replies_policy.followed": "Any followed user",
+  "lists.replies_policy.followed": "Cualesquier perfil siguíu",
   "lists.replies_policy.list": "Miembros de la llista",
-  "lists.replies_policy.none": "No one",
+  "lists.replies_policy.none": "Naide",
   "lists.replies_policy.title": "Show replies to:",
   "lists.search": "Buscar ente la xente que sigues",
   "lists.subheading": "Les tos llistes",
   "load_pending": "{count, plural, one {# elementu nuevu} other {# elementos nuevos}}",
   "loading_indicator.label": "Cargando…",
-  "media_gallery.toggle_visible": "Alternar la visibilidá",
+  "media_gallery.toggle_visible": "{number, plural, one {Anubrir la imaxe} other {Anubrir les imáxenes}}",
   "missing_indicator.label": "Nun s'atopó",
   "missing_indicator.sublabel": "Nun se pudo atopar esti recursu",
   "moved_to_account_banner.text": "Your account {disabledAccount} is currently disabled because you moved to {movedToAccount}.",
   "mute_modal.duration": "Duración",
-  "mute_modal.hide_notifications": "¿Anubrir los avisos d'esti usuariu?",
+  "mute_modal.hide_notifications": "¿Quies anubrir los avisos d'esti perfil?",
   "mute_modal.indefinite": "Indefinite",
-  "navigation_bar.about": "About",
-  "navigation_bar.blocks": "Usuarios bloquiaos",
+  "navigation_bar.about": "Tocante a",
+  "navigation_bar.blocks": "Perfiles bloquiaos",
   "navigation_bar.bookmarks": "Marcadores",
-  "navigation_bar.community_timeline": "Llinia temporal llocal",
+  "navigation_bar.community_timeline": "Llinia de tiempu llocal",
   "navigation_bar.compose": "Compose new post",
   "navigation_bar.direct": "Mensaxes direutos",
   "navigation_bar.discover": "Discover",
-  "navigation_bar.domain_blocks": "Dominios anubríos",
+  "navigation_bar.domain_blocks": "Dominios bloquiaos",
   "navigation_bar.edit_profile": "Editar el perfil",
-  "navigation_bar.explore": "Explore",
+  "navigation_bar.explore": "Esploración",
   "navigation_bar.favourites": "Favoritos",
   "navigation_bar.filters": "Pallabres desactivaes",
   "navigation_bar.follow_requests": "Solicitúes de siguimientu",
@@ -384,42 +381,42 @@
   "navigation_bar.personal": "Personal",
   "navigation_bar.pins": "Artículos fixaos",
   "navigation_bar.preferences": "Preferencies",
-  "navigation_bar.public_timeline": "Llinia temporal federada",
+  "navigation_bar.public_timeline": "Llinia de tiempu federada",
   "navigation_bar.search": "Search",
   "navigation_bar.security": "Seguranza",
   "not_signed_in_indicator.not_signed_in": "You need to sign in to access this resource.",
-  "notification.admin.report": "{name} reported {target}",
-  "notification.admin.sign_up": "{name} signed up",
+  "notification.admin.report": "{name} informó de: {target}",
+  "notification.admin.sign_up": "{name} rexistróse",
   "notification.favourite": "{name} favourited your status",
   "notification.follow": "{name} siguióte",
   "notification.follow_request": "{name} solicitó siguite",
   "notification.mention": "{name} mentóte",
   "notification.own_poll": "Your poll has ended",
   "notification.poll": "Finó una encuesta na que votesti",
-  "notification.reblog": "{name} compartió'l to estáu",
+  "notification.reblog": "{name} compartió'l to artículu",
   "notification.status": "{name} ta acabante d'espublizar",
-  "notification.update": "{name} editó l'artículu",
-  "notifications.clear": "Llimpiar avisos",
+  "notification.update": "{name} editó un artículu",
+  "notifications.clear": "Borrar los avisos",
   "notifications.clear_confirmation": "¿De xuru que quies llimpiar dafechu tolos avisos?",
-  "notifications.column_settings.admin.report": "New reports:",
-  "notifications.column_settings.admin.sign_up": "New sign-ups:",
+  "notifications.column_settings.admin.report": "Informes nuevos:",
+  "notifications.column_settings.admin.sign_up": "Rexistros nuevos:",
   "notifications.column_settings.alert": "Avisos d'escritoriu",
-  "notifications.column_settings.favourite": "Favoritos:",
-  "notifications.column_settings.filter_bar.advanced": "Amosar toles estayes",
+  "notifications.column_settings.favourite": "Artículos favoritos:",
+  "notifications.column_settings.filter_bar.advanced": "Amosar toles categoríes",
   "notifications.column_settings.filter_bar.category": "Barra de peñera rápida",
-  "notifications.column_settings.filter_bar.show_bar": "Show filter bar",
+  "notifications.column_settings.filter_bar.show_bar": "Amosar la barra de peñera",
   "notifications.column_settings.follow": "Siguidores nuevos:",
   "notifications.column_settings.follow_request": "Solicitúes de siguimientu nueves:",
   "notifications.column_settings.mention": "Menciones:",
-  "notifications.column_settings.poll": "Resultaos d'encuestes:",
+  "notifications.column_settings.poll": "Resultaos de les encuestes:",
   "notifications.column_settings.push": "Push notifications",
-  "notifications.column_settings.reblog": "Barritos compartíos:",
+  "notifications.column_settings.reblog": "Artículos compartíos:",
   "notifications.column_settings.show": "Amosar en columna",
   "notifications.column_settings.sound": "Reproducir un soníu",
-  "notifications.column_settings.status": "New toots:",
+  "notifications.column_settings.status": "Artículos nuevos:",
   "notifications.column_settings.unread_notifications.category": "Avisos ensin lleer",
-  "notifications.column_settings.unread_notifications.highlight": "Highlight unread notifications",
-  "notifications.column_settings.update": "Edits:",
+  "notifications.column_settings.unread_notifications.highlight": "Rescamplar los avisos ensin lleer",
+  "notifications.column_settings.update": "Ediciones:",
   "notifications.filter.all": "Too",
   "notifications.filter.boosts": "Boosts",
   "notifications.filter.favourites": "Favourites",
@@ -429,7 +426,7 @@
   "notifications.filter.statuses": "Updates from people you follow",
   "notifications.grant_permission": "Grant permission.",
   "notifications.group": "{count} avisos",
-  "notifications.mark_as_read": "Mark every notification as read",
+  "notifications.mark_as_read": "Marcar tolos avisos como lleíos",
   "notifications.permission_denied": "Desktop notifications are unavailable due to previously denied browser permissions request",
   "notifications.permission_denied_alert": "Desktop notifications can't be enabled, as browser permission has been denied before",
   "notifications.permission_required": "Los avisos d'escritoriu nun tán disponibles porque nun se concedió'l permisu riquíu.",
@@ -437,8 +434,8 @@
   "notifications_permission_banner.how_to_control": "Pa recibir avisos cuando Mastodon nun tea abiertu, activa los avisos del escritoriu. Pues controlar al milímetru qué tipu d'interaiciones xeneren avisos namás que s'activen, pente'l botón {icon} d'arriba.",
   "notifications_permission_banner.title": "Never miss a thing",
   "picture_in_picture.restore": "Put it back",
-  "poll.closed": "Acabó",
-  "poll.refresh": "Refresh",
+  "poll.closed": "Finó",
+  "poll.refresh": "Anovar",
   "poll.total_people": "{count, plural, one {# persona} other {# persones}}",
   "poll.total_votes": "{count, plural, one {# votu} other {# votos}}",
   "poll.vote": "Vote",
@@ -446,16 +443,16 @@
   "poll.votes": "{votes, plural, one {# votu} other {# votos}}",
   "poll_button.add_poll": "Amestar una encuesta",
   "poll_button.remove_poll": "Quitar la encuesta",
-  "privacy.change": "Adjust status privacy",
-  "privacy.direct.long": "Visible for mentioned users only",
+  "privacy.change": "Configurar la privacidá del artículu",
+  "privacy.direct.long": "Artículu visible namás pa los perfiles mentaos",
   "privacy.direct.short": "Direct",
-  "privacy.private.long": "Visible for followers only",
-  "privacy.private.short": "Followers-only",
-  "privacy.public.long": "Visible for all",
-  "privacy.public.short": "Public",
-  "privacy.unlisted.long": "Visible for all, but opted-out of discovery features",
+  "privacy.private.long": "Artículu visible namás pa los perfiles siguidores",
+  "privacy.private.short": "Namás pa siguidores",
+  "privacy.public.long": "Tol mundu pue ver l'artículu",
+  "privacy.public.short": "Artículu públicu",
+  "privacy.unlisted.long": "Artículu visible pa tol mundu mas escluyíu de les funciones de descubrimientu",
   "privacy.unlisted.short": "Nun llistar",
-  "privacy_policy.last_updated": "Last updated {date}",
+  "privacy_policy.last_updated": "Data del últimu anovamientu: {date}",
   "privacy_policy.title": "Política de privacidá",
   "refresh": "Refresh",
   "regeneration_indicator.label": "Cargando…",
@@ -507,42 +504,42 @@
   "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_explanation": "You are following this account. To not see their posts in your home feed anymore, unfollow them.",
+  "report.unfollow": "Dexar de siguir a @{name}",
+  "report.unfollow_explanation": "Sigues a esta cuenta. Pa dexar de ver los sos artículos nel to feed d'aniciu, dexa de siguila.",
   "report_notification.attached_statuses": "{count, plural, one {{count} post} other {{count} posts}} attached",
   "report_notification.categories.other": "Other",
   "report_notification.categories.spam": "Spam",
   "report_notification.categories.violation": "Rule violation",
-  "report_notification.open": "Open report",
+  "report_notification.open": "Abrir l'informe",
   "search.placeholder": "Buscar",
-  "search.search_or_paste": "Search or paste URL",
-  "search_popout.search_format": "Formatu de gueta avanzada",
+  "search.search_or_paste": "Busca o apiega una URL",
+  "search_popout.search_format": "Formatu de busca avanzada",
   "search_popout.tips.full_text": "Simple text returns statuses you have written, favourited, boosted, or have been mentioned in, as well as matching usernames, display names, and hashtags.",
   "search_popout.tips.hashtag": "etiqueta",
-  "search_popout.tips.status": "estáu",
-  "search_popout.tips.text": "Simple text returns matching display names, usernames and hashtags",
-  "search_popout.tips.user": "usuariu",
-  "search_results.accounts": "Xente",
+  "search_popout.tips.status": "artículu",
+  "search_popout.tips.text": "El testu simple devuelve nomes visibles, cuentes ya etiquetes que concasen",
+  "search_popout.tips.user": "perfil",
+  "search_results.accounts": "Perfiles",
   "search_results.all": "All",
   "search_results.hashtags": "Etiquetes",
   "search_results.nothing_found": "Nun se pudo atopar nada con esos términos de busca",
-  "search_results.statuses": "Barritos",
-  "search_results.statuses_fts_disabled": "Esti sirvidor de Mastodon tien activada la gueta de barritos pol so conteníu.",
+  "search_results.statuses": "Artículos",
+  "search_results.statuses_fts_disabled": "Esti sirvidor de Mastodon nun tien activada la busca d'artículos pol so conteníu.",
   "search_results.title": "Search for {q}",
   "search_results.total": "{count, number} {count, plural, one {resultáu} other {resultaos}}",
   "server_banner.about_active_users": "People using this server during the last 30 days (Monthly Active Users)",
   "server_banner.active_users": "active users",
   "server_banner.administered_by": "Administered by:",
-  "server_banner.introduction": "{domain} is part of the decentralized social network powered by {mastodon}.",
+  "server_banner.introduction": "{domain} ye parte de la rede social descentralizada que tien la teunoloxía de {mastodon}.",
   "server_banner.learn_more": "Saber más",
   "server_banner.server_stats": "Estadístiques del sirvidor:",
-  "sign_in_banner.create_account": "Create account",
+  "sign_in_banner.create_account": "Crear una cuenta",
   "sign_in_banner.sign_in": "Sign in",
-  "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts, or interact from your account on a different server.",
+  "sign_in_banner.text": "Anicia la sesión pa siguir a perfiles o etiquetes, marcar como favoritu, compartir o responder a artículos, o interactuar cola to cuenta nun sirvidor diferente.",
   "status.admin_account": "Open moderation interface for @{name}",
   "status.admin_status": "Open this status in the moderation interface",
   "status.block": "Bloquiar a @{name}",
-  "status.bookmark": "Amestar a Marcadores",
+  "status.bookmark": "Meter en Marcadores",
   "status.cancel_reblog_private": "Dexar de compartir",
   "status.cannot_reblog": "Esti artículu nun se pue compartir",
   "status.copy": "Copiar l'enllaz al artículu",
@@ -551,7 +548,7 @@
   "status.direct": "Unviar un mensaxe direutu a @{name}",
   "status.edit": "Edit",
   "status.edited": "Edited {date}",
-  "status.edited_x_times": "Edited {count, plural, one {{count} time} other {{count} times}}",
+  "status.edited_x_times": "Editóse {count, plural, one {{count} vegada} other {{count} vegaes}}",
   "status.embed": "Empotrar",
   "status.favourite": "Favourite",
   "status.filter": "Filter this post",
@@ -563,8 +560,8 @@
   "status.media_hidden": "Multimedia anubrida",
   "status.mention": "Mentar a @{name}",
   "status.more": "Más",
-  "status.mute": "Silenciar a @{name}",
-  "status.mute_conversation": "Mute conversation",
+  "status.mute": "Desactivar los avisos de @{name}",
+  "status.mute_conversation": "Desactivar los avisos de la conversación",
   "status.open": "Espander esti artículu",
   "status.pin": "Fixar nel perfil",
   "status.pinned": "Artículu fixáu",
@@ -572,12 +569,12 @@
   "status.reblog": "Compartir",
   "status.reblog_private": "Compartir cola audiencia orixinal",
   "status.reblogged_by": "{name} compartió",
-  "status.reblogs.empty": "Naide nun compartió esti barritu entá. Cuando daquién lo faiga, va amosase equí.",
-  "status.redraft": "Desaniciar y reeditar",
+  "status.reblogs.empty": "Naide nun compartió esti artículu entá. Cuando daquién lo faiga, apaez equí.",
+  "status.redraft": "Desaniciar ya reeditar",
   "status.remove_bookmark": "Desaniciar de Marcadores",
-  "status.replied_to": "Replied to {name}",
+  "status.replied_to": "En rempuesta a {name}",
   "status.reply": "Responder",
-  "status.replyAll": "Reply to thread",
+  "status.replyAll": "Responder al filu",
   "status.report": "Report @{name}",
   "status.sensitive_warning": "Conteníu sensible",
   "status.share": "Share",
@@ -586,12 +583,12 @@
   "status.show_less_all": "Amosar menos en too",
   "status.show_more": "Amosar más",
   "status.show_more_all": "Amosar más en too",
-  "status.show_original": "Show original",
-  "status.translate": "Translate",
-  "status.translated_from_with": "Translated from {lang} using {provider}",
-  "status.uncached_media_warning": "Non disponible",
-  "status.unmute_conversation": "Unmute conversation",
-  "status.unpin": "Desfixar del perfil",
+  "status.show_original": "Amosar l'orixinal",
+  "status.translate": "Traducir",
+  "status.translated_from_with": "Tradúxose del {lang} con {provider}",
+  "status.uncached_media_warning": "El conteníu nun ta disponible",
+  "status.unmute_conversation": "Activar los avisos de la conversación",
+  "status.unpin": "Lliberar del perfil",
   "subscribed_languages.lead": "Only posts in selected languages will appear on your home and list timelines after the change. Select none to receive posts in all languages.",
   "subscribed_languages.save": "Save changes",
   "subscribed_languages.target": "Change subscribed languages for {target}",
@@ -607,22 +604,22 @@
   "time_remaining.moments": "Moments remaining",
   "time_remaining.seconds": "{number, plural, one {Queda # segundu} other {Queden # segundos}}",
   "timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
-  "timeline_hint.resources.followers": "Followers",
+  "timeline_hint.resources.followers": "Siguidores",
   "timeline_hint.resources.follows": "Follows",
-  "timeline_hint.resources.statuses": "Older posts",
+  "timeline_hint.resources.statuses": "Artículos antiguos",
   "trends.counter_by_accounts": "{count, plural, one {{counter} person} other {{counter} people}} in the past {days, plural, one {day} other {{days} days}}",
   "trends.trending_now": "En tendencia",
   "ui.beforeunload": "El borrador va perdese si coles de Mastodon.",
   "units.short.billion": "{count} MM",
   "units.short.million": "{count} M",
   "units.short.thousand": "{count} mil",
-  "upload_area.title": "Arrastra y suelta pa xubir",
+  "upload_area.title": "Arrastra ya suelta pa xubir",
   "upload_button.label": "Add images, a video or an audio file",
   "upload_error.limit": "File upload limit exceeded.",
-  "upload_error.poll": "La xuba de ficheros nun ta permitida con encuestes.",
+  "upload_error.poll": "La xuba de ficheros nun ta permitida coles encuestes.",
   "upload_form.audio_description": "Descripción pa persones con perda auditiva",
-  "upload_form.description": "Descripción pa discapacitaos visuales",
-  "upload_form.description_missing": "No description added",
+  "upload_form.description": "Descripción pa persones con discapacidá visual",
+  "upload_form.description_missing": "Nun s'amestó la descripción",
   "upload_form.edit": "Editar",
   "upload_form.thumbnail": "Change thumbnail",
   "upload_form.undo": "Desaniciar",
@@ -634,7 +631,7 @@
   "upload_modal.description_placeholder": "A quick brown fox jumps over the lazy dog",
   "upload_modal.detect_text": "Detectar el testu de la semeya",
   "upload_modal.edit_media": "Edición",
-  "upload_modal.hint": "Calca o arrastra'l círculu de la previsualización pa escoyer el puntu d'enfoque que va amosase siempres en toles miniatures.",
+  "upload_modal.hint": "Calca o arrastra'l círculu de la previsualización pa escoyer el puntu d'enfoque que siempres va tar a la vista en toles miniatures.",
   "upload_modal.preparing_ocr": "Preparing OCR…",
   "upload_modal.preview_label": "Previsualización ({ratio})",
   "upload_progress.label": "Xubiendo…",
diff --git a/app/javascript/mastodon/locales/be.json b/app/javascript/mastodon/locales/be.json
new file mode 100644
index 000000000..58fa56b2b
--- /dev/null
+++ b/app/javascript/mastodon/locales/be.json
@@ -0,0 +1,649 @@
+{
+  "about.blocks": "Мадэраваныя серверы",
+  "about.contact": "Кантакт:",
+  "about.disclaimer": "Mastodon - свабоднае праграмнае забеспячэнне, з адкрытым зыходным кодам, і гандлёвай маркай Mastodon gGmbH.",
+  "about.domain_blocks.no_reason_available": "Прычына недаступная",
+  "about.domain_blocks.preamble": "Mastodon звычайна дазваляе вам бачыць змесціва і камунікаваць з карыстальнікамі з іншых сервераў федэсвету. Гэта выключэнні, якія былі зробленыя на гэтым канкрэтным серверы.",
+  "about.domain_blocks.silenced.explanation": "Вы не будзеце бачыць профілі і змесціва гэтага серверу, калі не шукаеце іх мэтанакіравана ці не падпісаны на карыстальнікаў адтуль.",
+  "about.domain_blocks.silenced.title": "Абмежаваны",
+  "about.domain_blocks.suspended.explanation": "Ніякая інфармацыя з гэтага сервера не будзе апрацавана, захавана або абменена, узаемадзеянне або камунікацыя з карыстальнікамі гэтага сервера немагчымы.",
+  "about.domain_blocks.suspended.title": "Прыпынены",
+  "about.not_available": "Дадзеная інфармацыя не дасяжная на гэтым серверы.",
+  "about.powered_by": "Дэцэнтралізаваная сацыяльная сетка, створаная {mastodon}",
+  "about.rules": "Правілы сервера",
+  "account.account_note_header": "Нататка",
+  "account.add_or_remove_from_list": "Дадаць або выдаліць са спісаў",
+  "account.badges.bot": "Бот",
+  "account.badges.group": "Група",
+  "account.block": "Заблакіраваць @{name}",
+  "account.block_domain": "Заблакіраваць дамен {domain}",
+  "account.blocked": "Заблакіраваны",
+  "account.browse_more_on_origin_server": "Глядзіце больш у арыгінальным профілі",
+  "account.cancel_follow_request": "Скасаваць запыт на падпіску",
+  "account.direct": "Асабістае паведамленне @{name}",
+  "account.disable_notifications": "Не апавяшчаць мяне пра допісы @{name}",
+  "account.domain_blocked": "Дамен заблакаваны",
+  "account.edit_profile": "Рэдагаваць профіль",
+  "account.enable_notifications": "Апавяшчаць мяне пра допісы @{name}",
+  "account.endorse": "Паказваць у профілі",
+  "account.featured_tags.last_status_at": "Апошні допіс ад {date}",
+  "account.featured_tags.last_status_never": "Няма допісаў",
+  "account.featured_tags.title": "Тэгі, выбраныя {name}",
+  "account.follow": "Падпісацца",
+  "account.followers": "Падпісчыкі",
+  "account.followers.empty": "Ніхто пакуль не падпісаны на гэтага карыстальніка.",
+  "account.followers_counter": "{count, plural, one {{counter} падпісчык} few {{counter} падпісчыкі} many {{counter} падпісчыкаў} other {{counter} падпісчыка}}",
+  "account.following": "Падпіскі",
+  "account.following_counter": "{count, plural, one {{counter} падпіска} few {{counter} падпіскі} many {{counter} падпісак} other {{counter} падпіскі}}",
+  "account.follows.empty": "Карыстальнік ні на каго не падпісаны.",
+  "account.follows_you": "Падпісаны на вас",
+  "account.go_to_profile": "Перайсці да профілю",
+  "account.hide_reblogs": "Схаваць пашырэнні ад @{name}",
+  "account.joined_short": "Далучыўся",
+  "account.languages": "Змяніць выбраныя мовы",
+  "account.link_verified_on": "Права ўласнасці на гэтую спасылку праверана {date}",
+  "account.locked_info": "Гэты ўліковы запіс пазначаны як схаваны. Уладальнік сам вырашае, хто можа падпісвацца на яго.",
+  "account.media": "Медыя",
+  "account.mention": "Згадаць @{name}",
+  "account.moved_to": "{name} указаў, што яго/яе новы ўліковы запіс цяпер:",
+  "account.mute": "Ігнараваць @{name}",
+  "account.mute_notifications": "Ігнараваць апавяшчэнні ад @{name}",
+  "account.muted": "Ігнаруецца",
+  "account.open_original_page": "Адкрыць арыгінальную старонку",
+  "account.posts": "Допісы",
+  "account.posts_with_replies": "Допісы і адказы",
+  "account.report": "Паскардзіцца на @{name}",
+  "account.requested": "Чакаецца ўхваленне. Націсніце, каб скасаваць запыт на падпіску",
+  "account.share": "Абагуліць профіль @{name}",
+  "account.show_reblogs": "Паказаць падштурхоўванні ад @{name}",
+  "account.statuses_counter": "{count, plural, one {{counter} допіс} few {{counter} допісы} many {{counter} допісаў} other {{counter} допісу}}",
+  "account.unblock": "Разблакіраваць @{name}",
+  "account.unblock_domain": "Разблакіраваць дамен {domain}",
+  "account.unblock_short": "Разблакіраваць",
+  "account.unendorse": "Не паказваць у профілі",
+  "account.unfollow": "Адпісацца",
+  "account.unmute": "Не ігнараваць @{name}",
+  "account.unmute_notifications": "Не ігнараваць апавяшчэнні ад @{name}",
+  "account.unmute_short": "Не ігнараваць",
+  "account_note.placeholder": "Націсніце, каб дадаць нататку",
+  "admin.dashboard.daily_retention": "Штодзённы паказчык утрымання карыстальнікаў пасля рэгістрацыі",
+  "admin.dashboard.monthly_retention": "Штомесячны паказчык утрымання карыстальнікаў пасля рэгістрацыі",
+  "admin.dashboard.retention.average": "Сярэдняе",
+  "admin.dashboard.retention.cohort": "Месяц рэгістрацыі",
+  "admin.dashboard.retention.cohort_size": "Новыя карыстальнікі",
+  "alert.rate_limited.message": "Калі ласка, паспрабуйце праз {retry_time, time, medium}.",
+  "alert.rate_limited.title": "Ліміт перавышаны",
+  "alert.unexpected.message": "Узнікла нечаканая памылка.",
+  "alert.unexpected.title": "Вой!",
+  "announcement.announcement": "Аб'ява",
+  "attachments_list.unprocessed": "(неапрацаваны)",
+  "audio.hide": "Схаваць аўдыя",
+  "autosuggest_hashtag.per_week": "{count} за тыдзень",
+  "boost_modal.combo": "Націсніце {combo}, каб прапусціць наступным разам",
+  "bundle_column_error.copy_stacktrace": "Скапіраваць справаздачу пра памылку",
+  "bundle_column_error.error.body": "Запытаная старонка не можа быць адлюстраваная. Гэта магло стацца праз хібу ў нашым кодзе, або праз памылку сумяшчальнасці з браўзерам.",
+  "bundle_column_error.error.title": "Халера!",
+  "bundle_column_error.network.body": "Падчас загрузкі старонкі адбылася памылка. Гэта магло адбыцца праз часовую праблему з вашым інтэрнэтам, або з серверам.",
+  "bundle_column_error.network.title": "Памылка сеткі",
+  "bundle_column_error.retry": "Паспрабуйце зноў",
+  "bundle_column_error.return": "Да стужкі",
+  "bundle_column_error.routing.body": "Запытаная старонка не знойдзена. Вы ўпэўнены, што URL у адрасным радку правільны?",
+  "bundle_column_error.routing.title": "404",
+  "bundle_modal_error.close": "Закрыць",
+  "bundle_modal_error.message": "Нешта пайшло не так падчас загрузкі гэтага кампанента.",
+  "bundle_modal_error.retry": "Паспрабуйце зноў",
+  "closed_registrations.other_server_instructions": "Паколькі Mastodon дэцэнтралізаваны, вы можаце стварыць уліковы запіс на іншым серверы і працягваць узаемадзейнічаць з ім.",
+  "closed_registrations_modal.description": "Стварэнне ўліковага запісу на {domain} цяпер немагчыма. Заўважце, што няма неабходнасці мець уліковы запіс менавіта на {domain}, каб выкарыстоўваць Mastodon.",
+  "closed_registrations_modal.find_another_server": "Знайсці іншы сервер",
+  "closed_registrations_modal.preamble": "Mastodon дэцэнтралізаваны, так што дзе б вы ні стварылі ўліковы запіс, вы зможаце падпісвацца і камунікаваць з кім хочаце на гэтым серверы. Вы нават можаце стварыць свой!",
+  "closed_registrations_modal.title": "Рэгістрацыя ў Mastodon",
+  "column.about": "Пра нас",
+  "column.blocks": "Заблакіраваныя карыстальнікі",
+  "column.bookmarks": "Закладкі",
+  "column.community": "Лакальная стужка",
+  "column.direct": "Асабістыя паведамленні",
+  "column.directory": "Праглядзець профілі",
+  "column.domain_blocks": "Заблакіраваныя дамены",
+  "column.favourites": "Упадабаныя",
+  "column.follow_requests": "Запыты на падпіску",
+  "column.home": "Галоўная",
+  "column.lists": "Спісы",
+  "column.mutes": "Ігнараваныя карыстальнікі",
+  "column.notifications": "Апавяшчэнні",
+  "column.pins": "Замацаваныя допісы",
+  "column.public": "Інтэграваная стужка",
+  "column_back_button.label": "Назад",
+  "column_header.hide_settings": "Схаваць налады",
+  "column_header.moveLeft_settings": "Пасунуць слупок улева",
+  "column_header.moveRight_settings": "Пасунуць слупок управа",
+  "column_header.pin": "Замацаваць",
+  "column_header.show_settings": "Паказаць налады",
+  "column_header.unpin": "Адмацаваць",
+  "column_subheading.settings": "Налады",
+  "community.column_settings.local_only": "Толькі лакальныя",
+  "community.column_settings.media_only": "Толькі медыя",
+  "community.column_settings.remote_only": "Толькі дыстанцыйна",
+  "compose.language.change": "Змяніць мову",
+  "compose.language.search": "Шукаць мовы...",
+  "compose_form.direct_message_warning_learn_more": "Даведацца больш",
+  "compose_form.encryption_warning": "Допісы ў Mastodon не абаронены скразным шыфраваннем. Не дзяліцеся ніякай канфідэнцыяльнай інфармацыяй в Mastodon.",
+  "compose_form.hashtag_warning": "Гэты допіс не будзе паказаны пад аніякім хэштэгам, так як ён мае тып \"Не паказваць у стужках\". Толькі публічныя допісы могуць быць знойдзены па хэштэгу.",
+  "compose_form.lock_disclaimer": "Ваш уліковы запіс не {locked}. Усе могуць падпісацца на вас, каб бачыць допісы толькі для падпісчыкаў.",
+  "compose_form.lock_disclaimer.lock": "заблакавана",
+  "compose_form.placeholder": "Што здарылася?",
+  "compose_form.poll.add_option": "Дадаць варыянт",
+  "compose_form.poll.duration": "Працягласць апытання",
+  "compose_form.poll.option_placeholder": "Варыянт {number}",
+  "compose_form.poll.remove_option": "Выдаліць выбар",
+  "compose_form.poll.switch_to_multiple": "Змяніце апытанне, каб дазволіць некалькі варыянтаў адказу",
+  "compose_form.poll.switch_to_single": "Змяніце апытанне, каб дазволіць адзіны варыянт адказу",
+  "compose_form.publish": "Апублікаваць",
+  "compose_form.publish_form": "Апублікаваць",
+  "compose_form.publish_loud": "{publish}!",
+  "compose_form.save_changes": "Захаваць змены",
+  "compose_form.sensitive.hide": "{count, plural, one {Пазначыць кантэнт як далікатны} other {Пазначыць кантэнт як далікатны}}",
+  "compose_form.sensitive.marked": "{count, plural, one {Кантэнт пазначаны як далікатны} other {Кантэнт пазначаны як далікатны}}",
+  "compose_form.sensitive.unmarked": "{count, plural, one {Кантэнт не пазначаны як далікатны} other {Кантэнт не пазначаны як далікатны}}",
+  "compose_form.spoiler.marked": "Выдаліць папярэджанне аб кантэнце",
+  "compose_form.spoiler.unmarked": "Дадаць папярэджанне аб кантэнце",
+  "compose_form.spoiler_placeholder": "Напішыце сваё папярэджанне тут",
+  "confirmation_modal.cancel": "Скасаваць",
+  "confirmations.block.block_and_report": "Заблакіраваць і паскардзіцца",
+  "confirmations.block.confirm": "Заблакіраваць",
+  "confirmations.block.message": "Вы ўпэўненыя што хочаце заблакіраваць {name}?",
+  "confirmations.cancel_follow_request.confirm": "Скасаваць запыт",
+  "confirmations.cancel_follow_request.message": "Сапраўды хочаце скасаваць свой запыт на падпіску на {name}?",
+  "confirmations.delete.confirm": "Выдаліць",
+  "confirmations.delete.message": "Вы ўпэўненыя, што хочаце выдаліць гэты допіс?",
+  "confirmations.delete_list.confirm": "Выдаліць",
+  "confirmations.delete_list.message": "Вы ўпэўненыя, што хочаце беззваротна выдаліць гэты чарнавік?",
+  "confirmations.discard_edit_media.confirm": "Адмяніць",
+  "confirmations.discard_edit_media.message": "У вас ёсць незахаваныя змены ў апісанні або прэв'ю, усе роўна скасаваць іх?",
+  "confirmations.domain_block.confirm": "Заблакіраваць дамен цалкам",
+  "confirmations.domain_block.message": "Вы абсалютна дакладна ўпэўнены, што хочаце заблакіраваць {domain} зусім? У большасці выпадкаў, дастаткова некалькіх мэтавых блакіровак ці ігнараванняў. Вы перастанеце бачыць змесціва з гэтага дамену ва ўсіх стужках і апавяшчэннях. Вашы падпіскі з гэтага дамену будуць выдаленыя.",
+  "confirmations.logout.confirm": "Выйсці",
+  "confirmations.logout.message": "Вы ўпэўненыя, што хочаце выйсці?",
+  "confirmations.mute.confirm": "Ігнараваць",
+  "confirmations.mute.explanation": "Гэта схавае допісы ад гэтага карыстальніка і пра яго, але ўсё яшчэ дазволіць яму чытаць вашыя допісы і быць падпісаным на вас.",
+  "confirmations.mute.message": "Вы ўпэўненыя, што хочаце ігнараваць {name}?",
+  "confirmations.redraft.confirm": "Выдаліць і перапісаць",
+  "confirmations.redraft.message": "Вы ўпэўнены, што хочаце выдаліць допіс і перапісаць яго? Упадабанні і пашырэнні згубяцца, а адказы да арыгінальнага допісу асірацеюць.",
+  "confirmations.reply.confirm": "Адказаць",
+  "confirmations.reply.message": "Калі вы адкажаце зараз, гэта ператрэ паведамленне, якое вы пішаце. Вы ўпэўнены, што хочаце працягнуць?",
+  "confirmations.unfollow.confirm": "Адпісацца",
+  "confirmations.unfollow.message": "Вы ўпэўненыя, што хочаце адпісацца ад {name}?",
+  "conversation.delete": "Выдаліць размову",
+  "conversation.mark_as_read": "Адзначыць прачытаным",
+  "conversation.open": "Прагледзець размову",
+  "conversation.with": "З {names}",
+  "copypaste.copied": "Скапіравана",
+  "copypaste.copy": "Скапіраваць",
+  "directory.federated": "З вядомага федэсвету",
+  "directory.local": "Толькі з {domain}",
+  "directory.new_arrivals": "Новыя карыстальнікі",
+  "directory.recently_active": "Нядаўна актыўныя",
+  "disabled_account_banner.account_settings": "Налады акаўнту",
+  "disabled_account_banner.text": "Ваш уліковы запіс {disabledAccount} часова адключаны.",
+  "dismissable_banner.community_timeline": "Гэта самыя апошнія допісы ад людзей, уліковыя запісы якіх размяшчаюцца на {domain}.",
+  "dismissable_banner.dismiss": "Адхіліць",
+  "dismissable_banner.explore_links": "Гэтыя навіны абмяркоўваюцца прама зараз на гэтым і іншых серверах дэцэнтралізаванай сеткі.",
+  "dismissable_banner.explore_statuses": "Допісы з гэтага і іншых сервераў дэцэнтралізаванай сеткі, якія набіраюць папулярнасць прама зараз.",
+  "dismissable_banner.explore_tags": "Гэтыя хэштэгі зараз набіраюць папулярнасць сярод людзей на гэтым і іншых серверах дэцэнтралізаванай сеткі",
+  "dismissable_banner.public_timeline": "Гэта самыя апошнія публічныя паведамленні ад людзей на гэтым і іншых серверах дэцэнтралізаванай сеткі, якія вядомыя гэтаму серверу",
+  "embed.instructions": "Убудуйце гэты пост на свой сайт, скапіраваўшы прыведзены ніжэй код",
+  "embed.preview": "Вось як гэта будзе выглядаць:",
+  "emoji_button.activity": "Актыўнасць",
+  "emoji_button.clear": "Ачысціць",
+  "emoji_button.custom": "Адвольныя",
+  "emoji_button.flags": "Сцягі",
+  "emoji_button.food": "Ежа і напоі",
+  "emoji_button.label": "Уставіць эмодзі",
+  "emoji_button.nature": "Прырода",
+  "emoji_button.not_found": "Адпаведныя эмодзі не знойдзены",
+  "emoji_button.objects": "Прадметы",
+  "emoji_button.people": "Людзі",
+  "emoji_button.recent": "Карыстаныя найчасцей",
+  "emoji_button.search": "Пошук...",
+  "emoji_button.search_results": "Вынікі пошуку",
+  "emoji_button.symbols": "Сімвалы",
+  "emoji_button.travel": "Падарожжы і месцы",
+  "empty_column.account_suspended": "Уліковы запіс прыпынены",
+  "empty_column.account_timeline": "Тут няма допісаў!",
+  "empty_column.account_unavailable": "Профіль недаступны",
+  "empty_column.blocks": "Вы яшчэ нікога не заблакіравалі.",
+  "empty_column.bookmarked_statuses": "У вас яшчэ няма паведамленняў з закладкамі. Калі вы дадасце закладку, яна з'явіцца тут.",
+  "empty_column.community": "Мясцовая шкала часу пустая. Напішыце што-небудзь публічна, каб зрушыць з месца",
+  "empty_column.direct": "Пакуль у вас няма асабістых паведамленняў. Калі вы дашляце або атрымаеце штось, яно з'явіцца тут.",
+  "empty_column.domain_blocks": "Заблакіраваных даменаў пакуль няма.",
+  "empty_column.explore_statuses": "Зараз не ў трэндзе. Праверце пазней",
+  "empty_column.favourited_statuses": "Вы яшчэ не ўпадабалі ніводны допіс. Калі гэта адбудзецца, вы ўбачыце яго тут.",
+  "empty_column.favourites": "Ніхто яшчэ не ўпадабаў гэты допіс. Калі гэта адбудзецца, вы ўбачыце гэтых людзей тут.",
+  "empty_column.follow_recommendations": "Здаецца, прапаноў для вас няма. Вы можаце паспрабаваць выкарыстаць пошук, каб знайсці людзей, якіх вы можаце ведаць, ці даследаваць папулярныя хэштэгі.",
+  "empty_column.follow_requests": "У вас яшчэ няма запытаў на падпіскуі. Калі вы атрымаеце запыт, ён з'явяцца тут.",
+  "empty_column.hashtag": "Па гэтаму хэштэгу пакуль што нічога няма.",
+  "empty_column.home": "Галоўная стужка пустая! Падпішыцеся на іншых людзей, каб запоўніць яе. {suggestions}",
+  "empty_column.home.suggestions": "Глядзіце прапановы",
+  "empty_column.list": "У гэтым спісе пакуль што нічога няма. Калі члены лісту апублікуюць новыя запісы, яны з'явяцца тут.",
+  "empty_column.lists": "Як толькі вы створыце новы спіс ён будзе захоўвацца тут, але пакуль што тут пуста.",
+  "empty_column.mutes": "Вы яшчэ нікога не ігнаруеце.",
+  "empty_column.notifications": "У вас няма ніякіх апавяшчэнняў. Калі іншыя людзі ўзаемадзейнічаюць з вамі, вы ўбачыце гэта тут.",
+  "empty_column.public": "Тут нічога няма! Апублікуйце што-небудзь, або падпішыцеся на карыстальнікаў з другіх сервераў",
+  "error.unexpected_crash.explanation": "Гэта старонка не можа быць адлюстравана карэктна з-за памылкі ў нашым кодзе, або праблемы з сумяшчальнасцю браўзера.",
+  "error.unexpected_crash.explanation_addons": "Гэтая старонка не можа быць адлюстравана карэктна. Верагодна, гэтая памылка выклікана дадатковым кампанентам браўзера або інструментамі аўтаматычнага перакладу",
+  "error.unexpected_crash.next_steps": "Паспрабуйце абнавіць старонку. Калі гэта не дапаможа, вы можаце паспрабаваць іншы браўзер, альбо выкарыстаць усталяваную праграму.",
+  "error.unexpected_crash.next_steps_addons": "Паспрабуйце выключыць іх і аднавіць старонку. Калі гэта не дапаможа, вы можаце карыстацца Мастадонт праз другі браўзер ці аплікацыю.",
+  "errors.unexpected_crash.copy_stacktrace": "Дадаць дыягнастычны стэк у буфер абмену",
+  "errors.unexpected_crash.report_issue": "Паведаміць аб праблеме",
+  "explore.search_results": "Вынікі пошуку",
+  "explore.title": "Агляд",
+  "filter_modal.added.context_mismatch_explanation": "Гэтая катэгорыя фільтра не прымяняецца да кантэксту, у якім вы адкрылі гэты пост. Калі вы хочаце, каб паведамленне таксама было адфільтравана ў гэтым кантэксце, вам трэба будзе адрэдагаваць фільтр",
+  "filter_modal.added.context_mismatch_title": "Неадпаведны кантэкст!",
+  "filter_modal.added.expired_explanation": "Тэрмін дзеяння гэтай катэгорыі фільтраў скончыўся, вам трэба будзе змяніць дату заканчэння тэрміну дзеяння, каб яна прымянялася",
+  "filter_modal.added.expired_title": "Пратэрмінаваны фільтр!",
+  "filter_modal.added.review_and_configure": "Для прагляду і наступнай канфігурацыі фільтра катэгорый, перайдзіце на {settings_link}.",
+  "filter_modal.added.review_and_configure_title": "Налады фільтра",
+  "filter_modal.added.settings_link": "старонка наладаў",
+  "filter_modal.added.short_explanation": "Гэты пост быў дабаўлены ў катэгорыю з наступным фільтрам: {title}.",
+  "filter_modal.added.title": "Фільтр дабаўлены!",
+  "filter_modal.select_filter.context_mismatch": "Не мае дачынення да кантэксту ",
+  "filter_modal.select_filter.expired": "пратэрмінавана",
+  "filter_modal.select_filter.prompt_new": "Новая катэгорыя: {name}",
+  "filter_modal.select_filter.search": "Шукаць альбо стварыць",
+  "filter_modal.select_filter.subtitle": "Скарыстайцеся існуючай катэгорыяй або стварыце новую",
+  "filter_modal.select_filter.title": "Фільтраваць гэты допіс",
+  "filter_modal.title.status": "Фільтраваць допіс",
+  "follow_recommendations.done": "Гатова",
+  "follow_recommendations.heading": "Падпісвайцеся на людзей, допісы якіх вам будуць цікавы! Вось некаторыя рэкамендацыі.",
+  "follow_recommendations.lead": "Допісы людзей, на якіх вы падпісаны, будуць паказаны ў храналагічным парадку на вашай хатняй старонцы. Не бойцеся памыляцца, вы лёгка зможаце адпісацца ў любы момант!",
+  "follow_request.authorize": "Аўтарызацыя",
+  "follow_request.reject": "Адхіліць",
+  "follow_requests.unlocked_explanation": "Ваш акаўнт не схаваны, аднак прадстаўнікі {domain} палічылі, што вы можаце захацець праглядзець запыты на падпіску з гэтых профіляў уручную.",
+  "footer.about": "Пра нас",
+  "footer.directory": "Дырэкторыя профіляў",
+  "footer.get_app": "Спампаваць праграму",
+  "footer.invite": "Запрасіць людзей",
+  "footer.keyboard_shortcuts": "Спалучэнні клавіш",
+  "footer.privacy_policy": "Палітыка прыватнасці",
+  "footer.source_code": "Прагледзець зыходны код",
+  "generic.saved": "Захавана",
+  "getting_started.heading": "Пачатак працы",
+  "hashtag.column_header.tag_mode.all": "і {additional}",
+  "hashtag.column_header.tag_mode.any": "або {additional}",
+  "hashtag.column_header.tag_mode.none": "без {additional}",
+  "hashtag.column_settings.select.no_options_message": "Няма рэкамендацый",
+  "hashtag.column_settings.select.placeholder": "Увядзіце хэштэгі…",
+  "hashtag.column_settings.tag_mode.all": "Усе",
+  "hashtag.column_settings.tag_mode.any": "Любы",
+  "hashtag.column_settings.tag_mode.none": "Нічога з пералічанага",
+  "hashtag.column_settings.tag_toggle": "Уключыць дадатковыя тэгі для гэтай калонкі",
+  "hashtag.follow": "Падпісацца на хэштэг",
+  "hashtag.unfollow": "Адпісацца ад хэштэга",
+  "home.column_settings.basic": "Асноўныя",
+  "home.column_settings.show_reblogs": "Паказаць пашырэнні",
+  "home.column_settings.show_replies": "Паказваць адказы",
+  "home.hide_announcements": "Схаваць аб'явы",
+  "home.show_announcements": "Паказаць аб'явы",
+  "interaction_modal.description.favourite": "Маючы ўліковы запіс Mastodon, вы можаце ўпадабаць гэты допіс, каб паведаміць аўтару, што ён вам падабаецца, і захаваць яго на будучыню.",
+  "interaction_modal.description.follow": "Маючы акаўнт у Mastodon, вы можаце падпісацца на {name}, каб бачыць яго/яе допісы ў сваёй хатняй стужцы.",
+  "interaction_modal.description.reblog": "З уліковым запісам Mastodon, вы можаце пашырыць гэты пост, каб падзяліцца ім са сваімі падпісчыкамі.",
+  "interaction_modal.description.reply": "Маючы акаўнт у Mastodon, вы можаце адказаць на гэты пост.",
+  "interaction_modal.on_another_server": "На іншым серверы",
+  "interaction_modal.on_this_server": "На гэтым серверы",
+  "interaction_modal.other_server_instructions": "Скапіюйце і ўстаўце гэты URL у поле пошуку вашай любімай праграмы для Mastodon ці інтэрфейса вашага Mastodon сервера.",
+  "interaction_modal.preamble": "Паколькі Mastodon дэцэнтралізаваны, вы можаце выкарыстоўваць існуючы акаўнт, які быў створаны на іншым серверы Mastodon або на сумяшчальнай платформе, калі ў вас пакуль няма акаўнта тут.",
+  "interaction_modal.title.favourite": "Упадабаць допіс {name}",
+  "interaction_modal.title.follow": "Падпісацца на {name}",
+  "interaction_modal.title.reblog": "Пашырыць допіс ад {name}",
+  "interaction_modal.title.reply": "Адказаць на допіс {name}",
+  "intervals.full.days": "{number, plural, one {# дзень} few {# дні} many {# дзён} other {# дня}}",
+  "intervals.full.hours": "{number, plural, one {# гадзіна} few {# гадзіны} many {# гадзін} other {# гадзіны}}",
+  "intervals.full.minutes": "{number, plural, one {# хвіліна} few {# хвіліны} many {# хвілін} other {# хвіліны}}",
+  "keyboard_shortcuts.back": "Вярнуцца назад",
+  "keyboard_shortcuts.blocked": "Адкрыць спіс заблакаваных карыстальнікаў",
+  "keyboard_shortcuts.boost": "Пашырыць допіс",
+  "keyboard_shortcuts.column": "Сфакусіравацца на калонцы",
+  "keyboard_shortcuts.compose": "Сфакусіравацца на тэкставай вобласці",
+  "keyboard_shortcuts.description": "Апісанне",
+  "keyboard_shortcuts.direct": "для адкрыцця калонкі прыватных паведамленняў",
+  "keyboard_shortcuts.down": "Перамясціцца ўніз па спісе",
+  "keyboard_shortcuts.enter": "Адкрыць допіс",
+  "keyboard_shortcuts.favourite": "Упадабаць допіс",
+  "keyboard_shortcuts.favourites": "Адкрыць спіс упадабаных",
+  "keyboard_shortcuts.federated": "Адкрыць інтэграваную стужку",
+  "keyboard_shortcuts.heading": "Спалучэнні клавіш",
+  "keyboard_shortcuts.home": "Адкрыць хатнюю храналагічную стужку",
+  "keyboard_shortcuts.hotkey": "Спалучэнне клавіш",
+  "keyboard_shortcuts.legend": "Паказаць легенду",
+  "keyboard_shortcuts.local": "Адкрыць хатнюю храналагічную стужку",
+  "keyboard_shortcuts.mention": "Згадаць аўтара",
+  "keyboard_shortcuts.muted": "Адкрыць спіс ігнараваных карыстальнікаў",
+  "keyboard_shortcuts.my_profile": "Адкрыць ваш профіль",
+  "keyboard_shortcuts.notifications": "Адкрыць слупок апавяшчэнняў",
+  "keyboard_shortcuts.open_media": "Адкрыць медыя",
+  "keyboard_shortcuts.pinned": "Адкрыць спіс замацаваных допісаў",
+  "keyboard_shortcuts.profile": "Адкрыць профіль аўтара",
+  "keyboard_shortcuts.reply": "Адказаць на допіс",
+  "keyboard_shortcuts.requests": "Адкрыць спіс запытаў на падпіску",
+  "keyboard_shortcuts.search": "Сфакусіраваць пошукавы радок",
+  "keyboard_shortcuts.spoilers": "Паказаць/схаваць поле \"папярэджанне пра змест\"",
+  "keyboard_shortcuts.start": "Адкрыць стартавую калонку",
+  "keyboard_shortcuts.toggle_hidden": "Паказаць/схаваць тэкст за папярэджаннем пра кантэнт",
+  "keyboard_shortcuts.toggle_sensitivity": "Паказаць/схаваць медыя",
+  "keyboard_shortcuts.toot": "Стварыць новы допіс",
+  "keyboard_shortcuts.unfocus": "Расфакусаваць тэкставую вобласць/пошукавы радок",
+  "keyboard_shortcuts.up": "Перамясціцца ўверх па спісе",
+  "lightbox.close": "Закрыць",
+  "lightbox.compress": "Сціснуць бачную вобласць выявы",
+  "lightbox.expand": "Павялічыць бачную вобласць выявы",
+  "lightbox.next": "Далей",
+  "lightbox.previous": "Назад",
+  "limited_account_hint.action": "Усе роўна паказваць профіль",
+  "limited_account_hint.title": "Гэты профіль быў схаваны мадэратарамі",
+  "lists.account.add": "Дадаць да спісу",
+  "lists.account.remove": "Выдаліць са спісу",
+  "lists.delete": "Выдаліць спіс",
+  "lists.edit": "Рэдагаваць спіс",
+  "lists.edit.submit": "Змяніць назву",
+  "lists.new.create": "Дадаць спіс",
+  "lists.new.title_placeholder": "Назва новага спіса",
+  "lists.replies_policy.followed": "Любы карыстальнік, за якім вы падпісаліся",
+  "lists.replies_policy.list": "Удзельнікі гэтага спісу",
+  "lists.replies_policy.none": "Нікога",
+  "lists.replies_policy.title": "Паказаць адказы да:",
+  "lists.search": "Шукайце сярод людзей, на якіх Вы падпісаны",
+  "lists.subheading": "Вашыя спісы",
+  "load_pending": "{count, plural, one {# новы элемент} few {# новыя элементы} many {# новых элементаў} other {# новых элементаў}}",
+  "loading_indicator.label": "Загрузка...",
+  "media_gallery.toggle_visible": "{number, plural, one {Схаваць відарыс} other {Схаваць відарысы}}",
+  "missing_indicator.label": "Не знойдзена",
+  "missing_indicator.sublabel": "Гэты рэсурс не магчыма знайсці",
+  "moved_to_account_banner.text": "Ваш уліковы запіс {disabledAccount} зараз адключаны таму што вы перанесены на {movedToAccount}.",
+  "mute_modal.duration": "Працягласць",
+  "mute_modal.hide_notifications": "Схаваць апавяшчэнні ад гэтага карыстальніка?",
+  "mute_modal.indefinite": "Бестэрмінова",
+  "navigation_bar.about": "Пра нас",
+  "navigation_bar.blocks": "Заблакаваныя карыстальнікі",
+  "navigation_bar.bookmarks": "Закладкі",
+  "navigation_bar.community_timeline": "Лакальная стужка",
+  "navigation_bar.compose": "Стварыць новы допіс",
+  "navigation_bar.direct": "Асабістыя паведамленні",
+  "navigation_bar.discover": "Даведайцесь",
+  "navigation_bar.domain_blocks": "Заблакіраваныя дамены",
+  "navigation_bar.edit_profile": "Рэдагаваць профіль",
+  "navigation_bar.explore": "Агляд",
+  "navigation_bar.favourites": "Упадабаныя",
+  "navigation_bar.filters": "Ігнараваныя словы",
+  "navigation_bar.follow_requests": "Запыты на падпіску",
+  "navigation_bar.follows_and_followers": "Падпіскі і падпісчыкі",
+  "navigation_bar.lists": "Спісы",
+  "navigation_bar.logout": "Выйсці",
+  "navigation_bar.mutes": "Ігнараваныя карыстальнікі",
+  "navigation_bar.personal": "Асабістае",
+  "navigation_bar.pins": "Замацаваныя допісы",
+  "navigation_bar.preferences": "Параметры",
+  "navigation_bar.public_timeline": "Глабальная стужка",
+  "navigation_bar.search": "Пошук",
+  "navigation_bar.security": "Бяспека",
+  "not_signed_in_indicator.not_signed_in": "Вам трэба ўвайсці каб атрымаць доступ да гэтага рэсурсу.",
+  "notification.admin.report": "{name} паскардзіўся на {target}",
+  "notification.admin.sign_up": "{name} зарэгістраваўся",
+  "notification.favourite": "Ваш допіс упадабаны {name}",
+  "notification.follow": "{name} падпісаўся на вас",
+  "notification.follow_request": "{name} адправіў запыт на падпіску",
+  "notification.mention": "{name} згадаў вас",
+  "notification.own_poll": "Вашая апытанка скончылася",
+  "notification.poll": "Апытанне, дзе вы прынялі ўдзел, скончылася",
+  "notification.reblog": "{name} пашырыў ваш допіс",
+  "notification.status": "Новы допіс ад {name}",
+  "notification.update": "Допіс {name} адрэдагаваны",
+  "notifications.clear": "Ачысціць апавяшчэнні",
+  "notifications.clear_confirmation": "Вы ўпэўнены, што жадаеце назаўсёды сцерці ўсё паведамленні?",
+  "notifications.column_settings.admin.report": "Новыя скаргі:",
+  "notifications.column_settings.admin.sign_up": "Новыя ўваходы:",
+  "notifications.column_settings.alert": "Апавяшчэнні на працоўным стале",
+  "notifications.column_settings.favourite": "Упадабаныя:",
+  "notifications.column_settings.filter_bar.advanced": "Паказваць усе катэгорыі",
+  "notifications.column_settings.filter_bar.category": "Панэль хуткай фільтрацыі",
+  "notifications.column_settings.filter_bar.show_bar": "Паказваць панэль фільтрацыі",
+  "notifications.column_settings.follow": "Новыя падпісчыкі:",
+  "notifications.column_settings.follow_request": "Новыя запыты на падпіску:",
+  "notifications.column_settings.mention": "Згадванні:",
+  "notifications.column_settings.poll": "Вынікі апытання:",
+  "notifications.column_settings.push": "Push-апавяшчэнні",
+  "notifications.column_settings.reblog": "Пашырэнні:",
+  "notifications.column_settings.show": "Паказваць у слупку",
+  "notifications.column_settings.sound": "Прайграваць гук",
+  "notifications.column_settings.status": "Новыя допісы:",
+  "notifications.column_settings.unread_notifications.category": "Непрачытаныя апавяшчэнні",
+  "notifications.column_settings.unread_notifications.highlight": "Вылучыць непрачытаныя апавяшчэнні",
+  "notifications.column_settings.update": "Праўкі:",
+  "notifications.filter.all": "Усе",
+  "notifications.filter.boosts": "Пашырэнні",
+  "notifications.filter.favourites": "Упадабаныя",
+  "notifications.filter.follows": "Падпісаны на",
+  "notifications.filter.mentions": "Згадванні",
+  "notifications.filter.polls": "Вынікі апытання",
+  "notifications.filter.statuses": "Навіны ад людзей, на якіх вы падпісаны",
+  "notifications.grant_permission": "Дазволіць.",
+  "notifications.group": "{count} Апавяшчэнняў",
+  "notifications.mark_as_read": "Пазначыць усе апавяшчэнні як прачытаныя",
+  "notifications.permission_denied": "Апавяшчэнні на працоўным стале недаступныя з-за папярэдне адхіленага запыта праў браўзера",
+  "notifications.permission_denied_alert": "Апавяшчэнні на працоўным стале не могуць быць уключаныя, з-за таго што запыт браўзера быў адхілены",
+  "notifications.permission_required": "Апавяшчэнні на працоўным стале недаступныя, з-за таго што неабходны дазвол не быў дадзены.",
+  "notifications_permission_banner.enable": "Уключыць апавяшчэнні на працоўным стале",
+  "notifications_permission_banner.how_to_control": "Каб атрымліваць апавяшчэнні, калі Mastodon не адкрыты, уключыце апавяшчэнні працоўнага стала. Вы зможаце дакладна кантраляваць, якія падзеі будуць ствараць апавяшчэнні з дапамогай {icon} кнопкі, як толькі яны будуць уключаны.",
+  "notifications_permission_banner.title": "Не прапусціце нічога",
+  "picture_in_picture.restore": "Вярніце назад",
+  "poll.closed": "Закрыта",
+  "poll.refresh": "Абнавіць",
+  "poll.total_people": "{count, plural, one {# чалавек} few {# чалавекі} many {# чалавек} other {# чалавека}}",
+  "poll.total_votes": "{count, plural, one {# голас} few {# галасы} many {# галасоў} other {# голасу}}",
+  "poll.vote": "Прагаласаваць",
+  "poll.voted": "Вы прагаласавалі за гэты адказ",
+  "poll.votes": "{votes, plural, one {# голас} few {# галасы} many {# галасоў} other {# голасу}}",
+  "poll_button.add_poll": "Дадаць апытанне",
+  "poll_button.remove_poll": "Выдаліць апытанне",
+  "privacy.change": "Змяніць прыватнасць допісу",
+  "privacy.direct.long": "Паказаць толькі згаданым карыстальнікам",
+  "privacy.direct.short": "Толькі згаданыя людзі",
+  "privacy.private.long": "Паказаць толькі падпісчыкам",
+  "privacy.private.short": "Толькі для падпісчыкаў",
+  "privacy.public.long": "Бачны для ўсіх",
+  "privacy.public.short": "Публічны",
+  "privacy.unlisted.long": "Бачна для ўсіх, але не праз магчымасці агляду",
+  "privacy.unlisted.short": "Не ў стужках",
+  "privacy_policy.last_updated": "Адноўлена {date}",
+  "privacy_policy.title": "Палітыка канфідэнцыйнасці",
+  "refresh": "Абнавiць",
+  "regeneration_indicator.label": "Загрузка…",
+  "regeneration_indicator.sublabel": "Пачакайце, рыхтуем вашу стужку!",
+  "relative_time.days": "{number} д",
+  "relative_time.full.days": "{number, plural, one {# дзень} few {# дні} many {# дзён} other {# дня}} таму",
+  "relative_time.full.hours": "{number, plural, one {# гадзіна} few {# гадзіны} many {# гадзін} other {# гадзіны}} таму",
+  "relative_time.full.just_now": "толькі што",
+  "relative_time.full.minutes": "{number, plural, one {# хвіліна} few {# хвіліны} many {# хвілін} other {# хвіліны}} таму",
+  "relative_time.full.seconds": "{number, plural, one {# секунда} few {# секунды} many {# секунд} other {# секунды}} таму",
+  "relative_time.hours": "{number} гадз",
+  "relative_time.just_now": "цяпер",
+  "relative_time.minutes": "{number} хв",
+  "relative_time.seconds": "{number} с",
+  "relative_time.today": "сёння",
+  "reply_indicator.cancel": "Скасаваць",
+  "report.block": "Заблакіраваць",
+  "report.block_explanation": "Вы перастанеце бачыць допісы гэтага карыстальніка. Ён не зможа сачыць за вамі і бачыць вашы допісы. Ён зможа зразумець, што яго заблакіравалі.",
+  "report.categories.other": "Іншае",
+  "report.categories.spam": "Спам",
+  "report.categories.violation": "Змест парушае адно ці некалькі правілаў сервера",
+  "report.category.subtitle": "Выберыце найлепшае падабенства",
+  "report.category.title": "Паведаміце нам, што адбываецца з гэтым {type}",
+  "report.category.title_account": "профіль",
+  "report.category.title_status": "допіс",
+  "report.close": "Гатова",
+  "report.comment.title": "Што-небудзь яшчэ, што нам неабходна ведаць?",
+  "report.forward": "Пераслаць на {target}",
+  "report.forward_hint": "Гэты ўліковы запіс з іншага сервера. Даслаць ананімную копію скаргі і туды?",
+  "report.mute": "Ігнараваць",
+  "report.mute_explanation": "Вы не будзеце бачыць допісы гэтага карыстальніка. Ён усё яшчэ зможа сачыць за вамі і бачыць вашы допісы, не ведаючы, што яго ігнаруюць.",
+  "report.next": "Далей",
+  "report.placeholder": "Дадатковы каментар",
+  "report.reasons.dislike": "Мне ён не падабаецца",
+  "report.reasons.dislike_description": "Гэта тое, што Вы не хочаце бачыць",
+  "report.reasons.other": "Гэта нешта іншае",
+  "report.reasons.other_description": "Гэта праблема не падпадае пад іншыя катэгорыі",
+  "report.reasons.spam": "Гэта спам",
+  "report.reasons.spam_description": "Шкодныя спасылкі, несапраўдныя ўзаемадзеянні, або адказы, што паўтараюцца",
+  "report.reasons.violation": "Гэта парушае правілы сервера",
+  "report.reasons.violation_description": "Вам вядома, што гэта парушае пэўныя правілы",
+  "report.rules.subtitle": "Абярыце ўсе варыянты, што падыходзяць",
+  "report.rules.title": "Якія правілы былі парушаны?",
+  "report.statuses.subtitle": "Абярыце ўсе пункты, што падыходзяць",
+  "report.statuses.title": "Ці ёсць допісы, каб падмацаваць гэтую скаргу?",
+  "report.submit": "Адправіць",
+  "report.target": "Скарга на {target}",
+  "report.thanks.take_action": "Вось вашыя варыянты кантролю над тым, што вы бачыце в Mastodon:",
+  "report.thanks.take_action_actionable": "Пакуль мы разглядаем яе, вы можаце распачаць дзеянні супраць @{name}:",
+  "report.thanks.title": "Ці хочаце вы бачыць гэта?",
+  "report.thanks.title_actionable": "Дзякуем за зварот, мы разбяромся з гэтым.",
+  "report.unfollow": "Адпісацца ад @{name}",
+  "report.unfollow_explanation": "Вы падпісаныя на гэты ўліковы запіс. Каб не бачыць допісы з яго ў вашай стужцы, адпішыцеся.",
+  "report_notification.attached_statuses": "{count, plural, one {{count} допіс прымацаваны} few {{count} допісы прымацаваны} many {{count} допісаў прымацавана} other {{count} допісу прымацавана}}",
+  "report_notification.categories.other": "Іншае",
+  "report_notification.categories.spam": "Спам",
+  "report_notification.categories.violation": "Парушэнне правілаў",
+  "report_notification.open": "Адкрыць скаргу",
+  "search.placeholder": "Пошук",
+  "search.search_or_paste": "Увядзіце спасылку або пошукавы запыт",
+  "search_popout.search_format": "Рэжым прасунутага пошуку",
+  "search_popout.tips.full_text": "Тэкставы пошук пакажа допісы, якія вы напісалі, упадабалі, пашырылі, альбо тыя, у якіх вас згадалі, а таксама адпаведныя імёны карыстальнікаў і тэгі.",
+  "search_popout.tips.hashtag": "хэштэг",
+  "search_popout.tips.status": "допіс",
+  "search_popout.tips.text": "Тэкставы пошук знаходзіць адпаведныя імёны карыстальнікаў, юзернеймы і хэштэгі",
+  "search_popout.tips.user": "карыстальнік",
+  "search_results.accounts": "Людзі",
+  "search_results.all": "Усё",
+  "search_results.hashtags": "Хэштэгі",
+  "search_results.nothing_found": "Па дадзенаму запыту нічога не знойдзена",
+  "search_results.statuses": "Допісы",
+  "search_results.statuses_fts_disabled": "Пошук публікацый па зместу не ўключаны на гэтым серверы Mastodon.",
+  "search_results.title": "Пошук {q}",
+  "search_results.total": "{count, number} {count, plural, one {вынік} few {вынікі} many {вынікаў} other {выніку}}",
+  "server_banner.about_active_users": "Людзі, якія карыстаюцца гэтым сервера на працягу апошніх 30 дзён (Штомесячна Актыўныя Карыстальнікі)",
+  "server_banner.active_users": "актыўныя карыстальнікі",
+  "server_banner.administered_by": "Адміністратар:",
+  "server_banner.introduction": "{domain} ёсць часткай дэцэнтралізаванай сацыяльнай сеткі ад {mastodon}.",
+  "server_banner.learn_more": "Даведацца больш",
+  "server_banner.server_stats": "Статыстыка сервера:",
+  "sign_in_banner.create_account": "Стварыць уліковы запіс",
+  "sign_in_banner.sign_in": "Увайсці",
+  "sign_in_banner.text": "Увайдзіце, каб падпісацца на людзей і тэгі, каб адказваць на допісы, дзяліцца імі і падабаць іх, альбо кантактаваць з вашага ўліковага запісу на іншым серверы.",
+  "status.admin_account": "Адкрыць інтэрфейс мадэратара для @{name}",
+  "status.admin_status": "Адкрыць гэты допіс у інтэрфейсе мадэрацыі",
+  "status.block": "Заблакаваць @{name}",
+  "status.bookmark": "Закладка",
+  "status.cancel_reblog_private": "Прыбраць",
+  "status.cannot_reblog": "Гэты пост нельга пашырыць",
+  "status.copy": "Скапіраваць спасылку на допіс",
+  "status.delete": "Выдаліць",
+  "status.detailed_status": "Дэтальны агляд размовы",
+  "status.direct": "Асабістае паведамленне @{name}",
+  "status.edit": "Рэдагаваць",
+  "status.edited": "Адрэдагавана {date}",
+  "status.edited_x_times": "Рэдагавана {count, plural, one {{count} раз} few {{count} разы} many {{count} разоў} other {{count} разу}}",
+  "status.embed": "Убудаваць",
+  "status.favourite": "Упадабаць",
+  "status.filter": "Фільтраваць гэты допіс",
+  "status.filtered": "Адфільтравана",
+  "status.hide": "Схаваць допіс",
+  "status.history.created": "створана {name} {date}",
+  "status.history.edited": "адрэдагавана {name} {date}",
+  "status.load_more": "Загрузіць яшчэ",
+  "status.media_hidden": "Медыя схавана",
+  "status.mention": "Згадаць @{name}",
+  "status.more": "Больш",
+  "status.mute": "Ігнараваць @{name}",
+  "status.mute_conversation": "Ігнараваць размову",
+  "status.open": "Разгарнуць гэты допіс",
+  "status.pin": "Замацаваць у профілі",
+  "status.pinned": "Замацаваны допіс",
+  "status.read_more": "Чытаць болей",
+  "status.reblog": "Пашырыць",
+  "status.reblog_private": "Пашырыць з першапачатковай бачнасцю",
+  "status.reblogged_by": "{name} пашырыў(-ла)",
+  "status.reblogs.empty": "Гэты допіс яшчэ ніхто не пашырыў. Калі гэта адбудзецца, гэтых людзей будзе бачна тут.",
+  "status.redraft": "Выдаліць і паправіць",
+  "status.remove_bookmark": "Выдаліць закладку",
+  "status.replied_to": "Адказаў {name}",
+  "status.reply": "Адказаць",
+  "status.replyAll": "Адказаць у ланцугу",
+  "status.report": "Паскардзіцца на @{name}",
+  "status.sensitive_warning": "Уражвальны змест",
+  "status.share": "Абагуліць",
+  "status.show_filter_reason": "Усё адно паказаць",
+  "status.show_less": "Паказаць меньш",
+  "status.show_less_all": "Згарнуць усё",
+  "status.show_more": "Паказаць болей",
+  "status.show_more_all": "Разгарнуць усё",
+  "status.show_original": "Паказаць арыгінал",
+  "status.translate": "Перакласці",
+  "status.translated_from_with": "Перакладзена з {lang} з дапамогай {provider}",
+  "status.uncached_media_warning": "Недаступна",
+  "status.unmute_conversation": "Не ігнараваць размову",
+  "status.unpin": "Адмацаваць ад профілю",
+  "subscribed_languages.lead": "Толькі допісы ў абраных мовах будуць паказвацца ў вашых стужках пасля змены. Не абірайце нічога, каб бачыць допісы на ўсіх мовах.",
+  "subscribed_languages.save": "Захаваць змены",
+  "subscribed_languages.target": "Змяніць мовы падпіскі для {target}",
+  "suggestions.dismiss": "Адхіліць прапанову",
+  "suggestions.header": "Гэта можа Вас зацікавіць…",
+  "tabs_bar.federated_timeline": "Глабальная",
+  "tabs_bar.home": "Галоўная",
+  "tabs_bar.local_timeline": "Мясцовае",
+  "tabs_bar.notifications": "Апавяшчэнні",
+  "time_remaining.days": "{number, plural, one {застаўся # дзень} few {засталося # дні} many {засталося # дзён} other {засталося # дня}}",
+  "time_remaining.hours": "{number, plural, one {засталася # гадзіна} few {засталося # гадзіны} many {засталося # гадзін} other {засталося # гадзіны}}",
+  "time_remaining.minutes": "{number, plural, one {засталася # хвіліна} few {засталося # хвіліны} many {засталося # хвілін} other {засталося # хвіліны}}",
+  "time_remaining.moments": "Засталося некалькі секунд",
+  "time_remaining.seconds": "{number, plural, one {засталася # секунда} few {засталося # секунды} many {засталося # секунд} other {засталося # секунды}}",
+  "timeline_hint.remote_resource_not_displayed": "{resource} з іншых сервераў не адлюстроўваецца.",
+  "timeline_hint.resources.followers": "Падпісчыкі",
+  "timeline_hint.resources.follows": "Падпісаны на",
+  "timeline_hint.resources.statuses": "Старэйшыя допісы",
+  "trends.counter_by_accounts": "{count, plural, one {{counter} чалавек} few {{counter} чалавекі} many {{counter} людзей} other {{counter} чалавек}} за {days, plural, one {{days} апошні дзень} few {{days} апошнія дні} many {{days} апошніх дзён} other {{days} апошніх дзён}}",
+  "trends.trending_now": "Актуальнае",
+  "ui.beforeunload": "Ваш чарнавік знішчыцца калі вы пакінеце Mastodon.",
+  "units.short.billion": "{count} млрд.",
+  "units.short.million": "{count} міл.",
+  "units.short.thousand": "{count} тыс.",
+  "upload_area.title": "Перацягніце сюды для загрузкі",
+  "upload_button.label": "Дадаць выяву, відэа- ці аўдыяфайл",
+  "upload_error.limit": "Перавышана колькасць файлаў.",
+  "upload_error.poll": "Немагчыма прымацаваць файл да апытання.",
+  "upload_form.audio_description": "Апісанне для людзей з парушэннямі слыху",
+  "upload_form.description": "Апісаць для людзей са слабым зрокам",
+  "upload_form.description_missing": "Апісанне адсутнічае",
+  "upload_form.edit": "Рэдагаваць",
+  "upload_form.thumbnail": "Змяніць мініяцюру",
+  "upload_form.undo": "Выдаліць",
+  "upload_form.video_description": "Апісанне для людзей з парушэннямі зроку і слыху",
+  "upload_modal.analyzing_picture": "Аналіз выявы…",
+  "upload_modal.apply": "Ужыць",
+  "upload_modal.applying": "Ужываецца…",
+  "upload_modal.choose_image": "Выбраць выяву",
+  "upload_modal.description_placeholder": "У рудога вераб’я ў сховішчы пад фатэлем ляжаць нейкія гаючыя зёлкі",
+  "upload_modal.detect_text": "Распазнаць тэкст з выявы",
+  "upload_modal.edit_media": "Рэдагаваць медыя",
+  "upload_modal.hint": "Націсніце ці перацягніце кружок на перадпрагляд каб выбраць фокусную кропку, што заўсёды будзе бачна на мініяцюрах.",
+  "upload_modal.preparing_ocr": "Падрыхтоўка OCR…",
+  "upload_modal.preview_label": "Перадпрагляд ({ratio})",
+  "upload_progress.label": "Запампоўванне...",
+  "upload_progress.processing": "Апрацоўка…",
+  "video.close": "Закрыць відэа",
+  "video.download": "Спампаваць файл",
+  "video.exit_fullscreen": "Выйсці з поўнаэкраннага рэжыму",
+  "video.expand": "Разгарнуць відэа",
+  "video.fullscreen": "Увесь экран",
+  "video.hide": "Схаваць відэа",
+  "video.mute": "Адключыць гук",
+  "video.pause": "Паўза",
+  "video.play": "Прайграць",
+  "video.unmute": "Уключыць гук"
+}
diff --git a/app/javascript/mastodon/locales/bg.json b/app/javascript/mastodon/locales/bg.json
index 58a48f4ae..06d3386a8 100644
--- a/app/javascript/mastodon/locales/bg.json
+++ b/app/javascript/mastodon/locales/bg.json
@@ -3,10 +3,10 @@
   "about.contact": "За контакти:",
   "about.disclaimer": "Mastodon е безплатен софтуер с отворен изходен код и търговска марка Mastodon gGmbH.",
   "about.domain_blocks.no_reason_available": "Няма налична причина",
-  "about.domain_blocks.preamble": "Mastodon generally allows you to view content from and interact with users from any other server in the fediverse. These are the exceptions that have been made on this particular server.",
-  "about.domain_blocks.silenced.explanation": "You will generally not see profiles and content from this server, unless you explicitly look it up or opt into it by following.",
+  "about.domain_blocks.preamble": "Mastodon обикновено позволява да разглеждате съдържание и да взаимодействате с други потребители от всякакви сървъри във Федивърс. Има изключения, направени конкретно за този сървър.",
+  "about.domain_blocks.silenced.explanation": "Обикновено няма да виждате профили и съдържание, освен ако изрично не го потърсите или се включете в него, следвайки го.",
   "about.domain_blocks.silenced.title": "Ограничено",
-  "about.domain_blocks.suspended.explanation": "Никакви данни от този сървър няма да се обработват, съхранявани или обменяни, правещи невъзможно всяко взаимодействие или комуникация с потребители от тези сървъри.",
+  "about.domain_blocks.suspended.explanation": "Никакви данни от този сървър няма да се обработват, съхраняват или обменят, правещи невъзможно всяко взаимодействие или комуникация с потребители от тези сървъри.",
   "about.domain_blocks.suspended.title": "Спряно",
   "about.not_available": "Тази информация не е била направена налична на този сървър.",
   "about.powered_by": "Децентрализирана социална мрежа, захранвана от {mastodon}",
@@ -19,16 +19,16 @@
   "account.block_domain": "Блокиране на домейн {domain}",
   "account.blocked": "Блокирани",
   "account.browse_more_on_origin_server": "Разглеждане на още в първообразния профил",
-  "account.cancel_follow_request": "Withdraw follow request",
+  "account.cancel_follow_request": "Оттегляне на заявката за последване",
   "account.direct": "Директно съобщение до @{name}",
   "account.disable_notifications": "Сприране на известия при публикуване от @{name}",
   "account.domain_blocked": "Блокиран домейн",
   "account.edit_profile": "Редактиране на профила",
-  "account.enable_notifications": "Уведомявайте ме, когато @{name} публикува",
+  "account.enable_notifications": "Известявайте ме при публикация от {name}",
   "account.endorse": "Характеристика на профила",
   "account.featured_tags.last_status_at": "Последна публикация на {date}",
   "account.featured_tags.last_status_never": "Няма публикации",
-  "account.featured_tags.title": "{name}'s featured hashtags",
+  "account.featured_tags.title": "Главни хаштагове на {name}",
   "account.follow": "Последване",
   "account.followers": "Последователи",
   "account.followers.empty": "Още никой не следва потребителя.",
@@ -40,12 +40,12 @@
   "account.go_to_profile": "Към профила",
   "account.hide_reblogs": "Скриване на споделяния от @{name}",
   "account.joined_short": "Присъединени",
-  "account.languages": "Change subscribed languages",
+  "account.languages": "Смяна на показваните езици",
   "account.link_verified_on": "Собствеността върху тази връзка е проверена на {date}",
   "account.locked_info": "Състоянието за поверителността на акаунта е зададено заключено. Собственикът преглежда ръчно от кого може да се следва.",
   "account.media": "Мултимедия",
   "account.mention": "Споменаване на @{name}",
-  "account.moved_to": "{name} has indicated that their new account is now:",
+  "account.moved_to": "Лицето {name} посочи, че новият му акаунт е вече:",
   "account.mute": "Заглушаване на @{name}",
   "account.mute_notifications": "Заглушаване на известия от @{name}",
   "account.muted": "Заглушено",
@@ -121,8 +121,8 @@
   "column_header.unpin": "Разкачане",
   "column_subheading.settings": "Настройки",
   "community.column_settings.local_only": "Само локално",
-  "community.column_settings.media_only": "Media only",
-  "community.column_settings.remote_only": "Само дистанционно",
+  "community.column_settings.media_only": "Само мултимедия",
+  "community.column_settings.remote_only": "Само отдалечено",
   "compose.language.change": "Смяна на езика",
   "compose.language.search": "Търсене на езици...",
   "compose_form.direct_message_warning_learn_more": "Още информация",
@@ -138,13 +138,14 @@
   "compose_form.poll.switch_to_multiple": "Промяна на анкетата, за да се позволят множество възможни избора",
   "compose_form.poll.switch_to_single": "Промяна на анкетата, за да се позволи един възможен избор",
   "compose_form.publish": "Публикуване",
+  "compose_form.publish_form": "Публикуване",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Запазване на промените",
   "compose_form.sensitive.hide": "{count, plural, one {Маркиране на мултимедията като деликатна} other {Маркиране на мултимедиите като деликатни}}",
   "compose_form.sensitive.marked": "{count, plural, one {Мултимедията е маркирана като деликатна} other {Мултимедиите са маркирани като деликатни}}",
   "compose_form.sensitive.unmarked": "{count, plural, one {Мултимедията не е маркирана като деликатна} other {Мултимедиите не са маркирани като деликатни}}",
-  "compose_form.spoiler.marked": "Текстът е скрит зад предупреждение",
-  "compose_form.spoiler.unmarked": "Текстът не е скрит",
+  "compose_form.spoiler.marked": "Премахване на предупреждението за съдържание",
+  "compose_form.spoiler.unmarked": "Добавяне на предупреждение за съдържание",
   "compose_form.spoiler_placeholder": "Тук напишете предупреждението си",
   "confirmation_modal.cancel": "Отказ",
   "confirmations.block.block_and_report": "Блокиране и докладване",
@@ -163,7 +164,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": "Are you sure you want to delete this status and re-draft it? You will lose all replies, boosts and favourites to it.",
@@ -180,7 +181,7 @@
   "directory.federated": "От познат федивърс",
   "directory.local": "Само от {domain}",
   "directory.new_arrivals": "Новодошли",
-  "directory.recently_active": "Наскоро активни",
+  "directory.recently_active": "Наскоро дейни",
   "disabled_account_banner.account_settings": "Настройки на акаунта",
   "disabled_account_banner.text": "Вашият акаунт {disabledAccount} сега е изключен.",
   "dismissable_banner.community_timeline": "Ето най-скорошните публични публикации от хора, чиито акаунти са разположени в {domain}.",
@@ -210,13 +211,13 @@
   "empty_column.account_timeline": "Тук няма публикации!",
   "empty_column.account_unavailable": "Няма достъп до профила",
   "empty_column.blocks": "Още не сте блокирали никакви потребители.",
-  "empty_column.bookmarked_statuses": "Все още нямате отметнати публикации. Когато отметнете някоя, тя ще се покаже тук.",
+  "empty_column.bookmarked_statuses": "Още не сте отметнали публикации. Отметвайки някоя, то тя ще се покаже тук.",
   "empty_column.community": "Местна часова ос е празна. Напишете нещо публично, за да завъртите нещата!",
-  "empty_column.direct": "Все още нямате лични съобщения. Когато изпратите или получите ще се покаже тук.",
+  "empty_column.direct": "Още нямате никакви директни съобщения. Изпращайки или получавайки, то те ще се покажат тук.",
   "empty_column.domain_blocks": "Още няма блокирани домейни.",
   "empty_column.explore_statuses": "Няма нищо популярно в момента. Проверете пак по-късно!",
-  "empty_column.favourited_statuses": "Все още нямате любими публикации. Когато поставите някоя в любими, тя ще се покаже тук.",
-  "empty_column.favourites": "Все още никой не е поставил тази публикация в любими. Когато някой го направи, ще се покаже тук.",
+  "empty_column.favourited_statuses": "Още нямате любими публикации. Поставяйки някоя в любими, то тя ще се покаже тук.",
+  "empty_column.favourites": "Още никой не е поставил публикацията в любими. Когато някой го направи, този човек ще се покаже тук.",
   "empty_column.follow_recommendations": "Изглежда, че няма генерирани предложения за вас. Можете да опитате да търсите за хора, които знаете или да разгледате популярните тагове.",
   "empty_column.follow_requests": "Все още нямате заявки за последване. Когато получите такава, тя ще се покаже тук.",
   "empty_column.hashtag": "Още няма нищо в този хаштаг.",
@@ -234,19 +235,15 @@
   "errors.unexpected_crash.copy_stacktrace": "Копиране на stacktrace-а в клипборда",
   "errors.unexpected_crash.report_issue": "Сигнал за проблем",
   "explore.search_results": "Резултати от търсенето",
-  "explore.suggested_follows": "За вас",
   "explore.title": "Разглеждане",
-  "explore.trending_links": "Новини",
-  "explore.trending_statuses": "Публикации",
-  "explore.trending_tags": "Хаштагове",
-  "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
-  "filter_modal.added.context_mismatch_title": "Несъвпадение на контекста!",
-  "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
+  "filter_modal.added.context_mismatch_explanation": "Тази категория филтър не е приложима към контекста, в който достъпвате тази публикация. Ако желаете да филтрирате публикациите в този контекст, трябва да изберете друг филтър.",
+  "filter_modal.added.context_mismatch_title": "Несъвпадащ контекст!",
+  "filter_modal.added.expired_explanation": "Валидността на тази категория филтър е изтекла. Сменете срока на валидност, за да я приложите.",
   "filter_modal.added.expired_title": "Изтекъл филтър!",
-  "filter_modal.added.review_and_configure": "To review and further configure this filter category, go to the {settings_link}.",
+  "filter_modal.added.review_and_configure": "За да прегледате и нагласите тази категория на филтъра, то отидете на {settings_link}.",
   "filter_modal.added.review_and_configure_title": "Настройки на филтъра",
   "filter_modal.added.settings_link": "страница с настройки",
-  "filter_modal.added.short_explanation": "This post has been added to the following filter category: {title}.",
+  "filter_modal.added.short_explanation": "Тази публикация е добавена към следната категория на филтъра: {title}.",
   "filter_modal.added.title": "Филтърът е добавен!",
   "filter_modal.select_filter.context_mismatch": "не е приложимо за този контекст",
   "filter_modal.select_filter.expired": "изтекло",
@@ -257,7 +254,7 @@
   "filter_modal.title.status": "Филтриране на публ.",
   "follow_recommendations.done": "Готово",
   "follow_recommendations.heading": "Следвайте хора, от които харесвате да виждате публикации! Ето някои предложения.",
-  "follow_recommendations.lead": "Публикациите от хората, които следвате, ще се показват в хронологично в началния ви инфопоток. Не се страхувайте, че ще сгрешите, по всяко време много лесно може да спрете да ги следвате!",
+  "follow_recommendations.lead": "Съобщения от хора, които следвате, ще се показват в хронологичен ред във вашия основен инфопоток. Не се страхувайте, че ще сгрешите, по всяко време много лесно можете да спрете да ги следвате!",
   "follow_request.authorize": "Упълномощаване",
   "follow_request.reject": "Отхвърляне",
   "follow_requests.unlocked_explanation": "Въпреки че акаунтът ви не е заключен, служителите на {domain} помислиха, че може да искате да преглеждате ръчно заявките за последване на тези профили.",
@@ -286,17 +283,17 @@
   "home.column_settings.show_replies": "Показване на отговори",
   "home.hide_announcements": "Скриване на оповестявания",
   "home.show_announcements": "Показване на оповестявания",
-  "interaction_modal.description.favourite": "With an account on Mastodon, you can favourite this post to let the author know you appreciate it and save it for later.",
-  "interaction_modal.description.follow": "With an account on Mastodon, you can follow {name} to receive their posts in your home feed.",
-  "interaction_modal.description.reblog": "With an account on Mastodon, you can boost this post to share it with your own followers.",
-  "interaction_modal.description.reply": "With an account on Mastodon, you can respond to this post.",
+  "interaction_modal.description.favourite": "Ако имате профил в Mastodon, можете да маркирате публикация като любима, за да уведомите автора, че я оценявате, и да я запазите за по-късно.",
+  "interaction_modal.description.follow": "Ако имате профил в Mastodon, можете да последвате {name}, за да виждате постовете от този профил в своя основен инфопоток.",
+  "interaction_modal.description.reblog": "Ако имате профил в Mastodon, можете да споделите тази публикация със своите последователи.",
+  "interaction_modal.description.reply": "Ако имате профил в Mastodon, можете да добавите отговор към тази публикация.",
   "interaction_modal.on_another_server": "На различен сървър",
   "interaction_modal.on_this_server": "На този сървър",
   "interaction_modal.other_server_instructions": "Копипейстнете този URL адрес в полето за търсене на любимото си приложение Mastodon или мрежови интерфейс на своя Mastodon сървър.",
   "interaction_modal.preamble": "Откак Mastodon е децентрализиран, може да употребявате съществуващ акаунт, разположен на друг сървър на Mastodon или съвместима платформа, ако нямате акаунт на този сървър.",
   "interaction_modal.title.favourite": "Любими публикации на {name}",
   "interaction_modal.title.follow": "Последване на {name}",
-  "interaction_modal.title.reblog": "Boost {name}'s post",
+  "interaction_modal.title.reblog": "Споделете публикацията от {name}",
   "interaction_modal.title.reply": "Отговаряне на публикацията на {name}",
   "intervals.full.days": "{number, plural, one {# ден} other {# дни}}",
   "intervals.full.hours": "{number, plural, one {# час} other {# часа}}",
@@ -305,8 +302,8 @@
   "keyboard_shortcuts.blocked": "Отваряне на списъка с блокирани потребители",
   "keyboard_shortcuts.boost": "за споделяне",
   "keyboard_shortcuts.column": "Съсредоточение на колона",
-  "keyboard_shortcuts.compose": "за фокусиране на текстовото пространство за композиране",
-  "keyboard_shortcuts.description": "Описание",
+  "keyboard_shortcuts.compose": "Фокус на текстовото пространство за композиране",
+  "keyboard_shortcuts.description": "Опис",
   "keyboard_shortcuts.direct": "за отваряне на колоната с директни съобщения",
   "keyboard_shortcuts.down": "Преместване надолу в списъка",
   "keyboard_shortcuts.enter": "Отваряне на публикация",
@@ -327,13 +324,13 @@
   "keyboard_shortcuts.profile": "Отваряне на профила на автора",
   "keyboard_shortcuts.reply": "Отговаряне на публикация",
   "keyboard_shortcuts.requests": "Отваряне на списъка със заявки за последване",
-  "keyboard_shortcuts.search": "за фокусиране на търсенето",
+  "keyboard_shortcuts.search": "Фокус на лентата за търсене",
   "keyboard_shortcuts.spoilers": "за показване/скриване на ПС полето",
-  "keyboard_shortcuts.start": "за отваряне на колоната \"първи стъпки\"",
+  "keyboard_shortcuts.start": "Отваряне на колоната \"първи стъпки\"",
   "keyboard_shortcuts.toggle_hidden": "за показване/скриване на текст зад ПС",
   "keyboard_shortcuts.toggle_sensitivity": "Показване/скриване на мултимедията",
   "keyboard_shortcuts.toot": "Начало на нова публикация",
-  "keyboard_shortcuts.unfocus": "за дефокусиране на текстовото поле за композиране/търсене",
+  "keyboard_shortcuts.unfocus": "Разфокусиране на текстовото поле за композиране/търсене",
   "keyboard_shortcuts.up": "Преместване нагоре в списъка",
   "lightbox.close": "Затваряне",
   "lightbox.compress": "Свиване на полето за преглед на образи",
@@ -355,7 +352,7 @@
   "lists.replies_policy.title": "Показване на отговори на:",
   "lists.search": "Търсене измежду последваните",
   "lists.subheading": "Вашите списъци",
-  "load_pending": "{count, plural, one {# нов обект} other {# нови обекти}}",
+  "load_pending": "{count, plural, one {# нов елемент} other {# нови елемента}}",
   "loading_indicator.label": "Зареждане...",
   "media_gallery.toggle_visible": "Скриване на {number, plural, one {изображение} other {изображения}}",
   "missing_indicator.label": "Не е намерено",
@@ -387,7 +384,7 @@
   "navigation_bar.public_timeline": "Федеративна часова ос",
   "navigation_bar.search": "Търсене",
   "navigation_bar.security": "Сигурност",
-  "not_signed_in_indicator.not_signed_in": "Трябва да се регистрирате за достъп до този ресурс.",
+  "not_signed_in_indicator.not_signed_in": "Трябва да влезете за достъп до този ресурс.",
   "notification.admin.report": "{name} докладва {target}",
   "notification.admin.sign_up": "{name} се регистрира",
   "notification.favourite": "{name} направи любима ваша публикация",
@@ -444,7 +441,7 @@
   "poll.vote": "Гласуване",
   "poll.voted": "Гласувахте за този отговор",
   "poll.votes": "{votes, plural, one {# глас} other {# гласа}}",
-  "poll_button.add_poll": "Добавяне на анкета",
+  "poll_button.add_poll": "Анкетиране",
   "poll_button.remove_poll": "Премахване на анкета",
   "privacy.change": "Промяна на поверителността на публикация",
   "privacy.direct.long": "Видимо само за споменатите потребители",
@@ -453,13 +450,13 @@
   "privacy.private.short": "Само последователи",
   "privacy.public.long": "Видимо за всички",
   "privacy.public.short": "Публично",
-  "privacy.unlisted.long": "Visible for all, but opted-out of discovery features",
+  "privacy.unlisted.long": "Видимо за всички, но не чрез възможността за откриване",
   "privacy.unlisted.short": "Скрито",
   "privacy_policy.last_updated": "Последно осъвременяване на {date}",
   "privacy_policy.title": "Политика за поверителност",
   "refresh": "Опресняване",
   "regeneration_indicator.label": "Зареждане…",
-  "regeneration_indicator.sublabel": "Вашата начална емисия се подготвя!",
+  "regeneration_indicator.sublabel": "Вашият основен инфопоток се подготвя!",
   "relative_time.days": "{number}д.",
   "relative_time.full.days": "преди {number, plural, one {# ден} other {# дни}}",
   "relative_time.full.hours": "преди {number, plural, one {# час} other {# часа}}",
@@ -508,7 +505,7 @@
   "report.thanks.title": "Не искате ли да виждате това?",
   "report.thanks.title_actionable": "Благодарности за докладването, ще го прегледаме.",
   "report.unfollow": "Стоп на следването на @{name}",
-  "report.unfollow_explanation": "Последвали сте този акаунт. За да не виждате повече публикациите му в началния си инфоканал, то спрете да го следвате.",
+  "report.unfollow_explanation": "Последвали сте този акаунт. За да не виждате повече публикациите му в основния си инфопоток, то спрете да го следвате.",
   "report_notification.attached_statuses": "прикачено {count, plural, one {{count} публикация} other {{count} публикации}}",
   "report_notification.categories.other": "Друго",
   "report_notification.categories.spam": "Спам",
@@ -583,7 +580,7 @@
   "status.share": "Споделяне",
   "status.show_filter_reason": "Покажи въпреки това",
   "status.show_less": "Показване на по-малко",
-  "status.show_less_all": "Покажи по-малко за всички",
+  "status.show_less_all": "Показване на по-малко за всички",
   "status.show_more": "Показване на повече",
   "status.show_more_all": "Показване на повече за всички",
   "status.show_original": "Показване на първообраза",
@@ -592,7 +589,7 @@
   "status.uncached_media_warning": "Не е налично",
   "status.unmute_conversation": "Раззаглушаване на разговор",
   "status.unpin": "Разкачане от профила",
-  "subscribed_languages.lead": "Only posts in selected languages will appear on your home and list timelines after the change. Select none to receive posts in all languages.",
+  "subscribed_languages.lead": "Публикации само на избрани езици ще се явяват в началото ви и в списъка с часови оси след промяната. Изберете \"нищо\", за да получавате публикации на всички езици.",
   "subscribed_languages.save": "Запазване на промените",
   "subscribed_languages.target": "Смяна на езика за {target}",
   "suggestions.dismiss": "Отхвърляне на предложение",
@@ -624,7 +621,7 @@
   "upload_form.description": "Опишете за хора със зрително увреждане",
   "upload_form.description_missing": "Няма добавено описание",
   "upload_form.edit": "Редактиране",
-  "upload_form.thumbnail": "Промяна на миниизображението",
+  "upload_form.thumbnail": "Промяна на миниобраза",
   "upload_form.undo": "Изтриване",
   "upload_form.video_description": "Опишете за хора със загубен слух или зрително увреждане",
   "upload_modal.analyzing_picture": "Анализ на снимка…",
diff --git a/app/javascript/mastodon/locales/bn.json b/app/javascript/mastodon/locales/bn.json
index 766c60877..6e33bf789 100644
--- a/app/javascript/mastodon/locales/bn.json
+++ b/app/javascript/mastodon/locales/bn.json
@@ -1,6 +1,6 @@
 {
   "about.blocks": "Moderated servers",
-  "about.contact": "Contact:",
+  "about.contact": "যোগাযোগ:",
   "about.disclaimer": "Mastodon is free, open-source software, and a trademark of Mastodon gGmbH.",
   "about.domain_blocks.no_reason_available": "Reason not available",
   "about.domain_blocks.preamble": "Mastodon generally allows you to view content from and interact with users from any other server in the fediverse. These are the exceptions that have been made on this particular server.",
@@ -10,7 +10,7 @@
   "about.domain_blocks.suspended.title": "Suspended",
   "about.not_available": "This information has not been made available on this server.",
   "about.powered_by": "Decentralized social media powered by {mastodon}",
-  "about.rules": "Server rules",
+  "about.rules": "সার্ভারের নিয়মাবলী",
   "account.account_note_header": "বিজ্ঞপ্তি",
   "account.add_or_remove_from_list": "তালিকাতে যোগ বা অপসারণ করো",
   "account.badges.bot": "বট",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "একাধিক পছন্দ অনুমতি দেওয়ার জন্য পোল পরিবর্তন করুন",
   "compose_form.poll.switch_to_single": "একটি একক পছন্দের অনুমতি দেওয়ার জন্য পোল পরিবর্তন করুন",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "এই ছবি বা ভিডিওটি সংবেদনশীল হিসেবে চিহ্নিত করতে",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "স্টেকট্রেস ক্লিপবোর্ডে কপি করুন",
   "errors.unexpected_crash.report_issue": "সমস্যার প্রতিবেদন করুন",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/br.json b/app/javascript/mastodon/locales/br.json
index 5acbd0ecc..f967d3dfe 100644
--- a/app/javascript/mastodon/locales/br.json
+++ b/app/javascript/mastodon/locales/br.json
@@ -2,7 +2,7 @@
   "about.blocks": "Servijerioù habaskaet",
   "about.contact": "Darempred :",
   "about.disclaimer": "Mastodon zo ur meziant frank, open-source hag ur merk marilhet eus Mastodon gGmbH.",
-  "about.domain_blocks.no_reason_available": "Reason not available",
+  "about.domain_blocks.no_reason_available": "Abeg dihegerz",
   "about.domain_blocks.preamble": "Gant Mastodon e c'hellit gwelet danvez hag eskemm gant implijerien·ezed eus forzh peseurt servijer er fedibed peurliesañ. Setu an nemedennoù a zo bet graet evit ar servijer-mañ e-unan.",
   "about.domain_blocks.silenced.explanation": "Ne vo ket gwelet profiloù eus ar servijer-mañ ganeoc'h peurliesañ, nemet ma vefec'h o klask war o lec'h pe choazfec'h o heuliañ.",
   "about.domain_blocks.silenced.title": "Bevennet",
@@ -20,14 +20,14 @@
   "account.blocked": "Stanket",
   "account.browse_more_on_origin_server": "Furchal pelloc'h war ar profil orin",
   "account.cancel_follow_request": "Nullañ ar reked heuliañ",
-  "account.direct": "Kas ur c'hemennad eeun da @{name}",
+  "account.direct": "Kas ur c'hannad eeun da @{name}",
   "account.disable_notifications": "Paouez d'am c'hemenn pa vez embannet traoù gant @{name}",
   "account.domain_blocked": "Domani stanket",
   "account.edit_profile": "Kemmañ ar profil",
   "account.enable_notifications": "Ma c'hemenn pa vez embannet traoù gant @{name}",
   "account.endorse": "Lakaat war-wel war ar profil",
-  "account.featured_tags.last_status_at": "Kannad diwezhañ : {date}",
-  "account.featured_tags.last_status_never": "Kannad ebet",
+  "account.featured_tags.last_status_at": "Toud diwezhañ : {date}",
+  "account.featured_tags.last_status_never": "Toud ebet",
   "account.featured_tags.title": "Penngerioù-klik {name}",
   "account.follow": "Heuliañ",
   "account.followers": "Tud koumanantet",
@@ -47,16 +47,16 @@
   "account.mention": "Menegiñ @{name}",
   "account.moved_to": "Gant {name} eo bet merket e oa bremañ h·e gont nevez :",
   "account.mute": "Kuzhat @{name}",
-  "account.mute_notifications": "Kuzh kemennoù a-berzh @{name}",
+  "account.mute_notifications": "Kuzhat kemennoù a-berzh @{name}",
   "account.muted": "Kuzhet",
-  "account.open_original_page": "Open original page",
-  "account.posts": "Kannadoù",
-  "account.posts_with_replies": "Kannadoù ha respontoù",
+  "account.open_original_page": "Digeriñ ar bajenn orin",
+  "account.posts": "Toudoù",
+  "account.posts_with_replies": "Toudoù ha respontoù",
   "account.report": "Disklêriañ @{name}",
   "account.requested": "O c'hortoz an asant. Klikit evit nullañ ar goulenn heuliañ",
   "account.share": "Skignañ profil @{name}",
   "account.show_reblogs": "Diskouez skignadennoù @{name}",
-  "account.statuses_counter": "{count, plural, one {{counter} C'hannad} two {{counter} Gannad} other {{counter} a Gannadoù}}",
+  "account.statuses_counter": "{count, plural, one {{counter} Toud} two {{counter} Doud} other {{counter} a Doudoù}}",
   "account.unblock": "Diverzañ @{name}",
   "account.unblock_domain": "Diverzañ an domani {domain}",
   "account.unblock_short": "Distankañ",
@@ -66,8 +66,8 @@
   "account.unmute_notifications": "Diguzhat kemennoù a-berzh @{name}",
   "account.unmute_short": "Diguzhat",
   "account_note.placeholder": "Klikit evit ouzhpennañ un notenn",
-  "admin.dashboard.daily_retention": "User retention rate by day after sign-up",
-  "admin.dashboard.monthly_retention": "User retention rate by month after sign-up",
+  "admin.dashboard.daily_retention": "Feur azdalc'h an implijerien·ezed dre zeiz goude bezañ lakaet o anv",
+  "admin.dashboard.monthly_retention": "Feur azdalc'h an implijerien·ezed dre viz goude bezañ lakaet o anv",
   "admin.dashboard.retention.average": "Keidenn",
   "admin.dashboard.retention.cohort": "Miz an enrolladur",
   "admin.dashboard.retention.cohort_size": "Implijerien.erezed nevez",
@@ -75,18 +75,18 @@
   "alert.rate_limited.title": "Feur bevennet",
   "alert.unexpected.message": "Ur fazi dic'hortozet zo degouezhet.",
   "alert.unexpected.title": "Hopala !",
-  "announcement.announcement": "Kemenn",
+  "announcement.announcement": "Kemennad",
   "attachments_list.unprocessed": "(ket meret)",
   "audio.hide": "Kuzhat ar c'hleved",
   "autosuggest_hashtag.per_week": "{count} bep sizhun",
   "boost_modal.combo": "Ar wezh kentañ e c'halliot gwaskañ war {combo} evit tremen hebiou",
-  "bundle_column_error.copy_stacktrace": "Copy error report",
+  "bundle_column_error.copy_stacktrace": "Eilañ an danevell fazi",
   "bundle_column_error.error.body": "The requested page could not be rendered. It could be due to a bug in our code, or a browser compatibility issue.",
-  "bundle_column_error.error.title": "Oh, no!",
+  "bundle_column_error.error.title": "Chaous !",
   "bundle_column_error.network.body": "There was an error when trying to load this page. This could be due to a temporary problem with your internet connection or this server.",
-  "bundle_column_error.network.title": "Network error",
+  "bundle_column_error.network.title": "Fazi rouedad",
   "bundle_column_error.retry": "Klask en-dro",
-  "bundle_column_error.return": "Go back home",
+  "bundle_column_error.return": "Distreiñ d'an degemer",
   "bundle_column_error.routing.body": "The requested page could not be found. Are you sure the URL in the address bar is correct?",
   "bundle_column_error.routing.title": "404",
   "bundle_modal_error.close": "Serriñ",
@@ -96,12 +96,12 @@
   "closed_registrations_modal.description": "Creating an account on {domain} is currently not possible, but please keep in mind that you do not need an account specifically on {domain} to use Mastodon.",
   "closed_registrations_modal.find_another_server": "Kavout ur servijer all",
   "closed_registrations_modal.preamble": "Mastodon is decentralized, so no matter where you create your account, you will be able to follow and interact with anyone on this server. You can even self-host it!",
-  "closed_registrations_modal.title": "Signing up on Mastodon",
+  "closed_registrations_modal.title": "Enskrivadurioù war Mastodon",
   "column.about": "Diwar-benn",
   "column.blocks": "Implijer·ezed·ien berzet",
   "column.bookmarks": "Sinedoù",
   "column.community": "Red-amzer lec'hel",
-  "column.direct": "Kemennad eeun",
+  "column.direct": "Kannadoù eeun",
   "column.directory": "Mont a-dreuz ar profiloù",
   "column.domain_blocks": "Domani berzet",
   "column.favourites": "Muiañ-karet",
@@ -110,8 +110,8 @@
   "column.lists": "Listennoù",
   "column.mutes": "Implijer·ion·ezed kuzhet",
   "column.notifications": "Kemennoù",
-  "column.pins": "Kannadoù spilhennet",
-  "column.public": "Red-amzer kevreet",
+  "column.pins": "Toudoù spilhennet",
+  "column.public": "Red-amzer kevredet",
   "column_back_button.label": "Distro",
   "column_header.hide_settings": "Kuzhat an arventennoù",
   "column_header.moveLeft_settings": "Dilec'hiañ ar bannad a-gleiz",
@@ -126,9 +126,9 @@
   "compose.language.change": "Cheñch yezh",
   "compose.language.search": "Klask yezhoù...",
   "compose_form.direct_message_warning_learn_more": "Gouzout hiroc'h",
-  "compose_form.encryption_warning": "Kannadoù war Mastodon na vezont ket sifret penn-da-benn. Na rannit ket titouroù kizidik dre Mastodon.",
-  "compose_form.hashtag_warning": "Ne vo ket listennet ar c'hannad-mañ dindan gerioù-klik ebet dre m'eo anlistennet. N'eus nemet ar c'hannadoù foran a c'hall bezañ klasket dre c'her-klik.",
-  "compose_form.lock_disclaimer": "N'eo ket {locked} ho kont. An holl a c'hal ho heuliañ evit gwelet ho kannadoù prevez.",
+  "compose_form.encryption_warning": "Toudoù war Mastodon na vezont ket sifret penn-da-benn. Na rannit ket titouroù kizidik dre Mastodon.",
+  "compose_form.hashtag_warning": "Ne vo ket listennet an toud-mañ dindan gerioù-klik ebet dre m'eo anlistennet. N'eus nemet an toudoù foran a c'hall bezañ klasket dre c'her-klik.",
+  "compose_form.lock_disclaimer": "N'eo ket {locked} ho kont. An holl a c'hal ho heuliañ evit gwelet ho toudoù prevez.",
   "compose_form.lock_disclaimer.lock": "prennet",
   "compose_form.placeholder": "Petra emaoc'h o soñjal e-barzh ?",
   "compose_form.poll.add_option": "Ouzhpenniñ un dibab",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Kemmañ ar sontadeg evit aotren meur a zibab",
   "compose_form.poll.switch_to_single": "Kemmañ ar sontadeg evit aotren un dibab hepken",
   "compose_form.publish": "Embann",
+  "compose_form.publish_form": "Embann",
   "compose_form.publish_loud": "{publish} !",
   "compose_form.save_changes": "Enrollañ ar cheñchamantoù",
   "compose_form.sensitive.hide": "Merkañ ar media evel kizidik",
@@ -145,7 +146,7 @@
   "compose_form.sensitive.unmarked": "N'eo ket merket ar media evel kizidik",
   "compose_form.spoiler.marked": "Kuzhet eo an destenn a-dreñv ur c'hemenn",
   "compose_form.spoiler.unmarked": "N'eo ket kuzhet an destenn",
-  "compose_form.spoiler_placeholder": "Skrivit ho kemenn amañ",
+  "compose_form.spoiler_placeholder": "Skrivit ho kemenn diwall amañ",
   "confirmation_modal.cancel": "Nullañ",
   "confirmations.block.block_and_report": "Berzañ ha Disklêriañ",
   "confirmations.block.confirm": "Stankañ",
@@ -153,7 +154,7 @@
   "confirmations.cancel_follow_request.confirm": "Nullañ ar reked",
   "confirmations.cancel_follow_request.message": "Ha sur oc'h e fell deoc'h nullañ ho reked evit heuliañ {name} ?",
   "confirmations.delete.confirm": "Dilemel",
-  "confirmations.delete.message": "Ha sur oc'h e fell deoc'h dilemel ar c'hannad-mañ ?",
+  "confirmations.delete.message": "Ha sur oc'h e fell deoc'h dilemel an toud-mañ ?",
   "confirmations.delete_list.confirm": "Dilemel",
   "confirmations.delete_list.message": "Ha sur eo hoc'h eus c'hoant da zilemel ar roll-mañ da vat ?",
   "confirmations.discard_edit_media.confirm": "Nac'hañ",
@@ -163,10 +164,10 @@
   "confirmations.logout.confirm": "Digevreañ",
   "confirmations.logout.message": "Ha sur oc'h e fell deoc'h digevreañ ?",
   "confirmations.mute.confirm": "Kuzhat",
-  "confirmations.mute.explanation": "Kement-se a guzho ar c'hannadoù skrivet gantañ·i hag ar re a veneg anezhañ·i, met ne viro ket outañ·i a welet ho kannadoù nag a heuliañ ac'hanoc'h.",
+  "confirmations.mute.explanation": "Kement-se a guzho an toudoù skrivet gantañ·i hag ar re a veneg anezhañ·i, met ne viro ket outañ·i a welet ho toudoù nag a heuliañ ac'hanoc'h.",
   "confirmations.mute.message": "Ha sur oc'h e fell deoc'h kuzhaat {name} ?",
   "confirmations.redraft.confirm": "Diverkañ ha skrivañ en-dro",
-  "confirmations.redraft.message": "Ha sur oc'h e fell deoc'h dilemel ar c'hannad-mañ hag e adskrivañ ? Kollet e vo ar merkoù « muiañ-karet » hag ar skignadennoù, hag emzivat e vo ar respontoù d'ar c'hannad orin.",
+  "confirmations.redraft.message": "Ha sur oc'h e fell deoc'h dilemel an toudoù-mañ hag e adskrivañ ? Kollet e vo ar merkoù « muiañ-karet » hag ar skignadennoù, hag emzivat e vo ar respontoù d'an toud orin.",
   "confirmations.reply.confirm": "Respont",
   "confirmations.reply.message": "Respont bremañ a zilamo ar gemennadenn emaoc'h o skrivañ. Sur e oc'h e fell deoc'h kenderc'hel ganti?",
   "confirmations.unfollow.confirm": "Diheuliañ",
@@ -183,13 +184,13 @@
   "directory.recently_active": "Oberiant nevez zo",
   "disabled_account_banner.account_settings": "Arventennoù ar gont",
   "disabled_account_banner.text": "Ho kont {disabledAccount} zo divev evit bremañ.",
-  "dismissable_banner.community_timeline": "Setu kannadoù foran nevesañ an dud a zo herberc’hiet o c'hontoù gant {domain}.",
+  "dismissable_banner.community_timeline": "Setu toudoù foran nevesañ an dud a zo herberc’hiet o c'hontoù gant {domain}.",
   "dismissable_banner.dismiss": "Diverkañ",
   "dismissable_banner.explore_links": "These news stories are being talked about by people on this and other servers of the decentralized network right now.",
   "dismissable_banner.explore_statuses": "These posts from this and other servers in the decentralized network are gaining traction on this server right now.",
   "dismissable_banner.explore_tags": "These hashtags are gaining traction among people on this and other servers of the decentralized network right now.",
   "dismissable_banner.public_timeline": "These are the most recent public posts from people on this and other servers of the decentralized network that this server knows about.",
-  "embed.instructions": "Enframmit ar c'hannad-mañ en ho lec'hienn en ur eilañ ar c'hod amañ-dindan.",
+  "embed.instructions": "Enframmit an toud-mañ en ho lec'hienn en ur eilañ ar c'hod amañ-dindan.",
   "embed.preview": "Setu penaos e teuio war wel :",
   "emoji_button.activity": "Obererezh",
   "emoji_button.clear": "Diverkañ",
@@ -207,22 +208,22 @@
   "emoji_button.symbols": "Arouezioù",
   "emoji_button.travel": "Lec'hioù ha Beajoù",
   "empty_column.account_suspended": "Kont ehanet",
-  "empty_column.account_timeline": "Kannad ebet amañ !",
+  "empty_column.account_timeline": "Toud ebet amañ !",
   "empty_column.account_unavailable": "Profil dihegerz",
   "empty_column.blocks": "N'eus ket bet berzet implijer·ez ganeoc'h c'hoazh.",
-  "empty_column.bookmarked_statuses": "N'ho peus kannad ebet enrollet en ho sinedoù c'hoazh. Pa vo ouzhpennet unan e teuio war wel amañ.",
+  "empty_column.bookmarked_statuses": "N'ho peus toud ebet enrollet en ho sinedoù c'hoazh. Pa vo ouzhpennet unan e teuio war wel amañ.",
   "empty_column.community": "Goulo eo ar red-amzer lec'hel. Skrivit'ta un dra evit lakaat tan dezhi !",
-  "empty_column.direct": "N'ho peus kemennad prevez ebet c'hoazh. Pa vo resevet pe kaset unan ganeoc'h e teuio war wel amañ.",
+  "empty_column.direct": "N'ho peus kannad eeun ebet c'hoazh. Pa vo resevet pe kaset unan ganeoc'h e teuio war wel amañ.",
   "empty_column.domain_blocks": "N'eus domani kuzh ebet c'hoazh.",
-  "empty_column.explore_statuses": "Nothing is trending right now. Check back later!",
-  "empty_column.favourited_statuses": "N'ho peus kannad muiañ-karet ebet c'hoazh. Pa vo ouzhpennet unan e teuio war wel amañ.",
-  "empty_column.favourites": "Den ebet n'eus ouzhpennet ar c'hannad-mañ en e reoù muiañ-karet c'hoazh. Pa vo graet gant unan bennak e teuio war wel amañ.",
-  "empty_column.follow_recommendations": "Seblant a ra ne vez ket genelet damvenegoù evidoc'h. Gallout a rit implijout un enklask evit klask tud hag a vefe anavezet ganeoc'h pe ergerzhout gerioù-klik diouzh ar c'hiz.",
+  "empty_column.explore_statuses": "N'eus tuadur ebet evit c'hoazh. Distroit diwezhatoc'h !",
+  "empty_column.favourited_statuses": "N'ho peus toud muiañ-karet ebet c'hoazh. Pa vo ouzhpennet unan e teuio war wel amañ.",
+  "empty_column.favourites": "Den ebet n'eus ouzhpennet an toud-mañ en e reoù muiañ-karet c'hoazh. Pa vo graet gant unan bennak e teuio war wel amañ.",
+  "empty_column.follow_recommendations": "War a seblant ne c'hall ket bezañ savet erbedadenn ebet evidoc'h. Gallout a rit implijout un enklask evit kavout tud a anavezfec'h pe furchal ar gerioù-klik diouzh ar c'hiz.",
   "empty_column.follow_requests": "N'ho peus reked heuliañ ebet c'hoazh. Pa vo resevet unan e teuio war wel amañ.",
   "empty_column.hashtag": "N'eus netra er ger-klik-mañ c'hoazh.",
   "empty_column.home": "Goullo eo ho red-amzer degemer! Kit da weladenniñ {public} pe implijit ar c'hlask evit kregiñ ganti ha kejañ gant implijer·ien·ezed all.",
   "empty_column.home.suggestions": "Gwellout damvenegoù",
-  "empty_column.list": "Goullo eo ar roll-mañ evit c'hoazh. Pa vo embannet kannadoù nevez gant e izili e teuint war wel amañ.",
+  "empty_column.list": "Goullo eo al listenn-mañ evit c'hoazh. Pa vo embannet toudoù nevez gant e izili e teuint war wel amañ.",
   "empty_column.lists": "N'ho peus roll ebet c'hoazh. Pa vo krouet unan ganeoc'h e vo diskouezet amañ.",
   "empty_column.mutes": "N'ho peus kuzhet implijer ebet c'hoazh.",
   "empty_column.notifications": "N'ho peus kemenn ebet c'hoazh. Grit gant implijer·ezed·ien all evit loc'hañ ar gomz.",
@@ -234,35 +235,31 @@
   "errors.unexpected_crash.copy_stacktrace": "Eilañ ar roudoù diveugañ er golver",
   "errors.unexpected_crash.report_issue": "Danevellañ ur fazi",
   "explore.search_results": "Disoc'hoù an enklask",
-  "explore.suggested_follows": "Evidoc'h",
-  "explore.title": "Ergerzhit",
-  "explore.trending_links": "Keleier",
-  "explore.trending_statuses": "Kannadoù",
-  "explore.trending_tags": "Gerioù-klik",
+  "explore.title": "Furchal",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
-  "filter_modal.added.context_mismatch_title": "Context mismatch!",
+  "filter_modal.added.context_mismatch_title": "Kenarroud digenglotus !",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
-  "filter_modal.added.expired_title": "Expired filter!",
+  "filter_modal.added.expired_title": "Sil deuet d'e dermen !",
   "filter_modal.added.review_and_configure": "To review and further configure this filter category, go to the {settings_link}.",
-  "filter_modal.added.review_and_configure_title": "Filter settings",
-  "filter_modal.added.settings_link": "settings page",
-  "filter_modal.added.short_explanation": "Ar c'hannad-mañ zo bet ouzhpennet d'ar rummad sil-mañ : {title}.",
-  "filter_modal.added.title": "Filter added!",
-  "filter_modal.select_filter.context_mismatch": "does not apply to this context",
-  "filter_modal.select_filter.expired": "expired",
-  "filter_modal.select_filter.prompt_new": "New category: {name}",
-  "filter_modal.select_filter.search": "Search or create",
-  "filter_modal.select_filter.subtitle": "Use an existing category or create a new one",
-  "filter_modal.select_filter.title": "Silañ ar c'hannad-mañ",
-  "filter_modal.title.status": "Silañ ur c'hannad",
+  "filter_modal.added.review_and_configure_title": "Arventennoù ar sil",
+  "filter_modal.added.settings_link": "pajenn an arventennoù",
+  "filter_modal.added.short_explanation": "An toud-mañ zo bet ouzhpennet d'ar rummad sil-mañ : {title}.",
+  "filter_modal.added.title": "Sil ouzhpennet !",
+  "filter_modal.select_filter.context_mismatch": "na glot ket gant ar c'henarroud-mañ",
+  "filter_modal.select_filter.expired": "zo deuet d'e dermen",
+  "filter_modal.select_filter.prompt_new": "Rummad nevez : {name}",
+  "filter_modal.select_filter.search": "Klask pe krouiñ",
+  "filter_modal.select_filter.subtitle": "Implijout ur rummad a zo anezhañ pe krouiñ unan nevez",
+  "filter_modal.select_filter.title": "Silañ an toud-mañ",
+  "filter_modal.title.status": "Silañ un toud",
   "follow_recommendations.done": "Graet",
-  "follow_recommendations.heading": "Heuilhit tud a blijfe deoc'h lenn o c'hannadoù ! Setu un nebeud erbedadennoù.",
-  "follow_recommendations.lead": "Kannadoù gant tud a vez heuliet ganeoc'h a zeuio war wel en urzh kronologel war ho red degemer. Arabat kaout aon ober fazioù, diheuliañ tud a c'hellit ober aes ha forzh pegoulz !",
+  "follow_recommendations.heading": "Heuilhit tud a blijfe deoc'h lenn o zoudoù ! Setu un nebeud erbedadennoù.",
+  "follow_recommendations.lead": "Toudoù gant tud a vez heuliet ganeoc'h a zeuio war wel en urzh kronologel war ho red degemer. Arabat kaout aon ober fazioù, diheuliañ tud a c'hellit ober aes ha forzh pegoulz !",
   "follow_request.authorize": "Aotren",
   "follow_request.reject": "Nac'hañ",
   "follow_requests.unlocked_explanation": "Daoust ma n'eo ket ho kont prennet, skipailh {domain} a soñj e fellfe deoc'h gwiriekaat pedadennoù heuliañ deus ar c'hontoù-se diwar-zorn.",
-  "footer.about": "About",
-  "footer.directory": "Profiles directory",
+  "footer.about": "Diwar-benn",
+  "footer.directory": "Kavlec'h ar profiloù",
   "footer.get_app": "Pellgargañ an arload",
   "footer.invite": "Pediñ tud",
   "footer.keyboard_shortcuts": "Berradennoù klavier",
@@ -286,33 +283,33 @@
   "home.column_settings.show_replies": "Diskouez ar respontoù",
   "home.hide_announcements": "Kuzhat ar c'hemennoù",
   "home.show_announcements": "Diskouez ar c'hemennoù",
-  "interaction_modal.description.favourite": "Gant ur gont Mastodon e c'hellit ouzhpennañ ar c'hannad-mañ d'ho re vuiañ-karet evit lakaat an den en deus eñ skrivet da c'houzout e plij deoc'h hag en enrollañ evit diwezhatoc'h.",
-  "interaction_modal.description.follow": "Gant ur gont Mastodon e c'hellit heuliañ {name} evit resev h·e c'h·gannadoù war ho red degemer.",
-  "interaction_modal.description.reblog": "Gant ur gont Mastodon e c'hellit skignañ ar c'hannad-mañ evit rannañ anezhañ gant ho heulierien·ezed.",
-  "interaction_modal.description.reply": "Gant ur gont Mastodon e c'hellit respont d'ar c'hannad-mañ.",
+  "interaction_modal.description.favourite": "Gant ur gont Mastodon e c'hellit ouzhpennañ an toud-mañ d'ho re vuiañ-karet evit lakaat an den en deus eñ skrivet da c'houzout e plij deoc'h hag en enrollañ evit diwezhatoc'h.",
+  "interaction_modal.description.follow": "Gant ur gont Mastodon e c'hellit heuliañ {name} evit resev an toudoù a embann war ho red degemer.",
+  "interaction_modal.description.reblog": "Gant ur gont Mastodon e c'hellit skignañ an toud-mañ evit rannañ anezhañ gant ho heulierien·ezed.",
+  "interaction_modal.description.reply": "Gant ur gont Mastodon e c'hellit respont d'an toud-mañ.",
   "interaction_modal.on_another_server": "War ur servijer all",
   "interaction_modal.on_this_server": "War ar servijer-mañ",
   "interaction_modal.other_server_instructions": "Copy and paste this URL into the search field of your favourite Mastodon app or the web interface of your Mastodon server.",
   "interaction_modal.preamble": "Since Mastodon is decentralized, you can use your existing account hosted by another Mastodon server or compatible platform if you don't have an account on this one.",
-  "interaction_modal.title.favourite": "Ouzhpennañ kannad {name} d'ar re vuiañ-karet",
+  "interaction_modal.title.favourite": "Ouzhpennañ toud {name} d'ar re vuiañ-karet",
   "interaction_modal.title.follow": "Heuliañ {name}",
-  "interaction_modal.title.reblog": "Skignañ kannad {name}",
-  "interaction_modal.title.reply": "Respont da gannad {name}",
+  "interaction_modal.title.reblog": "Skignañ toud {name}",
+  "interaction_modal.title.reply": "Respont da doud {name}",
   "intervals.full.days": "{number, plural, one {# devezh} other{# a zevezhioù}}",
   "intervals.full.hours": "{number, plural, one {# eurvezh} other{# eurvezh}}",
   "intervals.full.minutes": "{number, plural, one {# munut} other{# a vunutoù}}",
   "keyboard_shortcuts.back": "Distreiñ",
   "keyboard_shortcuts.blocked": "Digeriñ roll an implijer.ezed.rien stanket",
-  "keyboard_shortcuts.boost": "Skignañ ar c'hannad",
+  "keyboard_shortcuts.boost": "Skignañ an toud",
   "keyboard_shortcuts.column": "Fokus ar bann",
   "keyboard_shortcuts.compose": "Fokus an takad testenn",
   "keyboard_shortcuts.description": "Deskrivadur",
-  "keyboard_shortcuts.direct": "evit digeriñ bann ar c'hemennadoù eeun",
+  "keyboard_shortcuts.direct": "evit digeriñ bann ar c'hannadoù eeun",
   "keyboard_shortcuts.down": "Diskennañ er roll",
-  "keyboard_shortcuts.enter": "Digeriñ ar c'hannad",
-  "keyboard_shortcuts.favourite": "Ouzhpennañ ar c'hannad d'ar re vuiañ-karet",
+  "keyboard_shortcuts.enter": "Digeriñ an toud",
+  "keyboard_shortcuts.favourite": "Ouzhpennañ an toud d'ar re vuiañ-karet",
   "keyboard_shortcuts.favourites": "Digeriñ roll an toudoù muiañ-karet",
-  "keyboard_shortcuts.federated": "Digeriñ ar red-amzer kevreet",
+  "keyboard_shortcuts.federated": "Digeriñ ar red-amzer kevredet",
   "keyboard_shortcuts.heading": "Berradennoù klavier",
   "keyboard_shortcuts.home": "Digeriñ ho red-amzer degemer",
   "keyboard_shortcuts.hotkey": "Berradur",
@@ -321,18 +318,18 @@
   "keyboard_shortcuts.mention": "Menegiñ an aozer.ez",
   "keyboard_shortcuts.muted": "Digeriñ roll an implijer.ezed.ien kuzhet",
   "keyboard_shortcuts.my_profile": "Digeriñ ho profil",
-  "keyboard_shortcuts.notifications": "Digeriñ bann kemennoù",
+  "keyboard_shortcuts.notifications": "Digeriñ bann ar c'hemennoù",
   "keyboard_shortcuts.open_media": "Digeriñ ar media",
-  "keyboard_shortcuts.pinned": "Digeriñ roll ar c'hannadoù spilhennet",
+  "keyboard_shortcuts.pinned": "Digeriñ listenn an toudoù spilhennet",
   "keyboard_shortcuts.profile": "Digeriñ profil an aozer.ez",
-  "keyboard_shortcuts.reply": "Respont d'ar c'hannad",
+  "keyboard_shortcuts.reply": "Respont d'an toud",
   "keyboard_shortcuts.requests": "Digeriñ roll goulennoù heuliañ",
   "keyboard_shortcuts.search": "Fokus barenn klask",
   "keyboard_shortcuts.spoilers": "da guzhat/ziguzhat tachenn CW",
   "keyboard_shortcuts.start": "Digeriñ bann \"Kregiñ\"",
   "keyboard_shortcuts.toggle_hidden": "da guzhat/ziguzhat an desten a-dreñv CW",
   "keyboard_shortcuts.toggle_sensitivity": "da guzhat/ziguzhat ur media",
-  "keyboard_shortcuts.toot": "Kregiñ gant ur c'hannad nevez",
+  "keyboard_shortcuts.toot": "Kregiñ gant un toud nevez",
   "keyboard_shortcuts.unfocus": "Difokus an dachenn testenn/klask",
   "keyboard_shortcuts.up": "Pignat er roll",
   "lightbox.close": "Serriñ",
@@ -345,7 +342,7 @@
   "lists.account.add": "Ouzhpennañ d'al listenn",
   "lists.account.remove": "Lemel kuit eus al listenn",
   "lists.delete": "Dilemel al listenn",
-  "lists.edit": "Aozañ al listenn",
+  "lists.edit": "Kemmañ al listenn",
   "lists.edit.submit": "Cheñch an titl",
   "lists.new.create": "Ouzhpennañ ul listenn",
   "lists.new.title_placeholder": "Titl nevez al listenn",
@@ -368,12 +365,12 @@
   "navigation_bar.blocks": "Implijer·ezed·ien berzet",
   "navigation_bar.bookmarks": "Sinedoù",
   "navigation_bar.community_timeline": "Red-amzer lec'hel",
-  "navigation_bar.compose": "Skrivañ ur c'hannad nevez",
-  "navigation_bar.direct": "Kemennadoù prevez",
+  "navigation_bar.compose": "Skrivañ un toud nevez",
+  "navigation_bar.direct": "Kannadoù eeun",
   "navigation_bar.discover": "Dizoleiñ",
   "navigation_bar.domain_blocks": "Domanioù kuzhet",
-  "navigation_bar.edit_profile": "Aozañ ar profil",
-  "navigation_bar.explore": "Ergerzhit",
+  "navigation_bar.edit_profile": "Kemmañ ar profil",
+  "navigation_bar.explore": "Furchal",
   "navigation_bar.favourites": "Ar re vuiañ-karet",
   "navigation_bar.filters": "Gerioù kuzhet",
   "navigation_bar.follow_requests": "Pedadoù heuliañ",
@@ -382,25 +379,25 @@
   "navigation_bar.logout": "Digennaskañ",
   "navigation_bar.mutes": "Implijer·ion·ezed kuzhet",
   "navigation_bar.personal": "Personel",
-  "navigation_bar.pins": "Kannadoù spilhennet",
+  "navigation_bar.pins": "Toudoù spilhennet",
   "navigation_bar.preferences": "Gwellvezioù",
-  "navigation_bar.public_timeline": "Red-amzer kevreet",
+  "navigation_bar.public_timeline": "Red-amzer kevredet",
   "navigation_bar.search": "Klask",
   "navigation_bar.security": "Diogelroez",
   "not_signed_in_indicator.not_signed_in": "Ret eo deoc'h kevreañ evit tizhout an danvez-se.",
   "notification.admin.report": "Disklêriet eo bet {target} gant {name}",
   "notification.admin.sign_up": "{name} en·he deus lakaet e·hec'h anv",
-  "notification.favourite": "Gant {name} eo bet ouzhpennet ho kannad d'h·e re vuiañ-karet",
+  "notification.favourite": "Gant {name} eo bet ouzhpennet ho toud d'h·e re vuiañ-karet",
   "notification.follow": "heuliañ a ra {name} ac'hanoc'h",
   "notification.follow_request": "Gant {name} eo bet goulennet ho heuliañ",
   "notification.mention": "Gant {name} oc'h bet meneget",
   "notification.own_poll": "Echu eo ho sontadeg",
   "notification.poll": "Ur sontadeg ho deus mouezhet warnañ a zo echuet",
-  "notification.reblog": "Skignet eo bet ho kannad gant {name}",
-  "notification.status": "Emañ {name} o paouez embann",
-  "notification.update": "Kemmet ez eus bet ur c'hannad gant {name}",
+  "notification.reblog": "Gant {name} eo bet skignet ho toud",
+  "notification.status": "Emañ {name} o paouez toudañ",
+  "notification.update": "Gant {name} ez eus bet kemmet un toud",
   "notifications.clear": "Skarzhañ ar c'hemennoù",
-  "notifications.clear_confirmation": "Ha sur oc'h e fell deoc'h skarzhañ ho kemennoù penn-da-benn?",
+  "notifications.clear_confirmation": "Ha sur oc'h e fell deoc'h skarzhañ ho holl kemennoù ?",
   "notifications.column_settings.admin.report": "Disklêriadurioù nevez :",
   "notifications.column_settings.admin.sign_up": "Enskrivadurioù nevez :",
   "notifications.column_settings.alert": "Kemennoù war ar burev",
@@ -416,9 +413,9 @@
   "notifications.column_settings.reblog": "Skignadennoù:",
   "notifications.column_settings.show": "Diskouez er bann",
   "notifications.column_settings.sound": "Seniñ",
-  "notifications.column_settings.status": "Kannadoù nevez :",
-  "notifications.column_settings.unread_notifications.category": "Kemennoù n'int ket lennet",
-  "notifications.column_settings.unread_notifications.highlight": "Usskediñ kemennoù nevez",
+  "notifications.column_settings.status": "Toudoù nevez :",
+  "notifications.column_settings.unread_notifications.category": "Kemennoù anlennet",
+  "notifications.column_settings.unread_notifications.highlight": "Uslinennañ ar c'hemennoù anlennet",
   "notifications.column_settings.update": "Kemmoù :",
   "notifications.filter.all": "Pep tra",
   "notifications.filter.boosts": "Skignadennoù",
@@ -446,14 +443,14 @@
   "poll.votes": "{votes, plural,one {#votadenn} other {# votadenn}}",
   "poll_button.add_poll": "Ouzhpennañ ur sontadeg",
   "poll_button.remove_poll": "Dilemel ar sontadeg",
-  "privacy.change": "Cheñch prevezded ar c'hannad",
+  "privacy.change": "Cheñch prevezded an toud",
   "privacy.direct.long": "Embann evit an implijer·ezed·ien meneget hepken",
   "privacy.direct.short": "Tud meneget hepken",
   "privacy.private.long": "Embann evit ar re a heuilh ac'hanon hepken",
   "privacy.private.short": "Tud koumanantet hepken",
   "privacy.public.long": "Gwelus d'an holl",
   "privacy.public.short": "Publik",
-  "privacy.unlisted.long": "Visible for all, but opted-out of discovery features",
+  "privacy.unlisted.long": "Gwelus gant an holl, met hep arc'hweladur dizoleiñ",
   "privacy.unlisted.short": "Anlistennet",
   "privacy_policy.last_updated": "Hizivadenn ziwezhañ {date}",
   "privacy_policy.title": "Reolennoù Prevezded",
@@ -461,11 +458,11 @@
   "regeneration_indicator.label": "O kargañ…",
   "regeneration_indicator.sublabel": "War brientiñ emañ ho red degemer!",
   "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.days": "{number, plural, one {# devezh} two {# zevezh} few {# devezh} many {# a devezh} other {# devezh}} zo",
+  "relative_time.full.hours": "{number, plural, one {# eurvezh} two {# eurvezh} few {# eurvezh} many {# eur} other {# eurvezh}} zo",
   "relative_time.full.just_now": "bremañ",
-  "relative_time.full.minutes": "{number, plural, one {# minute} other {# minutes}} ago",
-  "relative_time.full.seconds": "{number, plural, one {# second} other {# seconds}} ago",
+  "relative_time.full.minutes": "{number, plural, one {# munut} two {# vunut} few {# munut} many {# munut} other {# munut}} zo",
+  "relative_time.full.seconds": "{number, plural, one {# eilenn} two {# eilenn} few {# eilenn} many {# eilenn} other {# eilenn}} zo",
   "relative_time.hours": "{number}e",
   "relative_time.just_now": "bremañ",
   "relative_time.minutes": "{number}m",
@@ -473,20 +470,20 @@
   "relative_time.today": "hiziv",
   "reply_indicator.cancel": "Nullañ",
   "report.block": "Stankañ",
-  "report.block_explanation": "Ne vo ket gwelet kannadoù ar gont-se ken. Ne welo ket ho kemennadoù ha ne c'hello ket ho heuliañ ken. Gouzout a raio eo bet stanket ganeoc'h.",
+  "report.block_explanation": "Ne vo ket gwelet toudoù ar gont-se ken. Ne welo ket ho toudoù ha ne c'hello ket ho heuliañ ken. Gouzout a raio eo bet stanket ganeoc'h.",
   "report.categories.other": "All",
   "report.categories.spam": "Spam",
-  "report.categories.violation": "Content violates one or more server rules",
+  "report.categories.violation": "Torret e vez gant an endalc'had unan pe meur a reolenn",
   "report.category.subtitle": "Choazit ar pezh a glot ar gwellañ",
   "report.category.title": "Lârit deomp petra c'hoarvez gant {type}",
   "report.category.title_account": "profil",
-  "report.category.title_status": "ar c'hannad-mañ",
+  "report.category.title_status": "an toud-mañ",
   "report.close": "Graet",
-  "report.comment.title": "Is there anything else you think we should know?",
+  "report.comment.title": "Ha traoù all a rankfemp gouzout ?",
   "report.forward": "Treuzkas da: {target}",
   "report.forward_hint": "War ur servijer all emañ ar c'hont-se. Kas dezhañ un adskrid disanv eus an danevell ivez?",
   "report.mute": "Kuzhat",
-  "report.mute_explanation": "Ne vo ket gwelet kannadoù ar gont-se ken. Gwelet ho kemennadoù ha ho heuliañ a c'hello ha ne ouezo ket eo bet kuzhet ganeoc'h.",
+  "report.mute_explanation": "Ne vo ket gwelet toudoù ar gont-se ken. Gwelet ho toudoù ha ho heuliañ a c'hello ha ne ouezo ket eo bet kuzhet ganeoc'h.",
   "report.next": "War-raok",
   "report.placeholder": "Askelennoù ouzhpenn",
   "report.reasons.dislike": "Ne blij ket din",
@@ -500,44 +497,44 @@
   "report.rules.subtitle": "Diuzit an holl draoù a glot",
   "report.rules.title": "Pesort reolennoù zo bet torret ?",
   "report.statuses.subtitle": "Diuzit an holl draoù a glot",
-  "report.statuses.title": "Are there any posts that back up this report?",
+  "report.statuses.title": "Ha toudoù all zo a c'hallfe nerzhañ an disklêriadenn-se ?",
   "report.submit": "Kinnig",
   "report.target": "O tisklêriañ {target}",
   "report.thanks.take_action": "Here are your options for controlling what you see on Mastodon:",
   "report.thanks.take_action_actionable": "While we review this, you can take action against @{name}:",
   "report.thanks.title": "Ne fell ket deoc'h gwelet an dra-se ?",
-  "report.thanks.title_actionable": "Thanks for reporting, we'll look into this.",
-  "report.unfollow": "Unfollow @{name}",
+  "report.thanks.title_actionable": "Trugarez evit bezañ disklêriet, emaomp o vont da glask pelloc'h.",
+  "report.unfollow": "Diheuliañ @{name}",
   "report.unfollow_explanation": "You are following this account. To not see their posts in your home feed anymore, unfollow them.",
   "report_notification.attached_statuses": "{count, plural, one {{count} post} other {{count} posts}} attached",
   "report_notification.categories.other": "All",
   "report_notification.categories.spam": "Spam",
-  "report_notification.categories.violation": "Rule violation",
+  "report_notification.categories.violation": "Torradur da reolennoù ar servijer",
   "report_notification.open": "Digeriñ an disklêriadur",
   "search.placeholder": "Klask",
-  "search.search_or_paste": "Search or paste URL",
+  "search.search_or_paste": "Klask pe pegañ un URL",
   "search_popout.search_format": "Framm klask araokaet",
   "search_popout.tips.full_text": "Testenn simpl a adkas toudoù skrivet ganeoc'h, merket ganeoc'h evel miuañ-karet, toudoù skignet, pe e-lec'h oc'h bet meneget, met ivez anvioù skrammañ, anvioù implijer ha gêrioù-klik hag a glot.",
   "search_popout.tips.hashtag": "ger-klik",
-  "search_popout.tips.status": "kannad",
+  "search_popout.tips.status": "toud",
   "search_popout.tips.text": "Testenn simpl a adkas anvioù skrammañ, anvioù implijer ha gêrioù-klik hag a glot",
   "search_popout.tips.user": "implijer·ez",
   "search_results.accounts": "Tud",
-  "search_results.all": "All",
+  "search_results.all": "Pep tra",
   "search_results.hashtags": "Gerioù-klik",
-  "search_results.nothing_found": "Could not find anything for these search terms",
-  "search_results.statuses": "Kannadoù",
-  "search_results.statuses_fts_disabled": "Klask kannadoù dre oc'h endalc'h n'eo ket aotreet war ar servijer-mañ.",
-  "search_results.title": "Search for {q}",
+  "search_results.nothing_found": "Disoc'h ebet gant ar gerioù-se",
+  "search_results.statuses": "Toudoù",
+  "search_results.statuses_fts_disabled": "Klask toudoù dre oc'h endalc'h n'eo ket aotreet war ar servijer-mañ.",
+  "search_results.title": "Klask {q}",
   "search_results.total": "{count, number} {count, plural, one {disoc'h} other {a zisoc'h}}",
   "server_banner.about_active_users": "People using this server during the last 30 days (Monthly Active Users)",
-  "server_banner.active_users": "active users",
-  "server_banner.administered_by": "Administered by:",
+  "server_banner.active_users": "implijerien·ezed oberiant",
+  "server_banner.administered_by": "Meret gant :",
   "server_banner.introduction": "{domain} is part of the decentralized social network powered by {mastodon}.",
-  "server_banner.learn_more": "Learn more",
-  "server_banner.server_stats": "Server stats:",
-  "sign_in_banner.create_account": "Create account",
-  "sign_in_banner.sign_in": "Sign in",
+  "server_banner.learn_more": "Gouzout hiroc'h",
+  "server_banner.server_stats": "Stadegoù ar servijer :",
+  "sign_in_banner.create_account": "Krouiñ ur gont",
+  "sign_in_banner.sign_in": "Kevreañ",
   "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts, or interact from your account on a different server.",
   "status.admin_account": "Digeriñ etrefas evezherezh evit @{name}",
   "status.admin_status": "Digeriñ an toud e-barzh an etrefas evezherezh",
@@ -548,15 +545,15 @@
   "status.copy": "Eilañ liamm ar c'hannad",
   "status.delete": "Dilemel",
   "status.detailed_status": "Gwel kaozeadenn munudek",
-  "status.direct": "Kas ur c'hemennad prevez da @{name}",
-  "status.edit": "Aozañ",
-  "status.edited": "Edited {date}",
+  "status.direct": "Kas ur c'hannad eeun da @{name}",
+  "status.edit": "Kemmañ",
+  "status.edited": "Aozet {date}",
   "status.edited_x_times": "Edited {count, plural, one {{count} time} other {{count} times}}",
   "status.embed": "Enframmañ",
   "status.favourite": "Muiañ-karet",
   "status.filter": "Silañ ar c'hannad-mañ",
   "status.filtered": "Silet",
-  "status.hide": "Hide toot",
+  "status.hide": "Kuzhat ar c'hannad",
   "status.history.created": "Krouet gant {name} {date}",
   "status.history.edited": "Kemmet gant {name} {date}",
   "status.load_more": "Kargañ muioc'h",
@@ -567,7 +564,7 @@
   "status.mute_conversation": "Kuzhat ar gaozeadenn",
   "status.open": "Digeriñ ar c'hannad-mañ",
   "status.pin": "Spilhennañ d'ar profil",
-  "status.pinned": "Kannad spilhennet",
+  "status.pinned": "Toud spilhennet",
   "status.read_more": "Lenn muioc'h",
   "status.reblog": "Skignañ",
   "status.reblog_private": "Skignañ gant ar weledenn gentañ",
@@ -575,26 +572,26 @@
   "status.reblogs.empty": "Den ebet n'eus skignet ar c'hannad-mañ c'hoazh. Pa vo graet gant unan bennak e teuio war wel amañ.",
   "status.redraft": "Diverkañ ha skrivañ en-dro",
   "status.remove_bookmark": "Dilemel ar sined",
-  "status.replied_to": "Replied to {name}",
+  "status.replied_to": "Respont da {name}",
   "status.reply": "Respont",
   "status.replyAll": "Respont d'ar gaozeadenn",
   "status.report": "Disklêriañ @{name}",
   "status.sensitive_warning": "Dalc'had kizidik",
   "status.share": "Rannañ",
-  "status.show_filter_reason": "Show anyway",
+  "status.show_filter_reason": "Diskwel memes tra",
   "status.show_less": "Diskouez nebeutoc'h",
   "status.show_less_all": "Diskouez nebeutoc'h evit an holl",
   "status.show_more": "Diskouez muioc'h",
   "status.show_more_all": "Diskouez miuoc'h evit an holl",
-  "status.show_original": "Show original",
-  "status.translate": "Translate",
-  "status.translated_from_with": "Translated from {lang} using {provider}",
+  "status.show_original": "Diskouez hini orin",
+  "status.translate": "Treiñ",
+  "status.translated_from_with": "Troet diwar {lang} gant {provider}",
   "status.uncached_media_warning": "Dihegerz",
   "status.unmute_conversation": "Diguzhat ar gaozeadenn",
   "status.unpin": "Dispilhennañ eus ar profil",
   "subscribed_languages.lead": "Only posts in selected languages will appear on your home and list timelines after the change. Select none to receive posts in all languages.",
-  "subscribed_languages.save": "Save changes",
-  "subscribed_languages.target": "Change subscribed languages for {target}",
+  "subscribed_languages.save": "Enrollañ ar cheñchamantoù",
+  "subscribed_languages.target": "Cheñch ar yezhoù koumanantet evit {target}",
   "suggestions.dismiss": "Dilezel damvenegoù",
   "suggestions.header": "Marteze e vefec'h dedenet gant…",
   "tabs_bar.federated_timeline": "Kevredet",
@@ -609,7 +606,7 @@
   "timeline_hint.remote_resource_not_displayed": "{resource} eus servijerien all n'int ket skrammet.",
   "timeline_hint.resources.followers": "Heulier·ezed·ien",
   "timeline_hint.resources.follows": "Heuliañ",
-  "timeline_hint.resources.statuses": "Kannadoù koshoc'h",
+  "timeline_hint.resources.statuses": "Toudoù koshoc'h",
   "trends.counter_by_accounts": "{count, plural, one {{counter} person} other {{counter} people}} in the past {days, plural, one {day} other {{days} days}}",
   "trends.trending_now": "Luskad ar mare",
   "ui.beforeunload": "Kollet e vo ho prell ma kuitit Mastodon.",
@@ -622,8 +619,8 @@
   "upload_error.poll": "Pellgargañ restroù n'eo ket aotreet gant sontadegoù.",
   "upload_form.audio_description": "Diskrivañ evit tud a zo kollet o c'hlev",
   "upload_form.description": "Diskrivañ evit tud a zo kollet o gweled",
-  "upload_form.description_missing": "No description added",
-  "upload_form.edit": "Aozañ",
+  "upload_form.description_missing": "Deskrivadur diank",
+  "upload_form.edit": "Kemmañ",
   "upload_form.thumbnail": "Kemmañ ar velvenn",
   "upload_form.undo": "Dilemel",
   "upload_form.video_description": "Diskrivañ evit tud a zo kollet o gweled pe o c'hlev",
@@ -638,7 +635,7 @@
   "upload_modal.preparing_ocr": "Oc'h aozañ OCR…",
   "upload_modal.preview_label": "Rakwel ({ratio})",
   "upload_progress.label": "O pellgargañ...",
-  "upload_progress.processing": "Processing…",
+  "upload_progress.processing": "War ober…",
   "video.close": "Serriñ ar video",
   "video.download": "Pellgargañ ar restr",
   "video.exit_fullscreen": "Kuitaat ar mod skramm leun",
diff --git a/app/javascript/mastodon/locales/bs.json b/app/javascript/mastodon/locales/bs.json
new file mode 100644
index 000000000..3e3a5243e
--- /dev/null
+++ b/app/javascript/mastodon/locales/bs.json
@@ -0,0 +1,649 @@
+{
+  "about.blocks": "Moderated servers",
+  "about.contact": "Contact:",
+  "about.disclaimer": "Mastodon is free, open-source software, and a trademark of Mastodon gGmbH.",
+  "about.domain_blocks.no_reason_available": "Reason not available",
+  "about.domain_blocks.preamble": "Mastodon generally allows you to view content from and interact with users from any other server in the fediverse. These are the exceptions that have been made on this particular server.",
+  "about.domain_blocks.silenced.explanation": "You will generally not see profiles and content from this server, unless you explicitly look it up or opt into it by following.",
+  "about.domain_blocks.silenced.title": "Limited",
+  "about.domain_blocks.suspended.explanation": "No data from this server will be processed, stored or exchanged, making any interaction or communication with users from this server impossible.",
+  "about.domain_blocks.suspended.title": "Suspended",
+  "about.not_available": "This information has not been made available on this server.",
+  "about.powered_by": "Decentralized social media powered by {mastodon}",
+  "about.rules": "Server rules",
+  "account.account_note_header": "Note",
+  "account.add_or_remove_from_list": "Add or Remove from lists",
+  "account.badges.bot": "Bot",
+  "account.badges.group": "Group",
+  "account.block": "Block @{name}",
+  "account.block_domain": "Block domain {domain}",
+  "account.blocked": "Blocked",
+  "account.browse_more_on_origin_server": "Browse more on the original profile",
+  "account.cancel_follow_request": "Withdraw follow request",
+  "account.direct": "Direct message @{name}",
+  "account.disable_notifications": "Stop notifying me when @{name} posts",
+  "account.domain_blocked": "Domain blocked",
+  "account.edit_profile": "Edit profile",
+  "account.enable_notifications": "Notify me when @{name} posts",
+  "account.endorse": "Feature on profile",
+  "account.featured_tags.last_status_at": "Last post on {date}",
+  "account.featured_tags.last_status_never": "No posts",
+  "account.featured_tags.title": "{name}'s featured hashtags",
+  "account.follow": "Follow",
+  "account.followers": "Followers",
+  "account.followers.empty": "No one follows this user yet.",
+  "account.followers_counter": "{count, plural, one {{counter} Follower} other {{counter} Followers}}",
+  "account.following": "Following",
+  "account.following_counter": "{count, plural, one {{counter} Following} other {{counter} Following}}",
+  "account.follows.empty": "This user doesn't follow anyone yet.",
+  "account.follows_you": "Follows you",
+  "account.go_to_profile": "Go to profile",
+  "account.hide_reblogs": "Hide boosts from @{name}",
+  "account.joined_short": "Joined",
+  "account.languages": "Change subscribed languages",
+  "account.link_verified_on": "Ownership of this link was checked on {date}",
+  "account.locked_info": "This account privacy status is set to locked. The owner manually reviews who can follow them.",
+  "account.media": "Media",
+  "account.mention": "Mention @{name}",
+  "account.moved_to": "{name} has indicated that their new account is now:",
+  "account.mute": "Mute @{name}",
+  "account.mute_notifications": "Mute notifications from @{name}",
+  "account.muted": "Muted",
+  "account.open_original_page": "Open original page",
+  "account.posts": "Posts",
+  "account.posts_with_replies": "Posts and replies",
+  "account.report": "Report @{name}",
+  "account.requested": "Awaiting approval. Click to cancel follow request",
+  "account.share": "Share @{name}'s profile",
+  "account.show_reblogs": "Show boosts from @{name}",
+  "account.statuses_counter": "{count, plural, one {{counter} Post} other {{counter} Posts}}",
+  "account.unblock": "Unblock @{name}",
+  "account.unblock_domain": "Unblock domain {domain}",
+  "account.unblock_short": "Unblock",
+  "account.unendorse": "Don't feature on profile",
+  "account.unfollow": "Unfollow",
+  "account.unmute": "Unmute @{name}",
+  "account.unmute_notifications": "Unmute notifications from @{name}",
+  "account.unmute_short": "Unmute",
+  "account_note.placeholder": "Click to add a note",
+  "admin.dashboard.daily_retention": "User retention rate by day after sign-up",
+  "admin.dashboard.monthly_retention": "User retention rate by month after sign-up",
+  "admin.dashboard.retention.average": "Average",
+  "admin.dashboard.retention.cohort": "Sign-up month",
+  "admin.dashboard.retention.cohort_size": "New users",
+  "alert.rate_limited.message": "Please retry after {retry_time, time, medium}.",
+  "alert.rate_limited.title": "Rate limited",
+  "alert.unexpected.message": "An unexpected error occurred.",
+  "alert.unexpected.title": "Oops!",
+  "announcement.announcement": "Announcement",
+  "attachments_list.unprocessed": "(unprocessed)",
+  "audio.hide": "Hide audio",
+  "autosuggest_hashtag.per_week": "{count} per week",
+  "boost_modal.combo": "You can press {combo} to skip this next time",
+  "bundle_column_error.copy_stacktrace": "Copy error report",
+  "bundle_column_error.error.body": "The requested page could not be rendered. It could be due to a bug in our code, or a browser compatibility issue.",
+  "bundle_column_error.error.title": "Oh, no!",
+  "bundle_column_error.network.body": "There was an error when trying to load this page. This could be due to a temporary problem with your internet connection or this server.",
+  "bundle_column_error.network.title": "Network error",
+  "bundle_column_error.retry": "Try again",
+  "bundle_column_error.return": "Go back home",
+  "bundle_column_error.routing.body": "The requested page could not be found. Are you sure the URL in the address bar is correct?",
+  "bundle_column_error.routing.title": "404",
+  "bundle_modal_error.close": "Close",
+  "bundle_modal_error.message": "Something went wrong while loading this component.",
+  "bundle_modal_error.retry": "Try again",
+  "closed_registrations.other_server_instructions": "Since Mastodon is decentralized, you can create an account on another server and still interact with this one.",
+  "closed_registrations_modal.description": "Creating an account on {domain} is currently not possible, but please keep in mind that you do not need an account specifically on {domain} to use Mastodon.",
+  "closed_registrations_modal.find_another_server": "Find another server",
+  "closed_registrations_modal.preamble": "Mastodon is decentralized, so no matter where you create your account, you will be able to follow and interact with anyone on this server. You can even self-host it!",
+  "closed_registrations_modal.title": "Signing up on Mastodon",
+  "column.about": "About",
+  "column.blocks": "Blocked users",
+  "column.bookmarks": "Bookmarks",
+  "column.community": "Local timeline",
+  "column.direct": "Direct messages",
+  "column.directory": "Browse profiles",
+  "column.domain_blocks": "Blocked domains",
+  "column.favourites": "Favourites",
+  "column.follow_requests": "Follow requests",
+  "column.home": "Home",
+  "column.lists": "Lists",
+  "column.mutes": "Muted users",
+  "column.notifications": "Notifications",
+  "column.pins": "Pinned post",
+  "column.public": "Federated timeline",
+  "column_back_button.label": "Back",
+  "column_header.hide_settings": "Hide settings",
+  "column_header.moveLeft_settings": "Move column to the left",
+  "column_header.moveRight_settings": "Move column to the right",
+  "column_header.pin": "Pin",
+  "column_header.show_settings": "Show settings",
+  "column_header.unpin": "Unpin",
+  "column_subheading.settings": "Settings",
+  "community.column_settings.local_only": "Local only",
+  "community.column_settings.media_only": "Media only",
+  "community.column_settings.remote_only": "Remote only",
+  "compose.language.change": "Change language",
+  "compose.language.search": "Search languages...",
+  "compose_form.direct_message_warning_learn_more": "Learn more",
+  "compose_form.encryption_warning": "Posts on Mastodon are not end-to-end encrypted. Do not share any dangerous information over Mastodon.",
+  "compose_form.hashtag_warning": "This post won't be listed under any hashtag as it is unlisted. Only public posts can be searched by hashtag.",
+  "compose_form.lock_disclaimer": "Your account is not {locked}. Anyone can follow you to view your follower-only posts.",
+  "compose_form.lock_disclaimer.lock": "locked",
+  "compose_form.placeholder": "What is on your mind?",
+  "compose_form.poll.add_option": "Add a choice",
+  "compose_form.poll.duration": "Poll duration",
+  "compose_form.poll.option_placeholder": "Choice {number}",
+  "compose_form.poll.remove_option": "Remove this choice",
+  "compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
+  "compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
+  "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
+  "compose_form.publish_loud": "{publish}!",
+  "compose_form.save_changes": "Save changes",
+  "compose_form.sensitive.hide": "{count, plural, one {Mark media as sensitive} other {Mark media as sensitive}}",
+  "compose_form.sensitive.marked": "{count, plural, one {Media is marked as sensitive} other {Media is marked as sensitive}}",
+  "compose_form.sensitive.unmarked": "{count, plural, one {Media is not marked as sensitive} other {Media is not marked as sensitive}}",
+  "compose_form.spoiler.marked": "Text is hidden behind warning",
+  "compose_form.spoiler.unmarked": "Text is not hidden",
+  "compose_form.spoiler_placeholder": "Write your warning here",
+  "confirmation_modal.cancel": "Cancel",
+  "confirmations.block.block_and_report": "Block & Report",
+  "confirmations.block.confirm": "Block",
+  "confirmations.block.message": "Are you sure you want to block {name}?",
+  "confirmations.cancel_follow_request.confirm": "Withdraw request",
+  "confirmations.cancel_follow_request.message": "Are you sure you want to withdraw your request to follow {name}?",
+  "confirmations.delete.confirm": "Delete",
+  "confirmations.delete.message": "Are you sure you want to delete this status?",
+  "confirmations.delete_list.confirm": "Delete",
+  "confirmations.delete_list.message": "Are you sure you want to permanently delete this list?",
+  "confirmations.discard_edit_media.confirm": "Discard",
+  "confirmations.discard_edit_media.message": "You have unsaved changes to the media description or preview, discard them anyway?",
+  "confirmations.domain_block.confirm": "Hide entire domain",
+  "confirmations.domain_block.message": "Are you really, really sure you want to block the entire {domain}? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain in any public timelines or your notifications. Your followers from that domain will be removed.",
+  "confirmations.logout.confirm": "Log out",
+  "confirmations.logout.message": "Are you sure you want to log out?",
+  "confirmations.mute.confirm": "Mute",
+  "confirmations.mute.explanation": "This will hide posts from them and posts mentioning them, but it will still allow them to see your posts and follow you.",
+  "confirmations.mute.message": "Are you sure you want to mute {name}?",
+  "confirmations.redraft.confirm": "Delete & redraft",
+  "confirmations.redraft.message": "Are you sure you want to delete this status and re-draft it? Favourites and boosts will be lost, and replies to the original post will be orphaned.",
+  "confirmations.reply.confirm": "Reply",
+  "confirmations.reply.message": "Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?",
+  "confirmations.unfollow.confirm": "Unfollow",
+  "confirmations.unfollow.message": "Are you sure you want to unfollow {name}?",
+  "conversation.delete": "Delete conversation",
+  "conversation.mark_as_read": "Mark as read",
+  "conversation.open": "View conversation",
+  "conversation.with": "With {names}",
+  "copypaste.copied": "Copied",
+  "copypaste.copy": "Copy",
+  "directory.federated": "From known fediverse",
+  "directory.local": "From {domain} only",
+  "directory.new_arrivals": "New arrivals",
+  "directory.recently_active": "Recently active",
+  "disabled_account_banner.account_settings": "Account settings",
+  "disabled_account_banner.text": "Your account {disabledAccount} is currently disabled.",
+  "dismissable_banner.community_timeline": "These are the most recent public posts from people whose accounts are hosted by {domain}.",
+  "dismissable_banner.dismiss": "Dismiss",
+  "dismissable_banner.explore_links": "These news stories are being talked about by people on this and other servers of the decentralized network right now.",
+  "dismissable_banner.explore_statuses": "These posts from this and other servers in the decentralized network are gaining traction on this server right now.",
+  "dismissable_banner.explore_tags": "These hashtags are gaining traction among people on this and other servers of the decentralized network right now.",
+  "dismissable_banner.public_timeline": "These are the most recent public posts from people on this and other servers of the decentralized network that this server knows about.",
+  "embed.instructions": "Embed this status on your website by copying the code below.",
+  "embed.preview": "Here is what it will look like:",
+  "emoji_button.activity": "Activity",
+  "emoji_button.clear": "Clear",
+  "emoji_button.custom": "Custom",
+  "emoji_button.flags": "Flags",
+  "emoji_button.food": "Food & Drink",
+  "emoji_button.label": "Insert emoji",
+  "emoji_button.nature": "Nature",
+  "emoji_button.not_found": "No matching emojis found",
+  "emoji_button.objects": "Objects",
+  "emoji_button.people": "People",
+  "emoji_button.recent": "Frequently used",
+  "emoji_button.search": "Search...",
+  "emoji_button.search_results": "Search results",
+  "emoji_button.symbols": "Symbols",
+  "emoji_button.travel": "Travel & Places",
+  "empty_column.account_suspended": "Account suspended",
+  "empty_column.account_timeline": "No posts found",
+  "empty_column.account_unavailable": "Profile unavailable",
+  "empty_column.blocks": "You haven't blocked any users yet.",
+  "empty_column.bookmarked_statuses": "You don't have any bookmarked posts yet. When you bookmark one, it will show up here.",
+  "empty_column.community": "The local timeline is empty. Write something publicly to get the ball rolling!",
+  "empty_column.direct": "You don't have any direct messages yet. When you send or receive one, it will show up here.",
+  "empty_column.domain_blocks": "There are no blocked domains yet.",
+  "empty_column.explore_statuses": "Nothing is trending right now. Check back later!",
+  "empty_column.favourited_statuses": "You don't have any favourite posts yet. When you favourite one, it will show up here.",
+  "empty_column.favourites": "No one has favourited this post yet. When someone does, they will show up here.",
+  "empty_column.follow_recommendations": "Looks like no suggestions could be generated for you. You can try using search to look for people you might know or explore trending hashtags.",
+  "empty_column.follow_requests": "You don't have any follow requests yet. When you receive one, it will show up here.",
+  "empty_column.hashtag": "There is nothing in this hashtag yet.",
+  "empty_column.home": "Your home timeline is empty! Follow more people to fill it up. {suggestions}",
+  "empty_column.home.suggestions": "See some suggestions",
+  "empty_column.list": "There is nothing in this list yet. When members of this list post new statuses, they will appear here.",
+  "empty_column.lists": "You don't have any lists yet. When you create one, it will show up here.",
+  "empty_column.mutes": "You haven't muted any users yet.",
+  "empty_column.notifications": "You don't have any notifications yet. When other people interact with you, you will see it here.",
+  "empty_column.public": "There is nothing here! Write something publicly, or manually follow users from other servers to fill it up",
+  "error.unexpected_crash.explanation": "Due to a bug in our code or a browser compatibility issue, this page could not be displayed correctly.",
+  "error.unexpected_crash.explanation_addons": "This page could not be displayed correctly. This error is likely caused by a browser add-on or automatic translation tools.",
+  "error.unexpected_crash.next_steps": "Try refreshing the page. If that does not help, you may still be able to use Mastodon through a different browser or native app.",
+  "error.unexpected_crash.next_steps_addons": "Try disabling them and refreshing the page. If that does not help, you may still be able to use Mastodon through a different browser or native app.",
+  "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
+  "errors.unexpected_crash.report_issue": "Report issue",
+  "explore.search_results": "Search results",
+  "explore.title": "Explore",
+  "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
+  "filter_modal.added.context_mismatch_title": "Context mismatch!",
+  "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
+  "filter_modal.added.expired_title": "Expired filter!",
+  "filter_modal.added.review_and_configure": "To review and further configure this filter category, go to the {settings_link}.",
+  "filter_modal.added.review_and_configure_title": "Filter settings",
+  "filter_modal.added.settings_link": "settings page",
+  "filter_modal.added.short_explanation": "This post has been added to the following filter category: {title}.",
+  "filter_modal.added.title": "Filter added!",
+  "filter_modal.select_filter.context_mismatch": "does not apply to this context",
+  "filter_modal.select_filter.expired": "expired",
+  "filter_modal.select_filter.prompt_new": "New category: {name}",
+  "filter_modal.select_filter.search": "Search or create",
+  "filter_modal.select_filter.subtitle": "Use an existing category or create a new one",
+  "filter_modal.select_filter.title": "Filter this post",
+  "filter_modal.title.status": "Filter a post",
+  "follow_recommendations.done": "Done",
+  "follow_recommendations.heading": "Follow people you'd like to see posts from! Here are some suggestions.",
+  "follow_recommendations.lead": "Posts from people you follow will show up in chronological order on your home feed. Don't be afraid to make mistakes, you can unfollow people just as easily any time!",
+  "follow_request.authorize": "Authorize",
+  "follow_request.reject": "Reject",
+  "follow_requests.unlocked_explanation": "Even though your account is not locked, the {domain} staff thought you might want to review follow requests from these accounts manually.",
+  "footer.about": "About",
+  "footer.directory": "Profiles directory",
+  "footer.get_app": "Get the app",
+  "footer.invite": "Invite people",
+  "footer.keyboard_shortcuts": "Keyboard shortcuts",
+  "footer.privacy_policy": "Privacy policy",
+  "footer.source_code": "View source code",
+  "generic.saved": "Saved",
+  "getting_started.heading": "Getting started",
+  "hashtag.column_header.tag_mode.all": "and {additional}",
+  "hashtag.column_header.tag_mode.any": "or {additional}",
+  "hashtag.column_header.tag_mode.none": "without {additional}",
+  "hashtag.column_settings.select.no_options_message": "No suggestions found",
+  "hashtag.column_settings.select.placeholder": "Enter hashtags…",
+  "hashtag.column_settings.tag_mode.all": "All of these",
+  "hashtag.column_settings.tag_mode.any": "Any of these",
+  "hashtag.column_settings.tag_mode.none": "None of these",
+  "hashtag.column_settings.tag_toggle": "Include additional tags in this column",
+  "hashtag.follow": "Follow hashtag",
+  "hashtag.unfollow": "Unfollow hashtag",
+  "home.column_settings.basic": "Basic",
+  "home.column_settings.show_reblogs": "Show boosts",
+  "home.column_settings.show_replies": "Show replies",
+  "home.hide_announcements": "Hide announcements",
+  "home.show_announcements": "Show announcements",
+  "interaction_modal.description.favourite": "With an account on Mastodon, you can favourite this post to let the author know you appreciate it and save it for later.",
+  "interaction_modal.description.follow": "With an account on Mastodon, you can follow {name} to receive their posts in your home feed.",
+  "interaction_modal.description.reblog": "With an account on Mastodon, you can boost this post to share it with your own followers.",
+  "interaction_modal.description.reply": "With an account on Mastodon, you can respond to this post.",
+  "interaction_modal.on_another_server": "On a different server",
+  "interaction_modal.on_this_server": "On this server",
+  "interaction_modal.other_server_instructions": "Copy and paste this URL into the search field of your favourite Mastodon app or the web interface of your Mastodon server.",
+  "interaction_modal.preamble": "Since Mastodon is decentralized, you can use your existing account hosted by another Mastodon server or compatible platform if you don't have an account on this one.",
+  "interaction_modal.title.favourite": "Favourite {name}'s post",
+  "interaction_modal.title.follow": "Follow {name}",
+  "interaction_modal.title.reblog": "Boost {name}'s post",
+  "interaction_modal.title.reply": "Reply to {name}'s post",
+  "intervals.full.days": "{number, plural, one {# day} other {# days}}",
+  "intervals.full.hours": "{number, plural, one {# hour} other {# hours}}",
+  "intervals.full.minutes": "{number, plural, one {# minute} other {# minutes}}",
+  "keyboard_shortcuts.back": "to navigate back",
+  "keyboard_shortcuts.blocked": "to open blocked users list",
+  "keyboard_shortcuts.boost": "to boost",
+  "keyboard_shortcuts.column": "to focus a status in one of the columns",
+  "keyboard_shortcuts.compose": "to focus the compose textarea",
+  "keyboard_shortcuts.description": "Description",
+  "keyboard_shortcuts.direct": "to open direct messages column",
+  "keyboard_shortcuts.down": "to move down in the list",
+  "keyboard_shortcuts.enter": "to open status",
+  "keyboard_shortcuts.favourite": "to favourite",
+  "keyboard_shortcuts.favourites": "to open favourites list",
+  "keyboard_shortcuts.federated": "to open federated timeline",
+  "keyboard_shortcuts.heading": "Keyboard Shortcuts",
+  "keyboard_shortcuts.home": "to open home timeline",
+  "keyboard_shortcuts.hotkey": "Hotkey",
+  "keyboard_shortcuts.legend": "to display this legend",
+  "keyboard_shortcuts.local": "to open local timeline",
+  "keyboard_shortcuts.mention": "to mention author",
+  "keyboard_shortcuts.muted": "to open muted users list",
+  "keyboard_shortcuts.my_profile": "to open your profile",
+  "keyboard_shortcuts.notifications": "to open notifications column",
+  "keyboard_shortcuts.open_media": "to open media",
+  "keyboard_shortcuts.pinned": "to open pinned posts list",
+  "keyboard_shortcuts.profile": "to open author's profile",
+  "keyboard_shortcuts.reply": "to reply",
+  "keyboard_shortcuts.requests": "to open follow requests list",
+  "keyboard_shortcuts.search": "to focus search",
+  "keyboard_shortcuts.spoilers": "to show/hide CW field",
+  "keyboard_shortcuts.start": "to open \"get started\" column",
+  "keyboard_shortcuts.toggle_hidden": "to show/hide text behind CW",
+  "keyboard_shortcuts.toggle_sensitivity": "to show/hide media",
+  "keyboard_shortcuts.toot": "to start a brand new post",
+  "keyboard_shortcuts.unfocus": "to un-focus compose textarea/search",
+  "keyboard_shortcuts.up": "to move up in the list",
+  "lightbox.close": "Close",
+  "lightbox.compress": "Compress image view box",
+  "lightbox.expand": "Expand image view box",
+  "lightbox.next": "Next",
+  "lightbox.previous": "Previous",
+  "limited_account_hint.action": "Show profile anyway",
+  "limited_account_hint.title": "This profile has been hidden by the moderators of {domain}.",
+  "lists.account.add": "Add to list",
+  "lists.account.remove": "Remove from list",
+  "lists.delete": "Delete list",
+  "lists.edit": "Edit list",
+  "lists.edit.submit": "Change title",
+  "lists.new.create": "Add list",
+  "lists.new.title_placeholder": "New list title",
+  "lists.replies_policy.followed": "Any followed user",
+  "lists.replies_policy.list": "Members of the list",
+  "lists.replies_policy.none": "No one",
+  "lists.replies_policy.title": "Show replies to:",
+  "lists.search": "Search among people you follow",
+  "lists.subheading": "Your lists",
+  "load_pending": "{count, plural, one {# new item} other {# new items}}",
+  "loading_indicator.label": "Loading...",
+  "media_gallery.toggle_visible": "{number, plural, one {Hide image} other {Hide images}}",
+  "missing_indicator.label": "Not found",
+  "missing_indicator.sublabel": "This resource could not be found",
+  "moved_to_account_banner.text": "Your account {disabledAccount} is currently disabled because you moved to {movedToAccount}.",
+  "mute_modal.duration": "Duration",
+  "mute_modal.hide_notifications": "Hide notifications from this user?",
+  "mute_modal.indefinite": "Indefinite",
+  "navigation_bar.about": "About",
+  "navigation_bar.blocks": "Blocked users",
+  "navigation_bar.bookmarks": "Bookmarks",
+  "navigation_bar.community_timeline": "Local timeline",
+  "navigation_bar.compose": "Compose new post",
+  "navigation_bar.direct": "Direct messages",
+  "navigation_bar.discover": "Discover",
+  "navigation_bar.domain_blocks": "Hidden domains",
+  "navigation_bar.edit_profile": "Edit profile",
+  "navigation_bar.explore": "Explore",
+  "navigation_bar.favourites": "Favourites",
+  "navigation_bar.filters": "Muted words",
+  "navigation_bar.follow_requests": "Follow requests",
+  "navigation_bar.follows_and_followers": "Follows and followers",
+  "navigation_bar.lists": "Lists",
+  "navigation_bar.logout": "Logout",
+  "navigation_bar.mutes": "Muted users",
+  "navigation_bar.personal": "Personal",
+  "navigation_bar.pins": "Pinned posts",
+  "navigation_bar.preferences": "Preferences",
+  "navigation_bar.public_timeline": "Federated timeline",
+  "navigation_bar.search": "Search",
+  "navigation_bar.security": "Security",
+  "not_signed_in_indicator.not_signed_in": "You need to sign in to access this resource.",
+  "notification.admin.report": "{name} reported {target}",
+  "notification.admin.sign_up": "{name} signed up",
+  "notification.favourite": "{name} favourited your status",
+  "notification.follow": "{name} followed you",
+  "notification.follow_request": "{name} has requested to follow you",
+  "notification.mention": "{name} mentioned you",
+  "notification.own_poll": "Your poll has ended",
+  "notification.poll": "A poll you have voted in has ended",
+  "notification.reblog": "{name} boosted your status",
+  "notification.status": "{name} just posted",
+  "notification.update": "{name} edited a post",
+  "notifications.clear": "Clear notifications",
+  "notifications.clear_confirmation": "Are you sure you want to permanently clear all your notifications?",
+  "notifications.column_settings.admin.report": "New reports:",
+  "notifications.column_settings.admin.sign_up": "New sign-ups:",
+  "notifications.column_settings.alert": "Desktop notifications",
+  "notifications.column_settings.favourite": "Favourites:",
+  "notifications.column_settings.filter_bar.advanced": "Display all categories",
+  "notifications.column_settings.filter_bar.category": "Quick filter bar",
+  "notifications.column_settings.filter_bar.show_bar": "Show filter bar",
+  "notifications.column_settings.follow": "New followers:",
+  "notifications.column_settings.follow_request": "New follow requests:",
+  "notifications.column_settings.mention": "Mentions:",
+  "notifications.column_settings.poll": "Poll results:",
+  "notifications.column_settings.push": "Push notifications",
+  "notifications.column_settings.reblog": "Boosts:",
+  "notifications.column_settings.show": "Show in column",
+  "notifications.column_settings.sound": "Play sound",
+  "notifications.column_settings.status": "New posts:",
+  "notifications.column_settings.unread_notifications.category": "Unread notifications",
+  "notifications.column_settings.unread_notifications.highlight": "Highlight unread notifications",
+  "notifications.column_settings.update": "Edits:",
+  "notifications.filter.all": "All",
+  "notifications.filter.boosts": "Boosts",
+  "notifications.filter.favourites": "Favourites",
+  "notifications.filter.follows": "Follows",
+  "notifications.filter.mentions": "Mentions",
+  "notifications.filter.polls": "Poll results",
+  "notifications.filter.statuses": "Updates from people you follow",
+  "notifications.grant_permission": "Grant permission.",
+  "notifications.group": "{count} notifications",
+  "notifications.mark_as_read": "Mark every notification as read",
+  "notifications.permission_denied": "Desktop notifications are unavailable due to previously denied browser permissions request",
+  "notifications.permission_denied_alert": "Desktop notifications can't be enabled, as browser permission has been denied before",
+  "notifications.permission_required": "Desktop notifications are unavailable because the required permission has not been granted.",
+  "notifications_permission_banner.enable": "Enable desktop notifications",
+  "notifications_permission_banner.how_to_control": "To receive notifications when Mastodon isn't open, enable desktop notifications. You can control precisely which types of interactions generate desktop notifications through the {icon} button above once they're enabled.",
+  "notifications_permission_banner.title": "Never miss a thing",
+  "picture_in_picture.restore": "Put it back",
+  "poll.closed": "Closed",
+  "poll.refresh": "Refresh",
+  "poll.total_people": "{count, plural, one {# person} other {# people}}",
+  "poll.total_votes": "{count, plural, one {# vote} other {# votes}}",
+  "poll.vote": "Vote",
+  "poll.voted": "You voted for this answer",
+  "poll.votes": "{votes, plural, one {# vote} other {# votes}}",
+  "poll_button.add_poll": "Add a poll",
+  "poll_button.remove_poll": "Remove poll",
+  "privacy.change": "Adjust status privacy",
+  "privacy.direct.long": "Visible for mentioned users only",
+  "privacy.direct.short": "Direct",
+  "privacy.private.long": "Visible for followers only",
+  "privacy.private.short": "Followers-only",
+  "privacy.public.long": "Visible for all",
+  "privacy.public.short": "Public",
+  "privacy.unlisted.long": "Visible for all, but opted-out of discovery features",
+  "privacy.unlisted.short": "Unlisted",
+  "privacy_policy.last_updated": "Last updated {date}",
+  "privacy_policy.title": "Privacy Policy",
+  "refresh": "Refresh",
+  "regeneration_indicator.label": "Loading…",
+  "regeneration_indicator.sublabel": "Your home feed is being prepared!",
+  "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.minutes": "{number, plural, one {# minute} other {# minutes}} ago",
+  "relative_time.full.seconds": "{number, plural, one {# second} other {# seconds}} ago",
+  "relative_time.hours": "{number}h",
+  "relative_time.just_now": "now",
+  "relative_time.minutes": "{number}m",
+  "relative_time.seconds": "{number}s",
+  "relative_time.today": "today",
+  "reply_indicator.cancel": "Cancel",
+  "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.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.category.title_account": "profile",
+  "report.category.title_status": "post",
+  "report.close": "Done",
+  "report.comment.title": "Is there anything else you think we should know?",
+  "report.forward": "Forward to {target}",
+  "report.forward_hint": "The account is from another server. Send an anonymized copy of the report there as well?",
+  "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.placeholder": "Type or paste additional comments",
+  "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.submit": "Submit report",
+  "report.target": "Report {target}",
+  "report.thanks.take_action": "Here are your options for controlling what you see on Mastodon:",
+  "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_explanation": "You are following this account. To not see their posts in your home feed anymore, unfollow them.",
+  "report_notification.attached_statuses": "{count, plural, one {{count} post} other {{count} posts}} attached",
+  "report_notification.categories.other": "Other",
+  "report_notification.categories.spam": "Spam",
+  "report_notification.categories.violation": "Rule violation",
+  "report_notification.open": "Open report",
+  "search.placeholder": "Search",
+  "search.search_or_paste": "Search or paste URL",
+  "search_popout.search_format": "Advanced search format",
+  "search_popout.tips.full_text": "Simple text returns statuses you have written, favourited, boosted, or have been mentioned in, as well as matching usernames, display names, and hashtags.",
+  "search_popout.tips.hashtag": "hashtag",
+  "search_popout.tips.status": "status",
+  "search_popout.tips.text": "Simple text returns matching display names, usernames and hashtags",
+  "search_popout.tips.user": "user",
+  "search_results.accounts": "People",
+  "search_results.all": "All",
+  "search_results.hashtags": "Hashtags",
+  "search_results.nothing_found": "Could not find anything for these search terms",
+  "search_results.statuses": "Posts",
+  "search_results.statuses_fts_disabled": "Searching posts by their content is not enabled on this Mastodon server.",
+  "search_results.title": "Search for {q}",
+  "search_results.total": "{count, number} {count, plural, one {result} other {results}}",
+  "server_banner.about_active_users": "People using this server during the last 30 days (Monthly Active Users)",
+  "server_banner.active_users": "active users",
+  "server_banner.administered_by": "Administered by:",
+  "server_banner.introduction": "{domain} is part of the decentralized social network powered by {mastodon}.",
+  "server_banner.learn_more": "Learn more",
+  "server_banner.server_stats": "Server stats:",
+  "sign_in_banner.create_account": "Create account",
+  "sign_in_banner.sign_in": "Sign in",
+  "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts, or interact from your account on a different server.",
+  "status.admin_account": "Open moderation interface for @{name}",
+  "status.admin_status": "Open this status in the moderation interface",
+  "status.block": "Block @{name}",
+  "status.bookmark": "Bookmark",
+  "status.cancel_reblog_private": "Unboost",
+  "status.cannot_reblog": "This post cannot be boosted",
+  "status.copy": "Copy link to status",
+  "status.delete": "Delete",
+  "status.detailed_status": "Detailed conversation view",
+  "status.direct": "Direct message @{name}",
+  "status.edit": "Edit",
+  "status.edited": "Edited {date}",
+  "status.edited_x_times": "Edited {count, plural, one {{count} time} other {{count} times}}",
+  "status.embed": "Embed",
+  "status.favourite": "Favourite",
+  "status.filter": "Filter this post",
+  "status.filtered": "Filtered",
+  "status.hide": "Hide toot",
+  "status.history.created": "{name} created {date}",
+  "status.history.edited": "{name} edited {date}",
+  "status.load_more": "Load more",
+  "status.media_hidden": "Media hidden",
+  "status.mention": "Mention @{name}",
+  "status.more": "More",
+  "status.mute": "Mute @{name}",
+  "status.mute_conversation": "Mute conversation",
+  "status.open": "Expand this status",
+  "status.pin": "Pin on profile",
+  "status.pinned": "Pinned post",
+  "status.read_more": "Read more",
+  "status.reblog": "Boost",
+  "status.reblog_private": "Boost with original visibility",
+  "status.reblogged_by": "{name} boosted",
+  "status.reblogs.empty": "No one has boosted this post yet. When someone does, they will show up here.",
+  "status.redraft": "Delete & re-draft",
+  "status.remove_bookmark": "Remove bookmark",
+  "status.replied_to": "Replied to {name}",
+  "status.reply": "Reply",
+  "status.replyAll": "Reply to thread",
+  "status.report": "Report @{name}",
+  "status.sensitive_warning": "Sensitive content",
+  "status.share": "Share",
+  "status.show_filter_reason": "Show anyway",
+  "status.show_less": "Show less",
+  "status.show_less_all": "Show less for all",
+  "status.show_more": "Show more",
+  "status.show_more_all": "Show more for all",
+  "status.show_original": "Show original",
+  "status.translate": "Translate",
+  "status.translated_from_with": "Translated from {lang} using {provider}",
+  "status.uncached_media_warning": "Not available",
+  "status.unmute_conversation": "Unmute conversation",
+  "status.unpin": "Unpin from profile",
+  "subscribed_languages.lead": "Only posts in selected languages will appear on your home and list timelines after the change. Select none to receive posts in all languages.",
+  "subscribed_languages.save": "Save changes",
+  "subscribed_languages.target": "Change subscribed languages for {target}",
+  "suggestions.dismiss": "Dismiss suggestion",
+  "suggestions.header": "You might be interested in…",
+  "tabs_bar.federated_timeline": "Federated",
+  "tabs_bar.home": "Home",
+  "tabs_bar.local_timeline": "Local",
+  "tabs_bar.notifications": "Notifications",
+  "time_remaining.days": "{number, plural, one {# day} other {# days}} left",
+  "time_remaining.hours": "{number, plural, one {# hour} other {# hours}} left",
+  "time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
+  "time_remaining.moments": "Moments remaining",
+  "time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
+  "timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
+  "timeline_hint.resources.followers": "Followers",
+  "timeline_hint.resources.follows": "Follows",
+  "timeline_hint.resources.statuses": "Older posts",
+  "trends.counter_by_accounts": "{count, plural, one {{counter} person} other {{counter} people}} in the past {days, plural, one {day} other {{days} days}}",
+  "trends.trending_now": "Trending now",
+  "ui.beforeunload": "Your draft will be lost if you leave Mastodon.",
+  "units.short.billion": "{count}B",
+  "units.short.million": "{count}M",
+  "units.short.thousand": "{count}K",
+  "upload_area.title": "Drag & drop to upload",
+  "upload_button.label": "Add images, a video or an audio file",
+  "upload_error.limit": "File upload limit exceeded.",
+  "upload_error.poll": "File upload not allowed with polls.",
+  "upload_form.audio_description": "Describe for people with hearing loss",
+  "upload_form.description": "Describe for the visually impaired",
+  "upload_form.description_missing": "No description added",
+  "upload_form.edit": "Edit",
+  "upload_form.thumbnail": "Change thumbnail",
+  "upload_form.undo": "Delete",
+  "upload_form.video_description": "Describe for people with hearing loss or visual impairment",
+  "upload_modal.analyzing_picture": "Analyzing picture…",
+  "upload_modal.apply": "Apply",
+  "upload_modal.applying": "Applying…",
+  "upload_modal.choose_image": "Choose image",
+  "upload_modal.description_placeholder": "A quick brown fox jumps over the lazy dog",
+  "upload_modal.detect_text": "Detect text from picture",
+  "upload_modal.edit_media": "Edit media",
+  "upload_modal.hint": "Click or drag the circle on the preview to choose the focal point which will always be in view on all thumbnails.",
+  "upload_modal.preparing_ocr": "Preparing OCR…",
+  "upload_modal.preview_label": "Preview ({ratio})",
+  "upload_progress.label": "Uploading…",
+  "upload_progress.processing": "Processing…",
+  "video.close": "Close video",
+  "video.download": "Download file",
+  "video.exit_fullscreen": "Exit full screen",
+  "video.expand": "Expand video",
+  "video.fullscreen": "Full screen",
+  "video.hide": "Hide video",
+  "video.mute": "Mute sound",
+  "video.pause": "Pause",
+  "video.play": "Play",
+  "video.unmute": "Unmute sound"
+}
diff --git a/app/javascript/mastodon/locales/ca.json b/app/javascript/mastodon/locales/ca.json
index 4b5fb25e4..aa3c1f369 100644
--- a/app/javascript/mastodon/locales/ca.json
+++ b/app/javascript/mastodon/locales/ca.json
@@ -2,8 +2,8 @@
   "about.blocks": "Servidors moderats",
   "about.contact": "Contacte:",
   "about.disclaimer": "Mastodon és programari lliure de codi obert i una marca comercial de Mastodon gGmbH.",
-  "about.domain_blocks.no_reason_available": "No és disponible el motiu",
-  "about.domain_blocks.preamble": "En general, Mastodon et permet veure el contingut i interaccionar amb els usuaris de qualsevol altre servidor del fedivers. Aquestes són les excepcions que s'han fet en aquest servidor particular.",
+  "about.domain_blocks.no_reason_available": "No es disposa del motiu",
+  "about.domain_blocks.preamble": "En general, Mastodon permet de veure el contingut i interaccionar amb els usuaris de qualsevol altre servidor del fedivers. Aquestes són les excepcions d'aquest servidor en particular.",
   "about.domain_blocks.silenced.explanation": "Generalment no veuràs perfils ni contingut d'aquest servidor, a menys que el cerquis explícitament o optis per seguir-lo.",
   "about.domain_blocks.silenced.title": "Limitat",
   "about.domain_blocks.suspended.explanation": "No es processaran, emmagatzemaran ni intercanviaran dades d'aquest servidor, fent impossible qualsevol interacció o comunicació amb els seus usuaris.",
@@ -15,63 +15,63 @@
   "account.add_or_remove_from_list": "Afegeix o elimina de les llistes",
   "account.badges.bot": "Bot",
   "account.badges.group": "Grup",
-  "account.block": "Bloqueja @{name}",
-  "account.block_domain": "Bloqueja el domini {domain}",
-  "account.blocked": "Bloquejat",
+  "account.block": "Bloca @{name}",
+  "account.block_domain": "Bloca el domini {domain}",
+  "account.blocked": "Blocat",
   "account.browse_more_on_origin_server": "Navega més en el perfil original",
   "account.cancel_follow_request": "Retira la sol·licitud de seguiment",
-  "account.direct": "Envia missatge directe a @{name}",
+  "account.direct": "Missatge directe a @{name}",
   "account.disable_notifications": "No em notifiquis les publicacions de @{name}",
   "account.domain_blocked": "Domini blocat",
   "account.edit_profile": "Edita el perfil",
   "account.enable_notifications": "Notifica'm les publicacions de @{name}",
   "account.endorse": "Recomana en el perfil",
-  "account.featured_tags.last_status_at": "Última publicació el {date}",
+  "account.featured_tags.last_status_at": "Darrera publicació el {date}",
   "account.featured_tags.last_status_never": "No hi ha publicacions",
-  "account.featured_tags.title": "Etiquetes destacades de: {name}",
+  "account.featured_tags.title": "etiquetes destacades de {name}",
   "account.follow": "Segueix",
   "account.followers": "Seguidors",
-  "account.followers.empty": "Encara ningú no segueix aquest usuari.",
+  "account.followers.empty": "A aquest usuari encara no el segueix ningú.",
   "account.followers_counter": "{count, plural, one {{counter} Seguidor} other {{counter} Seguidors}}",
   "account.following": "Seguint",
-  "account.following_counter": "{count, plural, other {{counter} Seguint}}",
+  "account.following_counter": "{count, plural, other {Seguint-ne {counter}}}",
   "account.follows.empty": "Aquest usuari encara no segueix ningú.",
   "account.follows_you": "Et segueix",
-  "account.go_to_profile": "Anar al perfil",
+  "account.go_to_profile": "Vés al perfil",
   "account.hide_reblogs": "Amaga els impulsos de @{name}",
-  "account.joined_short": "S'ha unit",
-  "account.languages": "Canviar les llengües subscrits",
+  "account.joined_short": "S'hi va unir",
+  "account.languages": "Canvia les llengües subscrites",
   "account.link_verified_on": "La propietat d'aquest enllaç es va verificar el dia {date}",
-  "account.locked_info": "Aquest estat de privadesa del compte està definit com a bloquejat. El propietari revisa manualment qui pot seguir-lo.",
-  "account.media": "Multimèdia",
+  "account.locked_info": "L'estat de privadesa del compte està definit com a blocat. El propietari revisa manualment qui pot seguir-lo.",
+  "account.media": "Contingut",
   "account.mention": "Menciona @{name}",
-  "account.moved_to": "{name} ha indicat que el seu nou compte ara és:",
+  "account.moved_to": "{name} ha indicat que el seu nou compte és:",
   "account.mute": "Silencia @{name}",
   "account.mute_notifications": "Silencia les notificacions de @{name}",
   "account.muted": "Silenciat",
   "account.open_original_page": "Obre la pàgina original",
-  "account.posts": "Publicacions",
-  "account.posts_with_replies": "Publicacions i respostes",
-  "account.report": "Informa quant a @{name}",
-  "account.requested": "S'està esperant l'aprovació. Feu clic per a cancel·lar la petició de seguiment",
+  "account.posts": "Tuts",
+  "account.posts_with_replies": "Tuts i respostes",
+  "account.report": "Informa sobre @{name}",
+  "account.requested": "S'espera l'aprovació. Clica per a cancel·lar la petició de seguiment",
   "account.share": "Comparteix el perfil de @{name}",
   "account.show_reblogs": "Mostra els impulsos de @{name}",
   "account.statuses_counter": "{count, plural, one {{counter} Publicació} other {{counter} Publicacions}}",
-  "account.unblock": "Desbloqueja @{name}",
-  "account.unblock_domain": "Desbloqueja el domini {domain}",
-  "account.unblock_short": "Desbloqueja",
+  "account.unblock": "Desbloca @{name}",
+  "account.unblock_domain": "Desbloca el domini {domain}",
+  "account.unblock_short": "Desbloca",
   "account.unendorse": "No recomanis en el perfil",
   "account.unfollow": "Deixa de seguir",
-  "account.unmute": "Deixar de silenciar @{name}",
+  "account.unmute": "Deixa de silenciar @{name}",
   "account.unmute_notifications": "Activa les notificacions de @{name}",
   "account.unmute_short": "Deixa de silenciar",
-  "account_note.placeholder": "Clica per afegir-hi una nota",
+  "account_note.placeholder": "Clica per a afegir-hi una nota",
   "admin.dashboard.daily_retention": "Ràtio de retenció d'usuaris nous per dia, després del registre",
   "admin.dashboard.monthly_retention": "Ràtio de retenció d'usuaris nous per mes, després del registre",
   "admin.dashboard.retention.average": "Mitjana",
   "admin.dashboard.retention.cohort": "Mes de registre",
   "admin.dashboard.retention.cohort_size": "Usuaris nous",
-  "alert.rate_limited.message": "Si us plau, torna-ho a provar després de {retry_time, time, medium}.",
+  "alert.rate_limited.message": "Si us plau prova-ho després de {retry_time, time, medium}.",
   "alert.rate_limited.title": "Límit de freqüència",
   "alert.unexpected.message": "S'ha produït un error inesperat.",
   "alert.unexpected.title": "Vaja!",
@@ -79,38 +79,38 @@
   "attachments_list.unprocessed": "(sense processar)",
   "audio.hide": "Amaga l'àudio",
   "autosuggest_hashtag.per_week": "{count} per setmana",
-  "boost_modal.combo": "Podeu prémer {combo} per a evitar-ho el pròxim cop",
+  "boost_modal.combo": "Pots prémer {combo} per a evitar-ho el pròxim cop",
   "bundle_column_error.copy_stacktrace": "Copia l'informe d'error",
   "bundle_column_error.error.body": "No s'ha pogut renderitzar la pàgina sol·licitada. Podria ser per un error en el nostre codi o per un problema de compatibilitat del navegador.",
   "bundle_column_error.error.title": "Oh, no!",
-  "bundle_column_error.network.body": "Hi ha hagut un error en intentar carregar aquesta pàgina. Això podria ser per un problema temporal amb la teva connexió a internet o amb aquest servidor.",
-  "bundle_column_error.network.title": "Error de connexió",
+  "bundle_column_error.network.body": "Hi ha hagut un error en intentar carregar aquesta pàgina. Podria ser per un problema temporal amb la teva connexió a internet o amb aquest servidor.",
+  "bundle_column_error.network.title": "Error de xarxa",
   "bundle_column_error.retry": "Torna-ho a provar",
   "bundle_column_error.return": "Torna a Inici",
-  "bundle_column_error.routing.body": "No es pot trobar la pàgina sol·licitada. Segur que la URL de la barra d'adreces és correcta?",
+  "bundle_column_error.routing.body": "No es pot trobar la pàgina sol·licitada. Segur que l'URL que has posat és correcta?",
   "bundle_column_error.routing.title": "404",
   "bundle_modal_error.close": "Tanca",
   "bundle_modal_error.message": "S'ha produït un error en carregar aquest component.",
   "bundle_modal_error.retry": "Torna-ho a provar",
-  "closed_registrations.other_server_instructions": "Com que Mastodon és descentralitzat, pots crear un compte en un altre servidor i seguir interactuant amb aquest.",
-  "closed_registrations_modal.description": "No es pot crear un compte a {domain} ara mateix, però tingueu en compte que no necessiteu específicament un compte a {domain} per a usar Mastodon.",
+  "closed_registrations.other_server_instructions": "Com que Mastodon és descentralitzat, pots crear un compte en un altre servidor i continuar interactuant amb aquest.",
+  "closed_registrations_modal.description": "No es pot crear un compte a {domain} ara mateix, però tingues en compte que no necessites específicament un compte a {domain} per a usar Mastodon.",
   "closed_registrations_modal.find_another_server": "Troba un altre servidor",
-  "closed_registrations_modal.preamble": "Mastodon és descentralitzat per tant no importa on tinguis el teu compte, seràs capaç de seguir i interactuar amb tothom des d'aquest servidor. Fins i tot pots tenir el compte en el teu propi servidor!",
+  "closed_registrations_modal.preamble": "Mastodon és descentralitzat. Per tant, tinguis on tinguis el compte, seràs capaç de seguir i interactuar amb tothom des d'aquest servidor. Fins i tot pots tenir el compte en el teu propi servidor!",
   "closed_registrations_modal.title": "Registrant-se a Mastodon",
   "column.about": "Quant a",
-  "column.blocks": "Usuaris bloquejats",
+  "column.blocks": "Usuaris blocats",
   "column.bookmarks": "Marcadors",
   "column.community": "Línia de temps local",
   "column.direct": "Missatges directes",
-  "column.directory": "Navegar pels perfils",
-  "column.domain_blocks": "Dominis bloquejats",
+  "column.directory": "Navega pels perfils",
+  "column.domain_blocks": "Dominis blocats",
   "column.favourites": "Preferits",
-  "column.follow_requests": "Peticions per a seguir-te",
+  "column.follow_requests": "Peticions de seguir-te",
   "column.home": "Inici",
   "column.lists": "Llistes",
   "column.mutes": "Usuaris silenciats",
   "column.notifications": "Notificacions",
-  "column.pins": "Publicacions fixades",
+  "column.pins": "Tuts fixats",
   "column.public": "Línia de temps federada",
   "column_back_button.label": "Enrere",
   "column_header.hide_settings": "Amaga la configuració",
@@ -118,10 +118,10 @@
   "column_header.moveRight_settings": "Mou la columna cap a la dreta",
   "column_header.pin": "Fixa",
   "column_header.show_settings": "Mostra la configuració",
-  "column_header.unpin": "No fixis",
+  "column_header.unpin": "Desfixa",
   "column_subheading.settings": "Configuració",
   "community.column_settings.local_only": "Només local",
-  "community.column_settings.media_only": "Només multimèdia",
+  "community.column_settings.media_only": "Només contingut",
   "community.column_settings.remote_only": "Només remot",
   "compose.language.change": "Canvia d'idioma",
   "compose.language.search": "Cerca idiomes...",
@@ -129,43 +129,44 @@
   "compose_form.encryption_warning": "Les publicacions a Mastodon no estant xifrades punt a punt. No comparteixis informació sensible mitjançant Mastodon.",
   "compose_form.hashtag_warning": "Aquesta publicació no es mostrarà en cap etiqueta, ja que no està llistada. Només les publicacions públiques es poden cercar per etiqueta.",
   "compose_form.lock_disclaimer": "El teu compte no està {locked}. Tothom pot seguir-te i veure les publicacions de només per a seguidors.",
-  "compose_form.lock_disclaimer.lock": "bloquejat",
-  "compose_form.placeholder": "Què tens en ment?",
-  "compose_form.poll.add_option": "Afegir una opció",
+  "compose_form.lock_disclaimer.lock": "blocat",
+  "compose_form.placeholder": "Què et passa pel cap?",
+  "compose_form.poll.add_option": "Afegeix una opció",
   "compose_form.poll.duration": "Durada de l'enquesta",
   "compose_form.poll.option_placeholder": "Opció {number}",
   "compose_form.poll.remove_option": "Elimina aquesta opció",
   "compose_form.poll.switch_to_multiple": "Canvia l’enquesta per a permetre diverses opcions",
-  "compose_form.poll.switch_to_single": "Canvia l’enquesta per permetre una única opció",
-  "compose_form.publish": "Publica-ho",
+  "compose_form.poll.switch_to_single": "Canvia l’enquesta per a permetre una única opció",
+  "compose_form.publish": "Publica",
+  "compose_form.publish_form": "Publica",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Desa els canvis",
-  "compose_form.sensitive.hide": "{count, plural, one {Marca contingut com a sensible} other {Marca contingut com a sensible}}",
+  "compose_form.sensitive.hide": "{count, plural, one {Marca el contingut com a sensible} other {Marca el contingut com a sensible}}",
   "compose_form.sensitive.marked": "{count, plural, one {Contingut marcat com a sensible} other {Contingut marcat com a sensible}}",
   "compose_form.sensitive.unmarked": "{count, plural, one {Contingut no marcat com a sensible} other {Contingut no marcat com a sensible}}",
   "compose_form.spoiler.marked": "Elimina l'avís de contingut",
   "compose_form.spoiler.unmarked": "Afegeix avís de contingut",
   "compose_form.spoiler_placeholder": "Escriu l'avís aquí",
   "confirmation_modal.cancel": "Cancel·la",
-  "confirmations.block.block_and_report": "Bloqueja i informa",
-  "confirmations.block.confirm": "Bloqueja",
-  "confirmations.block.message": "Segur que vols bloquejar a {name}?",
-  "confirmations.cancel_follow_request.confirm": "Retirar sol·licitud",
-  "confirmations.cancel_follow_request.message": "Estàs segur que vols retirar la teva sol·licitud de seguiment de {name}?",
+  "confirmations.block.block_and_report": "Bloca i informa",
+  "confirmations.block.confirm": "Bloca",
+  "confirmations.block.message": "Segur que vols blocar a {name}?",
+  "confirmations.cancel_follow_request.confirm": "Retirar la sol·licitud",
+  "confirmations.cancel_follow_request.message": "Segur que vols retirar la sol·licitud de seguiment de {name}?",
   "confirmations.delete.confirm": "Suprimeix",
   "confirmations.delete.message": "Segur que vols eliminar la publicació?",
   "confirmations.delete_list.confirm": "Suprimeix",
   "confirmations.delete_list.message": "Segur que vols suprimir permanentment aquesta llista?",
   "confirmations.discard_edit_media.confirm": "Descarta",
   "confirmations.discard_edit_media.message": "Tens canvis no desats en la descripció del contingut o en la previsualització, els vols descartar?",
-  "confirmations.domain_block.confirm": "Bloqueja el domini sencer",
-  "confirmations.domain_block.message": "N'estàs segur del tot que vols bloquejar totalment {domain}? En la majoria dels casos, bloquejar o silenciar uns pocs objectius és suficient i preferible. No veuràs el contingut d’aquest domini en cap de les línies de temps ni en les notificacions. Els teus seguidors d’aquest domini s'elimiran.",
-  "confirmations.logout.confirm": "Tancar sessió",
+  "confirmations.domain_block.confirm": "Bloca el domini sencer",
+  "confirmations.domain_block.message": "Segur que vols blocar {domain} del tot? En la majoria dels casos, només amb blocar o silenciar uns pocs comptes n'hi ha prou i és millor. No veuràs el contingut d’aquest domini en cap de les línies de temps ni en les notificacions. S'eliminaran els teus seguidors d’aquest domini.",
+  "confirmations.logout.confirm": "Tanca la sessió",
   "confirmations.logout.message": "Segur que vols tancar la sessió?",
   "confirmations.mute.confirm": "Silencia",
   "confirmations.mute.explanation": "Això amagarà les seves publicacions i les que els mencionen, però encara els permetrà veure les teves i seguir-te.",
   "confirmations.mute.message": "Segur que vols silenciar {name}?",
-  "confirmations.redraft.confirm": "Esborra'l i reescriure-lo",
+  "confirmations.redraft.confirm": "Esborra i reescriu",
   "confirmations.redraft.message": "Segur que vols esborrar aquesta publicació i tornar-la a escriure? Perdràs tots els impulsos i els preferits, i les respostes a la publicació original es quedaran orfes.",
   "confirmations.reply.confirm": "Respon",
   "confirmations.reply.message": "Si respons ara, sobreescriuràs el missatge que estàs editant. Segur que vols continuar?",
@@ -183,14 +184,14 @@
   "directory.recently_active": "Recentment actius",
   "disabled_account_banner.account_settings": "Paràmetres del compte",
   "disabled_account_banner.text": "El teu compte {disabledAccount} està actualment desactivat.",
-  "dismissable_banner.community_timeline": "Aquestes són les publicacions més recents d'usuaris amb els seus comptes a {domain}.",
+  "dismissable_banner.community_timeline": "Aquestes són les publicacions més recents d'usuaris amb el compte a {domain}.",
   "dismissable_banner.dismiss": "Ometre",
-  "dismissable_banner.explore_links": "Aquests son els enllaços que els usuaris estan comentant ara mateix en aquest i altres servidors de la xarxa descentralitzada.",
+  "dismissable_banner.explore_links": "Gent d'aquest i d'altres servidors de la xarxa descentralitzada estan comentant ara mateix aquestes notícies.",
   "dismissable_banner.explore_statuses": "Aquestes publicacions d'aquest i altres servidors de la xarxa descentralitzada estan guanyant l'atenció ara mateix en aquest servidor.",
-  "dismissable_banner.explore_tags": "Aquestes etiquetes estan guanyant l'atenció ara mateix dels usuaris d'aquest i altres servidors de la xarxa descentralitzada.",
+  "dismissable_banner.explore_tags": "Aquestes etiquetes estan guanyant ara mateix l'atenció dels usuaris d'aquest i altres servidors de la xarxa descentralitzada.",
   "dismissable_banner.public_timeline": "Aquestes són les publicacions públiques més recents de persones en aquest i altres servidors de la xarxa descentralitzada que aquest servidor coneix.",
   "embed.instructions": "Incrusta aquesta publicació a la teva pàgina web copiant el codi següent.",
-  "embed.preview": "Aquí està quin aspecte tindrà:",
+  "embed.preview": "Aquest aspecte tindrà:",
   "emoji_button.activity": "Activitat",
   "emoji_button.clear": "Neteja",
   "emoji_button.custom": "Personalitzat",
@@ -201,47 +202,43 @@
   "emoji_button.not_found": "No s'han trobat emojis coincidents",
   "emoji_button.objects": "Objectes",
   "emoji_button.people": "Gent",
-  "emoji_button.recent": "Usats freqüentment",
+  "emoji_button.recent": "Usats sovint",
   "emoji_button.search": "Cerca...",
   "emoji_button.search_results": "Resultats de la cerca",
   "emoji_button.symbols": "Símbols",
   "emoji_button.travel": "Viatges i llocs",
   "empty_column.account_suspended": "Compte suspès",
-  "empty_column.account_timeline": "No hi ha publicacions aquí!",
+  "empty_column.account_timeline": "No hi ha tuts aquí!",
   "empty_column.account_unavailable": "Perfil no disponible",
-  "empty_column.blocks": "Encara no has bloquejat cap usuari.",
+  "empty_column.blocks": "Encara no has blocat cap usuari.",
   "empty_column.bookmarked_statuses": "Encara no has marcat cap publicació com a preferida. Quan en marquis una, apareixerà aquí.",
   "empty_column.community": "La línia de temps local és buida. Escriu alguna cosa públicament per posar-ho tot en marxa!",
   "empty_column.direct": "Encara no tens missatges directes. Quan n'enviïs o en rebis, es mostraran aquí.",
-  "empty_column.domain_blocks": "Encara no hi ha dominis bloquejats.",
+  "empty_column.domain_blocks": "Encara no hi ha dominis blocats.",
   "empty_column.explore_statuses": "No hi ha res en tendència ara mateix. Revisa-ho més tard!",
-  "empty_column.favourited_statuses": "Encara no has marcat cap publicació com a preferida. Quan les marquis, apareixeran aquí.",
-  "empty_column.favourites": "Encara ningú no ha marcat aquesta publicació com a preferida. Quan algú ho faci, apareixerà aquí.",
+  "empty_column.favourited_statuses": "Encara no has afavorit cap publicació. Quan ho facis, apareixerà aquí.",
+  "empty_column.favourites": "Encara no ha marcat ningú aquesta publicació com a preferida. Quan ho faci algú apareixerà aquí.",
   "empty_column.follow_recommendations": "Sembla que no s'han pogut generar suggeriments per a tu. Pots provar d'usar la cerca per trobar persones que vulguis conèixer o explorar les etiquetes en tendència.",
   "empty_column.follow_requests": "Encara no tens cap petició de seguiment. Quan en rebis una, apareixerà aquí.",
   "empty_column.hashtag": "Encara no hi ha res en aquesta etiqueta.",
-  "empty_column.home": "La teva línia de temps és buida! Segueix més gent per omplir-la. {suggestions}",
-  "empty_column.home.suggestions": "Mira algunes suggeriments",
-  "empty_column.list": "Encara no hi ha res en aquesta llista. Quan els membres d'aquesta llista publiquin noves publicacions, apareixeran aquí.",
-  "empty_column.lists": "Encara no tens cap llista. Quan en creïs una, apareixerà aquí.",
+  "empty_column.home": "La teva línia de temps és buida! Segueix més gent per a emplenar-la. {suggestions}",
+  "empty_column.home.suggestions": "Mostra alguns suggeriments",
+  "empty_column.list": "Encara no hi ha res en aquesta llista. Quan els membres facin noves publicacions, apareixeran aquí.",
+  "empty_column.lists": "Encara no tens cap llista. Quan en facis una, apareixerà aquí.",
   "empty_column.mutes": "Encara no has silenciat cap usuari.",
-  "empty_column.notifications": "Encara no tens notificacions. Quan altres persones interactuïn amb tu, les veuràs aquí.",
+  "empty_column.notifications": "Encara no tens notificacions. Quan altre gent interactuï amb tu, les veuràs aquí.",
   "empty_column.public": "Aquí no hi ha res! Escriu públicament alguna cosa o segueix manualment usuaris d'altres servidors per omplir-ho",
   "error.unexpected_crash.explanation": "A causa d'un error en el nostre codi o d'un problema de compatibilitat amb el navegador, aquesta pàgina no s'ha pogut mostrar correctament.",
   "error.unexpected_crash.explanation_addons": "Aquesta pàgina no s'ha pogut mostrar correctament. És probable que aquest error sigui causat per un complement del navegador o per eines de traducció automàtica.",
   "error.unexpected_crash.next_steps": "Prova d'actualitzar la pàgina. Si això no serveix, és possible que encara puguis fer servir Mastodon a través d'un navegador diferent o amb una aplicació nativa.",
   "error.unexpected_crash.next_steps_addons": "Prova de desactivar-los i actualitza la pàgina. Si això no serveix, és possible que encara puguis fer servir Mastodon amb un altre navegador o una aplicació nativa.",
-  "errors.unexpected_crash.copy_stacktrace": "Còpia stacktrace al porta-retalls",
+  "errors.unexpected_crash.copy_stacktrace": "Copia stacktrace al porta-retalls",
   "errors.unexpected_crash.report_issue": "Informa d'un problema",
   "explore.search_results": "Resultats de la cerca",
-  "explore.suggested_follows": "Per a tu",
   "explore.title": "Explora",
-  "explore.trending_links": "Notícies",
-  "explore.trending_statuses": "Publicacions",
-  "explore.trending_tags": "Etiquetes",
   "filter_modal.added.context_mismatch_explanation": "Aquesta categoria de filtre no s'aplica al context en què has accedit a aquesta publicació. Si també vols que la publicació es filtri en aquest context, hauràs d'editar el filtre.",
   "filter_modal.added.context_mismatch_title": "El context no coincideix!",
-  "filter_modal.added.expired_explanation": "La categoria d'aquest filtre ha caducat, necesitaràs canviar la seva data de caducitat per a aplicar-la.",
+  "filter_modal.added.expired_explanation": "La categoria d'aquest filtre ha caducat, necessitaràs canviar la seva data de caducitat per a aplicar-la.",
   "filter_modal.added.expired_title": "Filtre caducat!",
   "filter_modal.added.review_and_configure": "Per a revisar i configurar aquesta categoria de filtre, ves a {settings_link}.",
   "filter_modal.added.review_and_configure_title": "Configuració del filtre",
@@ -252,15 +249,15 @@
   "filter_modal.select_filter.expired": "caducat",
   "filter_modal.select_filter.prompt_new": "Nova categoria: {name}",
   "filter_modal.select_filter.search": "Cerca o crea",
-  "filter_modal.select_filter.subtitle": "Usa una categoria existent o crea una nova",
+  "filter_modal.select_filter.subtitle": "Usa una categoria existent o crea'n una de nova",
   "filter_modal.select_filter.title": "Filtra aquesta publicació",
   "filter_modal.title.status": "Filtra una publicació",
   "follow_recommendations.done": "Fet",
-  "follow_recommendations.heading": "Segueix a la gent de la que t'agradaria veure les seves publicacions! Aquí hi ha algunes recomanacions.",
-  "follow_recommendations.lead": "Les publicacions dels usuaris que segueixes es mostraran en ordre cronològic en la teva línia de temps Inici. No tinguis por en cometre errors, pots fàcilment deixar de seguir-los en qualsevol moment!",
+  "follow_recommendations.heading": "Segueix a la gent de la que t'agradaria veure els seus tuts! Aquí hi ha algunes recomanacions.",
+  "follow_recommendations.lead": "Les publicacions dels usuaris que segueixes es mostraran en ordre cronològic en la teva línia de temps d'Inici. No tinguis por de cometre errors, pots deixar de seguir-los en qualsevol moment!",
   "follow_request.authorize": "Autoritza",
   "follow_request.reject": "Rebutja",
-  "follow_requests.unlocked_explanation": "Tot i que el teu compte no està bloquejat, el personal de {domain} ha pensat que és possible que vulguis revisar les sol·licituds de seguiment d’aquests comptes manualment.",
+  "follow_requests.unlocked_explanation": "Tot i que el teu compte no està blocat, el personal de {domain} ha pensat que és possible que vulguis revisar manualment les sol·licituds de seguiment d’aquests comptes.",
   "footer.about": "Quant a",
   "footer.directory": "Directori de perfils",
   "footer.get_app": "Aconsegueix l'app",
@@ -269,7 +266,7 @@
   "footer.privacy_policy": "Política de privadesa",
   "footer.source_code": "Mostra el codi font",
   "generic.saved": "Desat",
-  "getting_started.heading": "Primers passos",
+  "getting_started.heading": "Primeres passes",
   "hashtag.column_header.tag_mode.all": "i {additional}",
   "hashtag.column_header.tag_mode.any": "o {additional}",
   "hashtag.column_header.tag_mode.none": "sense {additional}",
@@ -279,21 +276,21 @@
   "hashtag.column_settings.tag_mode.any": "Qualsevol d’aquests",
   "hashtag.column_settings.tag_mode.none": "Cap d’aquests",
   "hashtag.column_settings.tag_toggle": "Inclou etiquetes addicionals per a aquesta columna",
-  "hashtag.follow": "Segueix etiqueta",
-  "hashtag.unfollow": "Deixa de seguir etiqueta",
+  "hashtag.follow": "Segueix l'etiqueta",
+  "hashtag.unfollow": "Deixa de seguir l'etiqueta",
   "home.column_settings.basic": "Bàsic",
   "home.column_settings.show_reblogs": "Mostra els impulsos",
   "home.column_settings.show_replies": "Mostra les respostes",
   "home.hide_announcements": "Amaga els anuncis",
   "home.show_announcements": "Mostra els anuncis",
-  "interaction_modal.description.favourite": "Amb un compte a Mastodon, pots afavorir aquesta publicació perquè l'autor sàpiga que t'ha agradat i desar-la per a més endavant.",
+  "interaction_modal.description.favourite": "Amb un compte a Mastodon pots afavorir aquesta publicació, que l'autor sàpiga que t'ha agradat i desar-la per a més endavant.",
   "interaction_modal.description.follow": "Amb un compte a Mastodon, pots seguir a {name} per a rebre les seves publicacions en la teva línia de temps d'Inici.",
   "interaction_modal.description.reblog": "Amb un compte a Mastodon, pots impulsar aquesta publicació per a compartir-la amb els teus seguidors.",
   "interaction_modal.description.reply": "Amb un compte a Mastodon, pots respondre aquesta publicació.",
   "interaction_modal.on_another_server": "En un servidor diferent",
   "interaction_modal.on_this_server": "En aquest servidor",
-  "interaction_modal.other_server_instructions": "Copia i enganxa aquest enllaç en el camp de cerca de la teva aplicació Mastodon preferida o en l'interfície web del teu servidor Mastodon.",
-  "interaction_modal.preamble": "Donat que Mastodon és descentralitzat, pots fer servir el teu compte existent a un altre servidor Mastodon o plataforma compatible si és que no tens compte en aquest.",
+  "interaction_modal.other_server_instructions": "Copia i enganxa aquesta URL en el camp de cerca de la teva aplicació Mastodon preferida o en l'interfície web del teu servidor Mastodon.",
+  "interaction_modal.preamble": "Com que Mastodon és descentralitzat, pots fer servir el teu compte existent en un altre servidor Mastodon o plataforma compatible si no tens compte en aquest.",
   "interaction_modal.title.favourite": "Marca la publicació de {name}",
   "interaction_modal.title.follow": "Segueix {name}",
   "interaction_modal.title.reblog": "Impulsa la publicació de {name}",
@@ -301,53 +298,53 @@
   "intervals.full.days": "{number, plural, one {# dia} other {# dies}}",
   "intervals.full.hours": "{number, plural, one {# hora} other {# hores}}",
   "intervals.full.minutes": "{number, plural, one {# minut} other {# minuts}}",
-  "keyboard_shortcuts.back": "Anar enrere",
-  "keyboard_shortcuts.blocked": "Obre la llista d'usuaris bloquejats",
+  "keyboard_shortcuts.back": "Vés enrere",
+  "keyboard_shortcuts.blocked": "Obre la llista d'usuaris blocats",
   "keyboard_shortcuts.boost": "Impulsa la publicació",
   "keyboard_shortcuts.column": "Centra la columna",
-  "keyboard_shortcuts.compose": "Centra l'àrea de composició del text",
+  "keyboard_shortcuts.compose": "Centra l'àrea de composició de text",
   "keyboard_shortcuts.description": "Descripció",
-  "keyboard_shortcuts.direct": "per obrir la columna de missatges directes",
-  "keyboard_shortcuts.down": "Mou-lo avall en la llista",
-  "keyboard_shortcuts.enter": "Obrir publicació",
-  "keyboard_shortcuts.favourite": "Marca la publicació",
-  "keyboard_shortcuts.favourites": "Obre la llista de preferits",
+  "keyboard_shortcuts.direct": "per a obrir la columna de missatges directes",
+  "keyboard_shortcuts.down": "Abaixa a la llista",
+  "keyboard_shortcuts.enter": "Obre la publicació",
+  "keyboard_shortcuts.favourite": "Afavoreix la publicació",
+  "keyboard_shortcuts.favourites": "Obre la llista de favorits",
   "keyboard_shortcuts.federated": "Obre la línia de temps federada",
   "keyboard_shortcuts.heading": "Dreceres de teclat",
   "keyboard_shortcuts.home": "Obre la línia de temps de l'Inici",
   "keyboard_shortcuts.hotkey": "Tecla d'accés directe",
   "keyboard_shortcuts.legend": "Mostra aquesta llegenda",
   "keyboard_shortcuts.local": "Obre la línia de temps local",
-  "keyboard_shortcuts.mention": "Mencionar l'autor",
+  "keyboard_shortcuts.mention": "Esmenta l'autor",
   "keyboard_shortcuts.muted": "Obre la llista d'usuaris silenciats",
   "keyboard_shortcuts.my_profile": "Obre el teu perfil",
   "keyboard_shortcuts.notifications": "Obre la columna de notificacions",
-  "keyboard_shortcuts.open_media": "Obre multimèdia",
-  "keyboard_shortcuts.pinned": "Obrir la llista de publicacions fixades",
+  "keyboard_shortcuts.open_media": "Obre el contingut",
+  "keyboard_shortcuts.pinned": "Obre la llista de publicacions fixades",
   "keyboard_shortcuts.profile": "Obre el perfil de l'autor",
   "keyboard_shortcuts.reply": "Respon a la publicació",
-  "keyboard_shortcuts.requests": "Obre la llista de les sol·licituds de seguiment",
+  "keyboard_shortcuts.requests": "Obre la llista de sol·licituds de seguiment",
   "keyboard_shortcuts.search": "Centra la barra de cerca",
   "keyboard_shortcuts.spoilers": "Mostra/amaga el camp CW",
-  "keyboard_shortcuts.start": "Obre la columna \"Primers passos\"",
-  "keyboard_shortcuts.toggle_hidden": "Mostra/oculta el text marcat com a sensible",
-  "keyboard_shortcuts.toggle_sensitivity": "Mostra/amaga contingut multimèdia",
-  "keyboard_shortcuts.toot": "Iniciar una publicació nova",
+  "keyboard_shortcuts.start": "Obre la columna \"Primeres passes\"",
+  "keyboard_shortcuts.toggle_hidden": "Mostra/amaga el text marcat com a sensible",
+  "keyboard_shortcuts.toggle_sensitivity": "Mostra/amaga contingut",
+  "keyboard_shortcuts.toot": "Inicia una nova publicació",
   "keyboard_shortcuts.unfocus": "Descentra l'àrea de composició de text/cerca",
-  "keyboard_shortcuts.up": "Moure amunt en la llista",
+  "keyboard_shortcuts.up": "Apuja a la llista",
   "lightbox.close": "Tanca",
-  "lightbox.compress": "Quadre de visualització d’imatge comprimida",
-  "lightbox.expand": "Amplia el quadre de visualització de l’imatge",
+  "lightbox.compress": "Comprimeix el quadre de visualització d’imatge",
+  "lightbox.expand": "Amplia el quadre de visualització d’imatge",
   "lightbox.next": "Següent",
   "lightbox.previous": "Anterior",
-  "limited_account_hint.action": "Mostra el perfil",
+  "limited_account_hint.action": "Mostra el perfil de totes maneres",
   "limited_account_hint.title": "Aquest perfil ha estat amagat pels moderadors de {domain}.",
   "lists.account.add": "Afegeix a la llista",
   "lists.account.remove": "Elimina de la llista",
   "lists.delete": "Esborra la llista",
   "lists.edit": "Edita la llista",
-  "lists.edit.submit": "Canvia de títol",
-  "lists.new.create": "Afegeix llista",
+  "lists.edit.submit": "Canvia el títol",
+  "lists.new.create": "Afegeix una llista",
   "lists.new.title_placeholder": "Nou títol de la llista",
   "lists.replies_policy.followed": "Qualsevol usuari que segueixis",
   "lists.replies_policy.list": "Membres de la llista",
@@ -356,8 +353,8 @@
   "lists.search": "Cerca entre les persones que segueixes",
   "lists.subheading": "Les teves llistes",
   "load_pending": "{count, plural, one {# element nou} other {# elements nous}}",
-  "loading_indicator.label": "Carregant...",
-  "media_gallery.toggle_visible": "{number, plural, one {Amaga imatge} other {Amaga imatges}}",
+  "loading_indicator.label": "Es carrega...",
+  "media_gallery.toggle_visible": "{number, plural, one {Amaga la imatge} other {Amaga les imatges}}",
   "missing_indicator.label": "No s'ha trobat",
   "missing_indicator.sublabel": "Aquest recurs no s'ha trobat",
   "moved_to_account_banner.text": "El teu compte {disabledAccount} està actualment desactivat perquè l'has traslladat a {movedToAccount}.",
@@ -365,38 +362,38 @@
   "mute_modal.hide_notifications": "Amagar les notificacions d'aquest usuari?",
   "mute_modal.indefinite": "Indefinit",
   "navigation_bar.about": "Quant a",
-  "navigation_bar.blocks": "Usuaris bloquejats",
+  "navigation_bar.blocks": "Usuaris blocats",
   "navigation_bar.bookmarks": "Marcadors",
   "navigation_bar.community_timeline": "Línia de temps local",
-  "navigation_bar.compose": "Redactar una nova publicació",
+  "navigation_bar.compose": "Redacta una nova publicació",
   "navigation_bar.direct": "Missatges directes",
-  "navigation_bar.discover": "Descobrir",
-  "navigation_bar.domain_blocks": "Dominis bloquejats",
+  "navigation_bar.discover": "Descobreix",
+  "navigation_bar.domain_blocks": "Dominis blocats",
   "navigation_bar.edit_profile": "Edita el perfil",
   "navigation_bar.explore": "Explora",
   "navigation_bar.favourites": "Preferits",
   "navigation_bar.filters": "Paraules silenciades",
   "navigation_bar.follow_requests": "Sol·licituds de seguiment",
-  "navigation_bar.follows_and_followers": "Seguits i seguidors",
+  "navigation_bar.follows_and_followers": "Seguint i seguidors",
   "navigation_bar.lists": "Llistes",
-  "navigation_bar.logout": "Tancar sessió",
+  "navigation_bar.logout": "Tanca la sessió",
   "navigation_bar.mutes": "Usuaris silenciats",
   "navigation_bar.personal": "Personal",
-  "navigation_bar.pins": "Publicacions fixades",
+  "navigation_bar.pins": "Tuts fixats",
   "navigation_bar.preferences": "Preferències",
   "navigation_bar.public_timeline": "Línia de temps federada",
   "navigation_bar.search": "Cerca",
   "navigation_bar.security": "Seguretat",
-  "not_signed_in_indicator.not_signed_in": "Necessites registrar-te per a accedir aquest recurs.",
+  "not_signed_in_indicator.not_signed_in": "Necessites iniciar la sessió per a accedir aquest recurs.",
   "notification.admin.report": "{name} ha reportat {target}",
   "notification.admin.sign_up": "{name} s'ha registrat",
-  "notification.favourite": "a {name} li ha agradat la teva publicació",
+  "notification.favourite": "a {name} li ha agradat el teu tut",
   "notification.follow": "{name} et segueix",
   "notification.follow_request": "{name} ha sol·licitat seguir-te",
   "notification.mention": "{name} t'ha mencionat",
   "notification.own_poll": "La teva enquesta ha finalitzat",
   "notification.poll": "Ha finalitzat una enquesta en què has votat",
-  "notification.reblog": "{name} ha impulsat la teva publicació",
+  "notification.reblog": "{name} t'ha impulsat",
   "notification.status": "{name} acaba de publicar",
   "notification.update": "{name} ha editat una publicació",
   "notifications.clear": "Esborra les notificacions",
@@ -409,32 +406,32 @@
   "notifications.column_settings.filter_bar.category": "Barra ràpida de filtres",
   "notifications.column_settings.filter_bar.show_bar": "Mostra la barra de filtres",
   "notifications.column_settings.follow": "Nous seguidors:",
-  "notifications.column_settings.follow_request": "Noves sol·licituts de seguiment:",
+  "notifications.column_settings.follow_request": "Noves sol·licituds de seguiment:",
   "notifications.column_settings.mention": "Mencions:",
   "notifications.column_settings.poll": "Resultats de l’enquesta:",
   "notifications.column_settings.push": "Notificacions push",
   "notifications.column_settings.reblog": "Impulsos:",
-  "notifications.column_settings.show": "Mostra en la columna",
-  "notifications.column_settings.sound": "Reproduir so",
+  "notifications.column_settings.show": "Mostra a la columna",
+  "notifications.column_settings.sound": "Reprodueix so",
   "notifications.column_settings.status": "Noves publicacions:",
   "notifications.column_settings.unread_notifications.category": "Notificacions no llegides",
   "notifications.column_settings.unread_notifications.highlight": "Destaca les notificacions no llegides",
   "notifications.column_settings.update": "Edicions:",
-  "notifications.filter.all": "Tots",
+  "notifications.filter.all": "Totes",
   "notifications.filter.boosts": "Impulsos",
-  "notifications.filter.favourites": "Preferits",
+  "notifications.filter.favourites": "Preferides",
   "notifications.filter.follows": "Seguiments",
   "notifications.filter.mentions": "Mencions",
   "notifications.filter.polls": "Resultats de l'enquesta",
   "notifications.filter.statuses": "Actualitzacions de gent que segueixes",
   "notifications.grant_permission": "Concedir permís.",
   "notifications.group": "{count} notificacions",
-  "notifications.mark_as_read": "Marca totes les notificacions com a llegides",
+  "notifications.mark_as_read": "Marca cada notificació com a llegida",
   "notifications.permission_denied": "Les notificacions d’escriptori no estan disponibles perquè prèviament s’ha denegat el permís al navegador",
-  "notifications.permission_denied_alert": "No es poden activar les notificacions de l'escriptori perquè el permís del navegador s'ha denegat prèviament",
+  "notifications.permission_denied_alert": "No es poden activar les notificacions de l'escriptori perquè el permís del navegador ha estat denegat abans",
   "notifications.permission_required": "Les notificacions d'escriptori no estan disponibles perquè el permís requerit no ha estat concedit.",
   "notifications_permission_banner.enable": "Activa les notificacions d’escriptori",
-  "notifications_permission_banner.how_to_control": "Per rebre notificacions quan Mastodon no estigui obert, cal activar les notificacions d’escriptori. Pots controlar exactament quins tipus d’interaccions generen notificacions d’escriptori si actives el botó {icon} de dalt.",
+  "notifications_permission_banner.how_to_control": "Per a rebre notificacions quan Mastodon no és obert cal activar les notificacions d’escriptori. Pots controlar amb precisió quins tipus d’interaccions generen notificacions d’escriptori després d’activar el botó {icon} de dalt.",
   "notifications_permission_banner.title": "No et perdis mai res",
   "picture_in_picture.restore": "Retorna’l",
   "poll.closed": "Finalitzada",
@@ -444,80 +441,80 @@
   "poll.vote": "Vota",
   "poll.voted": "Vas votar per aquesta resposta",
   "poll.votes": "{votes, plural, one {# vot} other {# vots}}",
-  "poll_button.add_poll": "Afegir una enquesta",
+  "poll_button.add_poll": "Afegeix una enquesta",
   "poll_button.remove_poll": "Elimina l'enquesta",
   "privacy.change": "Canvia la privacitat de la publicació",
   "privacy.direct.long": "Visible només per als usuaris esmentats",
   "privacy.direct.short": "Només gent mencionada",
   "privacy.private.long": "Visible només per als seguidors",
   "privacy.private.short": "Només seguidors",
-  "privacy.public.long": "Visible per tothom",
-  "privacy.public.short": "Públic",
-  "privacy.unlisted.long": "Visible per tothom però exclosa de les funcions de descobriment",
-  "privacy.unlisted.short": "No llistat",
+  "privacy.public.long": "Visible per a tothom",
+  "privacy.public.short": "Pública",
+  "privacy.unlisted.long": "Visible per a tothom però exclosa de les funcions de descobriment",
+  "privacy.unlisted.short": "No llistada",
   "privacy_policy.last_updated": "Darrera actualització {date}",
   "privacy_policy.title": "Política de Privacitat",
   "refresh": "Actualitza",
-  "regeneration_indicator.label": "Carregant…",
-  "regeneration_indicator.sublabel": "S'està preparant la teva línia de temps d'Inici!",
-  "relative_time.days": "fa {number} dies",
+  "regeneration_indicator.label": "Es carrega…",
+  "regeneration_indicator.sublabel": "Es prepara la teva línia de temps d'Inici!",
+  "relative_time.days": "{number} d",
   "relative_time.full.days": "fa {number, plural, one {# dia} other {# dies}}",
   "relative_time.full.hours": "fa {number, plural, one {# hora} other {# hores}}",
   "relative_time.full.just_now": "ara mateix",
   "relative_time.full.minutes": "fa {number, plural, one {# minut} other {# minuts}}",
   "relative_time.full.seconds": "fa {number, plural, one {# segon} other {# segons}}",
-  "relative_time.hours": "fa {number} hores",
+  "relative_time.hours": "{number} h",
   "relative_time.just_now": "ara",
-  "relative_time.minutes": "fa {number} minuts",
-  "relative_time.seconds": "fa {number} segons",
+  "relative_time.minutes": "{number} min",
+  "relative_time.seconds": "{number} s",
   "relative_time.today": "avui",
   "reply_indicator.cancel": "Cancel·la",
-  "report.block": "Bloqueja",
-  "report.block_explanation": "No veuràs les seves publicacions. Ells no podran veure les teves publicacions ni et podran seguir. Podran saber que estan bloquejats.",
+  "report.block": "Bloca",
+  "report.block_explanation": "No veuràs les seves publicacions. Ell no podran veure les teves ni seguir-te. Podran saber que estan blocats.",
   "report.categories.other": "Altres",
-  "report.categories.spam": "Contingut brossa",
+  "report.categories.spam": "Brossa",
   "report.categories.violation": "El contingut viola una o més regles del servidor",
   "report.category.subtitle": "Tria la millor coincidència",
-  "report.category.title": "Digue'ns què està passant amb aquest {type}",
+  "report.category.title": "Explica'ns què passa amb això ({type})",
   "report.category.title_account": "perfil",
   "report.category.title_status": "publicació",
   "report.close": "Fet",
   "report.comment.title": "Hi ha res més que creguis que hauríem de saber?",
   "report.forward": "Reenvia a {target}",
-  "report.forward_hint": "Aquest compte és d'un altre servidor. Vols enviar-li també una còpia anònima de l'informe?",
+  "report.forward_hint": "El compte és d'un altre servidor. Vols enviar-hi també una còpia anònima de l'informe?",
   "report.mute": "Silencia",
-  "report.mute_explanation": "No veuràs les seves publicacions. Encara poden seguir-te i veure les teves publicacions, però no sabran que han estat silenciats.",
+  "report.mute_explanation": "No veuràs les seves publicacions. Encara pot seguir-te i veure les teves publicacions, però no sabrà que ha estat silenciat.",
   "report.next": "Següent",
   "report.placeholder": "Comentaris addicionals",
   "report.reasons.dislike": "No m'agrada",
-  "report.reasons.dislike_description": "No és una cosa que vulguis veure",
+  "report.reasons.dislike_description": "No és res que vulguis veure",
   "report.reasons.other": "És una altra cosa",
   "report.reasons.other_description": "El problema no encaixa a les altres categories",
   "report.reasons.spam": "És contingut brossa",
   "report.reasons.spam_description": "Enllaços maliciosos, implicació falsa o respostes repetitives",
   "report.reasons.violation": "Viola les regles del servidor",
   "report.reasons.violation_description": "Ets conscient que trenca regles especifiques",
-  "report.rules.subtitle": "Selecciona tot el que correspongui",
+  "report.rules.subtitle": "Selecciona totes les aplicables",
   "report.rules.title": "Quines regles s'han violat?",
-  "report.statuses.subtitle": "Selecciona tot el que correspongui",
-  "report.statuses.title": "Hi ha alguna publicació que recolzi aquest informe?",
+  "report.statuses.subtitle": "Selecciona totes les aplicables",
+  "report.statuses.title": "Hi ha cap publicació que doni suport a aquest informe?",
   "report.submit": "Envia",
-  "report.target": "Denunciant a {target}",
-  "report.thanks.take_action": "Aquestes són les teves opcions per controlar el que veus a Mastodon:",
+  "report.target": "Es reporta {target}",
+  "report.thanks.take_action": "Aquestes són les teves opcions per a controlar el que veus a Mastodon:",
   "report.thanks.take_action_actionable": "Mentre ho revisem, pots prendre mesures contra @{name}:",
-  "report.thanks.title": "No vols veure això?",
-  "report.thanks.title_actionable": "Gràcies per denunciar-ho. Ho investigarem.",
+  "report.thanks.title": "No ho vols veure?",
+  "report.thanks.title_actionable": "Gràcies per informar, ho investigarem.",
   "report.unfollow": "Deixa de seguir @{name}",
-  "report.unfollow_explanation": "Estàs seguint aquest compte. Per no veure les seves publicacions a la teva línia de temps d'Inici, deixa de seguir-lo.",
-  "report_notification.attached_statuses": "{count, plural, one {{count} publicació} other {{count} publicacions}} attached",
+  "report.unfollow_explanation": "Segueixes aquest compte. Per no veure les seves publicacions a la teva línia de temps d'Inici deixa de seguir-lo.",
+  "report_notification.attached_statuses": "{count, plural, one {{count} publicació adjunta} other {{count} publicacions adjuntes}}",
   "report_notification.categories.other": "Altres",
-  "report_notification.categories.spam": "Contingut brossa",
+  "report_notification.categories.spam": "Brossa",
   "report_notification.categories.violation": "Violació de norma",
-  "report_notification.open": "Informe obert",
+  "report_notification.open": "Obre un informe",
   "search.placeholder": "Cerca",
-  "search.search_or_paste": "Cerqueu o escriu l'URL",
+  "search.search_or_paste": "Cerca o escriu l'URL",
   "search_popout.search_format": "Format de cerca avançada",
-  "search_popout.tips.full_text": "El text simple recupera publicacions que has escrit, marcat com a preferides, que has impulsat o on t'han esmentat, així com els usuaris, els noms d'usuaris i les etiquetes.",
+  "search_popout.tips.full_text": "Text simple recupera publicacions que has escrit, les marcades com a preferides, les impulsades o en les que has estat esmentat, així com usuaris, noms d'usuari i etiquetes.",
   "search_popout.tips.hashtag": "etiqueta",
   "search_popout.tips.status": "publicació",
   "search_popout.tips.text": "El text simple recupera coincidències amb els usuaris, els noms d'usuari i les etiquetes",
@@ -530,37 +527,37 @@
   "search_results.statuses_fts_disabled": "La cerca de publicacions pel seu contingut no està habilitada en aquest servidor Mastodon.",
   "search_results.title": "Cerca de {q}",
   "search_results.total": "{count, number} {count, plural, one {resultat} other {resultats}}",
-  "server_banner.about_active_users": "Gent fem servir aquest servidor en els darrers 30 dies (Usuaris Actius Mensuals)",
+  "server_banner.about_active_users": "Gent que ha fet servir aquest servidor en els darrers 30 dies (Usuaris Actius Mensuals)",
   "server_banner.active_users": "usuaris actius",
   "server_banner.administered_by": "Administrat per:",
   "server_banner.introduction": "{domain} és part de la xarxa social descentralitzada, potenciat per {mastodon}.",
-  "server_banner.learn_more": "Aprèn més",
+  "server_banner.learn_more": "Més informació",
   "server_banner.server_stats": "Estadístiques del servidor:",
   "sign_in_banner.create_account": "Crea un compte",
   "sign_in_banner.sign_in": "Inicia sessió",
   "sign_in_banner.text": "Inicia la sessió per seguir perfils o etiquetes, afavorir, compartir i respondre a publicacions o interactuar des del teu compte en un servidor diferent.",
-  "status.admin_account": "Obre l'interfície de moderació per a @{name}",
-  "status.admin_status": "Obrir aquesta publicació a la interfície de moderació",
-  "status.block": "Bloqueja @{name}",
+  "status.admin_account": "Obre la interfície de moderació per a @{name}",
+  "status.admin_status": "Obre aquesta publicació a la interfície de moderació",
+  "status.block": "Bloca @{name}",
   "status.bookmark": "Marca",
   "status.cancel_reblog_private": "Desfés l'impuls",
-  "status.cannot_reblog": "Aquesta publicació no es pot impulsar",
+  "status.cannot_reblog": "No es pot impulsar aquesta publicació",
   "status.copy": "Copia l'enllaç a la publicació",
   "status.delete": "Esborra",
-  "status.detailed_status": "Visualització detallada de la conversa",
-  "status.direct": "Envia missatge directe a @{name}",
+  "status.detailed_status": "Vista detallada de la conversa",
+  "status.direct": "Missatge directe a @{name}",
   "status.edit": "Edita",
   "status.edited": "Editat {date}",
   "status.edited_x_times": "Editat {count, plural, one {{count} vegada} other {{count} vegades}}",
   "status.embed": "Incrusta",
-  "status.favourite": "Preferir",
+  "status.favourite": "Preferit",
   "status.filter": "Filtra aquesta publicació",
-  "status.filtered": "Filtrat",
-  "status.hide": "Amaga publicació",
-  "status.history.created": "{name} ha creat {date}",
-  "status.history.edited": "{name} ha editat {date}",
-  "status.load_more": "Carregar-ne més",
-  "status.media_hidden": "Multimèdia amagada",
+  "status.filtered": "Filtrada",
+  "status.hide": "Amaga la publicació",
+  "status.history.created": "creat per {name} {date}",
+  "status.history.edited": "editat per {name} {date}",
+  "status.load_more": "Carrega'n més",
+  "status.media_hidden": "Contingut amagat",
   "status.mention": "Esmenta @{name}",
   "status.more": "Més",
   "status.mute": "Silencia @{name}",
@@ -571,73 +568,73 @@
   "status.read_more": "Més informació",
   "status.reblog": "Impulsa",
   "status.reblog_private": "Impulsa amb la visibilitat original",
-  "status.reblogged_by": "{name} ha impulsat",
-  "status.reblogs.empty": "Encara ningú no ha impulsat aquesta publicació. Quan algú ho faci, apareixeran aquí.",
+  "status.reblogged_by": "impulsat per {name}",
+  "status.reblogs.empty": "Encara no ha impulsat ningú aquest tut. Quan algú ho faci, apareixerà aquí.",
   "status.redraft": "Esborra-la i reescriure-la",
   "status.remove_bookmark": "Suprimeix el marcador",
-  "status.replied_to": "Ha respòs a {name}",
+  "status.replied_to": "En resposta a {name}",
   "status.reply": "Respon",
   "status.replyAll": "Respon al fil",
   "status.report": "Denuncia @{name}",
   "status.sensitive_warning": "Contingut sensible",
   "status.share": "Comparteix",
   "status.show_filter_reason": "Mostra igualment",
-  "status.show_less": "Mostrar-ne menys",
-  "status.show_less_all": "Mostrar-ne menys per a tot",
-  "status.show_more": "Mostrar-ne més",
-  "status.show_more_all": "Mostrar-ne més per a tot",
+  "status.show_less": "Mostra'n menys",
+  "status.show_less_all": "Mostra'n menys per a tot",
+  "status.show_more": "Mostra'n més",
+  "status.show_more_all": "Mostra'n més per a tot",
   "status.show_original": "Mostra l'original",
   "status.translate": "Tradueix",
-  "status.translated_from_with": "Traduït des de {lang} usant {provider}",
+  "status.translated_from_with": "Traduït del {lang} fent servir {provider}",
   "status.uncached_media_warning": "No està disponible",
-  "status.unmute_conversation": "No silenciïs la conversa",
-  "status.unpin": "No fixis al perfil",
+  "status.unmute_conversation": "Deixa de silenciar la conversa",
+  "status.unpin": "Desfixa del perfil",
   "subscribed_languages.lead": "Només les publicacions en les llengües seleccionades apareixeran en les teves línies de temps \"Inici\" i \"Llistes\" després del canvi. No en seleccionis cap per a rebre publicacions en totes les llengües.",
   "subscribed_languages.save": "Desa els canvis",
   "subscribed_languages.target": "Canvia les llengües subscrites per a {target}",
   "suggestions.dismiss": "Ignora el suggeriment",
-  "suggestions.header": "És possible que estiguis interessat en…",
+  "suggestions.header": "És possible que t'interessi…",
   "tabs_bar.federated_timeline": "Federat",
   "tabs_bar.home": "Inici",
   "tabs_bar.local_timeline": "Local",
   "tabs_bar.notifications": "Notificacions",
-  "time_remaining.days": "{number, plural, one {# dia} other {# dies}} restants",
-  "time_remaining.hours": "{number, plural, one {# hora} other {# hores}} restants",
-  "time_remaining.minutes": "{number, plural, one {# minut} other {# minuts}} restants",
+  "time_remaining.days": "{number, plural, one {# dia restant} other {# dies restants}}",
+  "time_remaining.hours": "{number, plural, one {# hora restant} other {# hores restants}}",
+  "time_remaining.minutes": "{number, plural, one {# minut restant} other {# minuts restants}}",
   "time_remaining.moments": "Moments restants",
-  "time_remaining.seconds": "{number, plural, one {# segon} other {# segons}} restants",
+  "time_remaining.seconds": "{number, plural, one {# segon restant} other {# segons restants}}",
   "timeline_hint.remote_resource_not_displayed": "No es mostren {resource} d'altres servidors.",
   "timeline_hint.resources.followers": "Seguidors",
   "timeline_hint.resources.follows": "Seguiments",
-  "timeline_hint.resources.statuses": "Publicacions més antigues",
-  "trends.counter_by_accounts": "{count, plural, one {{counter} person} other {{counter} persones}} en els passats {days, plural, one {day} other {{days} dies}}",
-  "trends.trending_now": "En tendència",
+  "timeline_hint.resources.statuses": "Tuts més antics",
+  "trends.counter_by_accounts": "{count, plural, one {{counter} persona} other {{counter} persones}} en {days, plural, one {el passat dia} other {els passats {days} dies}}",
+  "trends.trending_now": "És tendència",
   "ui.beforeunload": "El teu esborrany es perdrà si surts de Mastodon.",
-  "units.short.billion": "{count}B",
-  "units.short.million": "{count}M",
-  "units.short.thousand": "{count}K",
-  "upload_area.title": "Arrossega i deixa anar per carregar",
+  "units.short.billion": "{count} B",
+  "units.short.million": "{count} M",
+  "units.short.thousand": "{count} K",
+  "upload_area.title": "Arrossega i deixa anar per a carregar",
   "upload_button.label": "Afegeix imatges, un vídeo o un fitxer d'àudio",
   "upload_error.limit": "S'ha superat el límit de càrrega d'arxius.",
   "upload_error.poll": "No es permet carregar fitxers a les enquestes.",
   "upload_form.audio_description": "Descripció per a persones amb discapacitat auditiva",
   "upload_form.description": "Descripció per a persones amb discapacitat visual",
-  "upload_form.description_missing": "No s'ha afegit cap descripció",
+  "upload_form.description_missing": "No s'hi ha afegit cap descripció",
   "upload_form.edit": "Edita",
   "upload_form.thumbnail": "Canvia la miniatura",
   "upload_form.undo": "Esborra",
   "upload_form.video_description": "Descripció per a persones amb discapacitat auditiva o amb discapacitat visual",
-  "upload_modal.analyzing_picture": "Analitzant imatge…",
+  "upload_modal.analyzing_picture": "S'analitza la imatge…",
   "upload_modal.apply": "Aplica",
-  "upload_modal.applying": "Aplicant…",
-  "upload_modal.choose_image": "Tria imatge",
-  "upload_modal.description_placeholder": "Una ràpida guineu marró salta sobre el gos mandrós",
-  "upload_modal.detect_text": "Detecta el text de l'imatge",
-  "upload_modal.edit_media": "Editar multimèdia",
-  "upload_modal.hint": "Fes clic o arrossega el cercle en la previsualització per escollir el punt focal que sempre serà visible en totes les miniatures.",
-  "upload_modal.preparing_ocr": "Preparant OCR…",
+  "upload_modal.applying": "S'aplica…",
+  "upload_modal.choose_image": "Tria la imatge",
+  "upload_modal.description_placeholder": "Jove xef, porti whisky amb quinze glaçons d’hidrogen, coi!",
+  "upload_modal.detect_text": "Detecta el text de la imatge",
+  "upload_modal.edit_media": "Edita el contingut",
+  "upload_modal.hint": "Fes clic o arrossega el cercle en la previsualització per a triar el punt focal que sempre serà visible en totes les miniatures.",
+  "upload_modal.preparing_ocr": "Es prepara l'OCR…",
   "upload_modal.preview_label": "Previsualitza ({ratio})",
-  "upload_progress.label": "Pujant...",
+  "upload_progress.label": "Es puja...",
   "upload_progress.processing": "En procés…",
   "video.close": "Tanca el vídeo",
   "video.download": "Descarrega l’arxiu",
@@ -645,7 +642,7 @@
   "video.expand": "Amplia el vídeo",
   "video.fullscreen": "Pantalla completa",
   "video.hide": "Amaga el vídeo",
-  "video.mute": "Silencia el so",
+  "video.mute": "Silencia",
   "video.pause": "Pausa",
   "video.play": "Reprodueix",
   "video.unmute": "Activa el so"
diff --git a/app/javascript/mastodon/locales/ckb.json b/app/javascript/mastodon/locales/ckb.json
index ee8c5e224..f2879ca6e 100644
--- a/app/javascript/mastodon/locales/ckb.json
+++ b/app/javascript/mastodon/locales/ckb.json
@@ -2,12 +2,12 @@
   "about.blocks": "ڕاژە سەرپەرشتیکراو",
   "about.contact": "پەیوەندی کردن:",
   "about.disclaimer": "ماستودۆن بە خۆڕایە، پرۆگرامێکی سەرچاوە کراوەیە، وە نیشانە بازرگانیەکەی ماستودۆن (gGmbH)ە",
-  "about.domain_blocks.no_reason_available": "Reason not available",
+  "about.domain_blocks.no_reason_available": "هۆکار بەردەست نیە",
   "about.domain_blocks.preamble": "ماستۆدۆن بە گشتی ڕێگەت پێدەدات بە پیشاندانی ناوەڕۆکەکان و کارلێک کردن لەگەڵ بەکارهێنەران لە هەر ڕاژەیەکی تر بە گشتی. ئەمانە ئەو بەدەرکردنانەن کە کراون لەسەر ئەم ڕاژە تایبەتە.",
   "about.domain_blocks.silenced.explanation": "بە گشتی ناتوانی زانیاریە تایبەتەکان و ناوەڕۆکی ئەم ڕاژەیە ببینی، مەگەر بە ڕوونی بەدوایدا بگەڕێیت یان هەڵیبژێریت بۆ شوێنکەوتنی.",
   "about.domain_blocks.silenced.title": "سنووردار",
   "about.domain_blocks.suspended.explanation": "No data from this server will be processed, stored or exchanged, making any interaction or communication with users from this server impossible.",
-  "about.domain_blocks.suspended.title": "Suspended",
+  "about.domain_blocks.suspended.title": "هەڵپەسێردراوە",
   "about.not_available": "This information has not been made available on this server.",
   "about.powered_by": "Decentralized social media powered by {mastodon}",
   "about.rules": "Server rules",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "ڕاپرسی بگۆڕە بۆ ڕێگەدان بە چەند هەڵبژاردنێک",
   "compose_form.poll.switch_to_single": "گۆڕینی ڕاپرسی بۆ ڕێگەدان بە تاکە هەڵبژاردنێک",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "پاشکەوتی گۆڕانکاریەکان",
   "compose_form.sensitive.hide": "نیشانکردنی میدیا وەک هەستیار",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "کۆپیکردنی ستێکتراسی بۆ کلیپ بۆرد",
   "errors.unexpected_crash.report_issue": "کێشەی گوزارشت",
   "explore.search_results": "ئەنجامەکانی گەڕان",
-  "explore.suggested_follows": "بۆ تۆ",
   "explore.title": "گەڕان",
-  "explore.trending_links": "هەواڵەکان",
-  "explore.trending_statuses": "نووسراوەکان",
-  "explore.trending_tags": "هاشتاگ",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/co.json b/app/javascript/mastodon/locales/co.json
index 4b518c24c..743d577d7 100644
--- a/app/javascript/mastodon/locales/co.json
+++ b/app/javascript/mastodon/locales/co.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Cambià u scandagliu per accittà parechje scelte",
   "compose_form.poll.switch_to_single": "Cambià u scandagliu per ùn accittà ch'una scelta",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "{count, plural, one {Indicà u media cum'è sensibile} other {Indicà i media cum'è sensibili}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Cupià stacktrace nant'à u fermacarta",
   "errors.unexpected_crash.report_issue": "Palisà prublemu",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/cs.json b/app/javascript/mastodon/locales/cs.json
index 190e68f2b..e342aa473 100644
--- a/app/javascript/mastodon/locales/cs.json
+++ b/app/javascript/mastodon/locales/cs.json
@@ -15,20 +15,20 @@
   "account.add_or_remove_from_list": "Přidat nebo odstranit ze seznamů",
   "account.badges.bot": "Robot",
   "account.badges.group": "Skupina",
-  "account.block": "Zablokovat @{name}",
+  "account.block": "Blokovat @{name}",
   "account.block_domain": "Blokovat doménu {domain}",
   "account.blocked": "Blokován",
   "account.browse_more_on_origin_server": "Více na původním profilu",
   "account.cancel_follow_request": "Odvolat žádost o sledování",
   "account.direct": "Poslat @{name} přímou zprávu",
-  "account.disable_notifications": "Zrušit upozorňování na příspěvky @{name}",
+  "account.disable_notifications": "Přestat mě upozorňovat, když @{name} zveřejní příspěvek",
   "account.domain_blocked": "Doména blokována",
   "account.edit_profile": "Upravit profil",
   "account.enable_notifications": "Oznamovat mi příspěvky @{name}",
   "account.endorse": "Zvýraznit na profilu",
-  "account.featured_tags.last_status_at": "Poslední příspěvek na {date}",
+  "account.featured_tags.last_status_at": "Poslední příspěvek {date}",
   "account.featured_tags.last_status_never": "Žádné příspěvky",
-  "account.featured_tags.title": "Hlavní hashtagy {name}",
+  "account.featured_tags.title": "Hlavní hashtagy uživatele {name}",
   "account.follow": "Sledovat",
   "account.followers": "Sledující",
   "account.followers.empty": "Tohoto uživatele ještě nikdo nesleduje.",
@@ -48,13 +48,13 @@
   "account.moved_to": "{name} uvedl/a, že jeho/její nový účet je nyní:",
   "account.mute": "Skrýt @{name}",
   "account.mute_notifications": "Skrýt oznámení od @{name}",
-  "account.muted": "Skryt",
+  "account.muted": "Skrytý",
   "account.open_original_page": "Otevřít původní stránku",
   "account.posts": "Příspěvky",
   "account.posts_with_replies": "Příspěvky a odpovědi",
   "account.report": "Nahlásit @{name}",
   "account.requested": "Čeká na schválení. Kliknutím žádost o sledování zrušíte",
-  "account.share": "Sdílet profil uživatele @{name}",
+  "account.share": "Sdílet profil @{name}",
   "account.show_reblogs": "Zobrazit boosty od @{name}",
   "account.statuses_counter": "{count, plural, one {{counter} Příspěvek} few {{counter} Příspěvky} many {{counter} Příspěvků} other {{counter} Příspěvků}}",
   "account.unblock": "Odblokovat @{name}",
@@ -62,9 +62,9 @@
   "account.unblock_short": "Odblokovat",
   "account.unendorse": "Nezvýrazňovat na profilu",
   "account.unfollow": "Přestat sledovat",
-  "account.unmute": "Odkrýt @{name}",
-  "account.unmute_notifications": "Odkrýt oznámení od @{name}",
-  "account.unmute_short": "Odkrýt",
+  "account.unmute": "Zrušit skrytí @{name}",
+  "account.unmute_notifications": "Zrušit skrytí oznámení od @{name}",
+  "account.unmute_short": "Zrušit skrytí",
   "account_note.placeholder": "Klikněte pro přidání poznámky",
   "admin.dashboard.daily_retention": "Míra udržení uživatelů podle dne po registraci",
   "admin.dashboard.monthly_retention": "Míra udržení uživatelů podle měsíce po registraci",
@@ -85,18 +85,18 @@
   "bundle_column_error.error.title": "Ale ne!",
   "bundle_column_error.network.body": "Při pokusu o načtení této stránky došlo k chybě. To může být způsobeno dočasným problémem s připojením k Internetu nebo k tomuto serveru.",
   "bundle_column_error.network.title": "Chyba sítě",
-  "bundle_column_error.retry": "Zkuste to znovu",
+  "bundle_column_error.retry": "Zkusit znovu",
   "bundle_column_error.return": "Zpět na domovskou stránku",
-  "bundle_column_error.routing.body": "Požadovaná stránka nebyla nalezena. Opravdu je adresa správná?",
+  "bundle_column_error.routing.body": "Požadovaná stránka nebyla nalezena. Opravdu je URL v adresním řádku správně?",
   "bundle_column_error.routing.title": "404",
   "bundle_modal_error.close": "Zavřít",
   "bundle_modal_error.message": "Při načítání této komponenty se něco pokazilo.",
   "bundle_modal_error.retry": "Zkusit znovu",
-  "closed_registrations.other_server_instructions": "Protože je Mastodon decentralizovaný, můžete si vytvořit účet na jiném serveru a stále s tímto serverem komunikovat.",
-  "closed_registrations_modal.description": "V současné době není možné vytvořit účet na {domain} ale mějte prosím na paměti, že k používání Mastodonu nepotřebujete účet konkrétně na {domain}.",
+  "closed_registrations.other_server_instructions": "Protože Mastodon je decentralizovaný, můžete si vytvořit účet na jiném serveru a přesto komunikovat s tímto serverem.",
+  "closed_registrations_modal.description": "V současné době není možné vytvořit účet na {domain}, ale mějte prosím na paměti, že k používání Mastodonu nepotřebujete účet konkrétně na {domain}.",
   "closed_registrations_modal.find_another_server": "Najít jiný server",
-  "closed_registrations_modal.preamble": "Mastodon je decentralizovaný, takže bez ohledu na to, kde vytvoříte svůj účet, budete moci sledovat a komunikovat s kýmkoli na tomto serveru. Můžete ho dokonce hostit!",
-  "closed_registrations_modal.title": "Registrace na Mastodonu",
+  "closed_registrations_modal.preamble": "Mastodon je decentralizovaný, takže bez ohledu na to, kde vytvoříte svůj účet, budete moci sledovat a komunikovat s kýmkoli na tomto serveru. Můžete ho dokonce hostovat!",
+  "closed_registrations_modal.title": "Registrace na Mastodon",
   "column.about": "O aplikaci",
   "column.blocks": "Blokovaní uživatelé",
   "column.bookmarks": "Záložky",
@@ -106,7 +106,7 @@
   "column.domain_blocks": "Blokované domény",
   "column.favourites": "Oblíbené",
   "column.follow_requests": "Žádosti o sledování",
-  "column.home": "Domovská časová osa",
+  "column.home": "Domů",
   "column.lists": "Seznamy",
   "column.mutes": "Skrytí uživatelé",
   "column.notifications": "Oznámení",
@@ -129,7 +129,7 @@
   "compose_form.encryption_warning": "Příspěvky na Mastodonu nejsou end-to-end šifrovány. Nesdílejte přes Mastodon žádné citlivé informace.",
   "compose_form.hashtag_warning": "Tento příspěvek nebude zobrazen pod žádným hashtagem, neboť je neuvedený. Pouze veřejné příspěvky mohou být vyhledány podle hashtagu.",
   "compose_form.lock_disclaimer": "Váš účet není {locked}. Kdokoliv vás může sledovat a vidět vaše příspěvky učené pouze pro sledující.",
-  "compose_form.lock_disclaimer.lock": "uzamčen",
+  "compose_form.lock_disclaimer.lock": "zamčený",
   "compose_form.placeholder": "Co se vám honí hlavou?",
   "compose_form.poll.add_option": "Přidat volbu",
   "compose_form.poll.duration": "Doba trvání ankety",
@@ -138,12 +138,13 @@
   "compose_form.poll.switch_to_multiple": "Povolit u ankety výběr více možností",
   "compose_form.poll.switch_to_single": "Povolit u ankety výběr jediné možnosti",
   "compose_form.publish": "Zveřejnit",
+  "compose_form.publish_form": "Zveřejnit",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Uložit změny",
   "compose_form.sensitive.hide": "{count, plural, one {Označit média za citlivá} few {Označit média za citlivá} many {Označit média za citlivá} other {Označit média za citlivá}}",
   "compose_form.sensitive.marked": "{count, plural, one {Média jsou označena za citlivá} few {Média jsou označena za citlivá} many {Média jsou označena za citlivá} other {Média jsou označena za citlivá}}",
   "compose_form.sensitive.unmarked": "{count, plural, one {Média nejsou označena za citlivá} few {Média nejsou označena za citlivá} many {Média nejsou označena za citlivá} other {Média nejsou označena za citlivá}}",
-  "compose_form.spoiler.marked": "Odstranit varování o obsahu",
+  "compose_form.spoiler.marked": "Odebrat varování o obsahu",
   "compose_form.spoiler.unmarked": "Přidat varování o obsahu",
   "compose_form.spoiler_placeholder": "Sem napište vaše varování",
   "confirmation_modal.cancel": "Zrušit",
@@ -160,19 +161,19 @@
   "confirmations.discard_edit_media.message": "Máte neuložené změny popisku médií nebo náhledu, přesto je zahodit?",
   "confirmations.domain_block.confirm": "Blokovat celou doménu",
   "confirmations.domain_block.message": "Opravdu chcete blokovat celou doménu {domain}? Ve většině případů stačí zablokovat nebo skrýt pár konkrétních uživatelů, což také doporučujeme. Z této domény neuvidíte obsah v žádné veřejné časové ose ani v oznámeních. Vaši sledující z této domény budou odstraněni.",
-  "confirmations.logout.confirm": "Odhlásit",
+  "confirmations.logout.confirm": "Odhlásit se",
   "confirmations.logout.message": "Opravdu se chcete odhlásit?",
   "confirmations.mute.confirm": "Skrýt",
-  "confirmations.mute.explanation": "Tohle skryje uživatelovi příspěvky a příspěvky, které ho zmiňují, ale uživatel stále uvidí vaše příspěvky a může vás sledovat.",
+  "confirmations.mute.explanation": "Tohle skryje uživatelovy příspěvky a příspěvky, které ho zmiňují, ale uživatel stále uvidí vaše příspěvky a může vás sledovat.",
   "confirmations.mute.message": "Opravdu chcete {name} skrýt?",
   "confirmations.redraft.confirm": "Smazat a přepsat",
-  "confirmations.redraft.message": "Jste si jistí, že chcete smazat a přepsat tento příspěvek? Oblíbení a boosty budou ztraceny a odpovědi na původní příspěvek ztratí kontext.",
+  "confirmations.redraft.message": "Opravdu chcete smazat a přepsat tento příspěvek? Oblíbení a boosty budou ztraceny a odpovědi na původní příspěvek ztratí kontext.",
   "confirmations.reply.confirm": "Odpovědět",
   "confirmations.reply.message": "Odpověď přepíše vaši rozepsanou zprávu. Opravdu chcete pokračovat?",
   "confirmations.unfollow.confirm": "Přestat sledovat",
   "confirmations.unfollow.message": "Opravdu chcete {name} přestat sledovat?",
   "conversation.delete": "Smazat konverzaci",
-  "conversation.mark_as_read": "Označit jako přečtenou",
+  "conversation.mark_as_read": "Označit jako přečtené",
   "conversation.open": "Zobrazit konverzaci",
   "conversation.with": "S {names}",
   "copypaste.copied": "Zkopírováno",
@@ -182,13 +183,13 @@
   "directory.new_arrivals": "Nově příchozí",
   "directory.recently_active": "Nedávno aktivní",
   "disabled_account_banner.account_settings": "Nastavení účtu",
-  "disabled_account_banner.text": "Váš účet {disabledAccount} je momentálně zakázán.",
+  "disabled_account_banner.text": "Váš účet {disabledAccount} je momentálně deaktivován.",
   "dismissable_banner.community_timeline": "Toto jsou nejnovější veřejné příspěvky od lidí, jejichž účty hostuje {domain}.",
-  "dismissable_banner.dismiss": "Odmítnout",
-  "dismissable_banner.explore_links": "O těchto novinkách hovoří lidé na tomto a dalších serverech decentralizované sítě.",
-  "dismissable_banner.explore_statuses": "Tyto příspěvky z této a dalších serverů v decentralizované síti nyní získávají trakci na tomto serveru.",
+  "dismissable_banner.dismiss": "Zavřít",
+  "dismissable_banner.explore_links": "O těchto novinkách hovoří lidé na tomto a dalších serverech decentralizované sítě právě teď.",
+  "dismissable_banner.explore_statuses": "Tyto příspěvky z tohoto a dalších serverů v decentralizované síti nyní na tomto serveru získávají na popularitě.",
   "dismissable_banner.explore_tags": "Tyto hashtagy právě teď získávají na popularitě mezi lidmi na tomto a dalších serverech decentralizované sítě.",
-  "dismissable_banner.public_timeline": "Toto jsou nejnovější veřejné příspěvky od lidí na tomto a jiných serverech decentralizované sítě, o které tento server ví.",
+  "dismissable_banner.public_timeline": "Toto jsou nejnovější veřejné příspěvky od lidí na tomto a jiných serverech decentralizované sítě, o kterých tento server ví.",
   "embed.instructions": "Pro přidání příspěvku na vaši webovou stránku zkopírujte níže uvedený kód.",
   "embed.preview": "Takhle to bude vypadat:",
   "emoji_button.activity": "Aktivita",
@@ -198,17 +199,17 @@
   "emoji_button.food": "Jídla a nápoje",
   "emoji_button.label": "Vložit emoji",
   "emoji_button.nature": "Příroda",
-  "emoji_button.not_found": "Nenalezeny žádné odpovídající emoji",
+  "emoji_button.not_found": "Nebyly nalezeny žádné odpovídající emoji",
   "emoji_button.objects": "Předměty",
   "emoji_button.people": "Lidé",
   "emoji_button.recent": "Často používané",
-  "emoji_button.search": "Hledat…",
+  "emoji_button.search": "Hledat...",
   "emoji_button.search_results": "Výsledky hledání",
   "emoji_button.symbols": "Symboly",
   "emoji_button.travel": "Cestování a místa",
-  "empty_column.account_suspended": "Účet pozastaven",
+  "empty_column.account_suspended": "Účet je pozastaven",
   "empty_column.account_timeline": "Nejsou tu žádné příspěvky!",
-  "empty_column.account_unavailable": "Profil nedostupný",
+  "empty_column.account_unavailable": "Profil není dostupný",
   "empty_column.blocks": "Ještě jste nezablokovali žádného uživatele.",
   "empty_column.bookmarked_statuses": "Ještě nemáte v záložkách žádné příspěvky. Pokud si do nich nějaký přidáte, zobrazí se zde.",
   "empty_column.community": "Místní časová osa je prázdná. Napište něco veřejně a rozhýbejte to tu!",
@@ -217,39 +218,35 @@
   "empty_column.explore_statuses": "Momentálně není nic populární. Vraťte se později!",
   "empty_column.favourited_statuses": "Ještě nemáte žádné oblíbené příspěvky. Pokud si nějaký oblíbíte, zobrazí se zde.",
   "empty_column.favourites": "Tento příspěvek si ještě nikdo neoblíbil. Pokud to někdo udělá, zobrazí se zde.",
-  "empty_column.follow_recommendations": "Zdá se, že pro vás nelze vygenerovat žádné návrhy. Můžete zkusit přes vyhledávání naleznout lidi, které znáte, nebo prozkoumat populární hashtagy.",
+  "empty_column.follow_recommendations": "Zdá se, že pro vás nelze vygenerovat žádné návrhy. Můžete zkusit přes vyhledávání nalézt lidi, které znáte, nebo prozkoumat populární hashtagy.",
   "empty_column.follow_requests": "Ještě nemáte žádné žádosti o sledování. Pokud nějakou obdržíte, zobrazí se zde.",
-  "empty_column.hashtag": "Pod tímto hashtagem ještě nic není.",
+  "empty_column.hashtag": "Pod tímto hashtagem zde ještě nic není.",
   "empty_column.home": "Vaše domovská časová osa je prázdná! Naplňte ji sledováním dalších lidí. {suggestions}",
-  "empty_column.home.suggestions": "Prohlédnout návrhy",
+  "empty_column.home.suggestions": "Prohlédněte si návrhy",
   "empty_column.list": "V tomto seznamu ještě nic není. Pokud nějaký člen z tohoto seznamu napíše nový příspěvek, objeví se zde.",
   "empty_column.lists": "Ještě nemáte žádný seznam. Pokud nějaký vytvoříte, zobrazí se zde.",
   "empty_column.mutes": "Ještě jste neskryli žádného uživatele.",
   "empty_column.notifications": "Momentálně nemáte žádná oznámení. Jakmile s vámi někdo bude interagovat, uvidíte to zde.",
   "empty_column.public": "Tady nic není! Napište něco veřejně, nebo začněte ručně sledovat uživatele z jiných serverů, aby tu něco přibylo",
-  "error.unexpected_crash.explanation": "Kvůli chybě v našem kódu nebo problému s kompatibilitou prohlížeče nemohla být tato stránka načtena správně.",
+  "error.unexpected_crash.explanation": "Kvůli chybě v našem kódu nebo problému s kompatibilitou prohlížeče nemohla být tato stránka správně zobrazena.",
   "error.unexpected_crash.explanation_addons": "Tuto stránku nelze správně zobrazit. Takovou chybu obvykle způsobuje doplněk prohlížeče nebo nástroje pro automatický překlad.",
   "error.unexpected_crash.next_steps": "Zkuste stránku načíst znovu. Pokud to nepomůže, zkuste Mastodon používat pomocí jiného prohlížeče nebo nativní aplikace.",
   "error.unexpected_crash.next_steps_addons": "Zkuste je vypnout a stránku obnovit. Pokud to nepomůže, zkuste otevřít Mastodon v jiném prohlížeči nebo nativní aplikaci.",
   "errors.unexpected_crash.copy_stacktrace": "Zkopírovat stacktrace do schránky",
   "errors.unexpected_crash.report_issue": "Nahlásit problém",
   "explore.search_results": "Výsledky hledání",
-  "explore.suggested_follows": "Pro vás",
-  "explore.title": "Objevování",
-  "explore.trending_links": "Zprávy",
-  "explore.trending_statuses": "Příspěvky",
-  "explore.trending_tags": "Hashtagy",
+  "explore.title": "Objevit",
   "filter_modal.added.context_mismatch_explanation": "Tato kategorie filtru se nevztahuje na kontext, ve kterém jste tento příspěvek otevřeli. Pokud chcete, aby byl příspěvek filtrován i v tomto kontextu, budete muset filtr upravit.",
   "filter_modal.added.context_mismatch_title": "Kontext se neshoduje!",
   "filter_modal.added.expired_explanation": "Tato kategorie filtrů vypršela, budete muset změnit datum vypršení platnosti, aby mohla být použita.",
-  "filter_modal.added.expired_title": "Vypršel filtr!",
-  "filter_modal.added.review_and_configure": "Chcete-li zkontrolovat a dále konfigurovat tuto kategorii filtru, přejděte na {settings_link}.",
+  "filter_modal.added.expired_title": "Platnost filtru vypršela!",
+  "filter_modal.added.review_and_configure": "Chcete-li zkontrolovat a dále konfigurovat tuto kategorii filtru, přejděte do {settings_link}.",
   "filter_modal.added.review_and_configure_title": "Nastavení filtru",
   "filter_modal.added.settings_link": "stránka nastavení",
   "filter_modal.added.short_explanation": "Tento příspěvek byl přidán do následující kategorie filtrů: {title}.",
-  "filter_modal.added.title": "Filtr přidán!",
+  "filter_modal.added.title": "Filtr byl přidán!",
   "filter_modal.select_filter.context_mismatch": "nevztahuje se na tento kontext",
-  "filter_modal.select_filter.expired": "vypršela platnost",
+  "filter_modal.select_filter.expired": "platnost vypršela",
   "filter_modal.select_filter.prompt_new": "Nová kategorie: {name}",
   "filter_modal.select_filter.search": "Vyhledat nebo vytvořit",
   "filter_modal.select_filter.subtitle": "Použít existující kategorii nebo vytvořit novou kategorii",
@@ -257,13 +254,13 @@
   "filter_modal.title.status": "Filtrovat příspěvek",
   "follow_recommendations.done": "Hotovo",
   "follow_recommendations.heading": "Sledujte lidi, jejichž příspěvky chcete vidět! Tady jsou nějaké návrhy.",
-  "follow_recommendations.lead": "Příspěvky od lidí, které sledujete, se budou objevovat v chronologickém pořadí ve vaší domovské ose. Nebojte se, že uděláte chybu, můžete lidi stejně snadno kdykoliv přestat sledovat!",
+  "follow_recommendations.lead": "Příspěvky od lidí, které sledujete, se budou objevovat v chronologickém pořadí ve vaší domovské ose. Nebojte se, že uděláte chybu, stejně snadno můžete lidi kdykoliv přestat sledovat!",
   "follow_request.authorize": "Autorizovat",
-  "follow_request.reject": "Odmítnout",
-  "follow_requests.unlocked_explanation": "Přestože váš účet není uzamčen, personál {domain} usoudil, že byste mohli chtít tyto požadavky na sledování zkontrolovat ručně.",
+  "follow_request.reject": "Zamítnout",
+  "follow_requests.unlocked_explanation": "Přestože váš účet není zamčený, administrátor {domain} usoudil, že byste mohli chtít tyto požadavky na sledování zkontrolovat ručně.",
   "footer.about": "O aplikaci",
   "footer.directory": "Adresář profilů",
-  "footer.get_app": "Stáhnout aplikaci",
+  "footer.get_app": "Získat aplikaci",
   "footer.invite": "Pozvat lidi",
   "footer.keyboard_shortcuts": "Klávesové zkratky",
   "footer.privacy_policy": "Zásady ochrany osobních údajů",
@@ -273,12 +270,12 @@
   "hashtag.column_header.tag_mode.all": "a {additional}",
   "hashtag.column_header.tag_mode.any": "nebo {additional}",
   "hashtag.column_header.tag_mode.none": "bez {additional}",
-  "hashtag.column_settings.select.no_options_message": "Nenalezeny žádné návrhy",
+  "hashtag.column_settings.select.no_options_message": "Nebyly nalezeny žádné návrhy",
   "hashtag.column_settings.select.placeholder": "Zadejte hashtagy…",
   "hashtag.column_settings.tag_mode.all": "Všechny z těchto",
-  "hashtag.column_settings.tag_mode.any": "Jakékoliv z těchto",
-  "hashtag.column_settings.tag_mode.none": "Žádné z těchto",
-  "hashtag.column_settings.tag_toggle": "Zahrnout v tomto sloupci dodatečné tagy",
+  "hashtag.column_settings.tag_mode.any": "Jakýkoliv z těchto",
+  "hashtag.column_settings.tag_mode.none": "Žádný z těchto",
+  "hashtag.column_settings.tag_toggle": "Zahrnout v tomto sloupci další štítky",
   "hashtag.follow": "Sledovat hashtag",
   "hashtag.unfollow": "Zrušit sledování hashtagu",
   "home.column_settings.basic": "Základní",
@@ -287,16 +284,16 @@
   "home.hide_announcements": "Skrýt oznámení",
   "home.show_announcements": "Zobrazit oznámení",
   "interaction_modal.description.favourite": "Pokud máte účet na Mastodonu, můžete tento příspěvek označit jako oblíbený a dát tak autorovi najevo, že si ho vážíte, a uložit si ho na později.",
-  "interaction_modal.description.follow": "S účtem na Mastodonu můžete sledovat {name} a přijímat příspěvky ve vašem domovském kanálu.",
-  "interaction_modal.description.reblog": "S účtem na Mastodonu můžete podpořit tento příspěvek a sdílet jej s vlastními sledujícími.",
-  "interaction_modal.description.reply": "S účtem na Mastodonu můžete reagovat na tento příspěvek.",
+  "interaction_modal.description.follow": "S účtem na Mastodonu můžete sledovat uživatele {name} a přijímat příspěvky ve vašem domovském kanálu.",
+  "interaction_modal.description.reblog": "S účtem na Mastodonu můžete boostnout tento příspěvek a sdílet jej s vlastními sledujícími.",
+  "interaction_modal.description.reply": "S účtem na Mastodonu můžete odpovědět na tento příspěvek.",
   "interaction_modal.on_another_server": "Na jiném serveru",
   "interaction_modal.on_this_server": "Na tomto serveru",
-  "interaction_modal.other_server_instructions": "Zkopírujte a vložte tuto URL do vyhledávacího pole vaší oblíbené Mastodon aplikace nebo webového rozhraní vašeho Mastodon serveru.",
-  "interaction_modal.preamble": "Protože je Mastodon decentralizovaný, pokud nemáte účet na tomto serveru, můžete použít svůj existující účet hostovaný jiným Mastodon serverem nebo kompatibilní platformou.",
-  "interaction_modal.title.favourite": "Oblíbený příspěvek {name}",
+  "interaction_modal.other_server_instructions": "Zkopírujte a vložte tuto URL adresu do vyhledávacího pole vaší oblíbené Mastodon aplikace nebo webového rozhraní vašeho Mastodon serveru.",
+  "interaction_modal.preamble": "Protože Mastodon je decentralizovaný, pokud nemáte účet na tomto serveru, můžete použít svůj existující účet hostovaný jiným Mastodon serverem nebo kompatibilní platformou.",
+  "interaction_modal.title.favourite": "Oblíbený příspěvek od {name}",
   "interaction_modal.title.follow": "Sledovat {name}",
-  "interaction_modal.title.reblog": "Zvýšit příspěvek uživatele {name}",
+  "interaction_modal.title.reblog": "Boostnout příspěvek uživatele {name}",
   "interaction_modal.title.reply": "Odpovědět na příspěvek uživatele {name}",
   "intervals.full.days": "{number, plural, one {# den} few {# dny} many {# dní} other {# dní}}",
   "intervals.full.hours": "{number, plural, one {# hodina} few {# hodiny} many {# hodin} other {# hodin}}",
@@ -307,10 +304,10 @@
   "keyboard_shortcuts.column": "Focus na sloupec",
   "keyboard_shortcuts.compose": "Focus na textové pole nového příspěvku",
   "keyboard_shortcuts.description": "Popis",
-  "keyboard_shortcuts.direct": "Otevřít sloupec přímých zpráv",
+  "keyboard_shortcuts.direct": "k otevření sloupce přímých zpráv",
   "keyboard_shortcuts.down": "Posunout dolů v seznamu",
   "keyboard_shortcuts.enter": "Otevřít příspěvek",
-  "keyboard_shortcuts.favourite": "Oblíbit příspěvek",
+  "keyboard_shortcuts.favourite": "Oblíbit si příspěvek",
   "keyboard_shortcuts.favourites": "Otevřít seznam oblíbených",
   "keyboard_shortcuts.federated": "Otevřít federovanou časovou osu",
   "keyboard_shortcuts.heading": "Klávesové zkratky",
@@ -322,7 +319,7 @@
   "keyboard_shortcuts.muted": "Otevřít seznam skrytých uživatelů",
   "keyboard_shortcuts.my_profile": "Otevřít váš profil",
   "keyboard_shortcuts.notifications": "Otevřít sloupec oznámení",
-  "keyboard_shortcuts.open_media": "Otevřít media",
+  "keyboard_shortcuts.open_media": "Otevřít média",
   "keyboard_shortcuts.pinned": "Otevřít seznam připnutých příspěvků",
   "keyboard_shortcuts.profile": "Otevřít autorův profil",
   "keyboard_shortcuts.reply": "Odpovědět na příspěvek",
@@ -336,8 +333,8 @@
   "keyboard_shortcuts.unfocus": "Zrušit focus nového příspěvku/hledání",
   "keyboard_shortcuts.up": "Posunout nahoru v seznamu",
   "lightbox.close": "Zavřít",
-  "lightbox.compress": "Zobrazit celý obrázek najednou",
-  "lightbox.expand": "Ukázat obrázek v plné velikosti",
+  "lightbox.compress": "Sbalit pole zobrazení obrázku",
+  "lightbox.expand": "Rozbalit pole zobrazení obrázku",
   "lightbox.next": "Další",
   "lightbox.previous": "Předchozí",
   "limited_account_hint.action": "Přesto profil zobrazit",
@@ -349,18 +346,18 @@
   "lists.edit.submit": "Změnit název",
   "lists.new.create": "Přidat seznam",
   "lists.new.title_placeholder": "Název nového seznamu",
-  "lists.replies_policy.followed": "Sledované uživatele",
-  "lists.replies_policy.list": "Členy seznamu",
-  "lists.replies_policy.none": "Nikoho",
-  "lists.replies_policy.title": "Zobrazovat odpovědi na:",
+  "lists.replies_policy.followed": "Sledovaným uživatelům",
+  "lists.replies_policy.list": "Členům seznamu",
+  "lists.replies_policy.none": "Nikomu",
+  "lists.replies_policy.title": "Odpovědi zobrazovat:",
   "lists.search": "Hledejte mezi lidmi, které sledujete",
   "lists.subheading": "Vaše seznamy",
   "load_pending": "{count, plural, one {# nová položka} few {# nové položky} many {# nových položek} other {# nových položek}}",
-  "loading_indicator.label": "Načítání…",
+  "loading_indicator.label": "Načítání...",
   "media_gallery.toggle_visible": "{number, plural, one {Skrýt obrázek} few {Skrýt obrázky} many {Skrýt obrázky} other {Skrýt obrázky}}",
   "missing_indicator.label": "Nenalezeno",
   "missing_indicator.sublabel": "Tento zdroj se nepodařilo najít",
-  "moved_to_account_banner.text": "Váš účet {disabledAccount} je momentálně zakázán, protože jste se přesunul/a na {movedToAccount}.",
+  "moved_to_account_banner.text": "Váš účet {disabledAccount} je momentálně deaktivován, protože jste se přesunul/a na {movedToAccount}.",
   "mute_modal.duration": "Trvání",
   "mute_modal.hide_notifications": "Skrýt oznámení od tohoto uživatele?",
   "mute_modal.indefinite": "Neomezeně",
@@ -370,16 +367,16 @@
   "navigation_bar.community_timeline": "Místní časová osa",
   "navigation_bar.compose": "Vytvořit nový příspěvek",
   "navigation_bar.direct": "Přímé zprávy",
-  "navigation_bar.discover": "Objevujte",
+  "navigation_bar.discover": "Objevit",
   "navigation_bar.domain_blocks": "Blokované domény",
   "navigation_bar.edit_profile": "Upravit profil",
-  "navigation_bar.explore": "Objevování",
+  "navigation_bar.explore": "Prozkoumat",
   "navigation_bar.favourites": "Oblíbené",
   "navigation_bar.filters": "Skrytá slova",
   "navigation_bar.follow_requests": "Žádosti o sledování",
   "navigation_bar.follows_and_followers": "Sledovaní a sledující",
   "navigation_bar.lists": "Seznamy",
-  "navigation_bar.logout": "Odhlásit",
+  "navigation_bar.logout": "Odhlásit se",
   "navigation_bar.mutes": "Skrytí uživatelé",
   "navigation_bar.personal": "Osobní",
   "navigation_bar.pins": "Připnuté příspěvky",
@@ -397,9 +394,9 @@
   "notification.own_poll": "Vaše anketa skončila",
   "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.status": "Uživatel {name} právě přidal příspěvek",
   "notification.update": "Uživatel {name} upravil příspěvek",
-  "notifications.clear": "Vymazat oznámení",
+  "notifications.clear": "Vyčistit oznámení",
   "notifications.clear_confirmation": "Opravdu chcete trvale smazat všechna vaše oznámení?",
   "notifications.column_settings.admin.report": "Nová hlášení:",
   "notifications.column_settings.admin.sign_up": "Nové registrace:",
@@ -426,7 +423,7 @@
   "notifications.filter.follows": "Sledování",
   "notifications.filter.mentions": "Zmínky",
   "notifications.filter.polls": "Výsledky anket",
-  "notifications.filter.statuses": "Aktuality od lidí, které sledujete",
+  "notifications.filter.statuses": "Aktualizace od lidí, které sledujete",
   "notifications.grant_permission": "Udělit oprávnění.",
   "notifications.group": "{count} oznámení",
   "notifications.mark_as_read": "Označit všechna oznámení jako přečtená",
@@ -434,25 +431,25 @@
   "notifications.permission_denied_alert": "Oznámení na ploše není možné zapnout, protože oprávnění bylo v minulosti zamítnuto",
   "notifications.permission_required": "Oznámení na ploše nejsou k dispozici, protože nebylo uděleno potřebné oprávnění.",
   "notifications_permission_banner.enable": "Povolit oznámení na ploše",
-  "notifications_permission_banner.how_to_control": "Chcete-li dostávat oznámení i když nemáte Mastodon otevřený, povolte oznámení na ploše. Můžete si zvolit, o kterých druzích interakcí chcete být oznámením na ploše informování pod tlačítkem {icon} výše.",
+  "notifications_permission_banner.how_to_control": "Chcete-li dostávat oznámení, i když nemáte Mastodon otevřený, povolte oznámení na ploše. Můžete si zvolit, o kterých druzích interakcí chcete být oznámením na ploše informování pod tlačítkem {icon} výše.",
   "notifications_permission_banner.title": "Nenechte si nic uniknout",
-  "picture_in_picture.restore": "Vložit zpět",
+  "picture_in_picture.restore": "Vrátit zpět",
   "poll.closed": "Uzavřeno",
   "poll.refresh": "Obnovit",
   "poll.total_people": "{count, plural, one {# člověk} few {# lidé} many {# lidí} other {# lidí}}",
   "poll.total_votes": "{count, plural, one {# hlas} few {# hlasy} many {# hlasů} other {# hlasů}}",
   "poll.vote": "Hlasovat",
-  "poll.voted": "Pro tuto odpověď jste hlasovali",
+  "poll.voted": "Hlasoval/a jste pro tuto odpověď",
   "poll.votes": "{votes, plural, one {# hlas} few {# hlasy} many {# hlasů} other {# hlasů}}",
   "poll_button.add_poll": "Přidat anketu",
-  "poll_button.remove_poll": "Odstranit anketu",
+  "poll_button.remove_poll": "Odebrat anketu",
   "privacy.change": "Změnit soukromí příspěvku",
   "privacy.direct.long": "Viditelný pouze pro zmíněné uživatele",
-  "privacy.direct.short": "Jen zmínění lidé",
+  "privacy.direct.short": "Pouze zmínění lidé",
   "privacy.private.long": "Viditelný pouze pro sledující",
   "privacy.private.short": "Pouze sledující",
   "privacy.public.long": "Viditelný pro všechny",
-  "privacy.public.short": "Veřejný",
+  "privacy.public.short": "Veřejné",
   "privacy.unlisted.long": "Viditelný pro všechny, ale vyňat z funkcí objevování",
   "privacy.unlisted.short": "Neuvedený",
   "privacy_policy.last_updated": "Naposledy aktualizováno {date}",
@@ -472,43 +469,43 @@
   "relative_time.seconds": "{number} s",
   "relative_time.today": "dnes",
   "reply_indicator.cancel": "Zrušit",
-  "report.block": "Zablokovat",
-  "report.block_explanation": "Neuvidíte jejich příspěvky. Oni neuvidí vaše příspěvky ani vás nebudou moci sledovat. Poznají, že jsou blokováni.",
+  "report.block": "Blokovat",
+  "report.block_explanation": "Neuvidíte příspěvky tohoto uživatele. On neuvidí vaše příspěvky, ani vás nebude moci sledovat. Pozná, že je blokován.",
   "report.categories.other": "Ostatní",
   "report.categories.spam": "Spam",
   "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": "Povězte nám, proč chcete tento {type} nahlásit",
   "report.category.title_account": "profil",
   "report.category.title_status": "příspěvek",
   "report.close": "Hotovo",
-  "report.comment.title": "Ještě něco jiného, co myslíte, že bychom měli vědět?",
-  "report.forward": "Přeposlat na {target}",
+  "report.comment.title": "Je ještě něco jiného, co myslíte, že bychom měli vědět?",
+  "report.forward": "Přeposlat do {target}",
   "report.forward_hint": "Tento účet je z jiného serveru. Chcete na něj také poslat anonymizovanou kopii hlášení?",
   "report.mute": "Skrýt",
-  "report.mute_explanation": "Neuvidíte jejich příspěvky. Oni vás mohou nadále sledovat i vidět vaše příspěvky a nebudou vědět, že jsou skryti.",
-  "report.next": "Dále",
-  "report.placeholder": "Dodatečné komentáře",
-  "report.reasons.dislike": "Nelíbí se mi",
+  "report.mute_explanation": "Neuvidíte příspěvky tohoto uživatele. On vás může nadále sledovat i vidět vaše příspěvky a nebude vědět, že je skryt.",
+  "report.next": "Další",
+  "report.placeholder": "Další komentáře",
+  "report.reasons.dislike": "Nelíbí se mi to",
   "report.reasons.dislike_description": "Není to něco, co chcete vidět",
-  "report.reasons.other": "Jde o něco jiného",
+  "report.reasons.other": "Je to 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.reasons.violation": "Porušuje to pravidla serveru",
+  "report.reasons.violation_description": "Máte za to, že to porušuje konkrétní pravidla",
   "report.rules.subtitle": "Vyberte všechna relevantní",
-  "report.rules.title": "Která pravidla porušuje?",
+  "report.rules.title": "Která pravidla to 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.target": "Nahlašování uživatele {target}",
   "report.thanks.take_action": "Tady jsou vaše možnosti pro řízení toho, co na Mastodonu vidíte:",
-  "report.thanks.take_action_actionable": "Zatímco to posuzujeme, můžete podniknout kroky proti @{name}:",
+  "report.thanks.take_action_actionable": "Zatímco to posuzujeme, můžete podniknout akce proti @{name}:",
   "report.thanks.title": "Nechcete tohle vidět?",
   "report.thanks.title_actionable": "Děkujeme za nahlášení, podíváme se na to.",
   "report.unfollow": "Přestat sledovat @{name}",
-  "report.unfollow_explanation": "Tento účet sledujete. Abyste už neviděli jejich příspěvky ve své domácí časové ose, přestaňte je sledovat.",
+  "report.unfollow_explanation": "Tento účet sledujete. Abyste už neviděli jeho příspěvky ve své domácí časové ose, přestaňte jej sledovat.",
   "report_notification.attached_statuses": "{count, plural, one {{count} připojený příspěvek} few {{count} připojené příspěvky} many {{count} připojených příspěvků} other {{count} připojených příspěvků}}",
   "report_notification.categories.other": "Ostatní",
   "report_notification.categories.spam": "Spam",
@@ -541,17 +538,17 @@
   "sign_in_banner.text": "Přihlaste se pro sledování profilů nebo hashtagů, oblíbených, sdílení a odpovědi na příspěvky nebo interakci z vašeho účtu na jiném serveru.",
   "status.admin_account": "Otevřít moderátorské rozhraní pro @{name}",
   "status.admin_status": "Otevřít tento příspěvek v moderátorském rozhraní",
-  "status.block": "Zablokovat @{name}",
+  "status.block": "Blokovat @{name}",
   "status.bookmark": "Přidat do záložek",
-  "status.cancel_reblog_private": "Zrušit boost",
+  "status.cancel_reblog_private": "Zrušit boostnutí",
   "status.cannot_reblog": "Tento příspěvek nemůže být boostnutý",
   "status.copy": "Zkopírovat odkaz na příspěvek",
   "status.delete": "Smazat",
   "status.detailed_status": "Podrobné zobrazení konverzace",
   "status.direct": "Poslat @{name} přímou zprávu",
   "status.edit": "Upravit",
-  "status.edited": "Upraven {date}",
-  "status.edited_x_times": "Upraven {count, plural, one {{count}krát} few {{count}krát} many {{count}krát} other {{count}krát}}",
+  "status.edited": "Upraveno {date}",
+  "status.edited_x_times": "Upraveno {count, plural, one {{count}krát} few {{count}krát} many {{count}krát} other {{count}krát}}",
   "status.embed": "Vložit na web",
   "status.favourite": "Oblíbit",
   "status.filter": "Filtrovat tento příspěvek",
@@ -559,13 +556,13 @@
   "status.hide": "Skrýt příspěvek",
   "status.history.created": "Uživatel {name} vytvořil {date}",
   "status.history.edited": "Uživatel {name} upravil {date}",
-  "status.load_more": "Zobrazit více",
-  "status.media_hidden": "Média skryta",
+  "status.load_more": "Načíst více",
+  "status.media_hidden": "Média jsou skryta",
   "status.mention": "Zmínit @{name}",
   "status.more": "Více",
   "status.mute": "Skrýt @{name}",
   "status.mute_conversation": "Skrýt konverzaci",
-  "status.open": "Otevřít tento příspěvek",
+  "status.open": "Rozbalit tento příspěvek",
   "status.pin": "Připnout na profil",
   "status.pinned": "Připnutý příspěvek",
   "status.read_more": "Číst více",
@@ -575,7 +572,7 @@
   "status.reblogs.empty": "Tento příspěvek ještě nikdo neboostnul. Pokud to někdo udělá, zobrazí se zde.",
   "status.redraft": "Smazat a přepsat",
   "status.remove_bookmark": "Odstranit ze záložek",
-  "status.replied_to": "Odpověděl uživateli {name}",
+  "status.replied_to": "Odpověděl/a uživateli {name}",
   "status.reply": "Odpovědět",
   "status.replyAll": "Odpovědět na vlákno",
   "status.report": "Nahlásit @{name}",
@@ -586,19 +583,19 @@
   "status.show_less_all": "Zobrazit méně pro všechny",
   "status.show_more": "Zobrazit více",
   "status.show_more_all": "Zobrazit více pro všechny",
-  "status.show_original": "Zobrazit původní",
+  "status.show_original": "Zobrazit originál",
   "status.translate": "Přeložit",
   "status.translated_from_with": "Přeloženo z {lang} pomocí {provider}",
   "status.uncached_media_warning": "Nedostupné",
-  "status.unmute_conversation": "Odkrýt konverzaci",
+  "status.unmute_conversation": "Zrušit skrytí konverzaci",
   "status.unpin": "Odepnout z profilu",
-  "subscribed_languages.lead": "Po změně se objeví pouze příspěvky ve vybraných jazycích na vašem domě a zobrazí se seznam časových os. Pro příjem příspěvků ve všech jazycích nevyber žádnou.",
+  "subscribed_languages.lead": "Po změně se objeví pouze příspěvky ve vybraných jazycích na vaší domovské časové ose a seznamu časových os. Pro příjem příspěvků ve všech jazycích nevyberte žádný jazyk.",
   "subscribed_languages.save": "Uložit změny",
   "subscribed_languages.target": "Změnit odebírané jazyky na {target}",
   "suggestions.dismiss": "Odmítnout návrh",
   "suggestions.header": "Mohlo by vás zajímat…",
-  "tabs_bar.federated_timeline": "Federovaná",
-  "tabs_bar.home": "Domovská",
+  "tabs_bar.federated_timeline": "Federované",
+  "tabs_bar.home": "Domů",
   "tabs_bar.local_timeline": "Místní",
   "tabs_bar.notifications": "Oznámení",
   "time_remaining.days": "{number, plural, one {Zbývá # den} few {Zbývají # dny} many {Zbývá # dní} other {Zbývá # dní}}",
@@ -606,7 +603,7 @@
   "time_remaining.minutes": "{number, plural, one {Zbývá # minuta} few {Zbývají # minuty} many {Zbývá # minut} other {Zbývá # minut}}",
   "time_remaining.moments": "Zbývá několik sekund",
   "time_remaining.seconds": "{number, plural, one {Zbývá # sekunda} few {Zbývají # sekundy} many {Zbývá # sekund} other {Zbývá # sekund}}",
-  "timeline_hint.remote_resource_not_displayed": "{resource} z jiných serveru se nezobrazuje.",
+  "timeline_hint.remote_resource_not_displayed": "{resource} z jiných serverů se nezobrazují.",
   "timeline_hint.resources.followers": "Sledující",
   "timeline_hint.resources.follows": "Sledovaní",
   "timeline_hint.resources.statuses": "Starší příspěvky",
@@ -628,7 +625,7 @@
   "upload_form.undo": "Smazat",
   "upload_form.video_description": "Popis pro sluchově či zrakově postižené",
   "upload_modal.analyzing_picture": "Analyzuji obrázek…",
-  "upload_modal.apply": "Aplikovat",
+  "upload_modal.apply": "Použít",
   "upload_modal.applying": "Aplikuji…",
   "upload_modal.choose_image": "Vybrat obrázek",
   "upload_modal.description_placeholder": "Příliš žluťoučký kůň úpěl ďábelské ódy",
@@ -637,13 +634,13 @@
   "upload_modal.hint": "Kliknutím na nebo přetáhnutím kruhu na náhledu vyberte oblast, která bude na všech náhledech vždy zobrazen.",
   "upload_modal.preparing_ocr": "Příprava OCR…",
   "upload_modal.preview_label": "Náhled ({ratio})",
-  "upload_progress.label": "Nahrávání…",
+  "upload_progress.label": "Nahrávání...",
   "upload_progress.processing": "Zpracovávání…",
   "video.close": "Zavřít video",
   "video.download": "Stáhnout soubor",
   "video.exit_fullscreen": "Ukončit režim celé obrazovky",
-  "video.expand": "Otevřít video",
-  "video.fullscreen": "Celá obrazovka",
+  "video.expand": "Rozbalit video",
+  "video.fullscreen": "Režim celé obrazovky",
   "video.hide": "Skrýt video",
   "video.mute": "Vypnout zvuk",
   "video.pause": "Pauza",
diff --git a/app/javascript/mastodon/locales/cy.json b/app/javascript/mastodon/locales/cy.json
index 9812eec62..96567a6a5 100644
--- a/app/javascript/mastodon/locales/cy.json
+++ b/app/javascript/mastodon/locales/cy.json
@@ -1,14 +1,14 @@
 {
   "about.blocks": "Gweinyddion sy'n cael eu cymedroli",
-  "about.contact": "Cyswllt:",
+  "about.contact": "Cysylltwch â:",
   "about.disclaimer": "Mae Mastodon yn feddalwedd rhydd, cod agored ac o dan hawlfraint Mastodon gGmbH.",
-  "about.domain_blocks.no_reason_available": "Rheswm ddim ar gael",
+  "about.domain_blocks.no_reason_available": "Nid yw'r rheswm ar gael",
   "about.domain_blocks.preamble": "Yn gyffredinol, mae Mastodon yn caniatáu i chi weld cynnwys gan unrhyw weinyddwr arall yn y ffederasiwn a rhyngweithio â hi. Dyma'r eithriadau a wnaed ar y gweinydd penodol hwn.",
   "about.domain_blocks.silenced.explanation": "Yn gyffredinol, fyddwch chi ddim yn gweld proffiliau a chynnwys o'r gweinydd hwn, oni bai eich bod yn chwilio'n benodol amdano neu yn ymuno drwy ei ddilyn.",
-  "about.domain_blocks.silenced.title": "Tawelwyd",
+  "about.domain_blocks.silenced.title": "Cyfyngedig",
   "about.domain_blocks.suspended.explanation": "Ni fydd data o'r gweinydd hwn yn cael ei brosesu, ei storio na'i gyfnewid, gan wneud unrhyw ryngweithio neu gyfathrebu gyda defnyddwyr o'r gweinydd hwn yn amhosibl.",
   "about.domain_blocks.suspended.title": "Ataliwyd",
-  "about.not_available": "Nid yw'r wybodaeth hwn wedi ei wneud ar gael ar y gweinydd hwn.",
+  "about.not_available": "Nid yw'r wybodaeth hon ar gael ar y gweinydd hwn.",
   "about.powered_by": "Cyfrwng cymdeithasol datganoledig wedi ei yrru gan {mastodon}",
   "about.rules": "Rheolau'r gweinydd",
   "account.account_note_header": "Nodyn",
@@ -25,46 +25,46 @@
   "account.domain_blocked": "Parth wedi ei flocio",
   "account.edit_profile": "Golygu proffil",
   "account.enable_notifications": "Rhowch wybod i fi pan fydd @{name} yn postio",
-  "account.endorse": "Arddangos ar fy mhroffil",
+  "account.endorse": "Dangos ar fy mhroffil",
   "account.featured_tags.last_status_at": "Y cofnod diwethaf ar {date}",
   "account.featured_tags.last_status_never": "Dim postiadau",
   "account.featured_tags.title": "hashnodau dan sylw {name}",
   "account.follow": "Dilyn",
   "account.followers": "Dilynwyr",
   "account.followers.empty": "Does neb yn dilyn y defnyddiwr hwn eto.",
-  "account.followers_counter": "{count, plural, one {{counter} Dilynwr} other {{counter} o Ddilynwyr}}",
+  "account.followers_counter": "{count, plural, one {Dilynwr: {counter}} other {Dilynwyr: {counter}}}",
   "account.following": "Yn dilyn",
-  "account.following_counter": "{count, plural, one {{counter} yn Dilyn} other {{counter} yn Dilyn}}",
+  "account.following_counter": "{count, plural, one {Yn dilyn: {counter}} other {Yn dilyn: {counter}}}",
   "account.follows.empty": "Nid yw'r defnyddiwr hwn yn dilyn unrhyw un eto.",
   "account.follows_you": "Yn eich dilyn chi",
   "account.go_to_profile": "Mynd i'r proffil",
-  "account.hide_reblogs": "Cuddio bwstiau o @{name}",
+  "account.hide_reblogs": "Cuddio hybiau gan @{name}",
   "account.joined_short": "Ymunodd",
   "account.languages": "Newid ieithoedd wedi tanysgrifio iddynt nhw",
   "account.link_verified_on": "Gwiriwyd perchnogaeth y ddolen yma ar {date}",
-  "account.locked_info": "Mae'r statws preifatrwydd cyfrif hwn wedi'i osod i gloi. Mae'r perchennog yn adolygu'r sawl sy'n gallu eu dilyn.",
+  "account.locked_info": "Mae'r statws preifatrwydd cyfrif hwn wedi'i osod i fod ar glo. Mae'r perchennog yn adolygu'r sawl sy'n gallu eu dilyn.",
   "account.media": "Cyfryngau",
   "account.mention": "Crybwyll @{name}",
   "account.moved_to": "Mae {name} wedi nodi fod eu cyfrif newydd yn:",
-  "account.mute": "Tawelu @{name}",
-  "account.mute_notifications": "Cuddio hysbysiadau o @{name}",
-  "account.muted": "Distewyd",
+  "account.mute": "Anwybyddu @{name}",
+  "account.mute_notifications": "Diffodd hysbysiadau o @{name}",
+  "account.muted": "Wedi anwybyddu",
   "account.open_original_page": "Agor y dudalen wreiddiol",
   "account.posts": "Postiadau",
   "account.posts_with_replies": "Postiadau ac atebion",
   "account.report": "Adrodd @{name}",
   "account.requested": "Aros am gymeradwyaeth. Cliciwch er mwyn canslo cais dilyn",
   "account.share": "Rhannwch broffil @{name}",
-  "account.show_reblogs": "Dangos bwstiau o @{name}",
-  "account.statuses_counter": "{count, plural, one {{counter} Dŵt} other {{counter} o Dŵtiau}}",
+  "account.show_reblogs": "Dangos hybiau gan @{name}",
+  "account.statuses_counter": "{count, plural, one {Postiad: {counter}} other {Postiadau: {counter}}}",
   "account.unblock": "Dadflocio @{name}",
-  "account.unblock_domain": "Dadguddio {domain}",
-  "account.unblock_short": "Dad-flocio",
+  "account.unblock_domain": "Dadflocio parth {domain}",
+  "account.unblock_short": "Dadflocio",
   "account.unendorse": "Peidio a'i arddangos ar fy mhroffil",
   "account.unfollow": "Dad-ddilyn",
-  "account.unmute": "Dad-dawelu @{name}",
-  "account.unmute_notifications": "Dad-dawelu hysbysiadau o @{name}",
-  "account.unmute_short": "Dad-dewi",
+  "account.unmute": "Dad-anwybyddu {name}",
+  "account.unmute_notifications": "Dad-ddiffodd hysbysiadau o @{name}",
+  "account.unmute_short": "Dad-anwybyddu",
   "account_note.placeholder": "Clicio i ychwanegu nodyn",
   "admin.dashboard.daily_retention": "Cyfradd cadw defnyddwyr fesul diwrnod ar ôl cofrestru",
   "admin.dashboard.monthly_retention": "Cyfradd cadw defnyddwyr fesul mis ar ôl cofrestru",
@@ -79,9 +79,9 @@
   "attachments_list.unprocessed": "(heb eu prosesu)",
   "audio.hide": "Cuddio sain",
   "autosuggest_hashtag.per_week": "{count} yr wythnos",
-  "boost_modal.combo": "Mae modd gwasgu {combo} er mwyn sgipio hyn tro nesa",
+  "boost_modal.combo": "Mae modd pwyso {combo} er mwyn hepgor hyn tro nesa",
   "bundle_column_error.copy_stacktrace": "Copïo'r adroddiad gwall",
-  "bundle_column_error.error.body": "Nid oedd modd cynhyrchu'r dudalen honno. Gall fod oherwydd gwall yn ein côd neu fater cydnawsedd porwr.",
+  "bundle_column_error.error.body": "Nid oedd modd cynhyrchu'r dudalen honno. Gall fod oherwydd gwall yn ein cod neu fater cydnawsedd porwr.",
   "bundle_column_error.error.title": "O na!",
   "bundle_column_error.network.body": "Bu gwall wrth geisio llwytho'r dudalen hon. Gall hyn fod oherwydd anhawster dros-dro gyda'ch cysylltiad gwe neu'r gweinydd hwn.",
   "bundle_column_error.network.title": "Gwall rhwydwaith",
@@ -91,15 +91,15 @@
   "bundle_column_error.routing.title": "404",
   "bundle_modal_error.close": "Cau",
   "bundle_modal_error.message": "Aeth rhywbeth o'i le tra'n llwytho'r elfen hon.",
-  "bundle_modal_error.retry": "Ceiswich eto",
+  "bundle_modal_error.retry": "Ceisiwch eto",
   "closed_registrations.other_server_instructions": "Gan fod Mastodon yn ddatganoledig, gallwch greu cyfrif ar weinydd arall a dal i ryngweithio gyda hwn.",
   "closed_registrations_modal.description": "Ar hyn o bryd nid yw'n bosib creu cyfrif ar {domain}, ond cadwch mewn cof nad oes raid i chi gael cyfrif yn benodol ar {domain} i ddefnyddio Mastodon.",
   "closed_registrations_modal.find_another_server": "Dod o hyd i weinydd arall",
   "closed_registrations_modal.preamble": "Mae Mastodon wedi'i ddatganoli, felly does dim gwahaniaeth ble rydych chi'n creu eich cyfrif, byddwch chi'n gallu dilyn a rhyngweithio ag unrhyw un ar y gweinydd hwn. Gallwch hyd yn oed ei gynnal ef eich hun!",
-  "closed_registrations_modal.title": "Cofrestru ar Mastodon",
+  "closed_registrations_modal.title": "Ymgofrestru ar Mastodon",
   "column.about": "Ynghylch",
   "column.blocks": "Defnyddwyr a flociwyd",
-  "column.bookmarks": "Tudalnodau",
+  "column.bookmarks": "Nodau Tudalen",
   "column.community": "Ffrwd lleol",
   "column.direct": "Negeseuon preifat",
   "column.directory": "Pori proffiliau",
@@ -108,7 +108,7 @@
   "column.follow_requests": "Ceisiadau dilyn",
   "column.home": "Hafan",
   "column.lists": "Rhestrau",
-  "column.mutes": "Defnyddwyr a ddistewyd",
+  "column.mutes": "Wedi anwybyddu",
   "column.notifications": "Hysbysiadau",
   "column.pins": "Postiadau wedi eu pinio",
   "column.public": "Ffrwd y ffederasiwn",
@@ -122,7 +122,7 @@
   "column_subheading.settings": "Gosodiadau",
   "community.column_settings.local_only": "Lleol yn unig",
   "community.column_settings.media_only": "Cyfryngau yn unig",
-  "community.column_settings.remote_only": "Anghysbell yn unig",
+  "community.column_settings.remote_only": "Pell yn unig",
   "compose.language.change": "Newid iaith",
   "compose.language.search": "Chwilio ieithoedd...",
   "compose_form.direct_message_warning_learn_more": "Dysgu mwy",
@@ -131,13 +131,14 @@
   "compose_form.lock_disclaimer": "Nid yw eich cyfri wedi'i {locked}. Gall unrhyw un eich dilyn i weld eich postiadau dilynwyr-yn-unig.",
   "compose_form.lock_disclaimer.lock": "wedi ei gloi",
   "compose_form.placeholder": "Beth sydd ar eich meddwl?",
-  "compose_form.poll.add_option": "Ychwanegu Dewisiad",
+  "compose_form.poll.add_option": "Ychwanegu dewis",
   "compose_form.poll.duration": "Cyfnod pleidlais",
-  "compose_form.poll.option_placeholder": "Dewisiad {number}",
-  "compose_form.poll.remove_option": "Tynnu'r dewisiad",
+  "compose_form.poll.option_placeholder": "Dewis {number}",
+  "compose_form.poll.remove_option": "Tynnu'r dewis",
   "compose_form.poll.switch_to_multiple": "Newid pleidlais i adael mwy nag un dewis",
   "compose_form.poll.switch_to_single": "Newid pleidlais i gyfyngu i un dewis",
   "compose_form.publish": "Cyhoeddi",
+  "compose_form.publish_form": "Cyhoeddi",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Cadw newidiadau",
   "compose_form.sensitive.hide": "Marcio cyfryngau fel eu bod yn sensitif",
@@ -146,30 +147,30 @@
   "compose_form.spoiler.marked": "Testun wedi ei guddio gan rybudd",
   "compose_form.spoiler.unmarked": "Nid yw'r testun wedi ei guddio",
   "compose_form.spoiler_placeholder": "Ysgrifenwch eich rhybudd yma",
-  "confirmation_modal.cancel": "Canslo",
+  "confirmation_modal.cancel": "Diddymu",
   "confirmations.block.block_and_report": "Rhwystro ac Adrodd",
   "confirmations.block.confirm": "Blocio",
   "confirmations.block.message": "Ydych chi'n sicr eich bod eisiau blocio {name}?",
   "confirmations.cancel_follow_request.confirm": "Tynnu'r cais yn ôl",
-  "confirmations.cancel_follow_request.message": "Ydych chi'n sicr eich bod chi eisiau tynnu'ch cais i ddilyn {name} yn ôl?",
+  "confirmations.cancel_follow_request.message": "Ydych chi'n siŵr eich bod am dynnu'ch cais i ddilyn {name} yn ôl?",
   "confirmations.delete.confirm": "Dileu",
   "confirmations.delete.message": "Ydych chi'n sicr eich bod eisiau dileu y post hwn?",
   "confirmations.delete_list.confirm": "Dileu",
-  "confirmations.delete_list.message": "Ydych chi'n sicr eich bod eisiau dileu y rhestr hwn am byth?",
-  "confirmations.discard_edit_media.confirm": "Gwaredu",
+  "confirmations.delete_list.message": "Ydych chi'n siŵr eich bod eisiau dileu y rhestr hwn am byth?",
+  "confirmations.discard_edit_media.confirm": "Dileu",
   "confirmations.discard_edit_media.message": "Mae gennych newidiadau heb eu cadw i'r disgrifiad cyfryngau neu'r rhagolwg, eu taflu beth bynnag?",
-  "confirmations.domain_block.confirm": "Cuddio parth cyfan",
-  "confirmations.domain_block.message": "A ydych yn hollol, hollol sicr eich bod am flocio y {domain} cyfan? Yn y nifer helaeth o achosion mae blocio neu tawelu ambell gyfrif yn ddigonol ac yn well. Ni fyddwch yn gweld cynnwys o'r parth hwnnw mewn unrhyw ffrydiau cyhoeddus na chwaith yn eich hysbysiadau. Bydd hyn yn cael gwared o'ch dilynwyr o'r parth hwnnw.",
+  "confirmations.domain_block.confirm": "Blocio parth cyfan",
+  "confirmations.domain_block.message": "Ydych chi wir, wir eisiau blocio'r holl {domain}? Fel arfer, mae blocio neu anwybyddu pobl penodol yn broses mwy effeithiol. Ni fyddwch yn gweld cynnwys o'r parth hwnnw mewn ffrydiau cyhoeddus neu yn eich hysbysiadau. Bydd eich dilynwyr o'r parth hwnnw yn cael eu ddileu.",
   "confirmations.logout.confirm": "Allgofnodi",
   "confirmations.logout.message": "Ydych chi'n siŵr eich bod am allgofnodi?",
-  "confirmations.mute.confirm": "Tawelu",
-  "confirmations.mute.explanation": "Bydd hyn yn cuddio pyst oddi wrthynt a physt sydd yn sôn amdanynt, ond bydd hyn dal yn gadael iddyn nhw gweld eich pyst a'ch dilyn.",
-  "confirmations.mute.message": "Ydych chi'n sicr eich bod am ddistewi {name}?",
-  "confirmations.redraft.confirm": "Dileu & ailddrafftio",
-  "confirmations.redraft.message": "Ydych chi'n siwr eich bod eisiau dileu y post hwn a'i ailddrafftio? Bydd ffefrynnau a hybiau'n cael ei colli, a bydd ymatebion i'r post gwreiddiol yn cael eu hamddifadu.",
+  "confirmations.mute.confirm": "Anwybyddu",
+  "confirmations.mute.explanation": "Bydd hyn yn cuddio postiadau oddi wrthyn nhw a phostiadau sydd yn sôn amdanyn nhw, ond bydd hyn dal yn gadael iddyn nhw gweld eich postiadau a'ch dilyn.",
+  "confirmations.mute.message": "Ydych chi wir eisiau anwybyddu {name}?",
+  "confirmations.redraft.confirm": "Dileu ac ailddrafftio",
+  "confirmations.redraft.message": "Ydych chi wir eisiau dileu y post hwn a'i ailddrafftio? Bydd ffefrynnau a hybiau'n cael eu colli, a bydd ymatebion i'r post gwreiddiol yn cael eu hamddifadu.",
   "confirmations.reply.confirm": "Ateb",
   "confirmations.reply.message": "Bydd ateb nawr yn cymryd lle y neges yr ydych yn cyfansoddi ar hyn o bryd. Ydych chi'n sicr yr ydych am barhau?",
-  "confirmations.unfollow.confirm": "Dad-ddilynwch",
+  "confirmations.unfollow.confirm": "Dad-ddilyn",
   "confirmations.unfollow.message": "Ydych chi'n sicr eich bod am ddad-ddilyn {name}?",
   "conversation.delete": "Dileu sgwrs",
   "conversation.mark_as_read": "Nodi fel wedi'i ddarllen",
@@ -177,18 +178,18 @@
   "conversation.with": "Gyda {names}",
   "copypaste.copied": "Wedi ei gopïo",
   "copypaste.copy": "Copïo",
-  "directory.federated": "O'r ffedysawd cyfan",
+  "directory.federated": "O'r fydysawd cyfan",
   "directory.local": "O {domain} yn unig",
-  "directory.new_arrivals": "Newydd-ddyfodiaid",
-  "directory.recently_active": "Yn weithredol yn ddiweddar",
+  "directory.new_arrivals": "Defnyddwyr newydd",
+  "directory.recently_active": "Ar-lein yn ddiweddar",
   "disabled_account_banner.account_settings": "Gosodiadau'r cyfrif",
   "disabled_account_banner.text": "Mae eich cyfrif {disabledAccount} wedi ei analluogi ar hyn o bryd.",
-  "dismissable_banner.community_timeline": "Dyma'r postiadau cyhoeddus diweddaraf gan bobl y caiff eu cyfrifon eu cynnal ar {domain}.",
-  "dismissable_banner.dismiss": "Diystyru",
+  "dismissable_banner.community_timeline": "Dyma'r postiadau cyhoeddus diweddaraf gan bobl gyda chyfrifon ar {domain}.",
+  "dismissable_banner.dismiss": "Diddymu",
   "dismissable_banner.explore_links": "Mae'r straeon newyddion hyn yn cael eu trafod gan bobl ar y gweinydd hwn a rhai eraill ar y rhwydwaith datganoledig hwn, ar hyn o bryd.",
-  "dismissable_banner.explore_statuses": "Mae'r cofnodion hyn o'r gweinydd hwn a gweinyddion eraill yn y rhwydwaith datganoledig hwn yn denu sylw ar y gweinydd hwn ar hyn o bryd.",
-  "dismissable_banner.explore_tags": "These hashtags are gaining traction among people on this and other servers of the decentralized network right now.",
-  "dismissable_banner.public_timeline": "These are the most recent public posts from people on this and other servers of the decentralized network that this server knows about.",
+  "dismissable_banner.explore_statuses": "Mae'r postiadau hyn o'r gweinydd hwn a gweinyddion eraill yn y rhwydwaith datganoledig yn denu sylw ar y gweinydd hwn ar hyn o bryd.",
+  "dismissable_banner.explore_tags": "Mae'r hashnodau hyn yn denu sylw ymhlith pobl ar y gweinydd hwn a gweinyddwyr eraill y rhwydwaith datganoledig ar hyn o bryd.",
+  "dismissable_banner.public_timeline": "Dyma'r postiadau cyhoeddus diweddaraf gan bobl ar y gweinydd hwn a gweinyddwyr eraill y rhwydwaith datganoledig y mae'r gweinydd hwn yn gwybod amdano.",
   "embed.instructions": "Gosodwch y post hwn ar eich gwefan drwy gopïo'r côd isod.",
   "embed.preview": "Dyma sut olwg fydd arno:",
   "emoji_button.activity": "Gweithgarwch",
@@ -198,33 +199,33 @@
   "emoji_button.food": "Bwyd a Diod",
   "emoji_button.label": "Mewnosodwch emoji",
   "emoji_button.nature": "Natur",
-  "emoji_button.not_found": "Dim emojau!! (╯°□°)╯︵ ┻━┻",
+  "emoji_button.not_found": "Dim emojau'n cydweddu",
   "emoji_button.objects": "Gwrthrychau",
   "emoji_button.people": "Pobl",
   "emoji_button.recent": "Defnyddir yn aml",
   "emoji_button.search": "Chwilio...",
   "emoji_button.search_results": "Canlyniadau chwilio",
   "emoji_button.symbols": "Symbolau",
-  "emoji_button.travel": "Teithio & Llefydd",
+  "emoji_button.travel": "Teithio a Llefydd",
   "empty_column.account_suspended": "Cyfrif wedi'i atal",
   "empty_column.account_timeline": "Dim postiadau yma!",
   "empty_column.account_unavailable": "Proffil ddim ar gael",
   "empty_column.blocks": "Nid ydych wedi blocio unrhyw ddefnyddwyr eto.",
-  "empty_column.bookmarked_statuses": "Nid oes gennych unrhyw dwtiau tudalnodiedig eto. Pan y byddwch yn tudalnodi un, mi fydd yn ymddangos yma.",
-  "empty_column.community": "Mae'r ffrwd lleol yn wag. Ysgrifenwch rhywbeth yn gyhoeddus i gael dechrau arni!",
+  "empty_column.bookmarked_statuses": "Nid oes gennych unrhyw bost wedi'u cadw fel nodau tudalen eto. Pan fyddwch yn gosod nod tudalen i un, mi fydd yn ymddangos yma.",
+  "empty_column.community": "Mae'r ffrwd lleol yn wag. Beth am ysgrifennu rhywbeth yn gyhoeddus?",
   "empty_column.direct": "Does gennych unrhyw negeseuon preifat eto. Pan byddwch yn anfon neu derbyn un, bydd yn ymddangos yma.",
   "empty_column.domain_blocks": "Nid oes yna unrhyw barthau cuddiedig eto.",
-  "empty_column.explore_statuses": "Does dim byd yn trendio ar hyn o bryd. Gwiriwch yn ôl yn nes ymlaen!",
+  "empty_column.explore_statuses": "Does dim pynciau llosg ar hyn o bryd. Dewch nôl nes ymlaen!",
   "empty_column.favourited_statuses": "Nid oes gennych unrhyw hoff bostiadau eto. Pan y byddwch yn hoffi un, mi fydd yn ymddangos yma.",
   "empty_column.favourites": "Does neb wedi hoffi'r post hwn eto. Pan bydd rhywun yn ei hoffi, byddent yn ymddangos yma.",
   "empty_column.follow_recommendations": "Does dim awgrymiadau yma i chi. Gallwch geisio chwilio am bobl yr ydych yn eu hadnabod neu archwilio hashnodau sy'n trendio.",
-  "empty_column.follow_requests": "Nid oes gennych unrhyw geisiadau dilyn eto. Pan dderbyniwch chi un, byddent yn ymddangos yma.",
+  "empty_column.follow_requests": "Nid oes gennych unrhyw geisiadau dilyn eto. Pan fyddwch yn derbyn un, byddan nhw'n ymddangos yma.",
   "empty_column.hashtag": "Nid oes dim ar yr hashnod hwn eto.",
-  "empty_column.home": "Mae eich ffrwd gartref yn wag! Ymwelwch a {public} neu defnyddiwch y chwilotwr i ddechrau arni ac i gwrdd a defnyddwyr eraill.",
-  "empty_column.home.suggestions": "Gweler awgrymiadau",
-  "empty_column.list": "Nid oes dim yn y rhestr yma eto. Pan y bydd aelodau'r rhestr yn cyhoeddi statws newydd, mi fydd yn ymddangos yma.",
-  "empty_column.lists": "Nid oes gennych unrhyw restrau eto. Pan grëwch chi un, mi fydd yn ymddangos yma.",
-  "empty_column.mutes": "Nid ydych wedi tawelu unrhyw ddefnyddwyr eto.",
+  "empty_column.home": "Mae eich llinell amser gartref yn wag! Ymwelwch â {public} neu defnyddiwch y chwilotwr i ddechrau arni ac i gwrdd â defnyddwyr eraill.",
+  "empty_column.home.suggestions": "Dyma rai awgrymiadau",
+  "empty_column.list": "Does dim yn y rhestr yma eto. Pan fydd aelodau'r rhestr yn cyhoeddi statws newydd, mi fydd yn ymddangos yma.",
+  "empty_column.lists": "Nid oes gennych unrhyw restrau eto. Pan fyddwch yn creu un, mi fydd yn ymddangos yma.",
+  "empty_column.mutes": "Nid ydych wedi anwybyddu unrhyw ddefnyddwyr eto.",
   "empty_column.notifications": "Nid oes gennych unrhyw hysbysiadau eto. Rhyngweithiwch ac eraill i ddechrau'r sgwrs.",
   "empty_column.public": "Does dim byd yma! Ysgrifennwch rhywbeth yn gyhoeddus, neu dilynwch ddefnyddwyr o achosion eraill i'w lenwi",
   "error.unexpected_crash.explanation": "Oherwydd gwall yn ein cod neu oherwydd problem cysondeb porwr, nid oedd y dudalen hon gallu cael ei dangos yn gywir.",
@@ -234,25 +235,21 @@
   "errors.unexpected_crash.copy_stacktrace": "Copïo'r olrhain stac i'r clipfwrdd",
   "errors.unexpected_crash.report_issue": "Rhoi gwybod am broblem",
   "explore.search_results": "Canlyniadau chwilio",
-  "explore.suggested_follows": "I chi",
   "explore.title": "Archwilio",
-  "explore.trending_links": "Newyddion",
-  "explore.trending_statuses": "Postiadau",
-  "explore.trending_tags": "Hashnodau",
-  "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
-  "filter_modal.added.context_mismatch_title": "Context mismatch!",
-  "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
-  "filter_modal.added.expired_title": "Expired filter!",
-  "filter_modal.added.review_and_configure": "To review and further configure this filter category, go to the {settings_link}.",
-  "filter_modal.added.review_and_configure_title": "Filter settings",
-  "filter_modal.added.settings_link": "settings page",
-  "filter_modal.added.short_explanation": "This post has been added to the following filter category: {title}.",
+  "filter_modal.added.context_mismatch_explanation": "Nid yw'r categori hidlo hwn yn berthnasol i'r cyd-destun yr ydych wedi cyrchu'r postiad hwn ynddo. Os ydych chi am i'r post gael ei hidlo yn y cyd-destun hwn hefyd, bydd yn rhaid i chi olygu'r hidlydd.",
+  "filter_modal.added.context_mismatch_title": "Diffyg cyfatebiaeth cyd-destun!",
+  "filter_modal.added.expired_explanation": "Mae'r categori hidlydd hwn wedi dod i ben, bydd angen i chi newid y dyddiad dod i ben er mwyn iddo fod yn berthnasol.",
+  "filter_modal.added.expired_title": "Hidlydd wedi dod i ben!",
+  "filter_modal.added.review_and_configure": "I adolygu a ffurfweddu'r categori hidlydd hwn ymhellach, ewch i'r {settings_link}.",
+  "filter_modal.added.review_and_configure_title": "Gosodiadau hidlo",
+  "filter_modal.added.settings_link": "tudalen gosodiadau",
+  "filter_modal.added.short_explanation": "Mae'r postiad hwn wedi'i ychwanegu at y categori hidlo canlynol: {title}.",
   "filter_modal.added.title": "Hidlydd wedi'i ychwanegu!",
-  "filter_modal.select_filter.context_mismatch": "does not apply to this context",
-  "filter_modal.select_filter.expired": "expired",
+  "filter_modal.select_filter.context_mismatch": "nid yw'n berthnasol i'r cyd-destun hwn",
+  "filter_modal.select_filter.expired": "daeth i ben",
   "filter_modal.select_filter.prompt_new": "Categori newydd: {name}",
   "filter_modal.select_filter.search": "Chwilio neu greu",
-  "filter_modal.select_filter.subtitle": "Use an existing category or create a new one",
+  "filter_modal.select_filter.subtitle": "Defnyddiwch gategori sy'n bodoli eisoes neu crëwch un newydd",
   "filter_modal.select_filter.title": "Hidlo'r post hwn",
   "filter_modal.title.status": "Hidlo post",
   "follow_recommendations.done": "Wedi gorffen",
@@ -279,21 +276,21 @@
   "hashtag.column_settings.tag_mode.any": "Unrhyw un o'r rhain",
   "hashtag.column_settings.tag_mode.none": "Dim o'r rhain",
   "hashtag.column_settings.tag_toggle": "Include additional tags in this column",
-  "hashtag.follow": "Follow hashtag",
-  "hashtag.unfollow": "Unfollow hashtag",
+  "hashtag.follow": "Dilynwch yr hashnod",
+  "hashtag.unfollow": "Dad-ddilyn hashnod",
   "home.column_settings.basic": "Syml",
   "home.column_settings.show_reblogs": "Dangos hybiau",
   "home.column_settings.show_replies": "Dangos ymatebion",
   "home.hide_announcements": "Cuddio cyhoeddiadau",
   "home.show_announcements": "Dangos cyhoeddiadau",
-  "interaction_modal.description.favourite": "With an account on Mastodon, you can favourite this post to let the author know you appreciate it and save it for later.",
-  "interaction_modal.description.follow": "With an account on Mastodon, you can follow {name} to receive their posts in your home feed.",
+  "interaction_modal.description.favourite": "Gyda chyfrif ar Mastodon, gallwch chi hoffi'r post hwn i roi gwybod i'r awdur eich bod chi'n ei werthfawrogi a'i gadw ar gyfer nes ymlaen.",
+  "interaction_modal.description.follow": "Gyda chyfrif ar Mastodon, gallwch ddilyn {name} i dderbyn eu postiadau yn eich llif cartref.",
   "interaction_modal.description.reblog": "Gyda chyfrif ar Mastodon, gallwch hybu'r post hwn i'w rannu â'ch dilynwyr.",
   "interaction_modal.description.reply": "Gyda chyfrif ar Mastodon, gallwch ymateb i'r post hwn.",
   "interaction_modal.on_another_server": "Ar weinydd gwahanol",
   "interaction_modal.on_this_server": "Ar y gweinydd hwn",
-  "interaction_modal.other_server_instructions": "Copy and paste this URL into the search field of your favourite Mastodon app or the web interface of your Mastodon server.",
-  "interaction_modal.preamble": "Since Mastodon is decentralized, you can use your existing account hosted by another Mastodon server or compatible platform if you don't have an account on this one.",
+  "interaction_modal.other_server_instructions": "Copïwch a gludo'r URL hwn i faes chwilio eich hoff ap Mastodon neu ryngwyneb gwe eich gweinydd Mastodon.",
+  "interaction_modal.preamble": "Gan fod Mastodon wedi'i ddatganoli, gallwch ddefnyddio'ch cyfrif presennol a gynhelir gan weinydd Mastodon arall neu blatfform cydnaws os nad oes gennych gyfrif ar yr un hwn.",
   "interaction_modal.title.favourite": "Hoffi post {name}",
   "interaction_modal.title.follow": "Dilyn {name}",
   "interaction_modal.title.reblog": "Hybu post {name}",
@@ -303,7 +300,7 @@
   "intervals.full.minutes": "{number, plural, one {# funud} other {# o funudau}}",
   "keyboard_shortcuts.back": "i lywio nôl",
   "keyboard_shortcuts.blocked": "i agor rhestr defnyddwyr a flociwyd",
-  "keyboard_shortcuts.boost": "i fŵstio",
+  "keyboard_shortcuts.boost": "Hybu post",
   "keyboard_shortcuts.column": "Ffocysu colofn",
   "keyboard_shortcuts.compose": "i ffocysu yr ardal cyfansoddi testun",
   "keyboard_shortcuts.description": "Disgrifiad",
@@ -312,14 +309,14 @@
   "keyboard_shortcuts.enter": "Agor post",
   "keyboard_shortcuts.favourite": "i hoffi",
   "keyboard_shortcuts.favourites": "i agor rhestr hoffi",
-  "keyboard_shortcuts.federated": "i agor ffrwd y ffederasiwn",
-  "keyboard_shortcuts.heading": "Llwybrau byr allweddell",
+  "keyboard_shortcuts.federated": "Agor ffrwd y ffederasiwn",
+  "keyboard_shortcuts.heading": "Bysellau brys",
   "keyboard_shortcuts.home": "i agor ffrwd cartref",
   "keyboard_shortcuts.hotkey": "Bysell brys",
   "keyboard_shortcuts.legend": "i ddangos y rhestr hon",
-  "keyboard_shortcuts.local": "i agor ffrwd lleol",
+  "keyboard_shortcuts.local": "Agor ffrwd lleol",
   "keyboard_shortcuts.mention": "i grybwyll yr awdur",
-  "keyboard_shortcuts.muted": "i agor rhestr defnyddwyr a dawelwyd",
+  "keyboard_shortcuts.muted": "Agor rhestr defnyddwyr rydych wedi anwybyddu",
   "keyboard_shortcuts.my_profile": "i agor eich proffil",
   "keyboard_shortcuts.notifications": "i agor colofn hysbysiadau",
   "keyboard_shortcuts.open_media": "i agor cyfryngau",
@@ -362,8 +359,8 @@
   "missing_indicator.sublabel": "Ni ellid canfod yr adnodd hwn",
   "moved_to_account_banner.text": "Mae eich cyfrif {disabledAccount} wedi ei analluogi ar hyn y bryd am i chi symud i {movedToAccount}.",
   "mute_modal.duration": "Hyd",
-  "mute_modal.hide_notifications": "Cuddio hysbysiadau rhag y defnyddiwr hwn?",
-  "mute_modal.indefinite": "Amhenodol",
+  "mute_modal.hide_notifications": "Cuddio hysbysiadau gan y defnyddiwr hwn?",
+  "mute_modal.indefinite": "Parhaus",
   "navigation_bar.about": "Ynghylch",
   "navigation_bar.blocks": "Defnyddwyr wedi eu blocio",
   "navigation_bar.bookmarks": "Tudalnodau",
@@ -375,12 +372,12 @@
   "navigation_bar.edit_profile": "Golygu proffil",
   "navigation_bar.explore": "Archwilio",
   "navigation_bar.favourites": "Ffefrynnau",
-  "navigation_bar.filters": "Geiriau a fudwyd",
+  "navigation_bar.filters": "Geiriau ag anwybyddwyd",
   "navigation_bar.follow_requests": "Ceisiadau dilyn",
   "navigation_bar.follows_and_followers": "Dilynion a ddilynwyr",
   "navigation_bar.lists": "Rhestrau",
   "navigation_bar.logout": "Allgofnodi",
-  "navigation_bar.mutes": "Defnyddwyr a dawelwyd",
+  "navigation_bar.mutes": "Defnyddwyr ag anwybyddwyd",
   "navigation_bar.personal": "Personol",
   "navigation_bar.pins": "Postiadau wedi eu pinio",
   "navigation_bar.preferences": "Dewisiadau",
@@ -413,7 +410,7 @@
   "notifications.column_settings.mention": "Crybwylliadau:",
   "notifications.column_settings.poll": "Canlyniadau pleidlais:",
   "notifications.column_settings.push": "Hysbysiadau gwthiadwy",
-  "notifications.column_settings.reblog": "Hybiadau:",
+  "notifications.column_settings.reblog": "Hybiau:",
   "notifications.column_settings.show": "Dangos yn y golofn",
   "notifications.column_settings.sound": "Chwarae sain",
   "notifications.column_settings.status": "New toots:",
@@ -456,11 +453,11 @@
   "privacy.unlisted.long": "Gweladwy i bawb, ond wedi optio allan o nodweddion darganfod",
   "privacy.unlisted.short": "Heb ei restru",
   "privacy_policy.last_updated": "Diweddarwyd ddiwethaf ar {date}",
-  "privacy_policy.title": "Polisi preifatrwydd",
+  "privacy_policy.title": "Polisi Preifatrwydd",
   "refresh": "Adnewyddu",
   "regeneration_indicator.label": "Llwytho…",
   "regeneration_indicator.sublabel": "Mae eich ffrwd cartref yn cael ei baratoi!",
-  "relative_time.days": "{number} dydd",
+  "relative_time.days": "{number}d",
   "relative_time.full.days": "{number, plural, one {# dydd} other {# o ddyddiau}} yn ôl",
   "relative_time.full.hours": "{number, plural, one {# awr} other {# o oriau}} yn ôl",
   "relative_time.full.just_now": "jyst nawr",
@@ -485,7 +482,7 @@
   "report.comment.title": "Oes unrhyw beth arall y dylem ei wybod yn eich barn chi?",
   "report.forward": "Ymlaen i {target}",
   "report.forward_hint": "Mae'r cyfrif o weinydd arall. Anfon copi anhysbys o'r adroddiad yno hefyd?",
-  "report.mute": "Mudo",
+  "report.mute": "Anwybyddu",
   "report.mute_explanation": "Ni fyddwch yn gweld eu postiadau. Gallant eich dilyn o hyd a gweld eich postiadau ac ni fyddant yn gwybod eu bod nhw wedi'u mudo.",
   "report.next": "Nesaf",
   "report.placeholder": "Sylwadau ychwanegol",
@@ -509,13 +506,13 @@
   "report.thanks.title_actionable": "Diolch am adrodd, byddwn yn ymchwilio i hyn.",
   "report.unfollow": "Dad-ddilyn @{name}",
   "report.unfollow_explanation": "Rydych chi'n dilyn y cyfrif hwn. I beidio â gweld eu postiadau yn eich porthiant cartref mwyach, dad-ddilynwch nhw.",
-  "report_notification.attached_statuses": "{count, plural, one {{count} post} other {{count} posts}} attached",
+  "report_notification.attached_statuses": "{count, plural, one {{count} post} arall {{count} posts}} atodwyd",
   "report_notification.categories.other": "Arall",
   "report_notification.categories.spam": "Sbam",
-  "report_notification.categories.violation": "Rule violation",
-  "report_notification.open": "Open report",
+  "report_notification.categories.violation": "Torri rheol",
+  "report_notification.open": "Agor adroddiad",
   "search.placeholder": "Chwilio",
-  "search.search_or_paste": "Search or paste URL",
+  "search.search_or_paste": "Chwilio neu gludo URL",
   "search_popout.search_format": "Fformat chwilio uwch",
   "search_popout.tips.full_text": "Mae testun syml yn dychwelyd postiadau yr ydych wedi ysgrifennu, hoffi, wedi'u hybio, neu wedi'ch crybwyll ynddynt, ynghyd a chyfateb a enwau defnyddwyr, enwau arddangos ac hashnodau.",
   "search_popout.tips.hashtag": "hashnod",
@@ -530,29 +527,29 @@
   "search_results.statuses_fts_disabled": "Nid yw chwilio postiadau yn ôl eu cynnwys wedi'i alluogi ar y gweinydd Mastodon hwn.",
   "search_results.title": "Chwilio am {q}",
   "search_results.total": "{count, number} {count, plural, zero {canlyniad} one {canlyniad} two {ganlyniad} other {o ganlyniadau}}",
-  "server_banner.about_active_users": "People using this server during the last 30 days (Monthly Active Users)",
-  "server_banner.active_users": "active users",
+  "server_banner.about_active_users": "Pobl sy'n defnyddio'r gweinydd hwn yn ystod y 30 diwrnod diwethaf (Defnyddwyr Gweithredol Misol)",
+  "server_banner.active_users": "defnyddwyr gweithredol",
   "server_banner.administered_by": "Gweinyddir gan:",
   "server_banner.introduction": "Mae {domain} yn rhan o'r rhwydwaith cymdeithasol datganoledig a bwerir gan {mastodon}.",
   "server_banner.learn_more": "Dysgu mwy",
   "server_banner.server_stats": "Ystagedau'r gweinydd:",
   "sign_in_banner.create_account": "Creu cyfrif",
   "sign_in_banner.sign_in": "Mewngofnodi",
-  "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts, or interact from your account on a different server.",
+  "sign_in_banner.text": "Mewngofnodwch i ddilyn proffiliau neu hashnodau, ffefrynnau, rhannu ac ymateb i bostiadau, neu ryngweithio o'ch cyfrif ar weinydd gwahanol.",
   "status.admin_account": "Agor rhyngwyneb goruwchwylio ar gyfer @{name}",
   "status.admin_status": "Agor y post hwn yn y rhyngwyneb goruwchwylio",
   "status.block": "Blocio @{name}",
   "status.bookmark": "Tudalnodi",
-  "status.cancel_reblog_private": "Dadfŵstio",
-  "status.cannot_reblog": "Ni ellir hybio'r post hwn",
+  "status.cancel_reblog_private": "Dadhybu",
+  "status.cannot_reblog": "Ni ellir hybu'r post hwn",
   "status.copy": "Copïo dolen i'r post",
   "status.delete": "Dileu",
   "status.detailed_status": "Golwg manwl o'r sgwrs",
   "status.direct": "Neges breifat @{name}",
   "status.edit": "Golygu",
-  "status.edited": "Ymunodd {date}",
+  "status.edited": "Golygwyd {date}",
   "status.edited_x_times": "Golygwyd {count, plural, one {unwaith} two {dwywaith} other {{count} gwaith}}",
-  "status.embed": "Plannu",
+  "status.embed": "Mewnblannu",
   "status.favourite": "Hoffi",
   "status.filter": "Hidlo'r post hwn",
   "status.filtered": "Wedi'i hidlo",
@@ -563,8 +560,8 @@
   "status.media_hidden": "Cyfryngau wedi'u cuddio",
   "status.mention": "Crybwyll @{name}",
   "status.more": "Mwy",
-  "status.mute": "Tawelu @{name}",
-  "status.mute_conversation": "Tawelu sgwrs",
+  "status.mute": "Anwybyddu @{name}",
+  "status.mute_conversation": "Anwybyddu sgwrs",
   "status.open": "Ehangu'r post hwn",
   "status.pin": "Pinio ar y proffil",
   "status.pinned": "Post wedi'i binio",
@@ -573,9 +570,9 @@
   "status.reblog_private": "Hybu i'r gynulleidfa wreiddiol",
   "status.reblogged_by": "Hybodd {name}",
   "status.reblogs.empty": "Does neb wedi hybio'r post yma eto. Pan y bydd rhywun yn gwneud, byddent yn ymddangos yma.",
-  "status.redraft": "Dileu & ailddrafftio",
+  "status.redraft": "Dileu ac ailddrafftio",
   "status.remove_bookmark": "Tynnu'r tudalnod",
-  "status.replied_to": "Replied to {name}",
+  "status.replied_to": "Wedi ymateb i {name}",
   "status.reply": "Ateb",
   "status.replyAll": "Ateb i edefyn",
   "status.report": "Adrodd @{name}",
@@ -590,11 +587,11 @@
   "status.translate": "Cyfieithu",
   "status.translated_from_with": "Cyfieithwyd o {lang} gan ddefnyddio {provider}",
   "status.uncached_media_warning": "Dim ar gael",
-  "status.unmute_conversation": "Dad-dawelu sgwrs",
+  "status.unmute_conversation": "Dad-anwybyddu sgwrs",
   "status.unpin": "Dadbinio o'r proffil",
   "subscribed_languages.lead": "Dim ond postiadau mewn ieithoedd dethol fydd yn ymddangos yn eich ffrydiau ar ôl y newid. Dewiswch ddim byd i dderbyn postiadau ym mhob iaith.",
   "subscribed_languages.save": "Cadw'r newidiadau",
-  "subscribed_languages.target": "Change subscribed languages for {target}",
+  "subscribed_languages.target": "Newid ieithoedd tanysgrifio {target}",
   "suggestions.dismiss": "Diswyddo",
   "suggestions.header": "Efallai y bydd gennych ddiddordeb mewn…",
   "tabs_bar.federated_timeline": "Ffederasiwn",
@@ -610,13 +607,13 @@
   "timeline_hint.resources.followers": "Dilynwyr",
   "timeline_hint.resources.follows": "Yn dilyn",
   "timeline_hint.resources.statuses": "Postiadau hŷn",
-  "trends.counter_by_accounts": "{count, plural, one {{counter} person} other {{counter} people}} in the past {days, plural, one {day} other {{days} days}}",
-  "trends.trending_now": "Yn tueddu nawr",
+  "trends.counter_by_accounts": "{count, plural, zero {neb} one {{counter} person} two {{counter} berson} few {{counter} pherson} other {{counter} o bobl}} yn y {days, plural, one {diwrnod diwethaf} two {ddeuddydd diwethaf} other {{days} diwrnod diwethaf}}",
+  "trends.trending_now": "Pynciau llosg",
   "ui.beforeunload": "Mi fyddwch yn colli eich drafft os gadewch Mastodon.",
   "units.short.billion": "{count}biliwn",
   "units.short.million": "{count}miliwn",
   "units.short.thousand": "{count}mil",
-  "upload_area.title": "Llusgwch & gollwing i uwchlwytho",
+  "upload_area.title": "Llusgwch a gollwng i lwytho",
   "upload_button.label": "Ychwanegwch gyfryngau (JPEG, PNG, GIF, WebM, MP4, MOV)",
   "upload_error.limit": "Wedi mynd heibio'r uchafswm terfyn uwchlwytho.",
   "upload_error.poll": "Nid oes modd uwchlwytho ffeiliau â phleidleisiau.",
@@ -641,12 +638,12 @@
   "upload_progress.processing": "Wrthi'n prosesu…",
   "video.close": "Cau fideo",
   "video.download": "Lawrlwytho ffeil",
-  "video.exit_fullscreen": "Gadael sgrîn llawn",
+  "video.exit_fullscreen": "Gadael sgrin llawn",
   "video.expand": "Ymestyn fideo",
-  "video.fullscreen": "Sgrîn llawn",
+  "video.fullscreen": "Sgrin llawn",
   "video.hide": "Cuddio fideo",
-  "video.mute": "Tawelu sain",
+  "video.mute": "Diffodd sain",
   "video.pause": "Oedi",
   "video.play": "Chwarae",
-  "video.unmute": "Dad-dawelu sain"
+  "video.unmute": "Dad-ddiffodd sain"
 }
diff --git a/app/javascript/mastodon/locales/da.json b/app/javascript/mastodon/locales/da.json
index 35060645c..e61130cb8 100644
--- a/app/javascript/mastodon/locales/da.json
+++ b/app/javascript/mastodon/locales/da.json
@@ -48,7 +48,7 @@
   "account.moved_to": "{name} har angivet, at vedkommendes nye konto nu er:",
   "account.mute": "Skjul @{name}",
   "account.mute_notifications": "Skjul notifikationer fra @{name}",
-  "account.muted": "Tystnet",
+  "account.muted": "Skjult (muted)",
   "account.open_original_page": "Åbn oprindelig side",
   "account.posts": "Indlæg",
   "account.posts_with_replies": "Indlæg og svar",
@@ -62,9 +62,9 @@
   "account.unblock_short": "Afblokér",
   "account.unendorse": "Fjern visning på din profil",
   "account.unfollow": "Følg ikke længere",
-  "account.unmute": "Fjern tavsgørelsen af @{name}",
-  "account.unmute_notifications": "Fjern tavsgørelsen af notifikationer fra @{name}",
-  "account.unmute_short": "Fjern tavsgørelse",
+  "account.unmute": "Vis @{name} igen (unmute)",
+  "account.unmute_notifications": "Slå notifikationer om @{name} til igen",
+  "account.unmute_short": "Vis igen (unmute)",
   "account_note.placeholder": "Klik for at tilføje notat",
   "admin.dashboard.daily_retention": "Brugerfastholdelsesrate efter dag efter tilmelding",
   "admin.dashboard.monthly_retention": "Brugerfastholdelsesrate efter måned efter tilmelding",
@@ -108,7 +108,7 @@
   "column.follow_requests": "Følgeanmodninger",
   "column.home": "Hjem",
   "column.lists": "Lister",
-  "column.mutes": "Tavsgjorte brugere",
+  "column.mutes": "Skjulte brugere (mutede)",
   "column.notifications": "Notifikationer",
   "column.pins": "Fastgjorte indlæg",
   "column.public": "Fælles tidslinje",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Ændr afstemning til flervalgstype",
   "compose_form.poll.switch_to_single": "Ændr afstemning til enkeltvalgstype",
   "compose_form.publish": "Publicér",
+  "compose_form.publish_form": "Publicér",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Gem ændringer",
   "compose_form.sensitive.hide": "{count, plural, one {Markér medie som følsomt} other {Markér medier som følsomme}}",
@@ -162,7 +163,7 @@
   "confirmations.domain_block.message": "Fuldstændig sikker på, at du vil blokere hele {domain}-domænet? Oftest vil nogle få målrettede blokeringer eller tavsgørelser være tilstrækkelige og at foretrække. Du vil ikke se indhold fra dette domæne i nogle offentlige tidslinjer eller i dine notifikationer, og dine følgere herfra fjernes ligeledes.",
   "confirmations.logout.confirm": "Log ud",
   "confirmations.logout.message": "Log ud, sikker?",
-  "confirmations.mute.confirm": "Tavsgør",
+  "confirmations.mute.confirm": "Skjul (mute)",
   "confirmations.mute.explanation": "Dette skjuler indlæg fra (og om) dem, men lader dem fortsat se dine indlæg og følge dig.",
   "confirmations.mute.message": "Er du sikker på, du vil skjule {name}?",
   "confirmations.redraft.confirm": "Slet og omformulér",
@@ -224,7 +225,7 @@
   "empty_column.home.suggestions": "Se nogle forslag",
   "empty_column.list": "Der er ikke noget på denne liste endnu. Når medlemmer af listen udgiver nye indlæg vil de fremgå hér.",
   "empty_column.lists": "Du har endnu ingen lister. Når du opretter én, vil den fremgå hér.",
-  "empty_column.mutes": "Du har endnu ikke tystnet nogle brugere.",
+  "empty_column.mutes": "Du har endnu ikke skjult (muted) nogle brugere.",
   "empty_column.notifications": "Du har endnu ingen notifikationer. Når andre interagerer med dig, vil det fremgå hér.",
   "empty_column.public": "Der er intet hér! Skriv noget offentligt eller følg manuelt brugere fra andre servere for at se indhold",
   "error.unexpected_crash.explanation": "Grundet en fejl i vores kode, eller en browser-kompatibilitetsfejl, kunne siden ikke vises korrekt.",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Kopiér stacktrace til udklipsholderen",
   "errors.unexpected_crash.report_issue": "Anmeld problem",
   "explore.search_results": "Søgeresultater",
-  "explore.suggested_follows": "Til dig",
   "explore.title": "Udforsk",
-  "explore.trending_links": "Nyheder",
-  "explore.trending_statuses": "Indlæg",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "Denne filterkategori omfatter ikke konteksten, hvorunder dette indlæg er tilgået. Redigér filteret, hvis indlægget også ønskes filtreret i denne kontekst.",
   "filter_modal.added.context_mismatch_title": "Kontekstmisforhold!",
   "filter_modal.added.expired_explanation": "Denne filterkategori er udløbet. Ændr dens udløbsdato, for at anvende den.",
@@ -319,7 +316,7 @@
   "keyboard_shortcuts.legend": "Vis dette symbol",
   "keyboard_shortcuts.local": "Åbn lokal tidslinje",
   "keyboard_shortcuts.mention": "Nævn forfatter",
-  "keyboard_shortcuts.muted": "Åbn listen over tavsgjorte brugere",
+  "keyboard_shortcuts.muted": "Åbn listen over skjulte (mutede) brugere",
   "keyboard_shortcuts.my_profile": "Åbn din profil",
   "keyboard_shortcuts.notifications": "for at åbne notifikationskolonnen",
   "keyboard_shortcuts.open_media": "Åbn medier",
@@ -375,12 +372,12 @@
   "navigation_bar.edit_profile": "Redigér profil",
   "navigation_bar.explore": "Udforsk",
   "navigation_bar.favourites": "Favoritter",
-  "navigation_bar.filters": "Tavsgjorte ord",
+  "navigation_bar.filters": "Skjulte ord (mutede)",
   "navigation_bar.follow_requests": "Følgeanmodninger",
   "navigation_bar.follows_and_followers": "Følges og følgere",
   "navigation_bar.lists": "Lister",
   "navigation_bar.logout": "Log af",
-  "navigation_bar.mutes": "Tavsgjorte brugere",
+  "navigation_bar.mutes": "Skjulte brugere (mutede)",
   "navigation_bar.personal": "Personlig",
   "navigation_bar.pins": "Fastgjorte indlæg",
   "navigation_bar.preferences": "Præferencer",
@@ -461,7 +458,7 @@
   "regeneration_indicator.label": "Indlæser…",
   "regeneration_indicator.sublabel": "Din hjemmetidslinje klargøres!",
   "relative_time.days": "{number}d",
-  "relative_time.full.days": "{number, plural, one {# dag} other {# dage}} diden",
+  "relative_time.full.days": "{number, plural, one {# dag} other {# dage}} siden",
   "relative_time.full.hours": "{number, plural, one {# time} other {# timer}} siden",
   "relative_time.full.just_now": "netop nu",
   "relative_time.full.minutes": "{number, plural, one {# minut} other {# minutter}} siden",
@@ -485,7 +482,7 @@
   "report.comment.title": "Er der andet, som vi bør vide?",
   "report.forward": "Videresend til {target}",
   "report.forward_hint": "Kontoen er fra en anden server. Send også en anonymiseret anmeldelseskopi dertil?",
-  "report.mute": "Tavsgør",
+  "report.mute": "Skjul (mute)",
   "report.mute_explanation": "Du vil ikke se vedkommendes indlæg, men vedkommende kan stadig se dine og følge dig. Vedkommende vil ikke være bekendt med tavsgørelsen.",
   "report.next": "Næste",
   "report.placeholder": "Yderligere kommentarer",
@@ -563,8 +560,8 @@
   "status.media_hidden": "Medie skjult",
   "status.mention": "Nævn @{name}",
   "status.more": "Mere",
-  "status.mute": "Tystn @{name}",
-  "status.mute_conversation": "Tystn samtale",
+  "status.mute": "Skjul @{name} (mute)",
+  "status.mute_conversation": "Skjul samtale (mute)",
   "status.open": "Udvid dette indlæg",
   "status.pin": "Fastgør til profil",
   "status.pinned": "Fastgjort indlæg",
@@ -645,8 +642,8 @@
   "video.expand": "Udvid video",
   "video.fullscreen": "Fuldskærm",
   "video.hide": "Skjul video",
-  "video.mute": "Tavsgør lyd",
+  "video.mute": "Sluk lyden",
   "video.pause": "Pausér",
   "video.play": "Afspil",
-  "video.unmute": "Fjern lydtavsgørelse"
+  "video.unmute": "Tænd for lyden"
 }
diff --git a/app/javascript/mastodon/locales/de.json b/app/javascript/mastodon/locales/de.json
index 3cf08a855..1f015a790 100644
--- a/app/javascript/mastodon/locales/de.json
+++ b/app/javascript/mastodon/locales/de.json
@@ -5,7 +5,7 @@
   "about.domain_blocks.no_reason_available": "Grund unbekannt",
   "about.domain_blocks.preamble": "Mastodon erlaubt es dir grundsätzlich, alle Inhalte von allen Nutzer*innen auf allen Servern im Fediversum zu sehen und mit ihnen zu interagieren. Für diese Instanz gibt es aber ein paar Ausnahmen.",
   "about.domain_blocks.silenced.explanation": "Alle Inhalte dieses Servers sind stumm geschaltet und werden zunächst nicht angezeigt. Du kannst die Profile und anderen Inhalte aber dennoch manuell aufrufen – oder Du folgst einer Person dieser Mastodon-Instanz.",
-  "about.domain_blocks.silenced.title": "Limitiert",
+  "about.domain_blocks.silenced.title": "Stummgeschaltet",
   "about.domain_blocks.suspended.explanation": "Es werden keine Daten von diesem Server verarbeitet, gespeichert oder ausgetauscht, sodass eine Interaktion oder Kommunikation mit Nutzer*innen dieses Servers nicht möglich ist.",
   "about.domain_blocks.suspended.title": "Gesperrt",
   "about.not_available": "Diese Informationen sind auf diesem Server nicht verfügbar.",
@@ -19,13 +19,13 @@
   "account.block_domain": "Alles von {domain} verstecken",
   "account.blocked": "Blockiert",
   "account.browse_more_on_origin_server": "Mehr auf dem Originalprofil durchsuchen",
-  "account.cancel_follow_request": "Folgeanfrage ablehnen",
+  "account.cancel_follow_request": "Folgeanfrage zurückziehen",
   "account.direct": "Direktnachricht an @{name}",
   "account.disable_notifications": "Höre auf mich zu benachrichtigen wenn @{name} etwas postet",
   "account.domain_blocked": "Domain versteckt",
   "account.edit_profile": "Profil bearbeiten",
   "account.enable_notifications": "Benachrichtige mich wenn @{name} etwas postet",
-  "account.endorse": "Im Profil hervorheben",
+  "account.endorse": "Im Profil empfehlen",
   "account.featured_tags.last_status_at": "Letzter Beitrag am {date}",
   "account.featured_tags.last_status_never": "Keine Beiträge",
   "account.featured_tags.title": "Von {name} vorgestellte Hashtags",
@@ -37,7 +37,7 @@
   "account.following_counter": "{count, plural, one {{counter} Folgt} other {{counter} Folgt}}",
   "account.follows.empty": "Dieses Profil folgt noch niemandem.",
   "account.follows_you": "Folgt dir",
-  "account.go_to_profile": "Profil öffnen",
+  "account.go_to_profile": "Profil aufrufen",
   "account.hide_reblogs": "Geteilte Beiträge von @{name} verbergen",
   "account.joined_short": "Beigetreten",
   "account.languages": "Genutzte Sprachen überarbeiten",
@@ -45,11 +45,11 @@
   "account.locked_info": "Die Privatsphäre dieses Kontos wurde auf „geschützt“ gesetzt. Die Person bestimmt manuell, wer ihrem Profil folgen darf.",
   "account.media": "Medien",
   "account.mention": "@{name} im Beitrag erwähnen",
-  "account.moved_to": "{name} hat angegeben, dass dieser der neue Account ist:",
+  "account.moved_to": "{name} hat angegeben, dass dieses das neue Konto ist:",
   "account.mute": "@{name} stummschalten",
   "account.mute_notifications": "Benachrichtigungen von @{name} stummschalten",
   "account.muted": "Stummgeschaltet",
-  "account.open_original_page": "Ursprüngliche Seite öffnen",
+  "account.open_original_page": "Auf ursprünglicher Instanz anzeigen",
   "account.posts": "Beiträge",
   "account.posts_with_replies": "Beiträge und Antworten",
   "account.report": "@{name} melden",
@@ -60,7 +60,7 @@
   "account.unblock": "@{name} entblocken",
   "account.unblock_domain": "Entblocken von {domain}",
   "account.unblock_short": "Blockierung aufheben",
-  "account.unendorse": "Nicht im Profil hervorheben",
+  "account.unendorse": "Im Profil nicht mehr empfehlen",
   "account.unfollow": "Entfolgen",
   "account.unmute": "Stummschaltung von @{name} aufheben",
   "account.unmute_notifications": "Stummschaltung der Benachrichtigungen von @{name} aufheben",
@@ -70,7 +70,7 @@
   "admin.dashboard.monthly_retention": "Benutzerverbleibrate nach Monat nach Anmeldung",
   "admin.dashboard.retention.average": "Durchschnitt",
   "admin.dashboard.retention.cohort": "Monat der Registrierung",
-  "admin.dashboard.retention.cohort_size": "Neue Benutzer",
+  "admin.dashboard.retention.cohort_size": "Neue Benutzer*innen",
   "alert.rate_limited.message": "Bitte versuche es nach {retry_time, time, medium} erneut.",
   "alert.rate_limited.title": "Anfragelimit überschritten",
   "alert.unexpected.message": "Ein unerwarteter Fehler ist aufgetreten.",
@@ -95,7 +95,7 @@
   "closed_registrations.other_server_instructions": "Da Mastodon dezentralisiert ist, kannst du ein Konto auf einem anderen Server erstellen und trotzdem mit diesem Server interagieren.",
   "closed_registrations_modal.description": "Das Anlegen eines Kontos auf {domain} ist derzeit nicht möglich, aber bedenke, dass du kein extra Konto auf {domain} benötigst, um Mastodon nutzen zu können.",
   "closed_registrations_modal.find_another_server": "Einen anderen Server auswählen",
-  "closed_registrations_modal.preamble": "Mastodon ist dezentralisiert, das heißt unabhängig davon, wo du dein Konto erstellst, kannst du jedes Konto auf diesem Server folgen und mit dem interagieren. Du kannst auch deinen eigenen Server hosten!",
+  "closed_registrations_modal.preamble": "Mastodon ist dezentralisiert, das heißt, unabhängig davon, wo du dein Konto erstellt hast, kannst du jedem Profil auf diesem Server folgen und mit ihm interagieren. Du kannst sogar deinen eigenen Server hosten!",
   "closed_registrations_modal.title": "Bei Mastodon registrieren",
   "column.about": "Über",
   "column.blocks": "Blockierte Profile",
@@ -126,9 +126,9 @@
   "compose.language.change": "Sprache festlegen",
   "compose.language.search": "Sprachen suchen …",
   "compose_form.direct_message_warning_learn_more": "Mehr erfahren",
-  "compose_form.encryption_warning": "Beiträge von Mastodon sind nicht Ende-zu-Ende verschlüsselt. Teile keine senible Informationen über Mastodon.",
+  "compose_form.encryption_warning": "Beiträge auf Mastodon sind nicht Ende-zu-Ende-verschlüsselt. Teile keine sensiblen Informationen über Mastodon.",
   "compose_form.hashtag_warning": "Dieser Beitrag ist über Hashtags nicht zu finden, weil er nicht gelistet ist. Nur öffentliche Beiträge tauchen in den Hashtag-Timelines auf.",
-  "compose_form.lock_disclaimer": "Dein Profil ist nicht {locked}. Wer dir folgen will, kann das jederzeit tun und dann auch deine privaten Beiträge sehen.",
+  "compose_form.lock_disclaimer": "Dein Profil ist nicht {locked}. Andere können dir folgen und deine Beiträge sehen, die nur für Follower bestimmt sind.",
   "compose_form.lock_disclaimer.lock": "geschützt",
   "compose_form.placeholder": "Was gibt's Neues?",
   "compose_form.poll.add_option": "Auswahlfeld hinzufügen",
@@ -138,19 +138,20 @@
   "compose_form.poll.switch_to_multiple": "Mehrfachauswahl erlauben",
   "compose_form.poll.switch_to_single": "Nur Einzelauswahl erlauben",
   "compose_form.publish": "Veröffentlichen",
+  "compose_form.publish_form": "Veröffentlichen",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Änderungen speichern",
   "compose_form.sensitive.hide": "{count, plural, one {Mit einer Inhaltswarnung versehen} other {Mit einer Inhaltswarnung versehen}}",
   "compose_form.sensitive.marked": "{count, plural, one {Medien-Datei ist mit einer Inhaltswarnung versehen} other {Medien-Dateien sind mit einer Inhaltswarnung versehen}}",
   "compose_form.sensitive.unmarked": "{count, plural, one {Medien-Datei ist nicht mit einer Inhaltswarnung versehen} other {Medien-Dateien sind nicht mit einer Inhaltswarnung versehen}}",
-  "compose_form.spoiler.marked": "Inhaltswarnung bzw. Triggerwarnung entfernen",
-  "compose_form.spoiler.unmarked": "Inhaltswarnung bzw. Triggerwarnung hinzufügen",
+  "compose_form.spoiler.marked": "Inhaltswarnung entfernen",
+  "compose_form.spoiler.unmarked": "Inhaltswarnung hinzufügen",
   "compose_form.spoiler_placeholder": "Inhaltswarnung",
   "confirmation_modal.cancel": "Abbrechen",
   "confirmations.block.block_and_report": "Blockieren und melden",
   "confirmations.block.confirm": "Blockieren",
   "confirmations.block.message": "Bist du dir sicher, dass du {name} blockieren möchtest?",
-  "confirmations.cancel_follow_request.confirm": "Anfrage zum Folgen zurückziehen",
+  "confirmations.cancel_follow_request.confirm": "Anfrage zurückziehen",
   "confirmations.cancel_follow_request.message": "Möchtest du deine Anfrage, {name} zu folgen, wirklich zurückziehen?",
   "confirmations.delete.confirm": "Löschen",
   "confirmations.delete.message": "Bist du dir sicher, dass du diesen Beitrag löschen möchtest?",
@@ -166,7 +167,7 @@
   "confirmations.mute.explanation": "Dies wird Beiträge von dieser Person und Beiträge, die diese Person erwähnen, ausblenden, aber es wird der Person trotzdem erlauben, deine Beiträge zu sehen und dir zu folgen.",
   "confirmations.mute.message": "Bist du dir sicher, dass du {name} stummschalten möchtest?",
   "confirmations.redraft.confirm": "Löschen und neu erstellen",
-  "confirmations.redraft.message": "Bist du dir sicher, dass du diesen Beitrag löschen und neu machen möchtest? Favoriten und Boosts werden verloren gehen und Antworten zu diesem Beitrag werden verwaist sein.",
+  "confirmations.redraft.message": "Bist du dir sicher, dass du diesen Beitrag löschen und auf Basis deines vorherigen neu erstellen möchtest? Favoriten und geteilte Beiträge gehen verloren. Vorhandene Antworten von dir und anderen Nutzer*innen auf diesen Beitrag werden zwar nicht gelöscht, aber die Verknüpfungen gehen verloren.",
   "confirmations.reply.confirm": "Antworten",
   "confirmations.reply.message": "Wenn du jetzt antwortest wird die gesamte Nachricht verworfen, die du gerade schreibst. Möchtest du wirklich fortfahren?",
   "confirmations.unfollow.confirm": "Entfolgen",
@@ -175,7 +176,7 @@
   "conversation.mark_as_read": "Als gelesen markieren",
   "conversation.open": "Unterhaltung anzeigen",
   "conversation.with": "Mit {names}",
-  "copypaste.copied": "In die Zwischenablage kopiert",
+  "copypaste.copied": "Kopiert",
   "copypaste.copy": "Kopieren",
   "directory.federated": "Aus dem Fediverse",
   "directory.local": "Nur von der Domain {domain}",
@@ -183,7 +184,7 @@
   "directory.recently_active": "Kürzlich aktiv",
   "disabled_account_banner.account_settings": "Kontoeinstellungen",
   "disabled_account_banner.text": "Dein Konto {disabledAccount} ist derzeit deaktiviert.",
-  "dismissable_banner.community_timeline": "Dies sind die neuesten öffentlichen Beiträge von Personen, deren Konten von {domain} gehostet werden.",
+  "dismissable_banner.community_timeline": "Das sind die neuesten öffentlichen Beiträge von Personen, deren Konten von {domain} verwaltet werden.",
   "dismissable_banner.dismiss": "Ablehnen",
   "dismissable_banner.explore_links": "Diese Nachrichten werden gerade von Leuten auf diesem und anderen Servern des dezentralen Netzwerks besprochen.",
   "dismissable_banner.explore_statuses": "Diese Beiträge von diesem und anderen Servern im dezentralen Netzwerk gewinnen gerade an Reichweite auf diesem Server.",
@@ -210,22 +211,22 @@
   "empty_column.account_timeline": "Keine Beiträge vorhanden!",
   "empty_column.account_unavailable": "Profil nicht verfügbar",
   "empty_column.blocks": "Du hast bisher keine Profile blockiert.",
-  "empty_column.bookmarked_statuses": "Du hast bis jetzt keine Beiträge als Lesezeichen gespeichert. Wenn du einen Beitrag als Lesezeichen speicherst wird er hier erscheinen.",
+  "empty_column.bookmarked_statuses": "Du hast bisher keine Beiträge als Lesezeichen abgelegt. Sobald du einen Beitrag als Lesezeichen speicherst, wird er hier erscheinen.",
   "empty_column.community": "Die lokale Timeline ist leer. Schreibe einen öffentlichen Beitrag, um den Stein ins Rollen zu bringen!",
   "empty_column.direct": "Du hast noch keine Direktnachrichten. Sobald du eine sendest oder empfängst, wird sie hier zu sehen sein.",
   "empty_column.domain_blocks": "Du hast noch keine Domains blockiert.",
   "empty_column.explore_statuses": "Momentan ist nichts im Trend. Schau später wieder vorbei!",
-  "empty_column.favourited_statuses": "Du hast noch keine Beiträge favorisiert. Wenn du einen favorisierst, wird er hier erscheinen.",
+  "empty_column.favourited_statuses": "Du hast noch keine Beiträge favorisiert. Sobald du einen favorisierst, wird er hier erscheinen.",
   "empty_column.favourites": "Noch niemand hat diesen Beitrag favorisiert. Sobald es jemand tut, wird das hier angezeigt.",
   "empty_column.follow_recommendations": "Es sieht so aus, als könnten keine Vorschläge für dich generiert werden. Du kannst versuchen, nach Leuten zu suchen, die du vielleicht kennst, oder du kannst angesagte Hashtags erkunden.",
-  "empty_column.follow_requests": "Du hast noch keine Follower-Anfragen erhalten. Sobald du eine erhältst, wird sie hier angezeigt.",
+  "empty_column.follow_requests": "Es liegen derzeit keine Follower-Anfragen vor. Sobald du eine erhältst, wird sie hier angezeigt.",
   "empty_column.hashtag": "Unter diesem Hashtag gibt es noch nichts.",
-  "empty_column.home": "Die Timeline Deiner Startseite ist leer! Folge mehr Leuten, um sie zu füllen. {suggestions}",
+  "empty_column.home": "Die Timeline deiner Startseite ist leer! Folge mehr Leuten, um sie zu füllen. {suggestions}",
   "empty_column.home.suggestions": "Ein paar Vorschläge ansehen",
-  "empty_column.list": "Diese Liste ist derzeit leer. Wenn Konten auf dieser Liste neue Beiträge veröffentlichen werden sie hier erscheinen.",
-  "empty_column.lists": "Du hast noch keine Listen. Wenn du eine anlegst, wird sie hier angezeigt werden.",
+  "empty_column.list": "Diese Liste ist derzeit leer. Wenn Konten auf dieser Liste neue Beiträge veröffentlichen, werden sie hier erscheinen.",
+  "empty_column.lists": "Du hast noch keine Listen. Sobald du eine anlegst, wird sie hier erscheinen.",
   "empty_column.mutes": "Du hast keine Profile stummgeschaltet.",
-  "empty_column.notifications": "Du hast noch keine Mitteilungen. Sobald Du mit anderen Personen interagierst, wirst Du hier darüber benachrichtigt.",
+  "empty_column.notifications": "Du hast noch keine Mitteilungen. Sobald du mit anderen Personen interagierst, wirst du hier darüber benachrichtigt.",
   "empty_column.public": "Hier ist nichts zu sehen! Schreibe etwas öffentlich oder folge Profilen von anderen Servern, um die Timeline aufzufüllen",
   "error.unexpected_crash.explanation": "Aufgrund eines Fehlers in unserem Code oder einer Browser-Inkompatibilität konnte diese Seite nicht korrekt angezeigt werden.",
   "error.unexpected_crash.explanation_addons": "Diese Seite konnte nicht korrekt angezeigt werden. Dieser Fehler wird wahrscheinlich durch ein Browser-Add-on oder automatische Übersetzungswerkzeuge verursacht.",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Fehlerlog in die Zwischenablage kopieren",
   "errors.unexpected_crash.report_issue": "Problem melden",
   "explore.search_results": "Suchergebnisse",
-  "explore.suggested_follows": "Für dich",
   "explore.title": "Entdecken",
-  "explore.trending_links": "Nachrichten",
-  "explore.trending_statuses": "Beiträge",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "Diese Filterkategorie gilt nicht für den Kontext, in welchem du auf diesen Beitrag zugegriffen hast. Wenn der Beitrag auch in diesem Kontext gefiltert werden soll, musst du den Filter bearbeiten.",
   "filter_modal.added.context_mismatch_title": "Kontext stimmt nicht überein!",
   "filter_modal.added.expired_explanation": "Diese Filterkategrie ist abgelaufen, du musst das Ablaufdatum für diese Kategorie ändern.",
@@ -269,7 +266,7 @@
   "footer.privacy_policy": "Datenschutzerklärung",
   "footer.source_code": "Quellcode anzeigen",
   "generic.saved": "Gespeichert",
-  "getting_started.heading": "Erste Schritte",
+  "getting_started.heading": "Auf geht's!",
   "hashtag.column_header.tag_mode.all": "und {additional}",
   "hashtag.column_header.tag_mode.any": "oder {additional}",
   "hashtag.column_header.tag_mode.none": "ohne {additional}",
@@ -286,10 +283,10 @@
   "home.column_settings.show_replies": "Antworten anzeigen",
   "home.hide_announcements": "Ankündigungen verbergen",
   "home.show_announcements": "Ankündigungen anzeigen",
-  "interaction_modal.description.favourite": "Mit einem Account auf Mastodon kannst du diesen Beitrag favorisieren, um deine Wertschätzung auszudrücken, und ihn für einen späteren Zeitpunkt speichern.",
-  "interaction_modal.description.follow": "Mit einem Konto auf Mastodon kannst du {name} folgen, um seine Beiträge in deinem Home Feed zu erhalten.",
-  "interaction_modal.description.reblog": "Mit einem Mastodon-Account kannst du die Reichweite dieses Beitrags erhöhen, in dem du ihn mit deinen eigenen Followern teilst.",
-  "interaction_modal.description.reply": "Mit einem Account auf Mastodon kannst du auf diesen Beitrag antworten.",
+  "interaction_modal.description.favourite": "Mit einem Mastodon-Konto kannst du diesen Beitrag favorisieren, um deine Wertschätzung auszudrücken, und ihn für einen späteren Zeitpunkt speichern.",
+  "interaction_modal.description.follow": "Mit einem Mastodon-Konto kannst du {name} folgen, um die Beiträge auf deiner Startseite zu sehen.",
+  "interaction_modal.description.reblog": "Mit einem Mastodon-Konto kannst du die Reichweite dieses Beitrags erhöhen, indem du ihn mit deinen Followern teilst.",
+  "interaction_modal.description.reply": "Mit einem Mastodon-Konto kannst du auf diesen Beitrag antworten.",
   "interaction_modal.on_another_server": "Auf einem anderen Server",
   "interaction_modal.on_this_server": "Auf diesem Server",
   "interaction_modal.other_server_instructions": "Kopiere diese URL und füge sie in das Suchfeld deiner bevorzugten Mastodon-App oder im Webinterface deiner Mastodon-Instanz ein.",
@@ -328,9 +325,9 @@
   "keyboard_shortcuts.reply": "antworten",
   "keyboard_shortcuts.requests": "Liste der Follower-Anfragen öffnen",
   "keyboard_shortcuts.search": "Suche fokussieren",
-  "keyboard_shortcuts.spoilers": "Feld für Inhaltswarnung bzw. Triggerwarnung anzeigen/ausblenden",
+  "keyboard_shortcuts.spoilers": "Schaltfläche für Inhaltswarnung anzeigen/verbergen",
   "keyboard_shortcuts.start": "\"Erste Schritte\"-Spalte öffnen",
-  "keyboard_shortcuts.toggle_hidden": "Beitragstext hinter der Inhaltswarnung bzw. Triggerwarnung verstecken/anzeigen",
+  "keyboard_shortcuts.toggle_hidden": "Beitragstext hinter der Inhaltswarnung anzeigen/verbergen",
   "keyboard_shortcuts.toggle_sensitivity": "Medien anzeigen/verbergen",
   "keyboard_shortcuts.toot": "Neuen Beitrag erstellen",
   "keyboard_shortcuts.unfocus": "Textfeld/die Suche nicht mehr fokussieren",
@@ -349,7 +346,7 @@
   "lists.edit.submit": "Titel ändern",
   "lists.new.create": "Liste hinzufügen",
   "lists.new.title_placeholder": "Neuer Titel der Liste",
-  "lists.replies_policy.followed": "Jeder gefolgte Benutzer",
+  "lists.replies_policy.followed": "Alle folgenden Profile",
   "lists.replies_policy.list": "Mitglieder der Liste",
   "lists.replies_policy.none": "Niemand",
   "lists.replies_policy.title": "Antworten anzeigen für:",
@@ -397,12 +394,12 @@
   "notification.own_poll": "Deine Umfrage ist beendet",
   "notification.poll": "Eine Umfrage, an der du teilgenommen hast, ist beendet",
   "notification.reblog": "{name} hat deinen Beitrag geteilt",
-  "notification.status": "{name} hat gerade etwas gepostet",
+  "notification.status": "{name} hat etwas mitgeteilt",
   "notification.update": "{name} bearbeitete einen Beitrag",
   "notifications.clear": "Mitteilungen löschen",
   "notifications.clear_confirmation": "Bist du dir sicher, dass du alle Mitteilungen löschen möchtest?",
   "notifications.column_settings.admin.report": "Neue Meldungen:",
-  "notifications.column_settings.admin.sign_up": "Neue Anmeldungen:",
+  "notifications.column_settings.admin.sign_up": "Neue Registrierungen:",
   "notifications.column_settings.alert": "Desktop-Benachrichtigungen",
   "notifications.column_settings.favourite": "Favorisierungen:",
   "notifications.column_settings.filter_bar.advanced": "Zeige alle Kategorien an",
@@ -424,9 +421,9 @@
   "notifications.filter.boosts": "Geteilte Beiträge",
   "notifications.filter.favourites": "Favorisierungen",
   "notifications.filter.follows": "Neue Follower",
-  "notifications.filter.mentions": "Erwähnungen und Antworten",
+  "notifications.filter.mentions": "Erwähnungen",
   "notifications.filter.polls": "Umfrageergebnisse",
-  "notifications.filter.statuses": "Beiträge von Personen, denen du folgst",
+  "notifications.filter.statuses": "Neue Beiträge von Personen, denen du folgst",
   "notifications.grant_permission": "Berechtigung erteilen.",
   "notifications.group": "{count} Benachrichtigungen",
   "notifications.mark_as_read": "Alles als gelesen markieren",
@@ -455,8 +452,8 @@
   "privacy.public.short": "Öffentlich",
   "privacy.unlisted.long": "Sichtbar für alle, aber nicht über Suchfunktion",
   "privacy.unlisted.short": "Nicht gelistet",
-  "privacy_policy.last_updated": "Letztes Update am {date}",
-  "privacy_policy.title": "Datenschutzbestimmungen",
+  "privacy_policy.last_updated": "Zuletzt aktualisiert am {date}",
+  "privacy_policy.title": "Datenschutzerklärung",
   "refresh": "Aktualisieren",
   "regeneration_indicator.label": "Laden…",
   "regeneration_indicator.sublabel": "Deine Startseite wird gerade vorbereitet!",
@@ -527,7 +524,7 @@
   "search_results.hashtags": "Hashtags",
   "search_results.nothing_found": "Nichts für diese Suchbegriffe gefunden",
   "search_results.statuses": "Beiträge",
-  "search_results.statuses_fts_disabled": "Die Suche für Beiträge nach ihrem Inhalt ist auf diesem Mastodon-Server deaktiviert.",
+  "search_results.statuses_fts_disabled": "Die Suche nach Beitragsinhalten ist auf diesem Mastodon-Server deaktiviert.",
   "search_results.title": "Suchergebnisse für {q}",
   "search_results.total": "{count, number} {count, plural, one {Ergebnis} other {Ergebnisse}}",
   "server_banner.about_active_users": "Personen, die diesen Server in den vergangenen 30 Tagen genutzt haben (monatlich aktive Benutzer*innen)",
@@ -537,8 +534,8 @@
   "server_banner.learn_more": "Mehr erfahren",
   "server_banner.server_stats": "Serverstatistiken:",
   "sign_in_banner.create_account": "Konto erstellen",
-  "sign_in_banner.sign_in": "Einloggen",
-  "sign_in_banner.text": "Melden Sie sich an, um Profilen oder Hashtags zu folgen, Favoriten, Teilen und Antworten auf Beiträge oder interagieren Sie von Ihrem Konto auf einem anderen Server.",
+  "sign_in_banner.sign_in": "Anmelden",
+  "sign_in_banner.text": "Melde dich an, um Profilen oder Hashtags zu folgen, Beiträge zu favorisieren, zu teilen und auf sie zu antworten oder um von deinem Konto aus auf einem anderen Server zu interagieren.",
   "status.admin_account": "Moderationsoberfläche für @{name} öffnen",
   "status.admin_status": "Diesen Beitrag in der Moderationsoberfläche öffnen",
   "status.block": "@{name} blockieren",
@@ -549,7 +546,7 @@
   "status.delete": "Beitrag löschen",
   "status.detailed_status": "Detaillierte Ansicht der Unterhaltung",
   "status.direct": "Direktnachricht an @{name}",
-  "status.edit": "Bearbeiten",
+  "status.edit": "Beitrag bearbeiten",
   "status.edited": "Bearbeitet {date}",
   "status.edited_x_times": "{count, plural, one {{count} mal} other {{count} mal}} bearbeitet",
   "status.embed": "Beitrag per iFrame einbetten",
@@ -597,9 +594,9 @@
   "subscribed_languages.target": "Abonnierte Sprachen für {target} ändern",
   "suggestions.dismiss": "Empfehlung ausblenden",
   "suggestions.header": "Du bist vielleicht interessiert an…",
-  "tabs_bar.federated_timeline": "Föderierte Timeline",
+  "tabs_bar.federated_timeline": "Föderiert",
   "tabs_bar.home": "Startseite",
-  "tabs_bar.local_timeline": "Lokale Timeline",
+  "tabs_bar.local_timeline": "Lokal",
   "tabs_bar.notifications": "Mitteilungen",
   "time_remaining.days": "{number, plural, one {# Tag} other {# Tage}} verbleibend",
   "time_remaining.hours": "{number, plural, one {# Stunde} other {# Stunden}} verbleibend",
@@ -624,7 +621,7 @@
   "upload_form.description": "Bildbeschreibung für blinde und sehbehinderte Menschen",
   "upload_form.description_missing": "Keine Beschreibung hinzugefügt",
   "upload_form.edit": "Beschreiben",
-  "upload_form.thumbnail": "Miniaturansicht ändern",
+  "upload_form.thumbnail": "Vorschaubild ändern",
   "upload_form.undo": "Löschen",
   "upload_form.video_description": "Beschreibe das Video für Menschen mit einer Hör- oder Sehbehinderung",
   "upload_modal.analyzing_picture": "Analysiere Bild…",
diff --git a/app/javascript/mastodon/locales/defaultMessages.json b/app/javascript/mastodon/locales/defaultMessages.json
index 676dac78d..36f3cba0a 100644
--- a/app/javascript/mastodon/locales/defaultMessages.json
+++ b/app/javascript/mastodon/locales/defaultMessages.json
@@ -2014,22 +2014,6 @@
       {
         "defaultMessage": "Search results",
         "id": "explore.search_results"
-      },
-      {
-        "defaultMessage": "Posts",
-        "id": "explore.trending_statuses"
-      },
-      {
-        "defaultMessage": "Hashtags",
-        "id": "explore.trending_tags"
-      },
-      {
-        "defaultMessage": "News",
-        "id": "explore.trending_links"
-      },
-      {
-        "defaultMessage": "For you",
-        "id": "explore.suggested_follows"
       }
     ],
     "path": "app/javascript/mastodon/features/explore/index.json"
@@ -3989,7 +3973,7 @@
     "descriptors": [
       {
         "defaultMessage": "Publish",
-        "id": "compose_form.publish"
+        "id": "compose_form.publish_form"
       },
       {
         "defaultMessage": "Sign in",
diff --git a/app/javascript/mastodon/locales/el.json b/app/javascript/mastodon/locales/el.json
index f6beca181..16f32c7ac 100644
--- a/app/javascript/mastodon/locales/el.json
+++ b/app/javascript/mastodon/locales/el.json
@@ -1,16 +1,16 @@
 {
-  "about.blocks": "Moderated servers",
+  "about.blocks": "Κανένας πρόσφατος διακομιστής",
   "about.contact": "Επικοινωνία:",
   "about.disclaimer": "Το Mastodon είναι ελεύθερο λογισμικό ανοιχτού κώδικα και εμπορικό σήμα της Mastodon gGmbH.",
   "about.domain_blocks.no_reason_available": "Αιτιολογία μη διαθέσιμη",
-  "about.domain_blocks.preamble": "Mastodon generally allows you to view content from and interact with users from any other server in the fediverse. These are the exceptions that have been made on this particular server.",
-  "about.domain_blocks.silenced.explanation": "You will generally not see profiles and content from this server, unless you explicitly look it up or opt into it by following.",
-  "about.domain_blocks.silenced.title": "Limited",
-  "about.domain_blocks.suspended.explanation": "No data from this server will be processed, stored or exchanged, making any interaction or communication with users from this server impossible.",
-  "about.domain_blocks.suspended.title": "Suspended",
-  "about.not_available": "This information has not been made available on this server.",
-  "about.powered_by": "Decentralized social media powered by {mastodon}",
-  "about.rules": "Server rules",
+  "about.domain_blocks.preamble": "Σε γενικές γραμμές το Mastodon σού επιτρέπει να βλέπεις περιεχόμενο και να αλληλεπιδράς με χρήστες από οποιονδήποτε άλλο server σε ένα διασυνδεδεμένο σύμπαν διακομιστών (fediverse). Ακολουθούν οι εξαιρέσεις που ισχύουν για τον συγκεκριμένο server.",
+  "about.domain_blocks.silenced.explanation": "Γενικά δεν μπορείς να δεις τα προφίλ και το περιεχόμενο αυτού του server, εκτός αν κάνεις μια στοχευμένη αναζήτηση ή επιλέξεις να τον ακολουθήσεις.",
+  "about.domain_blocks.silenced.title": "Η μετάφραση είναι ανοιχτή μόνο σε περιορισμένη ομάδα μεταφραστών, αν θέλετε να συνεισφέρετε, επικοινωνήστε με τους συντηρητές των έργων.",
+  "about.domain_blocks.suspended.explanation": "Κανένα δεδομένο αυτού του server δεν θα τυγχάνει επεξεργασίας, ούτε θα αποθηκεύεται, ούτε θα ανταλλάσεται, οπότε η οποιαδήποτε αλληλεπίδραση ή επικοινωνία με χρήστες αυτού του server είναι αδύνατη.",
+  "about.domain_blocks.suspended.title": "Σε αναστολή",
+  "about.not_available": "Αυτές οι πληροφορίες δεν έχουν καταστεί διαθέσιμες σε αυτόν τον server.",
+  "about.powered_by": "Αποκεντρωμένα μέσα κοινωνικής δικτύωσης που βασίζονται στο {mastodon}",
+  "about.rules": "Κανόνες διακομιστή",
   "account.account_note_header": "Σημείωση",
   "account.add_or_remove_from_list": "Προσθήκη ή Αφαίρεση από λίστες",
   "account.badges.bot": "Μποτ",
@@ -33,14 +33,14 @@
   "account.followers": "Ακόλουθοι",
   "account.followers.empty": "Κανείς δεν ακολουθεί αυτό τον χρήστη ακόμα.",
   "account.followers_counter": "{count, plural, one {{counter} Ακόλουθος} other {{counter} Ακόλουθοι}}",
-  "account.following": "Following",
+  "account.following": "Αυτό το πρόγραμμα χρέωσης καλύπτει τα ακόλουθα έργα:",
   "account.following_counter": "{count, plural, other {{counter} Ακολουθεί}}",
   "account.follows.empty": "Αυτός ο χρήστης δεν ακολουθεί κανέναν ακόμα.",
   "account.follows_you": "Σε ακολουθεί",
   "account.go_to_profile": "Μετάβαση στο προφίλ",
   "account.hide_reblogs": "Απόκρυψη προωθήσεων από @{name}",
-  "account.joined_short": "Joined",
-  "account.languages": "Change subscribed languages",
+  "account.joined_short": "Εγγραφή στο <x id=\"INTERPOLATION\" equiv-text=\"{{ account.createdAt | date }}\"/> ",
+  "account.languages": "Είστε συνδρομητής",
   "account.link_verified_on": "Η ιδιοκτησία αυτού του συνδέσμου ελέχθηκε την {date}",
   "account.locked_info": "Η κατάσταση απορρήτου αυτού του λογαριασμού είναι κλειδωμένη. Ο ιδιοκτήτης επιβεβαιώνει χειροκίνητα ποιος μπορεί να τον ακολουθήσει.",
   "account.media": "Πολυμέσα",
@@ -49,7 +49,7 @@
   "account.mute": "Σώπασε @{name}",
   "account.mute_notifications": "Σώπασε τις ειδοποιήσεις από @{name}",
   "account.muted": "Αποσιωπημένος/η",
-  "account.open_original_page": "Open original page",
+  "account.open_original_page": "Ανοικτό",
   "account.posts": "Τουτ",
   "account.posts_with_replies": "Τουτ και απαντήσεις",
   "account.report": "Κατάγγειλε @{name}",
@@ -66,9 +66,9 @@
   "account.unmute_notifications": "Διακοπή αποσιώπησης ειδοποιήσεων του/της @{name}",
   "account.unmute_short": "Κατάργηση σίγασης",
   "account_note.placeholder": "Κλικ για να βάλεις σημείωση",
-  "admin.dashboard.daily_retention": "User retention rate by day after sign-up",
-  "admin.dashboard.monthly_retention": "User retention rate by month after sign-up",
-  "admin.dashboard.retention.average": "Average",
+  "admin.dashboard.daily_retention": "Ποσοστό χρηστών που παραμένουν μετά την εγγραφή, ανά ημέρα",
+  "admin.dashboard.monthly_retention": "Ποσοστό χρηστών που παραμένουν μετά την εγγραφή, ανά μήνα",
+  "admin.dashboard.retention.average": "%(display_name)s άφησε %(ratings_total)s βαθμολογία, <br />η μέση βαθμολογία είναι %(rating_average)s",
   "admin.dashboard.retention.cohort": "Μήνας εγγραφής",
   "admin.dashboard.retention.cohort_size": "Νέοι χρήστες",
   "alert.rate_limited.message": "Παρακαλούμε δοκίμασε ξανά αφού περάσει η {retry_time, time, medium}.",
@@ -87,15 +87,15 @@
   "bundle_column_error.network.title": "Σφάλμα δικτύου",
   "bundle_column_error.retry": "Δοκίμασε ξανά",
   "bundle_column_error.return": "Μετάβαση πίσω στην αρχική σελίδα",
-  "bundle_column_error.routing.body": "The requested page could not be found. Are you sure the URL in the address bar is correct?",
+  "bundle_column_error.routing.body": "Η επιθυμητή σελίδα δεν βρέθηκε. Είναι σωστό το URL στο πεδίο διευθύνσεων;",
   "bundle_column_error.routing.title": "404",
   "bundle_modal_error.close": "Κλείσιμο",
   "bundle_modal_error.message": "Κάτι πήγε στραβά κατά τη φόρτωση του στοιχείου.",
   "bundle_modal_error.retry": "Δοκίμασε ξανά",
-  "closed_registrations.other_server_instructions": "Since Mastodon is decentralized, you can create an account on another server and still interact with this one.",
-  "closed_registrations_modal.description": "Creating an account on {domain} is currently not possible, but please keep in mind that you do not need an account specifically on {domain} to use Mastodon.",
-  "closed_registrations_modal.find_another_server": "Find another server",
-  "closed_registrations_modal.preamble": "Mastodon is decentralized, so no matter where you create your account, you will be able to follow and interact with anyone on this server. You can even self-host it!",
+  "closed_registrations.other_server_instructions": "Καθώς το Mastodon είναι αποκεντρωμένο, μπορείς να δημιουργήσεις λογαριασμό σε άλλο server αλλά να συνεχίσεις να αλληλεπιδράς με τον παρόντα.",
+  "closed_registrations_modal.description": "Η δημιουργία λογαριασμού στο {domain} δεν είναι δυνατή επί του παρόντος, αλλά λάβε υπόψη ότι δεν χρειάζεσαι λογαριασμό ειδικά στο {domain} για να χρησιμοποιήσεις το Mastodon.",
+  "closed_registrations_modal.find_another_server": "&Εύρεση…",
+  "closed_registrations_modal.preamble": "Το Mastodon είναι αποκεντρωμένο, οπότε ανεξάρτητα από το πού θα δημιουργήσεις τον λογαριασμό σου, μπορείς να ακολουθήσεις και να αλληλεπιδράσεις με οποιονδήποτε σε αυτόν τον server. Μπορείς ακόμη και να κάνεις self-hosting!",
   "closed_registrations_modal.title": "Εγγραφή στο Mastodon",
   "column.about": "Σχετικά με",
   "column.blocks": "Αποκλεισμένοι χρήστες",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Ενημέρωση δημοσκόπησης με πολλαπλές επιλογές",
   "compose_form.poll.switch_to_single": "Ενημέρωση δημοσκόπησης με μοναδική επιλογή",
   "compose_form.publish": "Δημοσίευση",
+  "compose_form.publish_form": "Δημοσίευση",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Αποθήκευση αλλαγών",
   "compose_form.sensitive.hide": "Σημείωσε τα πολυμέσα ως ευαίσθητα",
@@ -151,7 +152,7 @@
   "confirmations.block.confirm": "Απόκλεισε",
   "confirmations.block.message": "Σίγουρα θες να αποκλείσεις {name};",
   "confirmations.cancel_follow_request.confirm": "Απόσυρση αιτήματος",
-  "confirmations.cancel_follow_request.message": "Are you sure you want to withdraw your request to follow {name}?",
+  "confirmations.cancel_follow_request.message": "Είσαι σίγουρος/η ότι θέλεις να αποσύρεις το αίτημά σου να ακολουθείς τον/την {name};",
   "confirmations.delete.confirm": "Διέγραψε",
   "confirmations.delete.message": "Σίγουρα θες να διαγράψεις αυτή τη δημοσίευση;",
   "confirmations.delete_list.confirm": "Διέγραψε",
@@ -182,13 +183,13 @@
   "directory.new_arrivals": "Νέες αφίξεις",
   "directory.recently_active": "Πρόσφατα ενεργοί",
   "disabled_account_banner.account_settings": "Ρυθμίσεις λογαριασμού",
-  "disabled_account_banner.text": "Your account {disabledAccount} is currently disabled.",
-  "dismissable_banner.community_timeline": "These are the most recent public posts from people whose accounts are hosted by {domain}.",
+  "disabled_account_banner.text": "Ο λογαριασμός σου {disabledAccount} είναι επί του παρόντος απενεργοποιημένος.",
+  "dismissable_banner.community_timeline": "Αυτές είναι οι πιο πρόσφατες δημόσιες αναρτήσεις ατόμων των οποίων οι λογαριασμοί φιλοξενούνται στο {domain}.",
   "dismissable_banner.dismiss": "Παράβλεψη",
-  "dismissable_banner.explore_links": "These news stories are being talked about by people on this and other servers of the decentralized network right now.",
-  "dismissable_banner.explore_statuses": "These posts from this and other servers in the decentralized network are gaining traction on this server right now.",
-  "dismissable_banner.explore_tags": "These hashtags are gaining traction among people on this and other servers of the decentralized network right now.",
-  "dismissable_banner.public_timeline": "These are the most recent public posts from people on this and other servers of the decentralized network that this server knows about.",
+  "dismissable_banner.explore_links": "Αυτές οι ειδήσεις συζητούνται σε αυτόν και άλλους servers του αποκεντρωμένου δικτύου αυτή τη στιγμή.",
+  "dismissable_banner.explore_statuses": "Αυτές οι αναρτήσεις από αυτόν τον server και άλλους στο αποκεντρωμένο δίκτυο αποκτούν απήχηση σε αυτόν τον server αυτή τη στιγμή.",
+  "dismissable_banner.explore_tags": "Αυτά τα hashtags αποκτούν απήχηση σε αυτόν και άλλους servers του αποκεντρωμένου δικτύου αυτή τη στιγμή.",
+  "dismissable_banner.public_timeline": "Αυτές είναι οι πιο πρόσφατες δημόσιες αναρτήσεις ανθρώπων σε αυτόν και άλλους servers του αποκεντρωμένου δικτύου τις οποίες γνωρίζει αυτός ο server.",
   "embed.instructions": "Ενσωματώστε αυτή την κατάσταση στην ιστοσελίδα σας αντιγράφοντας τον παρακάτω κώδικα.",
   "embed.preview": "Ορίστε πως θα φαίνεται:",
   "emoji_button.activity": "Δραστηριότητα",
@@ -214,10 +215,10 @@
   "empty_column.community": "Η τοπική ροή είναι κενή. Γράψε κάτι δημόσιο παραμύθι ν' αρχινίσει!",
   "empty_column.direct": "Δεν έχεις προσωπικά μηνύματα ακόμα. Όταν στείλεις ή λάβεις κανένα, θα εμφανιστεί εδώ.",
   "empty_column.domain_blocks": "Δεν υπάρχουν αποκλεισμένοι τομείς ακόμα.",
-  "empty_column.explore_statuses": "Nothing is trending right now. Check back later!",
+  "empty_column.explore_statuses": "Τίποτα δεν τρεντάρει αυτή τη στιγμή. Ελέγξτε αργότερα!",
   "empty_column.favourited_statuses": "Δεν έχεις κανένα αγαπημένο τουτ ακόμα. Μόλις αγαπήσεις κάποιο, θα εμφανιστεί εδώ.",
   "empty_column.favourites": "Κανείς δεν έχει αγαπήσει αυτό το τουτ ακόμα. Μόλις το κάνει κάποια, θα εμφανιστούν εδώ.",
-  "empty_column.follow_recommendations": "Looks like no suggestions could be generated for you. You can try using search to look for people you might know or explore trending hashtags.",
+  "empty_column.follow_recommendations": "Φαίνεται ότι δεν υπάρχει καμία πρόταση για σένα. Μπορείς να κάνεις μια αναζήτηση για άτομα που μπορεί να γνωρίζεις ή για hashtags που τρεντάρουν.",
   "empty_column.follow_requests": "Δεν έχεις κανένα αίτημα παρακολούθησης ακόμα. Μόλις λάβεις κάποιο, θα εμφανιστεί εδώ.",
   "empty_column.hashtag": "Δεν υπάρχει ακόμα κάτι για αυτή την ετικέτα.",
   "empty_column.home": "Η τοπική σου ροή είναι κενή! Πήγαινε στο {public} ή κάνε αναζήτηση για να ξεκινήσεις και να γνωρίσεις άλλους χρήστες.",
@@ -233,28 +234,24 @@
   "error.unexpected_crash.next_steps_addons": "Δοκίμασε να τα απενεργοποιήσεις και ανανέωσε τη σελίδα. Αν αυτό δεν βοηθήσει, ίσως να μπορέσεις να χρησιμοποιήσεις το Mastodon μέσω διαφορετικού φυλλομετρητή ή κάποιας εφαρμογής.",
   "errors.unexpected_crash.copy_stacktrace": "Αντιγραφή μηνυμάτων κώδικα στο πρόχειρο",
   "errors.unexpected_crash.report_issue": "Αναφορά προβλήματος",
-  "explore.search_results": "Search results",
-  "explore.suggested_follows": "Για σένα",
+  "explore.search_results": "Κανένα αποτέλεσμα.",
   "explore.title": "Εξερεύνηση",
-  "explore.trending_links": "Νέα",
-  "explore.trending_statuses": "Αναρτήσεις",
-  "explore.trending_tags": "Ετικέτες",
-  "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
-  "filter_modal.added.context_mismatch_title": "Context mismatch!",
-  "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
-  "filter_modal.added.expired_title": "Expired filter!",
-  "filter_modal.added.review_and_configure": "To review and further configure this filter category, go to the {settings_link}.",
-  "filter_modal.added.review_and_configure_title": "Filter settings",
-  "filter_modal.added.settings_link": "settings page",
-  "filter_modal.added.short_explanation": "This post has been added to the following filter category: {title}.",
-  "filter_modal.added.title": "Filter added!",
-  "filter_modal.select_filter.context_mismatch": "does not apply to this context",
-  "filter_modal.select_filter.expired": "expired",
-  "filter_modal.select_filter.prompt_new": "New category: {name}",
-  "filter_modal.select_filter.search": "Search or create",
-  "filter_modal.select_filter.subtitle": "Use an existing category or create a new one",
-  "filter_modal.select_filter.title": "Filter this post",
-  "filter_modal.title.status": "Filter a post",
+  "filter_modal.added.context_mismatch_explanation": "Αυτή η κατηγορία φίλτρων δεν ισχύει για το πλαίσιο εντός του οποίου προσπελάσατε αυτή την ανάρτηση. Αν θέλετε να φιλτραριστεί η δημοσίευση και εντός αυτού του πλαισίου, θα πρέπει να τροποποιήσετε το φίλτρο.",
+  "filter_modal.added.context_mismatch_title": "Συνοδευτικά",
+  "filter_modal.added.expired_explanation": "Αυτή η κατηγορία φίλτρων έχει λήξει, πρέπει να αλλάξετε την ημερομηνία λήξης για να ισχύσει.",
+  "filter_modal.added.expired_title": "Φίλτρο...",
+  "filter_modal.added.review_and_configure": "Για να επιθεωρήσετε και να εξειδικεύσετε περαιτέρω αυτή την κατηγορία φίλτρων, πηγαίνετε στο {settings_link}.",
+  "filter_modal.added.review_and_configure_title": "Φίλτρο...",
+  "filter_modal.added.settings_link": "Στη σελίδα:",
+  "filter_modal.added.short_explanation": "Αυτή η ανάρτηση έχει προστεθεί στην ακόλουθη κατηγορία φίλτρου: {title}.",
+  "filter_modal.added.title": "Φίλτρο...",
+  "filter_modal.select_filter.context_mismatch": "Εφαρμογή",
+  "filter_modal.select_filter.expired": "Έληξε",
+  "filter_modal.select_filter.prompt_new": "Κατηγορία",
+  "filter_modal.select_filter.search": "Δημιουργία",
+  "filter_modal.select_filter.subtitle": "Χρησιμοποιήστε μια υπάρχουσα κατηγορία ή δημιουργήστε μια νέα",
+  "filter_modal.select_filter.title": "Φίλτρο...",
+  "filter_modal.title.status": "Φίλτρο...",
   "follow_recommendations.done": "Ολοκληρώθηκε",
   "follow_recommendations.heading": "Ακολουθήστε άτομα από τα οποία θα θέλατε να βλέπετε δημοσιεύσεις! Ορίστε μερικές προτάσεις.",
   "follow_recommendations.lead": "Οι αναρτήσεις των ατόμων που ακολουθείτε θα εμφανίζονται με χρονολογική σειρά στη ροή σας. Μη φοβάστε να κάνετε λάθη, καθώς μπορείτε πολύ εύκολα να σταματήσετε να ακολουθείτε άλλα άτομα οποιαδήποτε στιγμή!",
@@ -286,17 +283,17 @@
   "home.column_settings.show_replies": "Εμφάνιση απαντήσεων",
   "home.hide_announcements": "Απόκρυψη ανακοινώσεων",
   "home.show_announcements": "Εμφάνιση ανακοινώσεων",
-  "interaction_modal.description.favourite": "With an account on Mastodon, you can favourite this post to let the author know you appreciate it and save it for later.",
-  "interaction_modal.description.follow": "With an account on Mastodon, you can follow {name} to receive their posts in your home feed.",
-  "interaction_modal.description.reblog": "With an account on Mastodon, you can boost this post to share it with your own followers.",
-  "interaction_modal.description.reply": "With an account on Mastodon, you can respond to this post.",
+  "interaction_modal.description.favourite": "Με ένα λογαριασμό Mastodon μπορείτε να προτιμήσετε αυτή την ανάρτηση, για να ενημερώσετε τον συγγραφέα ότι την εκτιμάτε και να την αποθηκεύσετε για αργότερα.",
+  "interaction_modal.description.follow": "Με έναν λογαριασμό Mastodon, μπορείτε να ακολουθήσετε τον/την {name} ώστε να λαμβάνετε τις δημοσιεύσεις τους στη δική σας ροή.",
+  "interaction_modal.description.reblog": "Με ένα λογαριασμό Mastodon, μπορείτε να ενισχύσετε αυτή την ανάρτηση για να τη μοιραστείτε με τους δικούς σας followers.",
+  "interaction_modal.description.reply": "Με ένα λογαριασμό Mastodon, μπορείτε να απαντήσετε σε αυτή την ανάρτηση.",
   "interaction_modal.on_another_server": "Σε διαφορετικό διακομιστή",
   "interaction_modal.on_this_server": "Σε αυτόν τον διακομιστή",
   "interaction_modal.other_server_instructions": "Αντιγράψτε και επικολλήστε αυτήν τη διεύθυνση URL στο πεδίο αναζήτησης της αγαπημένης σας εφαρμογής Mastodon ή στο web interface του διακομιστή σας Mastodon.",
-  "interaction_modal.preamble": "Since Mastodon is decentralized, you can use your existing account hosted by another Mastodon server or compatible platform if you don't have an account on this one.",
-  "interaction_modal.title.favourite": "Favourite {name}'s post",
-  "interaction_modal.title.follow": "Follow {name}",
-  "interaction_modal.title.reblog": "Boost {name}'s post",
+  "interaction_modal.preamble": "Δεδομένου ότι το Mastodon είναι αποκεντρωμένο, μπορείτε να χρησιμοποιήσετε τον υπάρχοντα λογαριασμό σας που φιλοξενείται σε άλλο server του Mastodon ή σε συμβατή πλατφόρμα, αν δεν έχετε λογαριασμό σε αυτόν τον server.",
+  "interaction_modal.title.favourite": "Σελίδα συγγραφέα %(name)s",
+  "interaction_modal.title.follow": "Ακολουθήστε!",
+  "interaction_modal.title.reblog": "Σχετικά με %(site_name)s",
   "interaction_modal.title.reply": "Απάντηση στην ανάρτηση του {name}",
   "intervals.full.days": "{number, plural, one {# μέρα} other {# μέρες}}",
   "intervals.full.hours": "{number, plural, one {# ώρα} other {# ώρες}}",
@@ -360,7 +357,7 @@
   "media_gallery.toggle_visible": "Εναλλαγή ορατότητας",
   "missing_indicator.label": "Δε βρέθηκε",
   "missing_indicator.sublabel": "Αδύνατη η εύρεση αυτού του πόρου",
-  "moved_to_account_banner.text": "Your account {disabledAccount} is currently disabled because you moved to {movedToAccount}.",
+  "moved_to_account_banner.text": "Ο λογαριασμός σας {disabledAccount} είναι προσωρινά απενεργοποιημένος επειδή μεταφερθήκατε στο {movedToAccount}.",
   "mute_modal.duration": "Διάρκεια",
   "mute_modal.hide_notifications": "Απόκρυψη ειδοποιήσεων αυτού του χρήστη;",
   "mute_modal.indefinite": "Αόριστη",
@@ -461,11 +458,11 @@
   "regeneration_indicator.label": "Φορτώνει…",
   "regeneration_indicator.sublabel": "Η αρχική σου ροή ετοιμάζεται!",
   "relative_time.days": "{number}η",
-  "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.days": "πριν από {number, plural, one {# μέρα} other {# μέρες}}",
+  "relative_time.full.hours": "πριν από {number, plural, one {# ώρα} other {# ώρες}}",
   "relative_time.full.just_now": "μόλις τώρα",
-  "relative_time.full.minutes": "{number, plural, one {# minute} other {# minutes}} ago",
-  "relative_time.full.seconds": "{number, plural, one {# second} other {# seconds}} ago",
+  "relative_time.full.minutes": "πριν από {number, plural, one {# λεπτό} other {# λεπτά}}",
+  "relative_time.full.seconds": "πριν από {number, plural, one {# δευτερόλεπτο} other {# δευτερόλεπτα}}",
   "relative_time.hours": "{number}ω",
   "relative_time.just_now": "τώρα",
   "relative_time.minutes": "{number}λ",
@@ -473,12 +470,12 @@
   "relative_time.today": "σήμερα",
   "reply_indicator.cancel": "Άκυρο",
   "report.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.block_explanation": "Δεν θα βλέπετε τις αναρτήσεις τους. Δεν θα μπορούν να δουν τις αναρτήσεις σας ή να σας ακολουθήσουν. Θα μπορούν να δουν ότι έχουν μπλοκαριστεί.",
   "report.categories.other": "Άλλες",
   "report.categories.spam": "Ανεπιθύμητα",
   "report.categories.violation": "Το περιεχόμενο παραβιάζει έναν ή περισσότερους κανόνες διακομιστή",
-  "report.category.subtitle": "Choose the best match",
-  "report.category.title": "Tell us what's going on with this {type}",
+  "report.category.subtitle": "Καλύτερο αποτέλεσμα",
+  "report.category.title": "Πείτε μας τι συμβαίνει με αυτό το {type}",
   "report.category.title_account": "προφίλ",
   "report.category.title_status": "ανάρτηση",
   "report.close": "Τέλος",
@@ -486,34 +483,34 @@
   "report.forward": "Προώθηση προς {target}",
   "report.forward_hint": "Ο λογαριασμός είναι από διαφορετικό διακομιστή. Να σταλεί ανώνυμο αντίγραφο της καταγγελίας κι εκεί;",
   "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.mute_explanation": "Δεν θα βλέπετε τις αναρτήσεις τους. Εκείνοι μπορούν ακόμα να σας ακολουθούν και να βλέπουν τις αναρτήσεις σας χωρίς να γνωρίζουν ότι είναι σε σίγαση.",
   "report.next": "Επόμενη",
   "report.placeholder": "Επιπλέον σχόλια",
   "report.reasons.dislike": "Δεν μου αρέσει",
-  "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_description": "Η σελίδα είναι ιδιωτική, μόνο εσείς μπορείτε να τη δείτε.",
+  "report.reasons.other": "Είσαι ένας δημιουργός κοινών; Παράγεις ελεύθερη τέχνη, διαδίδεις ελεύθερη γνώση, γράφεις ελεύθερο λογισμικό; Ή κάτι άλλο το οποίο μπορεί να χρηματοδοτηθεί μέσω επαναλαμβανόμενων δωρεών;",
+  "report.reasons.other_description": "Το θέμα δεν ταιριάζει σε άλλες κατηγορίες",
+  "report.reasons.spam": "Αναφορά ως ανεπιθύμητη αλληλογραφία",
+  "report.reasons.spam_description": "Κακόβουλοι σύνδεσμοι, πλαστή αλληλεπίδραση ή επαναλαμβανόμενες απαντήσεις",
+  "report.reasons.violation": "Χωρίς φίλτρα",
+  "report.reasons.violation_description": "Γνωρίζετε ότι παραβιάζει συγκεκριμένους κανόνες",
+  "report.rules.subtitle": "Εφαρμογή σε όλα τα αρχεία",
+  "report.rules.title": "Ποιοι κανόνες παραβιάζονται;",
+  "report.statuses.subtitle": "Εφαρμογή σε όλα τα αρχεία",
+  "report.statuses.title": "Υπάρχουν αναρτήσεις που τεκμηριώνουν αυτή την αναφορά;",
   "report.submit": "Υποβολή",
   "report.target": "Καταγγελία {target}",
-  "report.thanks.take_action": "Here are your options for controlling what you see on Mastodon:",
-  "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_explanation": "You are following this account. To not see their posts in your home feed anymore, unfollow them.",
-  "report_notification.attached_statuses": "{count, plural, one {{count} post} other {{count} posts}} attached",
+  "report.thanks.take_action": "Αυτές είναι οι επιλογές σας για να ελέγχετε τι βλέπετε στο Mastodon:",
+  "report.thanks.take_action_actionable": "Ενώ το ελέγχουμε, εσείς μπορείτε να αναλάβετε δράση εναντίον του/της @{name}:",
+  "report.thanks.title": "Να μην εμφανίζονται προτεινόμενοι χρήστες",
+  "report.thanks.title_actionable": "Σας ευχαριστούμε για την αναφορά, θα το διερευνήσουμε.",
+  "report.unfollow": "Αφαίρεση ακολούθησης",
+  "report.unfollow_explanation": "Ακολουθείτε αυτό τον λογαριασμό. Για να μη βλέπετε τις αναρτήσεις τους στη δική σας ροή, κάντε unfollow.",
+  "report_notification.attached_statuses": "{count, plural, one {{count} ανάρτηση} other {{count} αναρτήσεις}} επισυνάπτονται",
   "report_notification.categories.other": "Άλλες",
   "report_notification.categories.spam": "Ανεπιθύμητα",
   "report_notification.categories.violation": "Παραβίαση κανόνα",
-  "report_notification.open": "Open report",
+  "report_notification.open": "Ανοικτό",
   "search.placeholder": "Αναζήτηση",
   "search.search_or_paste": "Αναζήτηση ή εισαγωγή URL",
   "search_popout.search_format": "Προχωρημένη αναζήτηση",
@@ -525,10 +522,10 @@
   "search_results.accounts": "Άνθρωποι",
   "search_results.all": "Όλα",
   "search_results.hashtags": "Ετικέτες",
-  "search_results.nothing_found": "Could not find anything for these search terms",
+  "search_results.nothing_found": "Δεν βρέθηκε τίποτα με αυτούς τους όρους αναζήτησης",
   "search_results.statuses": "Τουτ",
   "search_results.statuses_fts_disabled": "Η αναζήτηση τουτ βάσει του περιεχόμενού τους δεν είναι ενεργοποιημένη σε αυτό τον κόμβο.",
-  "search_results.title": "Search for {q}",
+  "search_results.title": "Αναζήτηση για…",
   "search_results.total": "{count, number} {count, plural, zero {αποτελέσματα} one {αποτέλεσμα} other {αποτελέσματα}}",
   "server_banner.about_active_users": "Άτομα που χρησιμοποιούν αυτόν τον διακομιστή κατά τις τελευταίες 30 ημέρες (Μηνιαία Ενεργοί Χρήστες)",
   "server_banner.active_users": "ενεργοί χρήστες",
@@ -536,8 +533,8 @@
   "server_banner.introduction": "{domain} is part of the decentralized social network powered by {mastodon}.",
   "server_banner.learn_more": "Μάθετε περισσότερα",
   "server_banner.server_stats": "Στατιστικά διακομιστή:",
-  "sign_in_banner.create_account": "Create account",
-  "sign_in_banner.sign_in": "Sign in",
+  "sign_in_banner.create_account": "Δημιουργία λογαριασμού",
+  "sign_in_banner.sign_in": "Σύνδεση",
   "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts, or interact from your account on a different server.",
   "status.admin_account": "Άνοιγμα λειτουργίας διαμεσολάβησης για τον/την @{name}",
   "status.admin_status": "Άνοιγμα αυτής της δημοσίευσης στη λειτουργία διαμεσολάβησης",
@@ -554,11 +551,11 @@
   "status.edited_x_times": "Edited {count, plural, one {{count} time} other {{count} times}}",
   "status.embed": "Ενσωμάτωσε",
   "status.favourite": "Σημείωσε ως αγαπημένο",
-  "status.filter": "Filter this post",
+  "status.filter": "Φίλτρο...",
   "status.filtered": "Φιλτραρισμένα",
   "status.hide": "Απόκρυψη toot",
-  "status.history.created": "{name} created {date}",
-  "status.history.edited": "{name} edited {date}",
+  "status.history.created": "Δημιουργήθηκε από",
+  "status.history.edited": "Τελευταία επεξεργασία από:",
   "status.load_more": "Φόρτωσε περισσότερα",
   "status.media_hidden": "Κρυμμένο πολυμέσο",
   "status.mention": "Ανέφερε τον/την @{name}",
@@ -575,7 +572,7 @@
   "status.reblogs.empty": "Κανείς δεν προώθησε αυτό το τουτ ακόμα. Μόλις το κάνει κάποια, θα εμφανιστούν εδώ.",
   "status.redraft": "Σβήσε & ξαναγράψε",
   "status.remove_bookmark": "Αφαίρεση σελιδοδείκτη",
-  "status.replied_to": "Replied to {name}",
+  "status.replied_to": "Όνομα:",
   "status.reply": "Απάντησε",
   "status.replyAll": "Απάντησε στην συζήτηση",
   "status.report": "Κατάγγειλε @{name}",
diff --git a/app/javascript/mastodon/locales/en-GB.json b/app/javascript/mastodon/locales/en-GB.json
index b005f8090..dcf96600f 100644
--- a/app/javascript/mastodon/locales/en-GB.json
+++ b/app/javascript/mastodon/locales/en-GB.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
   "compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "{count, plural, one {Mark media as sensitive} other {Mark media as sensitive}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "Report issue",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/en.json b/app/javascript/mastodon/locales/en.json
index 2409daada..ce5fee3cb 100644
--- a/app/javascript/mastodon/locales/en.json
+++ b/app/javascript/mastodon/locales/en.json
@@ -142,6 +142,7 @@
   "compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
   "compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "{count, plural, one {Mark media as sensitive} other {Mark media as sensitive}}",
@@ -238,11 +239,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "Report issue",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/eo.json b/app/javascript/mastodon/locales/eo.json
index 12823083d..cd6277950 100644
--- a/app/javascript/mastodon/locales/eo.json
+++ b/app/javascript/mastodon/locales/eo.json
@@ -1,15 +1,15 @@
 {
-  "about.blocks": "Moderigitaj serviloj",
+  "about.blocks": "Administritaj serviloj",
   "about.contact": "Kontakto:",
   "about.disclaimer": "Mastodon estas libera, malfermitkoda programaro kaj varmarko de la firmao Mastodon gGmbH.",
   "about.domain_blocks.no_reason_available": "Kialo ne disponebla",
-  "about.domain_blocks.preamble": "Mastodono ebligas vidi enhavojn el uzantoj kaj komuniki kun ilin el aliaj serviloj el la Fediverso. Estas la limigoj deciditaj por tiu ĉi servilo.",
+  "about.domain_blocks.preamble": "Mastodono ebligas vidi la enhavojn de uzantoj el aliaj serviloj en la Fediverso, kaj komuniki kun ili. Jen la limigoj deciditaj de tiu ĉi servilo mem.",
   "about.domain_blocks.silenced.explanation": "Vi ne ĝenerale vidos profilojn kaj enhavojn de ĉi tiu servilo, krom se vi eksplice trovas aŭ estas permesita de via sekvato.",
   "about.domain_blocks.silenced.title": "Limigita",
-  "about.domain_blocks.suspended.explanation": "No data from this server will be processed, stored or exchanged, making any interaction or communication with users from this server impossible.",
+  "about.domain_blocks.suspended.explanation": "Neniuj datumoj el tiu servilo estos prilaboritaj, konservitaj, aŭ interŝanĝitaj, do neeblas interagi aŭ komuniki kun uzantoj de tiu servilo.",
   "about.domain_blocks.suspended.title": "Suspendita",
-  "about.not_available": "This information has not been made available on this server.",
-  "about.powered_by": "Decentralized social media powered by {mastodon}",
+  "about.not_available": "Ĉi tiu informo ne estas disponebla ĉe ĉi tiu servilo.",
+  "about.powered_by": "Malcentralizita socia reto pere de {mastodon}",
   "about.rules": "Reguloj de la servilo",
   "account.account_note_header": "Noto",
   "account.add_or_remove_from_list": "Aldoni al aŭ forigi el listoj",
@@ -19,7 +19,7 @@
   "account.block_domain": "Bloki la domajnon {domain}",
   "account.blocked": "Blokita",
   "account.browse_more_on_origin_server": "Foliumi pli ĉe la originala profilo",
-  "account.cancel_follow_request": "Withdraw follow request",
+  "account.cancel_follow_request": "Nuligi peton por sekvado",
   "account.direct": "Rekte mesaĝi @{name}",
   "account.disable_notifications": "Ne plu sciigi min, kiam @{name} mesaĝas",
   "account.domain_blocked": "Domajno blokita",
@@ -28,47 +28,47 @@
   "account.endorse": "Rekomendi ĉe via profilo",
   "account.featured_tags.last_status_at": "Lasta afîŝo je {date}",
   "account.featured_tags.last_status_never": "Neniuj afiŝoj",
-  "account.featured_tags.title": "{name}'s featured hashtags",
+  "account.featured_tags.title": "Rekomendataj kradvortoj de {name}",
   "account.follow": "Sekvi",
   "account.followers": "Sekvantoj",
-  "account.followers.empty": "Ankoraŭ neniu sekvas tiun uzanton.",
+  "account.followers.empty": "Ankoraŭ neniu sekvas ĉi tiun uzanton.",
   "account.followers_counter": "{count, plural, one{{counter} Sekvanto} other {{counter} Sekvantoj}}",
-  "account.following": "Sekvadoj",
-  "account.following_counter": "{count, plural, one {{counter} Sekvado} other {{counter} Sekvadoj}}",
+  "account.following": "Sekvatoj",
+  "account.following_counter": "{count, plural, one {{counter} Sekvato} other {{counter} Sekvatoj}}",
   "account.follows.empty": "La uzanto ankoraŭ ne sekvas iun ajn.",
   "account.follows_you": "Sekvas vin",
   "account.go_to_profile": "Iri al profilo",
-  "account.hide_reblogs": "Kaŝi la plusendojn de @{name}",
+  "account.hide_reblogs": "Kaŝi diskonigojn de @{name}",
   "account.joined_short": "Aliĝis",
-  "account.languages": "Ŝanĝi elekton de abonitaj lingvoj",
-  "account.link_verified_on": "La posedanto de tiu ligilo estis kontrolita je {date}",
-  "account.locked_info": "La privateco de tiu konto estas elektita kiel fermita. La posedanto povas mane akcepti tiun, kiu povas sekvi rin.",
+  "account.languages": "Agordi lingvofiltron",
+  "account.link_verified_on": "Propreco de tiu ligilo estis konfirmita je {date}",
+  "account.locked_info": "Tiu konto estas privatigita. La posedanto mane akceptas tiun, kiu povas sekvi rin.",
   "account.media": "Aŭdovidaĵoj",
   "account.mention": "Mencii @{name}",
   "account.moved_to": "{name} indikis, ke ria nova konto estas nun:",
   "account.mute": "Silentigi @{name}",
-  "account.mute_notifications": "Silentigi la sciigojn de @{name}",
+  "account.mute_notifications": "Silentigi sciigojn de @{name}",
   "account.muted": "Silentigita",
   "account.open_original_page": "Malfermi originan paĝon",
-  "account.posts": "Mesaĝoj",
+  "account.posts": "Afiŝoj",
   "account.posts_with_replies": "Mesaĝoj kaj respondoj",
   "account.report": "Raporti @{name}",
-  "account.requested": "Atendo de aprobo. Klaku por nuligi la demandon de sekvado",
-  "account.share": "Kundividi la profilon de @{name}",
-  "account.show_reblogs": "Montri la plusendojn de @{name}",
-  "account.statuses_counter": "{count, plural, one {{counter} Mesaĝo} other {{counter} Mesaĝoj}}",
+  "account.requested": "Atendo de aprobo. Alklaku por nuligi peton de sekvado",
+  "account.share": "Diskonigi la profilon de @{name}",
+  "account.show_reblogs": "Montri diskonigojn de @{name}",
+  "account.statuses_counter": "{count, plural, one {{counter} Afiŝo} other {{counter} Afiŝoj}}",
   "account.unblock": "Malbloki @{name}",
   "account.unblock_domain": "Malbloki la domajnon {domain}",
   "account.unblock_short": "Malbloki",
   "account.unendorse": "Ne plu rekomendi ĉe la profilo",
-  "account.unfollow": "Ne plu sekvi",
+  "account.unfollow": "Malaboni",
   "account.unmute": "Ne plu silentigi @{name}",
   "account.unmute_notifications": "Ne plu silentigi la sciigojn de @{name}",
   "account.unmute_short": "Ne plu silentigi",
-  "account_note.placeholder": "Klaku por aldoni noton",
-  "admin.dashboard.daily_retention": "User retention rate by day after sign-up",
-  "admin.dashboard.monthly_retention": "User retention rate by month after sign-up",
-  "admin.dashboard.retention.average": "Averaĝa",
+  "account_note.placeholder": "Alklaku por aldoni noton",
+  "admin.dashboard.daily_retention": "Uzantoretenprocento lau tag post registro",
+  "admin.dashboard.monthly_retention": "Uzantoretenprocento lau monato post registro",
+  "admin.dashboard.retention.average": "Averaĝe",
   "admin.dashboard.retention.cohort": "Monato de registriĝo",
   "admin.dashboard.retention.cohort_size": "Novaj uzantoj",
   "alert.rate_limited.message": "Bonvolu reprovi post {retry_time, time, medium}.",
@@ -78,24 +78,24 @@
   "announcement.announcement": "Anonco",
   "attachments_list.unprocessed": "(neprilaborita)",
   "audio.hide": "Kaŝi aŭdion",
-  "autosuggest_hashtag.per_week": "{count} semajne",
+  "autosuggest_hashtag.per_week": "po {count} por semajno",
   "boost_modal.combo": "Vi povas premi {combo} por preterpasi sekvafoje",
   "bundle_column_error.copy_stacktrace": "Kopii la raporto de error",
-  "bundle_column_error.error.body": "The requested page could not be rendered. It could be due to a bug in our code, or a browser compatibility issue.",
-  "bundle_column_error.error.title": "Ho, ne!",
-  "bundle_column_error.network.body": "There was an error when trying to load this page. This could be due to a temporary problem with your internet connection or this server.",
+  "bundle_column_error.error.body": "La petita paĝo ne povas redonitis. Eble estas eraro.",
+  "bundle_column_error.error.title": "Ho, ve!",
+  "bundle_column_error.network.body": "Okazis eraro dum ŝarĝado de ĉi tiu paĝo. Tion povas kaŭzi portempa problemo pri via retkonektado aŭ pri ĉi tiu servilo.",
   "bundle_column_error.network.title": "Eraro de reto",
-  "bundle_column_error.retry": "Provu refoje",
-  "bundle_column_error.return": "Reveni al la hejmo",
-  "bundle_column_error.routing.body": "The requested page could not be found. Are you sure the URL in the address bar is correct?",
+  "bundle_column_error.retry": "Bonvolu reprovi",
+  "bundle_column_error.return": "Reiri hejmen",
+  "bundle_column_error.routing.body": "La celita paĝo ne troveblas. Ĉu vi certas, ke la retadreso (URL) en via retfoliumilo estas ĝusta?",
   "bundle_column_error.routing.title": "404",
   "bundle_modal_error.close": "Fermi",
   "bundle_modal_error.message": "Io misfunkciis en la ŝargado de ĉi tiu elemento.",
   "bundle_modal_error.retry": "Provu refoje",
-  "closed_registrations.other_server_instructions": "Since Mastodon is decentralized, you can create an account on another server and still interact with this one.",
-  "closed_registrations_modal.description": "Creating an account on {domain} is currently not possible, but please keep in mind that you do not need an account specifically on {domain} to use Mastodon.",
+  "closed_registrations.other_server_instructions": "Ĉar Mastodon estas malcentraliza, vi povas krei konton ĉe alia servilo kaj ankoraŭ komuniki kun ĉi tiu.",
+  "closed_registrations_modal.description": "Krei konton ĉe {domain} aktuale ne eblas, tamen bonvole rimarku, ke vi ne bezonas konton specife ĉe {domain} por uzi Mastodon.",
   "closed_registrations_modal.find_another_server": "Trovi alian servilon",
-  "closed_registrations_modal.preamble": "Mastodon is decentralized, so no matter where you create your account, you will be able to follow and interact with anyone on this server. You can even self-host it!",
+  "closed_registrations_modal.preamble": "Mastodon estas malcentraliza, do sendepende de tio, kie vi kreas vian konton, vi povos sekvi kaj komuniki kun ĉiuj ajn el ĉi tiu servilo. Vi eĉ povas mem starigi propran servilon!",
   "closed_registrations_modal.title": "Krei konton en Mastodon",
   "column.about": "Pri",
   "column.blocks": "Blokitaj uzantoj",
@@ -104,8 +104,8 @@
   "column.direct": "Rektaj mesaĝoj",
   "column.directory": "Foliumi la profilojn",
   "column.domain_blocks": "Blokitaj domajnoj",
-  "column.favourites": "Preferaĵoj",
-  "column.follow_requests": "Demandoj de sekvado",
+  "column.favourites": "Stelumoj",
+  "column.follow_requests": "Petoj de sekvado",
   "column.home": "Hejmo",
   "column.lists": "Listoj",
   "column.mutes": "Silentigitaj uzantoj",
@@ -137,7 +137,8 @@
   "compose_form.poll.remove_option": "Forigi ĉi tiu elekteblon",
   "compose_form.poll.switch_to_multiple": "Ŝanĝi la balotenketon por permesi multajn elektojn",
   "compose_form.poll.switch_to_single": "Ŝanĝi la balotenketon por permesi unu solan elekton",
-  "compose_form.publish": "Publikigi",
+  "compose_form.publish": "Hup",
+  "compose_form.publish_form": "Hup",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Konservi la ŝanĝojn",
   "compose_form.sensitive.hide": "{count, plural, one {Marki la aŭdovidaĵon kiel tikla} other {Marki la aŭdovidaĵojn kiel tikla}}",
@@ -163,7 +164,7 @@
   "confirmations.logout.confirm": "Adiaŭi",
   "confirmations.logout.message": "Ĉu vi certas ke vi volas adiaŭi?",
   "confirmations.mute.confirm": "Silentigi",
-  "confirmations.mute.explanation": "Ĉi-tio kaŝos mesaĝojn el ili kaj mesaĝojn kiuj mencias ilin, sed ili ankoraŭ rajtos vidi viajn mesaĝojn kaj sekvi vin.",
+  "confirmations.mute.explanation": "Tio kaŝos la mesaĝojn de la uzanto kaj la mesaĝojn kiuj mencias rin, sed ri ankoraŭ rajtos vidi viajn mesaĝojn kaj sekvi vin.",
   "confirmations.mute.message": "Ĉu vi certas, ke vi volas silentigi {name}?",
   "confirmations.redraft.confirm": "Forigi kaj reskribi",
   "confirmations.redraft.message": "Ĉu vi certas ke vi volas forigi tiun mesaĝon kaj reskribi ĝin? Ĉiuj diskonigoj kaj stelumoj estos perditaj, kaj respondoj al la originala mesaĝo estos senparentaj.",
@@ -183,12 +184,12 @@
   "directory.recently_active": "Lastatempe aktiva",
   "disabled_account_banner.account_settings": "Konto-agordoj",
   "disabled_account_banner.text": "Via konto {disabledAccount} estas nune malvalidigita.",
-  "dismissable_banner.community_timeline": "These are the most recent public posts from people whose accounts are hosted by {domain}.",
+  "dismissable_banner.community_timeline": "Jen la plej novaj publikaj afiŝoj de uzantoj, kies kontojn gastigas {domain}.",
   "dismissable_banner.dismiss": "Eksigi",
-  "dismissable_banner.explore_links": "These news stories are being talked about by people on this and other servers of the decentralized network right now.",
-  "dismissable_banner.explore_statuses": "These posts from this and other servers in the decentralized network are gaining traction on this server right now.",
-  "dismissable_banner.explore_tags": "These hashtags are gaining traction among people on this and other servers of the decentralized network right now.",
-  "dismissable_banner.public_timeline": "These are the most recent public posts from people on this and other servers of the decentralized network that this server knows about.",
+  "dismissable_banner.explore_links": "Tiuj novaĵoj estas aktuale priparolataj de uzantoj el ĉi tiu servilo, kaj el aliaj, sur la malcentralizita reto.",
+  "dismissable_banner.explore_statuses": "Ĉi tiuj mesaĝoj de ĉi tiu kaj aliaj serviloj en la malcentra reto pli populariĝas en ĉi tiu servilo nun.",
+  "dismissable_banner.explore_tags": "Ĉi tiuj kradvostoj populariĝas en ĉi tiu kaj aliaj serviloj en la malcentraliza reto nun.",
+  "dismissable_banner.public_timeline": "Ĉi tiuj estas plej lastaj publika mesaĝoj de personoj ĉe ĉi tiu kaj aliaj serviloj de la malcentra reto kiun ĉi tiu servilo scias.",
   "embed.instructions": "Enkorpigu ĉi tiun mesaĝon en vian retejon per kopio de la suba kodo.",
   "embed.preview": "Ĝi aperos tiel:",
   "emoji_button.activity": "Agadoj",
@@ -215,10 +216,10 @@
   "empty_column.direct": "Vi ankoraŭ ne havas rektan mesaĝon. Kiam vi sendos aŭ ricevos iun, ĝi aperos ĉi tie.",
   "empty_column.domain_blocks": "Ankoraŭ neniu domajno estas blokita.",
   "empty_column.explore_statuses": "Nenio tendencas nun. Rekontrolu poste!",
-  "empty_column.favourited_statuses": "Vi ankoraŭ ne havas mesaĝon en la preferaĵoj. Kiam vi aldonas iun, tiu aperos ĉi tie.",
-  "empty_column.favourites": "Ankoraŭ neniu aldonis tiun mesaĝon al siaj preferaĵoj. Kiam iu faros ĉi tion, tiu aperos ĉi tie.",
+  "empty_column.favourited_statuses": "Vi ankoraŭ ne stelumis mesaĝon. Kiam vi stelumos iun, ĝi aperos ĉi tie.",
+  "empty_column.favourites": "Ankoraŭ neniu stelumis tiun mesaĝon. Kiam iu faros tion, tiu aperos ĉi tie.",
   "empty_column.follow_recommendations": "Ŝajnas, ke neniuj sugestoj povis esti generitaj por vi. Vi povas provi uzi serĉon por serĉi homojn, kiujn vi eble konas, aŭ esplori tendencajn kradvortojn.",
-  "empty_column.follow_requests": "Vi ankoraŭ ne havas demandon de sekvado. Kiam vi ricevas unu, ĝi aperas tie ĉi.",
+  "empty_column.follow_requests": "Vi ne ankoraŭ havas iun peton de sekvado. Kiam vi ricevos unu, ĝi aperos ĉi tie.",
   "empty_column.hashtag": "Ankoraŭ estas nenio per ĉi tiu kradvorto.",
   "empty_column.home": "Via hejma tempolinio estas malplena! Vizitu {public} aŭ uzu la serĉilon por renkonti aliajn uzantojn.",
   "empty_column.home.suggestions": "Vidu iujn sugestojn",
@@ -234,25 +235,21 @@
   "errors.unexpected_crash.copy_stacktrace": "Kopii stakspuron en tondujo",
   "errors.unexpected_crash.report_issue": "Raporti problemon",
   "explore.search_results": "Serĉaj rezultoj",
-  "explore.suggested_follows": "Por vi",
   "explore.title": "Esplori",
-  "explore.trending_links": "Novaĵoj",
-  "explore.trending_statuses": "Afiŝoj",
-  "explore.trending_tags": "Kradvortoj",
-  "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
+  "filter_modal.added.context_mismatch_explanation": "Ĉi tiu filtrilkategorio ne kongruas la kuntekston de ĉi tiu mesaĝo. Vi devas redakti la filtrilon.",
   "filter_modal.added.context_mismatch_title": "Ne kongruas la kunteksto!",
-  "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
+  "filter_modal.added.expired_explanation": "Ĉi tiu filtrilkategorio eksvalidiĝis, vu bezonos ŝanĝi la eksvaliddaton por ĝi.",
   "filter_modal.added.expired_title": "Eksvalida filtrilo!",
-  "filter_modal.added.review_and_configure": "To review and further configure this filter category, go to the {settings_link}.",
+  "filter_modal.added.review_and_configure": "Por kontroli kaj pli modifi ĉi tiu filtrilkategorio, iru al la {settings_link}.",
   "filter_modal.added.review_and_configure_title": "Filtrilopcioj",
   "filter_modal.added.settings_link": "opciopaĝo",
-  "filter_modal.added.short_explanation": "This post has been added to the following filter category: {title}.",
+  "filter_modal.added.short_explanation": "Ĉi tiu mesaĝo aldonitas al la filtrilkategorio: {title}.",
   "filter_modal.added.title": "Filtrilo aldonita!",
-  "filter_modal.select_filter.context_mismatch": "does not apply to this context",
+  "filter_modal.select_filter.context_mismatch": "ne kongruas la kuntekston",
   "filter_modal.select_filter.expired": "eksvalidiĝinta",
   "filter_modal.select_filter.prompt_new": "Nova klaso: {name}",
   "filter_modal.select_filter.search": "Serĉi aŭ krei",
-  "filter_modal.select_filter.subtitle": "Use an existing category or create a new one",
+  "filter_modal.select_filter.subtitle": "Uzu ekzistantan kategorion aŭ kreu novan",
   "filter_modal.select_filter.title": "Filtri ĉi tiun afiŝon",
   "filter_modal.title.status": "Filtri mesaĝon",
   "follow_recommendations.done": "Farita",
@@ -260,7 +257,7 @@
   "follow_recommendations.lead": "La mesaĝoj de personoj kiujn vi sekvas, aperos laŭ kronologia ordo en via hejma templinio. Ne timu erari, vi povas ĉesi sekvi facile iam ajn!",
   "follow_request.authorize": "Rajtigi",
   "follow_request.reject": "Rifuzi",
-  "follow_requests.unlocked_explanation": "Kvankam via konto ne estas ŝlosita, la teamo de {domain} pensas, ke vi eble volas permane kontroli la demandojn de sekvado de ĉi tiuj kontoj.",
+  "follow_requests.unlocked_explanation": "Kvankam via konto ne estas ŝlosita, la dungitaro de {domain} opiniis, ke vi eble volus revizii petojn de sekvadon el ĉi tiuj kontoj permane.",
   "footer.about": "Pri",
   "footer.directory": "Profilujo",
   "footer.get_app": "Akiru la Programon",
@@ -282,19 +279,19 @@
   "hashtag.follow": "Sekvi la kradvorton",
   "hashtag.unfollow": "Ne plu sekvi la kradvorton",
   "home.column_settings.basic": "Bazaj agordoj",
-  "home.column_settings.show_reblogs": "Montri plusendojn",
+  "home.column_settings.show_reblogs": "Montri diskonigojn",
   "home.column_settings.show_replies": "Montri respondojn",
   "home.hide_announcements": "Kaŝi la anoncojn",
   "home.show_announcements": "Montri anoncojn",
-  "interaction_modal.description.favourite": "With an account on Mastodon, you can favourite this post to let the author know you appreciate it and save it for later.",
-  "interaction_modal.description.follow": "With an account on Mastodon, you can follow {name} to receive their posts in your home feed.",
-  "interaction_modal.description.reblog": "With an account on Mastodon, you can boost this post to share it with your own followers.",
-  "interaction_modal.description.reply": "With an account on Mastodon, you can respond to this post.",
+  "interaction_modal.description.favourite": "Kun konto ĉe Mastodon, vi povos stelumi ĉi tiun mesaĝon por konservi ĝin kaj por sciigi al la afiŝinto, ke vi estimas ĝin.",
+  "interaction_modal.description.follow": "Kun konto ĉe Mastodon, vi povos sekvi {name} por vidi ties mesaĝojn en via hejmo.",
+  "interaction_modal.description.reblog": "Kun konto ĉe Mastodon, vi povos diskonigi ĉi tiun mesaĝon por ke viaj propraj sekvantoj vidu ĝin.",
+  "interaction_modal.description.reply": "Kun konto ĉe Mastodon, vi povos respondi al ĉi tiu mesaĝo.",
   "interaction_modal.on_another_server": "En alia servilo",
   "interaction_modal.on_this_server": "En ĉi tiu servilo",
-  "interaction_modal.other_server_instructions": "Copy and paste this URL into the search field of your favourite Mastodon app or the web interface of your Mastodon server.",
-  "interaction_modal.preamble": "Since Mastodon is decentralized, you can use your existing account hosted by another Mastodon server or compatible platform if you don't have an account on this one.",
-  "interaction_modal.title.favourite": "Aldoni afiŝon de {name} al la preferaĵoj",
+  "interaction_modal.other_server_instructions": "Preni ĉi tiun retadreson (URL) kaj meti ĝin en la serĉbreton de via preferata apo aŭ retfoliumilo por Mastodon.",
+  "interaction_modal.preamble": "Ĉar Mastodon estas malcentraliza, vi povas uzi jam ekzistantan konton, gastigatan de alia servilo Mastodon aŭ konforma platformo, se vi ne havas konton ĉe tiu ĉi.",
+  "interaction_modal.title.favourite": "Stelumi la afiŝon de {name}",
   "interaction_modal.title.follow": "Sekvi {name}",
   "interaction_modal.title.reblog": "Suprenigi la afiŝon de {name}",
   "interaction_modal.title.reply": "Respondi al la afiŝo de {name}",
@@ -303,15 +300,15 @@
   "intervals.full.minutes": "{number, plural, one {# minuto} other {# minutoj}}",
   "keyboard_shortcuts.back": "reveni",
   "keyboard_shortcuts.blocked": "Malfermi la liston de blokitaj uzantoj",
-  "keyboard_shortcuts.boost": "Plusendi la mesaĝon",
+  "keyboard_shortcuts.boost": "Diskonigi la mesaĝon",
   "keyboard_shortcuts.column": "fokusi mesaĝon en unu el la kolumnoj",
   "keyboard_shortcuts.compose": "enfokusigi la tekstujon",
   "keyboard_shortcuts.description": "Priskribo",
   "keyboard_shortcuts.direct": "malfermi la kolumnon de rektaj mesaĝoj",
   "keyboard_shortcuts.down": "iri suben en la listo",
   "keyboard_shortcuts.enter": "malfermi mesaĝon",
-  "keyboard_shortcuts.favourite": "Aldoni la mesaĝon al la preferaĵoj",
-  "keyboard_shortcuts.favourites": "Malfermi la liston de la preferaĵoj",
+  "keyboard_shortcuts.favourite": "Stelumi",
+  "keyboard_shortcuts.favourites": "Malfermi la liston de la stelumoj",
   "keyboard_shortcuts.federated": "Malfermi la frataran templinion",
   "keyboard_shortcuts.heading": "Klavaraj mallongigoj",
   "keyboard_shortcuts.home": "Malfermi la hejman templinion",
@@ -326,7 +323,7 @@
   "keyboard_shortcuts.pinned": "malfermi la liston de alpinglitaj mesaĝoj",
   "keyboard_shortcuts.profile": "malfermi la profilon de la aŭtoro",
   "keyboard_shortcuts.reply": "respondi",
-  "keyboard_shortcuts.requests": "Malfermi la liston de demandoj de sekvado",
+  "keyboard_shortcuts.requests": "malfermi la liston de petoj de sekvado",
   "keyboard_shortcuts.search": "enfokusigi la serĉilon",
   "keyboard_shortcuts.spoilers": "Montri/kaŝi la kampon de averto de enhavo (\"CW\")",
   "keyboard_shortcuts.start": "malfermi la kolumnon «por komenci»",
@@ -360,7 +357,7 @@
   "media_gallery.toggle_visible": "{number, plural, one {Kaŝi la bildon} other {Kaŝi la bildojn}}",
   "missing_indicator.label": "Ne trovita",
   "missing_indicator.sublabel": "Ĉi tiu elemento ne estis trovita",
-  "moved_to_account_banner.text": "Your account {disabledAccount} is currently disabled because you moved to {movedToAccount}.",
+  "moved_to_account_banner.text": "Via konto {disabledAccount} estas malvalidigita ĉar vi movis ĝin al {movedToAccount}.",
   "mute_modal.duration": "Daŭro",
   "mute_modal.hide_notifications": "Ĉu vi volas kaŝi la sciigojn de ĉi tiu uzanto?",
   "mute_modal.indefinite": "Nedifinita",
@@ -374,9 +371,9 @@
   "navigation_bar.domain_blocks": "Blokitaj domajnoj",
   "navigation_bar.edit_profile": "Redakti profilon",
   "navigation_bar.explore": "Esplori",
-  "navigation_bar.favourites": "Preferaĵoj",
+  "navigation_bar.favourites": "Stelumoj",
   "navigation_bar.filters": "Silentigitaj vortoj",
-  "navigation_bar.follow_requests": "Demandoj de sekvado",
+  "navigation_bar.follow_requests": "Petoj de sekvado",
   "navigation_bar.follows_and_followers": "Sekvatoj kaj sekvantoj",
   "navigation_bar.lists": "Listoj",
   "navigation_bar.logout": "Adiaŭi",
@@ -387,16 +384,16 @@
   "navigation_bar.public_timeline": "Fratara templinio",
   "navigation_bar.search": "Serĉi",
   "navigation_bar.security": "Sekureco",
-  "not_signed_in_indicator.not_signed_in": "You need to sign in to access this resource.",
+  "not_signed_in_indicator.not_signed_in": "Necesas ensaluti, por atingi tion risurcon.",
   "notification.admin.report": "{name} raportis {target}",
   "notification.admin.sign_up": "{name} kreis konton",
-  "notification.favourite": "{name} aldonis vian mesaĝon al siaj preferaĵoj",
+  "notification.favourite": "{name} stelumis vian mesaĝon",
   "notification.follow": "{name} eksekvis vin",
   "notification.follow_request": "{name} petis sekvi vin",
   "notification.mention": "{name} menciis vin",
-  "notification.own_poll": "Via balotenketo finiĝitis",
+  "notification.own_poll": "Via enketo finiĝis",
   "notification.poll": "Partoprenita balotenketo finiĝis",
-  "notification.reblog": "{name} plusendis vian mesaĝon",
+  "notification.reblog": "{name} diskonigis vian mesaĝon",
   "notification.status": "{name} ĵus afiŝita",
   "notification.update": "{name} redaktis afiŝon",
   "notifications.clear": "Forviŝi sciigojn",
@@ -404,16 +401,16 @@
   "notifications.column_settings.admin.report": "Novaj raportoj:",
   "notifications.column_settings.admin.sign_up": "Novaj registriĝoj:",
   "notifications.column_settings.alert": "Sciigoj de la retumilo",
-  "notifications.column_settings.favourite": "Preferaĵoj:",
+  "notifications.column_settings.favourite": "Stelumoj:",
   "notifications.column_settings.filter_bar.advanced": "Montri ĉiujn kategoriojn",
   "notifications.column_settings.filter_bar.category": "Rapida filtra breto",
   "notifications.column_settings.filter_bar.show_bar": "Montri la breton de filtrilo",
   "notifications.column_settings.follow": "Novaj sekvantoj:",
-  "notifications.column_settings.follow_request": "Novaj demandoj de sekvado:",
+  "notifications.column_settings.follow_request": "Novaj petoj de sekvado:",
   "notifications.column_settings.mention": "Mencioj:",
   "notifications.column_settings.poll": "Balotenketaj rezultoj:",
   "notifications.column_settings.push": "Puŝsciigoj",
-  "notifications.column_settings.reblog": "Plusendoj:",
+  "notifications.column_settings.reblog": "Diskonigoj:",
   "notifications.column_settings.show": "Montri en kolumno",
   "notifications.column_settings.sound": "Eligi sonon",
   "notifications.column_settings.status": "Novaj mesaĝoj:",
@@ -421,8 +418,8 @@
   "notifications.column_settings.unread_notifications.highlight": "Marki nelegitajn sciigojn",
   "notifications.column_settings.update": "Redaktoj:",
   "notifications.filter.all": "Ĉiuj",
-  "notifications.filter.boosts": "Plusendoj",
-  "notifications.filter.favourites": "Preferaĵoj",
+  "notifications.filter.boosts": "Diskonigoj",
+  "notifications.filter.favourites": "Stelumoj",
   "notifications.filter.follows": "Sekvoj",
   "notifications.filter.mentions": "Mencioj",
   "notifications.filter.polls": "Balotenketaj rezultoj",
@@ -455,7 +452,7 @@
   "privacy.public.short": "Publika",
   "privacy.unlisted.long": "Videbla por ĉiuj, sed ekskluzive de la funkcio de esploro",
   "privacy.unlisted.short": "Nelistigita",
-  "privacy_policy.last_updated": "Last updated {date}",
+  "privacy_policy.last_updated": "Laste ĝisdatigita sur {date}",
   "privacy_policy.title": "Politiko de privateco",
   "refresh": "Refreŝigu",
   "regeneration_indicator.label": "Ŝargado…",
@@ -473,7 +470,7 @@
   "relative_time.today": "hodiaŭ",
   "reply_indicator.cancel": "Nuligi",
   "report.block": "Bloki",
-  "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": "Vi ne vidos iliajn afiŝojn. Ili ne povos vidi viajn afiŝojn, nek sekvi vin. Ili ne scios, ke vi blokas ilin.",
   "report.categories.other": "Aliaj",
   "report.categories.spam": "Trudmesaĝo",
   "report.categories.violation": "Enhavo malobservas unu aŭ plurajn servilajn regulojn",
@@ -494,22 +491,22 @@
   "report.reasons.other": "Io alia",
   "report.reasons.other_description": "La problemo ne taŭgas en aliaj kategorioj",
   "report.reasons.spam": "Ĝi estas trudaĵo",
-  "report.reasons.spam_description": "Malicious links, fake engagement, or repetitive replies",
+  "report.reasons.spam_description": "Trompaj ligiloj, falsa/artefarita aktiveco, aŭ ripetaj respondoj",
   "report.reasons.violation": "Ĝi malobservas la regulojn de la servilo",
-  "report.reasons.violation_description": "You are aware that it breaks specific rules",
+  "report.reasons.violation_description": "Vi scias ke ĝi malobeas specifan regulon",
   "report.rules.subtitle": "Elektu ĉiujn, kiuj validas",
   "report.rules.title": "Kiuj reguloj estas malobservataj?",
   "report.statuses.subtitle": "Elektu ĉiujn, kiuj validas",
-  "report.statuses.title": "Are there any posts that back up this report?",
+  "report.statuses.title": "Ĉu estas afiŝoj, kiuj subtenas tiun raporton?",
   "report.submit": "Sendi",
   "report.target": "Raporti pri {target}",
-  "report.thanks.take_action": "Here are your options for controlling what you see on Mastodon:",
-  "report.thanks.take_action_actionable": "While we review this, you can take action against @{name}:",
+  "report.thanks.take_action": "Jen viaj ebloj por regi kion vi vidas ĉe Mastodon:",
+  "report.thanks.take_action_actionable": "Dum ni kontrolas la raporton, vi povas agi kontraŭ @{name}:",
   "report.thanks.title": "Ĉu vi ne volas vidi ĉi tion?",
   "report.thanks.title_actionable": "Dankon pro raporti, ni esploros ĉi tion.",
   "report.unfollow": "Malsekvi @{name}",
   "report.unfollow_explanation": "Vi sekvas ĉi tiun konton. Por ne plu vidi ĝiajn abonfluojn en via hejma templinio, ĉesu sekvi ĝin.",
-  "report_notification.attached_statuses": "{count, plural, one {{count} post} other {{count} posts}} attached",
+  "report_notification.attached_statuses": "{count, plural, one {{count} afiŝo almetita} other {{count} afiŝoj almetitaj}}",
   "report_notification.categories.other": "Alia",
   "report_notification.categories.spam": "Trudmesaĝo",
   "report_notification.categories.violation": "Malobservo de la regulo",
@@ -530,21 +527,21 @@
   "search_results.statuses_fts_disabled": "Serĉi mesaĝojn laŭ enhavo ne estas ebligita en ĉi tiu Mastodon-servilo.",
   "search_results.title": "Serĉ-rezultoj por {q}",
   "search_results.total": "{count, number} {count, plural, one {rezulto} other {rezultoj}}",
-  "server_banner.about_active_users": "People using this server during the last 30 days (Monthly Active Users)",
-  "server_banner.active_users": "active users",
+  "server_banner.about_active_users": "Homoj uzantaj ĉi tiun servilon dum la lastaj 30 tagoj (Aktivaj Uzantoj Monate)",
+  "server_banner.active_users": "aktivaj uzantoj",
   "server_banner.administered_by": "Administrata de:",
-  "server_banner.introduction": "{domain} is part of the decentralized social network powered by {mastodon}.",
-  "server_banner.learn_more": "Learn more",
+  "server_banner.introduction": "{domain} apartenas al la malcentra socia retejo povigita de {mastodon}.",
+  "server_banner.learn_more": "Lernu pli",
   "server_banner.server_stats": "Statistikoj de la servilo:",
   "sign_in_banner.create_account": "Krei konton",
-  "sign_in_banner.sign_in": "Sign in",
-  "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts, or interact from your account on a different server.",
+  "sign_in_banner.sign_in": "Ensalutu",
+  "sign_in_banner.text": "Ensalutu por sekvi profilojn aŭ kradvortojn, stelumi, kunhavigi kaj respondi afiŝojn aŭ interagi per via konto de alia servilo.",
   "status.admin_account": "Malfermi la kontrolan interfacon por @{name}",
   "status.admin_status": "Malfermi ĉi tiun mesaĝon en la kontrola interfaco",
   "status.block": "Bloki @{name}",
   "status.bookmark": "Aldoni al la legosignoj",
-  "status.cancel_reblog_private": "Malfari la plusendon",
-  "status.cannot_reblog": "Ĉi tiu mesaĝo ne povas esti plusendita",
+  "status.cancel_reblog_private": "Ne plu diskonigi",
+  "status.cannot_reblog": "Ĉi tiu mesaĝo ne diskonigeblas",
   "status.copy": "Kopii la ligilon al la mesaĝo",
   "status.delete": "Forigi",
   "status.detailed_status": "Detala konversacia vido",
@@ -553,10 +550,10 @@
   "status.edited": "Redaktita {date}",
   "status.edited_x_times": "Redactita {count, plural, one {{count} fojon} other {{count} fojojn}}",
   "status.embed": "Enkorpigi",
-  "status.favourite": "Aldoni al viaj preferaĵoj",
+  "status.favourite": "Stelumi",
   "status.filter": "Filtri ĉi tiun afiŝon",
   "status.filtered": "Filtrita",
-  "status.hide": "Kaŝi la mesaĝon",
+  "status.hide": "Kaŝi mesaĝon",
   "status.history.created": "{name} kreis {date}",
   "status.history.edited": "{name} redaktis {date}",
   "status.load_more": "Ŝargi pli",
@@ -569,13 +566,13 @@
   "status.pin": "Alpingli al la profilo",
   "status.pinned": "Alpinglita mesaĝo",
   "status.read_more": "Legi pli",
-  "status.reblog": "Plusendi",
-  "status.reblog_private": "Plusendi kun la originala videbleco",
-  "status.reblogged_by": "{name} plusendis",
-  "status.reblogs.empty": "Ankoraŭ neniu plusendis la mesaĝon. Kiam iu faras tion, ili aperos ĉi tie.",
+  "status.reblog": "Diskonigi",
+  "status.reblog_private": "Diskonigi kun la sama videbleco",
+  "status.reblogged_by": "{name} diskonigis",
+  "status.reblogs.empty": "Ankoraŭ neniu diskonigis tiun mesaĝon. Kiam iu faras tion, ri aperos ĉi tie.",
   "status.redraft": "Forigi kaj reskribi",
   "status.remove_bookmark": "Forigi legosignon",
-  "status.replied_to": "Replied to {name}",
+  "status.replied_to": "Respondis al {name}",
   "status.reply": "Respondi",
   "status.replyAll": "Respondi al la fadeno",
   "status.report": "Raporti @{name}",
@@ -586,15 +583,15 @@
   "status.show_less_all": "Montri malpli ĉiun",
   "status.show_more": "Montri pli",
   "status.show_more_all": "Montri pli ĉiun",
-  "status.show_original": "Show original",
+  "status.show_original": "Montru originalon",
   "status.translate": "Traduki",
   "status.translated_from_with": "Tradukita el {lang} per {provider}",
   "status.uncached_media_warning": "Nedisponebla",
   "status.unmute_conversation": "Malsilentigi la konversacion",
   "status.unpin": "Depingli de profilo",
-  "subscribed_languages.lead": "Only posts in selected languages will appear on your home and list timelines after the change. Select none to receive posts in all languages.",
+  "subscribed_languages.lead": "Nur afiŝoj en elektitaj lingvoj aperos en viaj hejma kaj lista templinioj post la ŝanĝo. Elektu nenion por ricevi afiŝojn en ĉiuj lingvoj.",
   "subscribed_languages.save": "Konservi ŝanĝojn",
-  "subscribed_languages.target": "Change subscribed languages for {target}",
+  "subscribed_languages.target": "Ŝanĝu abonitajn lingvojn por {target}",
   "suggestions.dismiss": "Forigi la proponon",
   "suggestions.header": "Vi povus interesiĝi pri…",
   "tabs_bar.federated_timeline": "Fratara",
diff --git a/app/javascript/mastodon/locales/es-AR.json b/app/javascript/mastodon/locales/es-AR.json
index 74a6acd26..9866ec684 100644
--- a/app/javascript/mastodon/locales/es-AR.json
+++ b/app/javascript/mastodon/locales/es-AR.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Cambiar encuesta para permitir opciones múltiples",
   "compose_form.poll.switch_to_single": "Cambiar encuesta para permitir una sola opción",
   "compose_form.publish": "Publicar",
+  "compose_form.publish_form": "Enviar",
   "compose_form.publish_loud": "¡{publish}!",
   "compose_form.save_changes": "Guardar cambios",
   "compose_form.sensitive.hide": "Marcar medio como sensible",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copiar stacktrace al portapapeles",
   "errors.unexpected_crash.report_issue": "Informar problema",
   "explore.search_results": "Resultados de búsqueda",
-  "explore.suggested_follows": "Para vos",
   "explore.title": "Explorá",
-  "explore.trending_links": "Noticias",
-  "explore.trending_statuses": "Mensajes",
-  "explore.trending_tags": "Etiquetas",
   "filter_modal.added.context_mismatch_explanation": "Esta categoría de filtro no se aplica al contexto en el que accediste a este mensaje. Si querés que el mensaje sea filtrado también en este contexto, vas a tener que editar el filtro.",
   "filter_modal.added.context_mismatch_title": "¡El contexto no coincide!",
   "filter_modal.added.expired_explanation": "Esta categoría de filtro caducó; vas a necesitar cambiar la fecha de caducidad para que se aplique.",
diff --git a/app/javascript/mastodon/locales/es-MX.json b/app/javascript/mastodon/locales/es-MX.json
index ffa2c6185..5982f41cd 100644
--- a/app/javascript/mastodon/locales/es-MX.json
+++ b/app/javascript/mastodon/locales/es-MX.json
@@ -1,15 +1,15 @@
 {
   "about.blocks": "Servidores moderados",
   "about.contact": "Contacto:",
-  "about.disclaimer": "Mastodon es software de código abierto, y una marca comercial de Mastodon gGmbH.",
-  "about.domain_blocks.no_reason_available": "Reason not available",
-  "about.domain_blocks.preamble": "Mastodon normalmente te permite ver el contenido e interactuar con los usuarios de cualquier otro servidor en el fediverso. Estas son las excepciones que se han hecho en este servidor en particular.",
-  "about.domain_blocks.silenced.explanation": "Normalmente no verás perfiles y contenido de este servidor, a menos que lo busques explícitamente o sigas alguna cuenta.",
+  "about.disclaimer": "Mastodon es gratuito, software de código abierto y una marca registrada de Mastodon gGmbH.",
+  "about.domain_blocks.no_reason_available": "Razón no disponible",
+  "about.domain_blocks.preamble": "Mastodon generalmente te permite ver contenido e interactuar con usuarios de cualquier otro servidor del fediverso. Estas son las excepciones que se han hecho en este servidor en particular.",
+  "about.domain_blocks.silenced.explanation": "Normalmente no verás perfiles y contenido de este servidor, a menos que lo busques explicitamente o vayas a el siguiendo alguna cuenta.",
   "about.domain_blocks.silenced.title": "Limitado",
-  "about.domain_blocks.suspended.explanation": "Ningún dato de este servidor será procesado, almacenado o intercambiado, haciendo imposible cualquier interacción o comunicación con los usuarios de este servidor.",
+  "about.domain_blocks.suspended.explanation": "Ningún dato de este servidor será procesado, almacenado o intercambiado, haciendo cualquier interacción o comunicación con los usuarios de este servidor imposible.",
   "about.domain_blocks.suspended.title": "Suspendido",
   "about.not_available": "Esta información no está disponible en este servidor.",
-  "about.powered_by": "Redes sociales descentralizadas con tecnología de {mastodon}",
+  "about.powered_by": "Red social descentralizada con tecnología de {mastodon}",
   "about.rules": "Reglas del servidor",
   "account.account_note_header": "Nota",
   "account.add_or_remove_from_list": "Agregar o eliminar de las listas",
@@ -49,7 +49,7 @@
   "account.mute": "Silenciar a @{name}",
   "account.mute_notifications": "Silenciar notificaciones de @{name}",
   "account.muted": "Silenciado",
-  "account.open_original_page": "Open original page",
+  "account.open_original_page": "Abrir página original",
   "account.posts": "Publicaciones",
   "account.posts_with_replies": "Publicaciones y respuestas",
   "account.report": "Reportar a @{name}",
@@ -83,7 +83,7 @@
   "bundle_column_error.copy_stacktrace": "Copiar informe de error",
   "bundle_column_error.error.body": "La página solicitada no pudo ser renderizada. Podría deberse a un error en nuestro código o a un problema de compatibilidad con el navegador.",
   "bundle_column_error.error.title": "¡Oh, no!",
-  "bundle_column_error.network.body": "Se ha producido un error al intentar cargar esta página. Esto puede deberse a un problema temporal con tu conexión a internet o a este servidor.",
+  "bundle_column_error.network.body": "Se ha producido un error al intentar cargar esta página. Esto puede deberse a un problema temporal con tu conexión a internet o con este servidor.",
   "bundle_column_error.network.title": "Error de red",
   "bundle_column_error.retry": "Inténtalo de nuevo",
   "bundle_column_error.return": "Volver al inicio",
@@ -127,7 +127,7 @@
   "compose.language.search": "Buscar idiomas...",
   "compose_form.direct_message_warning_learn_more": "Aprender mas",
   "compose_form.encryption_warning": "Las publicaciones en Mastodon no están cifradas de extremo a extremo. No comparta ninguna información sensible en Mastodon.",
-  "compose_form.hashtag_warning": "Este toot no se mostrará bajo hashtags porque no es público. Sólo los toots públicos se pueden buscar por hashtag.",
+  "compose_form.hashtag_warning": "Esta publicación no se mostrará bajo ningún hashtag porque no está listada. Sólo las publicaciones públicas se pueden buscar por hashtag.",
   "compose_form.lock_disclaimer": "Tu cuenta no está bloqueada. Todos pueden seguirte para ver tus toots solo para seguidores.",
   "compose_form.lock_disclaimer.lock": "bloqueado",
   "compose_form.placeholder": "¿En qué estás pensando?",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Modificar encuesta para permitir múltiples opciones",
   "compose_form.poll.switch_to_single": "Modificar encuesta para permitir una única opción",
   "compose_form.publish": "Publicar",
+  "compose_form.publish_form": "Publicar",
   "compose_form.publish_loud": "¡{publish}!",
   "compose_form.save_changes": "Guardar cambios",
   "compose_form.sensitive.hide": "Marcar multimedia como sensible",
@@ -234,15 +235,11 @@
   "errors.unexpected_crash.copy_stacktrace": "Copiar el seguimiento de pila en el portapapeles",
   "errors.unexpected_crash.report_issue": "Informar de un problema/error",
   "explore.search_results": "Resultados de búsqueda",
-  "explore.suggested_follows": "Para ti",
   "explore.title": "Descubrir",
-  "explore.trending_links": "Noticias",
-  "explore.trending_statuses": "Publicaciones",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "Esta categoría de filtro no se aplica al contexto en el que ha accedido a esta publlicación. Si quieres que la publicación sea filtrada también en este contexto, tendrás que editar el filtro.",
   "filter_modal.added.context_mismatch_title": "¡El contexto no coincide!",
   "filter_modal.added.expired_explanation": "Esta categoría de filtro ha caducado, necesitará cambiar la fecha de caducidad para que se aplique.",
-  "filter_modal.added.expired_title": "¡Filtro caducado!",
+  "filter_modal.added.expired_title": "¡Filtro expirado!",
   "filter_modal.added.review_and_configure": "Para revisar y configurar esta categoría de filtros, vaya a {settings_link}.",
   "filter_modal.added.review_and_configure_title": "Ajustes de filtro",
   "filter_modal.added.settings_link": "página de ajustes",
@@ -275,10 +272,10 @@
   "hashtag.column_header.tag_mode.none": "sin {additional}",
   "hashtag.column_settings.select.no_options_message": "No se encontraron sugerencias",
   "hashtag.column_settings.select.placeholder": "Introduzca hashtags…",
-  "hashtag.column_settings.tag_mode.all": "Cualquiera de estos",
+  "hashtag.column_settings.tag_mode.all": "Todos estos",
   "hashtag.column_settings.tag_mode.any": "Cualquiera de estos",
   "hashtag.column_settings.tag_mode.none": "Ninguno de estos",
-  "hashtag.column_settings.tag_toggle": "Include additional tags in this column",
+  "hashtag.column_settings.tag_toggle": "Incluye etiquetas adicionales para esta columna",
   "hashtag.follow": "Seguir etiqueta",
   "hashtag.unfollow": "Dejar de seguir etiqueta",
   "home.column_settings.basic": "Básico",
@@ -286,18 +283,18 @@
   "home.column_settings.show_replies": "Mostrar respuestas",
   "home.hide_announcements": "Ocultar anuncios",
   "home.show_announcements": "Mostrar anuncios",
-  "interaction_modal.description.favourite": "Con una cuenta en Mastodon, puedes marcar como favorita esta publicación para que el autor sepa que te gusta y guardarla así para más adelante.",
-  "interaction_modal.description.follow": "Con una cuenta en Mastodon, puedes seguir {name} para recibir sus publicaciones en tu línea temporal de inicio.",
+  "interaction_modal.description.favourite": "Con una cuenta en Mastodon, puedes marcar como favorita esta publicación para que el autor sepa que te gusta y guardarla para más adelante.",
+  "interaction_modal.description.follow": "Con una cuenta en Mastodon, puedes seguir {name} para recibir sus publicaciones en tu fuente de inicio.",
   "interaction_modal.description.reblog": "Con una cuenta en Mastodon, puedes impulsar esta publicación para compartirla con tus propios seguidores.",
   "interaction_modal.description.reply": "Con una cuenta en Mastodon, puedes responder a esta publicación.",
   "interaction_modal.on_another_server": "En un servidor diferente",
   "interaction_modal.on_this_server": "En este servidor",
-  "interaction_modal.other_server_instructions": "Copia y pega esta URL en la barra de búsqueda de tu aplicación Mastodon favorita o la interfaz web de tu servidor Mastodon.",
+  "interaction_modal.other_server_instructions": "Copia y pega esta URL en la barra de búsqueda de tu aplicación Mastodon favorita o en la interfaz web de tu servidor Mastodon.",
   "interaction_modal.preamble": "Ya que Mastodon es descentralizado, puedes usar tu cuenta existente alojada en otro servidor Mastodon o plataforma compatible si no tienes una cuenta en este servidor.",
   "interaction_modal.title.favourite": "Marcar como favorita la publicación de {name}",
   "interaction_modal.title.follow": "Seguir a {name}",
   "interaction_modal.title.reblog": "Impulsar la publicación de {name}",
-  "interaction_modal.title.reply": "Responder a la publicación de {name}",
+  "interaction_modal.title.reply": "Responder la publicación de {name}",
   "intervals.full.days": "{number, plural, one {# día} other {# días}}",
   "intervals.full.hours": "{number, plural, one {# hora} other {# horas}}",
   "intervals.full.minutes": "{number, plural, one {# minuto} other {# minutos}}",
diff --git a/app/javascript/mastodon/locales/es.json b/app/javascript/mastodon/locales/es.json
index c4c625d2f..3a73e1a0d 100644
--- a/app/javascript/mastodon/locales/es.json
+++ b/app/javascript/mastodon/locales/es.json
@@ -1,7 +1,7 @@
 {
   "about.blocks": "Servidores moderados",
   "about.contact": "Contacto:",
-  "about.disclaimer": "Mastodon es software de código abierto, y una marca comercial de Mastodon gGmbH.",
+  "about.disclaimer": "Mastodon es software libre, de código abierto, y una marca comercial de Mastodon gGmbH.",
   "about.domain_blocks.no_reason_available": "Razón no disponible",
   "about.domain_blocks.preamble": "Mastodon normalmente te permite ver el contenido e interactuar con los usuarios de cualquier otro servidor en el fediverso. Estas son las excepciones que se han hecho en este servidor en particular.",
   "about.domain_blocks.silenced.explanation": "Normalmente no verás perfiles y contenido de este servidor, a menos que lo busques explícitamente o sigas alguna cuenta.",
@@ -22,27 +22,27 @@
   "account.cancel_follow_request": "Retirar solicitud de seguimiento",
   "account.direct": "Mensaje directo a @{name}",
   "account.disable_notifications": "Dejar de notificarme cuando @{name} publique algo",
-  "account.domain_blocked": "Dominio oculto",
+  "account.domain_blocked": "Dominio bloqueado",
   "account.edit_profile": "Editar perfil",
   "account.enable_notifications": "Notificarme cuando @{name} publique algo",
-  "account.endorse": "Mostrar en perfil",
+  "account.endorse": "Destacar en el perfil",
   "account.featured_tags.last_status_at": "Última publicación el {date}",
   "account.featured_tags.last_status_never": "Sin publicaciones",
   "account.featured_tags.title": "Etiquetas destacadas de {name}",
   "account.follow": "Seguir",
   "account.followers": "Seguidores",
   "account.followers.empty": "Todavía nadie sigue a este usuario.",
-  "account.followers_counter": "{count, plural, one {{counter} Seguidor} other {{counter} Seguidores}}",
+  "account.followers_counter": "{count, plural, one {{counter} seguidor} other {{counter} seguidores}}",
   "account.following": "Siguiendo",
-  "account.following_counter": "{count, plural, other {{counter} Siguiendo}}",
+  "account.following_counter": "{count, plural, other {Siguiendo a {counter}}}",
   "account.follows.empty": "Este usuario todavía no sigue a nadie.",
   "account.follows_you": "Te sigue",
   "account.go_to_profile": "Ir al perfil",
-  "account.hide_reblogs": "Ocultar retoots de @{name}",
+  "account.hide_reblogs": "Ocultar retuts de @{name}",
   "account.joined_short": "Se unió",
   "account.languages": "Cambiar idiomas suscritos",
-  "account.link_verified_on": "El proprietario de este link fue comprobado el {date}",
-  "account.locked_info": "El estado de privacidad de esta cuenta està configurado como bloqueado. El proprietario debe revisar manualmente quien puede seguirle.",
+  "account.link_verified_on": "La propiedad de este enlace fue verificada el {date}",
+  "account.locked_info": "El estado de privacidad de esta cuenta está configurado como bloqueado. El proprietario debe revisar manualmente quien puede seguirle.",
   "account.media": "Multimedia",
   "account.mention": "Mencionar a @{name}",
   "account.moved_to": "{name} ha indicado que su nueva cuenta es ahora:",
@@ -53,14 +53,14 @@
   "account.posts": "Publicaciones",
   "account.posts_with_replies": "Publicaciones y respuestas",
   "account.report": "Reportar a @{name}",
-  "account.requested": "Esperando aprobación",
+  "account.requested": "Esperando aprobación. Clica para cancelar la solicitud de seguimiento",
   "account.share": "Compartir el perfil de @{name}",
-  "account.show_reblogs": "Mostrar retoots de @{name}",
+  "account.show_reblogs": "Mostrar retuts de @{name}",
   "account.statuses_counter": "{count, plural, one {{counter} Publicación} other {{counter} Publicaciones}}",
   "account.unblock": "Desbloquear a @{name}",
-  "account.unblock_domain": "Mostrar a {domain}",
+  "account.unblock_domain": "Mostrar {domain}",
   "account.unblock_short": "Desbloquear",
-  "account.unendorse": "No mostrar en el perfil",
+  "account.unendorse": "No destacar en el perfil",
   "account.unfollow": "Dejar de seguir",
   "account.unmute": "Dejar de silenciar a @{name}",
   "account.unmute_notifications": "Dejar de silenciar las notificaciones de @{name}",
@@ -71,11 +71,11 @@
   "admin.dashboard.retention.average": "Media",
   "admin.dashboard.retention.cohort": "Mes de registro",
   "admin.dashboard.retention.cohort_size": "Nuevos usuarios",
-  "alert.rate_limited.message": "Por favor reintente después de {retry_time, time, medium}.",
-  "alert.rate_limited.title": "Tarifa limitada",
+  "alert.rate_limited.message": "Por favor, vuelve a intentarlo después de la(s) {retry_time, time, medium}.",
+  "alert.rate_limited.title": "Tráfico limitado",
   "alert.unexpected.message": "Hubo un error inesperado.",
   "alert.unexpected.title": "¡Ups!",
-  "announcement.announcement": "Anuncio",
+  "announcement.announcement": "Comunicación",
   "attachments_list.unprocessed": "(sin procesar)",
   "audio.hide": "Ocultar audio",
   "autosuggest_hashtag.per_week": "{count} por semana",
@@ -100,10 +100,10 @@
   "column.about": "Acerca de",
   "column.blocks": "Usuarios bloqueados",
   "column.bookmarks": "Marcadores",
-  "column.community": "Línea de tiempo local",
+  "column.community": "Línea local",
   "column.direct": "Mensajes directos",
   "column.directory": "Buscar perfiles",
-  "column.domain_blocks": "Dominios ocultados",
+  "column.domain_blocks": "Dominios bloqueados",
   "column.favourites": "Favoritos",
   "column.follow_requests": "Solicitudes de seguimiento",
   "column.home": "Inicio",
@@ -111,7 +111,7 @@
   "column.mutes": "Usuarios silenciados",
   "column.notifications": "Notificaciones",
   "column.pins": "Publicaciones fijadas",
-  "column.public": "Línea de tiempo federada",
+  "column.public": "Línea federada",
   "column_back_button.label": "Atrás",
   "column_header.hide_settings": "Ocultar configuración",
   "column_header.moveLeft_settings": "Mover columna a la izquierda",
@@ -121,7 +121,7 @@
   "column_header.unpin": "Dejar de fijar",
   "column_subheading.settings": "Ajustes",
   "community.column_settings.local_only": "Solo local",
-  "community.column_settings.media_only": "Solo media",
+  "community.column_settings.media_only": "Solo multimedia",
   "community.column_settings.remote_only": "Solo remoto",
   "compose.language.change": "Cambiar idioma",
   "compose.language.search": "Buscar idiomas...",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Modificar encuesta para permitir múltiples opciones",
   "compose_form.poll.switch_to_single": "Modificar encuesta para permitir una única opción",
   "compose_form.publish": "Publicar",
+  "compose_form.publish_form": "Publicar",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Guardar cambios",
   "compose_form.sensitive.hide": "{count, plural, one {Marcar material como sensible} other {Marcar material como sensible}}",
@@ -168,7 +169,7 @@
   "confirmations.redraft.confirm": "Borrar y volver a borrador",
   "confirmations.redraft.message": "¿Estás seguro de que quieres eliminar esta publicación y convertirla en borrador? Perderás todas las respuestas, retoots y favoritos asociados a él, y las respuestas a la publicación original quedarán huérfanas.",
   "confirmations.reply.confirm": "Responder",
-  "confirmations.reply.message": "Responder sobrescribirá el mensaje que estás escribiendo. ¿Estás seguro de que deseas continuar?",
+  "confirmations.reply.message": "Responder sobrescribirá el mensaje que estás escribiendo. ¿Seguro que deseas continuar?",
   "confirmations.unfollow.confirm": "Dejar de seguir",
   "confirmations.unfollow.message": "¿Estás seguro de que quieres dejar de seguir a {name}?",
   "conversation.delete": "Borrar conversación",
@@ -220,7 +221,7 @@
   "empty_column.follow_recommendations": "Parece que no se ha podido generar ninguna sugerencia para ti. Puedes probar a buscar a gente que quizá conozcas o explorar los hashtags que están en tendencia.",
   "empty_column.follow_requests": "No tienes ninguna petición de seguidor. Cuando recibas una, se mostrará aquí.",
   "empty_column.hashtag": "No hay nada en este hashtag aún.",
-  "empty_column.home": "¡Tu línea de tiempo está vacía! Sigue a más personas para rellenarla. {suggestions}",
+  "empty_column.home": "¡Tu línea temporal está vacía! Sigue a más personas para rellenarla. {suggestions}",
   "empty_column.home.suggestions": "Ver algunas sugerencias",
   "empty_column.list": "No hay nada en esta lista aún. Cuando miembros de esta lista publiquen nuevos estatus, estos aparecerán qui.",
   "empty_column.lists": "No tienes ninguna lista. cuando crees una, se mostrará aquí.",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copiar el seguimiento de pila en el portapapeles",
   "errors.unexpected_crash.report_issue": "Informar de un problema/error",
   "explore.search_results": "Resultados de búsqueda",
-  "explore.suggested_follows": "Para ti",
   "explore.title": "Explorar",
-  "explore.trending_links": "Noticias",
-  "explore.trending_statuses": "Publicaciones",
-  "explore.trending_tags": "Etiquetas",
   "filter_modal.added.context_mismatch_explanation": "Esta categoría de filtro no se aplica al contexto en el que ha accedido a esta publlicación. Si quieres que la publicación sea filtrada también en este contexto, tendrás que editar el filtro.",
   "filter_modal.added.context_mismatch_title": "¡El contexto no coincide!",
   "filter_modal.added.expired_explanation": "Esta categoría de filtro ha caducado, necesitará cambiar la fecha de caducidad para que se aplique.",
@@ -480,13 +477,13 @@
   "report.category.subtitle": "Elige la mejor coincidencia",
   "report.category.title": "Cuéntanos lo que está pasando con este {type}",
   "report.category.title_account": "perfil",
-  "report.category.title_status": "publicacion",
+  "report.category.title_status": "publicación",
   "report.close": "Hecho",
   "report.comment.title": "¿Hay algo más que creas que deberíamos saber?",
   "report.forward": "Reenviar a {target}",
   "report.forward_hint": "Esta cuenta es de otro servidor. ¿Enviar una copia anonimizada del informe allí también?",
   "report.mute": "Silenciar",
-  "report.mute_explanation": "No verás sus publicaciones. Todavía pueden seguirte y ver tus mensajes y no sabrán que están silenciados.",
+  "report.mute_explanation": "No verás sus publicaciones. Todavía puede seguirte y ver tus mensajes, y no sabrá que está silenciade.",
   "report.next": "Siguiente",
   "report.placeholder": "Comentarios adicionales",
   "report.reasons.dislike": "No me gusta",
diff --git a/app/javascript/mastodon/locales/et.json b/app/javascript/mastodon/locales/et.json
index ff7dba9f7..81d325c48 100644
--- a/app/javascript/mastodon/locales/et.json
+++ b/app/javascript/mastodon/locales/et.json
@@ -1,16 +1,16 @@
 {
-  "about.blocks": "Moderated servers",
-  "about.contact": "Contact:",
-  "about.disclaimer": "Mastodon is free, open-source software, and a trademark of Mastodon gGmbH.",
-  "about.domain_blocks.no_reason_available": "Reason not available",
-  "about.domain_blocks.preamble": "Mastodon generally allows you to view content from and interact with users from any other server in the fediverse. These are the exceptions that have been made on this particular server.",
-  "about.domain_blocks.silenced.explanation": "You will generally not see profiles and content from this server, unless you explicitly look it up or opt into it by following.",
-  "about.domain_blocks.silenced.title": "Limited",
-  "about.domain_blocks.suspended.explanation": "No data from this server will be processed, stored or exchanged, making any interaction or communication with users from this server impossible.",
-  "about.domain_blocks.suspended.title": "Suspended",
-  "about.not_available": "This information has not been made available on this server.",
-  "about.powered_by": "Decentralized social media powered by {mastodon}",
-  "about.rules": "Server rules",
+  "about.blocks": "Modereeritavad serverid",
+  "about.contact": "Kontakt:",
+  "about.disclaimer": "Mastodon on tasuta ja vaba tarkvara ning Mastodon gGmbH kaubamärk.",
+  "about.domain_blocks.no_reason_available": "Mittesaadavuse põhjus",
+  "about.domain_blocks.preamble": "Mastodon tavaliselt lubab Teil vaadata sisu ning suhelda kasutajatega üks kõik millisest teisest serverist fediversumis. Need on erandid, mis on paika pandud sellel kindlal serveril.",
+  "about.domain_blocks.silenced.explanation": "Sa ei näe üldiselt profiile ja sisu sellelt serverilt, kui sa just tahtlikult seda ei otsi või jälgimise moel nõusolekut ei anna.",
+  "about.domain_blocks.silenced.title": "Piiratud",
+  "about.domain_blocks.suspended.explanation": "Mitte mingeid andmeid sellelt serveritl ei töödelda, salvestata ega vahetata, tehes igasuguse interaktsiooni või kirjavahetuse kasutajatega sellelt serverilt võimatuks.",
+  "about.domain_blocks.suspended.title": "Kustutatud",
+  "about.not_available": "See info ei ole sellel serveril saadavaks tehtud.",
+  "about.powered_by": "Hajutatud sotsiaalmeedia, mille taga on {mastodon}",
+  "about.rules": "Serveri reeglid",
   "account.account_note_header": "Märge",
   "account.add_or_remove_from_list": "Lisa või Eemalda nimekirjadest",
   "account.badges.bot": "Robot",
@@ -18,99 +18,99 @@
   "account.block": "Blokeeri @{name}",
   "account.block_domain": "Peida kõik domeenist {domain}",
   "account.blocked": "Blokeeritud",
-  "account.browse_more_on_origin_server": "Browse more on the original profile",
-  "account.cancel_follow_request": "Withdraw follow request",
+  "account.browse_more_on_origin_server": "Vaata rohkem algsel profiilil",
+  "account.cancel_follow_request": "Võta tagasi jälgimistaotlus",
   "account.direct": "Saada otsesõnum @{name}'ile",
-  "account.disable_notifications": "Stop notifying me when @{name} posts",
+  "account.disable_notifications": "Ära teavita, kui @{name} postitab",
   "account.domain_blocked": "Domeen peidetud",
   "account.edit_profile": "Muuda profiili",
-  "account.enable_notifications": "Notify me when @{name} posts",
+  "account.enable_notifications": "Teavita mind, kui @{name} postitab",
   "account.endorse": "Too profiilil esile",
-  "account.featured_tags.last_status_at": "Last post on {date}",
-  "account.featured_tags.last_status_never": "No posts",
-  "account.featured_tags.title": "{name}'s featured hashtags",
+  "account.featured_tags.last_status_at": "Viimane postitus {date}",
+  "account.featured_tags.last_status_never": "Postitusi pole",
+  "account.featured_tags.title": "{name} esiletõstetud sildid",
   "account.follow": "Jälgi",
   "account.followers": "Jälgijad",
-  "account.followers.empty": "Keegi ei jälgi seda kasutajat veel.",
+  "account.followers.empty": "Keegi ei jälgi veel seda kasutajat.",
   "account.followers_counter": "{count, plural, one {{counter} jälgija} other {{counter} jälgijat}}",
-  "account.following": "Following",
+  "account.following": "Jälgib",
   "account.following_counter": "{count, plural, one {{counter} jälgitav} other {{counter} jälgitavat}}",
   "account.follows.empty": "See kasutaja ei jälgi veel kedagi.",
-  "account.follows_you": "Jälgib Teid",
-  "account.go_to_profile": "Go to profile",
-  "account.hide_reblogs": "Peida upitused kasutajalt @{name}",
-  "account.joined_short": "Joined",
-  "account.languages": "Change subscribed languages",
+  "account.follows_you": "Jälgib",
+  "account.go_to_profile": "Mine profiilile",
+  "account.hide_reblogs": "Peida @{name} jagamised",
+  "account.joined_short": "Liitus",
+  "account.languages": "Muuda tellitud keeli",
   "account.link_verified_on": "Selle lingi autorsust kontrolliti {date}",
   "account.locked_info": "Selle konto privaatsussätteks on lukustatud. Omanik vaatab manuaalselt üle, kes teda jägida saab.",
   "account.media": "Meedia",
-  "account.mention": "Maini @{name}'i",
-  "account.moved_to": "{name} has indicated that their new account is now:",
+  "account.mention": "Maini @{name}",
+  "account.moved_to": "{name} on teada andnud, et ta uus konto on nüüd:",
   "account.mute": "Vaigista @{name}",
   "account.mute_notifications": "Vaigista teated kasutajalt @{name}",
   "account.muted": "Vaigistatud",
-  "account.open_original_page": "Open original page",
+  "account.open_original_page": "Ava algne leht",
   "account.posts": "Postitused",
   "account.posts_with_replies": "Postitused ja vastused",
   "account.report": "Raporteeri @{name}",
   "account.requested": "Ootab kinnitust. Klõpsa jälgimise soovi tühistamiseks",
   "account.share": "Jaga @{name} profiili",
-  "account.show_reblogs": "Näita kasutaja @{name} upitusi",
+  "account.show_reblogs": "Näita @{name} jagamisi",
   "account.statuses_counter": "{count, plural, one {{counter} postitus} other {{counter} postitust}}",
   "account.unblock": "Eemalda blokeering @{name}",
   "account.unblock_domain": "Tee {domain} nähtavaks",
-  "account.unblock_short": "Unblock",
+  "account.unblock_short": "Eemalda blokeering",
   "account.unendorse": "Ära kuva profiilil",
   "account.unfollow": "Ära jälgi",
   "account.unmute": "Ära vaigista @{name}",
   "account.unmute_notifications": "Ära vaigista teateid kasutajalt @{name}",
-  "account.unmute_short": "Unmute",
+  "account.unmute_short": "Lõpeta vaigistus",
   "account_note.placeholder": "Klõpsa märkme lisamiseks",
-  "admin.dashboard.daily_retention": "User retention rate by day after sign-up",
-  "admin.dashboard.monthly_retention": "User retention rate by month after sign-up",
-  "admin.dashboard.retention.average": "Average",
-  "admin.dashboard.retention.cohort": "Sign-up month",
-  "admin.dashboard.retention.cohort_size": "New users",
+  "admin.dashboard.daily_retention": "Kasutajate päevane allesjäämine peale registreerumist",
+  "admin.dashboard.monthly_retention": "Kasutajate kuine allesjäämine peale registreerumist",
+  "admin.dashboard.retention.average": "Keskmine",
+  "admin.dashboard.retention.cohort": "Registreerumiskuu",
+  "admin.dashboard.retention.cohort_size": "Uued kasutajad",
   "alert.rate_limited.message": "Palun proovi uuesti pärast {retry_time, time, medium}.",
   "alert.rate_limited.title": "Piiratud",
   "alert.unexpected.message": "Tekkis ootamatu viga.",
   "alert.unexpected.title": "Oih!",
   "announcement.announcement": "Teadaanne",
-  "attachments_list.unprocessed": "(unprocessed)",
-  "audio.hide": "Hide audio",
+  "attachments_list.unprocessed": "(töötlemata)",
+  "audio.hide": "Peida audio",
   "autosuggest_hashtag.per_week": "{count} nädalas",
-  "boost_modal.combo": "Võite vajutada {combo}, et see järgmine kord vahele jätta",
-  "bundle_column_error.copy_stacktrace": "Copy error report",
-  "bundle_column_error.error.body": "The requested page could not be rendered. It could be due to a bug in our code, or a browser compatibility issue.",
-  "bundle_column_error.error.title": "Oh, no!",
-  "bundle_column_error.network.body": "There was an error when trying to load this page. This could be due to a temporary problem with your internet connection or this server.",
-  "bundle_column_error.network.title": "Network error",
+  "boost_modal.combo": "Vajutades {combo}, saab selle edaspidi vahele jätta",
+  "bundle_column_error.copy_stacktrace": "Kopeeri veateade",
+  "bundle_column_error.error.body": "Soovitud lehte ei suudetud esitleda. See võib olla mingi koodivea tagajärg või probleem brauseri ühilduvusega.",
+  "bundle_column_error.error.title": "Oh, ei!",
+  "bundle_column_error.network.body": "Selle lehe laadimisel tekkis tõrge. See võib olla ajutine probleem internetiühendusega või selle serveriga.",
+  "bundle_column_error.network.title": "Võrguühenduse viga",
   "bundle_column_error.retry": "Proovi uuesti",
-  "bundle_column_error.return": "Go back home",
-  "bundle_column_error.routing.body": "The requested page could not be found. Are you sure the URL in the address bar is correct?",
+  "bundle_column_error.return": "Tagasi koju",
+  "bundle_column_error.routing.body": "Päritud lehte ei leitud. Kas URL aadressiribal on õige?",
   "bundle_column_error.routing.title": "404",
   "bundle_modal_error.close": "Sulge",
   "bundle_modal_error.message": "Selle komponendi laadimisel läks midagi viltu.",
   "bundle_modal_error.retry": "Proovi uuesti",
-  "closed_registrations.other_server_instructions": "Since Mastodon is decentralized, you can create an account on another server and still interact with this one.",
-  "closed_registrations_modal.description": "Creating an account on {domain} is currently not possible, but please keep in mind that you do not need an account specifically on {domain} to use Mastodon.",
-  "closed_registrations_modal.find_another_server": "Find another server",
-  "closed_registrations_modal.preamble": "Mastodon is decentralized, so no matter where you create your account, you will be able to follow and interact with anyone on this server. You can even self-host it!",
-  "closed_registrations_modal.title": "Signing up on Mastodon",
-  "column.about": "About",
+  "closed_registrations.other_server_instructions": "Kuna Mastodon on detsentraliseeritud, võib konto teha teise serverisse ja sellegipoolest siinse kontoga suhelda.",
+  "closed_registrations_modal.description": "Praegu ei ole võimalik teha {domain} peale kontot, aga pidage meeles, et teil ei pea olema just {domain} konto, et Mastodoni kasutada.",
+  "closed_registrations_modal.find_another_server": "Leia teine server",
+  "closed_registrations_modal.preamble": "Mastodon on detsentraliseeritud, mis tähendab seda, et ükskõik kuhu konto luua, võib jälgida ja suhelda igaühega sellel serveril. Võib isegi oma serveri püsti panna!",
+  "closed_registrations_modal.title": "Mastodoni registreerumine",
+  "column.about": "Teave",
   "column.blocks": "Blokeeritud kasutajad",
   "column.bookmarks": "Järjehoidjad",
   "column.community": "Kohalik ajajoon",
-  "column.direct": "Direct messages",
+  "column.direct": "Otsesõnumid",
   "column.directory": "Sirvi profiile",
   "column.domain_blocks": "Peidetud domeenid",
   "column.favourites": "Lemmikud",
   "column.follow_requests": "Jälgimistaotlused",
   "column.home": "Kodu",
-  "column.lists": "Nimekirjad",
+  "column.lists": "Nimistud",
   "column.mutes": "Vaigistatud kasutajad",
   "column.notifications": "Teated",
-  "column.pins": "Kinnitatud tuututused",
+  "column.pins": "Kinnitatud postitused",
   "column.public": "Föderatiivne ajajoon",
   "column_back_button.label": "Tagasi",
   "column_header.hide_settings": "Peida sätted",
@@ -123,12 +123,12 @@
   "community.column_settings.local_only": "Ainult kohalik",
   "community.column_settings.media_only": "Ainult meedia",
   "community.column_settings.remote_only": "Ainult kaug",
-  "compose.language.change": "Change language",
-  "compose.language.search": "Search languages...",
+  "compose.language.change": "Muuda keelt",
+  "compose.language.search": "Otsi keeli...",
   "compose_form.direct_message_warning_learn_more": "Vaata veel",
-  "compose_form.encryption_warning": "Posts on Mastodon are not end-to-end encrypted. Do not share any dangerous information over Mastodon.",
-  "compose_form.hashtag_warning": "Seda tuuti ei kuvata ühegi sildi all, sest see on kirjendamata. Ainult avalikud tuutid on sildi järgi otsitavad.",
-  "compose_form.lock_disclaimer": "Teie konto ei ole {locked}. Igaüks saab Teid jälgida ja näha Teie ainult-jälgijatele postitusi.",
+  "compose_form.encryption_warning": "Postitused Mastodonis ei ole otsast-otsani krüpteeritud. Ärge jagage mingeid delikaatseid andmeid Mastodoni kaudu.",
+  "compose_form.hashtag_warning": "Seda postitust ei kuvata ühegi sildi all, sest see ei ole leitav avastustoimingute kaudu. Ainult avalikud postitused on sildi järgi otsitavad.",
+  "compose_form.lock_disclaimer": "Teie konto ei ole {locked}. Igaüks saab teid jälgida ja näha teie ainult-jälgijatele postitusi.",
   "compose_form.lock_disclaimer.lock": "lukus",
   "compose_form.placeholder": "Millest mõtled?",
   "compose_form.poll.add_option": "Lisa valik",
@@ -137,9 +137,10 @@
   "compose_form.poll.remove_option": "Eemalda see valik",
   "compose_form.poll.switch_to_multiple": "Muuda küsitlust lubamaks mitut valikut",
   "compose_form.poll.switch_to_single": "Muuda küsitlust lubamaks ainult ühte valikut",
-  "compose_form.publish": "Publish",
+  "compose_form.publish": "Avalda",
+  "compose_form.publish_form": "Avalda",
   "compose_form.publish_loud": "{publish}!",
-  "compose_form.save_changes": "Save changes",
+  "compose_form.save_changes": "Salvesta muudatused",
   "compose_form.sensitive.hide": "Märgista meedia tundlikuks",
   "compose_form.sensitive.marked": "Meedia on sensitiivseks märgitud",
   "compose_form.sensitive.unmarked": "Meedia ei ole sensitiivseks märgitud",
@@ -147,26 +148,26 @@
   "compose_form.spoiler.unmarked": "Tekst ei ole peidetud",
   "compose_form.spoiler_placeholder": "Kirjutage oma hoiatus siia",
   "confirmation_modal.cancel": "Katkesta",
-  "confirmations.block.block_and_report": "Blokeeri & Teata",
+  "confirmations.block.block_and_report": "Blokeeri ja teata",
   "confirmations.block.confirm": "Blokeeri",
-  "confirmations.block.message": "Olete kindel, et soovite blokeerida {name}?",
-  "confirmations.cancel_follow_request.confirm": "Withdraw request",
-  "confirmations.cancel_follow_request.message": "Are you sure you want to withdraw your request to follow {name}?",
+  "confirmations.block.message": "Kindel, et blokeerida {name}?",
+  "confirmations.cancel_follow_request.confirm": "Tühista taotlus",
+  "confirmations.cancel_follow_request.message": "Olete kindel, et tahate võtta tagasi taotluse jälgida kasutajat {name}?",
   "confirmations.delete.confirm": "Kustuta",
   "confirmations.delete.message": "Olete kindel, et soovite selle staatuse kustutada?",
   "confirmations.delete_list.confirm": "Kustuta",
-  "confirmations.delete_list.message": "Olete kindel, et soovite selle nimekirja püsivalt kustutada?",
-  "confirmations.discard_edit_media.confirm": "Discard",
-  "confirmations.discard_edit_media.message": "You have unsaved changes to the media description or preview, discard them anyway?",
+  "confirmations.delete_list.message": "Olete kindel, et soovite selle nimekirja pöördumatult kustutada?",
+  "confirmations.discard_edit_media.confirm": "Hülga",
+  "confirmations.discard_edit_media.message": "Teil on salvestamata muudatused meediakirjelduses või eelvaates, kas hülgame need?",
   "confirmations.domain_block.confirm": "Peida terve domeen",
   "confirmations.domain_block.message": "Olete ikka päris kindel, et soovite blokeerida terve {domain}? Enamikul juhtudel piisab mõnest sihitud blokist või vaigistusest, mis on eelistatav. Te ei näe selle domeeni sisu üheski avalikus ajajoones või teadetes. Teie jälgijad sellest domeenist eemaldatakse.",
   "confirmations.logout.confirm": "Välju",
   "confirmations.logout.message": "Kas olete kindel, et soovite välja logida?",
   "confirmations.mute.confirm": "Vaigista",
-  "confirmations.mute.explanation": "See peidab postitusi temalt ning postitusi, kus mainitakse neid, kuid see lubab neil ikka näha Teie postitusi ning Teid jälgida.",
+  "confirmations.mute.explanation": "See peidab postitusi temalt ning postitusi, kus mainitakse neid, kuid see lubab neil ikka näha teie postitusi ning teid jälgida.",
   "confirmations.mute.message": "Olete kindel, et soovite {name} vaigistada?",
   "confirmations.redraft.confirm": "Kustuta & taasalusta",
-  "confirmations.redraft.message": "Olete kindel, et soovite selle staatuse kustutada ja alustada uuesti? Lemmikud ja upitused lähevad kaotsi ja vastused originaaalpostitusele jäävad orvuks.",
+  "confirmations.redraft.message": "Kas kustutada postitus ja võtta uue aluseks? Meeldimised ja jagamised lähevad kaotsi ning vastused jäävad ilma algse postituseta.",
   "confirmations.reply.confirm": "Vasta",
   "confirmations.reply.message": "Praegu vastamine kirjutab üle sõnumi, mida hetkel koostate. Olete kindel, et soovite jätkata?",
   "confirmations.unfollow.confirm": "Ära jälgi",
@@ -175,24 +176,24 @@
   "conversation.mark_as_read": "Märgi loetuks",
   "conversation.open": "Vaata vestlust",
   "conversation.with": "Koos {names}",
-  "copypaste.copied": "Copied",
-  "copypaste.copy": "Copy",
+  "copypaste.copied": "Kopeeritud",
+  "copypaste.copy": "Kopeeri",
   "directory.federated": "Teatud fediversumist",
   "directory.local": "Ainult domeenilt {domain}",
   "directory.new_arrivals": "Uustulijad",
   "directory.recently_active": "Hiljuti aktiivne",
-  "disabled_account_banner.account_settings": "Account settings",
-  "disabled_account_banner.text": "Your account {disabledAccount} is currently disabled.",
-  "dismissable_banner.community_timeline": "These are the most recent public posts from people whose accounts are hosted by {domain}.",
-  "dismissable_banner.dismiss": "Dismiss",
-  "dismissable_banner.explore_links": "These news stories are being talked about by people on this and other servers of the decentralized network right now.",
-  "dismissable_banner.explore_statuses": "These posts from this and other servers in the decentralized network are gaining traction on this server right now.",
-  "dismissable_banner.explore_tags": "These hashtags are gaining traction among people on this and other servers of the decentralized network right now.",
-  "dismissable_banner.public_timeline": "These are the most recent public posts from people on this and other servers of the decentralized network that this server knows about.",
+  "disabled_account_banner.account_settings": "Kontosätted",
+  "disabled_account_banner.text": "Teie konto {disabledAccount} ei ole praegu kasutusvõimeline.",
+  "dismissable_banner.community_timeline": "Need on kõige viimased avalikud postitused inimestelt, kelle kontosid majutab {domain}.",
+  "dismissable_banner.dismiss": "Sulge",
+  "dismissable_banner.explore_links": "Need on uudised, millest inimesed siin ja teistes serverites üle detsentraliseeritud võrgu praegu räägivad.",
+  "dismissable_banner.explore_statuses": "Need postitused siit ja teistes serveritest detsentraliseeritud võrgus koguvad tähelepanu just praegu selles serveris.",
+  "dismissable_banner.explore_tags": "Need sildid siit ja teistes serveritest detsentraliseeritud võrgus koguvad tähelepanu just praegu selles serveris.",
+  "dismissable_banner.public_timeline": "Need on kõige uuemad avalikud postitused inimestelt selles ja teistes serverites üle detsentraliseeritud võrgu, millest see server on teadlik.",
   "embed.instructions": "Manusta see staatus oma veebilehele, kopeerides alloleva koodi.",
   "embed.preview": "Nii näeb see välja:",
   "emoji_button.activity": "Tegevus",
-  "emoji_button.clear": "Clear",
+  "emoji_button.clear": "Tühjenda",
   "emoji_button.custom": "Mugandatud",
   "emoji_button.flags": "Lipud",
   "emoji_button.food": "Toit & jook",
@@ -206,69 +207,65 @@
   "emoji_button.search_results": "Otsitulemused",
   "emoji_button.symbols": "Sümbolid",
   "emoji_button.travel": "Reisimine & kohad",
-  "empty_column.account_suspended": "Account suspended",
-  "empty_column.account_timeline": "Siin tuute ei ole!",
+  "empty_column.account_suspended": "Konto kustutatud",
+  "empty_column.account_timeline": "Siin postitusi ei ole!",
   "empty_column.account_unavailable": "Profiil pole saadaval",
-  "empty_column.blocks": "Sa ei ole veel ühtegi kasutajat blokeerinud.",
-  "empty_column.bookmarked_statuses": "Teil pole veel järjehoidjatesse lisatud tuututusi. Kui lisate mõne, näete neid siin.",
+  "empty_column.blocks": "Blokeeritud kasutajaid pole.",
+  "empty_column.bookmarked_statuses": "Teil pole veel järjehoidjatesse lisatud postitusi. Kui lisate mõne, näete neid siin.",
   "empty_column.community": "Kohalik ajajoon on tühi. Kirjutage midagi avalikult, et pall veerema ajada!",
-  "empty_column.direct": "You don't have any direct messages yet. When you send or receive one, it will show up here.",
+  "empty_column.direct": "Teil ei ole veel otsesõnumeid. Kui saadate või võtate mõne vastu, ilmuvad nad siia.",
   "empty_column.domain_blocks": "Siin ei ole veel peidetud domeene.",
-  "empty_column.explore_statuses": "Ükski postitus pole hetkel populaarne. Tule hiljem tagasi!",
-  "empty_column.favourited_statuses": "Teil pole veel lemmikuid tuute. Kui märgite mõne, näete neid siin.",
-  "empty_column.favourites": "Keegi pole veel seda tuuti lemmikuks märkinud. Kui seegi seda teeb, näed seda siin.",
-  "empty_column.follow_recommendations": "Looks like no suggestions could be generated for you. You can try using search to look for people you might know or explore trending hashtags.",
+  "empty_column.explore_statuses": "Praegu pole ühtegi trendi. Tule hiljem tagasi!",
+  "empty_column.favourited_statuses": "Teil pole veel lemmikpostitusi. Kui märgite mõne, näete neid siin.",
+  "empty_column.favourites": "Keegi pole veel seda postitust lemmikuks märkinud. Kui seegi seda teeb, näed seda siin.",
+  "empty_column.follow_recommendations": "Tundub, et teie jaoks ei ole võimalik soovitusi tekitada. Proovige kasutada otsingut, et leida inimesi, keda te teate või sirvida trendivaid silte.",
   "empty_column.follow_requests": "Teil pole hetkel ühtegi jälgimistaotlust. Kui saate mõne, näete neid siin.",
-  "empty_column.hashtag": "Selle sildiga pole veel midagi.",
+  "empty_column.hashtag": "Seda sildi all ei ole ühtegi postitust.",
   "empty_column.home": "Teie kodu ajajoon on tühi! Külastage {public} või kasutage otsingut alustamaks ja kohtamaks teisi kasutajaid.",
-  "empty_column.home.suggestions": "See some suggestions",
-  "empty_column.list": "Siin nimstus pole veel midagi. Kui selle nimistu liikmed postitavad uusi staatusi, näed neid siin.",
-  "empty_column.lists": "Teil ei ole veel ühtegi nimekirja. Kui loote mõne, näete neid siin.",
+  "empty_column.home.suggestions": "Vaata mõndasid soovitusi",
+  "empty_column.list": "Siin nimistus pole veel midagi. Kui nimistu liikmed teevad uusi postitusi, näed neid siin.",
+  "empty_column.lists": "Teil pole veel ühtegi nimekirja. Kui loote mõne, näete neid siin.",
   "empty_column.mutes": "Te pole veel ühtegi kasutajat vaigistanud.",
   "empty_column.notifications": "Teil ei ole veel teateid. Suhelge teistega alustamaks vestlust.",
   "empty_column.public": "Siin pole midagi! Kirjuta midagi avalikut või jälgi ise kasutajaid täitmaks seda ruumi",
-  "error.unexpected_crash.explanation": "Meie poolse probleemi või veebilehitseja ühilduvus probleemi tõttu ei suutnud me Teile seda lehekülge korrektselt näidata.",
-  "error.unexpected_crash.explanation_addons": "This page could not be displayed correctly. This error is likely caused by a browser add-on or automatic translation tools.",
+  "error.unexpected_crash.explanation": "Meie poolse probleemi või veebilehitseja ühilduvus probleemi tõttu ei suutnud me teile seda lehekülge korrektselt näidata.",
+  "error.unexpected_crash.explanation_addons": "Seda lehte ei suudetud õigesti kuvada. See viga arvatavasti põhjustas mingi brauseri lisand või automaattõlke tööriist.",
   "error.unexpected_crash.next_steps": "Proovige lehekülge uuesti avada. Kui see ei aita, võite proovida kasutada Mastodoni mõne muu veebilehitseja või äppi kaudu.",
-  "error.unexpected_crash.next_steps_addons": "Try disabling them and refreshing the page. If that does not help, you may still be able to use Mastodon through a different browser or native app.",
+  "error.unexpected_crash.next_steps_addons": "Proovige need välja lülitada ja leht uuesti laadida. Kui sellest pole abi, võib olla võimalik Mastodoni kasutada mingi teise brauseri või rakendusega.",
   "errors.unexpected_crash.copy_stacktrace": "Kopeeri stacktrace lõikelauale",
   "errors.unexpected_crash.report_issue": "Teavita veast",
   "explore.search_results": "Otsingutulemused",
-  "explore.suggested_follows": "Sinu jaoks",
   "explore.title": "Avasta",
-  "explore.trending_links": "Uudised",
-  "explore.trending_statuses": "Postitused",
-  "explore.trending_tags": "Sildid",
-  "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
-  "filter_modal.added.context_mismatch_title": "Context mismatch!",
-  "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
-  "filter_modal.added.expired_title": "Expired filter!",
-  "filter_modal.added.review_and_configure": "To review and further configure this filter category, go to the {settings_link}.",
-  "filter_modal.added.review_and_configure_title": "Filter settings",
-  "filter_modal.added.settings_link": "settings page",
-  "filter_modal.added.short_explanation": "This post has been added to the following filter category: {title}.",
-  "filter_modal.added.title": "Filter added!",
-  "filter_modal.select_filter.context_mismatch": "does not apply to this context",
-  "filter_modal.select_filter.expired": "expired",
-  "filter_modal.select_filter.prompt_new": "New category: {name}",
-  "filter_modal.select_filter.search": "Search or create",
-  "filter_modal.select_filter.subtitle": "Use an existing category or create a new one",
-  "filter_modal.select_filter.title": "Filter this post",
-  "filter_modal.title.status": "Filter a post",
-  "follow_recommendations.done": "Done",
-  "follow_recommendations.heading": "Follow people you'd like to see posts from! Here are some suggestions.",
-  "follow_recommendations.lead": "Posts from people you follow will show up in chronological order on your home feed. Don't be afraid to make mistakes, you can unfollow people just as easily any time!",
+  "filter_modal.added.context_mismatch_explanation": "See filtrikategooria ei rakendu selles kontekstis, kuidas te postitusele jõudsite. Kui tahate postitust ka selles kontekstis filtreerida, võite muuta filtrit.",
+  "filter_modal.added.context_mismatch_title": "Konteksti mittesobivus!",
+  "filter_modal.added.expired_explanation": "Selle filtri kategooria on aegunud, peate muutma aegumiskuupäeva, kui tahate, et filter kehtiks.",
+  "filter_modal.added.expired_title": "Aegunud filter!",
+  "filter_modal.added.review_and_configure": "Et vaadata üle ja täpsemalt seadistada seda filtrikategooriat, minge lehele {settings_link}.",
+  "filter_modal.added.review_and_configure_title": "Filtrite sätted",
+  "filter_modal.added.settings_link": "sättete leht",
+  "filter_modal.added.short_explanation": "See postitus on lisatud järgmisesse filtrikategooriasse: {title}.",
+  "filter_modal.added.title": "Filter lisatud!",
+  "filter_modal.select_filter.context_mismatch": "ei avaldu selles kontekstis",
+  "filter_modal.select_filter.expired": "aegunud",
+  "filter_modal.select_filter.prompt_new": "Uus kategooria: {name}",
+  "filter_modal.select_filter.search": "Otsi või loo",
+  "filter_modal.select_filter.subtitle": "Kasuta olemasolevat kategooriat või loo uus",
+  "filter_modal.select_filter.title": "Filtreeri seda postitust",
+  "filter_modal.title.status": "Filtreeri postitust",
+  "follow_recommendations.done": "Valmis",
+  "follow_recommendations.heading": "Jälgi inimesi, kelle postituse tahaksite näha! Mõned soovitused on siin.",
+  "follow_recommendations.lead": "Postitused inimestelt, keda te jälgite ilmuvad ajalises järjekorras teie kodu ajajoonel. Ärge kartke eksida, alati saate inimeste jälgimist ka lõpetada!",
   "follow_request.authorize": "Autoriseeri",
   "follow_request.reject": "Hülga",
-  "follow_requests.unlocked_explanation": "Kuigi Teie konto pole lukustatud, soovitab {domain} personal siiski manuaalselt üle vaadata jälgimistaotlused nendelt kontodelt.",
-  "footer.about": "About",
-  "footer.directory": "Profiles directory",
-  "footer.get_app": "Get the app",
-  "footer.invite": "Invite people",
-  "footer.keyboard_shortcuts": "Keyboard shortcuts",
-  "footer.privacy_policy": "Privacy policy",
-  "footer.source_code": "View source code",
-  "generic.saved": "Saved",
+  "follow_requests.unlocked_explanation": "Kuigi teie konto pole lukustatud, soovitab {domain} personal siiski manuaalselt üle vaadata jälgimistaotlused nendelt kontodelt.",
+  "footer.about": "Teave",
+  "footer.directory": "Profiilikataloog",
+  "footer.get_app": "Tõmba äpp",
+  "footer.invite": "Kutsu inimesi",
+  "footer.keyboard_shortcuts": "Klaviatuuri otseteed",
+  "footer.privacy_policy": "Privaatsuspoliitika",
+  "footer.source_code": "Vaata lähtekoodi",
+  "generic.saved": "Salvestatud",
   "getting_started.heading": "Alustamine",
   "hashtag.column_header.tag_mode.all": "ja {additional}",
   "hashtag.column_header.tag_mode.any": "või {additional}",
@@ -279,35 +276,35 @@
   "hashtag.column_settings.tag_mode.any": "Mõni neist",
   "hashtag.column_settings.tag_mode.none": "Mitte ükski neist",
   "hashtag.column_settings.tag_toggle": "Kaasa lisamärked selle tulba jaoks",
-  "hashtag.follow": "Follow hashtag",
-  "hashtag.unfollow": "Unfollow hashtag",
+  "hashtag.follow": "Jälgi silti",
+  "hashtag.unfollow": "Lõpeta sildi jälgimine",
   "home.column_settings.basic": "Peamine",
-  "home.column_settings.show_reblogs": "Näita upitusi",
+  "home.column_settings.show_reblogs": "Näita jagamisi",
   "home.column_settings.show_replies": "Näita vastuseid",
   "home.hide_announcements": "Peida teadaanded",
   "home.show_announcements": "Kuva teadaandeid",
-  "interaction_modal.description.favourite": "With an account on Mastodon, you can favourite this post to let the author know you appreciate it and save it for later.",
-  "interaction_modal.description.follow": "With an account on Mastodon, you can follow {name} to receive their posts in your home feed.",
-  "interaction_modal.description.reblog": "With an account on Mastodon, you can boost this post to share it with your own followers.",
-  "interaction_modal.description.reply": "With an account on Mastodon, you can respond to this post.",
-  "interaction_modal.on_another_server": "On a different server",
-  "interaction_modal.on_this_server": "On this server",
-  "interaction_modal.other_server_instructions": "Copy and paste this URL into the search field of your favourite Mastodon app or the web interface of your Mastodon server.",
-  "interaction_modal.preamble": "Since Mastodon is decentralized, you can use your existing account hosted by another Mastodon server or compatible platform if you don't have an account on this one.",
-  "interaction_modal.title.favourite": "Favourite {name}'s post",
-  "interaction_modal.title.follow": "Follow {name}",
-  "interaction_modal.title.reblog": "Boost {name}'s post",
-  "interaction_modal.title.reply": "Reply to {name}'s post",
+  "interaction_modal.description.favourite": "Mastodoni kontoga saate seda postitust lemmikuks märkida, et autor teaks, et te seda hindate ja hiljemaks alles jätta.",
+  "interaction_modal.description.follow": "Mastodoni kontoga saate jälgida kasutajat {name}, et tema postitusi oma kodu ajajoonel näha.",
+  "interaction_modal.description.reblog": "Mastodoni kontoga saate jagada seda postitust oma jälgijatele.",
+  "interaction_modal.description.reply": "Mastodoni kontoga saate sellele postitusele vastata.",
+  "interaction_modal.on_another_server": "Teises serveris",
+  "interaction_modal.on_this_server": "Selles serveris",
+  "interaction_modal.other_server_instructions": "Kopeeri ja aseta see URL oma lemmikusse Mastodoni äppi või oma Mastodoni serveri veebiliidesesse.",
+  "interaction_modal.preamble": "Kuna Mastodon on detsentraliseeritud, võite kasutada olemasolevat kontot, mis on teises Mastodoni servers või ühilduval platvormil, kui teil siin kontot ei ole.",
+  "interaction_modal.title.favourite": "Lisa konto {name} postitus lemmikuks",
+  "interaction_modal.title.follow": "Jälgi kontot {name}",
+  "interaction_modal.title.reblog": "Jaga {name} postitust",
+  "interaction_modal.title.reply": "Vasta kasutaja {name} postitusele",
   "intervals.full.days": "{number, plural, one {# päev} other {# päevad}}",
   "intervals.full.hours": "{number, plural, one {# tund} other {# tundi}}",
   "intervals.full.minutes": "{number, plural, one {# minut} other {# minutit}}",
   "keyboard_shortcuts.back": "tagasiminekuks",
   "keyboard_shortcuts.blocked": "avamaks blokeeritud kasutajate nimistut",
-  "keyboard_shortcuts.boost": "upitamiseks",
+  "keyboard_shortcuts.boost": "Jaga",
   "keyboard_shortcuts.column": "fokuseerimaks staatust ühele tulpadest",
   "keyboard_shortcuts.compose": "fokuseerimaks tekstikoostamise alale",
   "keyboard_shortcuts.description": "Kirjeldus",
-  "keyboard_shortcuts.direct": "to open direct messages column",
+  "keyboard_shortcuts.direct": "avamaks otsesõnumite tulpa",
   "keyboard_shortcuts.down": "liikumaks nimstus alla",
   "keyboard_shortcuts.enter": "Ava postitus",
   "keyboard_shortcuts.favourite": "lemmikuks märkimiseks",
@@ -323,7 +320,7 @@
   "keyboard_shortcuts.my_profile": "avamaks profiili",
   "keyboard_shortcuts.notifications": "avamaks teadete tulpa",
   "keyboard_shortcuts.open_media": "et avada meedia",
-  "keyboard_shortcuts.pinned": "avamaks kinnitatud tuutide nimistut",
+  "keyboard_shortcuts.pinned": "Ava kinnitatud postituste nimekiri",
   "keyboard_shortcuts.profile": "avamaks autori profiili",
   "keyboard_shortcuts.reply": "vastamiseks",
   "keyboard_shortcuts.requests": "avamaks jälgimistaotluste nimistut",
@@ -332,44 +329,44 @@
   "keyboard_shortcuts.start": "avamaks \"Alusta\" tulpa",
   "keyboard_shortcuts.toggle_hidden": "näitamaks/peitmaks teksti CW taga",
   "keyboard_shortcuts.toggle_sensitivity": "et peita/näidata meediat",
-  "keyboard_shortcuts.toot": "alustamaks täiesti uut tuuti",
+  "keyboard_shortcuts.toot": "Alusta uut postitust",
   "keyboard_shortcuts.unfocus": "tekstiala/otsingu koostamise mittefokuseerimiseks",
   "keyboard_shortcuts.up": "liikumaks nimistus üles",
   "lightbox.close": "Sulge",
-  "lightbox.compress": "Compress image view box",
-  "lightbox.expand": "Expand image view box",
+  "lightbox.compress": "Suru kokku pildi vaatamise kast",
+  "lightbox.expand": "Laienda pildi vaatamise kast",
   "lightbox.next": "Järgmine",
   "lightbox.previous": "Eelmine",
-  "limited_account_hint.action": "Show profile anyway",
-  "limited_account_hint.title": "This profile has been hidden by the moderators of {domain}.",
+  "limited_account_hint.action": "Näita profilli sellegipoolest",
+  "limited_account_hint.title": "See profiil on peidetud {domain} moderaatorite poolt.",
   "lists.account.add": "Lisa nimistusse",
   "lists.account.remove": "Eemalda nimistust",
   "lists.delete": "Kustuta nimistu",
   "lists.edit": "Muuda nimistut",
-  "lists.edit.submit": "Muuda pealkiri",
+  "lists.edit.submit": "Pealkirja muutmine",
   "lists.new.create": "Lisa nimistu",
-  "lists.new.title_placeholder": "Uus nimistu pealkiri",
-  "lists.replies_policy.followed": "Any followed user",
-  "lists.replies_policy.list": "Members of the list",
-  "lists.replies_policy.none": "No one",
-  "lists.replies_policy.title": "Show replies to:",
-  "lists.search": "Otsi Teie poolt jälgitavate inimese hulgast",
+  "lists.new.title_placeholder": "Uue nimistu pealkiri",
+  "lists.replies_policy.followed": "Igalt jälgitud kasutajalt",
+  "lists.replies_policy.list": "Listi liikmetelt",
+  "lists.replies_policy.none": "Mitte kellegilt",
+  "lists.replies_policy.title": "Näita vastuseid nendele:",
+  "lists.search": "Otsige teie poolt jälgitavate inimese hulgast",
   "lists.subheading": "Teie nimistud",
   "load_pending": "{count, plural, one {# uus kirje} other {# uut kirjet}}",
   "loading_indicator.label": "Laeb..",
   "media_gallery.toggle_visible": "{number, plural, one {Varja pilt} other {Varja pildid}}",
   "missing_indicator.label": "Ei leitud",
   "missing_indicator.sublabel": "Seda ressurssi ei leitud",
-  "moved_to_account_banner.text": "Your account {disabledAccount} is currently disabled because you moved to {movedToAccount}.",
-  "mute_modal.duration": "Duration",
+  "moved_to_account_banner.text": "Teie kontot {disabledAccount} ei ole praegu võimalik kasutada, sest te kolisite kontole {movedToAccount}.",
+  "mute_modal.duration": "Kestus",
   "mute_modal.hide_notifications": "Kas peita teated sellelt kasutajalt?",
-  "mute_modal.indefinite": "Indefinite",
-  "navigation_bar.about": "About",
+  "mute_modal.indefinite": "Lõpmatu",
+  "navigation_bar.about": "Teave",
   "navigation_bar.blocks": "Blokeeritud kasutajad",
   "navigation_bar.bookmarks": "Järjehoidjad",
   "navigation_bar.community_timeline": "Kohalik ajajoon",
-  "navigation_bar.compose": "Koosta uus tuut",
-  "navigation_bar.direct": "Direct messages",
+  "navigation_bar.compose": "Koosta uus postitus",
+  "navigation_bar.direct": "Otsesõnumid",
   "navigation_bar.discover": "Avasta",
   "navigation_bar.domain_blocks": "Peidetud domeenid",
   "navigation_bar.edit_profile": "Muuda profiili",
@@ -382,61 +379,61 @@
   "navigation_bar.logout": "Logi välja",
   "navigation_bar.mutes": "Vaigistatud kasutajad",
   "navigation_bar.personal": "Isiklik",
-  "navigation_bar.pins": "Kinnitatud tuutid",
+  "navigation_bar.pins": "Kinnitatud postitused",
   "navigation_bar.preferences": "Eelistused",
   "navigation_bar.public_timeline": "Föderatiivne ajajoon",
-  "navigation_bar.search": "Search",
+  "navigation_bar.search": "Otsing",
   "navigation_bar.security": "Turvalisus",
-  "not_signed_in_indicator.not_signed_in": "You need to sign in to access this resource.",
-  "notification.admin.report": "{name} reported {target}",
-  "notification.admin.sign_up": "{name} signed up",
-  "notification.favourite": "{name} märkis Teie staatuse lemmikuks",
-  "notification.follow": "{name} jälgib nüüd Teid",
-  "notification.follow_request": "{name} soovib Teid jälgida",
-  "notification.mention": "{name} mainis Teid",
+  "not_signed_in_indicator.not_signed_in": "Peate logima sisse, et saada ligipääsu sellele ressursile.",
+  "notification.admin.report": "{name} saatis teavituse {target} kohta",
+  "notification.admin.sign_up": "{name} registreerus",
+  "notification.favourite": "{name} märkis teie staatuse lemmikuks",
+  "notification.follow": "{name} jälgib nüüd teid",
+  "notification.follow_request": "{name} soovib teid jälgida",
+  "notification.mention": "{name} mainis teid",
   "notification.own_poll": "Teie küsitlus on lõppenud",
   "notification.poll": "Küsitlus, milles osalesite, on lõppenud",
-  "notification.reblog": "{name} upitas Teie staatust",
-  "notification.status": "{name} just posted",
-  "notification.update": "{name} edited a post",
+  "notification.reblog": "{name} jagas postitust",
+  "notification.status": "{name} just postitas",
+  "notification.update": "{name} muutis postitust",
   "notifications.clear": "Puhasta teated",
   "notifications.clear_confirmation": "Olete kindel, et soovite püsivalt kõik oma teated eemaldada?",
-  "notifications.column_settings.admin.report": "New reports:",
-  "notifications.column_settings.admin.sign_up": "New sign-ups:",
+  "notifications.column_settings.admin.report": "Uued teavitused:",
+  "notifications.column_settings.admin.sign_up": "Uued kasutajad:",
   "notifications.column_settings.alert": "Töölauateated",
   "notifications.column_settings.favourite": "Lemmikud:",
   "notifications.column_settings.filter_bar.advanced": "Kuva kõik kategooriad",
   "notifications.column_settings.filter_bar.category": "Kiirfiltri riba",
-  "notifications.column_settings.filter_bar.show_bar": "Show filter bar",
+  "notifications.column_settings.filter_bar.show_bar": "Näita filtririba",
   "notifications.column_settings.follow": "Uued jälgijad:",
   "notifications.column_settings.follow_request": "Uued jälgimistaotlused:",
   "notifications.column_settings.mention": "Mainimised:",
   "notifications.column_settings.poll": "Küsitluse tulemused:",
   "notifications.column_settings.push": "Push teated",
-  "notifications.column_settings.reblog": "Upitused:",
+  "notifications.column_settings.reblog": "Jagamised:",
   "notifications.column_settings.show": "Kuva tulbas",
   "notifications.column_settings.sound": "Mängi heli",
-  "notifications.column_settings.status": "New toots:",
-  "notifications.column_settings.unread_notifications.category": "Unread notifications",
-  "notifications.column_settings.unread_notifications.highlight": "Highlight unread notifications",
-  "notifications.column_settings.update": "Edits:",
+  "notifications.column_settings.status": "Uued postitused:",
+  "notifications.column_settings.unread_notifications.category": "Lugemata teated",
+  "notifications.column_settings.unread_notifications.highlight": "Tõsta esile lugemata teated",
+  "notifications.column_settings.update": "Muudatused:",
   "notifications.filter.all": "Kõik",
-  "notifications.filter.boosts": "Upitused",
+  "notifications.filter.boosts": "Jagamised",
   "notifications.filter.favourites": "Lemmikud",
   "notifications.filter.follows": "Jälgib",
   "notifications.filter.mentions": "Mainimised",
   "notifications.filter.polls": "Küsitluse tulemused",
-  "notifications.filter.statuses": "Updates from people you follow",
-  "notifications.grant_permission": "Grant permission.",
+  "notifications.filter.statuses": "Uuendused inimestelt, keda te jälgite",
+  "notifications.grant_permission": "Anna luba.",
   "notifications.group": "{count} teated",
-  "notifications.mark_as_read": "Mark every notification as read",
-  "notifications.permission_denied": "Desktop notifications are unavailable due to previously denied browser permissions request",
-  "notifications.permission_denied_alert": "Desktop notifications can't be enabled, as browser permission has been denied before",
-  "notifications.permission_required": "Desktop notifications are unavailable because the required permission has not been granted.",
-  "notifications_permission_banner.enable": "Enable desktop notifications",
-  "notifications_permission_banner.how_to_control": "To receive notifications when Mastodon isn't open, enable desktop notifications. You can control precisely which types of interactions generate desktop notifications through the {icon} button above once they're enabled.",
-  "notifications_permission_banner.title": "Never miss a thing",
-  "picture_in_picture.restore": "Put it back",
+  "notifications.mark_as_read": "Märgi kõik teated loetuks",
+  "notifications.permission_denied": "Töölaua märguanded pole seadaval, kuna eelnevalt keelduti brauserile teavituste luba anda",
+  "notifications.permission_denied_alert": "Töölaua märguandeid ei saa lubada, kuna brauseri luba on varem keeldutud",
+  "notifications.permission_required": "Töölaua märguanded ei ole saadaval, kuna vajalik luba pole antud.",
+  "notifications_permission_banner.enable": "Luba töölaua märguanded",
+  "notifications_permission_banner.how_to_control": "Et saada teateid, kui Mastodon pole avatud, lubage töölaua märguanded. Saate määrata täpselt, mis tüüpi läbikäimised tekitavad töölauale märguandeid kasutates {icon} nuppu üleval, kui need on sisse lülitatud.",
+  "notifications_permission_banner.title": "Ärge jääge millestki ilma",
+  "picture_in_picture.restore": "Pane tagasi",
   "poll.closed": "Suletud",
   "poll.refresh": "Värskenda",
   "poll.total_people": "{count, plural,one {# inimene} other {# inimest}}",
@@ -448,76 +445,76 @@
   "poll_button.remove_poll": "Eemalda küsitlus",
   "privacy.change": "Muuda postituse nähtavust",
   "privacy.direct.long": "Postita ainult mainitud kasutajatele",
-  "privacy.direct.short": "Direct",
+  "privacy.direct.short": "Mainitud inimesed ainult",
   "privacy.private.long": "Postita ainult jälgijatele",
-  "privacy.private.short": "Followers-only",
-  "privacy.public.long": "Visible for all",
+  "privacy.private.short": "Jälgijad ainult",
+  "privacy.public.long": "Kõigile nähtav",
   "privacy.public.short": "Avalik",
-  "privacy.unlisted.long": "Visible for all, but opted-out of discovery features",
+  "privacy.unlisted.long": "Kõgile nähtav, aga ei ilmu avastamise vaadetes",
   "privacy.unlisted.short": "Määramata",
-  "privacy_policy.last_updated": "Last updated {date}",
-  "privacy_policy.title": "Privacy Policy",
+  "privacy_policy.last_updated": "Viimati uuendatud {date}",
+  "privacy_policy.title": "Privaatsuspoliitika",
   "refresh": "Värskenda",
   "regeneration_indicator.label": "Laeb…",
   "regeneration_indicator.sublabel": "Teie kodu voog on ettevalmistamisel!",
   "relative_time.days": "{number}p",
-  "relative_time.full.days": "{number, plural, one {# day} other {# days}} ago",
+  "relative_time.full.days": "{number, plural, one {# päev} other {# päeva}} tagasi",
   "relative_time.full.hours": "{number, plural, one {# tund} other {# tundi}} tagasi",
-  "relative_time.full.just_now": "just now",
-  "relative_time.full.minutes": "{number, plural, one {# minute} other {# minutes}} ago",
-  "relative_time.full.seconds": "{number, plural, one {# second} other {# seconds}} ago",
+  "relative_time.full.just_now": "just nüüd",
+  "relative_time.full.minutes": "{number, plural, one {# minut} other {# minutit}} tagasi",
+  "relative_time.full.seconds": "{number, plural, one {# sekund} other {# sekundit}} tagasi",
   "relative_time.hours": "{number}t",
   "relative_time.just_now": "nüüd",
   "relative_time.minutes": "{number}m",
   "relative_time.seconds": "{number}s",
   "relative_time.today": "täna",
   "reply_indicator.cancel": "Tühista",
-  "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.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.category.title_account": "profile",
-  "report.category.title_status": "post",
-  "report.close": "Done",
-  "report.comment.title": "Is there anything else you think we should know?",
+  "report.block": "Blokeeri",
+  "report.block_explanation": "Te ei näe tema postitusi. Tema ei saa näha teie postitusi ega teid jälgida. Talle on näha, et ta on blokeeritud.",
+  "report.categories.other": "Muud",
+  "report.categories.spam": "Rämpspost",
+  "report.categories.violation": "Sisu, mis rikub ühte või enamat serveri reeglit",
+  "report.category.subtitle": "Valige parim vaste",
+  "report.category.title": "Öelge, mis on sellel {type} valesti",
+  "report.category.title_account": "profiilil",
+  "report.category.title_status": "postitusel",
+  "report.close": "Valmis",
+  "report.comment.title": "Kas on midagi veel, mis te arvate, et me peaks teadma?",
   "report.forward": "Edasta kasutajale {target}",
   "report.forward_hint": "See kasutaja on teisest serverist. Kas saadan anonümiseeritud koopia sellest teatest sinna ka?",
-  "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.mute": "Vaigista",
+  "report.mute_explanation": "Te ei näe tema postitusi. Ta võib ikka teil jälgida ja näha teie postitusi ja ta ei saa teada, et ta on vaigistatud.",
+  "report.next": "Järgmine",
   "report.placeholder": "Lisaks kommentaarid",
-  "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.submit": "Saada",
+  "report.reasons.dislike": "Mulle ei meeldi see",
+  "report.reasons.dislike_description": "Midagi sellist, mida te ei taha näha",
+  "report.reasons.other": "Midagi muud",
+  "report.reasons.other_description": "Probleem ei sobi teistesse kategooriatesse",
+  "report.reasons.spam": "See on rämpspost",
+  "report.reasons.spam_description": "Pahatahtlikud lingid, võltssuhtlus või korduvad vastused",
+  "report.reasons.violation": "Rikub serveri reegleid",
+  "report.reasons.violation_description": "Teate, et see rikub teatud reegleid",
+  "report.rules.subtitle": "Valige kõik, mis sobivad",
+  "report.rules.title": "Milliseid reegleid rikutakse?",
+  "report.statuses.subtitle": "Valige kõik, mis sobivad",
+  "report.statuses.title": "Kas on olemas postitusi, mis on sellele teavitusele tõenduseks?",
+  "report.submit": "Esita",
   "report.target": "Teatamine {target} kohta",
-  "report.thanks.take_action": "Here are your options for controlling what you see on Mastodon:",
-  "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_explanation": "You are following this account. To not see their posts in your home feed anymore, unfollow them.",
-  "report_notification.attached_statuses": "{count, plural, one {{count} post} other {{count} posts}} attached",
-  "report_notification.categories.other": "Other",
-  "report_notification.categories.spam": "Spam",
-  "report_notification.categories.violation": "Rule violation",
-  "report_notification.open": "Open report",
+  "report.thanks.take_action": "Need on võimalused, mis teil on, et juhtida, mida Mastodonis näete:",
+  "report.thanks.take_action_actionable": "Kuniks me seda üle vaatame, võite teha need tegevused @{name} vastu:",
+  "report.thanks.title": "Ei taha seda näha?",
+  "report.thanks.title_actionable": "Täname teavitamise eest, uurime seda.",
+  "report.unfollow": "Lõpeta @{name} jälgimine",
+  "report.unfollow_explanation": "Te jälgite seda kontot. Et mitte näha tema postitusi oma kodu ajajoonel, lõpetage tema jälgimine.",
+  "report_notification.attached_statuses": "{count, plural, one {{count} postitus} other {{count} postitust}} listatud",
+  "report_notification.categories.other": "Muu",
+  "report_notification.categories.spam": "Rämpspost",
+  "report_notification.categories.violation": "Reeglite rikkumine",
+  "report_notification.open": "Ava teavitus",
   "search.placeholder": "Otsi",
-  "search.search_or_paste": "Search or paste URL",
+  "search.search_or_paste": "Otsi või aseta URL",
   "search_popout.search_format": "Täiustatud otsiformaat",
-  "search_popout.tips.full_text": "Lihtne tekst toob esile staatused mida olete kirjutanud, lisanud lemmikuks, upitanud või olete seal mainitud, ning lisaks veel kattuvad kasutajanimed, kuvanimed ja sildid.",
+  "search_popout.tips.full_text": "Lihttekst annab vastuseks postitused, mida olete kirjutanud, lisanud lemmikuks, jaganud või kus mainitud, ning lisaks kattuvad kasutajanimed, kuvanimed ja sildid.",
   "search_popout.tips.hashtag": "silt",
   "search_popout.tips.status": "staatus",
   "search_popout.tips.text": "Lihtne tekst toob esile kattuvad kuvanimed, kasutajanimed ning sildid",
@@ -525,40 +522,40 @@
   "search_results.accounts": "Inimesed",
   "search_results.all": "Kõik",
   "search_results.hashtags": "Sildid",
-  "search_results.nothing_found": "Could not find anything for these search terms",
+  "search_results.nothing_found": "Ei leidnud midagi nende otsinguterminitega",
   "search_results.statuses": "Tuudid",
-  "search_results.statuses_fts_disabled": "Tuutsude otsimine nende sisu järgi ei ole sellel Mastodoni serveril sisse lülitatud.",
-  "search_results.title": "Search for {q}",
+  "search_results.statuses_fts_disabled": "Postituste otsimine nende sisu järgi ei ole sellel Mastodoni serveril sisse lülitatud.",
+  "search_results.title": "{q} otsing",
   "search_results.total": "{count, number} {count, plural, one {tulemus} other {tulemust}}",
-  "server_banner.about_active_users": "People using this server during the last 30 days (Monthly Active Users)",
-  "server_banner.active_users": "active users",
-  "server_banner.administered_by": "Administered by:",
-  "server_banner.introduction": "{domain} is part of the decentralized social network powered by {mastodon}.",
-  "server_banner.learn_more": "Learn more",
-  "server_banner.server_stats": "Server stats:",
-  "sign_in_banner.create_account": "Create account",
-  "sign_in_banner.sign_in": "Sign in",
-  "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts, or interact from your account on a different server.",
+  "server_banner.about_active_users": "Inimesed, kes kasutavad seda serverit viimase 30 päeva jooksul (kuu aktiivsed kasutajad)",
+  "server_banner.active_users": "aktiivsed kasutajad",
+  "server_banner.administered_by": "Administraator:",
+  "server_banner.introduction": "{domain} on osa detsentraliseeritud sotsiaalvõrgustikust, mida võimaldab {mastodon}.",
+  "server_banner.learn_more": "Vaata veel",
+  "server_banner.server_stats": "Serveri statistika:",
+  "sign_in_banner.create_account": "Loo konto",
+  "sign_in_banner.sign_in": "Logi sisse",
+  "sign_in_banner.text": "Logi sisse, et jälgida profiile või silte, märkida lemmikuks, jagada ja vastata postitustele või kasutada suhtlemiseks kontot teises serveris.",
   "status.admin_account": "Ava moderaatoriliides kasutajale @{name}",
   "status.admin_status": "Ava see staatus moderaatoriliites",
   "status.block": "Blokeeri @{name}",
   "status.bookmark": "Järjehoidja",
-  "status.cancel_reblog_private": "Äraupita",
-  "status.cannot_reblog": "Seda postitust ei saa upitada",
+  "status.cancel_reblog_private": "Lõpeta jagamine",
+  "status.cannot_reblog": "Seda postitust ei saa jagada",
   "status.copy": "Kopeeri postituse link",
   "status.delete": "Kustuta",
   "status.detailed_status": "Detailne vestluskuva",
   "status.direct": "Saada otsesõnum @{name}'ile",
-  "status.edit": "Edit",
-  "status.edited": "Edited {date}",
-  "status.edited_x_times": "Edited {count, plural, one {{count} time} other {{count} times}}",
+  "status.edit": "Redigeeri",
+  "status.edited": "{date} muudetud",
+  "status.edited_x_times": "Muudetud {count, plural, one{{count} kord} other {{count} korda}}",
   "status.embed": "Sängita",
   "status.favourite": "Lemmik",
-  "status.filter": "Filter this post",
+  "status.filter": "Filtreeri seda postitust",
   "status.filtered": "Filtreeritud",
-  "status.hide": "Hide toot",
-  "status.history.created": "{name} created {date}",
-  "status.history.edited": "{name} edited {date}",
+  "status.hide": "Peida postitus",
+  "status.history.created": "{name} lõi {date}",
+  "status.history.edited": "{name} muutis {date}",
   "status.load_more": "Lae rohkem",
   "status.media_hidden": "Meedia peidetud",
   "status.mention": "Maini @{name}'i",
@@ -567,34 +564,34 @@
   "status.mute_conversation": "Vaigista vestlus",
   "status.open": "Laienda see postitus",
   "status.pin": "Kinnita profiilile",
-  "status.pinned": "Kinnitatud tuut",
+  "status.pinned": "Kinnitatud postitus",
   "status.read_more": "Loe veel",
-  "status.reblog": "Upita",
-  "status.reblog_private": "Upita algsele publikule",
-  "status.reblogged_by": "{name} upitatud",
-  "status.reblogs.empty": "Keegi pole seda tuuti veel upitanud. Kui keegi upitab, näed seda siin.",
+  "status.reblog": "Jaga",
+  "status.reblog_private": "Jaga algse nähtavusega",
+  "status.reblogged_by": "{name} jagas",
+  "status.reblogs.empty": "Keegi pole seda postitust veel jaganud. Kui keegi seda teeb, näeb seda siin.",
   "status.redraft": "Kustuta & alga uuesti",
   "status.remove_bookmark": "Eemalda järjehoidja",
-  "status.replied_to": "Replied to {name}",
+  "status.replied_to": "Vastas kasutajale {name}",
   "status.reply": "Vasta",
   "status.replyAll": "Vasta lõimele",
   "status.report": "Raporteeri @{name}",
   "status.sensitive_warning": "Tundlik sisu",
   "status.share": "Jaga",
-  "status.show_filter_reason": "Show anyway",
+  "status.show_filter_reason": "Näita ikka",
   "status.show_less": "Näita vähem",
   "status.show_less_all": "Näita vähem kõigile",
   "status.show_more": "Näita veel",
   "status.show_more_all": "Näita enam kõigile",
-  "status.show_original": "Show original",
-  "status.translate": "Translate",
-  "status.translated_from_with": "Translated from {lang} using {provider}",
+  "status.show_original": "Näita algset",
+  "status.translate": "Tõlgi",
+  "status.translated_from_with": "Tõlgitud {lang} keelest kasutades teenust {provider}",
   "status.uncached_media_warning": "Pole saadaval",
   "status.unmute_conversation": "Ära vaigista vestlust",
-  "status.unpin": "Kinnita profiililt lahti",
-  "subscribed_languages.lead": "Only posts in selected languages will appear on your home and list timelines after the change. Select none to receive posts in all languages.",
-  "subscribed_languages.save": "Save changes",
-  "subscribed_languages.target": "Change subscribed languages for {target}",
+  "status.unpin": "Eemalda profiilile kinnitus",
+  "subscribed_languages.lead": "Pärast muudatust näidatakse kodu ja nimistute ajajoontel postitusi valitud keeltes. Jäta tühjaks, kui tahad näha postitusi keelest sõltumata.",
+  "subscribed_languages.save": "Salvesta muudatused",
+  "subscribed_languages.target": "Muutke tellitud keeli {target} jaoks",
   "suggestions.dismiss": "Eira soovitust",
   "suggestions.header": "Teid võib huvitada…",
   "tabs_bar.federated_timeline": "Föderatiivne",
@@ -606,39 +603,39 @@
   "time_remaining.minutes": "{number, plural, one {# minut} other {# minutit}} jäänud",
   "time_remaining.moments": "Hetked jäänud",
   "time_remaining.seconds": "{number, plural, one {# sekund} other {# sekundit}} jäänud",
-  "timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
-  "timeline_hint.resources.followers": "Followers",
-  "timeline_hint.resources.follows": "Follows",
-  "timeline_hint.resources.statuses": "Older toots",
-  "trends.counter_by_accounts": "{count, plural, one {{counter} person} other {{counter} people}} in the past {days, plural, one {day} other {{days} days}}",
-  "trends.trending_now": "Hetkel populaarne",
+  "timeline_hint.remote_resource_not_displayed": "{resource} teisest serveritest ei kuvata.",
+  "timeline_hint.resources.followers": "Jälgijaid",
+  "timeline_hint.resources.follows": "Jälgib",
+  "timeline_hint.resources.statuses": "Vanemad postitused",
+  "trends.counter_by_accounts": "{count, plural, one {{counter} inimene} other {{counter} inimest}} viimase {days, plural, one {päeva} other {{days} päeva}} jooksul",
+  "trends.trending_now": "Vestluste suunad",
   "ui.beforeunload": "Teie mustand läheb kaotsi, kui lahkute Mastodonist.",
-  "units.short.billion": "{count}B",
-  "units.short.million": "{count}M",
-  "units.short.thousand": "{count}K",
+  "units.short.billion": "{count} mld",
+  "units.short.million": "{count} mln",
+  "units.short.thousand": "{count} tuh",
   "upload_area.title": "Lohista & aseta üleslaadimiseks",
   "upload_button.label": "Lisa meedia (JPEG, PNG, GIF, WebM, MP4, MOV)",
   "upload_error.limit": "Faili üleslaadimise limiit ületatud.",
   "upload_error.poll": "Küsitlustes pole faili üleslaadimine lubatud.",
   "upload_form.audio_description": "Kirjelda kuulmispuudega inimeste jaoks",
   "upload_form.description": "Kirjelda vaegnägijatele",
-  "upload_form.description_missing": "No description added",
+  "upload_form.description_missing": "Kirjeldus puudub",
   "upload_form.edit": "Redigeeri",
-  "upload_form.thumbnail": "Change thumbnail",
+  "upload_form.thumbnail": "Muuda pisipilti",
   "upload_form.undo": "Kustuta",
   "upload_form.video_description": "Kirjelda kuulmis- või nägemispuudega inimeste jaoks",
   "upload_modal.analyzing_picture": "Analüüsime pilti…",
   "upload_modal.apply": "Rakenda",
-  "upload_modal.applying": "Applying…",
-  "upload_modal.choose_image": "Choose image",
+  "upload_modal.applying": "Rakendan…",
+  "upload_modal.choose_image": "Vali pilt",
   "upload_modal.description_placeholder": "Kiire pruun rebane hüppab üle laisa koera",
   "upload_modal.detect_text": "Tuvasta teksti pildilt",
   "upload_modal.edit_media": "Muuda meediat",
   "upload_modal.hint": "Vajuta või tõmba ringi eelvaatel, et valida fookuspunkti, mis on alati nähtaval kõikidel eelvaadetel.",
-  "upload_modal.preparing_ocr": "Preparing OCR…",
+  "upload_modal.preparing_ocr": "Valmistan masinlugemist…",
   "upload_modal.preview_label": "Eelvaade ({ratio})",
   "upload_progress.label": "Laeb üles....",
-  "upload_progress.processing": "Processing…",
+  "upload_progress.processing": "Töötlen…",
   "video.close": "Sulge video",
   "video.download": "Faili allalaadimine",
   "video.exit_fullscreen": "Välju täisekraanist",
diff --git a/app/javascript/mastodon/locales/eu.json b/app/javascript/mastodon/locales/eu.json
index e0d6e2931..fd17288b3 100644
--- a/app/javascript/mastodon/locales/eu.json
+++ b/app/javascript/mastodon/locales/eu.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Aldatu inkesta hainbat aukera onartzeko",
   "compose_form.poll.switch_to_single": "Aldatu inkesta aukera bakarra onartzeko",
   "compose_form.publish": "Argitaratu",
+  "compose_form.publish_form": "Argitaratu",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Gorde aldaketak",
   "compose_form.sensitive.hide": "Markatu multimedia hunkigarri gisa",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Kopiatu irteera arbelera",
   "errors.unexpected_crash.report_issue": "Eman arazoaren berri",
   "explore.search_results": "Bilaketaren emaitzak",
-  "explore.suggested_follows": "Zuretzat",
   "explore.title": "Arakatu",
-  "explore.trending_links": "Berriak",
-  "explore.trending_statuses": "Bidalketak",
-  "explore.trending_tags": "Traolak",
   "filter_modal.added.context_mismatch_explanation": "Iragazki-kategoria hau ez zaio aplikatzen bidalketa honetara sartzeko erabili duzun testuinguruari. Bidalketa testuinguru horretan ere iragaztea nahi baduzu, iragazkia editatu beharko duzu.",
   "filter_modal.added.context_mismatch_title": "Testuingurua ez dator bat!",
   "filter_modal.added.expired_explanation": "Iragazki kategoria hau iraungi da, eragina izan dezan bere iraungitze-data aldatu beharko duzu.",
diff --git a/app/javascript/mastodon/locales/fa.json b/app/javascript/mastodon/locales/fa.json
index 2c36c4efa..6ead03c3d 100644
--- a/app/javascript/mastodon/locales/fa.json
+++ b/app/javascript/mastodon/locales/fa.json
@@ -2,7 +2,7 @@
   "about.blocks": "کارسازهای نظارت شده",
   "about.contact": "تماس:",
   "about.disclaimer": "ماستودون نرم‌افزار آزاد، متن باز و یک شرکت غیر انتفاعی با مسئولیت محدود طبق قوانین آلمان است.",
-  "about.domain_blocks.no_reason_available": "Reason not available",
+  "about.domain_blocks.no_reason_available": "دلیلی موجود نیست",
   "about.domain_blocks.preamble": "ماستودون عموماً می‌گذارد محتوا را از از هر کارساز دیگری در دنیای شبکه‌های اجتماعی غیرمتمرکز دیده و با آنان برهم‌کنش داشته باشید. این‌ها استثناهایی هستند که روی این کارساز خاص وضع شده‌اند.",
   "about.domain_blocks.silenced.explanation": "You will generally not see profiles and content from this server, unless you explicitly look it up or opt into it by following.",
   "about.domain_blocks.silenced.title": "محدود",
@@ -37,7 +37,7 @@
   "account.following_counter": "{count, plural, one {{counter} پی‌گرفته} other {{counter} پی‌گرفته}}",
   "account.follows.empty": "این کاربر هنوز پی‌گیر کسی نیست.",
   "account.follows_you": "پی می‌گیردتان",
-  "account.go_to_profile": "Go to profile",
+  "account.go_to_profile": "رفتن به نمایه",
   "account.hide_reblogs": "نهفتن تقویت‌های ‎@{name}",
   "account.joined_short": "پیوسته",
   "account.languages": "تغییر زبان‌های مشترک شده",
@@ -45,11 +45,11 @@
   "account.locked_info": "این حساب خصوصی است. صاحبش تصمیم می‌گیرد که چه کسی پی‌گیرش باشد.",
   "account.media": "رسانه",
   "account.mention": "نام‌بردن از ‎@{name}",
-  "account.moved_to": "{name} has indicated that their new account is now:",
+  "account.moved_to": "{name} نشان داده که حساب جدیدش این است:",
   "account.mute": "خموشاندن ‎@{name}",
   "account.mute_notifications": "خموشاندن آگاهی‌های ‎@{name}",
   "account.muted": "خموش",
-  "account.open_original_page": "Open original page",
+  "account.open_original_page": "گشودن صفحهٔ اصلی",
   "account.posts": "فرسته",
   "account.posts_with_replies": "فرسته‌ها و پاسخ‌ها",
   "account.report": "گزارش ‎@{name}",
@@ -87,7 +87,7 @@
   "bundle_column_error.network.title": "خطای شبکه",
   "bundle_column_error.retry": "تلاش دوباره",
   "bundle_column_error.return": "بازگشت به خانه",
-  "bundle_column_error.routing.body": "The requested page could not be found. Are you sure the URL in the address bar is correct?",
+  "bundle_column_error.routing.body": "صفحهٔ درخواستی پیدا نشد. مطمئنید که نشانی را درست وارد کرده‌اید؟",
   "bundle_column_error.routing.title": "۴۰۴",
   "bundle_modal_error.close": "بستن",
   "bundle_modal_error.message": "هنگام بار کردن این مولفه، اشتباهی رخ داد.",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "تبدیل به نظرسنجی چندگزینه‌ای",
   "compose_form.poll.switch_to_single": "تبدیل به نظرسنجی تک‌گزینه‌ای",
   "compose_form.publish": "انتشار",
+  "compose_form.publish_form": "انتشار",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "ذخیرهٔ تغییرات",
   "compose_form.sensitive.hide": "{count, plural, one {علامت‌گذاری رسانه به عنوان حساس} other {علامت‌گذاری رسانه‌ها به عنوان حساس}}",
@@ -151,7 +152,7 @@
   "confirmations.block.confirm": "مسدود کردن",
   "confirmations.block.message": "مطمئنید که می‌خواهید {name} را مسدود کنید؟",
   "confirmations.cancel_follow_request.confirm": "رد کردن درخواست",
-  "confirmations.cancel_follow_request.message": "Are you sure you want to withdraw your request to follow {name}?",
+  "confirmations.cancel_follow_request.message": "مطمئنید که می خواهید درخواست پی‌گیری {name} را لغو کنید؟",
   "confirmations.delete.confirm": "حذف",
   "confirmations.delete.message": "آیا مطمئنید که می‌خواهید این فرسته را حذف کنید؟",
   "confirmations.delete_list.confirm": "حذف",
@@ -181,15 +182,15 @@
   "directory.local": "تنها از {domain}",
   "directory.new_arrivals": "تازه‌واردان",
   "directory.recently_active": "کاربران فعال اخیر",
-  "disabled_account_banner.account_settings": "Account settings",
-  "disabled_account_banner.text": "Your account {disabledAccount} is currently disabled.",
-  "dismissable_banner.community_timeline": "These are the most recent public posts from people whose accounts are hosted by {domain}.",
+  "disabled_account_banner.account_settings": "تنظیمات حساب",
+  "disabled_account_banner.text": "حسابتان {disabledAccount} اکنون از کار افتاده.",
+  "dismissable_banner.community_timeline": "این‌ها جدیدترین فرسته‌های عمومی از افرادیند که حساب‌هایشان به دست {domain} میزبانی می‌شود.",
   "dismissable_banner.dismiss": "دور انداختن",
-  "dismissable_banner.explore_links": "These news stories are being talked about by people on this and other servers of the decentralized network right now.",
-  "dismissable_banner.explore_statuses": "These posts from this and other servers in the decentralized network are gaining traction on this server right now.",
-  "dismissable_banner.explore_tags": "These hashtags are gaining traction among people on this and other servers of the decentralized network right now.",
-  "dismissable_banner.public_timeline": "These are the most recent public posts from people on this and other servers of the decentralized network that this server knows about.",
-  "embed.instructions": "برای جاسازی این فرسته در سایت خودتان، کد زیر را رونوشت کنید.",
+  "dismissable_banner.explore_links": "هم‌اکنون افراد روی این کارساز و دیگر کارسازهای شبکهٔ نامتمرکز در مورد این داستان‌های خبری صحبت می‌کنند.",
+  "dismissable_banner.explore_statuses": "هم‌اکنون این فرسته‌ها از این کارساز و دیگر کارسازهای شبکهٔ نامتمرکز داغ شده‌اند.",
+  "dismissable_banner.explore_tags": "هم‌اکنون این برچسب‌ها بین افراد این کارساز و دیگر کارسازهای شبکهٔ نامتمرکز داغ شده‌اند.",
+  "dismissable_banner.public_timeline": "این‌ها جدیدترین فرسته‌های عمومی از افراد روی این کارساز و دیگر کارسازهای شبکهٔ نامتمرکزیست که این کارساز در موردشان می‌داند.",
+  "embed.instructions": "جاسازی این فرسته روی پایگاهتان با رونوشت کردن کد زیر.",
   "embed.preview": "این گونه دیده خواهد شد:",
   "emoji_button.activity": "فعالیت",
   "emoji_button.clear": "پاک سازی",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "رونوشت از جزئیات اشکال",
   "errors.unexpected_crash.report_issue": "گزارش مشکل",
   "explore.search_results": "نتایج جست‌وجو",
-  "explore.suggested_follows": "برای شما",
   "explore.title": "کاوش",
-  "explore.trending_links": "اخبار",
-  "explore.trending_statuses": "فرسته‌ها",
-  "explore.trending_tags": "هشتگ‌ها",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "بافتار نامطابق!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
@@ -265,9 +262,9 @@
   "footer.directory": "فهرست نمایه‌ها",
   "footer.get_app": "گرفتن کاره",
   "footer.invite": "دعوت دیگران",
-  "footer.keyboard_shortcuts": "میانبرهای صفحه‌کلید",
-  "footer.privacy_policy": "سیاست حریم خصوصی",
-  "footer.source_code": "مشاهده کد منبع",
+  "footer.keyboard_shortcuts": "میان‌برهای صفحه‌کلید",
+  "footer.privacy_policy": "سیاست محرمانگی",
+  "footer.source_code": "نمایش کد مبدأ",
   "generic.saved": "ذخیره شده",
   "getting_started.heading": "آغاز کنید",
   "hashtag.column_header.tag_mode.all": "و {additional}",
@@ -286,13 +283,13 @@
   "home.column_settings.show_replies": "نمایش پاسخ‌ها",
   "home.hide_announcements": "نهفتن اعلامیه‌ها",
   "home.show_announcements": "نمایش اعلامیه‌ها",
-  "interaction_modal.description.favourite": "With an account on Mastodon, you can favourite this post to let the author know you appreciate it and save it for later.",
-  "interaction_modal.description.follow": "With an account on Mastodon, you can follow {name} to receive their posts in your home feed.",
-  "interaction_modal.description.reblog": "With an account on Mastodon, you can boost this post to share it with your own followers.",
-  "interaction_modal.description.reply": "With an account on Mastodon, you can respond to this post.",
+  "interaction_modal.description.favourite": "با حسابی روی ماستودون می‌توانید این فرسته را برگزیده تا نگارنده بداند قدردانش هستید و برای آینده ذخیره‌اش می‌کنید.",
+  "interaction_modal.description.follow": "با حسابی روی ماستودون می‌توانید {name} را برای دریافت فرسته‌هایش در خوراک خانگیتان دنبال کنید.",
+  "interaction_modal.description.reblog": "با حسابی روی ماستودون می‌توانید این فرسته را با پی‌گیران خودتان هم‌رسانی کنید.",
+  "interaction_modal.description.reply": "با حسابی روی ماستودون می‌توانید به این فرسته پاسخ دهید.",
   "interaction_modal.on_another_server": "روی کارسازی دیگر",
   "interaction_modal.on_this_server": "روی این کارساز",
-  "interaction_modal.other_server_instructions": "Copy and paste this URL into the search field of your favourite Mastodon app or the web interface of your Mastodon server.",
+  "interaction_modal.other_server_instructions": "این نشانی را رونویسی و در زمینهٔ جست‌وجوی کارهٔ دلخواه یا رابط وب کارساز ماستودونتان جایگذاری کنید.",
   "interaction_modal.preamble": "از آن‌جا که ماستودون نامتمرکز است، می‌توانید در صورت نداشتن حساب روی این کارساز، از حساب موجود خودتان که روی کارساز ماستودون یا بن‌سازهٔ سازگار دیگری میزبانی می‌شود استفاده کنید.",
   "interaction_modal.title.favourite": "فرسته‌های برگزیدهٔ {name}",
   "interaction_modal.title.follow": "پیگیری {name}",
@@ -323,7 +320,7 @@
   "keyboard_shortcuts.my_profile": "گشودن نمایه‌تان",
   "keyboard_shortcuts.notifications": "گشودن ستون آگاهی‌ها",
   "keyboard_shortcuts.open_media": "گشودن رسانه",
-  "keyboard_shortcuts.pinned": "گشودن فهرست فرسته‌های سنجاق شده",
+  "keyboard_shortcuts.pinned": "گشودن سیاههٔ فرسته‌های سنجاق شده",
   "keyboard_shortcuts.profile": "گشودن نمایهٔ نویسنده",
   "keyboard_shortcuts.reply": "پاسخ به فرسته",
   "keyboard_shortcuts.requests": "گشودن سیاههٔ درخواست‌های پی‌گیری",
@@ -341,7 +338,7 @@
   "lightbox.next": "بعدی",
   "lightbox.previous": "قبلی",
   "limited_account_hint.action": "به هر روی نمایه نشان داده شود",
-  "limited_account_hint.title": "This profile has been hidden by the moderators of {domain}.",
+  "limited_account_hint.title": "این نمایه از سوی ناظم‌های {domain} پنهان شده.",
   "lists.account.add": "افزودن به سیاهه",
   "lists.account.remove": "برداشتن از سیاهه",
   "lists.delete": "حذف سیاهه",
@@ -360,7 +357,7 @@
   "media_gallery.toggle_visible": "{number, plural, one {نهفتن تصویر} other {نهفتن تصاویر}}",
   "missing_indicator.label": "پیدا نشد",
   "missing_indicator.sublabel": "این منبع پیدا نشد",
-  "moved_to_account_banner.text": "Your account {disabledAccount} is currently disabled because you moved to {movedToAccount}.",
+  "moved_to_account_banner.text": "حسابتان {disabledAccount} اکنون از کار افتاده؛ چرا که به {movedToAccount} منتقل شدید.",
   "mute_modal.duration": "مدت زمان",
   "mute_modal.hide_notifications": "نهفتن آگاهی‌ها از این کاربر؟",
   "mute_modal.indefinite": "نامعلوم",
@@ -515,7 +512,7 @@
   "report_notification.categories.violation": "تخطّی از قانون",
   "report_notification.open": "گشودن گزارش",
   "search.placeholder": "جست‌وجو",
-  "search.search_or_paste": "Search or paste URL",
+  "search.search_or_paste": "جست‌وجو یا جایگذاری نشانی",
   "search_popout.search_format": "راهنمای جست‌وجوی پیشرفته",
   "search_popout.tips.full_text": "جست‌وجوی متنی ساده فرسته‌هایی که نوشته، پسندیده، تقویت‌کرده یا در آن‌ها نام‌برده شده‌اید را به علاوهٔ نام‌های کاربری، نام‌های نمایشی و برچسب‌ها برمی‌گرداند.",
   "search_popout.tips.hashtag": "برچسب",
@@ -545,7 +542,7 @@
   "status.bookmark": "نشانک",
   "status.cancel_reblog_private": "ناتقویت",
   "status.cannot_reblog": "این فرسته قابل تقویت نیست",
-  "status.copy": "رونوشت پیوند فرسته",
+  "status.copy": "رونوشت از پیوند فرسته",
   "status.delete": "حذف",
   "status.detailed_status": "نمایش کامل گفتگو",
   "status.direct": "پیام مستقیم به ‎@{name}",
@@ -566,7 +563,7 @@
   "status.mute": "خموشاندن ‎@{name}",
   "status.mute_conversation": "خموشاندن گفت‌وگو",
   "status.open": "گسترش این فرسته",
-  "status.pin": "سنجاق کردن در نمایه",
+  "status.pin": "سنجاق به نمایه",
   "status.pinned": "فرستهٔ سنجاق شده",
   "status.read_more": "بیشتر بخوانید",
   "status.reblog": "تقویت",
@@ -592,7 +589,7 @@
   "status.uncached_media_warning": "ناموجود",
   "status.unmute_conversation": "رفع خموشی گفت‌وگو",
   "status.unpin": "برداشتن سنجاق از نمایه",
-  "subscribed_languages.lead": "Only posts in selected languages will appear on your home and list timelines after the change. Select none to receive posts in all languages.",
+  "subscribed_languages.lead": "پس از تغییر، تنها فرسته‌های به زبان‌های گزیده روی خانه و خط‌زمانی‌های سیاهه ظاهر خواهند شد. برای دریافت فرسته‌ها به تمامی زبان‌ها، هیچ‌کدام را برنگزینید.",
   "subscribed_languages.save": "ذخیرهٔ تغییرات",
   "subscribed_languages.target": "تغییر زبان‌های مشترک شده برای {target}",
   "suggestions.dismiss": "نادیده گرفتن پیشنهاد",
diff --git a/app/javascript/mastodon/locales/fi.json b/app/javascript/mastodon/locales/fi.json
index 3d1454866..883adf211 100644
--- a/app/javascript/mastodon/locales/fi.json
+++ b/app/javascript/mastodon/locales/fi.json
@@ -32,9 +32,9 @@
   "account.follow": "Seuraa",
   "account.followers": "Seuraajat",
   "account.followers.empty": "Kukaan ei seuraa tätä käyttäjää vielä.",
-  "account.followers_counter": "{count, plural, one {{counter} seuraaja} other {{counter} seuraajat}}",
+  "account.followers_counter": "{count, plural, one {{counter} seuraaja} other {{counter} seuraajaa}}",
   "account.following": "Seurataan",
-  "account.following_counter": "{count, plural, one {{counter} seuraa} other {{counter} seuraa}}",
+  "account.following_counter": "{count, plural, one {{counter} seurattu} other {{counter} seurattua}}",
   "account.follows.empty": "Tämä käyttäjä ei vielä seuraa ketään.",
   "account.follows_you": "Seuraa sinua",
   "account.go_to_profile": "Mene profiiliin",
@@ -122,7 +122,7 @@
   "column_subheading.settings": "Asetukset",
   "community.column_settings.local_only": "Vain paikalliset",
   "community.column_settings.media_only": "Vain media",
-  "community.column_settings.remote_only": "Vain etäkäyttö",
+  "community.column_settings.remote_only": "Vain etätilit",
   "compose.language.change": "Vaihda kieli",
   "compose.language.search": "Hae kieliä...",
   "compose_form.direct_message_warning_learn_more": "Lisätietoja",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Muuta kysely monivalinnaksi",
   "compose_form.poll.switch_to_single": "Muuta kysely sallimaan vain yksi valinta",
   "compose_form.publish": "Julkaise",
+  "compose_form.publish_form": "Julkaise",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Tallenna muutokset",
   "compose_form.sensitive.hide": "{count, plural, one {Merkitse media arkaluontoiseksi} other {Merkitse media arkaluontoiseksi}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Kopioi pinon jäljitys leikepöydälle",
   "errors.unexpected_crash.report_issue": "Ilmoita ongelmasta",
   "explore.search_results": "Hakutulokset",
-  "explore.suggested_follows": "Sinulle",
   "explore.title": "Selaa",
-  "explore.trending_links": "Uutiset",
-  "explore.trending_statuses": "Viestit",
-  "explore.trending_tags": "Aihetunnisteet",
   "filter_modal.added.context_mismatch_explanation": "Tämä suodatinluokka ei koske asiayhteyttä, jossa olet käyttänyt tätä viestiä. Jos haluat, että viesti suodatetaan myös tässä yhteydessä, sinun on muokattava suodatinta.",
   "filter_modal.added.context_mismatch_title": "Asiayhteys ei täsmää!",
   "filter_modal.added.expired_explanation": "Tämä suodatinluokka on vanhentunut ja sinun on muutettava viimeistä voimassaolon päivää, jotta sitä voidaan käyttää.",
@@ -575,7 +572,7 @@
   "status.reblogs.empty": "Kukaan ei ole vielä buustannut tätä viestiä. Kun joku tekee niin, näkyy kyseinen henkilö tässä.",
   "status.redraft": "Poista ja palauta muokattavaksi",
   "status.remove_bookmark": "Poista kirjanmerkki",
-  "status.replied_to": "Vastaa käyttäjälle {name}",
+  "status.replied_to": "Vastaus käyttäjälle {name}",
   "status.reply": "Vastaa",
   "status.replyAll": "Vastaa ketjuun",
   "status.report": "Raportoi @{name}",
diff --git a/app/javascript/mastodon/locales/fo.json b/app/javascript/mastodon/locales/fo.json
new file mode 100644
index 000000000..f716b6373
--- /dev/null
+++ b/app/javascript/mastodon/locales/fo.json
@@ -0,0 +1,649 @@
+{
+  "about.blocks": "Tálmaðir ambætarar",
+  "about.contact": "Samband:",
+  "about.disclaimer": "Mastodon er fríur ritbúnaður við opnari keldu og eitt vørumerki hjá Mastodon gGmbH.",
+  "about.domain_blocks.no_reason_available": "Ókent orsøk",
+  "about.domain_blocks.preamble": "Yvirhøvur, so loyvir Mastodon tær at síggja innihald frá og at samvirka við brúkarar frá ein og hvørjum ambætara í fediverse. Undantøkini, sum eru gjørd á júst hesum ambætaranum, eru hesi.",
+  "about.domain_blocks.silenced.explanation": "Yvirhøvur, so sært tú ikki vangar og innihald frá hesum ambætaranum, uttan so at tú skilliga leitar hesi upp ella velur tey við at fylgja teimum.",
+  "about.domain_blocks.silenced.title": "Avmarkað",
+  "about.domain_blocks.suspended.explanation": "Ongar dátur frá hesum ambætara verða viðgjørd, goymd ella deild, tað ger, at samskifti við aðrar ambætarar er iki møguligt.",
+  "about.domain_blocks.suspended.title": "Koyrdur frá",
+  "about.not_available": "Hetta er ikki tøkt á føroyska servaranum enn.",
+  "about.powered_by": "Miðfirra almennur miðil koyrandi á {mastodon}",
+  "about.rules": "Ambætarareglur",
+  "account.account_note_header": "Viðmerking",
+  "account.add_or_remove_from_list": "Legg afturat ella tak av listum",
+  "account.badges.bot": "Bottur",
+  "account.badges.group": "Bólkur",
+  "account.block": "Banna @{name}",
+  "account.block_domain": "Banna økisnavnið {domain}",
+  "account.blocked": "Bannað/ur",
+  "account.browse_more_on_origin_server": "Kaga meira á upprunaligu vangamyndina",
+  "account.cancel_follow_request": "Strika fylgjaraumbøn",
+  "account.direct": "Beinleiðis boð @{name}",
+  "account.disable_notifications": "Ikki boða mær frá, tá @{name} skrivar",
+  "account.domain_blocked": "Økisnavn bannað",
+  "account.edit_profile": "Broyt vanga",
+  "account.enable_notifications": "Boða mær frá, tá @{name} skrivar",
+  "account.endorse": "Víst á vangamyndini",
+  "account.featured_tags.last_status_at": "Seinasta strongur skrivaður {date}",
+  "account.featured_tags.last_status_never": "Einki uppslag",
+  "account.featured_tags.title": "Tvíkrossar hjá {name}",
+  "account.follow": "Fylg",
+  "account.followers": "Fylgjarar",
+  "account.followers.empty": "Ongar fylgjarar enn.",
+  "account.followers_counter": "{count, plural, one {{counter} Fylgjari} other {{counter} Fylgjarar}}",
+  "account.following": "Fylgir",
+  "account.following_counter": "{count, plural, one {{counter} fylgir} other {{counter} fylgja}}",
+  "account.follows.empty": "Hesin brúkari fylgir ongum enn.",
+  "account.follows_you": "Fylgir tær",
+  "account.go_to_profile": "Far til vanga",
+  "account.hide_reblogs": "Fjal lyft frá @{name}",
+  "account.joined_short": "Gjørdist limur",
+  "account.languages": "Broyt fylgd mál",
+  "account.link_verified_on": "Ognarskapur av hesum leinki var eftirkannaður {date}",
+  "account.locked_info": "Privatverjustøðan hjá hesi kontuni er sett til at vera læst. Eigarin avger í hvørjum einstøkum føri, hvør kann fylgja teimum.",
+  "account.media": "Miðlar",
+  "account.mention": "Nevn @{name}",
+  "account.moved_to": "{name} hevur gjørt kunnugt, at teirra nýggja konta er nú:",
+  "account.mute": "Sløkk @{name}",
+  "account.mute_notifications": "Sløkk fráboðanir frá @{name}",
+  "account.muted": "Sløkt/ur",
+  "account.open_original_page": "Opna upprunasíðuna",
+  "account.posts": "Uppsløg",
+  "account.posts_with_replies": "Uppsløg og svar",
+  "account.report": "Melda @{name}",
+  "account.requested": "Bíðar eftir góðkenning. Trýst fyri at angra umbønina",
+  "account.share": "Deil vanga @{name}'s",
+  "account.show_reblogs": "Vís lyft frá @{name}",
+  "account.statuses_counter": "{count, plural, one {{counter} postur} other {{counter} postar}}",
+  "account.unblock": "Banna ikki @{name}",
+  "account.unblock_domain": "Banna ikki økisnavnið {domain}",
+  "account.unblock_short": "Banna ikki",
+  "account.unendorse": "Vís ikki á vanga",
+  "account.unfollow": "Fylg ikki",
+  "account.unmute": "Doyv ikki @{name}",
+  "account.unmute_notifications": "Doyv ikki fráboðanum frá @{name}",
+  "account.unmute_short": "Doyv ikki",
+  "account_note.placeholder": "Klikka fyri at leggja notu afturat",
+  "admin.dashboard.daily_retention": "Hvussu nógvir brúkarar eru eftir, síðani tey skrásettu seg, roknað í døgum",
+  "admin.dashboard.monthly_retention": "Hvussu nógvir brúkarar eru eftir síðani tey skrásettu seg, roknað í mánaðum",
+  "admin.dashboard.retention.average": "Miðal",
+  "admin.dashboard.retention.cohort": "Skrásetingarmánaði",
+  "admin.dashboard.retention.cohort_size": "Nýggir brúkarar",
+  "alert.rate_limited.message": "Vinarliga royn aftur aftaná {retry_time, time, medium}.",
+  "alert.rate_limited.title": "Avmarkaður títtleiki",
+  "alert.unexpected.message": "Ein óvæntaður feilur kom fyri.",
+  "alert.unexpected.title": "Ups!",
+  "announcement.announcement": "Kunngerð",
+  "attachments_list.unprocessed": "(óviðgjørt)",
+  "audio.hide": "Fjal ljóð",
+  "autosuggest_hashtag.per_week": "{count} um vikuna",
+  "boost_modal.combo": "Tú kanst trýsta á {combo} fyri at loypa uppum hetta næstu ferð",
+  "bundle_column_error.copy_stacktrace": "Avrita feilfráboðan",
+  "bundle_column_error.error.body": "Umbidna síðan kann ikki vísast. Tað kann vera orsakað av einum feili í koduni hjá okkum ella tað kann vera orsakað av kaganum, sum tú brúkar.",
+  "bundle_column_error.error.title": "Áh, nei!",
+  "bundle_column_error.network.body": "Har hendir ein feilur, tá hendan síðan var tikin fram. Tað kann vera orsakað av einum bráðfeingis trupulleika við netsambandinum hjá tær ella við hesum ambætaranum.",
+  "bundle_column_error.network.title": "Netverksfeilur",
+  "bundle_column_error.retry": "Royn umaftur",
+  "bundle_column_error.return": "Aftur til forsíðuna",
+  "bundle_column_error.routing.body": "Tað bar ikki til at finna umbidnu síðuna. Er URL'urin rættur?",
+  "bundle_column_error.routing.title": "404",
+  "bundle_modal_error.close": "Lat aftur",
+  "bundle_modal_error.message": "Okkurt gekk galið, tá hesin komponenturin bleiv innlisin.",
+  "bundle_modal_error.retry": "Royn umaftur",
+  "closed_registrations.other_server_instructions": "Av tí at Mastodon er desentraliserað, kanst tú stovna eina kontu á einum øðrum ambætara og framvegis virka saman við hesum ambætaranum.",
+  "closed_registrations_modal.description": "Tað er ikki møguligt at stovna sær eina kontu á {domain} í løtuni, men vinarliga hav í huga at tær nýtist ikki eina kontu á júst {domain} fyri at brúka Mastodon.",
+  "closed_registrations_modal.find_another_server": "Finn ein annan ambætara",
+  "closed_registrations_modal.preamble": "Mastodon er desentraliserað, so óansæð hvar tú stovnar tína kontu, so ber til hjá tær at fylgja og virka saman við einum og hvørjum á hesum ambætaranum. Tað ber enntá til at hýsa tí sjálvi!",
+  "closed_registrations_modal.title": "At stovna kontu á Mastodon",
+  "column.about": "Um",
+  "column.blocks": "Bannaðir brúkarar",
+  "column.bookmarks": "Bókamerki",
+  "column.community": "Lokal tíðarlinja",
+  "column.direct": "Beinleiðis boð",
+  "column.directory": "Blaða gjøgnum vangar",
+  "column.domain_blocks": "Bannað økisnøvn",
+  "column.favourites": "Dámd",
+  "column.follow_requests": "Umbønir at fylgja",
+  "column.home": "Heim",
+  "column.lists": "Listar",
+  "column.mutes": "Sløktir brúkarar",
+  "column.notifications": "Fráboðanir",
+  "column.pins": "Festir postar",
+  "column.public": "Felags tíðarlinja",
+  "column_back_button.label": "Aftur",
+  "column_header.hide_settings": "Fjal stillingar",
+  "column_header.moveLeft_settings": "Flyt teigin til vinstru",
+  "column_header.moveRight_settings": "Flyt teigin til høgru",
+  "column_header.pin": "Fest",
+  "column_header.show_settings": "Vís stillingar",
+  "column_header.unpin": "Loys",
+  "column_subheading.settings": "Stillingar",
+  "community.column_settings.local_only": "Einans lokalt",
+  "community.column_settings.media_only": "Einans miðlar",
+  "community.column_settings.remote_only": "Einans útifrá",
+  "compose.language.change": "Skift mál",
+  "compose.language.search": "Leita eftir málum...",
+  "compose_form.direct_message_warning_learn_more": "Fleiri upplýsingar",
+  "compose_form.encryption_warning": "Postar á Mastodon eru ikki bronglaðir úr enda í annan. Lat vera við at deila viðkvæmar upplýsingar á Mastodon.",
+  "compose_form.hashtag_warning": "Hesin posturin verður ikki listaður undir nøkrum frámerki, tí hann er ólistaður. Tað ber einans til at leita eftir almennum postum eftir frámerki.",
+  "compose_form.lock_disclaimer": "Kontoin hjá tær er ikki {locked}. Øll kunnu fylgja tær og lesa tað, tú bert letur fyljgarar lesa.",
+  "compose_form.lock_disclaimer.lock": "læst",
+  "compose_form.placeholder": "Hvat hevur tú í huga?",
+  "compose_form.poll.add_option": "Legg valmøguleika afturat",
+  "compose_form.poll.duration": "Atkvøðugreiðslutíð",
+  "compose_form.poll.option_placeholder": "Valmøguleiki {number}",
+  "compose_form.poll.remove_option": "Strika valmøguleikan",
+  "compose_form.poll.switch_to_multiple": "Broyt atkvøðugreiðslu til at loyva fleiri svarum",
+  "compose_form.poll.switch_to_single": "Broyt atkvøðugreiðslu til einstakt svar",
+  "compose_form.publish": "Legg út",
+  "compose_form.publish_form": "Legg út",
+  "compose_form.publish_loud": "{publish}!",
+  "compose_form.save_changes": "Goym broytingar",
+  "compose_form.sensitive.hide": "{count, plural, one {Frámerk tilfar sum viðkvæmt} other {Frámerk tilfar sum viðkvæmt}}",
+  "compose_form.sensitive.marked": "{count, plural, one {Tilfarið er frámerkt sum viðkvæmt} other {Tilfarið er frámerkt sum viðkvæmt}}",
+  "compose_form.sensitive.unmarked": "{count, plural, one {Tilfarið er ikki merkt sum viðkvæmt} other {Tilfarið er ikki merkt sum viðkvæmt}}",
+  "compose_form.spoiler.marked": "Ávaring um at strika innihald",
+  "compose_form.spoiler.unmarked": "Skriva ávaring um innihald",
+  "compose_form.spoiler_placeholder": "Skriva tína ávaring her",
+  "confirmation_modal.cancel": "Strika",
+  "confirmations.block.block_and_report": "Banna og melda",
+  "confirmations.block.confirm": "Banna",
+  "confirmations.block.message": "Ert tú vís/ur í, at tú vilt banna {name}?",
+  "confirmations.cancel_follow_request.confirm": "Tak umbønina aftur",
+  "confirmations.cancel_follow_request.message": "Er tað tilætlað, at tú tekur umbønina at fylgja {name} aftur?",
+  "confirmations.delete.confirm": "Strika",
+  "confirmations.delete.message": "Er tað tilætlað, at tú strikar hetta uppslagið?",
+  "confirmations.delete_list.confirm": "Strika",
+  "confirmations.delete_list.message": "Ert tú vís/ur í, at tú vilt strika hetta uppslagið?",
+  "confirmations.discard_edit_media.confirm": "Vraka",
+  "confirmations.discard_edit_media.message": "Tú hevur broytingar í miðlalýsingini ella undansýningini, sum ikki eru goymdar. Vilt tú kortini vraka?",
+  "confirmations.domain_block.confirm": "Banna heilum økisnavni",
+  "confirmations.domain_block.message": "Ert tú púra, púra vís/ur í, at tú vilt banna øllum {domain}? Í flestu førum er nóg mikið og betri, bert at banna ella doyva onkrum ávísum. Tú fert eingi evni at síggja frá økisnavninum á nakrari almennari tíðarrás ella í tínum fráboðanum. Tínir fylgjarar undir økisnavninum verða eisini strikaðir.",
+  "confirmations.logout.confirm": "Rita út",
+  "confirmations.logout.message": "Ert tú vís/ur í, at tú vilt útrita teg?",
+  "confirmations.mute.confirm": "Doyv",
+  "confirmations.mute.explanation": "Henda atgerð fjalir teirra postar og postar, ið nevna tey; men tey kunnu framvegis síggja tínar postar og fylgja tær.",
+  "confirmations.mute.message": "Ert tú vís/ur í, at tú vilt doyva {name}?",
+  "confirmations.redraft.confirm": "Sletta og skriva umaftur",
+  "confirmations.redraft.message": "Vilt tú veruliga strika hendan postin og í staðin gera hann til eina nýggja kladdu? Yndisfrámerki og framhevjanir blíva burtur, og svar til upprunapostin missa tilknýtið.",
+  "confirmations.reply.confirm": "Svara",
+  "confirmations.reply.message": "Svarar tú nú, verða boðini, sum tú ert í holt við at skriva yvirskrivað. Ert tú vís/ur í, at tú vilt halda fram?",
+  "confirmations.unfollow.confirm": "Fylg ikki",
+  "confirmations.unfollow.message": "Ert tú vís/ur í, at tú vil steðga við at fylgja {name}?",
+  "conversation.delete": "Strika samrøðu",
+  "conversation.mark_as_read": "Merk sum lisið",
+  "conversation.open": "Vís samrøðu",
+  "conversation.with": "Við {names}",
+  "copypaste.copied": "Avritað",
+  "copypaste.copy": "Avrita",
+  "directory.federated": "Frá tí kenda fediversinum",
+  "directory.local": "Einans frá {domain}",
+  "directory.new_arrivals": "Nýkomið",
+  "directory.recently_active": "Nýliga virkin",
+  "disabled_account_banner.account_settings": "Kontustillingar",
+  "disabled_account_banner.text": "Konta tín {disabledAccount} er í løtuni óvirkin.",
+  "dismissable_banner.community_timeline": "Hesir er nýggjastu almennu postarnir frá fólki, hvørs kontur eru hýstar av {domain}.",
+  "dismissable_banner.dismiss": "Avvís",
+  "dismissable_banner.explore_links": "Fólk tosa um hesi tíðindi, á hesum og øðrum ambætarum á miðspjadda netverkinum, júst nú.",
+  "dismissable_banner.explore_statuses": "Hesi uppsløg, frá hesum og øðrum ambætarum á miðspjadda netverkinum, hava framgongd á hesum ambætara júst nú.",
+  "dismissable_banner.explore_tags": "Hesi frámerki vinna í løtuni fótafesti millum fólk á hesum og øðrum ambætarum í desentrala netverkinum beint nú.",
+  "dismissable_banner.public_timeline": "Hetta eru nýggjastu almennu postarnir á hesum og øðrum ambætarum í desentrala netverkinum, sum hesin ambætarin kennir til.",
+  "embed.instructions": "Fell hendan postin inní á tínum vevstaði við at taka avrit av koduni niðanfyri.",
+  "embed.preview": "Soleiðis fer tað at síggja út:",
+  "emoji_button.activity": "Virksemi",
+  "emoji_button.clear": "Rudda",
+  "emoji_button.custom": "Tillaga",
+  "emoji_button.flags": "Fløgg",
+  "emoji_button.food": "Matur & Drekka",
+  "emoji_button.label": "Innset emoji",
+  "emoji_button.nature": "Náttúra",
+  "emoji_button.not_found": "Eingin kenslutekn funnin",
+  "emoji_button.objects": "Lutir",
+  "emoji_button.people": "Fólk",
+  "emoji_button.recent": "Javnan nýtt",
+  "emoji_button.search": "Leita...",
+  "emoji_button.search_results": "Leitiúrslit",
+  "emoji_button.symbols": "Ímyndir",
+  "emoji_button.travel": "Ferðing og støð",
+  "empty_column.account_suspended": "Kontan gjørd óvirkin",
+  "empty_column.account_timeline": "Einki uppslag her!",
+  "empty_column.account_unavailable": "Vangin er ikki tøkur",
+  "empty_column.blocks": "Tú hevur enn ikki bannað nakran brúkara.",
+  "empty_column.bookmarked_statuses": "Tú hevur enn einki goymt uppslag. Tú tú goymir eitt uppslag, kemur tað her.",
+  "empty_column.community": "Lokala tíðarlinjan er tóm. Skriva okkurt alment fyri at fáa boltin á rull!",
+  "empty_column.direct": "Tú hevur eingi beinleiðis boð enn. Tá tú sendir ella móttekur eini beinleiðis boð, so síggjast tey her.",
+  "empty_column.domain_blocks": "Enn eru eingi blokeraði domenir.",
+  "empty_column.explore_statuses": "Einki rák er beint nú. Royn aftur seinni!",
+  "empty_column.favourited_statuses": "Tú hevur ongar yndispostar enn. Tá tú gevur einum posti yndismerki, so sært tú hann her.",
+  "empty_column.favourites": "Eingin hevur givið hesum postinum yndismerki enn. Tá onkur ger, so sæst tað her.",
+  "empty_column.follow_recommendations": "Tað sær út sum, at eingi uppskot kundu fáast fram til tín. Tú kanst royna at brúka leiting fyri at finna fólk, sum tú kanska kennir, ella at kanna frámerki, sum eru vælumtókt í løtuni.",
+  "empty_column.follow_requests": "Tú hevur ongar umbønir um at verða fylgd/ur enn. Tá tú fær eina, so sæst hon her.",
+  "empty_column.hashtag": "Einki er í hesum frámerkinum enn.",
+  "empty_column.home": "Heima-tíðarlinjan hjá tær er tóm! Fylg fleiri fyri at fylla hana. {suggestions}",
+  "empty_column.home.suggestions": "Síggj nøkur uppskot",
+  "empty_column.list": "Einki er í hesum listanum enn. Tá limir í hesum listanum posta nýggjar postar, so síggjast teir her.",
+  "empty_column.lists": "Tú hevur ongar goymdar listar enn. Tá tú gert ein lista, so sært tú hann her.",
+  "empty_column.mutes": "Tú hevur enn ikki doyvt nakran brúkara.",
+  "empty_column.notifications": "Tú hevur ongar fráboðanir enn. Tá onnur samskifta við teg, so sær tú fráboðaninar her.",
+  "empty_column.public": "Einki er her! Skriva okkurt alment ella fylg brúkarum frá øðrum ambætarum fyri at fylla tilfar í",
+  "error.unexpected_crash.explanation": "Orsakað av einum feili í okkara kotu ella orsakað av at kagin hjá tær ikki er sambæriligur við skipanina, so bar ikki til at vísa hesa síðuna rætt.",
+  "error.unexpected_crash.explanation_addons": "Hendan síðan kundi ikki vísast rætt. Orsøkin til feilin er sannlíkt vegna eina uppíbygging í kaganum hjá tær ella vegna amboð til sjálvvirkandi umseting.",
+  "error.unexpected_crash.next_steps": "Royn at lesa síðuna inn av nýggjum. Hjálpir tað ikki, so kann vera, at tað ber til at brúka Mastodon við einum øðrum kaga ella við eini app.",
+  "error.unexpected_crash.next_steps_addons": "Royn at gera tey óvirkin og lesa síðuna inn av nýggjum. Hjálpir tað ikki, so kann vera, at tað ber til at brúka Mastodon við einum øðrum kaga ella við eini app.",
+  "errors.unexpected_crash.copy_stacktrace": "Avrita stakkaslóðina til setiborðið",
+  "errors.unexpected_crash.report_issue": "Fráboða trupulleika",
+  "explore.search_results": "Leitiúrslit",
+  "explore.title": "Rannsaka",
+  "filter_modal.added.context_mismatch_explanation": "Hesin filturbólkurin viðvíkur ikki kontekstinum, sum tú hevur fingið atgongd til hendan postin. Ynskir tú at posturin verður filtreraður í hesum kontekstinum eisini, so er neyðugt at tú rættar filtrið.",
+  "filter_modal.added.context_mismatch_title": "Ósamsvar við kontekst!",
+  "filter_modal.added.expired_explanation": "Hesin filturbólkurin er útgingin, og tú mást broyta dagfestingina fyri at hann skal virka.",
+  "filter_modal.added.expired_title": "Útgingið filtur!",
+  "filter_modal.added.review_and_configure": "Far til {settings_link} fyri at kanna og stilla hendan filturbólkin.",
+  "filter_modal.added.review_and_configure_title": "Filturstillingar",
+  "filter_modal.added.settings_link": "síða við stillingum",
+  "filter_modal.added.short_explanation": "Hesin posturin er lagdur afturat hesum filturbólkinum: {title}.",
+  "filter_modal.added.title": "Filtur lagt afturat!",
+  "filter_modal.select_filter.context_mismatch": "viðvíkur ikki hesum kontekstinum",
+  "filter_modal.select_filter.expired": "útgingið",
+  "filter_modal.select_filter.prompt_new": "Nýggjur bólkur: {name}",
+  "filter_modal.select_filter.search": "Leita ella skapa",
+  "filter_modal.select_filter.subtitle": "Brúka ein verandi bólk ella skapa ein nýggjan",
+  "filter_modal.select_filter.title": "Filtrera hendan postin",
+  "filter_modal.title.status": "Filtrera ein post",
+  "follow_recommendations.done": "Liðugt",
+  "follow_recommendations.heading": "Fylg fólki, sum tú hevur hug at síggja postar frá! Her eru nøkur boð.",
+  "follow_recommendations.lead": "Postar frá fólki, sum tú fylgir, verða vístir í tíðarrøð á heimarásini hjá tær. Ver ikki bangin fyri at gera feilir; tú kanst gevast at fylgja fólki eins lættliga nær sum helst!",
+  "follow_request.authorize": "Veit myndugleika",
+  "follow_request.reject": "Nokta",
+  "follow_requests.unlocked_explanation": "Sjálvt um konta tín ikki er læst, so hugsa {domain} starvsfólkini, at tú kanska hevur hug at kanna umbønir um at fylgja frá hesum kontum við hond.",
+  "footer.about": "Um",
+  "footer.directory": "Vangaskrá",
+  "footer.get_app": "Heinta appina",
+  "footer.invite": "Bjóða fólki",
+  "footer.keyboard_shortcuts": "Knappasnarvegir",
+  "footer.privacy_policy": "Privatlívspolitikkur",
+  "footer.source_code": "Vís keldukotuna",
+  "generic.saved": "Goymt",
+  "getting_started.heading": "At byrja",
+  "hashtag.column_header.tag_mode.all": "og {additional}",
+  "hashtag.column_header.tag_mode.any": "ella {additional}",
+  "hashtag.column_header.tag_mode.none": "uttan {additional}",
+  "hashtag.column_settings.select.no_options_message": "Einki uppskot funnið",
+  "hashtag.column_settings.select.placeholder": "Áset fráboðanarmerki…",
+  "hashtag.column_settings.tag_mode.all": "Øll hesi",
+  "hashtag.column_settings.tag_mode.any": "Okkurt av hesum",
+  "hashtag.column_settings.tag_mode.none": "Einki av hesum",
+  "hashtag.column_settings.tag_toggle": "Legg frámerki afturat hesum teigi",
+  "hashtag.follow": "Fylg frámerki",
+  "hashtag.unfollow": "Gevst at fylgja frámerki",
+  "home.column_settings.basic": "Grundleggjandi",
+  "home.column_settings.show_reblogs": "Vís lyft",
+  "home.column_settings.show_replies": "Vís svar",
+  "home.hide_announcements": "Fjal kunngerðir",
+  "home.show_announcements": "Vís kunngerðir",
+  "interaction_modal.description.favourite": "Við einari kontu á Mastodon kanst tú dáma hetta uppslagið fyri at vísa rithøvundanum at tú virðismetur tað og goymir tað til seinni.",
+  "interaction_modal.description.follow": "Við eini kontu á Mastodon kanst tú fylgja {name} fyri at síggja teirra postar á tíni heimarás.",
+  "interaction_modal.description.reblog": "Við eini kontu á Mastodon kanst tú stimbra hendan postin og soleiðis deila hann við tínar fylgjarar.",
+  "interaction_modal.description.reply": "Við eini kontu á Mastodon, so kanst tú svara hesum posti.",
+  "interaction_modal.on_another_server": "Á øðrum ambætara",
+  "interaction_modal.on_this_server": "Á hesum ambætaranum",
+  "interaction_modal.other_server_instructions": "Kopiera og set hendan URLin inn í leititeigin í tíni yndis-Mastodon-app ella í vev-markamótið á tínum Mastodon-ambætara.",
+  "interaction_modal.preamble": "Av tí at Mastodon er desentraliserað, kanst tú brúka tína kontu frá einum øðrum Mastodon ambætara ella sambærligum palli, um tú ikki hevur eina kontu á hesum ambætaranum.",
+  "interaction_modal.title.favourite": "Dáma {name}sa uppslag",
+  "interaction_modal.title.follow": "Fylg {name}",
+  "interaction_modal.title.reblog": "Stimbra postin hjá {name}",
+  "interaction_modal.title.reply": "Svara postinum hjá {name}",
+  "intervals.full.days": "{number, plural, one {# dagur} other {# dagar}}",
+  "intervals.full.hours": "{number, plural, one {# tími} other {# tímar}}",
+  "intervals.full.minutes": "{number, plural, one {# minuttur} other {# minuttir}}",
+  "keyboard_shortcuts.back": "Bakka",
+  "keyboard_shortcuts.blocked": "Siggj listan við bannaðum brúkarum",
+  "keyboard_shortcuts.boost": "Lyft post",
+  "keyboard_shortcuts.column": "Fá teig í miðdepilin",
+  "keyboard_shortcuts.compose": "Fá skriviøkið í miðdeplin",
+  "keyboard_shortcuts.description": "Frágreiðing",
+  "keyboard_shortcuts.direct": "fyri at lata teig við beinleiðis boðum upp",
+  "keyboard_shortcuts.down": "Flyt niðureftir listanum",
+  "keyboard_shortcuts.enter": "Opna uppslag",
+  "keyboard_shortcuts.favourite": "Dáma uppslag",
+  "keyboard_shortcuts.favourites": "Opna listan av dámdum",
+  "keyboard_shortcuts.federated": "Lat felags tíðslinju upp",
+  "keyboard_shortcuts.heading": "Snarknappar",
+  "keyboard_shortcuts.home": "Lat heimatíðarlinju upp",
+  "keyboard_shortcuts.hotkey": "Snarknappur",
+  "keyboard_shortcuts.legend": "Vís henda tekstin",
+  "keyboard_shortcuts.local": "Lat lokala tíðarlinju upp",
+  "keyboard_shortcuts.mention": "Nevn rithøvund",
+  "keyboard_shortcuts.muted": "Lat upp lista við doyvdum brúkarum",
+  "keyboard_shortcuts.my_profile": "Lat vanga tín upp",
+  "keyboard_shortcuts.notifications": "Lat fráboðanarteig upp",
+  "keyboard_shortcuts.open_media": "Lat miðlar upp",
+  "keyboard_shortcuts.pinned": "Lat lista yvir festar postar upp",
+  "keyboard_shortcuts.profile": "Lat vangan hjá høvundinum upp",
+  "keyboard_shortcuts.reply": "Svara posti",
+  "keyboard_shortcuts.requests": "Lat lista við fylgjaraumbønum upp",
+  "keyboard_shortcuts.search": "Fá leitibjálka í miðdepilin",
+  "keyboard_shortcuts.spoilers": "Vís/fjal CW teig",
+  "keyboard_shortcuts.start": "Lat \"kom í gongd\" teig upp",
+  "keyboard_shortcuts.toggle_hidden": "Vís/fjal tekst handan CW",
+  "keyboard_shortcuts.toggle_sensitivity": "Vís ella fjal innihald",
+  "keyboard_shortcuts.toot": "Byrja nýggjan post",
+  "keyboard_shortcuts.unfocus": "Tak skrivi-/leiti-økið úr miðdeplinum",
+  "keyboard_shortcuts.up": "Flyt upp á listanum",
+  "lightbox.close": "Lat aftur",
+  "lightbox.compress": "Kroyst myndavísikassa saman",
+  "lightbox.expand": "Víðka myndavísikassa",
+  "lightbox.next": "Fram",
+  "lightbox.previous": "Aftur",
+  "limited_account_hint.action": "Vís vangamynd kortini",
+  "limited_account_hint.title": "Hesin vangin er fjaldur av kjakleiðarunum á {domain}.",
+  "lists.account.add": "Legg afturat lista",
+  "lists.account.remove": "Tak av lista",
+  "lists.delete": "Strika lista",
+  "lists.edit": "Broyt lista",
+  "lists.edit.submit": "Broyt heiti",
+  "lists.new.create": "Ger nýggjan lista",
+  "lists.new.title_placeholder": "Nýtt navn á lista",
+  "lists.replies_policy.followed": "Øllum fylgdum brúkarum",
+  "lists.replies_policy.list": "Listalimunum",
+  "lists.replies_policy.none": "Eingin",
+  "lists.replies_policy.title": "Vís svarini fyri:",
+  "lists.search": "Leita millum fólk, sum tú fylgir",
+  "lists.subheading": "Tínir listar",
+  "load_pending": "{count, plural, one {# nýtt evni} other {# nýggj evni}}",
+  "loading_indicator.label": "Innlesi...",
+  "media_gallery.toggle_visible": "{number, plural, one {Fjal mynd} other {Fjal myndir}}",
+  "missing_indicator.label": "Ikki funnið",
+  "missing_indicator.sublabel": "Ikki bar til at finna hetta tilfarið",
+  "moved_to_account_banner.text": "Konta tín {disabledAccount} er í løtuni óvirkin, tí tú flutti til {movedToAccount}.",
+  "mute_modal.duration": "Tíðarbil",
+  "mute_modal.hide_notifications": "Fjal fráboðanir frá hesum brúkaranum?",
+  "mute_modal.indefinite": "Óásett tíðarskeið",
+  "navigation_bar.about": "Um",
+  "navigation_bar.blocks": "Bannaðir brúkarar",
+  "navigation_bar.bookmarks": "Goymd",
+  "navigation_bar.community_timeline": "Lokal tíðarlinja",
+  "navigation_bar.compose": "Skriva nýggjan post",
+  "navigation_bar.direct": "Beinleiðis boð",
+  "navigation_bar.discover": "Uppdaga",
+  "navigation_bar.domain_blocks": "Bannað økisnøvn",
+  "navigation_bar.edit_profile": "Broyt vanga",
+  "navigation_bar.explore": "Kanna",
+  "navigation_bar.favourites": "Dámd",
+  "navigation_bar.filters": "Doyvd orð",
+  "navigation_bar.follow_requests": "Umbønir um at fylgja",
+  "navigation_bar.follows_and_followers": "Fylgd og fylgjarar",
+  "navigation_bar.lists": "Listar",
+  "navigation_bar.logout": "Rita út",
+  "navigation_bar.mutes": "Doyvdir brúkarar",
+  "navigation_bar.personal": "Persónligt",
+  "navigation_bar.pins": "Festir postar",
+  "navigation_bar.preferences": "Sertokki",
+  "navigation_bar.public_timeline": "Felags tíðarlinja",
+  "navigation_bar.search": "Leita",
+  "navigation_bar.security": "Trygd",
+  "not_signed_in_indicator.not_signed_in": "Tú mást rita inn fyri at fáa atgongd til hetta tilfarið.",
+  "notification.admin.report": "{name} hevur meldað {target}",
+  "notification.admin.sign_up": "{name} meldaði seg til",
+  "notification.favourite": "{name} dámdi títt uppslag",
+  "notification.follow": "{name} fylgdi tær",
+  "notification.follow_request": "{name} biður um at fylgja tær",
+  "notification.mention": "{name} nevndi teg",
+  "notification.own_poll": "Tín atkvøðugreiðsla er endað",
+  "notification.poll": "Ein atkvøðugreiðsla, har tú hevur atkvøtt, er endað",
+  "notification.reblog": "{name} lyfti tín post",
+  "notification.status": "{name} hevur júst postað",
+  "notification.update": "{name} rættaði ein post",
+  "notifications.clear": "Rudda fráboðanir",
+  "notifications.clear_confirmation": "Ert tú vís/ur í, at tú vilt strika allar tínar fráboðanir?",
+  "notifications.column_settings.admin.report": "Nýggjar fráboðanir:",
+  "notifications.column_settings.admin.sign_up": "Nýggjar tilmeldingar:",
+  "notifications.column_settings.alert": "Skriviborðsfráboðanir",
+  "notifications.column_settings.favourite": "Dámd:",
+  "notifications.column_settings.filter_bar.advanced": "Vís allar bólkar",
+  "notifications.column_settings.filter_bar.category": "Skjótfilturbjálki",
+  "notifications.column_settings.filter_bar.show_bar": "Vís filturbjálka",
+  "notifications.column_settings.follow": "Nýggir fylgjarar:",
+  "notifications.column_settings.follow_request": "Nýggjar umbønir um at fylgja:",
+  "notifications.column_settings.mention": "Umrøður:",
+  "notifications.column_settings.poll": "Úrslit frá atkvøðugreiðslu:",
+  "notifications.column_settings.push": "Trýstifráboðanir",
+  "notifications.column_settings.reblog": "Stimbranir:",
+  "notifications.column_settings.show": "Vís í teigi",
+  "notifications.column_settings.sound": "Spæl ljóð",
+  "notifications.column_settings.status": "Nýggir postar:",
+  "notifications.column_settings.unread_notifications.category": "Ólisnar fráboðanir",
+  "notifications.column_settings.unread_notifications.highlight": "Hálýs ólisnar fráboðanir",
+  "notifications.column_settings.update": "Rættingar:",
+  "notifications.filter.all": "Øll",
+  "notifications.filter.boosts": "Stimbranir",
+  "notifications.filter.favourites": "Dámd",
+  "notifications.filter.follows": "Fylgir",
+  "notifications.filter.mentions": "Umrøður",
+  "notifications.filter.polls": "Úrslit av atkvøðugreiðslu",
+  "notifications.filter.statuses": "Dagføringar frá fólki, tú kennur",
+  "notifications.grant_permission": "Gev lovi.",
+  "notifications.group": "{count} fráboðanir",
+  "notifications.mark_as_read": "Merk allar fráboðanir sum lisnar",
+  "notifications.permission_denied": "Skriviborðsfráboðanir eru ikki tøkar tí at ein kaga-umbøn áður bleiv noktað",
+  "notifications.permission_denied_alert": "Tað ber ikki til at sláa skriviborðsfráboðanir til, tí at kagarættindi áður eru noktaði",
+  "notifications.permission_required": "Skriviborðsfráboðanir eru ikki tøkar, tí at neyðugu rættindini eru ikki latin.",
+  "notifications_permission_banner.enable": "Ger skriviborðsfráboðanir virknar",
+  "notifications_permission_banner.how_to_control": "Ger skriviborðsfráboðanir virknar fyri at móttaka fráboðanir, tá Mastodon ikki er opið. Tá tær eru gjørdar virknar, kanst tú stýra, hvørji sløg av samvirkni geva skriviborðsfráboðanir. Hetta umvegis {icon} knøttin omanfyri.",
+  "notifications_permission_banner.title": "Miss einki",
+  "picture_in_picture.restore": "Legg hana aftur",
+  "poll.closed": "Endað",
+  "poll.refresh": "Endurles",
+  "poll.total_people": "{count, plural, one {# persónur} other {# persónar}}",
+  "poll.total_votes": "{count, plural, one {# atkvøða} other {# atkvøður}}",
+  "poll.vote": "Atkvøð",
+  "poll.voted": "Hetta atkvøddi tú",
+  "poll.votes": "{votes, plural, one {# atkvøða} other {# atkvøður}}",
+  "poll_button.add_poll": "Legg atkvøðugreiðslu afturat",
+  "poll_button.remove_poll": "Strika atkvøðugreiðslu",
+  "privacy.change": "Broyt privatverju av posti",
+  "privacy.direct.long": "Bert sjónligt hjá nevndum brúkarum",
+  "privacy.direct.short": "Bert nevnd fólk",
+  "privacy.private.long": "Bert sjónligt hjá fylgjarum",
+  "privacy.private.short": "Einans fylgjarar",
+  "privacy.public.long": "Sjónligt hjá øllum",
+  "privacy.public.short": "Alment",
+  "privacy.unlisted.long": "Sjónligur fyri øll, men ikki gjøgnum uppdagingarhentleikarnar",
+  "privacy.unlisted.short": "Ikki listað",
+  "privacy_policy.last_updated": "Seinast dagført {date}",
+  "privacy_policy.title": "Privatlívspolitikkur",
+  "refresh": "Endurles",
+  "regeneration_indicator.label": "Innlesur…",
+  "regeneration_indicator.sublabel": "Tín heimarás verður gjørd klár!",
+  "relative_time.days": "{number}d",
+  "relative_time.full.days": "{number, plural, one {# dagur} other {# dagar}} síðani",
+  "relative_time.full.hours": "{number, plural, one {# tími} other {# tímar}} síðani",
+  "relative_time.full.just_now": "júst nú",
+  "relative_time.full.minutes": "{number, plural, one {# minuttur} other {# minuttir}} síðani",
+  "relative_time.full.seconds": "{number, plural, one {# sekund} other {# sekund}} síðani",
+  "relative_time.hours": "{number}t",
+  "relative_time.just_now": "nú",
+  "relative_time.minutes": "{number}m",
+  "relative_time.seconds": "{number}s",
+  "relative_time.today": "í dag",
+  "reply_indicator.cancel": "Ógilda",
+  "report.block": "Blokera",
+  "report.block_explanation": "Tú fer ikki at síggja postarnar hjá teimum. Tey kunnu ikki síggja tínar postar ella fylgja tær. Tey síggja, at tey eru blokeraði.",
+  "report.categories.other": "Onnur",
+  "report.categories.spam": "Ruskpostur",
+  "report.categories.violation": "Innihaldið brýtur eina ella fleiri ambætarareglur",
+  "report.category.subtitle": "Vel besta boðið",
+  "report.category.title": "Fortel okkum, hvat hendir við hesum {type}",
+  "report.category.title_account": "vangi",
+  "report.category.title_status": "postinum",
+  "report.close": "Liðugt",
+  "report.comment.title": "Er nakað annað, sum tú heldur, at vit áttu at vitað?",
+  "report.forward": "Víðarisend til {target}",
+  "report.forward_hint": "Kontan er frá einum øðrum ambætara. Send eitt dulnevnt avrit av meldingini hagar eisini?",
+  "report.mute": "Doyv",
+  "report.mute_explanation": "Tú fert ikki at síggja teirra uppsløg. Tey kunnu framvegis fylgja tær og síggja tíni uppsløg og fara ikki at vita av, at tey eru doyvd.",
+  "report.next": "Næsta",
+  "report.placeholder": "Aðrar viðmerkingar",
+  "report.reasons.dislike": "Mær dámar tað ikki",
+  "report.reasons.dislike_description": "Tú ynskir ikki at síggja hetta",
+  "report.reasons.other": "Tað er nakað annað",
+  "report.reasons.other_description": "Evnið hóskar ikki inn í aðrar bólkar",
+  "report.reasons.spam": "Tað er ruskpostur",
+  "report.reasons.spam_description": "Meinfýsin leinki, følsk hugbinding ella endurtakandi svar",
+  "report.reasons.violation": "Tað brýtur ambætarareglur",
+  "report.reasons.violation_description": "Tú er varug/ur við, at tað brýtur ávísar reglur",
+  "report.rules.subtitle": "Vel alt viðkomandi",
+  "report.rules.title": "Hvørjar reglur verða brotnar?",
+  "report.statuses.subtitle": "Vel alt viðkomandi",
+  "report.statuses.title": "Eru nakrir postar, sum stuðla uppundir hesa meldingina?",
+  "report.submit": "Send inn",
+  "report.target": "Meldi {target}",
+  "report.thanks.take_action": "Her eru tínir møguleikar fyri at stýra, hvat tú sær á Mastodon:",
+  "report.thanks.take_action_actionable": "Meðan vit kanna hetta, kanst tú taka hóskandi fyrivarni móti @{name}:",
+  "report.thanks.title": "Vil tú ikki síggja hetta?",
+  "report.thanks.title_actionable": "Takk fyri meldingina; vit kanna tað nærri.",
+  "report.unfollow": "Gevst at fylgja @{name}",
+  "report.unfollow_explanation": "Tú fylgir hesi kontuni. Gevst at fylgja henni, um tú ikki longur ynskir at síggja postarnar á heimarásini hjá tær.",
+  "report_notification.attached_statuses": "{count, plural, one {{count} postur atknýttur} other {{count} postar atknýttir}}",
+  "report_notification.categories.other": "Aðrir",
+  "report_notification.categories.spam": "Ruskpostur",
+  "report_notification.categories.violation": "Brotin regla",
+  "report_notification.open": "Opna melding",
+  "search.placeholder": "Leita",
+  "search.search_or_paste": "Leita ella set URL inn",
+  "search_popout.search_format": "Framkomið leiti-forsnið",
+  "search_popout.tips.full_text": "Einfaldur tekstur gevur aftur postar, sum tú hevur skrivað, yndismerkt, stimbrað ella er nevnd/ur í, umframt samsvarandi brúkaranøvn, víst nøvn og frámerki.",
+  "search_popout.tips.hashtag": "frámerki",
+  "search_popout.tips.status": "postur",
+  "search_popout.tips.text": "Einfaldur tekstur gevur aftur víst nøvn, brúkaranøvn og frámerki",
+  "search_popout.tips.user": "brúkari",
+  "search_results.accounts": "Fólk",
+  "search_results.all": "Alt",
+  "search_results.hashtags": "Frámerki",
+  "search_results.nothing_found": "Hesi leitiorð góvu ongi úrslit",
+  "search_results.statuses": "Postar",
+  "search_results.statuses_fts_disabled": "Á hesum Mastodon-ambætaranum ber ikki til at leita eftir postum eftir innihaldi.",
+  "search_results.title": "Leita eftir {q}",
+  "search_results.total": "{count, number} {count, plural, one {úrslit} other {úrslit}}",
+  "server_banner.about_active_users": "Fólk, sum hava brúkt hendan ambætaran seinastu 30 dagarnar (mánaðarligir virknir brúkarar)",
+  "server_banner.active_users": "virknir brúkarar",
+  "server_banner.administered_by": "Umsitari:",
+  "server_banner.introduction": "{domain} er partur av desentrala sosiala netverkinum, sum er drivið av {mastodon}.",
+  "server_banner.learn_more": "Lær meira",
+  "server_banner.server_stats": "Ambætarahagtøl:",
+  "sign_in_banner.create_account": "Stovna kontu",
+  "sign_in_banner.sign_in": "Rita inn",
+  "sign_in_banner.text": "Innrita fyri at fylgja vangum og frámerkjum, seta yndismerki á, deila og svara postum, ella at brúka kontuna til at samvirka á einum øðrum ambætara.",
+  "status.admin_account": "Lat kjakleiðaramarkamót upp fyri @{name}",
+  "status.admin_status": "Lat hendan postin upp í kjakleiðaramarkamótinum",
+  "status.block": "Blokera @{name}",
+  "status.bookmark": "Goym",
+  "status.cancel_reblog_private": "Strika stimbran",
+  "status.cannot_reblog": "Tað ber ikki til at stimbra hendan postin",
+  "status.copy": "Kopiera leinki til postin",
+  "status.delete": "Strika",
+  "status.detailed_status": "Útgreinað samrøðusýni",
+  "status.direct": "Beinleiðis boð @{name}",
+  "status.edit": "Rætta",
+  "status.edited": "Rættað {date}",
+  "status.edited_x_times": "Rættað {count, plural, one {{count} ferð} other {{count} ferð}}",
+  "status.embed": "Legg inní",
+  "status.favourite": "Dámað",
+  "status.filter": "Filtrera hendan postin",
+  "status.filtered": "Filtrerað",
+  "status.hide": "Fjal post",
+  "status.history.created": "{name} stovnað {date}",
+  "status.history.edited": "{name} rættað {date}",
+  "status.load_more": "Tak meira niður",
+  "status.media_hidden": "Miðil fjaldur",
+  "status.mention": "Nevn @{name}",
+  "status.more": "Meira",
+  "status.mute": "Doyv @{name}",
+  "status.mute_conversation": "Doyv samrøðu",
+  "status.open": "Víðka henda postin",
+  "status.pin": "Ger fastan í vangan",
+  "status.pinned": "Festur postur",
+  "status.read_more": "Les meira",
+  "status.reblog": "Stimbra",
+  "status.reblog_private": "Stimbra við upprunasýni",
+  "status.reblogged_by": "{name} stimbrað",
+  "status.reblogs.empty": "Eingin hevur stimbrað hendan postin enn. Tá onkur stimbrar postin, verður hann sjónligur her.",
+  "status.redraft": "Strika & ger nýggja kladdu",
+  "status.remove_bookmark": "Gloym",
+  "status.replied_to": "Svaraði {name}",
+  "status.reply": "Svara",
+  "status.replyAll": "Svara tráðnum",
+  "status.report": "Melda @{name}",
+  "status.sensitive_warning": "Viðkvæmt tilfar",
+  "status.share": "Deil",
+  "status.show_filter_reason": "Vís kortini",
+  "status.show_less": "Vís minni",
+  "status.show_less_all": "Vís øllum minni",
+  "status.show_more": "Vís meira",
+  "status.show_more_all": "Vís øllum meira",
+  "status.show_original": "Vís upprunaliga",
+  "status.translate": "Umset",
+  "status.translated_from_with": "Umsett frá {lang} við {provider}",
+  "status.uncached_media_warning": "Ikki tøkt",
+  "status.unmute_conversation": "Strika doyving av samrøðu",
+  "status.unpin": "Loys frá vanga",
+  "subscribed_languages.lead": "Eftir broytingina fara einans postar á valdum málum at síggjast á tíni heimarás og á tínum listatíðarlinjum. Vel ongi fyri at fáa postar á øllum málum.",
+  "subscribed_languages.save": "Goym broytingar",
+  "subscribed_languages.target": "Broyt haldaramál fyri {target}",
+  "suggestions.dismiss": "Avvís uppskot",
+  "suggestions.header": "Tú er møguliga áhugað/ur í…",
+  "tabs_bar.federated_timeline": "Felags",
+  "tabs_bar.home": "Heim",
+  "tabs_bar.local_timeline": "Lokalt",
+  "tabs_bar.notifications": "Fráboðanir",
+  "time_remaining.days": "{number, plural, one {# dagur} other {# dagar}} eftir",
+  "time_remaining.hours": "{number, plural, one {# tími} other {# tímar}} eftir",
+  "time_remaining.minutes": "{number, plural, one {# minuttur} other {# minuttir}} eftir",
+  "time_remaining.moments": "Lítið bil eftir",
+  "time_remaining.seconds": "{number, plural, one {# sekund} other {# sekund}} eftir",
+  "timeline_hint.remote_resource_not_displayed": "{resource} frá øðrum ambætarum verður ikki víst.",
+  "timeline_hint.resources.followers": "Fylgjarar",
+  "timeline_hint.resources.follows": "Fylgir",
+  "timeline_hint.resources.statuses": "Gamlir postar",
+  "trends.counter_by_accounts": "{count, plural, one {{counter} persónur} other {{counter} persónar}} {days, plural, one {seinasta dagin} other {{days} seinastu dagarnar}}",
+  "trends.trending_now": "Rák beint nú",
+  "ui.beforeunload": "Kladdan verður mist, um tú fer úr Mastodon.",
+  "units.short.billion": "{count} mia.",
+  "units.short.million": "{count} mn.",
+  "units.short.thousand": "{count} túsund",
+  "upload_area.title": "Hála og slepp fyri at leggja upp",
+  "upload_button.label": "Legg myndir, sjónfílu ella ljóðfílu afturat",
+  "upload_error.limit": "Farið er um markið fyri fíluuppsending.",
+  "upload_error.poll": "Ikki loyvt at leggja fílur upp í spurnarkanningum.",
+  "upload_form.audio_description": "Lýsing, av innihaldi, fyri deyv",
+  "upload_form.description": "Lýsing, av innihaldi, fyri blind og sjónveik",
+  "upload_form.description_missing": "Lýsing vantar",
+  "upload_form.edit": "Rætta",
+  "upload_form.thumbnail": "Broyt smámynd",
+  "upload_form.undo": "Strika",
+  "upload_form.video_description": "Lýsing fyri deyv, blind og sjónveik",
+  "upload_modal.analyzing_picture": "Greini mynd…",
+  "upload_modal.apply": "Ger virkið",
+  "upload_modal.applying": "Geri virkið…",
+  "upload_modal.choose_image": "Vel mynd",
+  "upload_modal.description_placeholder": "Ein skjótur brúnur revur loypur uppum dovna hundin",
+  "upload_modal.detect_text": "Finn text á mynd",
+  "upload_modal.edit_media": "Broyt miðil",
+  "upload_modal.hint": "Klikk ella drag sirkulin á undanvísingini fyri at velja brennidepilspunktið, sum altíð fer at vera sjónligt á øllum smámyndum.",
+  "upload_modal.preparing_ocr": "Fyrireiki OCR…",
+  "upload_modal.preview_label": "Undanvísing ({ratio})",
+  "upload_progress.label": "Leggi upp...",
+  "upload_progress.processing": "Viðgeri…",
+  "video.close": "Lat sjónfílu aftur",
+  "video.download": "Tak fílu niður",
+  "video.exit_fullscreen": "Far úr fullum skermi",
+  "video.expand": "Víðka sjónfílu",
+  "video.fullscreen": "Fullur skermur",
+  "video.hide": "Fjal sjónfílu",
+  "video.mute": "Sløkk ljóðið",
+  "video.pause": "Steðga á",
+  "video.play": "Spæl",
+  "video.unmute": "Tendra ljóðið"
+}
diff --git a/app/javascript/mastodon/locales/fr-QC.json b/app/javascript/mastodon/locales/fr-QC.json
new file mode 100644
index 000000000..d0d84fa4a
--- /dev/null
+++ b/app/javascript/mastodon/locales/fr-QC.json
@@ -0,0 +1,649 @@
+{
+  "about.blocks": "Serveurs modérés",
+  "about.contact": "Contact:",
+  "about.disclaimer": "Mastodon est un logiciel open-source gratuit et une marque déposée de Mastodon gGmbH.",
+  "about.domain_blocks.no_reason_available": "Raison non disponible",
+  "about.domain_blocks.preamble": "Mastodon vous permet généralement de visualiser le contenu et d'interagir avec des comptes de n'importe quel serveur dans le fediverse. Voici les exceptions qui ont été faites sur ce serveur en particulier.",
+  "about.domain_blocks.silenced.explanation": "Vous ne verrez généralement pas de profils ou de contenu de ce serveur, à moins que vous ne les recherchiez explicitement ou que vous ne choisissiez de les suivre.",
+  "about.domain_blocks.silenced.title": "Limité",
+  "about.domain_blocks.suspended.explanation": "Aucune donnée de ce serveur ne sera traitée, stockée ou échangée, rendant toute interaction ou communication avec des utilisateurs de ce serveur impossible.",
+  "about.domain_blocks.suspended.title": "Suspendu",
+  "about.not_available": "Cette information n'a pas été rendue disponible sur ce serveur.",
+  "about.powered_by": "Réseau social décentralisé propulsé par {mastodon}",
+  "about.rules": "Règles du serveur",
+  "account.account_note_header": "Note",
+  "account.add_or_remove_from_list": "Ajouter ou enlever de listes",
+  "account.badges.bot": "Bot",
+  "account.badges.group": "Groupe",
+  "account.block": "Bloquer @{name}",
+  "account.block_domain": "Bloquer le domaine {domain}",
+  "account.blocked": "Bloqué·e",
+  "account.browse_more_on_origin_server": "Parcourir davantage sur le profil original",
+  "account.cancel_follow_request": "Retirer cette demande d'abonnement",
+  "account.direct": "Message direct @{name}",
+  "account.disable_notifications": "Ne plus me notifier quand @{name} publie",
+  "account.domain_blocked": "Domaine bloqué",
+  "account.edit_profile": "Modifier le profil",
+  "account.enable_notifications": "Me notifier quand @{name} publie",
+  "account.endorse": "Inclure sur profil",
+  "account.featured_tags.last_status_at": "Dernière publication {date}",
+  "account.featured_tags.last_status_never": "Aucune publication",
+  "account.featured_tags.title": "Hashtags inclus de {name}",
+  "account.follow": "Suivre",
+  "account.followers": "abonné·e·s",
+  "account.followers.empty": "Personne ne suit ce compte pour l'instant.",
+  "account.followers_counter": "{count, plural, one {{counter} Abonné·e} other {{counter} Abonné·e·s}}",
+  "account.following": "Abonné·e",
+  "account.following_counter": "{count, plural, one {{counter} Abonnement} other {{counter} Abonnements}}",
+  "account.follows.empty": "Ce compte ne suit personne présentement.",
+  "account.follows_you": "Vous suit",
+  "account.go_to_profile": "Voir ce profil",
+  "account.hide_reblogs": "Masquer les boosts de @{name}",
+  "account.joined_short": "Inscript en",
+  "account.languages": "Changer les langues abonnées",
+  "account.link_verified_on": "La propriété de ce lien a été vérifiée le {date}",
+  "account.locked_info": "Le statut de confidentialité de ce compte est privé. Son propriétaire vérifie manuellement qui peut le/la suivre.",
+  "account.media": "Média",
+  "account.mention": "Mentionner @{name}",
+  "account.moved_to": "{name} a indiqué que son nouveau compte est maintenant:",
+  "account.mute": "Masquer @{name}",
+  "account.mute_notifications": "Masquer les notifications de @{name}",
+  "account.muted": "Masqué·e",
+  "account.open_original_page": "Ouvrir la page d'origine",
+  "account.posts": "Publications",
+  "account.posts_with_replies": "Publications et réponses",
+  "account.report": "Signaler @{name}",
+  "account.requested": "En attente d’approbation. Cliquez pour annuler la demande",
+  "account.share": "Partager le profil de @{name}",
+  "account.show_reblogs": "Afficher les boosts de @{name}",
+  "account.statuses_counter": "{count, plural, one {{counter} Publication} other {{counter} Publications}}",
+  "account.unblock": "Débloquer @{name}",
+  "account.unblock_domain": "Débloquer le domaine {domain}",
+  "account.unblock_short": "Débloquer",
+  "account.unendorse": "Ne pas inclure sur profil",
+  "account.unfollow": "Ne plus suivre",
+  "account.unmute": "Ne plus masquer @{name}",
+  "account.unmute_notifications": "Ne plus masquer les notifications de @{name}",
+  "account.unmute_short": "Ne plus masquer",
+  "account_note.placeholder": "Cliquez pour ajouter une note",
+  "admin.dashboard.daily_retention": "Taux de rétention des comptes par jour après inscription",
+  "admin.dashboard.monthly_retention": "Taux de rétention des comptes par mois après inscription",
+  "admin.dashboard.retention.average": "Moyenne",
+  "admin.dashboard.retention.cohort": "Mois d'inscription",
+  "admin.dashboard.retention.cohort_size": "Nouveaux comptes",
+  "alert.rate_limited.message": "Veuillez réessayer après {retry_time, time, medium}.",
+  "alert.rate_limited.title": "Débit limité",
+  "alert.unexpected.message": "Une erreur inattendue s’est produite.",
+  "alert.unexpected.title": "Oups!",
+  "announcement.announcement": "Annonce",
+  "attachments_list.unprocessed": "(non traité)",
+  "audio.hide": "Masquer l'audio",
+  "autosuggest_hashtag.per_week": "{count} par semaine",
+  "boost_modal.combo": "Vous pouvez appuyer sur {combo} pour sauter ceci la prochaine fois",
+  "bundle_column_error.copy_stacktrace": "Copier le rapport d'erreur",
+  "bundle_column_error.error.body": "La page demandée n'a pas pu être affichée. Cela pourrait être dû à un bogue dans notre code, ou à un problème de compatibilité avec le navigateur.",
+  "bundle_column_error.error.title": "Oh non!",
+  "bundle_column_error.network.body": "Une erreur s'est produite lors du chargement de cette page. Cela peut être dû à un problème temporaire avec votre connexion internet ou avec ce serveur.",
+  "bundle_column_error.network.title": "Erreur réseau",
+  "bundle_column_error.retry": "Réessayer",
+  "bundle_column_error.return": "Retour à l'accueil",
+  "bundle_column_error.routing.body": "La page demandée est introuvable. Êtes-vous sûr que l’URL dans la barre d’adresse est correcte?",
+  "bundle_column_error.routing.title": "404",
+  "bundle_modal_error.close": "Fermer",
+  "bundle_modal_error.message": "Une erreur s’est produite lors du chargement de ce composant.",
+  "bundle_modal_error.retry": "Réessayer",
+  "closed_registrations.other_server_instructions": "Puisque Mastodon est décentralisé, vous pouvez créer un compte sur un autre serveur et interagir quand même avec celui-ci.",
+  "closed_registrations_modal.description": "Créer un compte sur {domain} est présentement impossible, néanmoins souvenez-vous que vous n'avez pas besoin d'un compte spécifiquement sur {domain} pour utiliser Mastodon.",
+  "closed_registrations_modal.find_another_server": "Trouver un autre serveur",
+  "closed_registrations_modal.preamble": "Mastodon est décentralisé, donc peu importe où vous créez votre compte, vous serez en mesure de suivre et d'interagir avec quiconque sur ce serveur. Vous pouvez même l'héberger vous-même!",
+  "closed_registrations_modal.title": "S'inscrire sur Mastodon",
+  "column.about": "À propos",
+  "column.blocks": "Comptes bloqués",
+  "column.bookmarks": "Signets",
+  "column.community": "Fil local",
+  "column.direct": "Messages directs",
+  "column.directory": "Parcourir les profils",
+  "column.domain_blocks": "Domaines bloqués",
+  "column.favourites": "Favoris",
+  "column.follow_requests": "Demande d'abonnement",
+  "column.home": "Accueil",
+  "column.lists": "Listes",
+  "column.mutes": "Comptes masqués",
+  "column.notifications": "Notifications",
+  "column.pins": "Publications épinglés",
+  "column.public": "Fil global",
+  "column_back_button.label": "Retour",
+  "column_header.hide_settings": "Cacher les paramètres",
+  "column_header.moveLeft_settings": "Déplacer cette colonne vers la gauche",
+  "column_header.moveRight_settings": "Déplacer cette colonne vers la droite",
+  "column_header.pin": "Épingler",
+  "column_header.show_settings": "Afficher les paramètres",
+  "column_header.unpin": "Désépingler",
+  "column_subheading.settings": "Paramètres",
+  "community.column_settings.local_only": "Local seulement",
+  "community.column_settings.media_only": "Média seulement",
+  "community.column_settings.remote_only": "À distance seulement",
+  "compose.language.change": "Changer de langue",
+  "compose.language.search": "Rechercher des langues…",
+  "compose_form.direct_message_warning_learn_more": "En savoir plus",
+  "compose_form.encryption_warning": "Les publications sur Mastodon ne sont pas chiffrées de bout en bout. Veuillez ne partager aucune information sensible sur Mastodon.",
+  "compose_form.hashtag_warning": "Cette publication ne sera pas listée dans les recherches par hashtag car sa visibilité est réglée sur « non listée ». Seuls les publications avec visibilité « publique » peuvent être recherchées par hashtag.",
+  "compose_form.lock_disclaimer": "Votre compte n’est pas {locked}. Tout le monde peut vous suivre et voir vos publications privés.",
+  "compose_form.lock_disclaimer.lock": "verrouillé",
+  "compose_form.placeholder": "À quoi pensez-vous?",
+  "compose_form.poll.add_option": "Ajouter un choix",
+  "compose_form.poll.duration": "Durée du sondage",
+  "compose_form.poll.option_placeholder": "Choix {number}",
+  "compose_form.poll.remove_option": "Supprimer ce choix",
+  "compose_form.poll.switch_to_multiple": "Changer le sondage pour autoriser plusieurs choix",
+  "compose_form.poll.switch_to_single": "Changer le sondage pour n'autoriser qu'un seul choix",
+  "compose_form.publish": "Publier",
+  "compose_form.publish_form": "Publier",
+  "compose_form.publish_loud": "{publish}!",
+  "compose_form.save_changes": "Enregistrer les modifications",
+  "compose_form.sensitive.hide": "{count, plural, one {Marquer média comme sensible} other {Marquer médias comme sensibles}}",
+  "compose_form.sensitive.marked": "{count, plural, one {Le média est marqué comme sensible} other {Les médias sont marqués comme sensibles}}",
+  "compose_form.sensitive.unmarked": "{count, plural, one {Le média n’est pas marqué comme sensible} other {Les médias ne sont pas marqués comme sensibles}}",
+  "compose_form.spoiler.marked": "Enlever l'avertissement de contenu",
+  "compose_form.spoiler.unmarked": "Ajouter un avertissement de contenu",
+  "compose_form.spoiler_placeholder": "Écrivez votre avertissement ici",
+  "confirmation_modal.cancel": "Annuler",
+  "confirmations.block.block_and_report": "Bloquer et signaler",
+  "confirmations.block.confirm": "Bloquer",
+  "confirmations.block.message": "Voulez-vous vraiment bloquer {name}?",
+  "confirmations.cancel_follow_request.confirm": "Retirer cette demande",
+  "confirmations.cancel_follow_request.message": "Êtes-vous sûr de vouloir retirer votre demande pour suivre {name}?",
+  "confirmations.delete.confirm": "Supprimer",
+  "confirmations.delete.message": "Voulez-vous vraiment supprimer cette publication?",
+  "confirmations.delete_list.confirm": "Supprimer",
+  "confirmations.delete_list.message": "Voulez-vous vraiment supprimer définitivement cette liste?",
+  "confirmations.discard_edit_media.confirm": "Rejeter",
+  "confirmations.discard_edit_media.message": "Vous avez des modifications non enregistrées de la description ou de l'aperçu du média, voulez-vous quand même les supprimer?",
+  "confirmations.domain_block.confirm": "Bloquer ce domaine entier",
+  "confirmations.domain_block.message": "Voulez-vous vraiment, vraiment bloquer {domain} en entier? Dans la plupart des cas, quelques blocages ou masquages ciblés sont suffisants et préférables. Vous ne verrez plus de contenu provenant de ce domaine, ni dans vos fils publics, ni dans vos notifications. Vos abonné·e·s utilisant ce domaine seront retiré·e·s.",
+  "confirmations.logout.confirm": "Se déconnecter",
+  "confirmations.logout.message": "Voulez-vous vraiment vous déconnecter?",
+  "confirmations.mute.confirm": "Masquer",
+  "confirmations.mute.explanation": "Cela masquera ses publications et celle le/la mentionnant, mais cela lui permettra toujours de voir vos messages et de vous suivre.",
+  "confirmations.mute.message": "Voulez-vous vraiment masquer {name}?",
+  "confirmations.redraft.confirm": "Supprimer et réécrire",
+  "confirmations.redraft.message": "Voulez-vous vraiment effacer cette publication pour la réécrire? Ses mentions favori et boosts seront perdus et ses réponses deviendront orphelines.",
+  "confirmations.reply.confirm": "Répondre",
+  "confirmations.reply.message": "Répondre maintenant écrasera le message que vous rédigez présentement. Voulez-vous vraiment continuer?",
+  "confirmations.unfollow.confirm": "Ne plus suivre",
+  "confirmations.unfollow.message": "Voulez-vous vraiment arrêter de suivre {name}?",
+  "conversation.delete": "Supprimer cette conversation",
+  "conversation.mark_as_read": "Marquer comme lu",
+  "conversation.open": "Afficher cette conversation",
+  "conversation.with": "Avec {names}",
+  "copypaste.copied": "Copié",
+  "copypaste.copy": "Copier",
+  "directory.federated": "D'un fediverse connu",
+  "directory.local": "De {domain} seulement",
+  "directory.new_arrivals": "Inscrit·e·s récemment",
+  "directory.recently_active": "Actif·ve·s récemment",
+  "disabled_account_banner.account_settings": "Paramètres du compte",
+  "disabled_account_banner.text": "Votre compte {disabledAccount} est présentement désactivé.",
+  "dismissable_banner.community_timeline": "Voici les publications publiques les plus récentes de personnes dont les comptes sont hébergés par {domain}.",
+  "dismissable_banner.dismiss": "Rejeter",
+  "dismissable_banner.explore_links": "Ces nouvelles sont présentement en cours de discussion par des personnes sur d'autres serveurs du réseau décentralisé ainsi que sur celui-ci.",
+  "dismissable_banner.explore_statuses": "Ces publications de ce serveur et d'autres du réseau décentralisé sont présentement en train de gagner de l'ampleur sur ce serveur.",
+  "dismissable_banner.explore_tags": "Ces hashtags sont présentement en train de gagner de l'ampleur parmi des personnes sur les serveurs du réseau décentralisé dont celui-ci.",
+  "dismissable_banner.public_timeline": "Voici les publications publiques les plus récentes de personnes de ce serveur et d'autres du réseau décentralisé que ce serveur connait.",
+  "embed.instructions": "Intégrez cette publication à votre site en copiant le code ci-dessous.",
+  "embed.preview": "Voici comment il apparaîtra:",
+  "emoji_button.activity": "Activité",
+  "emoji_button.clear": "Effacer",
+  "emoji_button.custom": "Personnalisé",
+  "emoji_button.flags": "Drapeaux",
+  "emoji_button.food": "Nourriture et boisson",
+  "emoji_button.label": "Insérer un émoji",
+  "emoji_button.nature": "Nature",
+  "emoji_button.not_found": "Aucun émoji correspondant n'a été trouvé",
+  "emoji_button.objects": "Objets",
+  "emoji_button.people": "Personnes",
+  "emoji_button.recent": "Fréquemment utilisés",
+  "emoji_button.search": "Recherche…",
+  "emoji_button.search_results": "Résultats",
+  "emoji_button.symbols": "Symboles",
+  "emoji_button.travel": "Voyage et lieux",
+  "empty_column.account_suspended": "Compte suspendu",
+  "empty_column.account_timeline": "Aucune publication ici!",
+  "empty_column.account_unavailable": "Profil non disponible",
+  "empty_column.blocks": "Vous n’avez bloqué aucun compte pour le moment.",
+  "empty_column.bookmarked_statuses": "Vous n'avez pas de publications parmi vos signets. Lorsque vous en ajouterez une, elle apparaîtra ici.",
+  "empty_column.community": "Le fil local est vide. Écrivez donc quelque chose pour le remplir!",
+  "empty_column.direct": "Vous n’avez pas encore de messages directs. Lorsque vous en enverrez ou recevrez un, il s’affichera ici.",
+  "empty_column.domain_blocks": "Il n’y a aucun domaine bloqué pour le moment.",
+  "empty_column.explore_statuses": "Rien n'est en tendance présentement. Revenez plus tard!",
+  "empty_column.favourited_statuses": "Vous n’avez pas encore de publications favorites. Lorsque vous en ajouterez une, elle apparaîtra ici.",
+  "empty_column.favourites": "Personne n’a encore ajouté cette publication à ses favoris. Lorsque quelqu’un le fera, elle apparaîtra ici.",
+  "empty_column.follow_recommendations": "Il semble qu’aucune suggestion n’ait pu être générée pour vous. Vous pouvez essayer d’utiliser la recherche pour découvrir des personnes que vous pourriez connaître ou explorer les hashtags populaires.",
+  "empty_column.follow_requests": "Vous n’avez pas encore de demande d'abonnement. Lorsque vous en recevrez une, elle apparaîtra ici.",
+  "empty_column.hashtag": "Il n’y a pas encore de contenu associé à ce hashtag.",
+  "empty_column.home": "Votre fil d'accueil est vide! Suivez plus de personnes pour la remplir. {suggestions}",
+  "empty_column.home.suggestions": "Voir quelques suggestions",
+  "empty_column.list": "Il n’y a rien dans cette liste pour l’instant. Quand des membres de cette liste publieront de nouvelles publications, elles apparaîtront ici.",
+  "empty_column.lists": "Vous n’avez pas encore de liste. Lorsque vous en créerez une, elle apparaîtra ici.",
+  "empty_column.mutes": "Vous n’avez masqué aucun compte pour le moment.",
+  "empty_column.notifications": "Vous n'avez pas encore de notifications. Quand d'autres personnes interagissent avec vous, vous en verrez ici.",
+  "empty_column.public": "Il n’y a rien ici! Écrivez quelque chose publiquement, ou bien suivez manuellement des personnes d’autres serveurs pour remplir le fil public",
+  "error.unexpected_crash.explanation": "En raison d’un bogue dans notre code ou d’un problème de compatibilité avec votre navigateur, cette page n’a pas pu être affichée correctement.",
+  "error.unexpected_crash.explanation_addons": "Cette page n’a pas pu être affichée correctement. Cette erreur est probablement causée par une extension de navigateur ou des outils de traduction automatique.",
+  "error.unexpected_crash.next_steps": "Essayez de rafraîchir la page. Si cela n’aide pas, vous pouvez toujours utiliser Mastodon via un autre navigateur ou une application native.",
+  "error.unexpected_crash.next_steps_addons": "Essayez de les désactiver et de rafraîchir la page. Si cela ne vous aide pas, vous pouvez toujours utiliser Mastodon via un autre navigateur ou une application native.",
+  "errors.unexpected_crash.copy_stacktrace": "Copier la trace d'appels dans le presse-papier",
+  "errors.unexpected_crash.report_issue": "Signaler un problème",
+  "explore.search_results": "Résultats",
+  "explore.title": "Explorer",
+  "filter_modal.added.context_mismatch_explanation": "Cette catégorie de filtre ne s'applique pas au contexte dans lequel vous avez accédé à cette publication. Si vous voulez que la publication soit filtrée dans ce contexte également, vous devrez modifier le filtre.",
+  "filter_modal.added.context_mismatch_title": "Incompatibilité du contexte!",
+  "filter_modal.added.expired_explanation": "Cette catégorie de filtre a expiré, vous devrez modifier la date d'expiration pour qu'elle soit appliquée.",
+  "filter_modal.added.expired_title": "Filtre expiré!",
+  "filter_modal.added.review_and_configure": "Pour passer en revue et approfondir la configuration de cette catégorie de filtre, aller sur le {settings_link}.",
+  "filter_modal.added.review_and_configure_title": "Paramètres du filtre",
+  "filter_modal.added.settings_link": "page des paramètres",
+  "filter_modal.added.short_explanation": "Cette publication a été ajouté à la catégorie de filtres suivante: {title}.",
+  "filter_modal.added.title": "Filtre ajouté!",
+  "filter_modal.select_filter.context_mismatch": "ne s’applique pas à ce contexte",
+  "filter_modal.select_filter.expired": "a expiré",
+  "filter_modal.select_filter.prompt_new": "Nouvelle catégorie: {name}",
+  "filter_modal.select_filter.search": "Rechercher ou créer",
+  "filter_modal.select_filter.subtitle": "Utilisez une catégorie existante ou en créer une nouvelle",
+  "filter_modal.select_filter.title": "Filtrer cette publication",
+  "filter_modal.title.status": "Filtrer une publication",
+  "follow_recommendations.done": "Terminé",
+  "follow_recommendations.heading": "Suivez les personnes dont vous aimeriez voir les publications! Voici quelques suggestions.",
+  "follow_recommendations.lead": "Les publication de personnes que vous suivez apparaîtront par ordre chronologique sur votre fil d'accueil. N'ayez pas peur de faire des erreurs, vous pouvez arrêter de suivre les gens aussi facilement n'importe quand!",
+  "follow_request.authorize": "Autoriser",
+  "follow_request.reject": "Rejeter",
+  "follow_requests.unlocked_explanation": "Même si votre compte n’est pas privé, l’équipe de {domain} a pensé que vous pourriez vouloir peut-être consulter manuellement les demandes d'abonnement de ces comptes.",
+  "footer.about": "À propos",
+  "footer.directory": "Annuaire des profils",
+  "footer.get_app": "Télécharger l’application",
+  "footer.invite": "Inviter des gens",
+  "footer.keyboard_shortcuts": "Raccourcis clavier",
+  "footer.privacy_policy": "Politique de confidentialité",
+  "footer.source_code": "Voir le code source",
+  "generic.saved": "Sauvegardé",
+  "getting_started.heading": "Pour commencer",
+  "hashtag.column_header.tag_mode.all": "et {additional}",
+  "hashtag.column_header.tag_mode.any": "ou {additional}",
+  "hashtag.column_header.tag_mode.none": "sans {additional}",
+  "hashtag.column_settings.select.no_options_message": "Aucune suggestion trouvée",
+  "hashtag.column_settings.select.placeholder": "Entrer des hashtags…",
+  "hashtag.column_settings.tag_mode.all": "Tous ceux-ci",
+  "hashtag.column_settings.tag_mode.any": "Au moins un de ceux-ci",
+  "hashtag.column_settings.tag_mode.none": "Aucun de ceux-ci",
+  "hashtag.column_settings.tag_toggle": "Inclure des hashtags additionnels pour cette colonne",
+  "hashtag.follow": "Suivre ce hashtag",
+  "hashtag.unfollow": "Ne plus suivre ce hashtag",
+  "home.column_settings.basic": "Basique",
+  "home.column_settings.show_reblogs": "Afficher boosts",
+  "home.column_settings.show_replies": "Afficher réponses",
+  "home.hide_announcements": "Masquer les annonces",
+  "home.show_announcements": "Afficher annonces",
+  "interaction_modal.description.favourite": "Avec un compte Mastodon, vous pouvez ajouter cette publication aux favoris pour informer son auteur·rice que vous l'appréciez et la sauvegarder pour plus tard.",
+  "interaction_modal.description.follow": "Avec un compte Mastodon, vous pouvez suivre {name} et recevoir leurs publications dans votre fil d'accueil.",
+  "interaction_modal.description.reblog": "Avec un compte Mastodon, vous pouvez booster cette publication pour la partager avec vos propres abonné·e·s.",
+  "interaction_modal.description.reply": "Avec un compte sur Mastodon, vous pouvez répondre à cette publication.",
+  "interaction_modal.on_another_server": "Sur un autre serveur",
+  "interaction_modal.on_this_server": "Sur ce serveur",
+  "interaction_modal.other_server_instructions": "Copiez et collez cet URL dans le champ de recherche de votre application Mastodon préférée ou l'interface web de votre serveur Mastodon.",
+  "interaction_modal.preamble": "Puisque Mastodon est décentralisé, vous pouvez utiliser votre compte existant hébergé par un autre serveur Mastodon ou une plateforme compatible si vous n'avez pas de compte sur celui-ci.",
+  "interaction_modal.title.favourite": "Ajouter la publication de {name} à vos favoris",
+  "interaction_modal.title.follow": "Suivre {name}",
+  "interaction_modal.title.reblog": "Booster la publication de {name}",
+  "interaction_modal.title.reply": "Répondre à la publication de {name}",
+  "intervals.full.days": "{number, plural, one {# jour} other {# jours}}",
+  "intervals.full.hours": "{number, plural, one {# heure} other {# heures}}",
+  "intervals.full.minutes": "{number, plural, one {# minute} other {# minutes}}",
+  "keyboard_shortcuts.back": "Revenir en arrière",
+  "keyboard_shortcuts.blocked": "Ouvrir la liste de comptes bloqués",
+  "keyboard_shortcuts.boost": "Booster cette publication",
+  "keyboard_shortcuts.column": "Se concentrer sur une colonne",
+  "keyboard_shortcuts.compose": "Se concentrer sur la zone de rédaction",
+  "keyboard_shortcuts.description": "Description",
+  "keyboard_shortcuts.direct": "pour ouvrir la colonne de messages directs",
+  "keyboard_shortcuts.down": "Descendre dans la liste",
+  "keyboard_shortcuts.enter": "Ouvrir cette publication",
+  "keyboard_shortcuts.favourite": "Ajouter publication aux favoris",
+  "keyboard_shortcuts.favourites": "Ouvrir la liste des favoris",
+  "keyboard_shortcuts.federated": "Ouvrir le fil global",
+  "keyboard_shortcuts.heading": "Raccourcis clavier",
+  "keyboard_shortcuts.home": "Ouvrir le fil d’accueil",
+  "keyboard_shortcuts.hotkey": "Raccourci clavier",
+  "keyboard_shortcuts.legend": "Afficher cette légende",
+  "keyboard_shortcuts.local": "Ouvrir le fil local",
+  "keyboard_shortcuts.mention": "Mentionner l'auteur·rice",
+  "keyboard_shortcuts.muted": "Ouvrir la liste de comptes masqués",
+  "keyboard_shortcuts.my_profile": "Ouvrir votre profil",
+  "keyboard_shortcuts.notifications": "Ouvrir la colonne de notifications",
+  "keyboard_shortcuts.open_media": "Ouvrir média",
+  "keyboard_shortcuts.pinned": "Ouvrir la liste de publications épinglés",
+  "keyboard_shortcuts.profile": "Ouvrir le profil de l’auteur·rice",
+  "keyboard_shortcuts.reply": "Répondre au message",
+  "keyboard_shortcuts.requests": "Ouvrir la liste de demandes d’abonnement",
+  "keyboard_shortcuts.search": "Focuser sur le champ de recherche",
+  "keyboard_shortcuts.spoilers": "Afficher/cacher le champ d'avertissement",
+  "keyboard_shortcuts.start": "Ouvrir la colonne « Pour commencer »",
+  "keyboard_shortcuts.toggle_hidden": "Déplier/replier texte derrière avertissement",
+  "keyboard_shortcuts.toggle_sensitivity": "Afficher/cacher médias",
+  "keyboard_shortcuts.toot": "Commencer un nouveau message",
+  "keyboard_shortcuts.unfocus": "Ne plus se concentrer sur la zone de rédaction/barre de recherche",
+  "keyboard_shortcuts.up": "Monter dans la liste",
+  "lightbox.close": "Fermer",
+  "lightbox.compress": "Compresser la fenêtre de visualisation d'images",
+  "lightbox.expand": "Agrandir la fenêtre de visualisation d'images",
+  "lightbox.next": "Suivant",
+  "lightbox.previous": "Précédent",
+  "limited_account_hint.action": "Afficher le profil quand même",
+  "limited_account_hint.title": "Ce profil a été masqué par la modération de {domain}.",
+  "lists.account.add": "Ajouter à une liste",
+  "lists.account.remove": "Retirer d'une liste",
+  "lists.delete": "Supprimer la liste",
+  "lists.edit": "Modifier la liste",
+  "lists.edit.submit": "Modifier le titre",
+  "lists.new.create": "Ajouter une liste",
+  "lists.new.title_placeholder": "Titre de la nouvelle liste",
+  "lists.replies_policy.followed": "N'importe quel compte suivi",
+  "lists.replies_policy.list": "Membres de la liste",
+  "lists.replies_policy.none": "Personne",
+  "lists.replies_policy.title": "Afficher les réponses à:",
+  "lists.search": "Rechercher parmi les gens que vous suivez",
+  "lists.subheading": "Vos listes",
+  "load_pending": "{count, plural, one {# nouvel élément} other {# nouveaux éléments}}",
+  "loading_indicator.label": "Chargement…",
+  "media_gallery.toggle_visible": "{number, plural, one {Cacher l’image} other {Cacher les images}}",
+  "missing_indicator.label": "Non trouvé",
+  "missing_indicator.sublabel": "Cette ressource n'a pas pu être trouvée",
+  "moved_to_account_banner.text": "Votre compte {disabledAccount} est actuellement désactivé parce que vous avez déménagé sur {movedToAccount}.",
+  "mute_modal.duration": "Durée",
+  "mute_modal.hide_notifications": "Masquer les notifications de ce compte?",
+  "mute_modal.indefinite": "Indéfinie",
+  "navigation_bar.about": "À propos",
+  "navigation_bar.blocks": "Comptes bloqués",
+  "navigation_bar.bookmarks": "Signets",
+  "navigation_bar.community_timeline": "Fil local",
+  "navigation_bar.compose": "Rédiger un nouveau message",
+  "navigation_bar.direct": "Messages directs",
+  "navigation_bar.discover": "Découvrir",
+  "navigation_bar.domain_blocks": "Domaines bloqués",
+  "navigation_bar.edit_profile": "Modifier le profil",
+  "navigation_bar.explore": "Explorer",
+  "navigation_bar.favourites": "Favoris",
+  "navigation_bar.filters": "Mots masqués",
+  "navigation_bar.follow_requests": "Demandes d'abonnements",
+  "navigation_bar.follows_and_followers": "Abonnements et abonnés",
+  "navigation_bar.lists": "Listes",
+  "navigation_bar.logout": "Se déconnecter",
+  "navigation_bar.mutes": "Utilisateurs masqués",
+  "navigation_bar.personal": "Personnel",
+  "navigation_bar.pins": "Publications épinglés",
+  "navigation_bar.preferences": "Préférences",
+  "navigation_bar.public_timeline": "Fil global",
+  "navigation_bar.search": "Rechercher",
+  "navigation_bar.security": "Sécurité",
+  "not_signed_in_indicator.not_signed_in": "Vous devez vous connecter pour accéder à cette ressource.",
+  "notification.admin.report": "{name} a signalé {target}",
+  "notification.admin.sign_up": "{name} s'est inscrit·e",
+  "notification.favourite": "{name} a aimé votre publication",
+  "notification.follow": "{name} vous suit",
+  "notification.follow_request": "{name} a demandé à vous suivre",
+  "notification.mention": "{name} vous a mentionné·e",
+  "notification.own_poll": "Votre sondage est terminé",
+  "notification.poll": "Un sondage auquel vous avez participé est terminé",
+  "notification.reblog": "{name} a boosté votre message",
+  "notification.status": "{name} vient de publier",
+  "notification.update": "{name} a modifié une publication",
+  "notifications.clear": "Effacer notifications",
+  "notifications.clear_confirmation": "Voulez-vous vraiment effacer toutes vos notifications?",
+  "notifications.column_settings.admin.report": "Nouveaux signalements:",
+  "notifications.column_settings.admin.sign_up": "Nouvelles inscriptions:",
+  "notifications.column_settings.alert": "Notifications navigateur",
+  "notifications.column_settings.favourite": "Favoris:",
+  "notifications.column_settings.filter_bar.advanced": "Afficher toutes les catégories",
+  "notifications.column_settings.filter_bar.category": "Barre de filtrage rapide",
+  "notifications.column_settings.filter_bar.show_bar": "Afficher la barre de filtre",
+  "notifications.column_settings.follow": "Nouveaux⋅elles abonné⋅e⋅s:",
+  "notifications.column_settings.follow_request": "Nouvelles demandes d’abonnement:",
+  "notifications.column_settings.mention": "Mentions:",
+  "notifications.column_settings.poll": "Résultats des sondages:",
+  "notifications.column_settings.push": "Notifications push",
+  "notifications.column_settings.reblog": "Boosts:",
+  "notifications.column_settings.show": "Afficher dans la colonne",
+  "notifications.column_settings.sound": "Jouer un son",
+  "notifications.column_settings.status": "Nouvelles publications:",
+  "notifications.column_settings.unread_notifications.category": "Notifications non lues",
+  "notifications.column_settings.unread_notifications.highlight": "Surligner les notifications non lues",
+  "notifications.column_settings.update": "Modifications:",
+  "notifications.filter.all": "Toutes",
+  "notifications.filter.boosts": "Boosts",
+  "notifications.filter.favourites": "Favoris",
+  "notifications.filter.follows": "Abonnements",
+  "notifications.filter.mentions": "Mentions",
+  "notifications.filter.polls": "Résultats de sondages",
+  "notifications.filter.statuses": "Mises à jour de personnes que vous suivez",
+  "notifications.grant_permission": "Accorder l’autorisation.",
+  "notifications.group": "{count} notifications",
+  "notifications.mark_as_read": "Marquer toutes les notifications comme lues",
+  "notifications.permission_denied": "Les notifications de bureau ne sont pas disponibles en raison d'une demande de permission de navigateur précédemment refusée",
+  "notifications.permission_denied_alert": "Les notifications de bureau ne peuvent pas être activées, car l’autorisation du navigateur a précedemment été refusée",
+  "notifications.permission_required": "Les notifications de bureau ne sont pas disponibles car l’autorisation requise n’a pas été accordée.",
+  "notifications_permission_banner.enable": "Activer les notifications de bureau",
+  "notifications_permission_banner.how_to_control": "Pour recevoir des notifications lorsque Mastodon n’est pas ouvert, activez les notifications de bureau. Vous pouvez contrôler précisément quels types d’interactions génèrent des notifications de bureau via le bouton {icon} ci-dessus une fois qu’elles sont activées.",
+  "notifications_permission_banner.title": "Ne rien rater",
+  "picture_in_picture.restore": "Remettre en place",
+  "poll.closed": "Fermé",
+  "poll.refresh": "Actualiser",
+  "poll.total_people": "{count, plural, one {# personne} other {# personnes}}",
+  "poll.total_votes": "{count, plural, one {# vote} other {# votes}}",
+  "poll.vote": "Voter",
+  "poll.voted": "Vous avez voté pour cette réponse",
+  "poll.votes": "{votes, plural, one {# vote} other {# votes}}",
+  "poll_button.add_poll": "Ajouter un sondage",
+  "poll_button.remove_poll": "Supprimer le sondage",
+  "privacy.change": "Changer la confidentialité des messages",
+  "privacy.direct.long": "Visible uniquement par les comptes mentionnés",
+  "privacy.direct.short": "Personnes mentionnées uniquement",
+  "privacy.private.long": "Visible uniquement pour vos abonné·e·s",
+  "privacy.private.short": "Abonné·e·s seulement",
+  "privacy.public.long": "Visible pour tous",
+  "privacy.public.short": "Public",
+  "privacy.unlisted.long": "Visible pour tous, mais sans fonctionnalités de découverte",
+  "privacy.unlisted.short": "Non listé",
+  "privacy_policy.last_updated": "Dernière mise à jour {date}",
+  "privacy_policy.title": "Politique de confidentialité",
+  "refresh": "Actualiser",
+  "regeneration_indicator.label": "Chargement…",
+  "regeneration_indicator.sublabel": "Votre fil d'accueil est en cours de préparation!",
+  "relative_time.days": "{number} j",
+  "relative_time.full.days": "il y a {number, plural, one {# jour} other {# jours}}",
+  "relative_time.full.hours": "il y a {number, plural, one {# heure} other {# heures}}",
+  "relative_time.full.just_now": "à l’instant",
+  "relative_time.full.minutes": "il y a {number, plural, one {# minute} other {# minutes}}",
+  "relative_time.full.seconds": "il y a {number, plural, one {# seconde} other {# secondes}}",
+  "relative_time.hours": "{number} h",
+  "relative_time.just_now": "à l’instant",
+  "relative_time.minutes": "{number} min",
+  "relative_time.seconds": "{number} s",
+  "relative_time.today": "aujourd’hui",
+  "reply_indicator.cancel": "Annuler",
+  "report.block": "Bloquer",
+  "report.block_explanation": "Vous ne verrez plus les publications de ce compte. Il ne pourra ni vous suivre ni voir vos publications. Il pourra savoir qu'il a été bloqué.",
+  "report.categories.other": "Autre",
+  "report.categories.spam": "Spam",
+  "report.categories.violation": "Le contenu enfreint une ou plusieurs règles du serveur",
+  "report.category.subtitle": "Sélctionnez ce qui correspond le mieux",
+  "report.category.title": "Dites-nous ce qui se passe avec ce {type}",
+  "report.category.title_account": "ce profil",
+  "report.category.title_status": "ce message",
+  "report.close": "Terminé",
+  "report.comment.title": "Y a-t-il autre chose que nous devrions savoir?",
+  "report.forward": "Transférer à {target}",
+  "report.forward_hint": "Le compte provient d’un autre serveur. Envoyer une copie anonyme du rapport là-bas également?",
+  "report.mute": "Masquer",
+  "report.mute_explanation": "Vous ne verrez plus les publications de ce compte. Il pourra toujours vous suivre et voir vos publications. Il ne pourra pas savoir qu'il a été masqué.",
+  "report.next": "Suivant",
+  "report.placeholder": "Commentaires additionnels",
+  "report.reasons.dislike": "Je n’aime pas",
+  "report.reasons.dislike_description": "Ce n'est pas quelque chose qu'on voudrait voir",
+  "report.reasons.other": "C'est pour une autre raison",
+  "report.reasons.other_description": "Le problème ne correspond pas aux autres catégories",
+  "report.reasons.spam": "C'est du spam",
+  "report.reasons.spam_description": "Liens malveillants, faux engagement ou réponses répétitives",
+  "report.reasons.violation": "Ça enfreint les règles du serveur",
+  "report.reasons.violation_description": "Vous savez que des règles précises sont enfreintes",
+  "report.rules.subtitle": "Sélectionnez toutes les réponses appropriées",
+  "report.rules.title": "Quelles règles sont enfreintes?",
+  "report.statuses.subtitle": "Sélectionnez toutes les réponses appropriées",
+  "report.statuses.title": "Existe-t-il des messages pour étayer ce rapport?",
+  "report.submit": "Envoyer",
+  "report.target": "Signalement de {target}",
+  "report.thanks.take_action": "Voici les possibilités que vous avez pour contrôler ce que vous voyez sur Mastodon:",
+  "report.thanks.take_action_actionable": "Pendant que nous étudions votre requête, vous pouvez prendre des mesures contre @{name}:",
+  "report.thanks.title": "Vous ne voulez pas voir cela?",
+  "report.thanks.title_actionable": "Merci pour votre signalement, nous allons investiguer.",
+  "report.unfollow": "Ne plus suivre @{name}",
+  "report.unfollow_explanation": "Vous suivez ce compte. Pour ne plus en voir les messages sur votre fil d'accueil, arrêtez de le suivre.",
+  "report_notification.attached_statuses": "{count, plural, one {{count} publication liée} other {{count} publications liées}}",
+  "report_notification.categories.other": "Autre",
+  "report_notification.categories.spam": "Spam",
+  "report_notification.categories.violation": "Infraction aux règles du serveur",
+  "report_notification.open": "Ouvrir le signalement",
+  "search.placeholder": "Rechercher",
+  "search.search_or_paste": "Rechercher ou saisir un URL",
+  "search_popout.search_format": "Recherche avancée",
+  "search_popout.tips.full_text": "Un texte normal retourne les publications que vous avez écrites, ajoutées à vos favoris, partagées, ou vous mentionnant, ainsi que les identifiants, les noms affichés, et les hashtags des personnes et publications correspondantes.",
+  "search_popout.tips.hashtag": "hashtag",
+  "search_popout.tips.status": "publication",
+  "search_popout.tips.text": "Une simple entrée de texte renvoie les noms affichés, les identifiants et les hashtags correspondants",
+  "search_popout.tips.user": "compte",
+  "search_results.accounts": "Personnes",
+  "search_results.all": "Tout",
+  "search_results.hashtags": "Hashtags",
+  "search_results.nothing_found": "Aucun résultat avec ces mots-clés",
+  "search_results.statuses": "Publications",
+  "search_results.statuses_fts_disabled": "La recherche de publications par leur contenu n'est pas activée sur ce serveur Mastodon.",
+  "search_results.title": "Rechercher {q}",
+  "search_results.total": "{count, number} {count, plural, one {résultat} other {résultats}}",
+  "server_banner.about_active_users": "Personnes utilisant ce serveur au cours des 30 derniers jours (Comptes actifs mensuellement)",
+  "server_banner.active_users": "comptes actifs",
+  "server_banner.administered_by": "Administré par:",
+  "server_banner.introduction": "{domain} fait partie du réseau social décentralisé propulsé par {mastodon}.",
+  "server_banner.learn_more": "En savoir plus",
+  "server_banner.server_stats": "Statistiques du serveur:",
+  "sign_in_banner.create_account": "Créer un compte",
+  "sign_in_banner.sign_in": "Se connecter",
+  "sign_in_banner.text": "Connectez-vous pour suivre les profils ou les hashtags, ajouter aux favoris, partager et répondre aux publications, ou interagir depuis votre compte sur un autre serveur.",
+  "status.admin_account": "Ouvrir l’interface de modération pour @{name}",
+  "status.admin_status": "Ouvrir ce message dans l’interface de modération",
+  "status.block": "Bloquer @{name}",
+  "status.bookmark": "Ajouter aux signets",
+  "status.cancel_reblog_private": "Débooster",
+  "status.cannot_reblog": "Cette publication ne peut pas être boostée",
+  "status.copy": "Copier un lien vers cette publication",
+  "status.delete": "Supprimer",
+  "status.detailed_status": "Vue détaillée de la conversation",
+  "status.direct": "Envoyer un message direct à @{name}",
+  "status.edit": "Modifier",
+  "status.edited": "Modifiée le {date}",
+  "status.edited_x_times": "Modifiée {count, plural, one {{count} fois} other {{count} fois}}",
+  "status.embed": "Intégrer",
+  "status.favourite": "Ajouter aux favoris",
+  "status.filter": "Filtrer cette publication",
+  "status.filtered": "Filtrée",
+  "status.hide": "Cacher la publication",
+  "status.history.created": "créé par {name} {date}",
+  "status.history.edited": "modifié par {name} {date}",
+  "status.load_more": "Charger plus",
+  "status.media_hidden": "Média masqué",
+  "status.mention": "Mentionner @{name}",
+  "status.more": "Plus",
+  "status.mute": "Masquer @{name}",
+  "status.mute_conversation": "Masquer la conversation",
+  "status.open": "Afficher la publication entière",
+  "status.pin": "Épingler sur profil",
+  "status.pinned": "Message épinglé",
+  "status.read_more": "En savoir plus",
+  "status.reblog": "Booster",
+  "status.reblog_private": "Booster avec visibilité originale",
+  "status.reblogged_by": "{name} a boosté",
+  "status.reblogs.empty": "Personne n’a encore boosté cette publication. Lorsque quelqu’un le fera, elle apparaîtra ici.",
+  "status.redraft": "Supprimer et réécrire",
+  "status.remove_bookmark": "Retirer des signets",
+  "status.replied_to": "A répondu à {name}",
+  "status.reply": "Répondre",
+  "status.replyAll": "Répondre à cette discussion",
+  "status.report": "Signaler @{name}",
+  "status.sensitive_warning": "Contenu sensible",
+  "status.share": "Partager",
+  "status.show_filter_reason": "Afficher quand même",
+  "status.show_less": "Replier",
+  "status.show_less_all": "Tout replier",
+  "status.show_more": "Déplier",
+  "status.show_more_all": "Tout déplier",
+  "status.show_original": "Afficher l’original",
+  "status.translate": "Traduire",
+  "status.translated_from_with": "Traduit de {lang} avec {provider}",
+  "status.uncached_media_warning": "Indisponible",
+  "status.unmute_conversation": "Ne plus masquer cette conversation",
+  "status.unpin": "Désépingler du profil",
+  "subscribed_languages.lead": "Seules des publications dans les langues sélectionnées apparaîtront sur vos fil d'accueil et de liste(s) après le changement. N'en sélectionnez aucune pour recevoir des publications dans toutes les langues.",
+  "subscribed_languages.save": "Enregistrer les modifications",
+  "subscribed_languages.target": "Changer les langues abonnées pour {target}",
+  "suggestions.dismiss": "Rejeter cette suggestion",
+  "suggestions.header": "Vous pourriez être intéressé par…",
+  "tabs_bar.federated_timeline": "Global",
+  "tabs_bar.home": "Accueil",
+  "tabs_bar.local_timeline": "Local",
+  "tabs_bar.notifications": "Notifications",
+  "time_remaining.days": "{number, plural, one {# jour restant} other {# jours restants}}",
+  "time_remaining.hours": "{number, plural, one {# heure restante} other {# heures restantes}}",
+  "time_remaining.minutes": "{number, plural, one {# minute restante} other {# minutes restantes}}",
+  "time_remaining.moments": "Encore quelques instants",
+  "time_remaining.seconds": "{number, plural, one {# seconde restante} other {# secondes restantes}}",
+  "timeline_hint.remote_resource_not_displayed": "{resource} des autres serveurs ne sont pas affichés.",
+  "timeline_hint.resources.followers": "Abonné·e·s",
+  "timeline_hint.resources.follows": "Abonnements",
+  "timeline_hint.resources.statuses": "Publications plus anciennes",
+  "trends.counter_by_accounts": "{count, plural, one {{counter} personne} other {{counter} personnes}} au cours {days, plural, one {des dernières 24h} other {des {days} derniers jours}}",
+  "trends.trending_now": "Présentement populaire",
+  "ui.beforeunload": "Votre brouillon sera perdu si vous quittez Mastodon.",
+  "units.short.billion": "{count} G",
+  "units.short.million": "{count} M",
+  "units.short.thousand": "{count} K",
+  "upload_area.title": "Glissez et déposez pour envoyer",
+  "upload_button.label": "Ajouter des images, une vidéo ou un fichier audio",
+  "upload_error.limit": "Taille maximale d'envoi de fichier dépassée.",
+  "upload_error.poll": "L’envoi de fichiers n’est pas autorisé avec les sondages.",
+  "upload_form.audio_description": "Décrire pour les personnes ayant des difficultés d’audition",
+  "upload_form.description": "Décrire pour les malvoyants",
+  "upload_form.description_missing": "Description manquante",
+  "upload_form.edit": "Modifier",
+  "upload_form.thumbnail": "Changer la vignette",
+  "upload_form.undo": "Supprimer",
+  "upload_form.video_description": "Décrire pour les personnes ayant des problèmes de vue ou d'audition",
+  "upload_modal.analyzing_picture": "Analyse de l’image en cours…",
+  "upload_modal.apply": "Appliquer",
+  "upload_modal.applying": "Application en cours…",
+  "upload_modal.choose_image": "Choisir une image",
+  "upload_modal.description_placeholder": "Buvez de ce whisky que le patron juge fameux",
+  "upload_modal.detect_text": "Détecter le texte de l’image",
+  "upload_modal.edit_media": "Modifier le média",
+  "upload_modal.hint": "Cliquez ou faites glisser le cercle sur l’aperçu pour choisir le point focal qui sera toujours visible sur toutes les miniatures.",
+  "upload_modal.preparing_ocr": "Préparation de la ROC…",
+  "upload_modal.preview_label": "Aperçu ({ratio})",
+  "upload_progress.label": "Envoi en cours...",
+  "upload_progress.processing": "Traitement en cours…",
+  "video.close": "Fermer la vidéo",
+  "video.download": "Télécharger ce fichier",
+  "video.exit_fullscreen": "Quitter le plein écran",
+  "video.expand": "Agrandir la vidéo",
+  "video.fullscreen": "Plein écran",
+  "video.hide": "Masquer la vidéo",
+  "video.mute": "Couper le son",
+  "video.pause": "Pause",
+  "video.play": "Lecture",
+  "video.unmute": "Rétablir le son"
+}
diff --git a/app/javascript/mastodon/locales/fr.json b/app/javascript/mastodon/locales/fr.json
index a362ba2e2..02691e029 100644
--- a/app/javascript/mastodon/locales/fr.json
+++ b/app/javascript/mastodon/locales/fr.json
@@ -45,7 +45,7 @@
   "account.locked_info": "Ce compte est privé. Son ou sa propriétaire approuve manuellement qui peut le suivre.",
   "account.media": "Médias",
   "account.mention": "Mentionner @{name}",
-  "account.moved_to": "{name} a indiqué que son nouveau compte est tmaintenant  :",
+  "account.moved_to": "{name} a indiqué que son nouveau compte est maintenant  :",
   "account.mute": "Masquer @{name}",
   "account.mute_notifications": "Masquer les notifications de @{name}",
   "account.muted": "Masqué·e",
@@ -98,7 +98,7 @@
   "closed_registrations_modal.preamble": "Mastodon est décentralisé : peu importe où vous créez votre votre, vous serez en mesure de suivre et d'interagir avec quiconque sur ce serveur. Vous pouvez même l'héberger !",
   "closed_registrations_modal.title": "Inscription sur Mastodon",
   "column.about": "À propos",
-  "column.blocks": "Utilisateurs bloqués",
+  "column.blocks": "Comptes bloqués",
   "column.bookmarks": "Signets",
   "column.community": "Fil public local",
   "column.direct": "Messages directs",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Changer le sondage pour autoriser plusieurs choix",
   "compose_form.poll.switch_to_single": "Changer le sondage pour autoriser qu'un seul choix",
   "compose_form.publish": "Publier",
+  "compose_form.publish_form": "Publier",
   "compose_form.publish_loud": "{publish} !",
   "compose_form.save_changes": "Enregistrer les modifications",
   "compose_form.sensitive.hide": "Marquer le média comme sensible",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copier la trace d'appels dans le presse-papier",
   "errors.unexpected_crash.report_issue": "Signaler le problème",
   "explore.search_results": "Résultats de la recherche",
-  "explore.suggested_follows": "Pour vous",
   "explore.title": "Explorer",
-  "explore.trending_links": "Actualité",
-  "explore.trending_statuses": "Messages",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "Cette catégorie de filtre ne s'applique pas au contexte dans lequel vous avez accédé à ce message. Si vous voulez que le message soit filtré dans ce contexte également, vous devrez modifier le filtre.",
   "filter_modal.added.context_mismatch_title": "Incompatibilité du contexte !",
   "filter_modal.added.expired_explanation": "Cette catégorie de filtre a expiré, vous devrez modifier la date d'expiration pour qu'elle soit appliquée.",
@@ -390,7 +387,7 @@
   "not_signed_in_indicator.not_signed_in": "Vous devez vous connecter pour accéder à cette ressource.",
   "notification.admin.report": "{name} a signalé {target}",
   "notification.admin.sign_up": "{name} s'est inscrit·e",
-  "notification.favourite": "{name} a ajouté le message à ses favoris",
+  "notification.favourite": "{name} a aimé votre publication",
   "notification.follow": "{name} vous suit",
   "notification.follow_request": "{name} a demandé à vous suivre",
   "notification.mention": "{name} vous a mentionné·e :",
@@ -530,8 +527,8 @@
   "search_results.statuses_fts_disabled": "La recherche de messages par leur contenu n'est pas activée sur ce serveur Mastodon.",
   "search_results.title": "Rechercher {q}",
   "search_results.total": "{count, number} {count, plural, one {résultat} other {résultats}}",
-  "server_banner.about_active_users": "Personnes utilisant ce serveur au cours des 30 derniers jours (Utilisateur·rice·s Actifs·ives Mensuellement)",
-  "server_banner.active_users": "Utilisateurs actifs",
+  "server_banner.about_active_users": "Personnes utilisant ce serveur au cours des 30 derniers jours (Comptes actifs mensuellement)",
+  "server_banner.active_users": "comptes actifs",
   "server_banner.administered_by": "Administré par :",
   "server_banner.introduction": "{domain} fait partie du réseau social décentralisé propulsé par {mastodon}.",
   "server_banner.learn_more": "En savoir plus",
diff --git a/app/javascript/mastodon/locales/fy.json b/app/javascript/mastodon/locales/fy.json
index 5a194103f..86cfe64ad 100644
--- a/app/javascript/mastodon/locales/fy.json
+++ b/app/javascript/mastodon/locales/fy.json
@@ -2,7 +2,7 @@
   "about.blocks": "Moderearre servers",
   "about.contact": "Kontakt:",
   "about.disclaimer": "Mastodon is frije, iepenboarnesoftware en in hannelsmerk fan Mastodon gGmbH.",
-  "about.domain_blocks.no_reason_available": "Reason not available",
+  "about.domain_blocks.no_reason_available": "Reden net beskikber",
   "about.domain_blocks.preamble": "Yn it algemien kinsto mei Mastodon berjochten ûntfange fan, en ynteraksje hawwe mei brûkers fan elke server yn de fediverse. Dit binne de útsûnderingen dy’t op dizze spesifike server jilde.",
   "about.domain_blocks.silenced.explanation": "Yn it algemien sjochsto gjin berjochten en accounts fan dizze server, útsein do berjochten eksplisyt opsikest of derfoar kiest om in account fan dizze server te folgjen.",
   "about.domain_blocks.silenced.title": "Beheind",
@@ -37,7 +37,7 @@
   "account.following_counter": "{count, plural, one {{counter} folgjend} other {{counter} folgjend}}",
   "account.follows.empty": "Dizze brûker folget noch net ien.",
   "account.follows_you": "Folget dy",
-  "account.go_to_profile": "Go to profile",
+  "account.go_to_profile": "Gean nei profyl",
   "account.hide_reblogs": "Boosts fan @{name} ferstopje",
   "account.joined_short": "Registrearre op",
   "account.languages": "Toande talen wizigje",
@@ -49,7 +49,7 @@
   "account.mute": "@{name} negearje",
   "account.mute_notifications": "Meldingen fan @{name} negearje",
   "account.muted": "Negearre",
-  "account.open_original_page": "Open original page",
+  "account.open_original_page": "Iepenje orizjinele side",
   "account.posts": "Berjochten",
   "account.posts_with_replies": "Berjochten en reaksjes",
   "account.report": "@{name} rapportearje",
@@ -63,40 +63,40 @@
   "account.unendorse": "Net op profyl werjaan",
   "account.unfollow": "Net mear folgje",
   "account.unmute": "@{name} net langer negearje",
-  "account.unmute_notifications": "Unmute notifications from @{name}",
+  "account.unmute_notifications": "Notifikaasjes fan @{name} ynskeakelje",
   "account.unmute_short": "Net mear negearje",
-  "account_note.placeholder": "Click to add a note",
-  "admin.dashboard.daily_retention": "User retention rate by day after sign-up",
-  "admin.dashboard.monthly_retention": "User retention rate by month after sign-up",
+  "account_note.placeholder": "Klik om notysje ta te foegjen",
+  "admin.dashboard.daily_retention": "Meidogger retinsjegraad per dei nei oanmelding",
+  "admin.dashboard.monthly_retention": "Meidogger retinsjegraad per moanne nei oanmelding",
   "admin.dashboard.retention.average": "Gemiddelde",
-  "admin.dashboard.retention.cohort": "Sign-up month",
+  "admin.dashboard.retention.cohort": "Moanne fan registraasje",
   "admin.dashboard.retention.cohort_size": "Nije brûkers",
-  "alert.rate_limited.message": "Please retry after {retry_time, time, medium}.",
-  "alert.rate_limited.title": "Rate limited",
-  "alert.unexpected.message": "An unexpected error occurred.",
+  "alert.rate_limited.message": "Besykje asjebleaft opnij nei {retry_time, time, medium}.",
+  "alert.rate_limited.title": "Dataferkear beheind",
+  "alert.unexpected.message": "Der barde in ûnferwachte flater.",
   "alert.unexpected.title": "Oepsy!",
   "announcement.announcement": "Meidieling",
   "attachments_list.unprocessed": "(net ferwurke)",
   "audio.hide": "Audio ferstopje",
   "autosuggest_hashtag.per_week": "{count} yn ’e wike",
-  "boost_modal.combo": "You can press {combo} to skip this next time",
-  "bundle_column_error.copy_stacktrace": "Copy error report",
-  "bundle_column_error.error.body": "The requested page could not be rendered. It could be due to a bug in our code, or a browser compatibility issue.",
+  "boost_modal.combo": "Jo kinne op {combo} drukke om dit in oare kear oer te slaan",
+  "bundle_column_error.copy_stacktrace": "Kopiearje flaterrapport",
+  "bundle_column_error.error.body": "De opfrege side koe net werjûn wurde. It kin wêze troch in flater yn ús koade, of in probleem mei browserkompatibiliteit.",
   "bundle_column_error.error.title": "Oh nee!",
-  "bundle_column_error.network.body": "There was an error when trying to load this page. This could be due to a temporary problem with your internet connection or this server.",
+  "bundle_column_error.network.body": "Der wie in flater by it laden fan dizze side. Dit kin komme troch in tydlik probleem mei jo ynternetferbining of dizze server.",
   "bundle_column_error.network.title": "Netwurkflater",
   "bundle_column_error.retry": "Opnij probearje",
   "bundle_column_error.return": "Tebek nei startside",
-  "bundle_column_error.routing.body": "The requested page could not be found. Are you sure the URL in the address bar is correct?",
+  "bundle_column_error.routing.body": "De opfrege side kin net fûn wurde. Binne jo wis dat de URL yn 'e adresbalke goed is?",
   "bundle_column_error.routing.title": "404",
   "bundle_modal_error.close": "Slute",
-  "bundle_modal_error.message": "Something went wrong while loading this component.",
+  "bundle_modal_error.message": "Der gie der mis by it laden fan dizze komponint.",
   "bundle_modal_error.retry": "Opnij probearje",
-  "closed_registrations.other_server_instructions": "Since Mastodon is decentralized, you can create an account on another server and still interact with this one.",
-  "closed_registrations_modal.description": "Creating an account on {domain} is currently not possible, but please keep in mind that you do not need an account specifically on {domain} to use Mastodon.",
-  "closed_registrations_modal.find_another_server": "Find another server",
-  "closed_registrations_modal.preamble": "Mastodon is decentralized, so no matter where you create your account, you will be able to follow and interact with anyone on this server. You can even self-host it!",
-  "closed_registrations_modal.title": "Signing up on Mastodon",
+  "closed_registrations.other_server_instructions": "Sûnt Mastodon desintralisearre is, kinne jo in akkount meitsje op in oare server en noch hieltyd ynteraksje hawwe mei dizze.",
+  "closed_registrations_modal.description": "It oanmeitsjen fan in akkount op {domain} is op it stuit net mooglik, mar hâld asjebleaft yn gedachten dat jo gjin akkount spesifyk op {domain} nedich hawwe om Mastodon te brûken.",
+  "closed_registrations_modal.find_another_server": "Sykje in oare server",
+  "closed_registrations_modal.preamble": "Mastodon is desintralisearre, dus nettsjinsteande wêr't jo jo akkount oanmeitsje, jo kinne elkenien op dizze server folgje en ynteraksje mei hawwe. Jo kinne it sels sels hoste!",
+  "closed_registrations_modal.title": "Oanmelde op Mastodon",
   "column.about": "Oer",
   "column.blocks": "Blokkearre brûkers",
   "column.bookmarks": "Blêdwizers",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Poll wizigje om meardere karren ta te stean",
   "compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
   "compose_form.publish": "Publisearje",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Wizigingen bewarje",
   "compose_form.sensitive.hide": "{count, plural, one {Media as gefoelich markearje} other {Media as gefoelich markearje}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "Technysk probleem melde",
   "explore.search_results": "Sykresultaten",
-  "explore.suggested_follows": "Foar dy",
   "explore.title": "Ferkenne",
-  "explore.trending_links": "Nijs",
-  "explore.trending_statuses": "Berjochten",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/ga.json b/app/javascript/mastodon/locales/ga.json
index f22f7abbc..eac6d9dbc 100644
--- a/app/javascript/mastodon/locales/ga.json
+++ b/app/javascript/mastodon/locales/ga.json
@@ -38,7 +38,7 @@
   "account.follows.empty": "Ní leanann an t-úsáideoir seo duine ar bith fós.",
   "account.follows_you": "Do do leanúint",
   "account.go_to_profile": "Téigh go dtí próifíl",
-  "account.hide_reblogs": "Folaigh athphostálacha ó @{name}",
+  "account.hide_reblogs": "Folaigh moltaí ó @{name}",
   "account.joined_short": "Cláraithe",
   "account.languages": "Athraigh teangacha foscríofa",
   "account.link_verified_on": "Seiceáladh úinéireacht an naisc seo ar {date}",
@@ -55,7 +55,7 @@
   "account.report": "Tuairiscigh @{name}",
   "account.requested": "Ag fanacht le ceadú. Cliceáil chun an iarratas leanúnaí a chealú",
   "account.share": "Roinn próifíl @{name}",
-  "account.show_reblogs": "Taispeáin athphostálacha ó @{name}",
+  "account.show_reblogs": "Taispeáin moltaí ó @{name}",
   "account.statuses_counter": "{count, plural, one {Postáil amháin} other {{counter} Postáil}}",
   "account.unblock": "Bain bac de @{name}",
   "account.unblock_domain": "Bain bac den ainm fearainn {domain}",
@@ -67,7 +67,7 @@
   "account.unmute_short": "Díbhalbhaigh",
   "account_note.placeholder": "Cliceáil chun nóta a chuir leis",
   "admin.dashboard.daily_retention": "Ráta coinneála an úsáideora de réir an lae tar éis clárú",
-  "admin.dashboard.monthly_retention": "User retention rate by month after sign-up",
+  "admin.dashboard.monthly_retention": "Ráta coinneála na n-úsáideoirí de réir na míosa tar éis dóibh clárú",
   "admin.dashboard.retention.average": "Meán",
   "admin.dashboard.retention.cohort": "Mí cláraraithe",
   "admin.dashboard.retention.cohort_size": "Úsáideoirí nua",
@@ -79,23 +79,23 @@
   "attachments_list.unprocessed": "(neamhphróiseáilte)",
   "audio.hide": "Cuir fuaim i bhfolach",
   "autosuggest_hashtag.per_week": "{count} sa seachtain",
-  "boost_modal.combo": "Is féidir leat brúigh {combo} chun é seo a scipeáil an chéad uair eile",
+  "boost_modal.combo": "Is féidir leat {combo} a bhrú chun é seo a scipeáil an chéad uair eile",
   "bundle_column_error.copy_stacktrace": "Cóipeáil tuairisc earráide",
-  "bundle_column_error.error.body": "The requested page could not be rendered. It could be due to a bug in our code, or a browser compatibility issue.",
+  "bundle_column_error.error.body": "Ní féidir an leathanach a iarradh a sholáthar. Seans gurb amhlaidh mar gheall ar fhabht sa chód, nó mar gheall ar mhíréireacht leis an mbrabhsálaí.",
   "bundle_column_error.error.title": "Ná habair!",
-  "bundle_column_error.network.body": "There was an error when trying to load this page. This could be due to a temporary problem with your internet connection or this server.",
+  "bundle_column_error.network.body": "Tharla earráid agus an leathanach á lódáil. Seans gur mar gheall ar fhadhb shealadach le do nasc idirlín nó i ndáil leis an bhfreastalaí seo atá sé.",
   "bundle_column_error.network.title": "Earráid líonra",
   "bundle_column_error.retry": "Bain triail as arís",
   "bundle_column_error.return": "Téigh abhaile",
-  "bundle_column_error.routing.body": "The requested page could not be found. Are you sure the URL in the address bar is correct?",
+  "bundle_column_error.routing.body": "Ní féidir teacht ar an leathanach a iarradh. An bhfuil tú cinnte go bhfuil an URL sa seoladh i gceart?",
   "bundle_column_error.routing.title": "404",
   "bundle_modal_error.close": "Dún",
   "bundle_modal_error.message": "Chuaigh rud éigin mícheart nuair a bhí an chomhpháirt seo ag lódáil.",
   "bundle_modal_error.retry": "Bain triail as arís",
   "closed_registrations.other_server_instructions": "Mar rud díláraithe Mastodon, is féidir leat cuntas a chruthú ar seirbheálaí eile ach fós idirghníomhaigh leis an ceann seo.",
-  "closed_registrations_modal.description": "Creating an account on {domain} is currently not possible, but please keep in mind that you do not need an account specifically on {domain} to use Mastodon.",
+  "closed_registrations_modal.description": "Ní féidir cuntas a chruthú ar {domain} faoi láthair, ach cuimhnigh nach gá go mbeadh cuntas agat go sonrach ar {domain} chun Mastodon a úsáid.",
   "closed_registrations_modal.find_another_server": "Faigh freastalaí eile",
-  "closed_registrations_modal.preamble": "Mastodon is decentralized, so no matter where you create your account, you will be able to follow and interact with anyone on this server. You can even self-host it!",
+  "closed_registrations_modal.preamble": "Ós rud é go bhfuil Mastodon díláraithe, is cuma cá háit a chruthaíonn tú do chuntas, beidh tú in ann idirghníomhú le haon duine ar an bhfreastalaí seo agus iad a leanúint. Is féidir fiú é a féin-óstáil!",
   "closed_registrations_modal.title": "Cláraigh le Mastodon",
   "column.about": "Maidir le",
   "column.blocks": "Cuntais choiscthe",
@@ -104,7 +104,7 @@
   "column.direct": "Teachtaireachtaí dhíreacha",
   "column.directory": "Brabhsáil próifílí",
   "column.domain_blocks": "Fearainn bhactha",
-  "column.favourites": "Roghanna",
+  "column.favourites": "Toghanna",
   "column.follow_requests": "Iarratais leanúnaí",
   "column.home": "Baile",
   "column.lists": "Liostaí",
@@ -112,7 +112,7 @@
   "column.notifications": "Fógraí",
   "column.pins": "Postálacha pionnáilte",
   "column.public": "Amlíne cónaidhmithe",
-  "column_back_button.label": "Siar",
+  "column_back_button.label": "Ar ais",
   "column_header.hide_settings": "Folaigh socruithe",
   "column_header.moveLeft_settings": "Bog an colún ar chlé",
   "column_header.moveRight_settings": "Bog an colún ar dheis",
@@ -126,8 +126,8 @@
   "compose.language.change": "Athraigh teanga",
   "compose.language.search": "Cuardaigh teangacha...",
   "compose_form.direct_message_warning_learn_more": "Tuilleadh eolais",
-  "compose_form.encryption_warning": "Posts on Mastodon are not end-to-end encrypted. Do not share any dangerous information over Mastodon.",
-  "compose_form.hashtag_warning": "This post won't be listed under any hashtag as it is unlisted. Only public posts can be searched by hashtag.",
+  "compose_form.encryption_warning": "Ní criptiú taobh-go-taobh déanta ar theachtaireachtaí ar Mhastodon. Ná roinn eolas íogair ar Mhastodon.",
+  "compose_form.hashtag_warning": "Ní áireofar an teachtaireacht seo faoi haischlib ar bith mar go bhfuil sí neamhliostaithe. Ní féidir ach teachtaireachtaí poiblí a chuardach de réir haischlib.",
   "compose_form.lock_disclaimer": "Níl an cuntas seo {locked}. Féadfaidh duine ar bith tú a leanúint agus na postálacha atá dírithe agat ar do lucht leanúna amháin a fheiceáil.",
   "compose_form.lock_disclaimer.lock": "faoi ghlas",
   "compose_form.placeholder": "Cad atá ag tarlú?",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Athraigh suirbhé chun cead a thabhairt do ilrogha",
   "compose_form.poll.switch_to_single": "Athraigh suirbhé chun cead a thabhairt do rogha amháin",
   "compose_form.publish": "Foilsigh",
+  "compose_form.publish_form": "Foilsigh\n",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Sábháil",
   "compose_form.sensitive.hide": "{count, plural, one {Mark media as sensitive} other {Mark media as sensitive}}",
@@ -163,12 +164,12 @@
   "confirmations.logout.confirm": "Logáil amach",
   "confirmations.logout.message": "An bhfuil tú cinnte gur mhaith leat logáil amach?",
   "confirmations.mute.confirm": "Balbhaigh",
-  "confirmations.mute.explanation": "This will hide posts from them and posts mentioning them, but it will still allow them to see your posts and follow you.",
+  "confirmations.mute.explanation": "Cuiridh seo teachtaireachtaí uathu agus fúthu i bhfolach, ach beidh siad in ann fós do theachtaireachtaí a fheiceáil agus tú a leanúint.",
   "confirmations.mute.message": "An bhfuil tú cinnte gur mhaith leat {name} a bhalbhú?",
   "confirmations.redraft.confirm": "Scrios ⁊ athdhréachtaigh",
-  "confirmations.redraft.message": "An bhfuil tú cinnte gur mhaith leat an phostáil sin a scriosadh agus athdhréachtú? Beidh roghanna agus treisithe caillte, agus beidh freagraí ar an bpostáil bhunúsach ina ndílleachtaí.",
+  "confirmations.redraft.message": "An bhfuil tú cinnte gur mhaith leat an phostáil sin a scriosadh agus a athdhréachtú? Caillfear toghanna agus moltaí, agus fágfar freagracha don phostáil bhunúsach ina ndílleachtaí.",
   "confirmations.reply.confirm": "Freagair",
-  "confirmations.reply.message": "Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?",
+  "confirmations.reply.message": "Scriosfaidh freagra láithreach an teachtaireacht atá a chumadh anois agat. An bhfuil tú cinnte gur mhaith leat leanúint leat?",
   "confirmations.unfollow.confirm": "Ná lean",
   "confirmations.unfollow.message": "An bhfuil tú cinnte gur mhaith leat {name} a dhíleanúint?",
   "conversation.delete": "Scrios comhrá",
@@ -185,7 +186,7 @@
   "disabled_account_banner.text": "Tá do chuntas {disabledAccount} díchumasaithe faoi láthair.",
   "dismissable_banner.community_timeline": "Seo iad na postála is déanaí ó dhaoine le cuntais ar {domain}.",
   "dismissable_banner.dismiss": "Diúltaigh",
-  "dismissable_banner.explore_links": "These news stories are being talked about by people on this and other servers of the decentralized network right now.",
+  "dismissable_banner.explore_links": "Tá na scéalta nuachta seo á phlé anseo agus ar fhreastalaithe eile ar an líonra díláraithe faoi láthair.",
   "dismissable_banner.explore_statuses": "These posts from this and other servers in the decentralized network are gaining traction on this server right now.",
   "dismissable_banner.explore_tags": "These hashtags are gaining traction among people on this and other servers of the decentralized network right now.",
   "dismissable_banner.public_timeline": "These are the most recent public posts from people on this and other servers of the decentralized network that this server knows about.",
@@ -211,13 +212,13 @@
   "empty_column.account_unavailable": "Níl an phróifíl ar fáil",
   "empty_column.blocks": "Níl aon úsáideoir bactha agat fós.",
   "empty_column.bookmarked_statuses": "You don't have any bookmarked posts yet. When you bookmark one, it will show up here.",
-  "empty_column.community": "The local timeline is empty. Write something publicly to get the ball rolling!",
-  "empty_column.direct": "You don't have any direct messages yet. When you send or receive one, it will show up here.",
+  "empty_column.community": "Tá an amlíne áitiúil folamh. Foilsigh rud éigin go poiblí le tús a chur le cúrsaí!",
+  "empty_column.direct": "Níl aon teachtaireacht dírithe agat fós. Nuair a sheolann tú nó nuair a fhaigheann tú ceann, feicfear anseo í.",
   "empty_column.domain_blocks": "Níl aon fearainn bhactha ann go fóill.",
   "empty_column.explore_statuses": "Níl rud ar bith ag treochtáil faoi láthair. Tar ar ais ar ball!",
   "empty_column.favourited_statuses": "Níor roghnaigh tú postáil ar bith fós. Nuair a roghnaigh tú ceann, beidh sí le feiceáil anseo.",
-  "empty_column.favourites": "Níor roghnaigh éinne an phostáil seo fós. Nuair a roghnaigh duine éigin, beidh siad le feiceáil anseo.",
-  "empty_column.follow_recommendations": "Looks like no suggestions could be generated for you. You can try using search to look for people you might know or explore trending hashtags.",
+  "empty_column.favourites": "Níor thogh éinne an phostáil seo fós. Nuair a thoghfaidh duine éigin í, taispeánfar anseo é sin.",
+  "empty_column.follow_recommendations": "Is cosúil nár fhéadfaí moltaí a ghineadh. D'fhéadfá cuardach a úsáid le teacht ar dhaoine a bhfuil aithne agat orthu, nó iniúchadh ar haischlibeanna atá ag treochtáil a dhéanamh.",
   "empty_column.follow_requests": "You don't have any follow requests yet. When you receive one, it will show up here.",
   "empty_column.hashtag": "Níl rud ar bith faoin haischlib seo go fóill.",
   "empty_column.home": "Tá d'amlíne baile folamh! B'fhiú duit cúpla duine eile a leanúint lena líonadh! {suggestions}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "Tuairiscigh deacracht",
   "explore.search_results": "Torthaí cuardaigh",
-  "explore.suggested_follows": "Duitse",
   "explore.title": "Féach thart",
-  "explore.trending_links": "Nuacht",
-  "explore.trending_statuses": "Postálacha",
-  "explore.trending_tags": "Haischlibeanna",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
@@ -269,11 +266,11 @@
   "footer.privacy_policy": "Polasaí príobháideachais",
   "footer.source_code": "Féach ar an gcód foinseach",
   "generic.saved": "Sábháilte",
-  "getting_started.heading": "Getting started",
+  "getting_started.heading": "Ag tosú amach",
   "hashtag.column_header.tag_mode.all": "agus {additional}",
   "hashtag.column_header.tag_mode.any": "nó {additional}",
   "hashtag.column_header.tag_mode.none": "gan {additional}",
-  "hashtag.column_settings.select.no_options_message": "No suggestions found",
+  "hashtag.column_settings.select.no_options_message": "Moltaí ar bith faighte",
   "hashtag.column_settings.select.placeholder": "Iontráil haischlibeanna…",
   "hashtag.column_settings.tag_mode.all": "Iad seo go léir",
   "hashtag.column_settings.tag_mode.any": "Any of these",
@@ -282,7 +279,7 @@
   "hashtag.follow": "Lean haischlib",
   "hashtag.unfollow": "Ná lean haischlib",
   "home.column_settings.basic": "Bunúsach",
-  "home.column_settings.show_reblogs": "Taispeáin treisithe",
+  "home.column_settings.show_reblogs": "Taispeáin moltaí",
   "home.column_settings.show_replies": "Taispeán freagraí",
   "home.hide_announcements": "Cuir fógraí i bhfolach",
   "home.show_announcements": "Taispeáin fógraí",
@@ -294,14 +291,14 @@
   "interaction_modal.on_this_server": "Ar an freastalaí seo",
   "interaction_modal.other_server_instructions": "Copy and paste this URL into the search field of your favourite Mastodon app or the web interface of your Mastodon server.",
   "interaction_modal.preamble": "Since Mastodon is decentralized, you can use your existing account hosted by another Mastodon server or compatible platform if you don't have an account on this one.",
-  "interaction_modal.title.favourite": "Favourite {name}'s post",
+  "interaction_modal.title.favourite": "Togh postáil de chuid {name}",
   "interaction_modal.title.follow": "Lean {name}",
-  "interaction_modal.title.reblog": "Cuir postáil {name} chun cinn",
+  "interaction_modal.title.reblog": "Mol postáil de chuid {name}",
   "interaction_modal.title.reply": "Freagair postáil {name}",
-  "intervals.full.days": "{number, plural, one {# day} other {# days}}",
-  "intervals.full.hours": "{number, plural, one {# hour} other {# hours}}",
-  "intervals.full.minutes": "{number, plural, one {# minute} other {# minutes}}",
-  "keyboard_shortcuts.back": "to navigate back",
+  "intervals.full.days": "{number, plural, one {# lá} other {# lá}}",
+  "intervals.full.hours": "{number, plural, one {# uair} other {# uair}}",
+  "intervals.full.minutes": "{number, plural, one {# nóiméad} other {# nóiméad}}",
+  "keyboard_shortcuts.back": "Nasclean siar",
   "keyboard_shortcuts.blocked": "Oscail liosta na n-úsáideoirí bactha",
   "keyboard_shortcuts.boost": "Treisigh postáil",
   "keyboard_shortcuts.column": "to focus a status in one of the columns",
@@ -311,10 +308,10 @@
   "keyboard_shortcuts.down": "Bog síos ar an liosta",
   "keyboard_shortcuts.enter": "Oscail postáil",
   "keyboard_shortcuts.favourite": "Roghnaigh postáil",
-  "keyboard_shortcuts.favourites": "Oscail liosta roghanna",
+  "keyboard_shortcuts.favourites": "Oscail liosta toghanna",
   "keyboard_shortcuts.federated": "Oscail amlíne cónaidhmithe",
   "keyboard_shortcuts.heading": "Aicearraí méarchláir",
-  "keyboard_shortcuts.home": "to open home timeline",
+  "keyboard_shortcuts.home": "Oscail amlíne bhaile",
   "keyboard_shortcuts.hotkey": "Eochair aicearra",
   "keyboard_shortcuts.legend": "to display this legend",
   "keyboard_shortcuts.local": "Oscail an amlíne áitiúil",
@@ -322,7 +319,7 @@
   "keyboard_shortcuts.muted": "Oscail liosta na n-úsáideoirí balbhaithe",
   "keyboard_shortcuts.my_profile": "Oscail do phróifíl",
   "keyboard_shortcuts.notifications": "to open notifications column",
-  "keyboard_shortcuts.open_media": "to open media",
+  "keyboard_shortcuts.open_media": "Oscail meáin",
   "keyboard_shortcuts.pinned": "to open pinned posts list",
   "keyboard_shortcuts.profile": "Oscail próifíl an t-údar",
   "keyboard_shortcuts.reply": "Freagair ar phostáil",
@@ -349,7 +346,7 @@
   "lists.edit.submit": "Athraigh teideal",
   "lists.new.create": "Cruthaigh liosta",
   "lists.new.title_placeholder": "New list title",
-  "lists.replies_policy.followed": "Any followed user",
+  "lists.replies_policy.followed": "Úsáideoir ar bith atá á leanúint",
   "lists.replies_policy.list": "Baill an liosta",
   "lists.replies_policy.none": "Duine ar bith",
   "lists.replies_policy.title": "Taispeáin freagraí:",
@@ -374,7 +371,7 @@
   "navigation_bar.domain_blocks": "Fearainn bhactha",
   "navigation_bar.edit_profile": "Cuir an phróifíl in eagar",
   "navigation_bar.explore": "Féach thart",
-  "navigation_bar.favourites": "Roghanna",
+  "navigation_bar.favourites": "Toghanna",
   "navigation_bar.filters": "Focail bhalbhaithe",
   "navigation_bar.follow_requests": "Iarratais leanúnaí",
   "navigation_bar.follows_and_followers": "Ag leanúint agus do do leanúint",
@@ -390,22 +387,22 @@
   "not_signed_in_indicator.not_signed_in": "You need to sign in to access this resource.",
   "notification.admin.report": "Tuairiscigh {name} {target}",
   "notification.admin.sign_up": "Chláraigh {name}",
-  "notification.favourite": "Roghnaigh {name} do phostáil",
+  "notification.favourite": "Is maith le {name} do phostáil",
   "notification.follow": "Lean {name} thú",
   "notification.follow_request": "D'iarr {name} ort do chuntas a leanúint",
   "notification.mention": "Luaigh {name} tú",
-  "notification.own_poll": "Your poll has ended",
-  "notification.poll": "A poll you have voted in has ended",
-  "notification.reblog": "Threisigh {name} do phostáil",
+  "notification.own_poll": "Tá do suirbhé críochnaithe",
+  "notification.poll": "Tá suirbhé inar vótáil tú tar éis críochnú",
+  "notification.reblog": "Mhol {name} do phostáil",
   "notification.status": "Phostáil {name} díreach",
   "notification.update": "Chuir {name} postáil in eagar",
   "notifications.clear": "Glan fógraí",
   "notifications.clear_confirmation": "Are you sure you want to permanently clear all your notifications?",
   "notifications.column_settings.admin.report": "Tuairiscí nua:",
   "notifications.column_settings.admin.sign_up": "New sign-ups:",
-  "notifications.column_settings.alert": "Desktop notifications",
-  "notifications.column_settings.favourite": "Roghanna:",
-  "notifications.column_settings.filter_bar.advanced": "Display all categories",
+  "notifications.column_settings.alert": "Fógraí deisce",
+  "notifications.column_settings.favourite": "Toghanna:",
+  "notifications.column_settings.filter_bar.advanced": "Taispeáin na catagóirí go léir",
   "notifications.column_settings.filter_bar.category": "Quick filter bar",
   "notifications.column_settings.filter_bar.show_bar": "Taispeáin barra scagaire",
   "notifications.column_settings.follow": "Leantóirí nua:",
@@ -413,7 +410,7 @@
   "notifications.column_settings.mention": "Tráchtanna:",
   "notifications.column_settings.poll": "Torthaí suirbhéanna:",
   "notifications.column_settings.push": "Brúfhógraí",
-  "notifications.column_settings.reblog": "Treisithe:",
+  "notifications.column_settings.reblog": "Moltaí:",
   "notifications.column_settings.show": "Taispeáin i gcolún",
   "notifications.column_settings.sound": "Seinn an fhuaim",
   "notifications.column_settings.status": "Postálacha nua:",
@@ -422,11 +419,11 @@
   "notifications.column_settings.update": "Eagair:",
   "notifications.filter.all": "Uile",
   "notifications.filter.boosts": "Treisithe",
-  "notifications.filter.favourites": "Roghanna",
+  "notifications.filter.favourites": "Toghanna",
   "notifications.filter.follows": "Ag leanúint",
   "notifications.filter.mentions": "Tráchtanna",
   "notifications.filter.polls": "Torthaí suirbhéanna",
-  "notifications.filter.statuses": "Updates from people you follow",
+  "notifications.filter.statuses": "Nuashonruithe ó dhaoine a leanann tú",
   "notifications.grant_permission": "Tabhair cead.",
   "notifications.group": "{count} fógraí",
   "notifications.mark_as_read": "Mark every notification as read",
@@ -473,7 +470,7 @@
   "relative_time.today": "inniu",
   "reply_indicator.cancel": "Cealaigh",
   "report.block": "Bac",
-  "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": "Ní fheicfidh tú a c(h)úid postálacha. Ní bheidh sé/sí in ann do chuid postálacha a fheiceáil ná tú féin a leanúint. Beidh sé/sí in ann a dhéanamh amach go bhfuil sé/sí bactha.",
   "report.categories.other": "Eile",
   "report.categories.spam": "Turscar",
   "report.categories.violation": "Sáraíonn ábhar riail freastalaí amháin nó níos mó",
@@ -495,11 +492,11 @@
   "report.reasons.other_description": "The issue does not fit into other categories",
   "report.reasons.spam": "Is turscar é",
   "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.reasons.violation": "Sáraíonn sé rialacha an fhreastalaí",
+  "report.reasons.violation_description": "Tá a fhios agat go sáraíonn sé rialacha ar leith",
+  "report.rules.subtitle": "Roghnaigh gach atá i bhfeidhm",
+  "report.rules.title": "Cén rialacha atá á sárú?",
+  "report.statuses.subtitle": "Roghnaigh gach atá i bhfeidhm",
   "report.statuses.title": "Are there any posts that back up this report?",
   "report.submit": "Cuir isteach",
   "report.target": "Ag tuairisciú {target}",
@@ -515,7 +512,7 @@
   "report_notification.categories.violation": "Sárú rialach",
   "report_notification.open": "Oscail tuairisc",
   "search.placeholder": "Cuardaigh",
-  "search.search_or_paste": "Search or paste URL",
+  "search.search_or_paste": "Cuardaigh nó cuir URL isteach",
   "search_popout.search_format": "Advanced search format",
   "search_popout.tips.full_text": "Simple text returns statuses you have written, favourited, boosted, or have been mentioned in, as well as matching usernames, display names, and hashtags.",
   "search_popout.tips.hashtag": "haischlib",
@@ -543,8 +540,8 @@
   "status.admin_status": "Open this status in the moderation interface",
   "status.block": "Bac @{name}",
   "status.bookmark": "Leabharmharcanna",
-  "status.cancel_reblog_private": "Díthreisigh",
-  "status.cannot_reblog": "Ní féidir an phostáil seo a threisiú",
+  "status.cancel_reblog_private": "Dímhol",
+  "status.cannot_reblog": "Ní féidir an phostáil seo a mholadh",
   "status.copy": "Copy link to status",
   "status.delete": "Scrios",
   "status.detailed_status": "Detailed conversation view",
@@ -569,10 +566,10 @@
   "status.pin": "Pionnáil ar do phróifíl",
   "status.pinned": "Pinned post",
   "status.read_more": "Léan a thuilleadh",
-  "status.reblog": "Treisigh",
-  "status.reblog_private": "Treisigh le léargas bunúsach",
-  "status.reblogged_by": "Treisithe ag {name}",
-  "status.reblogs.empty": "Níor threisigh éinne an phostáil seo fós. Nuair a threisigh duine éigin, beidh siad le feiceáil anseo.",
+  "status.reblog": "Mol",
+  "status.reblog_private": "Mol le léargas bunúsach",
+  "status.reblogged_by": "Mhol {name}",
+  "status.reblogs.empty": "Níor mhol éinne an phostáil seo fós. Nuair a mholfaidh duine éigin í, taispeánfar anseo é sin.",
   "status.redraft": "Scrios ⁊ athdhréachtaigh",
   "status.remove_bookmark": "Remove bookmark",
   "status.replied_to": "Replied to {name}",
@@ -608,14 +605,14 @@
   "time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
   "timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
   "timeline_hint.resources.followers": "Leantóirí",
-  "timeline_hint.resources.follows": "Follows",
+  "timeline_hint.resources.follows": "Cuntais leanta",
   "timeline_hint.resources.statuses": "Postáilí níos sine",
   "trends.counter_by_accounts": "{count, plural, one {{counter} person} other {{counter} people}} in the past {days, plural, one {day} other {{days} days}}",
   "trends.trending_now": "Ag treochtáil anois",
   "ui.beforeunload": "Your draft will be lost if you leave Mastodon.",
   "units.short.billion": "{count}B",
   "units.short.million": "{count}M",
-  "units.short.thousand": "{count}K",
+  "units.short.thousand": "{count}k",
   "upload_area.title": "Tarraing ⁊ scaoil chun uaslódáil",
   "upload_button.label": "Add images, a video or an audio file",
   "upload_error.limit": "File upload limit exceeded.",
diff --git a/app/javascript/mastodon/locales/gd.json b/app/javascript/mastodon/locales/gd.json
index 06683f983..dfafb89d5 100644
--- a/app/javascript/mastodon/locales/gd.json
+++ b/app/javascript/mastodon/locales/gd.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Atharraich an cunntas-bheachd ach an gabh iomadh roghainn a thaghadh",
   "compose_form.poll.switch_to_single": "Atharraich an cunntas-bheachd gus nach gabh ach aon roghainn a thaghadh",
   "compose_form.publish": "Foillsich",
+  "compose_form.publish_form": "Foillsich",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Sàbhail na h-atharraichean",
   "compose_form.sensitive.hide": "{count, plural, one {Cuir comharra gu bheil am meadhan frionasach} two {Cuir comharra gu bheil na meadhanan frionasach} few {Cuir comharra gu bheil na meadhanan frionasach} other {Cuir comharra gu bheil na meadhanan frionasach}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Cuir lethbhreac dhen stacktrace air an stòr-bhòrd",
   "errors.unexpected_crash.report_issue": "Dèan aithris air an duilgheadas",
   "explore.search_results": "Toraidhean an luirg",
-  "explore.suggested_follows": "Dhut-sa",
   "explore.title": "Rùraich",
-  "explore.trending_links": "Naidheachdan",
-  "explore.trending_statuses": "Postaichean",
-  "explore.trending_tags": "Tagaichean hais",
   "filter_modal.added.context_mismatch_explanation": "Chan eil an roinn-seòrsa criathraidh iom seo chaidh dhan cho-theacs san do dh’inntrig thu am post seo. Ma tha thu airson am post a chriathradh sa cho-theacs seo cuideachd, feumaidh tu a’ chriathrag a dheasachadh.",
   "filter_modal.added.context_mismatch_title": "Co-theacsa neo-iomchaidh!",
   "filter_modal.added.expired_explanation": "Dh’fhalbh an ùine air an roinn-seòrsa criathraidh seo agus feumaidh tu an ceann-là crìochnachaidh atharrachadh mus cuir thu an sàs i.",
@@ -473,7 +470,7 @@
   "relative_time.today": "an-diugh",
   "reply_indicator.cancel": "Sguir dheth",
   "report.block": "Bac",
-  "report.block_explanation": "Chan fhaic thu na postaichean aca. Chan fhaic iad na postaichean agad is chan urrainn dhaibh ’gad leantainn. Mothaichidh iad gun deach am bacadh.",
+  "report.block_explanation": "Chan fhaic thu na postaichean aca. Chan fhaic iad na postaichean agad is cha dèid aca air do leantainn. Bheir iad an aire gun deach am bacadh.",
   "report.categories.other": "Eile",
   "report.categories.spam": "Spama",
   "report.categories.violation": "Tha an t-susbaint a’ briseadh riaghailt no dhà an fhrithealaiche",
diff --git a/app/javascript/mastodon/locales/gl.json b/app/javascript/mastodon/locales/gl.json
index 62a71b122..05f5229f3 100644
--- a/app/javascript/mastodon/locales/gl.json
+++ b/app/javascript/mastodon/locales/gl.json
@@ -1,8 +1,8 @@
 {
-  "about.blocks": "Servidores moderados",
+  "about.blocks": "Servidores suxeitos a moderación",
   "about.contact": "Contacto:",
   "about.disclaimer": "Mastodon é software libre, de código aberto, e unha marca comercial de Mastodon gGmbH.",
-  "about.domain_blocks.no_reason_available": "Non está indicada a razón",
+  "about.domain_blocks.no_reason_available": "Motivo non indicado. ",
   "about.domain_blocks.preamble": "Mastodon de xeito xeral permíteche ver contidos doutros servidores do fediverso e interactuar coas súas usuarias. Estas son as excepcións que se estabeleceron neste servidor en particular.",
   "about.domain_blocks.silenced.explanation": "Por defecto non verás perfís e contido desde este servidor, a menos que mires de xeito explícito ou optes por seguir ese contido ou usuaria.",
   "about.domain_blocks.silenced.title": "Limitado",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Mudar a enquisa para permitir múltiples escollas",
   "compose_form.poll.switch_to_single": "Mudar a enquisa para permitir unha soa escolla",
   "compose_form.publish": "Publicar",
+  "compose_form.publish_form": "Publicar",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Gardar cambios",
   "compose_form.sensitive.hide": "{count, plural, one {Marca multimedia como sensible} other {Marca multimedia como sensibles}}",
@@ -163,7 +164,7 @@
   "confirmations.logout.confirm": "Pechar sesión",
   "confirmations.logout.message": "Desexas pechar a sesión?",
   "confirmations.mute.confirm": "Acalar",
-  "confirmations.mute.explanation": "Isto agochará as publicacións delas ou nas que as mencionen, mais permitirá que vexan as túas publicacións e sexan seguidoras túas.",
+  "confirmations.mute.explanation": "Isto agochará as súas publicacións ou as que a mencionen, mais poderá ler as túas publicacións e ser seguidora túa.",
   "confirmations.mute.message": "Tes a certeza de querer acalar a {name}?",
   "confirmations.redraft.confirm": "Eliminar e reescribir",
   "confirmations.redraft.message": "Tes a certeza de querer eliminar esta publicación e reescribila? Perderás os compartidos e favoritos, e as respostas á publicación orixinal ficarán orfas.",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copiar trazas (stacktrace) ó portapapeis",
   "errors.unexpected_crash.report_issue": "Informar sobre un problema",
   "explore.search_results": "Resultados da busca",
-  "explore.suggested_follows": "Para ti",
   "explore.title": "Descubrir",
-  "explore.trending_links": "Novas",
-  "explore.trending_statuses": "Publicacións",
-  "explore.trending_tags": "Cancelos",
   "filter_modal.added.context_mismatch_explanation": "Esta categoría de filtro non se aplica ao contexto no que accedeches a esta publicación. Se queres que a publicación se filtre nese contexto tamén, terás que editar o filtro.",
   "filter_modal.added.context_mismatch_title": "Non concorda o contexto!",
   "filter_modal.added.expired_explanation": "Esta categoría de filtro caducou, terás que cambiar a data de caducidade para que se aplique.",
@@ -362,7 +359,7 @@
   "missing_indicator.sublabel": "Este recurso non foi atopado",
   "moved_to_account_banner.text": "A túa conta {disabledAccount} está actualmente desactivada porque movéchela a {movedToAccount}.",
   "mute_modal.duration": "Duración",
-  "mute_modal.hide_notifications": "Agochar notificacións desta usuaria?",
+  "mute_modal.hide_notifications": "Agochar notificacións desta persoa?",
   "mute_modal.indefinite": "Indefinida",
   "navigation_bar.about": "Acerca de",
   "navigation_bar.blocks": "Usuarias bloqueadas",
@@ -461,10 +458,10 @@
   "regeneration_indicator.label": "Estase a cargar…",
   "regeneration_indicator.sublabel": "Estase a preparar a túa cronoloxía de inicio!",
   "relative_time.days": "{number}d",
-  "relative_time.full.days": "fai {number, plural, one {# día} other {# días}}",
-  "relative_time.full.hours": "fai {number, plural, one {# hora} other {# horas}}",
+  "relative_time.full.days": "hai {number, plural, one {# día} other {# días}}",
+  "relative_time.full.hours": "hai {number, plural, one {# hora} other {# horas}}",
   "relative_time.full.just_now": "xusto agora",
-  "relative_time.full.minutes": "fai {number, plural, one {# minuto} other {# minutos}}",
+  "relative_time.full.minutes": "hai {number, plural, one {# minuto} other {# minutos}}",
   "relative_time.full.seconds": "fai {number, plural, one {# segundo} other {# segundos}}",
   "relative_time.hours": "{number}h",
   "relative_time.just_now": "agora",
@@ -473,12 +470,12 @@
   "relative_time.today": "hoxe",
   "reply_indicator.cancel": "Desbotar",
   "report.block": "Bloquear",
-  "report.block_explanation": "Non vas ver as súas publicacións. Nin verán as túas publicacións nin poderán seguirte. Poderán comprobar que as bloqueaches.",
+  "report.block_explanation": "Non vas ver as súas publicacións. Nin verá as túas publicacións nin poderá seguirte. Poderá comprobar que as bloqueaches.",
   "report.categories.other": "Outro",
   "report.categories.spam": "Spam",
   "report.categories.violation": "O contido viola unha ou máis regras do servidor",
   "report.category.subtitle": "Elixe a mellor coincidencia",
-  "report.category.title": "Dinos o que está a pasar con {type}",
+  "report.category.title": "Cóntanos o problema con {type}",
   "report.category.title_account": "perfil",
   "report.category.title_status": "publicación",
   "report.close": "Feito",
@@ -486,7 +483,7 @@
   "report.forward": "Reenviar a {target}",
   "report.forward_hint": "A conta é doutro servidor. Enviar unha copia anónima da denuncia aló tamén?",
   "report.mute": "Acalar",
-  "report.mute_explanation": "Non verás as súas publicacións. Poderán seguirte e ver as túas publicacións e non saberán que as acalaches.",
+  "report.mute_explanation": "Non verás as súas publicacións. Poderá seguirte e ver as túas publicacións e non saberá que a silenciaches.",
   "report.next": "Seguinte",
   "report.placeholder": "Comentarios adicionais",
   "report.reasons.dislike": "Non me gusta",
diff --git a/app/javascript/mastodon/locales/he.json b/app/javascript/mastodon/locales/he.json
index f11b063b8..3307e3ed7 100644
--- a/app/javascript/mastodon/locales/he.json
+++ b/app/javascript/mastodon/locales/he.json
@@ -26,8 +26,8 @@
   "account.edit_profile": "עריכת פרופיל",
   "account.enable_notifications": "שלח לי התראות כש@{name} מפרסם",
   "account.endorse": "קדם את החשבון בפרופיל",
-  "account.featured_tags.last_status_at": "הודעה אחרונה בתאריך {date}",
-  "account.featured_tags.last_status_never": "אין הודעות",
+  "account.featured_tags.last_status_at": "חצרוץ אחרון בתאריך {date}",
+  "account.featured_tags.last_status_never": "אין חצרוצים",
   "account.featured_tags.title": "התגיות המועדפות של {name}",
   "account.follow": "עקוב",
   "account.followers": "עוקבים",
@@ -110,7 +110,7 @@
   "column.lists": "רשימות",
   "column.mutes": "משתמשים בהשתקה",
   "column.notifications": "התראות",
-  "column.pins": "פווסטים נעוצים",
+  "column.pins": "חיצרוצים נעוצים",
   "column.public": "פיד כללי (כל השרתים)",
   "column_back_button.label": "בחזרה",
   "column_header.hide_settings": "הסתרת הגדרות",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "אפשרו בחירה מרובה בסקר",
   "compose_form.poll.switch_to_single": "אפשרו בחירה בודדת בסקר",
   "compose_form.publish": "פרסום",
+  "compose_form.publish_form": "לפרסם",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "שמירת שינויים",
   "compose_form.sensitive.hide": "{count, plural, one {סימון מידע כרגיש} other {סימון מידע כרגיש}}",
@@ -183,12 +184,12 @@
   "directory.recently_active": "פעילים לאחרונה",
   "disabled_account_banner.account_settings": "הגדרות חשבון",
   "disabled_account_banner.text": "חשבונך {disabledAccount} אינו פעיל כרגע.",
-  "dismissable_banner.community_timeline": "אלו הם ההודעות הציבוריות האחרונות מהמשתמשים על שרת {domain}.",
+  "dismissable_banner.community_timeline": "אלו הם החצרוצים הציבוריים האחרונים מהמשתמשים על שרת {domain}.",
   "dismissable_banner.dismiss": "בטל",
   "dismissable_banner.explore_links": "אלו סיפורי החדשות האחרונים שמדוברים על ידי משתמשים בשרת זה ואחרים ברשת המבוזרת כרגע.",
-  "dismissable_banner.explore_statuses": "ההודעות האלו, משרת זה ואחרים ברשת המבוזרת, כרגע צוברות חשיפה.",
+  "dismissable_banner.explore_statuses": "החצרוצים האלו, משרת זה ואחרים ברשת המבוזרת, כרגע צוברים חשיפה.",
   "dismissable_banner.explore_tags": "התגיות האלו, משרת זה ואחרים ברשת המבוזרת, כרגע צוברות חשיפה.",
-  "dismissable_banner.public_timeline": "אלו הם ההודעות הציבוריות האחרונות מהמשתמשים משרת זה ואחרים ברשת המבוזרת ששרת זה יודע עליהן.",
+  "dismissable_banner.public_timeline": "אלו הם החצרוצים הציבוריים האחרונים מהמשתמשים משרת זה ואחרים ברשת המבוזרת ששרת זה יודע עליהן.",
   "embed.instructions": "ניתן להטמיע את ההודעה הזו באתרך ע\"י העתקת הקוד שלהלן.",
   "embed.preview": "דוגמא כיצד זה יראה:",
   "emoji_button.activity": "פעילות",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "להעתיק את הקוד ללוח הכתיבה",
   "errors.unexpected_crash.report_issue": "דווח על בעיה",
   "explore.search_results": "תוצאות חיפוש",
-  "explore.suggested_follows": "עבורך",
   "explore.title": "סיור",
-  "explore.trending_links": "חדשות",
-  "explore.trending_statuses": "הודעות",
-  "explore.trending_tags": "האשטאגים",
   "filter_modal.added.context_mismatch_explanation": "קטגוריית הסנן הזאת לא חלה על ההקשר שממנו הגעת אל ההודעה הזו. אם תרצה/י שההודעה תסונן גם בהקשר זה, תצטרך/י לערוך את הסנן.",
   "filter_modal.added.context_mismatch_title": "אין התאמה להקשר!",
   "filter_modal.added.expired_explanation": "פג תוקפה של קטגוריית הסינון הזו, יש צורך לשנות את תאריך התפוגה כדי שהסינון יוחל.",
@@ -286,26 +283,26 @@
   "home.column_settings.show_replies": "הצגת תגובות",
   "home.hide_announcements": "הסתר הכרזות",
   "home.show_announcements": "הצג הכרזות",
-  "interaction_modal.description.favourite": "עם חשבון מסטודון, ניתן לחבב את ההודעה כדי לומר למחבר/ת שהערכת את תוכנה או כדי לשמור אותה לקריאה בעתיד.",
+  "interaction_modal.description.favourite": "עם חשבון מסטודון, ניתן לחבב את החצרוץ כדי לומר למחבר/ת שהערכת את תוכנו או כדי לשמור אותו לקריאה בעתיד.",
   "interaction_modal.description.follow": "עם חשבון מסטודון, ניתן לעקוב אחרי {name} כדי לקבל את הםוסטים שלו/ה בפיד הבית.",
-  "interaction_modal.description.reblog": "עם חשבון מסטודון, ניתן להדהד את ההודעה ולשתף עם עוקבים.",
-  "interaction_modal.description.reply": "עם חשבון מסטודון, ניתן לענות להודעה.",
+  "interaction_modal.description.reblog": "עם חשבון מסטודון, ניתן להדהד את החצרוץ ולשתף עם עוקבים.",
+  "interaction_modal.description.reply": "עם חשבון מסטודון, ניתן לענות לחצרוץ.",
   "interaction_modal.on_another_server": "על שרת אחר",
   "interaction_modal.on_this_server": "על שרת זה",
   "interaction_modal.other_server_instructions": "ניתן להעתיק ולהדביק קישור זה לתוך שדה החיפוש באפליקציית מסטודון שבשימוש אצלך או בממשק הדפדפן של שרת המסטודון.",
   "interaction_modal.preamble": "כיוון שמסטודון מבוזרת, תוכל/י להשתמש בחשבון שלך משרתי מסטודון או רשתות תואמות אחרות אם אין לך חשבון על שרת זה.",
-  "interaction_modal.title.favourite": "חיבוב ההודעה של {name}",
+  "interaction_modal.title.favourite": "חיבוב החצרוץ של {name}",
   "interaction_modal.title.follow": "לעקוב אחרי {name}",
-  "interaction_modal.title.reblog": "להדהד את ההודעה של {name}",
-  "interaction_modal.title.reply": "תשובה להודעה של {name}",
+  "interaction_modal.title.reblog": "להדהד את החצרוץ של {name}",
+  "interaction_modal.title.reply": "תשובה לחצרוץ של {name}",
   "intervals.full.days": "{number, plural, one {# יום} other {# ימים}}",
   "intervals.full.hours": "{number, plural, one {# שעה} other {# שעות}}",
   "intervals.full.minutes": "{number, plural, one {# דקה} other {# דקות}}",
   "keyboard_shortcuts.back": "ניווט חזרה",
   "keyboard_shortcuts.blocked": "פתיחת רשימת חסומים",
   "keyboard_shortcuts.boost": "להדהד",
-  "keyboard_shortcuts.column": "להתמקד בהודעה באחד מהטורים",
-  "keyboard_shortcuts.compose": "להתמקד בתיבת חיבור ההודעות",
+  "keyboard_shortcuts.column": "להתמקד בחצרוץ באחד מהטורים",
+  "keyboard_shortcuts.compose": "להתמקד בתיבת חיבור החצרוצים",
   "keyboard_shortcuts.description": "תיאור",
   "keyboard_shortcuts.direct": "לפתיחת טור הודעות ישירות",
   "keyboard_shortcuts.down": "לנוע במורד הרשימה",
@@ -332,7 +329,7 @@
   "keyboard_shortcuts.start": "לפתוח את הטור \"בואו נתחיל\"",
   "keyboard_shortcuts.toggle_hidden": "הצגת/הסתרת טקסט מוסתר מאחורי אזהרת תוכן",
   "keyboard_shortcuts.toggle_sensitivity": "הצגת/הסתרת מדיה",
-  "keyboard_shortcuts.toot": "להתחיל הודעה חדשה",
+  "keyboard_shortcuts.toot": "להתחיל חיצרוץ חדש",
   "keyboard_shortcuts.unfocus": "לצאת מתיבת חיבור/חיפוש",
   "keyboard_shortcuts.up": "לנוע במעלה הרשימה",
   "lightbox.close": "סגירה",
@@ -429,12 +426,12 @@
   "notifications.filter.statuses": "עדכונים מאנשים במעקב",
   "notifications.grant_permission": "מתן הרשאה.",
   "notifications.group": "{count} התראות",
-  "notifications.mark_as_read": "סימון כל ההודעות כנקראו",
+  "notifications.mark_as_read": "סימון כל החצרוצים כנקראו",
   "notifications.permission_denied": "לא ניתן להציג התראות מסך כיוון כיוון שהרשאות דפדפן נשללו בעבר",
   "notifications.permission_denied_alert": "לא ניתן לאפשר נוטיפיקציות מסך שכן הדפדפן סורב הרשאה בעבר",
   "notifications.permission_required": "לא ניתן לאפשר נוטיפיקציות מסך כיוון שהרשאה דרושה לא ניתנה.",
   "notifications_permission_banner.enable": "לאפשר נוטיפיקציות מסך",
-  "notifications_permission_banner.how_to_control": "כדי לקבל הודעות גם כאשר מסטודון סגור יש לאפשר נוטיפיקציות מסך. ניתן לשלוט בדיוק איזה סוג של אינטראקציות יביא לנוטיפיקציות מסך דרך כפתור ה- {icon} מרגע שהן מאופשרות.",
+  "notifications_permission_banner.how_to_control": "כדי לקבל התראות גם כאשר מסטודון סגור יש לאפשר התראות מסך. ניתן לשלוט בדיוק איזה סוג של אינטראקציות יביא להתראות מסך דרך כפתור ה- {icon} מרגע שהן מאופשרות.",
   "notifications_permission_banner.title": "לעולם אל תחמיץ דבר",
   "picture_in_picture.restore": "החזירי למקומו",
   "poll.closed": "סגור",
@@ -538,13 +535,13 @@
   "server_banner.server_stats": "סטטיסטיקות שרת:",
   "sign_in_banner.create_account": "יצירת חשבון",
   "sign_in_banner.sign_in": "התחברות",
-  "sign_in_banner.text": "יש להתחבר כדי לעקוב אחרי משתמשים או תגיות, לחבב, לשתף ולענות להודעות, או לנהל תקשורת מהחשבון שלך על שרת אחר.",
+  "sign_in_banner.text": "יש להתחבר כדי לעקוב אחרי משתמשים או תגיות, לחבב, לשתף ולענות לחצרוצים, או לנהל תקשורת מהחשבון שלך על שרת אחר.",
   "status.admin_account": "פתח/י ממשק ניהול עבור @{name}",
   "status.admin_status": "Open this status in the moderation interface",
   "status.block": "חסימת @{name}",
   "status.bookmark": "סימניה",
   "status.cancel_reblog_private": "הסרת הדהוד",
-  "status.cannot_reblog": "לא ניתן להדהד הודעה זו",
+  "status.cannot_reblog": "לא ניתן להדהד חצרוץ זה",
   "status.copy": "העתק/י קישור להודעה זו",
   "status.delete": "מחיקה",
   "status.detailed_status": "תצוגת שיחה מפורטת",
@@ -556,7 +553,7 @@
   "status.favourite": "חיבוב",
   "status.filter": "סנן הודעה זו",
   "status.filtered": "סונן",
-  "status.hide": "הסתר הודעה",
+  "status.hide": "הסתר חצרוץ",
   "status.history.created": "{name} יצר/ה {date}",
   "status.history.edited": "{name} ערך/ה {date}",
   "status.load_more": "עוד",
@@ -567,7 +564,7 @@
   "status.mute_conversation": "השתקת שיחה",
   "status.open": "הרחבת הודעה זו",
   "status.pin": "הצמדה לפרופיל שלי",
-  "status.pinned": "הודעה נעוצה",
+  "status.pinned": "חצרוץ נעוץ",
   "status.read_more": "לקרוא עוד",
   "status.reblog": "הדהוד",
   "status.reblog_private": "להדהד ברמת הנראות המקורית",
@@ -577,7 +574,7 @@
   "status.remove_bookmark": "הסרת סימניה",
   "status.replied_to": "הגב לחשבון {name}",
   "status.reply": "תגובה",
-  "status.replyAll": "תגובה לפתיל",
+  "status.replyAll": "תגובה לשרשור",
   "status.report": "דיווח על @{name}",
   "status.sensitive_warning": "תוכן רגיש",
   "status.share": "שיתוף",
@@ -592,7 +589,7 @@
   "status.uncached_media_warning": "לא זמין",
   "status.unmute_conversation": "הסרת השתקת שיחה",
   "status.unpin": "לשחרר מקיבוע באודות",
-  "subscribed_languages.lead": "רק הודעות בשפות הנבחרות יופיעו בפיד הבית וברשימות שלך אחרי השינוי. נקו את כל הבחירות כדי לראות את כל השפות.",
+  "subscribed_languages.lead": "רק חצרוצים בשפות הנבחרות יופיעו בפיד הבית וברשימות שלך אחרי השינוי. נקו את כל הבחירות כדי לראות את כל השפות.",
   "subscribed_languages.save": "שמירת שינויים",
   "subscribed_languages.target": "שינוי רישום שפה עבור {target}",
   "suggestions.dismiss": "להתעלם מהצעה",
diff --git a/app/javascript/mastodon/locales/hi.json b/app/javascript/mastodon/locales/hi.json
index 6879f7a0c..2ab83fd37 100644
--- a/app/javascript/mastodon/locales/hi.json
+++ b/app/javascript/mastodon/locales/hi.json
@@ -1,16 +1,16 @@
 {
-  "about.blocks": "Moderated servers",
-  "about.contact": "Contact:",
-  "about.disclaimer": "Mastodon is free, open-source software, and a trademark of Mastodon gGmbH.",
-  "about.domain_blocks.no_reason_available": "Reason not available",
-  "about.domain_blocks.preamble": "Mastodon generally allows you to view content from and interact with users from any other server in the fediverse. These are the exceptions that have been made on this particular server.",
-  "about.domain_blocks.silenced.explanation": "You will generally not see profiles and content from this server, unless you explicitly look it up or opt into it by following.",
-  "about.domain_blocks.silenced.title": "Limited",
-  "about.domain_blocks.suspended.explanation": "No data from this server will be processed, stored or exchanged, making any interaction or communication with users from this server impossible.",
-  "about.domain_blocks.suspended.title": "Suspended",
-  "about.not_available": "This information has not been made available on this server.",
-  "about.powered_by": "Decentralized social media powered by {mastodon}",
-  "about.rules": "Server rules",
+  "about.blocks": "मॉडरेट सर्वर",
+  "about.contact": "कांटेक्ट:",
+  "about.disclaimer": "मास्टोडन एक ओपन सोर्स सॉफ्टवेयर है, और मास्टोडन gGmbH का ट्रेडमार्क है।",
+  "about.domain_blocks.no_reason_available": "कारण उपलब्ध नहीं है!",
+  "about.domain_blocks.preamble": "मास्टोडन आम तौर पर आपको कंटेंट को देखने और फेडिवेर्से में किसी अन्य सर्वर से उपयोगकर्ताओं के साथ बातचीत करने की अनुमति देता है। ये अपवाद हैं जो इस विशेष सर्वर पर बनाए गए हैं।",
+  "about.domain_blocks.silenced.explanation": "आप आमतौर पर इस सर्वर से प्रोफ़ाइल और कंटेंट नहीं देख पाएंगे, जब तक कि आप इसे स्पष्ट रूप से नहीं देखते या इसका अनुसरण करके इसका चयन नहीं करते।",
+  "about.domain_blocks.silenced.title": "सीमित",
+  "about.domain_blocks.suspended.explanation": "इस सर्वर से कोई डेटा संसाधित, संग्रहीत या आदान-प्रदान नहीं किया जाएगा, जिससे इस सर्वर से उपयोगकर्ताओं के साथ कोई भी बातचीत या संचार असंभव हो जाएगा",
+  "about.domain_blocks.suspended.title": "सस्पेंड किआ गया है!",
+  "about.not_available": "यह जानकारी इस सर्वर पर उपलब्ध नहीं कराई गई है।",
+  "about.powered_by": "{mastodon} द्वारा संचालित डेसेंट्रलीसेड सोशल मीडिया प्लैटफ़ॉर्म!",
+  "about.rules": "सर्वर के नियम",
   "account.account_note_header": "टिप्पणियाँ",
   "account.add_or_remove_from_list": "सूची में जोड़ें या हटाए",
   "account.badges.bot": "बॉट",
@@ -19,16 +19,16 @@
   "account.block_domain": "{domain} के सारी चीज़े छुपाएं",
   "account.blocked": "ब्लॉक",
   "account.browse_more_on_origin_server": "मूल प्रोफ़ाइल पर अधिक ब्राउज़ करें",
-  "account.cancel_follow_request": "Withdraw follow request",
+  "account.cancel_follow_request": "फॉलो रिक्वेस्ट वापस लें",
   "account.direct": "प्रत्यक्ष संदेश @{name}",
   "account.disable_notifications": "@{name} पोस्ट के लिए मुझे सूचित मत करो",
   "account.domain_blocked": "छिपा हुआ डोमेन",
   "account.edit_profile": "प्रोफ़ाइल संपादित करें",
   "account.enable_notifications": "जब @{name} पोस्ट मौजूद हो सूचित करें",
   "account.endorse": "प्रोफ़ाइल पर दिखाए",
-  "account.featured_tags.last_status_at": "Last post on {date}",
-  "account.featured_tags.last_status_never": "No posts",
-  "account.featured_tags.title": "{name}'s featured hashtags",
+  "account.featured_tags.last_status_at": "{date} का अंतिम पोस्ट",
+  "account.featured_tags.last_status_never": "कोई पोस्ट नहीं है",
+  "account.featured_tags.title": "{name} के चुनिंदा हैशटैग",
   "account.follow": "फॉलो करें",
   "account.followers": "फॉलोवर",
   "account.followers.empty": "कोई भी इस यूज़र् को फ़ॉलो नहीं करता है",
@@ -37,19 +37,19 @@
   "account.following_counter": "{count, plural, one {{counter} निम्नलिखित} other {{counter} निम्नलिखित}}",
   "account.follows.empty": "यह यूज़र् अभी तक किसी को फॉलो नहीं करता है।",
   "account.follows_you": "आपको फॉलो करता है",
-  "account.go_to_profile": "Go to profile",
+  "account.go_to_profile": "प्रोफाइल में जाएँ",
   "account.hide_reblogs": "@{name} के बूस्ट छुपाएं",
   "account.joined_short": "पुरा हुआ",
-  "account.languages": "Change subscribed languages",
+  "account.languages": "सब्स्क्राइब्ड भाषाओं को बदलें",
   "account.link_verified_on": "इस लिंक का स्वामित्व {date} को चेक किया गया था",
   "account.locked_info": "यह खाता गोपनीयता स्थिति लॉक करने के लिए सेट है। मालिक मैन्युअल रूप से समीक्षा करता है कि कौन उनको फॉलो कर सकता है।",
   "account.media": "मीडिया",
   "account.mention": "उल्लेख @{name}",
-  "account.moved_to": "{name} has indicated that their new account is now:",
+  "account.moved_to": "{name} ने संकेत दिया है कि उनका नया अकाउंट अब है:",
   "account.mute": "म्यूट @{name}",
   "account.mute_notifications": "@{name} के नोटिफिकेशन म्यूट करे",
   "account.muted": "म्यूट है",
-  "account.open_original_page": "Open original page",
+  "account.open_original_page": "ओरिजिनल पोस्ट खोलें",
   "account.posts": "टूट्स",
   "account.posts_with_replies": "टूट्स एवं जवाब",
   "account.report": "रिपोर्ट @{name}",
@@ -77,17 +77,17 @@
   "alert.unexpected.title": "उफ़!",
   "announcement.announcement": "घोषणा",
   "attachments_list.unprocessed": "(असंसाधित)",
-  "audio.hide": "Hide audio",
+  "audio.hide": "हाईड ऑडियो",
   "autosuggest_hashtag.per_week": "{count} हर सप्ताह",
   "boost_modal.combo": "अगली बार स्किप करने के लिए आप {combo} दबा सकते है",
-  "bundle_column_error.copy_stacktrace": "Copy error report",
-  "bundle_column_error.error.body": "The requested page could not be rendered. It could be due to a bug in our code, or a browser compatibility issue.",
-  "bundle_column_error.error.title": "Oh, no!",
-  "bundle_column_error.network.body": "There was an error when trying to load this page. This could be due to a temporary problem with your internet connection or this server.",
-  "bundle_column_error.network.title": "Network error",
+  "bundle_column_error.copy_stacktrace": "कॉपी एरर रिपोर्ट",
+  "bundle_column_error.error.body": "अनुरोधित पेज प्रस्तुत नहीं किया जा सका। यह हमारे कोड में बग या ब्राउज़र संगतता समस्या के कारण हो सकता है।",
+  "bundle_column_error.error.title": "अरे, नहीं!",
+  "bundle_column_error.network.body": "इस पृष्ठ को लोड करने का प्रयास करते समय एक एरर हुआ है । यह आपके इंटरनेट कनेक्शन या इस सर्वर के साथ एक अस्थायी समस्या के कारण हो सकता है।",
+  "bundle_column_error.network.title": "नेटवर्क एरर",
   "bundle_column_error.retry": "दुबारा कोशिश करें",
-  "bundle_column_error.return": "Go back home",
-  "bundle_column_error.routing.body": "The requested page could not be found. Are you sure the URL in the address bar is correct?",
+  "bundle_column_error.return": "वापिस होम पर जाएँ",
+  "bundle_column_error.routing.body": "अनुरोधित पेज पाया नहीं जा सका। क्या आप सुनिश्चित हैं कि एड्रेस बार में URL सही है?",
   "bundle_column_error.routing.title": "404",
   "bundle_modal_error.close": "बंद",
   "bundle_modal_error.message": "इस कॉम्पोनेन्ट को लोड करते वक्त कुछ गलत हो गया",
@@ -97,7 +97,7 @@
   "closed_registrations_modal.find_another_server": "दूसरा सर्वर ढूंढें",
   "closed_registrations_modal.preamble": "मास्टोडन विकेन्द्रित है, इसलिए कोई मतलब नहीं आप कहाँ अपना अकाउंट बना रहे हैं, आपको फॉलो करने के लिए सक्षम होना पड़ेगा और इस सर्वर पर किसी के साथ पूछना पड़ेगा I आप इसे खुद भी-चला सकते हैंI ",
   "closed_registrations_modal.title": "मास्टोडन पर जुड़ा जा रहा",
-  "column.about": "About",
+  "column.about": "अबाउट",
   "column.blocks": "ब्लॉक्ड यूज़र्स",
   "column.bookmarks": "पुस्तकचिह्न:",
   "column.community": "लोकल टाइम्लाइन",
@@ -137,7 +137,8 @@
   "compose_form.poll.remove_option": "इस विकल्प को हटाएँ",
   "compose_form.poll.switch_to_multiple": "कई विकल्पों की अनुमति देने के लिए पोल बदलें",
   "compose_form.poll.switch_to_single": "एक ही विकल्प के लिए अनुमति देने के लिए पोल बदलें",
-  "compose_form.publish": "Publish",
+  "compose_form.publish": "पब्लिश",
+  "compose_form.publish_form": "पब्लिश",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "परिवर्तनों को सहेजें",
   "compose_form.sensitive.hide": "मीडिया को संवेदनशील के रूप में चिह्नित करें",
@@ -150,8 +151,8 @@
   "confirmations.block.block_and_report": "ब्लॉक एवं रिपोर्ट",
   "confirmations.block.confirm": "ब्लॉक",
   "confirmations.block.message": "क्या आप वाकई {name} को ब्लॉक करना चाहते हैं?",
-  "confirmations.cancel_follow_request.confirm": "Withdraw request",
-  "confirmations.cancel_follow_request.message": "Are you sure you want to withdraw your request to follow {name}?",
+  "confirmations.cancel_follow_request.confirm": "रिक्वेस्ट वापस लें",
+  "confirmations.cancel_follow_request.message": "क्या आप सुनिश्चित है की आप {name} का फॉलो रिक्वेस्ट वापिस लेना चाहते हैं?",
   "confirmations.delete.confirm": "मिटाए",
   "confirmations.delete.message": "क्या आप वाकई इस स्टेटस को हटाना चाहते हैं?",
   "confirmations.delete_list.confirm": "मिटाए",
@@ -175,20 +176,20 @@
   "conversation.mark_as_read": "पढ़ा गया के रूप में चिह्नित करें",
   "conversation.open": "वार्तालाप देखें",
   "conversation.with": "{names} के साथ",
-  "copypaste.copied": "Copied",
-  "copypaste.copy": "Copy",
+  "copypaste.copied": "कॉपी किआ जा चूका है",
+  "copypaste.copy": "कॉपी",
   "directory.federated": "ज्ञात फेडीवर्स से",
   "directory.local": "केवल {domain} से",
   "directory.new_arrivals": "नए आगंतुक",
   "directory.recently_active": "हाल में ही सक्रिय",
-  "disabled_account_banner.account_settings": "Account settings",
-  "disabled_account_banner.text": "Your account {disabledAccount} is currently disabled.",
-  "dismissable_banner.community_timeline": "These are the most recent public posts from people whose accounts are hosted by {domain}.",
-  "dismissable_banner.dismiss": "Dismiss",
-  "dismissable_banner.explore_links": "These news stories are being talked about by people on this and other servers of the decentralized network right now.",
-  "dismissable_banner.explore_statuses": "These posts from this and other servers in the decentralized network are gaining traction on this server right now.",
-  "dismissable_banner.explore_tags": "These hashtags are gaining traction among people on this and other servers of the decentralized network right now.",
-  "dismissable_banner.public_timeline": "These are the most recent public posts from people on this and other servers of the decentralized network that this server knows about.",
+  "disabled_account_banner.account_settings": "अकाउंट सेटिंग्स",
+  "disabled_account_banner.text": "आपका अकाउंट {disabledAccount} अभी डिसेबल्ड है",
+  "dismissable_banner.community_timeline": "ये उन लोगों की सबसे रीसेंट पब्लिक पोस्ट हैं जिनके अकाउंट इनके {domain} द्वारा होस्ट किए गए हैं",
+  "dismissable_banner.dismiss": "डिसमिस",
+  "dismissable_banner.explore_links": "इन समाचारों के बारे में लोगों द्वारा इस पर और डेसेंट्रलीसेड नेटवर्क के अन्य सर्वरों पर अभी बात की जा रही है।",
+  "dismissable_banner.explore_statuses": "डेसेंट्रलीसेड नेटवर्क में इस और अन्य सर्वरों से ये पोस्ट अभी इस सर्वर पर कर्षण प्राप्त कर रहे हैं।",
+  "dismissable_banner.explore_tags": "ये हैशटैग अभी इस पर और डेसेंट्रलीसेड नेटवर्क के अन्य सर्वरों पर लोगों के बीच कर्षण प्राप्त कर रहे हैं।",
+  "dismissable_banner.public_timeline": "ये इस पर और डेसेंट्रलीसेड नेटवर्क के अन्य सर्वरों पर लोगों की सबसे हालिया सार्वजनिक पोस्ट हैं जिनके बारे में यह सर्वर जानता है।",
   "embed.instructions": "अपने वेबसाइट पर, निचे दिए कोड को कॉपी करके, इस स्टेटस को एम्बेड करें",
   "embed.preview": "यह ऐसा दिखेगा :",
   "emoji_button.activity": "गतिविधि",
@@ -217,29 +218,25 @@
   "empty_column.explore_statuses": "कुछ भी अभी ट्रैंडिंग नहीं है, कुछ देर बाद जांचे!",
   "empty_column.favourited_statuses": "आपके पास अभी कोई भी चहिता टूट नहीं है. जब आप किसी टूट को पसंद (स्टार) करेंगे, तब वो यहाँ दिखेगा।",
   "empty_column.favourites": "अभी तक किसी ने भी इस टूट को पसंद (स्टार) नहीं किया है. जब भी कोई इसे पसंद करेगा, उनका नाम यहाँ दिखेगा।",
-  "empty_column.follow_recommendations": "Looks like no suggestions could be generated for you. You can try using search to look for people you might know or explore trending hashtags.",
+  "empty_column.follow_recommendations": "ऐसा लगता है कि आपके लिए कोई सुझाव जेनरेट नहीं किया जा सका. आप उन लोगों को खोजने के लिए सर्च का उपयोग करने का प्रयास कर सकते हैं जिन्हें आप जानते हैं या ट्रेंडिंग हैशटैग का पता लगा सकते हैं।",
   "empty_column.follow_requests": "अभी तक किसी ने भी आपका अनुसरण करने की विनती नहीं की है. जब भी कोई आपको विनती भेजेगा, वो यहाँ दिखेगी.",
   "empty_column.hashtag": "यह हैशटैग अभी तक खाली है।",
   "empty_column.home": "आपकी मुख्य कालक्रम अभी खली है. अन्य उपयोगकर्ताओं से मिलने के लिए और अपनी गतिविधियां शुरू करने के लिए या तो {public} पर जाएं या खोज का उपयोग करें।",
-  "empty_column.home.suggestions": "See some suggestions",
+  "empty_column.home.suggestions": "कुछ सुझाव देखिए",
   "empty_column.list": "यह सूची अभी खाली है. जब इसके सदस्य कोई अभिव्यक्ति देंगे, तो वो यहां दिखाई देंगी.",
   "empty_column.lists": "आपके पास अभी तक कोई सूची नहीं है। जब आप एक बनाते हैं, तो यह यहां दिखाई देगा।",
   "empty_column.mutes": "आपने अभी तक किसी भी उपयोगकर्ता को म्यूट नहीं किया है।",
   "empty_column.notifications": "आपके पास अभी तक कोई सूचना नहीं है। बातचीत शुरू करने के लिए दूसरों के साथ बातचीत करें।",
   "empty_column.public": "यहां कुछ नहीं है! सार्वजनिक रूप से कुछ लिखें, या इसे भरने के लिए अन्य सर्वर से उपयोगकर्ताओं का मैन्युअल रूप से अनुसरण करें",
   "error.unexpected_crash.explanation": "हमारे कोड या ब्राउज़र संगतता समस्या में बग के कारण, यह पृष्ठ सही ढंग से प्रदर्शित नहीं हो सका।",
-  "error.unexpected_crash.explanation_addons": "This page could not be displayed correctly. This error is likely caused by a browser add-on or automatic translation tools.",
-  "error.unexpected_crash.next_steps": "Try refreshing the page. If that does not help, you may still be able to use Mastodon through a different browser or native app.",
-  "error.unexpected_crash.next_steps_addons": "Try disabling them and refreshing the page. If that does not help, you may still be able to use Mastodon through a different browser or native app.",
+  "error.unexpected_crash.explanation_addons": "यह पेज सही ढंग से प्रदर्शित नहीं किया जा सका। यह त्रुटि संभवतः ब्राउज़र ऐड-ऑन या स्वचालित अनुवाद टूल के कारण हुई है।",
+  "error.unexpected_crash.next_steps": "पेज को रीफ्रेश करने का प्रयास करें। यदि वह मदद नहीं करता है, तो आप अभी भी मास्टोडन का उपयोग किसी भिन्न ब्राउज़र या नेटिव ऐप के माध्यम से कर सकते हैं।",
+  "error.unexpected_crash.next_steps_addons": "उन्हें अक्षम करने और पृष्ठ को ताज़ा करने का प्रयास करें। यदि वह मदद नहीं करता है, तो आप अभी भी मास्टोडन का उपयोग किसी भिन्न ब्राउज़र या नेटिव ऐप के माध्यम से कर सकते हैं।",
   "errors.unexpected_crash.copy_stacktrace": "स्टैकट्रेस को क्लिपबोर्ड पर कॉपी करें",
   "errors.unexpected_crash.report_issue": "समस्या सूचित करें",
-  "explore.search_results": "Search results",
-  "explore.suggested_follows": "आपके लिए",
-  "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
-  "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
+  "explore.search_results": "सर्च रिजल्ट्स",
+  "explore.title": "एक्स्प्लोर",
+  "filter_modal.added.context_mismatch_explanation": "यह फ़िल्टर श्रेणी उस संदर्भ पर लागू नहीं होती जिसमें आपने इस पोस्ट को एक्सेस किया है। यदि आप चाहते हैं कि इस संदर्भ में भी पोस्ट को फ़िल्टर किया जाए, तो आपको फ़िल्टर को एडिट करना होगा।",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
   "filter_modal.added.expired_title": "Expired filter!",
@@ -264,7 +261,7 @@
   "footer.about": "About",
   "footer.directory": "Profiles directory",
   "footer.get_app": "Get the app",
-  "footer.invite": "Invite people",
+  "footer.invite": "लोगों को आमंत्रित करें",
   "footer.keyboard_shortcuts": "Keyboard shortcuts",
   "footer.privacy_policy": "Privacy policy",
   "footer.source_code": "View source code",
@@ -291,7 +288,7 @@
   "interaction_modal.description.reblog": "With an account on Mastodon, you can boost this post to share it with your own followers.",
   "interaction_modal.description.reply": "With an account on Mastodon, you can respond to this post.",
   "interaction_modal.on_another_server": "On a different server",
-  "interaction_modal.on_this_server": "On this server",
+  "interaction_modal.on_this_server": "इस सर्वर पे",
   "interaction_modal.other_server_instructions": "Copy and paste this URL into the search field of your favourite Mastodon app or the web interface of your Mastodon server.",
   "interaction_modal.preamble": "Since Mastodon is decentralized, you can use your existing account hosted by another Mastodon server or compatible platform if you don't have an account on this one.",
   "interaction_modal.title.favourite": "Favourite {name}'s post",
@@ -351,7 +348,7 @@
   "lists.new.title_placeholder": "नये सूची का शीर्षक",
   "lists.replies_policy.followed": "Any followed user",
   "lists.replies_policy.list": "Members of the list",
-  "lists.replies_policy.none": "No one",
+  "lists.replies_policy.none": "कोई नहीं",
   "lists.replies_policy.title": "Show replies to:",
   "lists.search": "Search among people you follow",
   "lists.subheading": "आपकी सूचियाँ",
@@ -386,7 +383,7 @@
   "navigation_bar.preferences": "Preferences",
   "navigation_bar.public_timeline": "Federated timeline",
   "navigation_bar.search": "ढूंढें",
-  "navigation_bar.security": "Security",
+  "navigation_bar.security": "सुरक्षा",
   "not_signed_in_indicator.not_signed_in": "You need to sign in to access this resource.",
   "notification.admin.report": "{name} reported {target}",
   "notification.admin.sign_up": "{name} signed up",
@@ -427,7 +424,7 @@
   "notifications.filter.mentions": "उल्लेख",
   "notifications.filter.polls": "चुनाव परिणाम",
   "notifications.filter.statuses": "Updates from people you follow",
-  "notifications.grant_permission": "Grant permission.",
+  "notifications.grant_permission": "अनुमति दें",
   "notifications.group": "{count} सूचनाएँ",
   "notifications.mark_as_read": "Mark every notification as read",
   "notifications.permission_denied": "Desktop notifications are unavailable due to previously denied browser permissions request",
diff --git a/app/javascript/mastodon/locales/hr.json b/app/javascript/mastodon/locales/hr.json
index 83fe0b368..8216e6303 100644
--- a/app/javascript/mastodon/locales/hr.json
+++ b/app/javascript/mastodon/locales/hr.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Omogući višestruki odabir opcija ankete",
   "compose_form.poll.switch_to_single": "Omogući odabir samo jedne opcije ankete",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "Označi medijski sadržaj kao osjetljiv",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Kopiraj stacktrace u međuspremnik",
   "errors.unexpected_crash.report_issue": "Prijavi problem",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/hu.json b/app/javascript/mastodon/locales/hu.json
index 452cc2cdb..f16841923 100644
--- a/app/javascript/mastodon/locales/hu.json
+++ b/app/javascript/mastodon/locales/hu.json
@@ -2,7 +2,7 @@
   "about.blocks": "Moderált kiszolgálók",
   "about.contact": "Kapcsolat:",
   "about.disclaimer": "A Mastodon ingyenes, nyílt forráskódú szoftver, a Mastodon gGmbH védejegye.",
-  "about.domain_blocks.no_reason_available": "Az ok nem érhető el",
+  "about.domain_blocks.no_reason_available": "Nem áll rendelkezésre indoklás",
   "about.domain_blocks.preamble": "A Mastodon általában mindenféle tartalomcserét és interakciót lehetővé tesz bármelyik másik kiszolgálóval a födiverzumban. Ezek azok a kivételek, amelyek a mi kiszolgálónkon érvényben vannak.",
   "about.domain_blocks.silenced.explanation": "Általában nem fogsz profilokat és tartalmat látni erről a kiszolgálóról, hacsak közvetlenül fel nem keresed vagy követed.",
   "about.domain_blocks.silenced.title": "Korlátozott",
@@ -34,7 +34,7 @@
   "account.followers.empty": "Ezt a felhasználót még senki sem követi.",
   "account.followers_counter": "{count, plural, one {{counter} Követő} other {{counter} Követő}}",
   "account.following": "Követve",
-  "account.following_counter": "{count, plural, other {{counter} Követett}}",
+  "account.following_counter": "{count, plural, one {{counter} Követett} other {{counter} Követett}}",
   "account.follows.empty": "Ez a felhasználó még senkit sem követ.",
   "account.follows_you": "Követ téged",
   "account.go_to_profile": "Ugrás a profilhoz",
@@ -53,26 +53,26 @@
   "account.posts": "Bejegyzések",
   "account.posts_with_replies": "Bejegyzések és válaszok",
   "account.report": "@{name} jelentése",
-  "account.requested": "Engedélyre vár. Kattints a követési kérés visszavonásához",
+  "account.requested": "Jóváhagysára vár. Kattints a követési kérés visszavonásához",
   "account.share": "@{name} profiljának megosztása",
   "account.show_reblogs": "@{name} megtolásainak mutatása",
   "account.statuses_counter": "{count, plural, one {{counter} Bejegyzés} other {{counter} Bejegyzés}}",
-  "account.unblock": "@{name} letiltásának feloldása",
-  "account.unblock_domain": "{domain} elrejtésének feloldása",
+  "account.unblock": "@{name} tiltásának feloldása",
+  "account.unblock_domain": "{domain} domain tiltás feloldása",
   "account.unblock_short": "Tiltás feloldása",
   "account.unendorse": "Ne jelenjen meg a profilodon",
   "account.unfollow": "Követés megszüntetése",
-  "account.unmute": "@{name} némítás feloldása",
+  "account.unmute": "@{name} némításának feloldása",
   "account.unmute_notifications": "@{name} némított értesítéseinek feloldása",
   "account.unmute_short": "Némitás feloldása",
-  "account_note.placeholder": "Klikk a feljegyzéshez",
+  "account_note.placeholder": "Kattints jegyzet hozzáadásához",
   "admin.dashboard.daily_retention": "Napi regisztráció utáni felhasználómegtartási arány",
   "admin.dashboard.monthly_retention": "Havi regisztráció utáni felhasználómegtartási arány",
   "admin.dashboard.retention.average": "Átlag",
   "admin.dashboard.retention.cohort": "Regisztráció hónapja",
-  "admin.dashboard.retention.cohort_size": "Új felhasználó",
+  "admin.dashboard.retention.cohort_size": "Új felhasználók",
   "alert.rate_limited.message": "Próbáld újra {retry_time, time, medium} után.",
-  "alert.rate_limited.title": "Forgalomkorlátozás",
+  "alert.rate_limited.title": "Adatforgalom korlátozva",
   "alert.unexpected.message": "Váratlan hiba történt.",
   "alert.unexpected.title": "Hoppá!",
   "announcement.announcement": "Közlemény",
@@ -103,7 +103,7 @@
   "column.community": "Helyi idővonal",
   "column.direct": "Közvetlen üzenetek",
   "column.directory": "Profilok böngészése",
-  "column.domain_blocks": "Rejtett domainek",
+  "column.domain_blocks": "Letiltott tartománynevek",
   "column.favourites": "Kedvencek",
   "column.follow_requests": "Követési kérelmek",
   "column.home": "Kezdőlap",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Szavazás megváltoztatása több választásosra",
   "compose_form.poll.switch_to_single": "Szavazás megváltoztatása egyetlen választásosra",
   "compose_form.publish": "Közzététel",
+  "compose_form.publish_form": "Közzététel",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Módosítások mentése",
   "compose_form.sensitive.hide": "{count, plural, one {Média kényesnek jelölése} other {Média kényesnek jelölése}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Veremkiíratás vágólapra másolása",
   "errors.unexpected_crash.report_issue": "Probléma jelentése",
   "explore.search_results": "Keresési találatok",
-  "explore.suggested_follows": "Neked",
   "explore.title": "Felfedezés",
-  "explore.trending_links": "Hírek",
-  "explore.trending_statuses": "Bejegyzések",
-  "explore.trending_tags": "Hashtagek",
   "filter_modal.added.context_mismatch_explanation": "Ez a szűrőkategória nem érvényes abban a környezetben, amelyből elérted ezt a bejegyzést. Ha ebben a környezetben is szűrni szeretnéd a bejegyzést, akkor szerkesztened kell a szűrőt.",
   "filter_modal.added.context_mismatch_title": "Környezeti eltérés.",
   "filter_modal.added.expired_explanation": "Ez a szűrőkategória elévült, a használatához módosítanod kell az elévülési dátumot.",
diff --git a/app/javascript/mastodon/locales/hy.json b/app/javascript/mastodon/locales/hy.json
index 5643e2ea9..285e96636 100644
--- a/app/javascript/mastodon/locales/hy.json
+++ b/app/javascript/mastodon/locales/hy.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Հարցումը դարձնել բազմակի ընտրութեամբ",
   "compose_form.poll.switch_to_single": "Հարցումը դարձնել եզակի ընտրութեամբ",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "Հրապարակե՜լ",
   "compose_form.save_changes": "Պահպանել փոփոխութիւնները",
   "compose_form.sensitive.hide": "Նշել մեդիան որպէս դիւրազգաց",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Պատճենել սթաքթրեյսը սեղմատախտակին",
   "errors.unexpected_crash.report_issue": "Զեկուցել խնդրի մասին",
   "explore.search_results": "Որոնման արդիւնքներ",
-  "explore.suggested_follows": "Ձեզ համար",
   "explore.title": "Բացայայտել",
-  "explore.trending_links": "Նորութիւններ",
-  "explore.trending_statuses": "Գրառումներ",
-  "explore.trending_tags": "Պիտակներ",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/id.json b/app/javascript/mastodon/locales/id.json
index 1c35ab602..ae633965a 100644
--- a/app/javascript/mastodon/locales/id.json
+++ b/app/javascript/mastodon/locales/id.json
@@ -1,5 +1,5 @@
 {
-  "about.blocks": "Movies",
+  "about.blocks": "Server yang dimoderasi",
   "about.contact": "Hubungi:",
   "about.disclaimer": "Mastodon addalah perangkat lunak bebas dan sumber terbuka, dan adalah merek dagang dari Mastodon gGmbH.",
   "about.domain_blocks.no_reason_available": "Alasan tidak tersedia",
@@ -13,12 +13,12 @@
   "about.rules": "Aturan server",
   "account.account_note_header": "Catatan",
   "account.add_or_remove_from_list": "Tambah atau Hapus dari daftar",
-  "account.badges.bot": "בוט",
+  "account.badges.bot": "Bot",
   "account.badges.group": "Grup",
-  "account.block": "{name}לחסום את ",
+  "account.block": "Blokir @{name}",
   "account.block_domain": "Blokir domain {domain}",
   "account.blocked": "Terblokir",
-  "account.browse_more_on_origin_server": "Lihat lebih lanjut diprofil asli",
+  "account.browse_more_on_origin_server": "Lihat lebih lanjut di profil asli",
   "account.cancel_follow_request": "Batalkan permintaan ikut",
   "account.direct": "Pesan Langsung @{name}",
   "account.disable_notifications": "Berhenti memberitahu saya ketika @{name} memposting",
@@ -57,7 +57,7 @@
   "account.share": "Bagikan profil @{name}",
   "account.show_reblogs": "Tampilkan boost dari @{name}",
   "account.statuses_counter": "{count, plural, other {{counter} Kiriman}}",
-  "account.unblock": "Hapus blokir @{name}",
+  "account.unblock": "Buka blokir @{name}",
   "account.unblock_domain": "Buka blokir domain {domain}",
   "account.unblock_short": "Buka blokir",
   "account.unendorse": "Jangan tampilkan di profil",
@@ -72,12 +72,12 @@
   "admin.dashboard.retention.cohort": "Bulan pendaftaran",
   "admin.dashboard.retention.cohort_size": "Pengguna baru",
   "alert.rate_limited.message": "Mohon ulangi setelah {retry_time, time, medium}.",
-  "alert.rate_limited.title": "Batasan tingkat",
+  "alert.rate_limited.title": "Jumlah akses dibatasi",
   "alert.unexpected.message": "Terjadi kesalahan yang tidak terduga.",
   "alert.unexpected.title": "Ups!",
   "announcement.announcement": "Pengumuman",
   "attachments_list.unprocessed": "(tidak diproses)",
-  "audio.hide": "Indonesia",
+  "audio.hide": "Sembunyikan audio",
   "autosuggest_hashtag.per_week": "{count} per minggu",
   "boost_modal.combo": "Anda dapat menekan {combo} untuk melewati ini",
   "bundle_column_error.copy_stacktrace": "Salin laporan kesalahan",
@@ -103,7 +103,7 @@
   "column.community": "Linimasa Lokal",
   "column.direct": "Pesan langsung",
   "column.directory": "Jelajahi profil",
-  "column.domain_blocks": "Topik tersembunyi",
+  "column.domain_blocks": "Domain tersembunyi",
   "column.favourites": "Favorit",
   "column.follow_requests": "Permintaan mengikuti",
   "column.home": "Beranda",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Ubah japat menjadi pilihan ganda",
   "compose_form.poll.switch_to_single": "Ubah japat menjadi pilihan tunggal",
   "compose_form.publish": "Terbitkan",
+  "compose_form.publish_form": "Terbitkan",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Simpan perubahan",
   "compose_form.sensitive.hide": "{count, plural, other {Tandai media sebagai sensitif}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Salin stacktrace ke papan klip",
   "errors.unexpected_crash.report_issue": "Laporkan masalah",
   "explore.search_results": "Hasil pencarian",
-  "explore.suggested_follows": "Untuk Anda",
   "explore.title": "Jelajahi",
-  "explore.trending_links": "Berita",
-  "explore.trending_statuses": "Kiriman",
-  "explore.trending_tags": "Tagar",
   "filter_modal.added.context_mismatch_explanation": "Indonesia Translate",
   "filter_modal.added.context_mismatch_title": "Konteks tidak cocok!",
   "filter_modal.added.expired_explanation": "Kategori saringan ini telah kedaluwarsa, Anda harus mengubah tanggal kedaluwarsa untuk diterapkan.",
diff --git a/app/javascript/mastodon/locales/ig.json b/app/javascript/mastodon/locales/ig.json
index 67f9c0c0a..bf7c7baae 100644
--- a/app/javascript/mastodon/locales/ig.json
+++ b/app/javascript/mastodon/locales/ig.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
   "compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "{count, plural, one {Mark media as sensitive} other {Mark media as sensitive}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "Kpesa nsogbu",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/io.json b/app/javascript/mastodon/locales/io.json
index 6a294928d..d14750f98 100644
--- a/app/javascript/mastodon/locales/io.json
+++ b/app/javascript/mastodon/locales/io.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Chanjez votposto por permisar multiselektaji",
   "compose_form.poll.switch_to_single": "Chanjez votposto por permisar una selektajo",
   "compose_form.publish": "Publikigez",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Sparez chanji",
   "compose_form.sensitive.hide": "{count, plural,one {Markizez medii quale privata} other {Markizez medii quale privata}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Kopiez amastraso a klipplanko",
   "errors.unexpected_crash.report_issue": "Reportigez problemo",
   "explore.search_results": "Trovuri",
-  "explore.suggested_follows": "Por vu",
   "explore.title": "Explorez",
-  "explore.trending_links": "Niuzi",
-  "explore.trending_statuses": "Posti",
-  "explore.trending_tags": "Hashtagi",
   "filter_modal.added.context_mismatch_explanation": "Ca filtrilgrupo ne relatesas kun informo de ca acesesita posto. Se vu volas posto filtresar kun ca informo anke, vu bezonas modifikar filtrilo.",
   "filter_modal.added.context_mismatch_title": "Kontenajneparigeso!",
   "filter_modal.added.expired_explanation": "Ca filtrilgrupo expiris, vu bezonas chanjar expirtempo por apliko.",
diff --git a/app/javascript/mastodon/locales/is.json b/app/javascript/mastodon/locales/is.json
index 4af4edb16..fdd3b8fc7 100644
--- a/app/javascript/mastodon/locales/is.json
+++ b/app/javascript/mastodon/locales/is.json
@@ -9,11 +9,11 @@
   "about.domain_blocks.suspended.explanation": "Engin gögn frá þessum vefþjóni verða unnin, geymd eða skipst á, sem gerir samskipti við notendur frá þessum vefþjóni ómöguleg.",
   "about.domain_blocks.suspended.title": "Í bið",
   "about.not_available": "Þessar upplýsingar hafa ekki verið gerðar aðgengilegar á þessum netþjóni.",
-  "about.powered_by": "Dreihýstur samskiptamiðill keyrður með {mastodon}",
+  "about.powered_by": "Dreifhýstur samskiptamiðill keyrður með {mastodon}",
   "about.rules": "Reglur netþjónsins",
   "account.account_note_header": "Minnispunktur",
   "account.add_or_remove_from_list": "Bæta við eða fjarlægja af listum",
-  "account.badges.bot": "Vélmenni",
+  "account.badges.bot": "Yrki",
   "account.badges.group": "Hópur",
   "account.block": "Loka á @{name}",
   "account.block_domain": "Útiloka lénið {domain}",
@@ -92,17 +92,17 @@
   "bundle_modal_error.close": "Loka",
   "bundle_modal_error.message": "Eitthvað fór úrskeiðis við að hlaða inn þessari einingu.",
   "bundle_modal_error.retry": "Reyndu aftur",
-  "closed_registrations.other_server_instructions": "Þar sem Mastodon er víðvær, þá getur þú búið til aðgang á öðrum þjóni, en samt haft samskipti við þennan.",
+  "closed_registrations.other_server_instructions": "Þar sem Mastodon er ekki miðstýrt, þá getur þú búið til aðgang á öðrum þjóni, en samt haft samskipti við þennan.",
   "closed_registrations_modal.description": "Að búa til aðgang á {domain} er ekki mögulegt eins og er, en vinsamlegast hafðu í huga að þú þarft ekki aðgang sérstaklega á {domain} til að nota Mastodon.",
-  "closed_registrations_modal.find_another_server": "Finna annan þjón",
-  "closed_registrations_modal.preamble": "Mastodon er víðvær, svo það skiptir ekki máli hvar þú býrð til aðgang; þú munt get fylgt eftir og haft samskipti við hvern sem er á þessum þjóni. Þú getur jafnvel hýst þinn eigin Mastodon þjón!",
+  "closed_registrations_modal.find_another_server": "Finna annan netþjón",
+  "closed_registrations_modal.preamble": "Mastodon er ekki miðstýrt, svo það skiptir ekki máli hvar þú býrð til aðgang; þú munt get fylgt eftir og haft samskipti við hvern sem er á þessum þjóni. Þú getur jafnvel hýst þinn eigin Mastodon þjón!",
   "closed_registrations_modal.title": "Að nýskrá sig á Mastodon",
   "column.about": "Um hugbúnaðinn",
   "column.blocks": "Útilokaðir notendur",
   "column.bookmarks": "Bókamerki",
   "column.community": "Staðvær tímalína",
   "column.direct": "Bein skilaboð",
-  "column.directory": "Vafra notandasnið",
+  "column.directory": "Skoða notendasnið",
   "column.domain_blocks": "Útilokuð lén",
   "column.favourites": "Eftirlæti",
   "column.follow_requests": "Beiðnir um að fylgjast með",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Breyta könnun svo hægt sé að hafa marga valkosti",
   "compose_form.poll.switch_to_single": "Breyta könnun svo hægt sé að hafa einn stakan valkost",
   "compose_form.publish": "Birta",
+  "compose_form.publish_form": "Birta",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Vista breytingar",
   "compose_form.sensitive.hide": "{count, plural, one {Merkja mynd sem viðkvæma} other {Merkja myndir sem viðkvæmar}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Afrita rakningarupplýsingar (stacktrace) á klippispjald",
   "errors.unexpected_crash.report_issue": "Tilkynna vandamál",
   "explore.search_results": "Leitarniðurstöður",
-  "explore.suggested_follows": "Fyrir þig",
   "explore.title": "Kanna",
-  "explore.trending_links": "Fréttir",
-  "explore.trending_statuses": "Færslur",
-  "explore.trending_tags": "Myllumerki",
   "filter_modal.added.context_mismatch_explanation": "Þessi síuflokkur á ekki við í því samhengi sem aðgangur þinn að þessari færslu felur í sér. Ef þú vilt að færslan sé einnig síuð í þessu samhengi, þá þarftu að breyta síunni.",
   "filter_modal.added.context_mismatch_title": "Misræmi í samhengi!",
   "filter_modal.added.expired_explanation": "Þessi síuflokkur er útrunninn, þú þarft að breyta gidistímanum svo hann geti átt við.",
diff --git a/app/javascript/mastodon/locales/it.json b/app/javascript/mastodon/locales/it.json
index eea0939cd..2e6c9e1e3 100644
--- a/app/javascript/mastodon/locales/it.json
+++ b/app/javascript/mastodon/locales/it.json
@@ -1,7 +1,7 @@
 {
   "about.blocks": "Server moderati",
   "about.contact": "Contatto:",
-  "about.disclaimer": "Mastodon è un software open source, gratuito e un marchio di Mastodon gGmbH.",
+  "about.disclaimer": "Mastodon è un software libero e open-source e un marchio di Mastodon gGmbH.",
   "about.domain_blocks.no_reason_available": "Motivo non disponibile",
   "about.domain_blocks.preamble": "Mastodon, generalmente, ti consente di visualizzare i contenuti e interagire con gli utenti da qualsiasi altro server nel fediverso. Queste sono le eccezioni che sono state fatte su questo particolare server.",
   "about.domain_blocks.silenced.explanation": "Generalmente non vedrai i profili e i contenuti di questo server, a meno che tu non lo cerchi esplicitamente o che tu scelga di seguirlo.",
@@ -9,9 +9,9 @@
   "about.domain_blocks.suspended.explanation": "Nessun dato proveniente da questo server verrà elaborato, conservato o scambiato, rendendo impossibile qualsiasi interazione o comunicazione con gli utenti da questo server.",
   "about.domain_blocks.suspended.title": "Sospeso",
   "about.not_available": "Queste informazioni non sono state rese disponibili su questo server.",
-  "about.powered_by": "Social media decentralizzati alimentati da {mastodon}",
+  "about.powered_by": "Social media decentralizzato alimentato da {mastodon}",
   "about.rules": "Regole del server",
-  "account.account_note_header": "Note",
+  "account.account_note_header": "Nota",
   "account.add_or_remove_from_list": "Aggiungi o togli dalle liste",
   "account.badges.bot": "Bot",
   "account.badges.group": "Gruppo",
@@ -25,37 +25,37 @@
   "account.domain_blocked": "Dominio bloccato",
   "account.edit_profile": "Modifica profilo",
   "account.enable_notifications": "Avvisami quando @{name} pubblica un post",
-  "account.endorse": "Metti in evidenza sul profilo",
+  "account.endorse": "In evidenza sul profilo",
   "account.featured_tags.last_status_at": "Ultimo post il {date}",
   "account.featured_tags.last_status_never": "Nessun post",
   "account.featured_tags.title": "Hashtag in evidenza di {name}",
   "account.follow": "Segui",
   "account.followers": "Follower",
-  "account.followers.empty": "Nessuno segue ancora questo utente.",
-  "account.followers_counter": "{count, plural, one {{counter} Follower} other {{counter} Follower}}",
+  "account.followers.empty": "Ancora nessuno segue questo utente.",
+  "account.followers_counter": "{count, plural, one {{counter} Seguace} other {{counter} Seguaci}}",
   "account.following": "Seguiti",
-  "account.following_counter": "{count, plural, other {{counter} Seguiti}}",
-  "account.follows.empty": "Questo utente non segue nessuno ancora.",
+  "account.following_counter": "{count, plural, one {{counter} Seguiti} other {{counter} Seguiti}}",
+  "account.follows.empty": "Questo utente non segue ancora nessuno.",
   "account.follows_you": "Ti segue",
   "account.go_to_profile": "Vai al profilo",
-  "account.hide_reblogs": "Nascondi condivisioni da @{name}",
-  "account.joined_short": "Account iscritto",
-  "account.languages": "Cambia le lingue di cui ricevere i post",
+  "account.hide_reblogs": "Nascondi potenziamenti da @{name}",
+  "account.joined_short": "Iscritto",
+  "account.languages": "Modifica le lingue d'iscrizione",
   "account.link_verified_on": "La proprietà di questo link è stata controllata il {date}",
-  "account.locked_info": "Questo è un account privato. Il proprietario approva manualmente chi può seguirlo.",
+  "account.locked_info": "Lo stato della privacy di questo profilo è impostato a bloccato. Il proprietario revisiona manualmente chi può seguirlo.",
   "account.media": "Media",
   "account.mention": "Menziona @{name}",
-  "account.moved_to": "{name} ha indicato che il suo nuovo account è ora:",
+  "account.moved_to": "{name} ha indicato che il suo nuovo profilo è ora:",
   "account.mute": "Silenzia @{name}",
   "account.mute_notifications": "Silenzia notifiche da @{name}",
   "account.muted": "Silenziato",
-  "account.open_original_page": "Apri pagina originale",
+  "account.open_original_page": "Apri la pagina originale",
   "account.posts": "Post",
   "account.posts_with_replies": "Post e risposte",
   "account.report": "Segnala @{name}",
-  "account.requested": "In attesa di approvazione. Clicca per annullare la richiesta di seguire",
+  "account.requested": "In attesa d'approvazione. Clicca per annullare la richiesta di seguire",
   "account.share": "Condividi il profilo di @{name}",
-  "account.show_reblogs": "Mostra condivisioni da @{name}",
+  "account.show_reblogs": "Mostra potenziamenti da @{name}",
   "account.statuses_counter": "{count, plural, one {{counter} Post} other {{counter} Post}}",
   "account.unblock": "Sblocca @{name}",
   "account.unblock_domain": "Sblocca il dominio {domain}",
@@ -64,43 +64,43 @@
   "account.unfollow": "Smetti di seguire",
   "account.unmute": "Riattiva @{name}",
   "account.unmute_notifications": "Riattiva le notifiche da @{name}",
-  "account.unmute_short": "Riattiva l'audio",
+  "account.unmute_short": "Riattiva",
   "account_note.placeholder": "Clicca per aggiungere una nota",
-  "admin.dashboard.daily_retention": "Tasso di ritenzione utente per giorno dopo la registrazione",
-  "admin.dashboard.monthly_retention": "Tasso di ritenzione utente per mese dopo la registrazione",
+  "admin.dashboard.daily_retention": "Tasso di ritenzione dell'utente per giorno, dopo la registrazione",
+  "admin.dashboard.monthly_retention": "Tasso di ritenzione dell'utente per mese, dopo la registrazione",
   "admin.dashboard.retention.average": "Media",
-  "admin.dashboard.retention.cohort": "Mese di iscrizione",
+  "admin.dashboard.retention.cohort": "Mese d'iscrizione",
   "admin.dashboard.retention.cohort_size": "Nuovi utenti",
-  "alert.rate_limited.message": "Riprova dopo le {retry_time, time, medium}.",
-  "alert.rate_limited.title": "Rate limit",
+  "alert.rate_limited.message": "Sei pregato di riprovare dopo le {retry_time, time, medium}.",
+  "alert.rate_limited.title": "Tasso limitato",
   "alert.unexpected.message": "Si è verificato un errore imprevisto.",
   "alert.unexpected.title": "Oops!",
   "announcement.announcement": "Annuncio",
   "attachments_list.unprocessed": "(non elaborato)",
   "audio.hide": "Nascondi audio",
-  "autosuggest_hashtag.per_week": "{count} per settimana",
-  "boost_modal.combo": "Puoi premere {combo} per saltare questo passaggio la prossima volta",
-  "bundle_column_error.copy_stacktrace": "Copia rapporto di errore",
-  "bundle_column_error.error.body": "La pagina richiesta non può essere visualizzata. Potrebbe essere a causa di un bug nel nostro codice o di un problema di compatibilità del browser.",
+  "autosuggest_hashtag.per_week": "{count} a settimana",
+  "boost_modal.combo": "Puoi premere {combo} per saltare questo passaggio, la prossima volta",
+  "bundle_column_error.copy_stacktrace": "Copia rapporto sull'errore",
+  "bundle_column_error.error.body": "Impossibile rendedrizzare la pagina richiesta. Potrebbe dipendere da un bug nel nostro codice o da un problema di compatibilità di un browser.",
   "bundle_column_error.error.title": "Oh, no!",
   "bundle_column_error.network.body": "C'è stato un errore durante il caricamento di questa pagina. Potrebbe essere dovuto a un problema temporaneo con la tua connessione internet o a questo server.",
   "bundle_column_error.network.title": "Errore di rete",
   "bundle_column_error.retry": "Riprova",
-  "bundle_column_error.return": "Torna alla pagina home",
-  "bundle_column_error.routing.body": "La pagina richiesta non è stata trovata. Sei sicuro che l'URL nella barra degli indirizzi è corretta?",
+  "bundle_column_error.return": "Torna alla home",
+  "bundle_column_error.routing.body": "Impossibile trovare la pagina richiesta. Sei sicuro che l'URL nella barra degli indirizzi sia corretto?",
   "bundle_column_error.routing.title": "404",
   "bundle_modal_error.close": "Chiudi",
-  "bundle_modal_error.message": "Qualcosa è andato storto durante il caricamento di questo componente.",
+  "bundle_modal_error.message": "Qualcosa è andato storto scaricando questo componente.",
   "bundle_modal_error.retry": "Riprova",
-  "closed_registrations.other_server_instructions": "Poiché Mastodon è decentralizzato, puoi creare un account su un altro server e continuare a interagire con questo.",
-  "closed_registrations_modal.description": "Al momento non è possibile creare un account su {domain}, ma tieni presente che non è necessario un account specifico su {domain} per utilizzare Mastodon.",
+  "closed_registrations.other_server_instructions": "Poiché Mastodon è decentralizzato, puoi creare un profilo su un altro server, pur continuando a interagire con questo.",
+  "closed_registrations_modal.description": "Correntemente, è impossibile creare un profilo su {domain}, ma sei pregato di tenere presente che non necessiti di un profilo specificamente su {domain} per utilizzare Mastodon.",
   "closed_registrations_modal.find_another_server": "Trova un altro server",
-  "closed_registrations_modal.preamble": "Mastodon è decentralizzato, quindi non importa dove crei il tuo account, sarai in grado di seguire e interagire con chiunque su questo server. Puoi persino ospitarlo autonomamente!",
+  "closed_registrations_modal.preamble": "Mastodon è decentralizzato, quindi, non importa dove crei il tuo profilo, potrai seguire e interagire con chiunque su questo server. Anche se sei tu stesso a ospitarlo!",
   "closed_registrations_modal.title": "Registrazione su Mastodon",
-  "column.about": "Informazioni su",
+  "column.about": "Info",
   "column.blocks": "Utenti bloccati",
   "column.bookmarks": "Segnalibri",
-  "column.community": "Timeline locale",
+  "column.community": "Cronologia locale",
   "column.direct": "Messaggi diretti",
   "column.directory": "Sfoglia profili",
   "column.domain_blocks": "Domini bloccati",
@@ -110,41 +110,42 @@
   "column.lists": "Elenchi",
   "column.mutes": "Utenti silenziati",
   "column.notifications": "Notifiche",
-  "column.pins": "Post fissati in cima",
+  "column.pins": "Post fissati",
   "column.public": "Timeline federata",
   "column_back_button.label": "Indietro",
   "column_header.hide_settings": "Nascondi impostazioni",
   "column_header.moveLeft_settings": "Sposta colonna a sinistra",
   "column_header.moveRight_settings": "Sposta colonna a destra",
-  "column_header.pin": "Fissa in cima",
-  "column_header.show_settings": "Mostra impostazioni",
-  "column_header.unpin": "Non fissare in cima",
+  "column_header.pin": "Fissa",
+  "column_header.show_settings": "Mostra le impostazioni",
+  "column_header.unpin": "Non fissare",
   "column_subheading.settings": "Impostazioni",
   "community.column_settings.local_only": "Solo Locale",
   "community.column_settings.media_only": "Solo Media",
   "community.column_settings.remote_only": "Solo Remoto",
-  "compose.language.change": "Cambia lingua",
-  "compose.language.search": "Ricerca lingue...",
+  "compose.language.change": "Cambia la lingua",
+  "compose.language.search": "Cerca lingue...",
   "compose_form.direct_message_warning_learn_more": "Scopri di più",
-  "compose_form.encryption_warning": "I messaggi su Mastodon non sono crittografati end-to-end. Non condividere dati sensibili su Mastodon.",
-  "compose_form.hashtag_warning": "Questo post non sarà elencato sotto alcun hashtag poiché senza elenco. Solo i toot pubblici possono essere ricercati per hashtag.",
-  "compose_form.lock_disclaimer": "Il tuo profilo non è {locked}. Chiunque può seguirti e vedere le tue pubblicazioni visibili solo dai follower.",
+  "compose_form.encryption_warning": "I post su Mastodon non sono crittografati end-to-end. Non condividere alcuna informazione sensibile su Mastodon.",
+  "compose_form.hashtag_warning": "Questo post non sarà elencato sotto alcun hashtag, non avendo una lista. Solo i post pubblici possono esser cercati per hashtag.",
+  "compose_form.lock_disclaimer": "Il tuo profilo non è {locked}. Chiunque può seguirti per visualizzare i tuoi post per soli seguaci.",
   "compose_form.lock_disclaimer.lock": "bloccato",
-  "compose_form.placeholder": "A cosa stai pensando?",
+  "compose_form.placeholder": "Cos'hai in mente?",
   "compose_form.poll.add_option": "Aggiungi una scelta",
   "compose_form.poll.duration": "Durata del sondaggio",
   "compose_form.poll.option_placeholder": "Scelta {number}",
   "compose_form.poll.remove_option": "Rimuovi questa scelta",
-  "compose_form.poll.switch_to_multiple": "Modifica sondaggio per consentire scelte multiple",
-  "compose_form.poll.switch_to_single": "Modifica sondaggio per consentire una singola scelta",
+  "compose_form.poll.switch_to_multiple": "Modifica il sondaggio per consentire scelte multiple",
+  "compose_form.poll.switch_to_single": "Modifica il sondaggio per consentire una singola scelta",
   "compose_form.publish": "Pubblica",
+  "compose_form.publish_form": "Pubblica",
   "compose_form.publish_loud": "{publish}!",
-  "compose_form.save_changes": "Salva modifiche",
-  "compose_form.sensitive.hide": "Segna media come sensibile",
-  "compose_form.sensitive.marked": "Questo media è contrassegnato come sensibile",
-  "compose_form.sensitive.unmarked": "Questo media non è contrassegnato come sensibile",
-  "compose_form.spoiler.marked": "Il testo è nascosto dietro l'avviso",
-  "compose_form.spoiler.unmarked": "Il testo non è nascosto",
+  "compose_form.save_changes": "Salva le modifiche",
+  "compose_form.sensitive.hide": "{count, plural, one {Segna media come sensibile} other {Segna media come sensibili}}",
+  "compose_form.sensitive.marked": "{count, plural, one {Il media è contrassegnato come sensibile} other {I media sono contrassegnati come sensibili}}",
+  "compose_form.sensitive.unmarked": "{count, plural, one {Il media non è contrassegnato come sensibile} other {I media non sono contrassegnati come sensibili}}",
+  "compose_form.spoiler.marked": "Rimuovi l'avviso del contenuto",
+  "compose_form.spoiler.unmarked": "Aggiungi l'avviso del contenuto",
   "compose_form.spoiler_placeholder": "Scrivi qui il tuo avviso",
   "confirmation_modal.cancel": "Annulla",
   "confirmations.block.block_and_report": "Blocca & Segnala",
@@ -152,25 +153,25 @@
   "confirmations.block.message": "Sei sicuro di voler bloccare {name}?",
   "confirmations.cancel_follow_request.confirm": "Annulla la richiesta",
   "confirmations.cancel_follow_request.message": "Sei sicuro di voler annullare la tua richiesta per seguire {name}?",
-  "confirmations.delete.confirm": "Cancella",
-  "confirmations.delete.message": "Sei sicuro di voler cancellare questo post?",
-  "confirmations.delete_list.confirm": "Cancella",
-  "confirmations.delete_list.message": "Sei sicuro di voler cancellare definitivamente questa lista?",
-  "confirmations.discard_edit_media.confirm": "Abbandona",
-  "confirmations.discard_edit_media.message": "Sono state apportate modifiche non salvate alla descrizione o all'anteprima del media, vuoi abbandonarle?",
+  "confirmations.delete.confirm": "Elimina",
+  "confirmations.delete.message": "Sei sicuro di voler eliminare questo post?",
+  "confirmations.delete_list.confirm": "Elimina",
+  "confirmations.delete_list.message": "Sei sicuro di voler eliminare permanentemente questa lista?",
+  "confirmations.discard_edit_media.confirm": "Scarta",
+  "confirmations.discard_edit_media.message": "Hai delle modifiche non salvate alla descrizione o anteprima del media, scartarle comunque?",
   "confirmations.domain_block.confirm": "Blocca l'intero dominio",
-  "confirmations.domain_block.message": "Sei davvero, davvero sicur@ di voler bloccare {domain} completamente? Nella maggioranza dei casi, è preferibile e sufficiente bloccare o silenziare pochi account in modo mirato. Non vedrai più il contenuto da quel dominio né nelle timeline pubbliche né nelle tue notifiche. Anzi, verranno rimossi dai follower gli account di questo dominio.",
+  "confirmations.domain_block.message": "Sei davvero sicuro di voler bloccare l'intero {domain}? In gran parte dei casi, è sufficiente e preferibile bloccare o silenziare alcuni profili. Non visualizzerai i contenuti da quel dominio in alcuna cronologia pubblica o tra le tue notifiche. I tuoi seguaci da quel dominio saranno rimossi.",
   "confirmations.logout.confirm": "Disconnettiti",
   "confirmations.logout.message": "Sei sicuro di volerti disconnettere?",
   "confirmations.mute.confirm": "Silenzia",
-  "confirmations.mute.explanation": "Questo nasconderà i post da loro ed i post che li menzionano, ma consentirà ancora loro di vedere i tuoi post e di seguirti.",
+  "confirmations.mute.explanation": "Questo nasconderà i post da loro e i post che li menzionano, ma consentirà comunque loro di visualizzare i tuoi post e di seguirti.",
   "confirmations.mute.message": "Sei sicuro di voler silenziare {name}?",
-  "confirmations.redraft.confirm": "Cancella e riscrivi",
-  "confirmations.redraft.message": "Sei sicuro di voler eliminare questo toot e riscriverlo? I preferiti e gli incrementi saranno persi e le risposte al post originale saranno perse.",
+  "confirmations.redraft.confirm": "Elimina e riscrivi",
+  "confirmations.redraft.message": "Sei sicuro di voler eliminare questo post e riscriverlo? I preferiti e i potenziamenti andranno persi e le risposte al post originale non saranno più collegate.",
   "confirmations.reply.confirm": "Rispondi",
   "confirmations.reply.message": "Rispondere ora sovrascriverà il messaggio che stai correntemente componendo. Sei sicuro di voler procedere?",
   "confirmations.unfollow.confirm": "Smetti di seguire",
-  "confirmations.unfollow.message": "Sei sicur@ di non voler più seguire {name}?",
+  "confirmations.unfollow.message": "Sei sicuro di voler smettere di seguire {name}?",
   "conversation.delete": "Elimina conversazione",
   "conversation.mark_as_read": "Segna come letto",
   "conversation.open": "Visualizza conversazione",
@@ -181,15 +182,15 @@
   "directory.local": "Solo da {domain}",
   "directory.new_arrivals": "Nuovi arrivi",
   "directory.recently_active": "Attivo di recente",
-  "disabled_account_banner.account_settings": "Impostazioni dell'account",
-  "disabled_account_banner.text": "Il tuo account {disabledAccount} è attualmente disabilitato.",
-  "dismissable_banner.community_timeline": "Questi sono i posti pubblici più recenti di persone i cui account sono ospitati da {domain}.",
+  "disabled_account_banner.account_settings": "Impostazioni del profilo",
+  "disabled_account_banner.text": "Il tuo profilo {disabledAccount} è correntemente disabilitato.",
+  "dismissable_banner.community_timeline": "Questi sono i post pubblici più recenti da persone i cui profili sono ospitati da {domain}.",
   "dismissable_banner.dismiss": "Ignora",
-  "dismissable_banner.explore_links": "Queste notizie sono in fase di discussione da parte di persone su questo e altri server della rete decentralizzata, in questo momento.",
-  "dismissable_banner.explore_statuses": "Questi post, da questo e da altri server nella rete decentralizzata, stanno guadagnando popolarità su questo server in questo momento.",
-  "dismissable_banner.explore_tags": "Questi hashtag stanno guadagnando popolarità tra le persone su questo e altri server della rete decentralizzata, in questo momento.",
-  "dismissable_banner.public_timeline": "Questi sono i post pubblici più recenti di persone, su questo e altri server della rete decentralizzata che questo server conosce.",
-  "embed.instructions": "Incorpora questo post sul tuo sito web copiando il codice sotto.",
+  "dismissable_banner.explore_links": "Queste notizie sono discusse da persone su questo e altri server della rete decentralizzata, al momento.",
+  "dismissable_banner.explore_statuses": "Questi post da questo e altri server nella rete decentralizzata, stanno ottenendo popolarità su questo server al momento.",
+  "dismissable_banner.explore_tags": "Questi hashtag stanno ottenendo popolarità tra le persone su questo e altri server della rete decentralizzata, al momento.",
+  "dismissable_banner.public_timeline": "Questi sono i post pubblici più recenti da persone su questo e altri server della rete decentralizzata, noti a questo server.",
+  "embed.instructions": "Incorpora questo post sul tuo sito web, copiando il seguente codice.",
   "embed.preview": "Ecco come apparirà:",
   "emoji_button.activity": "Attività",
   "emoji_button.clear": "Cancella",
@@ -198,55 +199,51 @@
   "emoji_button.food": "Cibo & Bevande",
   "emoji_button.label": "Inserisci emoji",
   "emoji_button.nature": "Natura",
-  "emoji_button.not_found": "Nessun emojos!! (╯°□°)╯︵ ┻━┻",
+  "emoji_button.not_found": "Nessun emoji corrispondente",
   "emoji_button.objects": "Oggetti",
   "emoji_button.people": "Persone",
-  "emoji_button.recent": "Usati frequentemente",
+  "emoji_button.recent": "Usate frequentemente",
   "emoji_button.search": "Cerca...",
   "emoji_button.search_results": "Risultati della ricerca",
   "emoji_button.symbols": "Simboli",
   "emoji_button.travel": "Viaggi & Luoghi",
-  "empty_column.account_suspended": "Account sospeso",
+  "empty_column.account_suspended": "Profilo sospeso",
   "empty_column.account_timeline": "Nessun post qui!",
   "empty_column.account_unavailable": "Profilo non disponibile",
   "empty_column.blocks": "Non hai ancora bloccato alcun utente.",
-  "empty_column.bookmarked_statuses": "Non hai ancora segnato alcun post. Quando ne segni uno, sarà mostrato qui.",
-  "empty_column.community": "La timeline locale è vuota. Condividi qualcosa pubblicamente per dare inizio alla festa!",
-  "empty_column.direct": "Non hai ancora nessun messaggio diretto. Quando ne manderai o riceverai qualcuno, apparirà qui.",
-  "empty_column.domain_blocks": "Non vi sono domini nascosti.",
-  "empty_column.explore_statuses": "Nulla è in tendenza in questo momento. Riprova più tardi!",
-  "empty_column.favourited_statuses": "Non hai ancora segnato nessun post come apprezzato. Quando lo farai, comparirà qui.",
-  "empty_column.favourites": "Nessuno ha ancora segnato questo post come apprezzato. Quando qualcuno lo farà, apparirà qui.",
-  "empty_column.follow_recommendations": "Sembra che nessun suggerimento possa essere generato per te. Puoi provare a usare la ricerca per cercare persone che potresti conoscere o esplorare hashtag di tendenza.",
-  "empty_column.follow_requests": "Non hai ancora ricevuto nessuna richiesta di follow. Quando ne riceverai una, verrà mostrata qui.",
-  "empty_column.hashtag": "Non c'è ancora nessun post con questo hashtag.",
-  "empty_column.home": "Non stai ancora seguendo nessuno. Visita {public} o usa la ricerca per incontrare nuove persone.",
+  "empty_column.bookmarked_statuses": "Non hai ancora salvato nei segnalibri alcun post. Quando lo farai, apparirà qui.",
+  "empty_column.community": "La cronologia locale è vuota. Scrivi qualcosa pubblicamente per dare inizio alla festa!",
+  "empty_column.direct": "Non hai ancora alcun messaggio diretto. Quando ne invierai o riceverai uno, apparirà qui.",
+  "empty_column.domain_blocks": "Ancora nessun dominio bloccato.",
+  "empty_column.explore_statuses": "Nulla è in tendenza al momento. Ricontrolla più tardi!",
+  "empty_column.favourited_statuses": "Non hai ancora alcun post preferito. Quando ne salverai uno tra i preferiti, apparirà qui.",
+  "empty_column.favourites": "Nessuno ha ancora messo questo post tra i preferiti. Quando qualcuno lo farà, apparirà qui.",
+  "empty_column.follow_recommendations": "Sembra che non sia stato possibile generare alcun suggerimento per te. Puoi provare a utilizzare la ricerca per cercare persone che potresti conoscere, o a esplorare gli hashtag in tendenza.",
+  "empty_column.follow_requests": "Non hai ancora alcuna richiesta di seguirti. Quando ne riceverai una, apparirà qui.",
+  "empty_column.hashtag": "Non c'è ancora nulla in questo hashtag.",
+  "empty_column.home": "La cronologia della tua home è vuota! Segui altre persone per riempirla. {suggestions}",
   "empty_column.home.suggestions": "Vedi alcuni suggerimenti",
-  "empty_column.list": "Non c'è ancora niente in questa lista. Quando i membri di questa lista pubblicheranno nuovi stati, appariranno qui.",
-  "empty_column.lists": "Non hai ancora nessuna lista. Quando ne creerai qualcuna, comparirà qui.",
-  "empty_column.mutes": "Non hai ancora silenziato nessun utente.",
-  "empty_column.notifications": "Non hai ancora nessuna notifica. Interagisci con altri per iniziare conversazioni.",
-  "empty_column.public": "Qui non c'è nulla! Scrivi qualcosa pubblicamente, o segui utenti da altri server per riempire questo spazio",
-  "error.unexpected_crash.explanation": "A causa di un bug nel nostro codice o di un problema di compatibilità del browser, questa pagina non può essere visualizzata correttamente.",
-  "error.unexpected_crash.explanation_addons": "Questa pagina non può essere visualizzata correttamente. Questo errore è probabilmente causato da un componente aggiuntivo del browser o da strumenti di traduzione automatica.",
-  "error.unexpected_crash.next_steps": "Prova ad aggiornare la pagina. Se non funziona, potresti ancora essere in grado di utilizzare Mastodon attraverso un browser diverso o un'app nativa.",
-  "error.unexpected_crash.next_steps_addons": "Prova a disabilitarli e ad aggiornare la pagina. Se questo non funziona, potresti ancora essere in grado di utilizzare Mastodon attraverso un browser o un'app diversi.",
+  "empty_column.list": "Non c'è ancora nulla in questa lista. Quando i membri di questa lista pubblicheranno dei nuovi post, appariranno qui.",
+  "empty_column.lists": "Non hai ancora alcuna lista. Quando ne creerai una, apparirà qui.",
+  "empty_column.mutes": "Non hai ancora silenziato alcun utente.",
+  "empty_column.notifications": "Non hai ancora nessuna notifica. Quando altre persone interagiranno con te, le vedrai qui.",
+  "empty_column.public": "Non c'è nulla qui! Scrivi qualcosa pubblicamente o segui manualmente gli utenti dagli altri server per riempire questo spazio",
+  "error.unexpected_crash.explanation": "A causa di un bug nel nostro codice o di un problema di compatibilità del browser, non è stato possibile visualizzare correttamente questa pagina.",
+  "error.unexpected_crash.explanation_addons": "Impossibile mostrare correttamente questa pagina. Questo errore è probabilmente causato da un addon del browser o da strumenti di traduzione automatica.",
+  "error.unexpected_crash.next_steps": "Prova a ricaricare la pagina. Se non aiuta, potresti comunque utilizzare Mastodon tramite un browser differente o un'app nativa.",
+  "error.unexpected_crash.next_steps_addons": "Prova a disabilitarli e a ricaricare la pagina. Se ciò non aiuta, potresti ancora utilizzare Mastodon tramite un browser differente o un'app nativa.",
   "errors.unexpected_crash.copy_stacktrace": "Copia stacktrace negli appunti",
-  "errors.unexpected_crash.report_issue": "Segnala il problema",
+  "errors.unexpected_crash.report_issue": "Segnala un problema",
   "explore.search_results": "Risultati della ricerca",
-  "explore.suggested_follows": "Per te",
   "explore.title": "Esplora",
-  "explore.trending_links": "Notizie",
-  "explore.trending_statuses": "Post",
-  "explore.trending_tags": "Hashtag",
   "filter_modal.added.context_mismatch_explanation": "La categoria di questo filtro non si applica al contesto in cui hai acceduto a questo post. Se desideri che il post sia filtrato anche in questo contesto, dovrai modificare il filtro.",
   "filter_modal.added.context_mismatch_title": "Contesto non corrispondente!",
-  "filter_modal.added.expired_explanation": "La categoria di questo filtro è scaduta, dovrai modificarne la data di scadenza per applicarlo.",
+  "filter_modal.added.expired_explanation": "La categoria di questo filtro è scaduta, dovrvai modificarne la data di scadenza per applicarlo.",
   "filter_modal.added.expired_title": "Filtro scaduto!",
   "filter_modal.added.review_and_configure": "Per revisionare e configurare ulteriormente la categoria di questo filtro, vai alle {settings_link}.",
   "filter_modal.added.review_and_configure_title": "Impostazioni del filtro",
   "filter_modal.added.settings_link": "pagina delle impostazioni",
-  "filter_modal.added.short_explanation": "Questo post è stato aggiunto alla categoria del filtro seguente: {title}.",
+  "filter_modal.added.short_explanation": "Questo post è stato aggiunto alla seguente categoria del filtro: {title}.",
   "filter_modal.added.title": "Filtro aggiunto!",
   "filter_modal.select_filter.context_mismatch": "non si applica a questo contesto",
   "filter_modal.select_filter.expired": "scaduto",
@@ -256,85 +253,85 @@
   "filter_modal.select_filter.title": "Filtra questo post",
   "filter_modal.title.status": "Filtra un post",
   "follow_recommendations.done": "Fatto",
-  "follow_recommendations.heading": "Segui le persone da cui vuoi vedere i messaggi! Ecco alcuni suggerimenti.",
-  "follow_recommendations.lead": "I messaggi da persone che segui verranno visualizzati in ordine cronologico nel tuo home feed. Non abbiate paura di commettere errori, potete smettere di seguire le persone altrettanto facilmente in qualsiasi momento!",
+  "follow_recommendations.heading": "Segui le persone di cui vorresti vedere i post! Ecco alcuni suggerimenti.",
+  "follow_recommendations.lead": "I post dalle persone che segui appariranno in ordine cronologico sul feed della tua home. Non preoccuparti di fare errori, è altrettanto facile smettere di seguire le persone, in qualsiasi momento!",
   "follow_request.authorize": "Autorizza",
   "follow_request.reject": "Rifiuta",
-  "follow_requests.unlocked_explanation": "Benché il tuo account non sia privato, lo staff di {domain} ha pensato che potresti voler approvare manualmente le richieste di follow da questi account.",
+  "follow_requests.unlocked_explanation": "Anche se il tuo profilo non è privato, lo staff di {domain} ha pensato che potresti voler revisionare manualmente le richieste di seguirti da questi profili.",
   "footer.about": "Info",
-  "footer.directory": "Directory dei profili",
+  "footer.directory": "Cartella dei profili",
   "footer.get_app": "Scarica l'app",
-  "footer.invite": "Invita le persone",
+  "footer.invite": "Invita persone",
   "footer.keyboard_shortcuts": "Scorciatoie da tastiera",
   "footer.privacy_policy": "Politica sulla privacy",
   "footer.source_code": "Visualizza il codice sorgente",
   "generic.saved": "Salvato",
-  "getting_started.heading": "Come iniziare",
+  "getting_started.heading": "Per iniziare",
   "hashtag.column_header.tag_mode.all": "e {additional}",
   "hashtag.column_header.tag_mode.any": "o {additional}",
   "hashtag.column_header.tag_mode.none": "senza {additional}",
   "hashtag.column_settings.select.no_options_message": "Nessun suggerimento trovato",
-  "hashtag.column_settings.select.placeholder": "Inserisci hashtag…",
+  "hashtag.column_settings.select.placeholder": "Inserisci gli hashtag…",
   "hashtag.column_settings.tag_mode.all": "Tutti questi",
   "hashtag.column_settings.tag_mode.any": "Uno o più di questi",
   "hashtag.column_settings.tag_mode.none": "Nessuno di questi",
-  "hashtag.column_settings.tag_toggle": "Include additional tags in this column",
+  "hashtag.column_settings.tag_toggle": "Includi i tag aggiuntivi per questa colonna",
   "hashtag.follow": "Segui l'hashtag",
-  "hashtag.unfollow": "Cessa di seguire l'hashtag",
-  "home.column_settings.basic": "Semplice",
-  "home.column_settings.show_reblogs": "Mostra condivisioni",
+  "hashtag.unfollow": "Smetti di seguire l'hashtag",
+  "home.column_settings.basic": "Base",
+  "home.column_settings.show_reblogs": "Mostra reblog",
   "home.column_settings.show_replies": "Mostra risposte",
   "home.hide_announcements": "Nascondi annunci",
   "home.show_announcements": "Mostra annunci",
-  "interaction_modal.description.favourite": "Con un account su Mastodon, puoi aggiungere questo post ai preferiti per far sapere all'autore che lo apprezzi e salvarlo per dopo.",
-  "interaction_modal.description.follow": "Con un account su Mastodon, puoi seguire {name} per ricevere i suoi post nel tuo home feed.",
-  "interaction_modal.description.reblog": "Con un account su Mastodon, puoi condividere questo post per rendere partecipi i tuoi seguaci.",
-  "interaction_modal.description.reply": "Con un account su Mastodon, è possibile rispondere a questo post.",
+  "interaction_modal.description.favourite": "Con un profilo di Mastodon, puoi salvare questo post tra i preferiti per far sapere all'autore che lo apprezzi e lo hai salvato per dopo.",
+  "interaction_modal.description.follow": "Con un profilo di Mastodon, puoi seguire {name} per ricevere i suoi post nel feed della tua home.",
+  "interaction_modal.description.reblog": "Con un profilo di Mastodon, puoi rebloggare questo post per condividerlo con i tuoi seguaci.",
+  "interaction_modal.description.reply": "Con un profilo di Mastodon, puoi rispondere a questo post.",
   "interaction_modal.on_another_server": "Su un altro server",
   "interaction_modal.on_this_server": "Su questo server",
-  "interaction_modal.other_server_instructions": "Copia e incolla questo URL nel campo di ricerca della tua app Mastodon preferita o nell'interfaccia web del tuo server Mastodon.",
-  "interaction_modal.preamble": "Poiché Mastodon è decentralizzato, è possibile utilizzare il proprio account esistente ospitato da un altro server Mastodon o piattaforma compatibile se non si dispone di un account su questo.",
+  "interaction_modal.other_server_instructions": "Copia e incolla questo URL nel campo di ricerca della tua app di Mastodon preferita o dell'interfaccia web del tuo server di Mastodon.",
+  "interaction_modal.preamble": "Poiché Mastodon è decentralizzato, puoi utilizzare il tuo profilo esistente ospitato da un altro server di Mastodon on piattaforma compatibile, se non hai un profilo su questo.",
   "interaction_modal.title.favourite": "Post preferito di {name}",
   "interaction_modal.title.follow": "Segui {name}",
-  "interaction_modal.title.reblog": "Condividi il post di {name}",
+  "interaction_modal.title.reblog": "Reblogga il post di {name}",
   "interaction_modal.title.reply": "Rispondi al post di {name}",
   "intervals.full.days": "{number, plural, one {# giorno} other {# giorni}}",
   "intervals.full.hours": "{number, plural, one {# ora} other {# ore}}",
   "intervals.full.minutes": "{number, plural, one {# minuto} other {# minuti}}",
-  "keyboard_shortcuts.back": "per tornare indietro",
-  "keyboard_shortcuts.blocked": "per aprire l'elenco degli utenti bloccati",
-  "keyboard_shortcuts.boost": "Condividi il post",
-  "keyboard_shortcuts.column": "per portare il focus su uno status in una delle colonne",
-  "keyboard_shortcuts.compose": "per portare il focus nell'area di composizione",
+  "keyboard_shortcuts.back": "Torna indietro",
+  "keyboard_shortcuts.blocked": "Apre l'elenco degli utenti bloccati",
+  "keyboard_shortcuts.boost": "Reblogga il post",
+  "keyboard_shortcuts.column": "Focalizza alla colonna",
+  "keyboard_shortcuts.compose": "Focalizza l'area di composizione testuale",
   "keyboard_shortcuts.description": "Descrizione",
   "keyboard_shortcuts.direct": "per aprire la colonna dei messaggi diretti",
-  "keyboard_shortcuts.down": "Spostati in basso nella lista",
-  "keyboard_shortcuts.enter": "Apri il post",
-  "keyboard_shortcuts.favourite": "Apprezza post",
-  "keyboard_shortcuts.favourites": "per aprire l'elenco dei toot apprezzati",
-  "keyboard_shortcuts.federated": "per aprire la timeline federata",
-  "keyboard_shortcuts.heading": "Tasti di scelta rapida",
-  "keyboard_shortcuts.home": "per aprire la timeline home",
+  "keyboard_shortcuts.down": "Scorri in basso nell'elenco",
+  "keyboard_shortcuts.enter": "Apre il post",
+  "keyboard_shortcuts.favourite": "Salva il post tra i preferiti",
+  "keyboard_shortcuts.favourites": "Apre l'elenco dei preferiti",
+  "keyboard_shortcuts.federated": "Apre la cronologia federata",
+  "keyboard_shortcuts.heading": "Scorciatoie da tastiera",
+  "keyboard_shortcuts.home": "Apre la cronologia domestica",
   "keyboard_shortcuts.hotkey": "Tasto di scelta rapida",
-  "keyboard_shortcuts.legend": "per mostrare questa spiegazione",
-  "keyboard_shortcuts.local": "per aprire la timeline locale",
-  "keyboard_shortcuts.mention": "per menzionare l'autore",
-  "keyboard_shortcuts.muted": "per aprire l'elenco degli utenti silenziati",
-  "keyboard_shortcuts.my_profile": "per aprire il tuo profilo",
-  "keyboard_shortcuts.notifications": "per aprire la colonna delle notifiche",
-  "keyboard_shortcuts.open_media": "per aprire media",
-  "keyboard_shortcuts.pinned": "Apri l'elenco dei toot fissati in cima",
-  "keyboard_shortcuts.profile": "per aprire il profilo dell'autore",
-  "keyboard_shortcuts.reply": "Rispondi al post",
-  "keyboard_shortcuts.requests": "per aprire l'elenco di richieste di follow",
-  "keyboard_shortcuts.search": "per spostare il focus sulla ricerca",
-  "keyboard_shortcuts.spoilers": "per mostrare/nascondere il campo CW",
-  "keyboard_shortcuts.start": "per aprire la colonna \"Come iniziare\"",
-  "keyboard_shortcuts.toggle_hidden": "per mostrare/nascondere il testo dei CW",
-  "keyboard_shortcuts.toggle_sensitivity": "mostrare/nascondere media",
+  "keyboard_shortcuts.legend": "Mostra questa legenda",
+  "keyboard_shortcuts.local": "Apre la cronologia locale",
+  "keyboard_shortcuts.mention": "Menziona l'autore",
+  "keyboard_shortcuts.muted": "Apre l'elenco degli utenti silenziati",
+  "keyboard_shortcuts.my_profile": "Apre il tuo profilo",
+  "keyboard_shortcuts.notifications": "Apre la colonna delle notifiche",
+  "keyboard_shortcuts.open_media": "Apre i multimedia",
+  "keyboard_shortcuts.pinned": "Apre l'elenco dei post fissati",
+  "keyboard_shortcuts.profile": "Apre il profilo dell'autore",
+  "keyboard_shortcuts.reply": "Risponde al post",
+  "keyboard_shortcuts.requests": "Apre l'elenco delle richieste di seguirti",
+  "keyboard_shortcuts.search": "Focalizza sulla barra di ricerca",
+  "keyboard_shortcuts.spoilers": "Mostra/Nasconde il campo CW",
+  "keyboard_shortcuts.start": "Apre la colonna \"per iniziare\"",
+  "keyboard_shortcuts.toggle_hidden": "Mostra/Nasconde il testo dietro CW",
+  "keyboard_shortcuts.toggle_sensitivity": "Mostra/Nasconde media",
   "keyboard_shortcuts.toot": "Crea un nuovo post",
-  "keyboard_shortcuts.unfocus": "per uscire dall'area di composizione o dalla ricerca",
-  "keyboard_shortcuts.up": "per spostarsi in alto nella lista",
+  "keyboard_shortcuts.unfocus": "Rimuove il focus sull'area di composizione testuale/ricerca",
+  "keyboard_shortcuts.up": "Scorre in su nell'elenco",
   "lightbox.close": "Chiudi",
   "lightbox.compress": "Comprimi casella di visualizzazione immagine",
   "lightbox.expand": "Espandi casella di visualizzazione immagine",
@@ -346,97 +343,97 @@
   "lists.account.remove": "Togli dalla lista",
   "lists.delete": "Elimina lista",
   "lists.edit": "Modifica lista",
-  "lists.edit.submit": "Cambia titolo",
+  "lists.edit.submit": "Cambia il titolo",
   "lists.new.create": "Aggiungi lista",
   "lists.new.title_placeholder": "Titolo della nuova lista",
   "lists.replies_policy.followed": "Qualsiasi utente seguito",
-  "lists.replies_policy.list": "Iscritti alla lista",
+  "lists.replies_policy.list": "Membri della lista",
   "lists.replies_policy.none": "Nessuno",
   "lists.replies_policy.title": "Mostra risposte a:",
   "lists.search": "Cerca tra le persone che segui",
   "lists.subheading": "Le tue liste",
   "load_pending": "{count, plural, one {# nuovo oggetto} other {# nuovi oggetti}}",
   "loading_indicator.label": "Caricamento...",
-  "media_gallery.toggle_visible": "Imposta visibilità",
+  "media_gallery.toggle_visible": "{number, plural, one {Nascondi immagine} other {Nascondi immagini}}",
   "missing_indicator.label": "Non trovato",
-  "missing_indicator.sublabel": "Risorsa non trovata",
-  "moved_to_account_banner.text": "Il tuo account {disabledAccount} è attualmente disabilitato perché ti sei trasferito/a su {movedToAccount}.",
+  "missing_indicator.sublabel": "Impossibile trovare questa risorsa",
+  "moved_to_account_banner.text": "Il tuo profilo {disabledAccount} è correntemente disabilitato perché ti sei spostato a {movedToAccount}.",
   "mute_modal.duration": "Durata",
-  "mute_modal.hide_notifications": "Nascondere le notifiche da quest'utente?",
+  "mute_modal.hide_notifications": "Nascondere le notifiche da questo utente?",
   "mute_modal.indefinite": "Per sempre",
-  "navigation_bar.about": "Informazioni su",
+  "navigation_bar.about": "Info",
   "navigation_bar.blocks": "Utenti bloccati",
   "navigation_bar.bookmarks": "Segnalibri",
-  "navigation_bar.community_timeline": "Timeline locale",
+  "navigation_bar.community_timeline": "Cronologia locale",
   "navigation_bar.compose": "Componi nuovo toot",
   "navigation_bar.direct": "Messaggi diretti",
   "navigation_bar.discover": "Scopri",
-  "navigation_bar.domain_blocks": "Domini nascosti",
-  "navigation_bar.edit_profile": "Modifica profilo",
+  "navigation_bar.domain_blocks": "Domini bloccati",
+  "navigation_bar.edit_profile": "Modifica il profilo",
   "navigation_bar.explore": "Esplora",
-  "navigation_bar.favourites": "Apprezzati",
+  "navigation_bar.favourites": "Preferiti",
   "navigation_bar.filters": "Parole silenziate",
   "navigation_bar.follow_requests": "Richieste di seguirti",
   "navigation_bar.follows_and_followers": "Seguiti e seguaci",
   "navigation_bar.lists": "Liste",
-  "navigation_bar.logout": "Esci",
+  "navigation_bar.logout": "Disconnettiti",
   "navigation_bar.mutes": "Utenti silenziati",
   "navigation_bar.personal": "Personale",
-  "navigation_bar.pins": "Post fissati in cima",
-  "navigation_bar.preferences": "Impostazioni",
-  "navigation_bar.public_timeline": "Timeline federata",
+  "navigation_bar.pins": "Post fissati",
+  "navigation_bar.preferences": "Preferenze",
+  "navigation_bar.public_timeline": "Cronologia federata",
   "navigation_bar.search": "Cerca",
   "navigation_bar.security": "Sicurezza",
-  "not_signed_in_indicator.not_signed_in": "Devi effetturare il login per accedere a questa funzione.",
+  "not_signed_in_indicator.not_signed_in": "Devi accedere per consultare questa risorsa.",
   "notification.admin.report": "{name} ha segnalato {target}",
   "notification.admin.sign_up": "{name} si è iscritto",
-  "notification.favourite": "{name} ha apprezzato il tuo post",
+  "notification.favourite": "{name} ha salvato il tuo post tra i preferiti",
   "notification.follow": "{name} ha iniziato a seguirti",
-  "notification.follow_request": "{name} ti ha mandato una richiesta di follow",
+  "notification.follow_request": "{name} ha richiesto di seguirti",
   "notification.mention": "{name} ti ha menzionato",
   "notification.own_poll": "Il tuo sondaggio è terminato",
   "notification.poll": "Un sondaggio in cui hai votato è terminato",
-  "notification.reblog": "{name} ha condiviso il tuo post",
+  "notification.reblog": "{name} ha rebloggato il tuo post",
   "notification.status": "{name} ha appena pubblicato un post",
   "notification.update": "{name} ha modificato un post",
-  "notifications.clear": "Cancella notifiche",
-  "notifications.clear_confirmation": "Vuoi davvero cancellare tutte le notifiche?",
+  "notifications.clear": "Cancella le notifiche",
+  "notifications.clear_confirmation": "Sei sicuro di voler cancellare permanentemente tutte le tue notifiche?",
   "notifications.column_settings.admin.report": "Nuove segnalazioni:",
   "notifications.column_settings.admin.sign_up": "Nuove iscrizioni:",
   "notifications.column_settings.alert": "Notifiche desktop",
-  "notifications.column_settings.favourite": "Apprezzati:",
+  "notifications.column_settings.favourite": "Preferiti:",
   "notifications.column_settings.filter_bar.advanced": "Mostra tutte le categorie",
-  "notifications.column_settings.filter_bar.category": "Filtro rapido",
-  "notifications.column_settings.filter_bar.show_bar": "Mostra barra filtri",
-  "notifications.column_settings.follow": "Nuovi follower:",
-  "notifications.column_settings.follow_request": "Nuove richieste di follow:",
+  "notifications.column_settings.filter_bar.category": "Barra rapida del filtro",
+  "notifications.column_settings.filter_bar.show_bar": "Mostra la barra del filtro",
+  "notifications.column_settings.follow": "Nuovi seguaci:",
+  "notifications.column_settings.follow_request": "Nuove richieste di seguirti:",
   "notifications.column_settings.mention": "Menzioni:",
   "notifications.column_settings.poll": "Risultati del sondaggio:",
   "notifications.column_settings.push": "Notifiche push",
-  "notifications.column_settings.reblog": "Post condivisi:",
-  "notifications.column_settings.show": "Mostra in colonna",
+  "notifications.column_settings.reblog": "Reblog:",
+  "notifications.column_settings.show": "Mostra nella colonna",
   "notifications.column_settings.sound": "Riproduci suono",
   "notifications.column_settings.status": "Nuovi post:",
   "notifications.column_settings.unread_notifications.category": "Notifiche non lette",
-  "notifications.column_settings.unread_notifications.highlight": "Evidenzia notifiche non lette",
+  "notifications.column_settings.unread_notifications.highlight": "Evidenzia le notifiche non lette",
   "notifications.column_settings.update": "Modifiche:",
   "notifications.filter.all": "Tutti",
-  "notifications.filter.boosts": "Condivisioni",
-  "notifications.filter.favourites": "Apprezzati",
-  "notifications.filter.follows": "Follower",
+  "notifications.filter.boosts": "Reblog",
+  "notifications.filter.favourites": "Preferiti",
+  "notifications.filter.follows": "Seguaci",
   "notifications.filter.mentions": "Menzioni",
   "notifications.filter.polls": "Risultati del sondaggio",
   "notifications.filter.statuses": "Aggiornamenti dalle persone che segui",
-  "notifications.grant_permission": "Dai il permesso.",
+  "notifications.grant_permission": "Concedi autorizzazione.",
   "notifications.group": "{count} notifiche",
   "notifications.mark_as_read": "Segna tutte le notifiche come lette",
-  "notifications.permission_denied": "Impossibile abilitare le notifiche sul desktop perché il permesso è stato negato.",
-  "notifications.permission_denied_alert": "Le notifiche sul desktop non possono essere abilitate, poiché il permesso nel browser è stato negato in precedenza",
-  "notifications.permission_required": "Le notifiche desktop non sono disponibili perché l'autorizzazione richiesta non è stata concessa.",
-  "notifications_permission_banner.enable": "Abilita le notifiche sul desktop",
-  "notifications_permission_banner.how_to_control": "Per ricevere notifiche quando Mastodon non è aperto, abilita le notifiche desktop. Puoi controllare con precisione quali tipi di interazioni generano notifiche desktop tramite il pulsante {icon} qui sopra, dopo averle abilitate.",
+  "notifications.permission_denied": "Notifiche desktop non disponibili a causa della precedentemente negata richiesta di autorizzazioni del browser",
+  "notifications.permission_denied_alert": "Impossibile abilitare le notifiche desktop, poiché l'autorizzazione del browser è stata precedentemente negata",
+  "notifications.permission_required": "Notifiche destkop non disponibili poiché l'autorizzazione richiesta non è stata concessa.",
+  "notifications_permission_banner.enable": "Abilita le notifiche desktop",
+  "notifications_permission_banner.how_to_control": "Per ricevere le notifiche quando Mastodon non è aperto, abilita le notifiche desktop. Puoi controllare precisamente quali tipi di interazioni generano le notifiche destkop, tramite il pulsante {icon} sopra, una volta abilitate.",
   "notifications_permission_banner.title": "Non perderti mai nulla",
-  "picture_in_picture.restore": "Riportalo indietro",
+  "picture_in_picture.restore": "Ripristinala",
   "poll.closed": "Chiuso",
   "poll.refresh": "Aggiorna",
   "poll.total_people": "{count, plural, one {# persona} other {# persone}}",
@@ -445,141 +442,141 @@
   "poll.voted": "Hai votato per questa risposta",
   "poll.votes": "{votes, plural, one {# voto} other {# voti}}",
   "poll_button.add_poll": "Aggiungi un sondaggio",
-  "poll_button.remove_poll": "Rimuovi sondaggio",
+  "poll_button.remove_poll": "Rimuovi il sondaggio",
   "privacy.change": "Modifica privacy del post",
-  "privacy.direct.long": "Invia solo a utenti menzionati",
-  "privacy.direct.short": "Solo persone citate",
-  "privacy.private.long": "Invia solo ai follower",
-  "privacy.private.short": "Solo i seguaci",
+  "privacy.direct.long": "Visibile solo per gli utenti menzionati",
+  "privacy.direct.short": "Solo persone menzionate",
+  "privacy.private.long": "Visibile solo ai seguaci",
+  "privacy.private.short": "Solo seguaci",
   "privacy.public.long": "Visibile a tutti",
   "privacy.public.short": "Pubblico",
   "privacy.unlisted.long": "Visibile a tutti, ma escluso dalle funzioni di scoperta",
   "privacy.unlisted.short": "Non elencato",
   "privacy_policy.last_updated": "Ultimo aggiornamento {date}",
-  "privacy_policy.title": "Politica sulla privacy",
-  "refresh": "Aggiorna",
-  "regeneration_indicator.label": "Caricamento in corso…",
-  "regeneration_indicator.sublabel": "Stiamo preparando il tuo home feed!",
+  "privacy_policy.title": "Politica sulla Privacy",
+  "refresh": "Ricarica",
+  "regeneration_indicator.label": "Caricamento…",
+  "regeneration_indicator.sublabel": "Il feed della tua home è in preparazione!",
   "relative_time.days": "{number}g",
   "relative_time.full.days": "{number, plural, one {# giorno} other {# giorni}} fa",
   "relative_time.full.hours": "{number, plural, one {# ora} other {# ore}} fa",
-  "relative_time.full.just_now": "proprio ora",
+  "relative_time.full.just_now": "adesso",
   "relative_time.full.minutes": "{number, plural, one {# minuto} other {# minuti}} fa",
   "relative_time.full.seconds": "{number, plural, one {# secondo} other {# secondi}} fa",
-  "relative_time.hours": "{number}o",
+  "relative_time.hours": "{number}h",
   "relative_time.just_now": "ora",
   "relative_time.minutes": "{number} minuti",
-  "relative_time.seconds": "{number} secondi",
+  "relative_time.seconds": "{number}s",
   "relative_time.today": "oggi",
   "reply_indicator.cancel": "Annulla",
   "report.block": "Blocca",
-  "report.block_explanation": "Non vedrai i loro post. Non saranno in grado di vedere i tuoi post o di seguirti. Potranno sapere che sono bloccati.",
+  "report.block_explanation": "Non visualizzerai i suoi post. Non potrà vedere i tuoi post o seguirti. Potrà sapere di esser stato bloccato.",
   "report.categories.other": "Altro",
   "report.categories.spam": "Spam",
   "report.categories.violation": "Il contenuto viola una o più regole del server",
-  "report.category.subtitle": "Scegli la migliore corrispondenza",
+  "report.category.subtitle": "Scegli la corrispondenza migliore",
   "report.category.title": "Dicci cosa sta succedendo con questo {type}",
   "report.category.title_account": "profilo",
   "report.category.title_status": "post",
   "report.close": "Fatto",
   "report.comment.title": "C'è altro che pensi che dovremmo sapere?",
   "report.forward": "Inoltra a {target}",
-  "report.forward_hint": "Questo account appartiene a un altro server. Mandare anche là una copia anonima del rapporto?",
+  "report.forward_hint": "Il profilo proviene da un altro server. Inviare anche lì una copia anonima del rapporto?",
   "report.mute": "Silenzia",
-  "report.mute_explanation": "Non vedrai i loro post. Potranno ancora seguirti e vedere i tuoi post e non sapranno che sono stati silenziati.",
+  "report.mute_explanation": "Non visualizzerai i suoi post. Potrà comunque seguirti e visualizzare i tuoi post e non saprà di esser stato silenziato.",
   "report.next": "Successivo",
   "report.placeholder": "Commenti aggiuntivi",
   "report.reasons.dislike": "Non mi piace",
-  "report.reasons.dislike_description": "Non è qualcosa che vuoi vedere",
+  "report.reasons.dislike_description": "Non è qualcosa che desideri vedere",
   "report.reasons.other": "È qualcos'altro",
   "report.reasons.other_description": "Il problema non rientra in altre categorie",
   "report.reasons.spam": "È spam",
-  "report.reasons.spam_description": "Collegamenti malevoli, false interazioni, o risposte ripetitive",
+  "report.reasons.spam_description": "Link malevoli, false interazioni o risposte ripetitive",
   "report.reasons.violation": "Viola le regole del server",
-  "report.reasons.violation_description": "Siete consapevoli che viola regole specifiche",
+  "report.reasons.violation_description": "Sei consapevole che viola regole specifiche",
   "report.rules.subtitle": "Seleziona tutte le risposte pertinenti",
-  "report.rules.title": "Quali regole vengono violate?",
+  "report.rules.title": "Quali regole sono violate?",
   "report.statuses.subtitle": "Seleziona tutte le risposte pertinenti",
-  "report.statuses.title": "Ci sono post a sostegno di questa segnalazione?",
+  "report.statuses.title": "Ci sono dei post a sostegno di questa segnalazione?",
   "report.submit": "Invia",
-  "report.target": "Invio la segnalazione {target}",
-  "report.thanks.take_action": "Ecco le tue opzioni per controllare quello che vedi su Mastodon:",
-  "report.thanks.take_action_actionable": "Mentre controlliamo, puoi fare questo contro @{name}:",
-  "report.thanks.title": "Non vuoi vedere questo?",
-  "report.thanks.title_actionable": "Grazie per la segnalazione, controlleremo il problema.",
-  "report.unfollow": "Non seguire più @{name}",
-  "report.unfollow_explanation": "Stai seguendo questo account. Per non vedere più i suoi post nel tuo feed home, smetti di seguirlo.",
-  "report_notification.attached_statuses": "{count, plural, one {{count} post} other {{count} post}} allegati",
+  "report.target": "Segnalando {target}",
+  "report.thanks.take_action": "Ecco le tue opzioni per controllare cosa vedi su Mastodon:",
+  "report.thanks.take_action_actionable": "Mentre revisioniamo questa segnalazione, puoi agire contro @{name}:",
+  "report.thanks.title": "Non desideri vederlo?",
+  "report.thanks.title_actionable": "Grazie per la segnalazione, ce ne occuperemo.",
+  "report.unfollow": "Smetti di seguire @{name}",
+  "report.unfollow_explanation": "Segui questo profilo. Per non visualizzare più i suoi post nel feed della tua home, smetti di seguirlo.",
+  "report_notification.attached_statuses": "{count, plural, one {{count} post allegato} other {{count} post allegati}}",
   "report_notification.categories.other": "Altro",
   "report_notification.categories.spam": "Spam",
   "report_notification.categories.violation": "Violazione delle regole",
   "report_notification.open": "Apri segnalazione",
   "search.placeholder": "Cerca",
-  "search.search_or_paste": "Cerca o incolla l'URL",
+  "search.search_or_paste": "Cerca o incolla URL",
   "search_popout.search_format": "Formato di ricerca avanzato",
-  "search_popout.tips.full_text": "Testo semplice per trovare gli status che hai scritto, segnato come apprezzati, condiviso o in cui sei stato citato, e inoltre i nomi utente, nomi visualizzati e hashtag che lo contengono.",
-  "search_popout.tips.hashtag": "etichetta",
+  "search_popout.tips.full_text": "Restituisce in testo semplice i post che hai scritto, salvato tra i preferiti, rebloggato o in cui sei stato menzionato, nonché nomi utenti, nomi visualizzati e hashtag corrispondenti.",
+  "search_popout.tips.hashtag": "hashtag",
   "search_popout.tips.status": "post",
-  "search_popout.tips.text": "Testo semplice per trovare nomi visualizzati, nomi utente e hashtag che lo contengono",
+  "search_popout.tips.text": "Restituisce in testo semplice i nomi utente, i nomi visualizzati e gli hashtag corrispondenti",
   "search_popout.tips.user": "utente",
-  "search_results.accounts": "Gente",
+  "search_results.accounts": "Persone",
   "search_results.all": "Tutto",
   "search_results.hashtags": "Hashtag",
   "search_results.nothing_found": "Impossibile trovare qualcosa per questi termini di ricerca",
   "search_results.statuses": "Post",
-  "search_results.statuses_fts_disabled": "La ricerca di post per il loro contenuto non è abilitata su questo server Mastodon.",
-  "search_results.title": "Ricerca: {q}",
-  "search_results.total": "{count} {count, plural, one {risultato} other {risultati}}",
-  "server_banner.about_active_users": "Persone che usano questo server negli ultimi 30 giorni (utenti attivi mensili)",
+  "search_results.statuses_fts_disabled": "La ricerca dei post per contenuto non è abilitata su questo server di Mastodon.",
+  "search_results.title": "Cerca {q}",
+  "search_results.total": "{count, number} {count, plural, one {risultato} other {risultati}}",
+  "server_banner.about_active_users": "Persone che hanno utilizzato questo server negli ultimi 30 giorni (Utenti Attivi Mensilmente)",
   "server_banner.active_users": "utenti attivi",
   "server_banner.administered_by": "Amministrato da:",
-  "server_banner.introduction": "{domain} fa parte del social network decentralizzato alimentato da {mastodon}.",
+  "server_banner.introduction": "{domain} è parte del social network decentralizzato, sviluppato da {mastodon}.",
   "server_banner.learn_more": "Scopri di più",
   "server_banner.server_stats": "Statistiche del server:",
-  "sign_in_banner.create_account": "Crea un account",
+  "sign_in_banner.create_account": "Crea un profilo",
   "sign_in_banner.sign_in": "Accedi",
-  "sign_in_banner.text": "Accedi per seguire profili o hashtag, segnare come preferiti, condividere e rispondere ai post o interagire dal tuo account su un server diverso.",
+  "sign_in_banner.text": "Accedi per seguire profili o hashtag, salvare tra i preferiti, condividere e rispondere ai post, o interagire dal tuo profilo su un server differente.",
   "status.admin_account": "Apri interfaccia di moderazione per @{name}",
   "status.admin_status": "Apri questo post nell'interfaccia di moderazione",
   "status.block": "Blocca @{name}",
   "status.bookmark": "Aggiungi segnalibro",
-  "status.cancel_reblog_private": "Annulla condivisione",
+  "status.cancel_reblog_private": "Annulla reblog",
   "status.cannot_reblog": "Questo post non può essere condiviso",
   "status.copy": "Copia link al post",
   "status.delete": "Elimina",
   "status.detailed_status": "Vista conversazione dettagliata",
-  "status.direct": "Messaggio privato @{name}",
+  "status.direct": "Messaggio diretto a @{name}",
   "status.edit": "Modifica",
   "status.edited": "Modificato il {date}",
   "status.edited_x_times": "Modificato {count, plural, one {{count} volta} other {{count} volte}}",
   "status.embed": "Incorpora",
-  "status.favourite": "Apprezzato",
+  "status.favourite": "Salva preferito",
   "status.filter": "Filtra questo post",
   "status.filtered": "Filtrato",
   "status.hide": "Nascondi toot",
   "status.history.created": "{name} ha creato {date}",
-  "status.history.edited": "{name} ha modificato {date}",
-  "status.load_more": "Mostra di più",
-  "status.media_hidden": "Allegato nascosto",
+  "status.history.edited": "Modificato da {name} il {date}",
+  "status.load_more": "Carica altro",
+  "status.media_hidden": "Media nascosto",
   "status.mention": "Menziona @{name}",
   "status.more": "Altro",
   "status.mute": "Silenzia @{name}",
   "status.mute_conversation": "Silenzia conversazione",
   "status.open": "Espandi questo post",
   "status.pin": "Fissa in cima sul profilo",
-  "status.pinned": "Post fissato in cima",
-  "status.read_more": "Leggi altro",
-  "status.reblog": "Condividi",
-  "status.reblog_private": "Condividi con i destinatari iniziali",
-  "status.reblogged_by": "{name} ha condiviso",
-  "status.reblogs.empty": "Nessuno ha ancora condiviso questo post. Quando qualcuno lo farà, comparirà qui.",
-  "status.redraft": "Cancella e riscrivi",
-  "status.remove_bookmark": "Elimina segnalibro",
+  "status.pinned": "Post fissato",
+  "status.read_more": "Leggi di più",
+  "status.reblog": "Reblog",
+  "status.reblog_private": "Reblog con visibilità originale",
+  "status.reblogged_by": "Rebloggato da {name}",
+  "status.reblogs.empty": "Ancora nessuno ha rebloggato questo post. Quando qualcuno lo farà, apparirà qui.",
+  "status.redraft": "Elimina e riscrivi",
+  "status.remove_bookmark": "Rimuovi segnalibro",
   "status.replied_to": "Risposta a {name}",
   "status.reply": "Rispondi",
   "status.replyAll": "Rispondi alla conversazione",
   "status.report": "Segnala @{name}",
-  "status.sensitive_warning": "Materiale sensibile",
+  "status.sensitive_warning": "Contenuto sensibile",
   "status.share": "Condividi",
   "status.show_filter_reason": "Mostra comunque",
   "status.show_less": "Mostra meno",
@@ -590,14 +587,14 @@
   "status.translate": "Traduci",
   "status.translated_from_with": "Tradotto da {lang} utilizzando {provider}",
   "status.uncached_media_warning": "Non disponibile",
-  "status.unmute_conversation": "Annulla silenzia conversazione",
-  "status.unpin": "Non fissare in cima al profilo",
-  "subscribed_languages.lead": "Solo i messaggi nelle lingue selezionate appariranno nella tua home e nelle timeline dopo il cambiamento. Seleziona nessuno per ricevere messaggi in tutte le lingue.",
-  "subscribed_languages.save": "Salva modifiche",
-  "subscribed_languages.target": "Cambia le lingue di cui ricevere i post per {target}",
-  "suggestions.dismiss": "Elimina suggerimento",
+  "status.unmute_conversation": "Annulla silenziamento conversazione",
+  "status.unpin": "Non fissare sul profilo",
+  "subscribed_languages.lead": "Solo i post nelle lingue selezionate appariranno sulla tua home e nelle cronologie dopo la modifica. Seleziona nessuno per ricevere i post in tutte le lingue.",
+  "subscribed_languages.save": "Salva le modifiche",
+  "subscribed_languages.target": "Modifica le lingue in cui sei iscritto per {target}",
+  "suggestions.dismiss": "Chiudi suggerimento",
   "suggestions.header": "Ti potrebbe interessare…",
-  "tabs_bar.federated_timeline": "Federazione",
+  "tabs_bar.federated_timeline": "Federata",
   "tabs_bar.home": "Home",
   "tabs_bar.local_timeline": "Locale",
   "tabs_bar.notifications": "Notifiche",
@@ -607,44 +604,44 @@
   "time_remaining.moments": "Restano pochi istanti",
   "time_remaining.seconds": "{number, plural, one {# secondo} other {# secondi}} left",
   "timeline_hint.remote_resource_not_displayed": "{resource} da altri server non sono mostrati.",
-  "timeline_hint.resources.followers": "Follower",
+  "timeline_hint.resources.followers": "Seguaci",
   "timeline_hint.resources.follows": "Segue",
   "timeline_hint.resources.statuses": "Post meno recenti",
   "trends.counter_by_accounts": "{count, plural, one {{count} persona} other {{count} persone}} {days, plural, one {nell'ultimo giorno} other {negli ultimi {days} giorni}}",
-  "trends.trending_now": "Di tendenza ora",
-  "ui.beforeunload": "La bozza andrà persa se esci da Mastodon.",
-  "units.short.billion": "{count}G",
+  "trends.trending_now": "Ora in tendenza",
+  "ui.beforeunload": "La tua bozza andrà persa, se abbandoni Mastodon.",
+  "units.short.billion": "{count}B",
   "units.short.million": "{count}M",
   "units.short.thousand": "{count}K",
-  "upload_area.title": "Trascina per caricare",
-  "upload_button.label": "Aggiungi file multimediale",
-  "upload_error.limit": "Limite al caricamento di file superato.",
-  "upload_error.poll": "Caricamento file non consentito nei sondaggi.",
-  "upload_form.audio_description": "Descrizione per persone con difetti uditivi",
-  "upload_form.description": "Descrizione per utenti con disabilità visive",
-  "upload_form.description_missing": "Nessuna descrizione inserita",
+  "upload_area.title": "Trascina e rilascia per caricare",
+  "upload_button.label": "Aggiungi un file immagine, video o audio",
+  "upload_error.limit": "Limite di caricamento dei file superato.",
+  "upload_error.poll": "Caricamento del file non consentito con i sondaggi.",
+  "upload_form.audio_description": "Descrizione per persone con deficit uditivi",
+  "upload_form.description": "Descrizione per ipovedenti",
+  "upload_form.description_missing": "Nessuna descrizione aggiunta",
   "upload_form.edit": "Modifica",
-  "upload_form.thumbnail": "Cambia miniatura",
-  "upload_form.undo": "Cancella",
-  "upload_form.video_description": "Descrizione per persone con difetti uditivi o visivi",
-  "upload_modal.analyzing_picture": "Analisi immagine…",
+  "upload_form.thumbnail": "Cambia la miniatura",
+  "upload_form.undo": "Elimina",
+  "upload_form.video_description": "Descrizione per persone con deficit uditivi o ipovedenti",
+  "upload_modal.analyzing_picture": "Analizzando l'immagine…",
   "upload_modal.apply": "Applica",
-  "upload_modal.applying": "Applicazione in corso…",
-  "upload_modal.choose_image": "Scegli immagine",
-  "upload_modal.description_placeholder": "Ma la volpe col suo balzo ha raggiunto il quieto Fido",
-  "upload_modal.detect_text": "Rileva testo dall'immagine",
-  "upload_modal.edit_media": "Modifica media",
+  "upload_modal.applying": "Applicazione…",
+  "upload_modal.choose_image": "Scegli l'immagine",
+  "upload_modal.description_placeholder": "Ma la volpe col suo balzo ha raggiunto il fiero Fido",
+  "upload_modal.detect_text": "Rileva il testo dall'immagine",
+  "upload_modal.edit_media": "Modifica il media",
   "upload_modal.hint": "Clicca o trascina il cerchio sull'anteprima per scegliere il punto focale che sarà sempre visualizzato su tutte le miniature.",
   "upload_modal.preparing_ocr": "Preparazione OCR…",
   "upload_modal.preview_label": "Anteprima ({ratio})",
-  "upload_progress.label": "Invio in corso...",
-  "upload_progress.processing": "In elaborazione…",
-  "video.close": "Chiudi video",
+  "upload_progress.label": "Caricamento...",
+  "upload_progress.processing": "Elaborazione…",
+  "video.close": "Chiudi il video",
   "video.download": "Scarica file",
-  "video.exit_fullscreen": "Esci da modalità a schermo intero",
-  "video.expand": "Espandi video",
+  "video.exit_fullscreen": "Esci dallo schermo intero",
+  "video.expand": "Espandi il video",
   "video.fullscreen": "Schermo intero",
-  "video.hide": "Nascondi video",
+  "video.hide": "Nascondi il video",
   "video.mute": "Silenzia suono",
   "video.pause": "Pausa",
   "video.play": "Riproduci",
diff --git a/app/javascript/mastodon/locales/ja.json b/app/javascript/mastodon/locales/ja.json
index 9bc323607..ea4810318 100644
--- a/app/javascript/mastodon/locales/ja.json
+++ b/app/javascript/mastodon/locales/ja.json
@@ -142,6 +142,7 @@
   "compose_form.poll.switch_to_multiple": "複数選択に変更",
   "compose_form.poll.switch_to_single": "単一選択に変更",
   "compose_form.publish": "投稿",
+  "compose_form.publish_form": "投稿",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "変更を保存",
   "compose_form.sensitive.hide": "メディアを閲覧注意にする",
@@ -238,11 +239,7 @@
   "errors.unexpected_crash.copy_stacktrace": "スタックトレースをクリップボードにコピー",
   "errors.unexpected_crash.report_issue": "問題を報告",
   "explore.search_results": "検索結果",
-  "explore.suggested_follows": "おすすめ",
   "explore.title": "エクスプローラー",
-  "explore.trending_links": "ニュース",
-  "explore.trending_statuses": "投稿",
-  "explore.trending_tags": "ハッシュタグ",
   "filter_modal.added.context_mismatch_explanation": "このフィルターカテゴリーはあなたがアクセスした投稿のコンテキストには適用されません。この投稿のコンテキストでもフィルターを適用するにはフィルターを編集する必要があります。",
   "filter_modal.added.context_mismatch_title": "コンテキストが一致しません!",
   "filter_modal.added.expired_explanation": "このフィルターカテゴリーは有効期限が切れています。適用するには有効期限を更新してください。",
diff --git a/app/javascript/mastodon/locales/ka.json b/app/javascript/mastodon/locales/ka.json
index 39e84e004..ffdd38cfd 100644
--- a/app/javascript/mastodon/locales/ka.json
+++ b/app/javascript/mastodon/locales/ka.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
   "compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "{count, plural, one {Mark media as sensitive} other {Mark media as sensitive}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "Report issue",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/kab.json b/app/javascript/mastodon/locales/kab.json
index 47a567108..f823a55dd 100644
--- a/app/javascript/mastodon/locales/kab.json
+++ b/app/javascript/mastodon/locales/kab.json
@@ -49,7 +49,7 @@
   "account.mute": "Sgugem @{name}",
   "account.mute_notifications": "Sgugem tilɣa sγur @{name}",
   "account.muted": "Yettwasgugem",
-  "account.open_original_page": "Open original page",
+  "account.open_original_page": "Ldi asebter anasli",
   "account.posts": "Tisuffaɣ",
   "account.posts_with_replies": "Tisuffaɣ d tririyin",
   "account.report": "Cetki ɣef @{name}",
@@ -59,12 +59,12 @@
   "account.statuses_counter": "{count, plural, one {{counter} n tsuffeɣt} other {{counter} n tsuffaɣ}}",
   "account.unblock": "Serreḥ i @{name}",
   "account.unblock_domain": "Ssken-d {domain}",
-  "account.unblock_short": "Unblock",
+  "account.unblock_short": "Serreḥ",
   "account.unendorse": "Ur ttwellih ara fell-as deg umaɣnu-inek",
   "account.unfollow": "Ur ṭṭafaṛ ara",
   "account.unmute": "Kkes asgugem ɣef @{name}",
   "account.unmute_notifications": "Serreḥ ilɣa sɣur @{name}",
-  "account.unmute_short": "Unmute",
+  "account.unmute_short": "Kkes asgugem",
   "account_note.placeholder": "Ulac iwenniten",
   "admin.dashboard.daily_retention": "User retention rate by day after sign-up",
   "admin.dashboard.monthly_retention": "User retention rate by month after sign-up",
@@ -77,16 +77,16 @@
   "alert.unexpected.title": "Ayhuh!",
   "announcement.announcement": "Ulɣu",
   "attachments_list.unprocessed": "(unprocessed)",
-  "audio.hide": "Hide audio",
+  "audio.hide": "Ffer amesli",
   "autosuggest_hashtag.per_week": "{count} i yimalas",
   "boost_modal.combo": "Tzemreḍ ad tetekkiḍ ɣef {combo} akken ad tessurfeḍ aya tikelt-nniḍen",
-  "bundle_column_error.copy_stacktrace": "Copy error report",
+  "bundle_column_error.copy_stacktrace": "Nɣel tuccḍa n uneqqis",
   "bundle_column_error.error.body": "The requested page could not be rendered. It could be due to a bug in our code, or a browser compatibility issue.",
   "bundle_column_error.error.title": "Oh, no!",
   "bundle_column_error.network.body": "There was an error when trying to load this page. This could be due to a temporary problem with your internet connection or this server.",
-  "bundle_column_error.network.title": "Network error",
+  "bundle_column_error.network.title": "Tuccḍa deg uẓeṭṭa",
   "bundle_column_error.retry": "Ɛreḍ tikelt-nniḍen",
-  "bundle_column_error.return": "Go back home",
+  "bundle_column_error.return": "Uɣal ɣer ugejdan",
   "bundle_column_error.routing.body": "The requested page could not be found. Are you sure the URL in the address bar is correct?",
   "bundle_column_error.routing.title": "404",
   "bundle_modal_error.close": "Mdel",
@@ -94,7 +94,7 @@
   "bundle_modal_error.retry": "Ɛreḍ tikelt-nniḍen",
   "closed_registrations.other_server_instructions": "Since Mastodon is decentralized, you can create an account on another server and still interact with this one.",
   "closed_registrations_modal.description": "Creating an account on {domain} is currently not possible, but please keep in mind that you do not need an account specifically on {domain} to use Mastodon.",
-  "closed_registrations_modal.find_another_server": "Find another server",
+  "closed_registrations_modal.find_another_server": "Aff-d aqeddac nniḍen",
   "closed_registrations_modal.preamble": "Mastodon is decentralized, so no matter where you create your account, you will be able to follow and interact with anyone on this server. You can even self-host it!",
   "closed_registrations_modal.title": "Signing up on Mastodon",
   "column.about": "Γef",
@@ -128,9 +128,9 @@
   "compose_form.direct_message_warning_learn_more": "Issin ugar",
   "compose_form.encryption_warning": "Posts on Mastodon are not end-to-end encrypted. Do not share any dangerous information over Mastodon.",
   "compose_form.hashtag_warning": "This toot won't be listed under any hashtag as it is unlisted. Only public toots can be searched by hashtag.",
-  "compose_form.lock_disclaimer": "Amiḍan-ik ur yelli ara {locked}. Menwala yezmer ad k-yeḍfeṛ akken ad iẓer acu tbeṭṭuḍ akked yimeḍfaṛen-ik.",
+  "compose_form.lock_disclaimer": "Amiḍan-ik·im ur yelli ara {locked}. Menwala yezmer ad k·kem-yeḍfeṛ akken ad iẓer acu tbeṭṭuḍ akked yimeḍfaṛen-ik·im.",
   "compose_form.lock_disclaimer.lock": "yettwacekkel",
-  "compose_form.placeholder": "D acu i itezzin deg uqaṛṛu-ik?",
+  "compose_form.placeholder": "D acu i itezzin deg wallaɣ?",
   "compose_form.poll.add_option": "Rnu afran",
   "compose_form.poll.duration": "Tanzagt n tefrant",
   "compose_form.poll.option_placeholder": "Afran {number}",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
   "compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
   "compose_form.publish": "Suffeɣ",
+  "compose_form.publish_form": "Suffeɣ",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Sekles ibeddilen",
   "compose_form.sensitive.hide": "Creḍ allal n teywalt d anafri",
@@ -175,13 +176,13 @@
   "conversation.mark_as_read": "Creḍ yettwaɣṛa",
   "conversation.open": "Ssken adiwenni",
   "conversation.with": "Akked {names}",
-  "copypaste.copied": "Copied",
+  "copypaste.copied": "Yettwanɣel",
   "copypaste.copy": "Nγel",
   "directory.federated": "Deg fedivers yettwasnen",
   "directory.local": "Seg {domain} kan",
   "directory.new_arrivals": "Imaynuten id yewḍen",
   "directory.recently_active": "Yermed xas melmi kan",
-  "disabled_account_banner.account_settings": "Account settings",
+  "disabled_account_banner.account_settings": "Iγewwaṛen n umiḍan",
   "disabled_account_banner.text": "Your account {disabledAccount} is currently disabled.",
   "dismissable_banner.community_timeline": "These are the most recent public posts from people whose accounts are hosted by {domain}.",
   "dismissable_banner.dismiss": "Dismiss",
@@ -206,7 +207,7 @@
   "emoji_button.search_results": "Igemmaḍ n unadi",
   "emoji_button.symbols": "Izamulen",
   "emoji_button.travel": "Imeḍqan d Yinigen",
-  "empty_column.account_suspended": "Amiḍan yettwaḥebsen",
+  "empty_column.account_suspended": "Amiḍan yettwaḥbas",
   "empty_column.account_timeline": "Ulac tijewwaqin dagi!",
   "empty_column.account_unavailable": "Ur nufi ara amaɣnu-ayi",
   "empty_column.blocks": "Ur tesḥebseḍ ula yiwen n umseqdac ar tura.",
@@ -234,24 +235,20 @@
   "errors.unexpected_crash.copy_stacktrace": "Nɣel stacktrace ɣef wafus",
   "errors.unexpected_crash.report_issue": "Mmel ugur",
   "explore.search_results": "Igemmaḍ n unadi",
-  "explore.suggested_follows": "I kečč·kem",
   "explore.title": "Snirem",
-  "explore.trending_links": "Isallen",
-  "explore.trending_statuses": "Tisuffaɣ",
-  "explore.trending_tags": "Ihacṭagen",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
   "filter_modal.added.expired_title": "Expired filter!",
   "filter_modal.added.review_and_configure": "To review and further configure this filter category, go to the {settings_link}.",
   "filter_modal.added.review_and_configure_title": "Filter settings",
-  "filter_modal.added.settings_link": "settings page",
+  "filter_modal.added.settings_link": "asebter n yiɣewwaṛen",
   "filter_modal.added.short_explanation": "This post has been added to the following filter category: {title}.",
   "filter_modal.added.title": "Filter added!",
   "filter_modal.select_filter.context_mismatch": "does not apply to this context",
   "filter_modal.select_filter.expired": "expired",
-  "filter_modal.select_filter.prompt_new": "New category: {name}",
-  "filter_modal.select_filter.search": "Search or create",
+  "filter_modal.select_filter.prompt_new": "Taggayt tamaynutt : {name}",
+  "filter_modal.select_filter.search": "Nadi neɣ snulfu-d",
   "filter_modal.select_filter.subtitle": "Use an existing category or create a new one",
   "filter_modal.select_filter.title": "Filter this post",
   "filter_modal.title.status": "Filter a post",
@@ -261,13 +258,13 @@
   "follow_request.authorize": "Ssireg",
   "follow_request.reject": "Agi",
   "follow_requests.unlocked_explanation": "Even though your account is not locked, the {domain} staff thought you might want to review follow requests from these accounts manually.",
-  "footer.about": "About",
-  "footer.directory": "Profiles directory",
-  "footer.get_app": "Get the app",
-  "footer.invite": "Invite people",
-  "footer.keyboard_shortcuts": "Keyboard shortcuts",
-  "footer.privacy_policy": "Privacy policy",
-  "footer.source_code": "View source code",
+  "footer.about": "Γef",
+  "footer.directory": "Akaram n imaγnuten",
+  "footer.get_app": "Awi-d asnas",
+  "footer.invite": "Ɛreḍ-d kra n yimdanen",
+  "footer.keyboard_shortcuts": "Inegzumen n unasiw",
+  "footer.privacy_policy": "Tasertit tabaḍnit",
+  "footer.source_code": "Wali tangalt taɣbalut",
   "generic.saved": "Yettwasekles",
   "getting_started.heading": "Bdu",
   "hashtag.column_header.tag_mode.all": "d {additional}",
@@ -279,7 +276,7 @@
   "hashtag.column_settings.tag_mode.any": "Yiwen seg-sen",
   "hashtag.column_settings.tag_mode.none": "Yiwen ala seg-sen",
   "hashtag.column_settings.tag_toggle": "Glu-d s yihacṭagen imerna i ujgu-agi",
-  "hashtag.follow": "Follow hashtag",
+  "hashtag.follow": "Ḍfeṛ ahacṭag",
   "hashtag.unfollow": "Unfollow hashtag",
   "home.column_settings.basic": "Igejdanen",
   "home.column_settings.show_reblogs": "Ssken-d beṭṭu",
@@ -373,7 +370,7 @@
   "navigation_bar.discover": "Ẓer",
   "navigation_bar.domain_blocks": "Tiɣula yeffren",
   "navigation_bar.edit_profile": "Ẓreg amaɣnu",
-  "navigation_bar.explore": "Explore",
+  "navigation_bar.explore": "Snirem",
   "navigation_bar.favourites": "Ismenyifen",
   "navigation_bar.filters": "Awalen i yettwasgugmen",
   "navigation_bar.follow_requests": "Isuturen n teḍfeṛt",
@@ -450,7 +447,7 @@
   "privacy.direct.long": "Bḍu gar yimseqdacen i tbedreḍ kan",
   "privacy.direct.short": "Direct",
   "privacy.private.long": "Bḍu i yimeḍfaṛen-ik kan",
-  "privacy.private.short": "Followers-only",
+  "privacy.private.short": "Imeḍfaṛen kan",
   "privacy.public.long": "Visible for all",
   "privacy.public.short": "Azayez",
   "privacy.unlisted.long": "Visible for all, but opted-out of discovery features",
@@ -472,7 +469,7 @@
   "relative_time.seconds": "{number}tas",
   "relative_time.today": "assa",
   "reply_indicator.cancel": "Sefsex",
-  "report.block": "Block",
+  "report.block": "Sewḥel",
   "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": "Tiyyaḍ",
   "report.categories.spam": "Aspam",
@@ -493,7 +490,7 @@
   "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": "D aspam",
   "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",
@@ -507,15 +504,15 @@
   "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": "Seḥbes aḍfar n @{name}",
   "report.unfollow_explanation": "You are following this account. To not see their posts in your home feed anymore, unfollow them.",
   "report_notification.attached_statuses": "{count, plural, one {{count} post} other {{count} posts}} attached",
-  "report_notification.categories.other": "Other",
-  "report_notification.categories.spam": "Spam",
+  "report_notification.categories.other": "Ayen nniḍen",
+  "report_notification.categories.spam": "Aspam",
   "report_notification.categories.violation": "Rule violation",
-  "report_notification.open": "Open report",
+  "report_notification.open": "Ldi aneqqis",
   "search.placeholder": "Nadi",
-  "search.search_or_paste": "Search or paste URL",
+  "search.search_or_paste": "Nadi neɣ senṭeḍ URL",
   "search_popout.search_format": "Anadi yenneflin",
   "search_popout.tips.full_text": "Simple text returns statuses you have written, favourited, boosted, or have been mentioned in, as well as matching usernames, display names, and hashtags.",
   "search_popout.tips.hashtag": "ahacṭag",
@@ -523,20 +520,20 @@
   "search_popout.tips.text": "Simple text returns matching display names, usernames and hashtags",
   "search_popout.tips.user": "amseqdac",
   "search_results.accounts": "Medden",
-  "search_results.all": "All",
+  "search_results.all": "Akk",
   "search_results.hashtags": "Ihacṭagen",
   "search_results.nothing_found": "Could not find anything for these search terms",
-  "search_results.statuses": "Tibeṛṛaniyin",
+  "search_results.statuses": "Tisuffaɣ",
   "search_results.statuses_fts_disabled": "Anadi ɣef tjewwiqin s ugbur-nsent ur yermid ara deg uqeddac-agi n Maṣṭudun.",
-  "search_results.title": "Search for {q}",
+  "search_results.title": "Anadi ɣef {q}",
   "search_results.total": "{count, number} {count, plural, one {n ugemmuḍ} other {n yigemmuḍen}}",
   "server_banner.about_active_users": "People using this server during the last 30 days (Monthly Active Users)",
   "server_banner.active_users": "active users",
-  "server_banner.administered_by": "Administered by:",
+  "server_banner.administered_by": "Yettwadbel sɣur :",
   "server_banner.introduction": "{domain} is part of the decentralized social network powered by {mastodon}.",
   "server_banner.learn_more": "Issin ugar",
   "server_banner.server_stats": "Server stats:",
-  "sign_in_banner.create_account": "Create account",
+  "sign_in_banner.create_account": "Snulfu-d amiḍan",
   "sign_in_banner.sign_in": "Qqen",
   "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts, or interact from your account on a different server.",
   "status.admin_account": "Open moderation interface for @{name}",
@@ -556,7 +553,7 @@
   "status.favourite": "Rnu ɣer yismenyifen",
   "status.filter": "Filter this post",
   "status.filtered": "Yettwasizdeg",
-  "status.hide": "Hide toot",
+  "status.hide": "Ffer tajewwiqt",
   "status.history.created": "{name} created {date}",
   "status.history.edited": "{name} edited {date}",
   "status.load_more": "Sali ugar",
@@ -588,7 +585,7 @@
   "status.show_more_all": "Ẓerr ugar lebda",
   "status.show_original": "Show original",
   "status.translate": "Suqel",
-  "status.translated_from_with": "Translated from {lang} using {provider}",
+  "status.translated_from_with": "Yettwasuqel seg {lang} s {provider}",
   "status.uncached_media_warning": "Ulac-it",
   "status.unmute_conversation": "Kkes asgugem n udiwenni",
   "status.unpin": "Kkes asenteḍ seg umaɣnu",
diff --git a/app/javascript/mastodon/locales/kk.json b/app/javascript/mastodon/locales/kk.json
index 6bd43ffe8..b4f6fa120 100644
--- a/app/javascript/mastodon/locales/kk.json
+++ b/app/javascript/mastodon/locales/kk.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Бірнеше жауап таңдайтындай қылу",
   "compose_form.poll.switch_to_single": "Тек бір жауап таңдайтындай қылу",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "Сезімтал ретінде белгіле",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Жиынтықты көшіріп ал клипбордқа",
   "errors.unexpected_crash.report_issue": "Мәселені хабарла",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/kn.json b/app/javascript/mastodon/locales/kn.json
index a504ebb99..4e1bcbdc6 100644
--- a/app/javascript/mastodon/locales/kn.json
+++ b/app/javascript/mastodon/locales/kn.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
   "compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "{count, plural, one {Mark media as sensitive} other {Mark media as sensitive}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "Report issue",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/ko.json b/app/javascript/mastodon/locales/ko.json
index 55ba91487..a0566376d 100644
--- a/app/javascript/mastodon/locales/ko.json
+++ b/app/javascript/mastodon/locales/ko.json
@@ -2,7 +2,7 @@
   "about.blocks": "제한된 서버들",
   "about.contact": "연락처:",
   "about.disclaimer": "마스토돈은 자유 오픈소스 소프트웨어이며, Mastodon gGmbH의 상표입니다",
-  "about.domain_blocks.no_reason_available": "알 수 없는 이유",
+  "about.domain_blocks.no_reason_available": "이유 비공개",
   "about.domain_blocks.preamble": "마스토돈은 일반적으로 연합우주에 있는 어떤 서버의 사용자와도 게시물을 보고 응답을 할 수 있도록 허용합니다. 다음 항목들은 특정한 서버에 대해 만들어 진 예외사항입니다.",
   "about.domain_blocks.silenced.explanation": "명시적으로 찾아보거나 팔로우를 하기 전까지는, 이 서버에 있는 프로필이나 게시물 등을 일반적으로 볼 수 없습니다.",
   "about.domain_blocks.silenced.title": "제한됨",
@@ -99,7 +99,7 @@
   "closed_registrations_modal.title": "마스토돈에서 가입",
   "column.about": "정보",
   "column.blocks": "차단한 사용자",
-  "column.bookmarks": "보관함",
+  "column.bookmarks": "북마크",
   "column.community": "로컬 타임라인",
   "column.direct": "다이렉트 메시지",
   "column.directory": "프로필 둘러보기",
@@ -137,7 +137,8 @@
   "compose_form.poll.remove_option": "이 항목 삭제",
   "compose_form.poll.switch_to_multiple": "다중 선택이 가능한 투표로 변경",
   "compose_form.poll.switch_to_single": "단일 선택 투표로 변경",
-  "compose_form.publish": "게시",
+  "compose_form.publish": "뿌우",
+  "compose_form.publish_form": "뿌우",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "변경사항 저장",
   "compose_form.sensitive.hide": "미디어를 민감함으로 설정하기",
@@ -164,7 +165,7 @@
   "confirmations.logout.message": "정말로 로그아웃 하시겠습니까?",
   "confirmations.mute.confirm": "뮤트",
   "confirmations.mute.explanation": "이 동작은 해당 계정의 게시물과 해당 계정을 멘션하는 게시물을 숨깁니다, 하지만 여전히 해당 계정이 당신의 게시물을 보고 팔로우 할 수 있습니다.",
-  "confirmations.mute.message": "정말로 {name}를 뮤트하시겠습니까?",
+  "confirmations.mute.message": "정말로 {name} 님을 뮤트하시겠습니까?",
   "confirmations.redraft.confirm": "삭제하고 다시 쓰기",
   "confirmations.redraft.message": "정말로 이 게시물을 삭제하고 다시 쓰시겠습니까? 해당 게시물에 대한 부스트와 좋아요를 잃게 되고 원본에 대한 답장은 연결 되지 않습니다.",
   "confirmations.reply.confirm": "답글",
@@ -210,7 +211,7 @@
   "empty_column.account_timeline": "여긴 게시물이 없어요!",
   "empty_column.account_unavailable": "프로필 사용 불가",
   "empty_column.blocks": "아직 아무도 차단하지 않았습니다.",
-  "empty_column.bookmarked_statuses": "아직 보관한 게시물이 없습니다. 게시물을 보관하면 여기에 나타납니다.",
+  "empty_column.bookmarked_statuses": "아직 북마크에 저장한 게시물이 없습니다. 게시물을 북마크 지정하면 여기에 나타납니다.",
   "empty_column.community": "로컬 타임라인에 아무 것도 없습니다. 아무거나 적어 보세요!",
   "empty_column.direct": "아직 다이렉트 메시지가 없습니다. 다이렉트 메시지를 보내거나 받은 경우, 여기에 표시 됩니다.",
   "empty_column.domain_blocks": "아직 차단한 도메인이 없습니다.",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "에러 내용을 클립보드에 복사",
   "errors.unexpected_crash.report_issue": "문제 신고",
   "explore.search_results": "검색 결과",
-  "explore.suggested_follows": "당신을 위한 추천",
   "explore.title": "둘러보기",
-  "explore.trending_links": "소식",
-  "explore.trending_statuses": "게시물",
-  "explore.trending_tags": "해시태그",
   "filter_modal.added.context_mismatch_explanation": "이 필터 카테고리는 당신이 이 게시물에 접근한 문맥에 적용되지 않습니다. 만약 이 문맥에서도 필터되길 원한다면, 필터를 수정해야 합니다.",
   "filter_modal.added.context_mismatch_title": "문맥 불일치!",
   "filter_modal.added.expired_explanation": "이 필터 카테고리는 만료되었습니다, 적용하려면 만료 일자를 변경할 필요가 있습니다.",
@@ -269,7 +266,7 @@
   "footer.privacy_policy": "개인정보 정책",
   "footer.source_code": "소스코드 보기",
   "generic.saved": "저장됨",
-  "getting_started.heading": "시작",
+  "getting_started.heading": "시작하기",
   "hashtag.column_header.tag_mode.all": "및 {additional}",
   "hashtag.column_header.tag_mode.any": "또는 {additional}",
   "hashtag.column_header.tag_mode.none": "{additional}를 제외하고",
@@ -292,7 +289,7 @@
   "interaction_modal.description.reply": "마스토돈 계정을 통해, 이 게시물에 응답할 수 있습니다.",
   "interaction_modal.on_another_server": "다른 서버에",
   "interaction_modal.on_this_server": "이 서버에서",
-  "interaction_modal.other_server_instructions": "즐겨찾는 마스토돈 앱이나 마스토돈 서버의 웹 인터페이스 내 검색 영역에 이 URL을 복사 및 붙여넣기 하세요.",
+  "interaction_modal.other_server_instructions": "주로 이용하는 마스토돈 앱이나 마스토돈 서버의 웹 인터페이스 내 검색 영역에 이 URL을 복사 및 붙여넣기 하세요.",
   "interaction_modal.preamble": "마스토돈은 분산화 되어 있기 때문에, 이곳에 계정이 없더라도 다른 곳에서 운영되는 마스토돈 서버나 호환 되는 플랫폼에 있는 계정을 사용할 수 있습니다.",
   "interaction_modal.title.favourite": "{name} 님의 게시물을 마음에 들어하기",
   "interaction_modal.title.follow": "{name} 님을 팔로우",
@@ -366,14 +363,14 @@
   "mute_modal.indefinite": "무기한",
   "navigation_bar.about": "정보",
   "navigation_bar.blocks": "차단한 사용자",
-  "navigation_bar.bookmarks": "보관함",
+  "navigation_bar.bookmarks": "북마크",
   "navigation_bar.community_timeline": "로컬 타임라인",
   "navigation_bar.compose": "새 게시물 작성",
   "navigation_bar.direct": "다이렉트 메시지",
   "navigation_bar.discover": "발견하기",
   "navigation_bar.domain_blocks": "차단한 도메인",
   "navigation_bar.edit_profile": "프로필 편집",
-  "navigation_bar.explore": "탐색하기",
+  "navigation_bar.explore": "둘러보기",
   "navigation_bar.favourites": "좋아요",
   "navigation_bar.filters": "뮤트한 단어",
   "navigation_bar.follow_requests": "팔로우 요청",
@@ -393,7 +390,7 @@
   "notification.favourite": "{name} 님이 당신의 게시물을 마음에 들어합니다",
   "notification.follow": "{name} 님이 나를 팔로우했습니다",
   "notification.follow_request": "{name} 님이 팔로우 요청을 보냈습니다",
-  "notification.mention": "{name} 님이 답글을 보냈습니다",
+  "notification.mention": "{name} 님이 언급하였습니다",
   "notification.own_poll": "내 투표가 끝났습니다",
   "notification.poll": "당신이 참여 한 투표가 종료되었습니다",
   "notification.reblog": "{name} 님이 부스트했습니다",
@@ -447,7 +444,7 @@
   "poll_button.add_poll": "투표 추가",
   "poll_button.remove_poll": "투표 삭제",
   "privacy.change": "게시물의 프라이버시 설정을 변경",
-  "privacy.direct.long": "멘션한 사용자에게만 공개",
+  "privacy.direct.long": "언급된 사용자만 볼 수 있음",
   "privacy.direct.short": "멘션한 사람들만",
   "privacy.private.long": "팔로워에게만 공개",
   "privacy.private.short": "팔로워 전용",
@@ -508,7 +505,7 @@
   "report.thanks.title": "이런 것을 보지 않길 원하나요?",
   "report.thanks.title_actionable": "신고해주셔서 감사합니다, 중재자분들이 확인할 예정입니다.",
   "report.unfollow": "@{name}을 팔로우 해제",
-  "report.unfollow_explanation": "당신을 이 계정을 팔로우 하고 있습니다. 홈 피드에서 게시물을 보지 않으려면, 팔로우를 해제하세요.",
+  "report.unfollow_explanation": "이 계정을 팔로우하고 있습니다. 홈 피드에서 더 이상 게시물을 받아 보지 않으려면 팔로우를 해제하십시오.",
   "report_notification.attached_statuses": "{count}개의 게시물 첨부됨",
   "report_notification.categories.other": "기타",
   "report_notification.categories.spam": "스팸",
@@ -542,7 +539,7 @@
   "status.admin_account": "@{name}에 대한 중재 화면 열기",
   "status.admin_status": "중재 화면에서 이 게시물 열기",
   "status.block": "@{name} 차단",
-  "status.bookmark": "보관",
+  "status.bookmark": "북마크",
   "status.cancel_reblog_private": "부스트 취소",
   "status.cannot_reblog": "이 게시물은 부스트 할 수 없습니다",
   "status.copy": "게시물 링크 복사",
@@ -563,7 +560,7 @@
   "status.media_hidden": "미디어 숨겨짐",
   "status.mention": "@{name} 님에게 글 쓰기",
   "status.more": "자세히",
-  "status.mute": "@{name} 뮤트",
+  "status.mute": "@{name} 님을 뮤트하기",
   "status.mute_conversation": "이 대화를 뮤트",
   "status.open": "상세 정보 표시",
   "status.pin": "고정",
@@ -574,11 +571,11 @@
   "status.reblogged_by": "{name} 님이 부스트했습니다",
   "status.reblogs.empty": "아직 아무도 이 게시물을 부스트하지 않았습니다. 부스트 한 사람들이 여기에 표시 됩니다.",
   "status.redraft": "지우고 다시 쓰기",
-  "status.remove_bookmark": "보관한 게시물 삭제",
-  "status.replied_to": "{name} 님에게 답장",
+  "status.remove_bookmark": "북마크 삭제",
+  "status.replied_to": "{name} 님에게",
   "status.reply": "답장",
   "status.replyAll": "글타래에 답장",
-  "status.report": "신고",
+  "status.report": "{name} 님을 신고하기",
   "status.sensitive_warning": "민감한 미디어",
   "status.share": "공유",
   "status.show_filter_reason": "그냥 표시하기",
diff --git a/app/javascript/mastodon/locales/ku.json b/app/javascript/mastodon/locales/ku.json
index a2ace7deb..ad0b6f814 100644
--- a/app/javascript/mastodon/locales/ku.json
+++ b/app/javascript/mastodon/locales/ku.json
@@ -16,7 +16,7 @@
   "account.badges.bot": "Bot",
   "account.badges.group": "Kom",
   "account.block": "@{name} asteng bike",
-  "account.block_domain": "{domain} navpar asteng bike",
+  "account.block_domain": "Navpera {domain} asteng bike",
   "account.blocked": "Astengkirî",
   "account.browse_more_on_origin_server": "Li pelên resen bêhtir bigere",
   "account.cancel_follow_request": "Daxwaza şopandinê vekişîne",
@@ -37,9 +37,9 @@
   "account.following_counter": "{count, plural, one {{counter} Dişopîne} other {{counter} Dişopîne}}",
   "account.follows.empty": "Ev bikarhêner hin kesekî heya niha neşopandiye.",
   "account.follows_you": "Te dişopîne",
-  "account.go_to_profile": "Go to profile",
+  "account.go_to_profile": "Biçe bo profîlê",
   "account.hide_reblogs": "Bilindkirinên ji @{name} veşêre",
-  "account.joined_short": "Tevlî bû",
+  "account.joined_short": "Dîroka tevlîbûnê",
   "account.languages": "Zimanên beşdarbûyî biguherîne",
   "account.link_verified_on": "Xwedaniya li vê girêdanê di {date} de hatiye kontrolkirin",
   "account.locked_info": "Rewşa vê ajimêrê wek kilîtkirî hatiye sazkirin. Xwediyê ajimêrê, bi destan dinirxîne şopandinê dinirxîne.",
@@ -62,8 +62,8 @@
   "account.unblock_short": "Astengiyê rake",
   "account.unendorse": "Li ser profîl nîşan neke",
   "account.unfollow": "Neşopîne",
-  "account.unmute": "@{name} Bêdeng bike",
-  "account.unmute_notifications": "Agahdariyan ji @{name} bêdeng bike",
+  "account.unmute": "@{name} bêdeng neke",
+  "account.unmute_notifications": "Agahdariyan ji @{name} bêdeng neke",
   "account.unmute_short": "Bêdeng neke",
   "account_note.placeholder": "Bitikîne bo nîşeyekê tevlî bikî",
   "admin.dashboard.daily_retention": "Rêjeya ragirtina bikarhêner bi roj piştî tomarkirinê",
@@ -87,13 +87,13 @@
   "bundle_column_error.network.title": "Çewtiya torê",
   "bundle_column_error.retry": "Dîsa biceribîne",
   "bundle_column_error.return": "Vegere rûpela sereke",
-  "bundle_column_error.routing.body": "Rûpela xwestî nehate dîtin. Tu bawerî ku girêdana di kodika lêgerînê de rast e?",
+  "bundle_column_error.routing.body": "Rûpela xwestî nehate dîtin. Tu pê bawerî ku girêdana di darika navnîşanê de rast e?",
   "bundle_column_error.routing.title": "404",
   "bundle_modal_error.close": "Bigire",
   "bundle_modal_error.message": "Di dema barkirina vê hêmanê de tiştek çewt çê bû.",
   "bundle_modal_error.retry": "Dîsa bicerbîne",
-  "closed_registrations.other_server_instructions": "Ji ber ku Mastodon nenavendî ye, tu dikarî li ser pêşkêşkareke din hesabekî vekî û dîsa jî bi vê pêşkêşkarê re têkiliyê daynî.",
-  "closed_registrations_modal.description": "Afirandina hesabekî li ser {domain}ê niha ne pêkan e, lê tika ye ji bîr neke ku ji bo bikaranîna Mastodonê ne mecbûrî ye hesabekî te yê {domain}ê hebe.",
+  "closed_registrations.other_server_instructions": "Ji ber ku Mastodon nenavendî ye, tu dika li ser rajekarek din ajimêrekê biafirînî û hîn jî bi vê yekê re tev bigerî.",
+  "closed_registrations_modal.description": "Afirandina ajimêrekê li ser {domain} niha ne pêkan e, lê ji kerema xwe ji bîr neke ku pêdiviya te bi hebûna ajimêreke taybet li ser {domain} tune ye ku tu Mastodon bi kar bînî.",
   "closed_registrations_modal.find_another_server": "Rajekareke din bibîne",
   "closed_registrations_modal.preamble": "Mastodon nenavendî ye, ji ber vê yekê tu li ku derê ajimêrê xwe biafirînê, tu yê bikaribî li ser vê rajekarê her kesî bişopînî û têkilî deynî. Her wiha tu dikarî wê bi xwe pêşkêş bikî!",
   "closed_registrations_modal.title": "Tomar bibe li ser Mastodon",
@@ -128,7 +128,7 @@
   "compose_form.direct_message_warning_learn_more": "Bêtir fêr bibe",
   "compose_form.encryption_warning": "Şandiyên li ser Mastodon dawî-bi-dawî ne şîfrekirî ne. Li ser Mastodon zanyariyên hestyar parve neke.",
   "compose_form.hashtag_warning": "Ev şandî ji ber ku nehatiye tomarkirin dê di binê hashtagê de neyê tomar kirin. Tenê peyamên gelemperî dikarin bi hashtagê werin lêgerîn.",
-  "compose_form.lock_disclaimer": "Ajimêrê te {locked} nîne. Herkes dikare te bişopîne da ku şandiyên te yên tenê şopînerên te ra xûya dibin bibînin.",
+  "compose_form.lock_disclaimer": "Ajimêrê te ne {locked}. Herkes dikare te bişopîne da ku şandiyên te yên tenê ji şopînerên re têne xuyakirin bibînin.",
   "compose_form.lock_disclaimer.lock": "girtî ye",
   "compose_form.placeholder": "Çi di hişê te derbas dibe?",
   "compose_form.poll.add_option": "Hilbijarekî tevlî bike",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Rapirsî yê biguherînin da ku destûr bidin vebijarkên pirjimar",
   "compose_form.poll.switch_to_single": "Rapirsîyê biguherîne da ku mafê bidî tenê vebijêrkek",
   "compose_form.publish": "Biweşîne",
+  "compose_form.publish_form": "Biweşîne",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Guhertinan tomar bike",
   "compose_form.sensitive.hide": "{count, plural, one {Medya wekî hestiyar nîşan bide} other {Medya wekî hestiyar nîşan bide}}",
@@ -158,8 +159,8 @@
   "confirmations.delete_list.message": "Tu ji dil dixwazî vê lîsteyê bi awayekî mayînde jê bibî?",
   "confirmations.discard_edit_media.confirm": "Biavêje",
   "confirmations.discard_edit_media.message": "Guhertinên neqedandî di danasîna an pêşdîtina medyayê de hene, wan bi her awayî bavêje?",
-  "confirmations.domain_block.confirm": "Hemî navperê asteng bike",
-  "confirmations.domain_block.message": "Tu ji xwe bawerî, bi rastî tu dixwazî hemû {domain} asteng bikî? Di gelek rewşan de asteng kirin an jî bêdeng kirin têrê dike û tê tercîh kirin. Tu nikarî naveroka vê navperê di demnameyê an jî agahdariyên xwe de bibînî. Şopînerên te yê di vê navperê were jêbirin.",
+  "confirmations.domain_block.confirm": "Tevahiya navperê asteng bike",
+  "confirmations.domain_block.message": "Tu pê bawerî ku tu dixwazî tevahiya {domain} asteng bikî? Di gelek rewşan de astengkirin an jî bêdengkirin têrê dike û tê hilbijartin. Tu nikarî naveroka vê navperê di demnameyê an jî agahdariyên xwe de bibînî. Şopînerên te yê di vê navperê wê werin jêbirin.",
   "confirmations.logout.confirm": "Derkeve",
   "confirmations.logout.message": "Ma tu dixwazî ku derkevî?",
   "confirmations.mute.confirm": "Bêdeng bike",
@@ -181,8 +182,8 @@
   "directory.local": "Tenê ji {domain}",
   "directory.new_arrivals": "Kesên ku nû hatine",
   "directory.recently_active": "Di demên dawî de çalak",
-  "disabled_account_banner.account_settings": "Account settings",
-  "disabled_account_banner.text": "Your account {disabledAccount} is currently disabled.",
+  "disabled_account_banner.account_settings": "Sazkariyên ajimêr",
+  "disabled_account_banner.text": "Ajimêrê te {disabledAccount} niha neçalak e.",
   "dismissable_banner.community_timeline": "Ev şandiyên giştî yên herî dawî ji kesên ku ajimêrê wan ji aliyê {domain} ve têne pêşkêşkirin.",
   "dismissable_banner.dismiss": "Paşguh bike",
   "dismissable_banner.explore_links": "Ev çîrokên nûçeyan niha li ser vê û rajekarên din ên tora nenavendî ji aliyê mirovan ve têne axaftin.",
@@ -206,21 +207,21 @@
   "emoji_button.search_results": "Encamên lêgerînê",
   "emoji_button.symbols": "Sembol",
   "emoji_button.travel": "Geşt û şûn",
-  "empty_column.account_suspended": "Hesab hatiye rawestandin",
+  "empty_column.account_suspended": "Ajimêr hatiye rawestandin",
   "empty_column.account_timeline": "Li vir şandî tune!",
   "empty_column.account_unavailable": "Profîl nayê peydakirin",
   "empty_column.blocks": "Te tu bikarhêner asteng nekiriye.",
   "empty_column.bookmarked_statuses": "Hîn tu peyamên te yên şûnpelkirî tune ne. Dema ku tu yekî şûnpel bikî, ew ê li vir xuya bibe.",
   "empty_column.community": "Demnameya herêmî vala ye. Tiştek ji raya giştî re binivsînin da ku rûpel biherike!",
   "empty_column.direct": "Hîn peyamên te yên rasterast tune ne. Dema ku tu yekî bişînî an jî wergirî, ew ê li vir xuya bibe.",
-  "empty_column.domain_blocks": "Hê jî navperên hatine asteng kirin tune ne.",
+  "empty_column.domain_blocks": "Hîn tu navperên ku hatine astengkirin tune ne.",
   "empty_column.explore_statuses": "Tiştek niha di rojevê de tune. Paşê vegere!",
   "empty_column.favourited_statuses": "Hîn tu peyamên te yên bijarte tune ne. Dema ku te yekî bijart, ew ê li vir xuya bibe.",
   "empty_column.favourites": "Hîn tu kes vê peyamê nebijartiye. Gava ku hin kes bijartin, ew ê li vir xûya bikin.",
   "empty_column.follow_recommendations": "Wusa dixuye ku ji bo we tu pêşniyar nehatine çêkirin. Hûn dikarin lêgerînê bikarbînin da ku li kesên ku hûn nas dikin bigerin an hashtagên trendî bigerin.",
   "empty_column.follow_requests": "Hê jî daxwaza şopandinê tunne ye. Dema daxwazek hat, yê li vir were nîşan kirin.",
   "empty_column.hashtag": "Di vê hashtagê de hêj tiştekî tune.",
-  "empty_column.home": "Demnameya mala we vala ye! Ji bona tijîkirinê bêtir mirovan bişopînin. {suggestions}",
+  "empty_column.home": "Rojeva demnameya te vala ye! Ji bona tijîkirinê bêtir mirovan bişopîne. {suggestions}",
   "empty_column.home.suggestions": "Hinek pêşniyaran bibîne",
   "empty_column.list": "Di vê lîsteyê de hîn tiştek tune ye. Gava ku endamên vê lîsteyê peyamên nû biweşînin, ew ê li virê xuya bibin.",
   "empty_column.lists": "Hîn tu lîsteyên te tune ne. Dema yekê çêkî, ew ê li virê xuya bibe.",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Şopa gemara (stacktrace) tûrikê ra jê bigire",
   "errors.unexpected_crash.report_issue": "Pirsgirêkekê ragihîne",
   "explore.search_results": "Encamên lêgerînê",
-  "explore.suggested_follows": "Ji bo te",
   "explore.title": "Vekole",
-  "explore.trending_links": "Nûçe",
-  "explore.trending_statuses": "Şandî",
-  "explore.trending_tags": "Hashtag",
   "filter_modal.added.context_mismatch_explanation": "Ev beşa parzûnê ji bo naveroka ku te tê de xwe gihandiye vê şandiyê nayê sepandin. Ku tu dixwazî şandî di vê naverokê de jî werê parzûnkirin, divê tu parzûnê biguherînî.",
   "filter_modal.added.context_mismatch_title": "Naverok li hev nagire!",
   "filter_modal.added.expired_explanation": "Ev beşa parzûnê qediya ye, ji bo ku tu bikaribe wê biguherîne divê tu dema qedandinê biguherînî.",
@@ -292,7 +289,7 @@
   "interaction_modal.description.reply": "Bi ajimêrekê li ser Mastodon, tu dikarî bersiva vê şandiyê bidî.",
   "interaction_modal.on_another_server": "Li ser rajekareke cuda",
   "interaction_modal.on_this_server": "Li ser ev rajekar",
-  "interaction_modal.other_server_instructions": "Copy and paste this URL into the search field of your favourite Mastodon app or the web interface of your Mastodon server.",
+  "interaction_modal.other_server_instructions": "Vê girêdanê jê bigire û pêve bike di zeviya lêgerînê de ji sepana xwe ya Mastodon a bijarte yan jî navrûyê bikarhêneriyê ya tevnê ji rajekarê Mastodon.",
   "interaction_modal.preamble": "Ji ber ku Mastodon nenavendî ye, tu dikarî ajimêrê xwe ya heyî ku ji aliyê rajekarek din a Mastodon an platformek lihevhatî ve hatî pêşkêşkirin bi kar bînî ku ajimêrê te li ser vê yekê tune be.",
   "interaction_modal.title.favourite": "Şandiyê {name} bijarte bike",
   "interaction_modal.title.follow": "{name} bişopîne",
@@ -360,7 +357,7 @@
   "media_gallery.toggle_visible": "{number, plural, one {Wêneyê veşêre} other {Wêneyan veşêre}}",
   "missing_indicator.label": "Nehate dîtin",
   "missing_indicator.sublabel": "Ev çavkanî nehat dîtin",
-  "moved_to_account_banner.text": "Your account {disabledAccount} is currently disabled because you moved to {movedToAccount}.",
+  "moved_to_account_banner.text": "Ajimêrê te {disabledAccount} niha neçalak e ji ber ku te bar kir bo {movedToAccount}.",
   "mute_modal.duration": "Dem",
   "mute_modal.hide_notifications": "Agahdariyan ji ev bikarhêner veşêre?",
   "mute_modal.indefinite": "Nediyar",
@@ -371,7 +368,7 @@
   "navigation_bar.compose": "Şandiyeke nû binivsîne",
   "navigation_bar.direct": "Peyamên rasterast",
   "navigation_bar.discover": "Vekolê",
-  "navigation_bar.domain_blocks": "Navparên astengkirî",
+  "navigation_bar.domain_blocks": "Navperên astengkirî",
   "navigation_bar.edit_profile": "Profîlê serrast bike",
   "navigation_bar.explore": "Vekole",
   "navigation_bar.favourites": "Bijarte",
@@ -515,7 +512,7 @@
   "report_notification.categories.violation": "Binpêkirina rêzîkê",
   "report_notification.open": "Ragihandinê veke",
   "search.placeholder": "Bigere",
-  "search.search_or_paste": "Lêgerîn yan jî URLê pê ve bike",
+  "search.search_or_paste": "Bigere yan jî girêdanê pêve bike",
   "search_popout.search_format": "Dirûva lêgerîna pêşketî",
   "search_popout.tips.full_text": "Nivîsên hêsan, şandiyên ku te nivîsandiye, bijare kiriye, bilind kiriye an jî yên behsa te kirine û her wiha navê bikarhêneran, navên xûya dike û hashtagan vedigerîne.",
   "search_popout.tips.hashtag": "hashtag",
@@ -536,7 +533,7 @@
   "server_banner.introduction": "{domain} beşek ji tora civakî ya nenavendî ye bi hêzdariya {mastodon}.",
   "server_banner.learn_more": "Bêtir fêr bibe",
   "server_banner.server_stats": "Amarên rajekar:",
-  "sign_in_banner.create_account": "Hesab biafirîne",
+  "sign_in_banner.create_account": "Ajimêr biafirîne",
   "sign_in_banner.sign_in": "Têkeve",
   "sign_in_banner.text": "Têkeve ji bo şopandina profîlan an hashtagan, bijarte, parvekirin û bersivdana şandiyan, an ji ajimêrê xwe li ser rajekarek cuda têkilî deyine.",
   "status.admin_account": "Ji bo @{name} navrûya venihêrtinê veke",
@@ -563,7 +560,7 @@
   "status.media_hidden": "Medya veşartî ye",
   "status.mention": "Qal @{name} bike",
   "status.more": "Bêtir",
-  "status.mute": "@{name} Bêdeng bike",
+  "status.mute": "@{name} bêdeng bike",
   "status.mute_conversation": "Axaftinê bêdeng bike",
   "status.open": "Vê şandiyê berferh bike",
   "status.pin": "Li ser profîlê derzî bike",
diff --git a/app/javascript/mastodon/locales/kw.json b/app/javascript/mastodon/locales/kw.json
index d6b18ff62..8e937979f 100644
--- a/app/javascript/mastodon/locales/kw.json
+++ b/app/javascript/mastodon/locales/kw.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Chanjya sondyans dhe asa lies dewis",
   "compose_form.poll.switch_to_single": "Chanjya sondyans dhe asa unn dewis hepken",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "{count, plural, one {Merkya myski vel tender} other {Merkya myski vel tender}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Dasskrifa daslergh dhe'n astel glypp",
   "errors.unexpected_crash.report_issue": "Reportya kudyn",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/lt.json b/app/javascript/mastodon/locales/lt.json
index d9fb7eb9c..f8c8f2f42 100644
--- a/app/javascript/mastodon/locales/lt.json
+++ b/app/javascript/mastodon/locales/lt.json
@@ -1,23 +1,23 @@
 {
-  "about.blocks": "Moderated servers",
-  "about.contact": "Contact:",
+  "about.blocks": "Moderatorių prižiūrimi serveriai",
+  "about.contact": "Kontaktai:",
   "about.disclaimer": "Mastodon is free, open-source software, and a trademark of Mastodon gGmbH.",
-  "about.domain_blocks.no_reason_available": "Reason not available",
+  "about.domain_blocks.no_reason_available": "Priežastis nežinoma",
   "about.domain_blocks.preamble": "Mastodon generally allows you to view content from and interact with users from any other server in the fediverse. These are the exceptions that have been made on this particular server.",
   "about.domain_blocks.silenced.explanation": "You will generally not see profiles and content from this server, unless you explicitly look it up or opt into it by following.",
   "about.domain_blocks.silenced.title": "Limited",
   "about.domain_blocks.suspended.explanation": "No data from this server will be processed, stored or exchanged, making any interaction or communication with users from this server impossible.",
-  "about.domain_blocks.suspended.title": "Suspended",
-  "about.not_available": "This information has not been made available on this server.",
+  "about.domain_blocks.suspended.title": "Uždraustas",
+  "about.not_available": "Šiame serveryje informacijos nėra.",
   "about.powered_by": "Decentralized social media powered by {mastodon}",
-  "about.rules": "Server rules",
+  "about.rules": "Serverio taisyklės",
   "account.account_note_header": "Pastaba",
-  "account.add_or_remove_from_list": "Add or Remove from lists",
-  "account.badges.bot": "Bot",
+  "account.add_or_remove_from_list": "Pridėti arba ištrinti iš sąrašo",
+  "account.badges.bot": "Robotas",
   "account.badges.group": "Grupė",
-  "account.block": "Block @{name}",
+  "account.block": "Užblokuoti @{name}",
   "account.block_domain": "Hide everything from {domain}",
-  "account.blocked": "Blocked",
+  "account.blocked": "Užblokuota",
   "account.browse_more_on_origin_server": "Browse more on the original profile",
   "account.cancel_follow_request": "Withdraw follow request",
   "account.direct": "Direct message @{name}",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
   "compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "{count, plural, one {Mark media as sensitive} other {Mark media as sensitive}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "Report issue",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/lv.json b/app/javascript/mastodon/locales/lv.json
index 711a003fe..f96b648ad 100644
--- a/app/javascript/mastodon/locales/lv.json
+++ b/app/javascript/mastodon/locales/lv.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Maini aptaujas veidu, lai atļautu vairākas izvēles",
   "compose_form.poll.switch_to_single": "Maini aptaujas veidu, lai atļautu vienu izvēli",
   "compose_form.publish": "Publicēt",
+  "compose_form.publish_form": "Publicēt",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Saglabāt izmaiņas",
   "compose_form.sensitive.hide": "{count, plural, one {Atzīmēt multividi kā sensitīvu} other {Atzīmēt multivides kā sensitīvas}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Kopēt stacktrace uz starpliktuvi",
   "errors.unexpected_crash.report_issue": "Ziņot par problēmu",
   "explore.search_results": "Meklēšanas rezultāti",
-  "explore.suggested_follows": "Tev",
   "explore.title": "Pārlūkot",
-  "explore.trending_links": "Jaunumi",
-  "explore.trending_statuses": "Ziņas",
-  "explore.trending_tags": "Tēmturi",
   "filter_modal.added.context_mismatch_explanation": "Šī filtra kategorija neattiecas uz kontekstu, kurā esi piekļuvis šai ziņai. Ja vēlies, lai ziņa tiktu filtrēta arī šajā kontekstā, tev būs jārediģē filtrs.",
   "filter_modal.added.context_mismatch_title": "Konteksta neatbilstība!",
   "filter_modal.added.expired_explanation": "Šai filtra kategorijai ir beidzies derīguma termiņš. Lai to lietotu, tev būs jāmaina derīguma termiņš.",
@@ -447,14 +444,14 @@
   "poll_button.add_poll": "Pievienot aptauju",
   "poll_button.remove_poll": "Noņemt aptauju",
   "privacy.change": "Mainīt ziņas privātumu",
-  "privacy.direct.long": "Redzams tikai pieminētajiem lietotājiem",
+  "privacy.direct.long": "Redzama tikai pieminētajiem lietotājiem",
   "privacy.direct.short": "Tikai minētie cilvēki",
-  "privacy.private.long": "Redzams tikai sekotājiem",
+  "privacy.private.long": "Redzama tikai sekotājiem",
   "privacy.private.short": "Tikai sekotājiem",
   "privacy.public.long": "Redzama visiem",
-  "privacy.public.short": "Publisks",
-  "privacy.unlisted.long": "Redzama visiem, bet atteicās no atklāšanas funkcijām",
-  "privacy.unlisted.short": "Neminētie",
+  "privacy.public.short": "Publiska",
+  "privacy.unlisted.long": "Redzama visiem, bet izslēgta no satura atklāšanas funkcijām",
+  "privacy.unlisted.short": "Nerindota",
   "privacy_policy.last_updated": "Pēdējo reizi atjaunināta {date}",
   "privacy_policy.title": "Privātuma Politika",
   "refresh": "Atsvaidzināt",
diff --git a/app/javascript/mastodon/locales/mk.json b/app/javascript/mastodon/locales/mk.json
index 0d965819e..2acf78bbc 100644
--- a/app/javascript/mastodon/locales/mk.json
+++ b/app/javascript/mastodon/locales/mk.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
   "compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "Обележи медиа како сензитивна",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "Пријавете проблем",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/ml.json b/app/javascript/mastodon/locales/ml.json
index 51afa4b43..3bcd5280f 100644
--- a/app/javascript/mastodon/locales/ml.json
+++ b/app/javascript/mastodon/locales/ml.json
@@ -10,7 +10,7 @@
   "about.domain_blocks.suspended.title": "Suspended",
   "about.not_available": "This information has not been made available on this server.",
   "about.powered_by": "Decentralized social media powered by {mastodon}",
-  "about.rules": "Server rules",
+  "about.rules": "സെർവ്വർ നിയമങ്ങൾ",
   "account.account_note_header": "കുറിപ്പ്",
   "account.add_or_remove_from_list": "പട്ടികയിൽ ചേർക്കുകയോ/മാറ്റുകയോ ചെയ്യുക",
   "account.badges.bot": "റോബോട്ട്",
@@ -68,9 +68,9 @@
   "account_note.placeholder": "കുറിപ്പ് ചേർക്കാൻ ക്ലിക്കുചെയ്യുക",
   "admin.dashboard.daily_retention": "User retention rate by day after sign-up",
   "admin.dashboard.monthly_retention": "User retention rate by month after sign-up",
-  "admin.dashboard.retention.average": "Average",
+  "admin.dashboard.retention.average": "ശരാശരി",
   "admin.dashboard.retention.cohort": "Sign-up month",
-  "admin.dashboard.retention.cohort_size": "New users",
+  "admin.dashboard.retention.cohort_size": "പുതിയ ഉപയോക്താക്കൾ",
   "alert.rate_limited.message": "{retry_time, time, medium} നു ശേഷം വീണ്ടും ശ്രമിക്കുക.",
   "alert.rate_limited.title": "തോത് പരിമിതപ്പെടുത്തിയിരിക്കുന്നു",
   "alert.unexpected.message": "അപ്രതീക്ഷിതമായി എന്തോ സംഭവിച്ചു.",
@@ -84,9 +84,9 @@
   "bundle_column_error.error.body": "The requested page could not be rendered. It could be due to a bug in our code, or a browser compatibility issue.",
   "bundle_column_error.error.title": "Oh, no!",
   "bundle_column_error.network.body": "There was an error when trying to load this page. This could be due to a temporary problem with your internet connection or this server.",
-  "bundle_column_error.network.title": "Network error",
+  "bundle_column_error.network.title": "നെറ്റ്‍വർക്ക് പിശക്",
   "bundle_column_error.retry": "വീണ്ടും ശ്രമിക്കുക",
-  "bundle_column_error.return": "Go back home",
+  "bundle_column_error.return": "ഹോം പേജിലേക്ക് മടങ്ങാം",
   "bundle_column_error.routing.body": "The requested page could not be found. Are you sure the URL in the address bar is correct?",
   "bundle_column_error.routing.title": "404",
   "bundle_modal_error.close": "അടയ്ക്കുക",
@@ -97,11 +97,11 @@
   "closed_registrations_modal.find_another_server": "Find another server",
   "closed_registrations_modal.preamble": "Mastodon is decentralized, so no matter where you create your account, you will be able to follow and interact with anyone on this server. You can even self-host it!",
   "closed_registrations_modal.title": "Signing up on Mastodon",
-  "column.about": "About",
+  "column.about": "അപ്ലിക്കേഷനെക്കുറിച്ച്",
   "column.blocks": "തടയപ്പെട്ട ഉപയോക്താക്കൾ",
   "column.bookmarks": "ബുക്ക്മാർക്കുകൾ",
   "column.community": "പ്രാദേശികമായ സമയരേഖ",
-  "column.direct": "Direct messages",
+  "column.direct": "നേരിട്ടുള്ള സന്ദേശങ്ങൾ",
   "column.directory": "പ്രൊഫൈലുകൾ മറിച്ചുനോക്കുക",
   "column.domain_blocks": "മറയ്ക്കപ്പെട്ട മേഖലകൾ",
   "column.favourites": "പ്രിയപ്പെട്ടവ",
@@ -123,7 +123,7 @@
   "community.column_settings.local_only": "പ്രാദേശികം മാത്രം",
   "community.column_settings.media_only": "മാധ്യമങ്ങൾ മാത്രം",
   "community.column_settings.remote_only": "Remote only",
-  "compose.language.change": "Change language",
+  "compose.language.change": "ഭാഷ മാറ്റുക",
   "compose.language.search": "Search languages...",
   "compose_form.direct_message_warning_learn_more": "കൂടുതൽ പഠിക്കുക",
   "compose_form.encryption_warning": "Posts on Mastodon are not end-to-end encrypted. Do not share any dangerous information over Mastodon.",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "വോട്ടെടുപ്പിൽ ഒന്നിലധികം ചോയ്‌സുകൾ ഉൾപ്പെടുതുക",
   "compose_form.poll.switch_to_single": "വോട്ടെടുപ്പിൽ ഒരൊറ്റ ചോയ്‌സ്‌ മാത്രം ആക്കുക",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{പ്രസിദ്ധീകരിക്കുക}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "{count, plural, one {Mark media as sensitive} other {Mark media as sensitive}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "പ്രശ്നം അറിയിക്കുക",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/mr.json b/app/javascript/mastodon/locales/mr.json
index 63cb293e1..65a4cd8af 100644
--- a/app/javascript/mastodon/locales/mr.json
+++ b/app/javascript/mastodon/locales/mr.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
   "compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "{count, plural, one {Mark media as sensitive} other {Mark media as sensitive}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "Report issue",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/ms.json b/app/javascript/mastodon/locales/ms.json
index 7d25ac608..528726c13 100644
--- a/app/javascript/mastodon/locales/ms.json
+++ b/app/javascript/mastodon/locales/ms.json
@@ -1,16 +1,16 @@
 {
-  "about.blocks": "Moderated servers",
-  "about.contact": "Contact:",
-  "about.disclaimer": "Mastodon is free, open-source software, and a trademark of Mastodon gGmbH.",
-  "about.domain_blocks.no_reason_available": "Reason not available",
-  "about.domain_blocks.preamble": "Mastodon generally allows you to view content from and interact with users from any other server in the fediverse. These are the exceptions that have been made on this particular server.",
-  "about.domain_blocks.silenced.explanation": "You will generally not see profiles and content from this server, unless you explicitly look it up or opt into it by following.",
-  "about.domain_blocks.silenced.title": "Limited",
+  "about.blocks": "Pelayan yang dimoderasi",
+  "about.contact": "Hubungi:",
+  "about.disclaimer": "Mastodon ialah perisian sumber terbuka percuma, dan merupakan tanda dagangan Mastodon gGmbH.",
+  "about.domain_blocks.no_reason_available": "Sebab tidak tersedia",
+  "about.domain_blocks.preamble": "Secara amnya, Mastodon membenarkan anda melihat kandungan daripada dan berinteraksi dengan pengguna daripada mana-mana pelayan dalam dunia persekutuan. Berikut ialah pengecualian yang telah dibuat pada pelayan ini secara khususnya.",
+  "about.domain_blocks.silenced.explanation": "Secara amnya, anda tidak akan melihat profil dan kandungan daripada pelayan ini, kecuali anda mencarinya secara khusus atau ikut serta dengan mengikutinya.",
+  "about.domain_blocks.silenced.title": "Terhad",
   "about.domain_blocks.suspended.explanation": "No data from this server will be processed, stored or exchanged, making any interaction or communication with users from this server impossible.",
-  "about.domain_blocks.suspended.title": "Suspended",
-  "about.not_available": "This information has not been made available on this server.",
-  "about.powered_by": "Decentralized social media powered by {mastodon}",
-  "about.rules": "Server rules",
+  "about.domain_blocks.suspended.title": "Digantungkan",
+  "about.not_available": "Maklumat ini belum tersedia pada pelayan ini.",
+  "about.powered_by": "Media sosial terpencar dikuasakan oleh {mastodon}",
+  "about.rules": "Peraturan pelayan",
   "account.account_note_header": "Catatan",
   "account.add_or_remove_from_list": "Tambah atau Buang dari senarai",
   "account.badges.bot": "Bot",
@@ -19,16 +19,16 @@
   "account.block_domain": "Sekat domain {domain}",
   "account.blocked": "Disekat",
   "account.browse_more_on_origin_server": "Layari selebihnya di profil asal",
-  "account.cancel_follow_request": "Withdraw follow request",
+  "account.cancel_follow_request": "Menarik balik permintaan mengikut",
   "account.direct": "Mesej terus @{name}",
   "account.disable_notifications": "Berhenti memaklumi saya apabila @{name} mengirim hantaran",
   "account.domain_blocked": "Domain disekat",
   "account.edit_profile": "Sunting profil",
   "account.enable_notifications": "Maklumi saya apabila @{name} mengirim hantaran",
   "account.endorse": "Tampilkan di profil",
-  "account.featured_tags.last_status_at": "Last post on {date}",
-  "account.featured_tags.last_status_never": "No posts",
-  "account.featured_tags.title": "{name}'s featured hashtags",
+  "account.featured_tags.last_status_at": "Hantaran terakhir pada {date}",
+  "account.featured_tags.last_status_never": "Tiada hantaran",
+  "account.featured_tags.title": "Tanda pagar terpilih {name}",
   "account.follow": "Ikuti",
   "account.followers": "Pengikut",
   "account.followers.empty": "Belum ada yang mengikuti pengguna ini.",
@@ -37,19 +37,19 @@
   "account.following_counter": "{count, plural, one {{counter} Diikuti} other {{counter} Diikuti}}",
   "account.follows.empty": "Pengguna ini belum mengikuti sesiapa.",
   "account.follows_you": "Mengikuti anda",
-  "account.go_to_profile": "Go to profile",
+  "account.go_to_profile": "Pergi ke profil",
   "account.hide_reblogs": "Sembunyikan galakan daripada @{name}",
   "account.joined_short": "Joined",
-  "account.languages": "Change subscribed languages",
+  "account.languages": "Tukar bahasa yang dilanggan",
   "account.link_verified_on": "Pemilikan pautan ini telah disemak pada {date}",
   "account.locked_info": "Status privasi akaun ini dikunci. Pemiliknya menyaring sendiri siapa yang boleh mengikutinya.",
   "account.media": "Media",
   "account.mention": "Sebut @{name}",
-  "account.moved_to": "{name} has indicated that their new account is now:",
+  "account.moved_to": "{name} telah menandakan bahawa akaun baru mereka sekarang ialah:",
   "account.mute": "Bisukan @{name}",
   "account.mute_notifications": "Bisukan pemberitahuan daripada @{name}",
   "account.muted": "Dibisukan",
-  "account.open_original_page": "Open original page",
+  "account.open_original_page": "Buka halaman asal",
   "account.posts": "Hantaran",
   "account.posts_with_replies": "Hantaran dan balasan",
   "account.report": "Laporkan @{name}",
@@ -59,49 +59,49 @@
   "account.statuses_counter": "{count, plural, one {{counter} Hantaran} other {{counter} Hantaran}}",
   "account.unblock": "Nyahsekat @{name}",
   "account.unblock_domain": "Nyahsekat domain {domain}",
-  "account.unblock_short": "Unblock",
+  "account.unblock_short": "Nyahsekat",
   "account.unendorse": "Jangan tampilkan di profil",
   "account.unfollow": "Nyahikut",
   "account.unmute": "Nyahbisukan @{name}",
   "account.unmute_notifications": "Nyahbisukan pemberitahuan daripada @{name}",
-  "account.unmute_short": "Unmute",
+  "account.unmute_short": "Buka suara",
   "account_note.placeholder": "Klik untuk tambah catatan",
   "admin.dashboard.daily_retention": "User retention rate by day after sign-up",
   "admin.dashboard.monthly_retention": "User retention rate by month after sign-up",
-  "admin.dashboard.retention.average": "Average",
+  "admin.dashboard.retention.average": "Purata",
   "admin.dashboard.retention.cohort": "Sign-up month",
-  "admin.dashboard.retention.cohort_size": "New users",
+  "admin.dashboard.retention.cohort_size": "Pengguna baru",
   "alert.rate_limited.message": "Sila cuba semula selepas {retry_time, time, medium}.",
   "alert.rate_limited.title": "Kadar terhad",
   "alert.unexpected.message": "Berlaku ralat di luar jangkaan.",
   "alert.unexpected.title": "Alamak!",
   "announcement.announcement": "Pengumuman",
-  "attachments_list.unprocessed": "(unprocessed)",
-  "audio.hide": "Hide audio",
+  "attachments_list.unprocessed": "(belum diproses)",
+  "audio.hide": "Sembunyikan audio",
   "autosuggest_hashtag.per_week": "{count} seminggu",
   "boost_modal.combo": "Anda boleh tekan {combo} untuk melangkauinya pada waktu lain",
-  "bundle_column_error.copy_stacktrace": "Copy error report",
-  "bundle_column_error.error.body": "The requested page could not be rendered. It could be due to a bug in our code, or a browser compatibility issue.",
-  "bundle_column_error.error.title": "Oh, no!",
+  "bundle_column_error.copy_stacktrace": "Salin laporan ralat",
+  "bundle_column_error.error.body": "Halaman yang diminta gagal dipaparkan. Ini mungkin disebabkan oleh pepijat dalam kod kami, atau masalah keserasian pelayar.",
+  "bundle_column_error.error.title": "Alamak!",
   "bundle_column_error.network.body": "There was an error when trying to load this page. This could be due to a temporary problem with your internet connection or this server.",
-  "bundle_column_error.network.title": "Network error",
+  "bundle_column_error.network.title": "Ralat rangkaian",
   "bundle_column_error.retry": "Cuba lagi",
-  "bundle_column_error.return": "Go back home",
-  "bundle_column_error.routing.body": "The requested page could not be found. Are you sure the URL in the address bar is correct?",
+  "bundle_column_error.return": "Kembali ke halaman utama",
+  "bundle_column_error.routing.body": "Halaman tersebut tidak dapat ditemui. Adakah anda pasti URL dalam bar alamat adalah betul?",
   "bundle_column_error.routing.title": "404",
   "bundle_modal_error.close": "Tutup",
   "bundle_modal_error.message": "Ada yang tidak kena semasa memuatkan komponen ini.",
   "bundle_modal_error.retry": "Cuba lagi",
-  "closed_registrations.other_server_instructions": "Since Mastodon is decentralized, you can create an account on another server and still interact with this one.",
-  "closed_registrations_modal.description": "Creating an account on {domain} is currently not possible, but please keep in mind that you do not need an account specifically on {domain} to use Mastodon.",
-  "closed_registrations_modal.find_another_server": "Find another server",
-  "closed_registrations_modal.preamble": "Mastodon is decentralized, so no matter where you create your account, you will be able to follow and interact with anyone on this server. You can even self-host it!",
-  "closed_registrations_modal.title": "Signing up on Mastodon",
-  "column.about": "About",
+  "closed_registrations.other_server_instructions": "Oleh sebab Mastodon terpencar, anda boleh mencipta akaun pada pelayan lain dan masih berinteraksi dengan pelayan ini.",
+  "closed_registrations_modal.description": "Mencipta akaun pada {domain} tidak dapat dibuat sekarang, tetapi sila ingat bahawa anda tidak memerlukan akaun khususnya pada {domain} untuk menggunakan Mastodon.",
+  "closed_registrations_modal.find_another_server": "Cari pelayan lain",
+  "closed_registrations_modal.preamble": "Mastodon adalah terpencar, oleh itu di mana-mana anda mencipta akaun anda, anda boleh mengikut dan berinteraksi dengan sesiapa pada pelayan ini. Anda juga boleh hos sendiri!",
+  "closed_registrations_modal.title": "Mendaftar pada Mastodon",
+  "column.about": "Perihal",
   "column.blocks": "Pengguna yang disekat",
   "column.bookmarks": "Tanda buku",
   "column.community": "Garis masa tempatan",
-  "column.direct": "Direct messages",
+  "column.direct": "Mesej terus",
   "column.directory": "Layari profil",
   "column.domain_blocks": "Domain disekat",
   "column.favourites": "Kegemaran",
@@ -123,10 +123,10 @@
   "community.column_settings.local_only": "Tempatan sahaja",
   "community.column_settings.media_only": "Media sahaja",
   "community.column_settings.remote_only": "Jauh sahaja",
-  "compose.language.change": "Change language",
-  "compose.language.search": "Search languages...",
+  "compose.language.change": "Tukar bahasa",
+  "compose.language.search": "Cari bahasa...",
   "compose_form.direct_message_warning_learn_more": "Ketahui lebih lanjut",
-  "compose_form.encryption_warning": "Posts on Mastodon are not end-to-end encrypted. Do not share any dangerous information over Mastodon.",
+  "compose_form.encryption_warning": "Hantaran pada Mastodon tidak disulitkan hujung ke hujung. Jangan berkongsi sebarang maklumat sensitif melalui Mastodon.",
   "compose_form.hashtag_warning": "Hantaran ini tidak akan disenaraikan di bawah mana-mana tanda pagar kerana ia tidak tersenarai. Hanya hantaran awam sahaja boleh dicari menggunakan tanda pagar.",
   "compose_form.lock_disclaimer": "Akaun anda tidak {locked}. Sesiapa pun boleh mengikuti anda untuk melihat hantaran pengikut-sahaja anda.",
   "compose_form.lock_disclaimer.lock": "dikunci",
@@ -137,9 +137,10 @@
   "compose_form.poll.remove_option": "Buang pilihan ini",
   "compose_form.poll.switch_to_multiple": "Ubah kepada membenarkan aneka undian",
   "compose_form.poll.switch_to_single": "Ubah kepada undian pilihan tunggal",
-  "compose_form.publish": "Publish",
+  "compose_form.publish": "Terbit",
+  "compose_form.publish_form": "Terbit",
   "compose_form.publish_loud": "{publish}!",
-  "compose_form.save_changes": "Save changes",
+  "compose_form.save_changes": "Simpan perubahan",
   "compose_form.sensitive.hide": "{count, plural, one {Tandakan media sbg sensitif} other {Tandakan media sbg sensitif}}",
   "compose_form.sensitive.marked": "{count, plural, one {Media telah ditanda sbg sensitif} other {Media telah ditanda sbg sensitif}}",
   "compose_form.sensitive.unmarked": "{count, plural, one {Media tidak ditanda sbg sensitif} other {Media tidak ditanda sbg sensitif}}",
@@ -150,13 +151,13 @@
   "confirmations.block.block_and_report": "Sekat & Lapor",
   "confirmations.block.confirm": "Sekat",
   "confirmations.block.message": "Adakah anda pasti anda ingin menyekat {name}?",
-  "confirmations.cancel_follow_request.confirm": "Withdraw request",
-  "confirmations.cancel_follow_request.message": "Are you sure you want to withdraw your request to follow {name}?",
+  "confirmations.cancel_follow_request.confirm": "Tarik balik permintaan",
+  "confirmations.cancel_follow_request.message": "Adakah anda pasti ingin menarik balik permintaan anda untuk mengikut {name}?",
   "confirmations.delete.confirm": "Padam",
   "confirmations.delete.message": "Adakah anda pasti anda ingin memadam hantaran ini?",
   "confirmations.delete_list.confirm": "Padam",
   "confirmations.delete_list.message": "Adakah anda pasti anda ingin memadam senarai ini secara kekal?",
-  "confirmations.discard_edit_media.confirm": "Discard",
+  "confirmations.discard_edit_media.confirm": "Singkir",
   "confirmations.discard_edit_media.message": "You have unsaved changes to the media description or preview, discard them anyway?",
   "confirmations.domain_block.confirm": "Sekat keseluruhan domain",
   "confirmations.domain_block.message": "Adakah anda betul-betul, sungguh-sungguh pasti anda ingin menyekat keseluruhan {domain}? Selalunya, beberapa sekatan atau pembisuan tersasar sudah memadai dan lebih diutamakan. Anda tidak akan nampak kandungan daripada domain tersebut di mana-mana garis masa awam mahupun pemberitahuan anda. Pengikut anda daripada domain tersebut juga akan dibuang.",
@@ -175,24 +176,24 @@
   "conversation.mark_as_read": "Tanda sudah dibaca",
   "conversation.open": "Lihat perbualan",
   "conversation.with": "Dengan {names}",
-  "copypaste.copied": "Copied",
-  "copypaste.copy": "Copy",
+  "copypaste.copied": "Disalin",
+  "copypaste.copy": "Salin",
   "directory.federated": "Dari fediverse yang diketahui",
   "directory.local": "Dari {domain} sahaja",
   "directory.new_arrivals": "Ketibaan baharu",
   "directory.recently_active": "Aktif baru-baru ini",
-  "disabled_account_banner.account_settings": "Account settings",
-  "disabled_account_banner.text": "Your account {disabledAccount} is currently disabled.",
-  "dismissable_banner.community_timeline": "These are the most recent public posts from people whose accounts are hosted by {domain}.",
-  "dismissable_banner.dismiss": "Dismiss",
-  "dismissable_banner.explore_links": "These news stories are being talked about by people on this and other servers of the decentralized network right now.",
-  "dismissable_banner.explore_statuses": "These posts from this and other servers in the decentralized network are gaining traction on this server right now.",
-  "dismissable_banner.explore_tags": "These hashtags are gaining traction among people on this and other servers of the decentralized network right now.",
-  "dismissable_banner.public_timeline": "These are the most recent public posts from people on this and other servers of the decentralized network that this server knows about.",
+  "disabled_account_banner.account_settings": "Tetapan akaun",
+  "disabled_account_banner.text": "Akaun anda {disabledAccount} telah dinyahaktif.",
+  "dismissable_banner.community_timeline": "Inilah hantaran awam terkini daripada orang yang akaun dihos oleh {domain}.",
+  "dismissable_banner.dismiss": "Ketepikan",
+  "dismissable_banner.explore_links": "Berita-berita ini sedang dibualkan oleh orang di pelayar ini dan pelayar lain dalam rangkaian terpencar sekarang.",
+  "dismissable_banner.explore_statuses": "Hantaran-hantaran ini daripada pelayar ini dan pelayar lain dalam rangkaian terpencar sedang hangat pada pelayar ini sekarang.",
+  "dismissable_banner.explore_tags": "Tanda-tanda pagar ini daripada pelayar ini dan pelayar lain dalam rangkaian terpencar sedang hangat pada pelayar ini sekarang.",
+  "dismissable_banner.public_timeline": "Ini adalah hantaran awam yang terkini daripada orang pada pelayar ini dan pelayar lain dalam rangkaian terpencar yang dikenali oleh pelayar ini.",
   "embed.instructions": "Benam hantaran ini di laman sesawang anda dengan menyalin kod berikut.",
   "embed.preview": "Begini rupanya nanti:",
   "emoji_button.activity": "Aktiviti",
-  "emoji_button.clear": "Clear",
+  "emoji_button.clear": "Padam",
   "emoji_button.custom": "Tersuai",
   "emoji_button.flags": "Bendera",
   "emoji_button.food": "Makanan & Minuman",
@@ -212,9 +213,9 @@
   "empty_column.blocks": "Anda belum menyekat sesiapa.",
   "empty_column.bookmarked_statuses": "Anda belum ada hantaran yang ditanda buku. Apabila anda menanda buku sesuatu, ia akan muncul di sini.",
   "empty_column.community": "Garis masa tempatan kosong. Tulislah secara awam untuk memulakan sesuatu!",
-  "empty_column.direct": "You don't have any direct messages yet. When you send or receive one, it will show up here.",
+  "empty_column.direct": "Anda belum mempunyai mesej terus. Apabila anda menghantar atau menerima mesej, mesej-mesej akan dipaparkan di sini.",
   "empty_column.domain_blocks": "Belum ada domain yang disekat.",
-  "empty_column.explore_statuses": "Nothing is trending right now. Check back later!",
+  "empty_column.explore_statuses": "Tiada apa-apa yang sohor kini sekarang. Semaklah kemudian!",
   "empty_column.favourited_statuses": "Anda belum ada hantaran yang digemari. Apabila anda menggemari sesuatu, ia akan muncul di sini.",
   "empty_column.favourites": "Tiada sesiapa yang menggemari hantaran ini. Apabila ada yang menggemari, ia akan muncul di sini.",
   "empty_column.follow_recommendations": "Nampaknya tiada cadangan yang boleh dijana untuk anda. Anda boleh cuba gunakan gelintar untuk mencari orang yang anda mungkin kenal atau jelajahi tanda pagar sohor kini.",
@@ -233,41 +234,37 @@
   "error.unexpected_crash.next_steps_addons": "Cuba nyahdaya pemalam dan segarkan semula halaman. Jika itu tidak membantu, anda masih boleh menggunakan Mastodon dengan pelayar yang berlainan atau aplikasi natif.",
   "errors.unexpected_crash.copy_stacktrace": "Salin surih tindanan ke papan keratan",
   "errors.unexpected_crash.report_issue": "Laporkan masalah",
-  "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
-  "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
-  "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
-  "filter_modal.added.context_mismatch_title": "Context mismatch!",
-  "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
-  "filter_modal.added.expired_title": "Expired filter!",
-  "filter_modal.added.review_and_configure": "To review and further configure this filter category, go to the {settings_link}.",
-  "filter_modal.added.review_and_configure_title": "Filter settings",
-  "filter_modal.added.settings_link": "settings page",
-  "filter_modal.added.short_explanation": "This post has been added to the following filter category: {title}.",
-  "filter_modal.added.title": "Filter added!",
-  "filter_modal.select_filter.context_mismatch": "does not apply to this context",
-  "filter_modal.select_filter.expired": "expired",
-  "filter_modal.select_filter.prompt_new": "New category: {name}",
-  "filter_modal.select_filter.search": "Search or create",
-  "filter_modal.select_filter.subtitle": "Use an existing category or create a new one",
-  "filter_modal.select_filter.title": "Filter this post",
-  "filter_modal.title.status": "Filter a post",
+  "explore.search_results": "Hasil carian",
+  "explore.title": "Terokai",
+  "filter_modal.added.context_mismatch_explanation": "Kumpulan penapis ini tidak terpakai pada konteks di mana anda mengakses hantaran ini. Jika anda ingin hantaran ini untuk ditapis dalam konteks ini juga, anda perlu menyunting penapis tersebut.",
+  "filter_modal.added.context_mismatch_title": "Konteks tidak sepadan!",
+  "filter_modal.added.expired_explanation": "Kumpulan filter ini telah tamat tempoh, anda perlu mengubah tarikh luput untuk melaksanakannya.",
+  "filter_modal.added.expired_title": "Penapis tamat tempoh!",
+  "filter_modal.added.review_and_configure": "Untuk menyemak dan menetap kumpulan penapis ini secara lanjut, pergi ke {settings_link}.",
+  "filter_modal.added.review_and_configure_title": "Tetapan penapis",
+  "filter_modal.added.settings_link": "halaman tetapan",
+  "filter_modal.added.short_explanation": "Hantaran ini telah ditambah kepada kumpulan penapis berikut: {title}.",
+  "filter_modal.added.title": "Penapis ditambah!",
+  "filter_modal.select_filter.context_mismatch": "tidak terpakai pada konteks ini",
+  "filter_modal.select_filter.expired": "tamat tempoh",
+  "filter_modal.select_filter.prompt_new": "Kumpulan baru: {name}",
+  "filter_modal.select_filter.search": "Cari atau cipta",
+  "filter_modal.select_filter.subtitle": "Gunakan kumpulan yang sedia ada atau mencipta kumpulan baru",
+  "filter_modal.select_filter.title": "Tapiskan hantaran ini",
+  "filter_modal.title.status": "Tapiskan sesuatu hantaran",
   "follow_recommendations.done": "Selesai",
   "follow_recommendations.heading": "Ikuti orang yang anda ingin lihat hantarannya! Di sini ada beberapa cadangan.",
   "follow_recommendations.lead": "Hantaran daripada orang yang anda ikuti akan muncul dalam susunan kronologi di suapan rumah anda. Jangan takut melakukan kesilapan, anda boleh nyahikuti orang dengan mudah pada bila-bila masa!",
   "follow_request.authorize": "Benarkan",
   "follow_request.reject": "Tolak",
   "follow_requests.unlocked_explanation": "Walaupun akaun anda tidak dikunci, kakitangan {domain} merasakan anda mungkin ingin menyemak permintaan ikutan daripada akaun ini secara manual.",
-  "footer.about": "About",
-  "footer.directory": "Profiles directory",
-  "footer.get_app": "Get the app",
-  "footer.invite": "Invite people",
-  "footer.keyboard_shortcuts": "Keyboard shortcuts",
-  "footer.privacy_policy": "Privacy policy",
-  "footer.source_code": "View source code",
+  "footer.about": "Perihal",
+  "footer.directory": "Direktori profil",
+  "footer.get_app": "Dapatkan app",
+  "footer.invite": "Jemput kenalan",
+  "footer.keyboard_shortcuts": "Pintasan papan kekunci",
+  "footer.privacy_policy": "Dasar privasi",
+  "footer.source_code": "Lihat kod sumber",
   "generic.saved": "Disimpan",
   "getting_started.heading": "Mari bermula",
   "hashtag.column_header.tag_mode.all": "dan {additional}",
@@ -279,25 +276,25 @@
   "hashtag.column_settings.tag_mode.any": "Mana-mana daripada yang ini",
   "hashtag.column_settings.tag_mode.none": "Tiada apa pun daripada yang ini",
   "hashtag.column_settings.tag_toggle": "Sertakan tag tambahan untuk lajur ini",
-  "hashtag.follow": "Follow hashtag",
-  "hashtag.unfollow": "Unfollow hashtag",
+  "hashtag.follow": "Ikuti hashtag",
+  "hashtag.unfollow": "Nyahikut tanda pagar",
   "home.column_settings.basic": "Asas",
   "home.column_settings.show_reblogs": "Tunjukkan galakan",
   "home.column_settings.show_replies": "Tunjukkan balasan",
   "home.hide_announcements": "Sembunyikan pengumuman",
   "home.show_announcements": "Tunjukkan pengumuman",
-  "interaction_modal.description.favourite": "With an account on Mastodon, you can favourite this post to let the author know you appreciate it and save it for later.",
-  "interaction_modal.description.follow": "With an account on Mastodon, you can follow {name} to receive their posts in your home feed.",
-  "interaction_modal.description.reblog": "With an account on Mastodon, you can boost this post to share it with your own followers.",
-  "interaction_modal.description.reply": "With an account on Mastodon, you can respond to this post.",
-  "interaction_modal.on_another_server": "On a different server",
-  "interaction_modal.on_this_server": "On this server",
-  "interaction_modal.other_server_instructions": "Copy and paste this URL into the search field of your favourite Mastodon app or the web interface of your Mastodon server.",
-  "interaction_modal.preamble": "Since Mastodon is decentralized, you can use your existing account hosted by another Mastodon server or compatible platform if you don't have an account on this one.",
-  "interaction_modal.title.favourite": "Favourite {name}'s post",
-  "interaction_modal.title.follow": "Follow {name}",
-  "interaction_modal.title.reblog": "Boost {name}'s post",
-  "interaction_modal.title.reply": "Reply to {name}'s post",
+  "interaction_modal.description.favourite": "Dengan akaun pada Mastodon, anda boleh menggemarkan hantaran ini untuk memberitahu penulis bahawa anda menghargainya dan menyimpannya untuk kemudian.",
+  "interaction_modal.description.follow": "Dengan akaun pada Mastodon, anda boleh mengikut {name} untuk menerima hantaran mereka di suapan rumah anda.",
+  "interaction_modal.description.reblog": "Dengan akaun pada Mastodon, anda boleh menggalakkan hantaran ini untuk dikongsi dengan pengikut anda.",
+  "interaction_modal.description.reply": "Dengan akaun pada Mastodon, anda boleh membalas kepada hantaran ini.",
+  "interaction_modal.on_another_server": "Di pelayan lain",
+  "interaction_modal.on_this_server": "Pada pelayan ini",
+  "interaction_modal.other_server_instructions": "Salin dan tampal URL ini ke dalam medan carian app Mastodon kegemaran anda atau antara muka web pelayan Mastodon anda.",
+  "interaction_modal.preamble": "Oleh sebab Mastodon terpencar, anda boleh menggunakan akaun sedia ada anda yang dihos oleh pelayan Mastodon lain atau platform yang serasi jika anda tidak mempunyai akaun pada platform ini.",
+  "interaction_modal.title.favourite": "Menggemarkan hantaran {name}",
+  "interaction_modal.title.follow": "Ikuti {name}",
+  "interaction_modal.title.reblog": "Galak hantaran {name}",
+  "interaction_modal.title.reply": "Balas siaran {name}",
   "intervals.full.days": "{number, plural, other {# hari}}",
   "intervals.full.hours": "{number, plural, other {# jam}}",
   "intervals.full.minutes": "{number, plural, other {# minit}}",
@@ -307,10 +304,10 @@
   "keyboard_shortcuts.column": "Tumpu pada lajur",
   "keyboard_shortcuts.compose": "to focus the compose textarea",
   "keyboard_shortcuts.description": "Keterangan",
-  "keyboard_shortcuts.direct": "to open direct messages column",
+  "keyboard_shortcuts.direct": "untuk membuka lajur mesej terus",
   "keyboard_shortcuts.down": "to move down in the list",
   "keyboard_shortcuts.enter": "Buka hantaran",
-  "keyboard_shortcuts.favourite": "to favourite",
+  "keyboard_shortcuts.favourite": "Hantaran kegemaran",
   "keyboard_shortcuts.favourites": "to open favourites list",
   "keyboard_shortcuts.federated": "to open federated timeline",
   "keyboard_shortcuts.heading": "Pintasan papan kekunci",
@@ -340,8 +337,8 @@
   "lightbox.expand": "Besarkan kotak paparan imej",
   "lightbox.next": "Seterusnya",
   "lightbox.previous": "Sebelumnya",
-  "limited_account_hint.action": "Show profile anyway",
-  "limited_account_hint.title": "This profile has been hidden by the moderators of {domain}.",
+  "limited_account_hint.action": "Paparkan profil",
+  "limited_account_hint.title": "Profil ini telah disembunyikan oleh moderator {domain}.",
   "lists.account.add": "Tambah ke senarai",
   "lists.account.remove": "Buang daripada senarai",
   "lists.delete": "Padam senarai",
@@ -360,20 +357,20 @@
   "media_gallery.toggle_visible": "{number, plural, other {Sembunyikan imej}}",
   "missing_indicator.label": "Tidak dijumpai",
   "missing_indicator.sublabel": "Sumber ini tidak dijumpai",
-  "moved_to_account_banner.text": "Your account {disabledAccount} is currently disabled because you moved to {movedToAccount}.",
+  "moved_to_account_banner.text": "Akaun anda {disabledAccount} kini dinyahdayakan kerana anda berpindah ke {movedToAccount}.",
   "mute_modal.duration": "Tempoh",
   "mute_modal.hide_notifications": "Sembunyikan pemberitahuan daripada pengguna ini?",
   "mute_modal.indefinite": "Tidak tentu",
-  "navigation_bar.about": "About",
+  "navigation_bar.about": "Perihal",
   "navigation_bar.blocks": "Pengguna yang disekat",
   "navigation_bar.bookmarks": "Tanda buku",
   "navigation_bar.community_timeline": "Garis masa tempatan",
   "navigation_bar.compose": "Karang hantaran baharu",
-  "navigation_bar.direct": "Direct messages",
+  "navigation_bar.direct": "Mesej terus",
   "navigation_bar.discover": "Teroka",
   "navigation_bar.domain_blocks": "Domain disekat",
   "navigation_bar.edit_profile": "Sunting profil",
-  "navigation_bar.explore": "Explore",
+  "navigation_bar.explore": "Teroka",
   "navigation_bar.favourites": "Kegemaran",
   "navigation_bar.filters": "Perkataan yang dibisukan",
   "navigation_bar.follow_requests": "Permintaan ikutan",
@@ -385,11 +382,11 @@
   "navigation_bar.pins": "Hantaran disemat",
   "navigation_bar.preferences": "Keutamaan",
   "navigation_bar.public_timeline": "Garis masa bersekutu",
-  "navigation_bar.search": "Search",
+  "navigation_bar.search": "Cari",
   "navigation_bar.security": "Keselamatan",
-  "not_signed_in_indicator.not_signed_in": "You need to sign in to access this resource.",
-  "notification.admin.report": "{name} reported {target}",
-  "notification.admin.sign_up": "{name} signed up",
+  "not_signed_in_indicator.not_signed_in": "Anda perlu daftar masuk untuk mencapai sumber ini.",
+  "notification.admin.report": "{name} melaporkan {target}",
+  "notification.admin.sign_up": "{name} mendaftar",
   "notification.favourite": "{name} menggemari hantaran anda",
   "notification.follow": "{name} mengikuti anda",
   "notification.follow_request": "{name} meminta untuk mengikuti anda",
@@ -398,16 +395,16 @@
   "notification.poll": "Sebuah undian yang anda undi telah tamat",
   "notification.reblog": "{name} menggalak hantaran anda",
   "notification.status": "{name} baru sahaja mengirim hantaran",
-  "notification.update": "{name} edited a post",
+  "notification.update": "{name} menyunting hantaran",
   "notifications.clear": "Buang pemberitahuan",
   "notifications.clear_confirmation": "Adakah anda pasti anda ingin membuang semua pemberitahuan anda secara kekal?",
-  "notifications.column_settings.admin.report": "New reports:",
-  "notifications.column_settings.admin.sign_up": "New sign-ups:",
+  "notifications.column_settings.admin.report": "Laporan baru:",
+  "notifications.column_settings.admin.sign_up": "Pendaftaran baru:",
   "notifications.column_settings.alert": "Pemberitahuan atas meja",
   "notifications.column_settings.favourite": "Kegemaran:",
   "notifications.column_settings.filter_bar.advanced": "Papar semua kategori",
   "notifications.column_settings.filter_bar.category": "Bar penapis pantas",
-  "notifications.column_settings.filter_bar.show_bar": "Show filter bar",
+  "notifications.column_settings.filter_bar.show_bar": "Paparkan bar penapis",
   "notifications.column_settings.follow": "Pengikut baharu:",
   "notifications.column_settings.follow_request": "Permintaan ikutan baharu:",
   "notifications.column_settings.mention": "Sebutan:",
@@ -417,9 +414,9 @@
   "notifications.column_settings.show": "Tunjukkan dalam lajur",
   "notifications.column_settings.sound": "Mainkan bunyi",
   "notifications.column_settings.status": "Hantaran baharu:",
-  "notifications.column_settings.unread_notifications.category": "Unread notifications",
-  "notifications.column_settings.unread_notifications.highlight": "Highlight unread notifications",
-  "notifications.column_settings.update": "Edits:",
+  "notifications.column_settings.unread_notifications.category": "Pemberitahuan belum dibaca",
+  "notifications.column_settings.unread_notifications.highlight": "Serlahkan pemberitahuan yang belum dibaca",
+  "notifications.column_settings.update": "Suntingan:",
   "notifications.filter.all": "Semua",
   "notifications.filter.boosts": "Galakan",
   "notifications.filter.favourites": "Kegemaran",
@@ -448,22 +445,22 @@
   "poll_button.remove_poll": "Buang undian",
   "privacy.change": "Ubah privasi hantaran",
   "privacy.direct.long": "Hanya boleh dilihat oleh pengguna disebut",
-  "privacy.direct.short": "Direct",
+  "privacy.direct.short": "Orang yang disebut sahaja",
   "privacy.private.long": "Hanya boleh dilihat oleh pengikut",
-  "privacy.private.short": "Followers-only",
-  "privacy.public.long": "Visible for all",
+  "privacy.private.short": "Pengikut sahaja",
+  "privacy.public.long": "Kelihatan untuk semua",
   "privacy.public.short": "Awam",
-  "privacy.unlisted.long": "Visible for all, but opted-out of discovery features",
+  "privacy.unlisted.long": "Terpapar untuk semua, tetapi menarik diri daripada ciri penemuan",
   "privacy.unlisted.short": "Tidak tersenarai",
-  "privacy_policy.last_updated": "Last updated {date}",
-  "privacy_policy.title": "Privacy Policy",
+  "privacy_policy.last_updated": "Dikemaskini {date}",
+  "privacy_policy.title": "Dasar Privasi",
   "refresh": "Muat semula",
   "regeneration_indicator.label": "Memuatkan…",
   "regeneration_indicator.sublabel": "Suapan rumah anda sedang disediakan!",
   "relative_time.days": "{number}h",
   "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": "sebentar tadi",
   "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}j",
@@ -472,50 +469,50 @@
   "relative_time.seconds": "{number}s",
   "relative_time.today": "hari ini",
   "reply_indicator.cancel": "Batal",
-  "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.block": "Sekat",
+  "report.block_explanation": "Anda tidak akan melihat hantaran mereka. Mereka tidak dapat melihat hantaran anda atau mengikuti anda. Mereka akan sedar bahawa mereka disekat.",
+  "report.categories.other": "Lain-lain",
   "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.category.title_account": "profile",
-  "report.category.title_status": "post",
-  "report.close": "Done",
-  "report.comment.title": "Is there anything else you think we should know?",
+  "report.categories.violation": "Kandungan melanggar satu atau lebih peraturan pelayan",
+  "report.category.subtitle": "Pilih yang terdekat",
+  "report.category.title": "Beritahu kami apa yang berlaku dengan {type} ini",
+  "report.category.title_account": "profil",
+  "report.category.title_status": "siaran",
+  "report.close": "Selesai",
+  "report.comment.title": "Adakah ada hal-hal lain yang perlu kita ketahui?",
   "report.forward": "Panjangkan ke {target}",
   "report.forward_hint": "Akaun ini daripada pelayan lain. Hantar salinan laporan yang ditanpanamakan ke sana juga?",
-  "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.mute": "Bisukan",
+  "report.mute_explanation": "Anda tidak akan melihat siaran mereka. Mereka masih boleh mengikuti dan melihat siaran anda dan tidak akan mengetahui bahawa mereka telah dibisukan.",
+  "report.next": "Seterusnya",
   "report.placeholder": "Ulasan tambahan",
-  "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.dislike": "Saya tidak suka",
+  "report.reasons.dislike_description": "Inilah sesuatu yang anda tidak ingin lihat",
+  "report.reasons.other": "Inilah sesuatu yang lain",
+  "report.reasons.other_description": "Isu ini tidak sesuai untuk kategori lain",
+  "report.reasons.spam": "Inilah 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.violation": "Ini melanggar peraturan pelayan",
+  "report.reasons.violation_description": "Anda menyedari bahawa ini melanggar peraturan yang tertentu",
+  "report.rules.subtitle": "Pilih semua yang berkenaan",
+  "report.rules.title": "Peraturan-peraturan manakah yang telah dilanggar?",
+  "report.statuses.subtitle": "Pilih semua yang berkenaan",
+  "report.statuses.title": "Adakah terdapat siaran-siaran lain yang dapat menyokong laporan ini?",
   "report.submit": "Serah",
   "report.target": "Melaporkan {target}",
-  "report.thanks.take_action": "Here are your options for controlling what you see on Mastodon:",
-  "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_explanation": "You are following this account. To not see their posts in your home feed anymore, unfollow them.",
+  "report.thanks.take_action": "Berikut ialah pilihan anda untuk mengawal apa yang anda lihat di Mastodon:",
+  "report.thanks.take_action_actionable": "Sementara kami menyemak ini, anda boleh mengambil tindakan terhadap @{name}:",
+  "report.thanks.title": "Tidak ingin melihat ini?",
+  "report.thanks.title_actionable": "Terima kasih untuk laporan anda, kami akan menyemaknya.",
+  "report.unfollow": "Nyahikut @{name}",
+  "report.unfollow_explanation": "Anda sedang mengikuti akaun ini. Untuk memadam siaran mereka daripada suapan berita anda, nyahikutkan mereka.",
   "report_notification.attached_statuses": "{count, plural, one {{count} post} other {{count} posts}} attached",
-  "report_notification.categories.other": "Other",
+  "report_notification.categories.other": "Lain-lain",
   "report_notification.categories.spam": "Spam",
-  "report_notification.categories.violation": "Rule violation",
-  "report_notification.open": "Open report",
+  "report_notification.categories.violation": "Langgaran peraturan",
+  "report_notification.open": "Buka laporan",
   "search.placeholder": "Cari",
-  "search.search_or_paste": "Search or paste URL",
+  "search.search_or_paste": "Cari atau tampal URL",
   "search_popout.search_format": "Format gelintar lanjutan",
   "search_popout.tips.full_text": "Teks ringkas mengembalikan hantaran yang anda telah tulis, menggemari, menggalak, atau telah disebutkan, dan juga nama pengguna, nama paparan, dan tanda pagar yang dipadankan.",
   "search_popout.tips.hashtag": "tanda pagar",
@@ -523,22 +520,22 @@
   "search_popout.tips.text": "Teks ringkas mengembalikan nama paparan, nama pengguna dan tanda pagar yang sepadan",
   "search_popout.tips.user": "pengguna",
   "search_results.accounts": "Orang",
-  "search_results.all": "All",
+  "search_results.all": "Semua",
   "search_results.hashtags": "Tanda pagar",
-  "search_results.nothing_found": "Could not find anything for these search terms",
+  "search_results.nothing_found": "Tidak dapat menemui apa-apa untuk istilah carian tersebut",
   "search_results.statuses": "Hantaran",
   "search_results.statuses_fts_disabled": "Menggelintar hantaran menggunakan kandungannya tidak didayakan di pelayan Mastodon ini.",
-  "search_results.title": "Search for {q}",
+  "search_results.title": "Mencari {q}",
   "search_results.total": "{count, number} {count, plural, other {hasil}}",
-  "server_banner.about_active_users": "People using this server during the last 30 days (Monthly Active Users)",
-  "server_banner.active_users": "active users",
-  "server_banner.administered_by": "Administered by:",
-  "server_banner.introduction": "{domain} is part of the decentralized social network powered by {mastodon}.",
-  "server_banner.learn_more": "Learn more",
-  "server_banner.server_stats": "Server stats:",
-  "sign_in_banner.create_account": "Create account",
-  "sign_in_banner.sign_in": "Sign in",
-  "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts, or interact from your account on a different server.",
+  "server_banner.about_active_users": "Pengguna pelayan ini sepanjang 30 hari yang lalu (Pengguna Aktif Bulanan)",
+  "server_banner.active_users": "pengguna aktif",
+  "server_banner.administered_by": "Ditadbir oleh:",
+  "server_banner.introduction": "{domain} ialah sebahagian daripada rangkaian sosial terpencar dikuasakan oleh {mastodon}.",
+  "server_banner.learn_more": "Maklumat lanjut",
+  "server_banner.server_stats": "Statistik pelayan:",
+  "sign_in_banner.create_account": "Cipta akaun",
+  "sign_in_banner.sign_in": "Daftar masuk",
+  "sign_in_banner.text": "Daftar masuk untuk mengikut profil atau tanda pagar, menggemari, mengkongsi dan membalas kepada hantaran, atau berinteraksi daripada akaun anda pada pelayan lain.",
   "status.admin_account": "Buka antara muka penyederhanaan untuk @{name}",
   "status.admin_status": "Buka hantaran ini dalam antara muka penyederhanaan",
   "status.block": "Sekat @{name}",
@@ -549,16 +546,16 @@
   "status.delete": "Padam",
   "status.detailed_status": "Paparan perbualan terperinci",
   "status.direct": "Mesej terus @{name}",
-  "status.edit": "Edit",
-  "status.edited": "Edited {date}",
+  "status.edit": "Sunting",
+  "status.edited": "Disunting {date}",
   "status.edited_x_times": "Edited {count, plural, one {{count} time} other {{count} times}}",
   "status.embed": "Benaman",
   "status.favourite": "Kegemaran",
-  "status.filter": "Filter this post",
+  "status.filter": "Tapiskan hantaran ini",
   "status.filtered": "Ditapis",
-  "status.hide": "Hide toot",
-  "status.history.created": "{name} created {date}",
-  "status.history.edited": "{name} edited {date}",
+  "status.hide": "Sembunyikan siaran",
+  "status.history.created": "{name} mencipta pada {date}",
+  "status.history.edited": "{name} menyunting pada {date}",
   "status.load_more": "Muatkan lagi",
   "status.media_hidden": "Media disembunyikan",
   "status.mention": "Sebut @{name}",
@@ -575,26 +572,26 @@
   "status.reblogs.empty": "Tiada sesiapa yang menggalak hantaran ini. Apabila ada yang menggalak, ia akan muncul di sini.",
   "status.redraft": "Padam & rangka semula",
   "status.remove_bookmark": "Buang tanda buku",
-  "status.replied_to": "Replied to {name}",
+  "status.replied_to": "Menjawab kepada {name}",
   "status.reply": "Balas",
   "status.replyAll": "Balas ke bebenang",
   "status.report": "Laporkan @{name}",
   "status.sensitive_warning": "Kandungan sensitif",
   "status.share": "Kongsi",
-  "status.show_filter_reason": "Show anyway",
+  "status.show_filter_reason": "Paparkan juga",
   "status.show_less": "Tunjukkan kurang",
   "status.show_less_all": "Tunjukkan kurang untuk semua",
   "status.show_more": "Tunjukkan lebih",
   "status.show_more_all": "Tunjukkan lebih untuk semua",
-  "status.show_original": "Show original",
-  "status.translate": "Translate",
-  "status.translated_from_with": "Translated from {lang} using {provider}",
+  "status.show_original": "Paparkan yang asal",
+  "status.translate": "Menterjemah",
+  "status.translated_from_with": "Diterjemah daripada {lang} dengan {provider}",
   "status.uncached_media_warning": "Tidak tersedia",
   "status.unmute_conversation": "Nyahbisukan perbualan",
   "status.unpin": "Nyahsemat daripada profil",
-  "subscribed_languages.lead": "Only posts in selected languages will appear on your home and list timelines after the change. Select none to receive posts in all languages.",
-  "subscribed_languages.save": "Save changes",
-  "subscribed_languages.target": "Change subscribed languages for {target}",
+  "subscribed_languages.lead": "Hanya hantaran dalam bahasa-bahasa terpilih akan dipaparkan pada garis masa rumah dan senarai selepas perubahan. Pilih tiada untuk menerima hantaran dalam semua bahasa.",
+  "subscribed_languages.save": "Simpan perubahan",
+  "subscribed_languages.target": "Tukar bahasa-bahasa dilanggan untuk {target}",
   "suggestions.dismiss": "Batalkan cadangan",
   "suggestions.header": "Anda mungkin berminat dengan…",
   "tabs_bar.federated_timeline": "Bersekutu",
@@ -622,14 +619,14 @@
   "upload_error.poll": "Tidak boleh memuat naik fail bersama undian.",
   "upload_form.audio_description": "Jelaskan untuk orang yang ada masalah pendengaran",
   "upload_form.description": "Jelaskan untuk orang yang ada masalah penglihatan",
-  "upload_form.description_missing": "No description added",
+  "upload_form.description_missing": "Tiada keterangan ditambah",
   "upload_form.edit": "Sunting",
   "upload_form.thumbnail": "Ubah gambar kecil",
   "upload_form.undo": "Padam",
   "upload_form.video_description": "Jelaskan untuk orang yang ada masalah pendengaran atau penglihatan",
   "upload_modal.analyzing_picture": "Menganalisis gambar…",
   "upload_modal.apply": "Guna",
-  "upload_modal.applying": "Applying…",
+  "upload_modal.applying": "Terapkan…",
   "upload_modal.choose_image": "Pilih imej",
   "upload_modal.description_placeholder": "Seekor rubah perang pantas melompat merentasi anjing yang pemalas",
   "upload_modal.detect_text": "Kesan teks daripada gambar",
@@ -638,7 +635,7 @@
   "upload_modal.preparing_ocr": "Mempersiapkan OCR…",
   "upload_modal.preview_label": "Pratonton ({ratio})",
   "upload_progress.label": "Memuat naik...",
-  "upload_progress.processing": "Processing…",
+  "upload_progress.processing": "Memproses…",
   "video.close": "Tutup video",
   "video.download": "Muat turun fail",
   "video.exit_fullscreen": "Keluar skrin penuh",
diff --git a/app/javascript/mastodon/locales/my.json b/app/javascript/mastodon/locales/my.json
index 7757f061f..1e55e8dee 100644
--- a/app/javascript/mastodon/locales/my.json
+++ b/app/javascript/mastodon/locales/my.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
   "compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "{count, plural, one {Mark media as sensitive} other {Mark media as sensitive}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "Report issue",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "သတင်းများ",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "ဟက်ရှ်တက်များ",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/nl.json b/app/javascript/mastodon/locales/nl.json
index 131d56298..4e2579c57 100644
--- a/app/javascript/mastodon/locales/nl.json
+++ b/app/javascript/mastodon/locales/nl.json
@@ -8,8 +8,8 @@
   "about.domain_blocks.silenced.title": "Beperkt",
   "about.domain_blocks.suspended.explanation": "Er worden geen gegevens van deze server verwerkt, opgeslagen of uitgewisseld, wat interactie of communicatie met gebruikers van deze server onmogelijk maakt.",
   "about.domain_blocks.suspended.title": "Opgeschort",
-  "about.not_available": "Deze informatie is door deze server niet openbaar gemaakt.",
-  "about.powered_by": "Gedecentraliseerde sociale media, mogelijk gemaakt door {mastodon}",
+  "about.not_available": "Deze informatie is niet beschikbaar gemaakt op deze server.",
+  "about.powered_by": "Gedecentraliseerde sociale media mogelijk gemaakt door {mastodon}",
   "about.rules": "Serverregels",
   "account.account_note_header": "Opmerking",
   "account.add_or_remove_from_list": "Toevoegen aan of verwijderen uit lijsten",
@@ -18,10 +18,10 @@
   "account.block": "@{name} blokkeren",
   "account.block_domain": "Alles van {domain} verbergen",
   "account.blocked": "Geblokkeerd",
-  "account.browse_more_on_origin_server": "Meer op het originele profiel bekijken",
+  "account.browse_more_on_origin_server": "Zie meer op het originele profiel",
   "account.cancel_follow_request": "Volgverzoek annuleren",
   "account.direct": "@{name} een direct bericht sturen",
-  "account.disable_notifications": "Geef geen melding meer wanneer @{name} een bericht plaatst",
+  "account.disable_notifications": "Geen melding meer geven wanneer @{name} een bericht plaatst",
   "account.domain_blocked": "Domein geblokkeerd",
   "account.edit_profile": "Profiel bewerken",
   "account.enable_notifications": "Geef een melding wanneer @{name} een bericht plaatst",
@@ -31,7 +31,7 @@
   "account.featured_tags.title": "Uitgelichte hashtags van {name}",
   "account.follow": "Volgen",
   "account.followers": "Volgers",
-  "account.followers.empty": "Niemand volgt nog deze gebruiker.",
+  "account.followers.empty": "Deze gebruiker heeft nog geen volgers.",
   "account.followers_counter": "{count, plural, one {{counter} volger} other {{counter} volgers}}",
   "account.following": "Volgend",
   "account.following_counter": "{count, plural, one {{counter} volgend} other {{counter} volgend}}",
@@ -42,7 +42,7 @@
   "account.joined_short": "Geregistreerd op",
   "account.languages": "Getoonde talen wijzigen",
   "account.link_verified_on": "Eigendom van deze link is gecontroleerd op {date}",
-  "account.locked_info": "De privacystatus van dit account is op besloten gezet. De eigenaar bepaalt handmatig wie diegene kan volgen.",
+  "account.locked_info": "De privacystatus van dit account is ingesteld op vergrendeld. De eigenaar beoordeelt handmatig wie diegene kan volgen.",
   "account.media": "Media",
   "account.mention": "@{name} vermelden",
   "account.moved_to": "{name} is verhuisd naar:",
@@ -53,7 +53,7 @@
   "account.posts": "Berichten",
   "account.posts_with_replies": "Berichten en reacties",
   "account.report": "@{name} rapporteren",
-  "account.requested": "Wacht op goedkeuring. Klik om het volgverzoek te annuleren",
+  "account.requested": "Wachten op goedkeuring. Klik om het volgverzoek te annuleren",
   "account.share": "Profiel van @{name} delen",
   "account.show_reblogs": "Boosts van @{name} tonen",
   "account.statuses_counter": "{count, plural, one {{counter} bericht} other {{counter} berichten}}",
@@ -72,7 +72,7 @@
   "admin.dashboard.retention.cohort": "Maand van registratie",
   "admin.dashboard.retention.cohort_size": "Nieuwe gebruikers",
   "alert.rate_limited.message": "Probeer het nog een keer na {retry_time, time, medium}.",
-  "alert.rate_limited.title": "Beperkt te gebruiken",
+  "alert.rate_limited.title": "Dataverkeer beperkt",
   "alert.unexpected.message": "Er deed zich een onverwachte fout voor",
   "alert.unexpected.title": "Oeps!",
   "announcement.announcement": "Mededeling",
@@ -81,8 +81,8 @@
   "autosuggest_hashtag.per_week": "{count} per week",
   "boost_modal.combo": "Je kunt {combo} klikken om dit de volgende keer over te slaan",
   "bundle_column_error.copy_stacktrace": "Foutrapportage kopiëren",
-  "bundle_column_error.error.body": "De opgevraagde pagina kon niet worden aangemaakt. Dit kan het gevolg zijn van onze broncode of van een verouderde webbrowser.",
-  "bundle_column_error.error.title": "Oh nee!",
+  "bundle_column_error.error.body": "De opgevraagde pagina kon niet worden weergegeven. Dit kan het gevolg zijn van een fout in onze broncode, of van een compatibiliteitsprobleem met je webbrowser.",
+  "bundle_column_error.error.title": "O nee!",
   "bundle_column_error.network.body": "Er is een fout opgetreden tijdens het laden van deze pagina. Dit kan veroorzaakt zijn door een tijdelijk probleem met je internetverbinding of met deze server.",
   "bundle_column_error.network.title": "Netwerkfout",
   "bundle_column_error.retry": "Opnieuw proberen",
@@ -90,7 +90,7 @@
   "bundle_column_error.routing.body": "De opgevraagde pagina kon niet worden gevonden. Weet je zeker dat de URL in de adresbalk de juiste is?",
   "bundle_column_error.routing.title": "404",
   "bundle_modal_error.close": "Sluiten",
-  "bundle_modal_error.message": "Tijdens het laden van dit onderdeel is er iets fout gegaan.",
+  "bundle_modal_error.message": "Er ging iets mis tijdens het laden van dit component.",
   "bundle_modal_error.retry": "Opnieuw proberen",
   "closed_registrations.other_server_instructions": "Omdat Mastodon gedecentraliseerd is, kun je op een andere server een account registreren en vanaf daar nog steeds met deze server communiceren.",
   "closed_registrations_modal.description": "Momenteel is het niet mogelijk om op {domain} een account aan te maken. Hou echter in gedachte dat om Mastodon te kunnen gebruiken het niet een vereiste is om op {domain} een account te hebben.",
@@ -137,7 +137,8 @@
   "compose_form.poll.remove_option": "Deze keuze verwijderen",
   "compose_form.poll.switch_to_multiple": "Poll wijzigen om meerdere keuzes toe te staan",
   "compose_form.poll.switch_to_single": "Poll wijzigen om een enkele keuze toe te staan",
-  "compose_form.publish": "Toot!",
+  "compose_form.publish": "Toot",
+  "compose_form.publish_form": "Toot",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Wijzigingen opslaan",
   "compose_form.sensitive.hide": "{count, plural, one {Media als gevoelig markeren} other {Media als gevoelig markeren}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Stacktrace naar klembord kopiëren",
   "errors.unexpected_crash.report_issue": "Technisch probleem melden",
   "explore.search_results": "Zoekresultaten",
-  "explore.suggested_follows": "Voor jou",
   "explore.title": "Verkennen",
-  "explore.trending_links": "Nieuws",
-  "explore.trending_statuses": "Berichten",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "Deze filtercategorie is niet van toepassing op de context waarin je dit bericht hebt benaderd. Als je wilt dat het bericht ook in deze context wordt gefilterd, moet je het filter bewerken.",
   "filter_modal.added.context_mismatch_title": "Context komt niet overeen!",
   "filter_modal.added.expired_explanation": "Deze filtercategorie is verlopen. Je moet de vervaldatum wijzigen om de categorie toe te kunnen passen.",
diff --git a/app/javascript/mastodon/locales/nn.json b/app/javascript/mastodon/locales/nn.json
index 6113e32d0..0342b66c7 100644
--- a/app/javascript/mastodon/locales/nn.json
+++ b/app/javascript/mastodon/locales/nn.json
@@ -126,7 +126,7 @@
   "compose.language.change": "Byt språk",
   "compose.language.search": "Søk språk...",
   "compose_form.direct_message_warning_learn_more": "Lær meir",
-  "compose_form.encryption_warning": "Innlegg på Mastodon er ikkje ende-til-ende-krypterte. Ikkje del eventuell sensitiv informasjon via Mastodon.",
+  "compose_form.encryption_warning": "Innlegg på Mastodon er ikkje ende-til-ende-krypterte. Ikkje del eventuell ømtolig informasjon via Mastodon.",
   "compose_form.hashtag_warning": "Dette tutet vert ikkje oppført under nokon emneknagg sidan ingen emneknagg er oppført. Det er kun emneknaggar som er søkbare i offentlege tutar.",
   "compose_form.lock_disclaimer": "Kontoen din er ikkje {locked}. Kven som helst kan fylgja deg for å sjå innlegga dine.",
   "compose_form.lock_disclaimer.lock": "låst",
@@ -138,13 +138,14 @@
   "compose_form.poll.switch_to_multiple": "Endre rundspørjinga til å tillate fleire val",
   "compose_form.poll.switch_to_single": "Endre rundspørjinga til å tillate berre eitt val",
   "compose_form.publish": "Publisér",
+  "compose_form.publish_form": "Publisér",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Lagre endringar",
-  "compose_form.sensitive.hide": "{count, plural, one {Merk medium som sensitivt} other {Merk medium som sensitive}}",
-  "compose_form.sensitive.marked": "{count, plural, one {Medium er markert som sensitivt} other {Medium er markert som sensitive}}",
-  "compose_form.sensitive.unmarked": "{count, plural, one {Medium er ikkje markert som sensitivt} other {Medium er ikkje markert som sensitive}}",
-  "compose_form.spoiler.marked": "Tekst er gøymd bak åtvaring",
-  "compose_form.spoiler.unmarked": "Tekst er ikkje gøymd",
+  "compose_form.sensitive.hide": "{count, plural, one {Marker mediet som ømtolig} other {Marker media som ømtolige}}",
+  "compose_form.sensitive.marked": "{count, plural, one {Mediet er markert som ømtolig} other {Media er markerte som ømtolige}}",
+  "compose_form.sensitive.unmarked": "{count, plural, one {Mediet er ikkje markert som ømtolig} other {Media er ikkje markerte som ømtolige}}",
+  "compose_form.spoiler.marked": "Fjern innhaldsåtvaring",
+  "compose_form.spoiler.unmarked": "Legg til innhaldsåtvaring",
   "compose_form.spoiler_placeholder": "Skriv åtvaringa di her",
   "confirmation_modal.cancel": "Avbryt",
   "confirmations.block.block_and_report": "Blokker & rapporter",
@@ -172,7 +173,7 @@
   "confirmations.unfollow.confirm": "Slutt å fylgja",
   "confirmations.unfollow.message": "Er du sikker på at du vil slutta å fylgja {name}?",
   "conversation.delete": "Slett samtale",
-  "conversation.mark_as_read": "Merk som lese",
+  "conversation.mark_as_read": "Marker som lesen",
   "conversation.open": "Sjå samtale",
   "conversation.with": "Med {names}",
   "copypaste.copied": "Kopiert",
@@ -210,7 +211,7 @@
   "empty_column.account_timeline": "Ingen tut her!",
   "empty_column.account_unavailable": "Profil ikkje tilgjengeleg",
   "empty_column.blocks": "Du har ikkje blokkert nokon enno.",
-  "empty_column.bookmarked_statuses": "Du har ikkje nokon bokmerkte tut enno. Når du bokmerkjer eit, dukkar det opp her.",
+  "empty_column.bookmarked_statuses": "Du har ikkje lagra noko bokmerke enno. Når du set bokmerke på eit innlegg, dukkar det opp her.",
   "empty_column.community": "Den lokale tidslina er tom. Skriv noko offentleg å få ballen til å rulle!",
   "empty_column.direct": "Du har ingen direktemeldingar enno. Når du sender eller får ei, vil ho dukka opp her.",
   "empty_column.domain_blocks": "Det er ingen skjulte domene til no.",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Kopier stacktrace til utklippstavla",
   "errors.unexpected_crash.report_issue": "Rapporter problem",
   "explore.search_results": "Søkeresultat",
-  "explore.suggested_follows": "For deg",
   "explore.title": "Utforsk",
-  "explore.trending_links": "Nytt",
-  "explore.trending_statuses": "Tut",
-  "explore.trending_tags": "Emneknaggar",
   "filter_modal.added.context_mismatch_explanation": "Denne filterkategorien gjeld ikkje i den samanhengen du har lese dette innlegget. Viss du vil at innlegget skal filtrerast i denne samanhengen òg, må du endra filteret.",
   "filter_modal.added.context_mismatch_title": "Konteksten passar ikkje!",
   "filter_modal.added.expired_explanation": "Denne filterkategorien har gått ut på dato. Du må endre best før datoen for at den skal gjelde.",
@@ -418,7 +415,7 @@
   "notifications.column_settings.sound": "Spel av lyd",
   "notifications.column_settings.status": "Nye tut:",
   "notifications.column_settings.unread_notifications.category": "Uleste varsel",
-  "notifications.column_settings.unread_notifications.highlight": "Marker uleste varsel",
+  "notifications.column_settings.unread_notifications.highlight": "Framhev ulesne varsel",
   "notifications.column_settings.update": "Redigeringar:",
   "notifications.filter.all": "Alle",
   "notifications.filter.boosts": "Framhevingar",
@@ -429,7 +426,7 @@
   "notifications.filter.statuses": "Oppdateringar frå folk du fylgjer",
   "notifications.grant_permission": "Gje løyve.",
   "notifications.group": "{count} varsel",
-  "notifications.mark_as_read": "Merk alle varsel som lest",
+  "notifications.mark_as_read": "Marker alle varsel som lesne",
   "notifications.permission_denied": "Skrivebordsvarsel er ikkje tilgjengelege på grunn av at nettlesaren tidlegare ikkje har fått naudsynte rettar til å vise dei",
   "notifications.permission_denied_alert": "Sidan nettlesaren tidlegare har blitt nekta naudsynte rettar, kan ikkje skrivebordsvarsel aktiverast",
   "notifications.permission_required": "Skrivebordsvarsel er utilgjengelege fordi naudsynte rettar ikkje er gitt.",
@@ -527,7 +524,7 @@
   "search_results.hashtags": "Emneknaggar",
   "search_results.nothing_found": "Kunne ikkje finne noko for desse søkeorda",
   "search_results.statuses": "Tut",
-  "search_results.statuses_fts_disabled": "På denne Matsodon-tenaren kan du ikkje søkja på tut etter innhaldet deira.",
+  "search_results.statuses_fts_disabled": "På denne Matsodon-tenaren kan du ikkje søkja på innlegg etter innhaldet deira.",
   "search_results.title": "Søk etter {q}",
   "search_results.total": "{count, number} {count, plural, one {treff} other {treff}}",
   "server_banner.about_active_users": "Personar som har brukt denne tenaren dei siste 30 dagane (Månadlege Aktive Brukarar)",
@@ -542,7 +539,7 @@
   "status.admin_account": "Opne moderasjonsgrensesnitt for @{name}",
   "status.admin_status": "Opne denne statusen i moderasjonsgrensesnittet",
   "status.block": "Blokker @{name}",
-  "status.bookmark": "Bokmerk",
+  "status.bookmark": "Set bokmerke",
   "status.cancel_reblog_private": "Opphev framheving",
   "status.cannot_reblog": "Denne posten kan ikkje framhevast",
   "status.copy": "Kopier lenke til status",
@@ -579,7 +576,7 @@
   "status.reply": "Svar",
   "status.replyAll": "Svar til tråd",
   "status.report": "Rapporter @{name}",
-  "status.sensitive_warning": "Sensitivt innhald",
+  "status.sensitive_warning": "Ømtolig innhald",
   "status.share": "Del",
   "status.show_filter_reason": "Vis likevel",
   "status.show_less": "Vis mindre",
diff --git a/app/javascript/mastodon/locales/no.json b/app/javascript/mastodon/locales/no.json
index 6ef9fd040..1c33c8a99 100644
--- a/app/javascript/mastodon/locales/no.json
+++ b/app/javascript/mastodon/locales/no.json
@@ -55,7 +55,7 @@
   "account.report": "Rapportér @{name}",
   "account.requested": "Venter på godkjennelse. Klikk for å avbryte forespørselen",
   "account.share": "Del @{name}s profil",
-  "account.show_reblogs": "Vis boosts fra @{name}",
+  "account.show_reblogs": "Vis fremhevinger fra @{name}",
   "account.statuses_counter": "{count, plural, one {{counter} innlegg} other {{counter} innlegg}}",
   "account.unblock": "Opphev blokkering av @{name}",
   "account.unblock_domain": "Opphev blokkering av {domain}",
@@ -63,11 +63,11 @@
   "account.unendorse": "Ikke vis frem på profilen",
   "account.unfollow": "Avfølg",
   "account.unmute": "Opphev demping av @{name}",
-  "account.unmute_notifications": "Vis varsler fra @{name}",
+  "account.unmute_notifications": "Opphev demping av varsler fra @{name}",
   "account.unmute_short": "Opphev demping",
   "account_note.placeholder": "Klikk for å legge til et notat",
-  "admin.dashboard.daily_retention": "Andel brukere som er aktive per dag etter registrering",
-  "admin.dashboard.monthly_retention": "Andel brukere som er aktive per måned etter registrering",
+  "admin.dashboard.daily_retention": "Andel brukere som er aktive, per dag etter registrering",
+  "admin.dashboard.monthly_retention": "Andel brukere som er aktive, per måned etter registrering",
   "admin.dashboard.retention.average": "Gjennomsnitt",
   "admin.dashboard.retention.cohort": "Registreringsmåned",
   "admin.dashboard.retention.cohort_size": "Nye brukere",
@@ -104,7 +104,7 @@
   "column.direct": "Direktemeldinger",
   "column.directory": "Bla gjennom profiler",
   "column.domain_blocks": "Skjulte domener",
-  "column.favourites": "Likt",
+  "column.favourites": "Favoritter",
   "column.follow_requests": "Følgeforespørsler",
   "column.home": "Hjem",
   "column.lists": "Lister",
@@ -138,14 +138,15 @@
   "compose_form.poll.switch_to_multiple": "Endre avstemning til å tillate flere valg",
   "compose_form.poll.switch_to_single": "Endre avstemning til å tillate ett valg",
   "compose_form.publish": "Publiser",
+  "compose_form.publish_form": "Publiser",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Lagre endringer",
-  "compose_form.sensitive.hide": "{count, plural,one {Merk media som sensitivt} other {Merk media som sensitivt}}",
-  "compose_form.sensitive.marked": "{count, plural,one {Mediet er merket som sensitivt}other {Mediene er merket som sensitive}}",
-  "compose_form.sensitive.unmarked": "{count, plural,one {Mediet er ikke merket som sensitivt}other {Mediene er ikke merket som sensitive}}",
-  "compose_form.spoiler.marked": "Teksten er skjult bak en advarsel",
-  "compose_form.spoiler.unmarked": "Teksten er ikke skjult",
-  "compose_form.spoiler_placeholder": "Innholdsadvarsel",
+  "compose_form.sensitive.hide": "{count, plural,one {Merk media som følsomt} other {Merk medier som følsomme}}",
+  "compose_form.sensitive.marked": "{count, plural,one {Mediet er merket som følsomt}other {Mediene er merket som følsomme}}",
+  "compose_form.sensitive.unmarked": "{count, plural,one {Mediet er ikke merket som følsomt}other {Mediene er ikke merket som følsomme}}",
+  "compose_form.spoiler.marked": "Fjern innholdsvarsel",
+  "compose_form.spoiler.unmarked": "Legg til innholdsvarsel",
+  "compose_form.spoiler_placeholder": "Skriv advarselen din her",
   "confirmation_modal.cancel": "Avbryt",
   "confirmations.block.block_and_report": "Blokker og rapporter",
   "confirmations.block.confirm": "Blokkèr",
@@ -210,13 +211,13 @@
   "empty_column.account_timeline": "Ingen innlegg her!",
   "empty_column.account_unavailable": "Profilen er utilgjengelig",
   "empty_column.blocks": "Du har ikke blokkert noen brukere enda.",
-  "empty_column.bookmarked_statuses": "Du har ikke bokmerket noen innlegg enda. Når du bokmerker et, vil det dukke opp her.",
+  "empty_column.bookmarked_statuses": "Du har ikke noen bokmerkede innlegg enda. Når du har noen bokmerkede innlegg, vil de dukke opp her.",
   "empty_column.community": "Den lokale tidslinjen er tom. Skriv noe offentlig for å få snøballen til å rulle!",
   "empty_column.direct": "Du har ingen direktemeldinger enda. Etter du har sendt eller mottatt en, så vil den dukke opp her.",
   "empty_column.domain_blocks": "Det er ingen skjulte domener enda.",
   "empty_column.explore_statuses": "Ingenting er populært akkurat nå. Prøv igjen senere!",
-  "empty_column.favourited_statuses": "Du har ikke likt noen innlegg enda. Når du liker et, vil det dukke opp her.",
-  "empty_column.favourites": "Ingen har likt dette innlegget ennå. Når noen gjør det, vil de dukke opp her.",
+  "empty_column.favourited_statuses": "Du har ikke noen favorittinnlegg enda. Når du favorittmarkerer et inlegg, vil det dukke opp her.",
+  "empty_column.favourites": "Ingen har favorittmarkert dette innlegget ennå. Når noen gjør det, vil de dukke opp her.",
   "empty_column.follow_recommendations": "Ser ut som at det ikke finnes noen forslag for deg. Du kan prøve å bruke søk for å se etter folk du kan vite eller utforske trendende hashtags.",
   "empty_column.follow_requests": "Du har ingen følgeforespørsler enda. Når du mottar en, vil den dukke opp her.",
   "empty_column.hashtag": "Det er ingenting i denne emneknaggen ennå.",
@@ -234,21 +235,17 @@
   "errors.unexpected_crash.copy_stacktrace": "Kopier stacktrace-en til utklippstavlen",
   "errors.unexpected_crash.report_issue": "Rapporter en feil",
   "explore.search_results": "Søkeresultater",
-  "explore.suggested_follows": "For deg",
   "explore.title": "Utforsk",
-  "explore.trending_links": "Nyheter",
-  "explore.trending_statuses": "Innlegg",
-  "explore.trending_tags": "Emneknagger",
-  "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
-  "filter_modal.added.context_mismatch_title": "Context mismatch!",
-  "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
+  "filter_modal.added.context_mismatch_explanation": "Denne filterkategorien gjelder ikke for den konteksten du har åpnet dette innlegget i. Hvis du vil at innlegget skal filtreres i denne konteksten også, må du redigere filteret.",
+  "filter_modal.added.context_mismatch_title": "Feil sammenheng!",
+  "filter_modal.added.expired_explanation": "Denne filterkategorien er utløpt, du må endre utløpsdato for at den skal gjelde.",
   "filter_modal.added.expired_title": "Utløpt filter!",
-  "filter_modal.added.review_and_configure": "To review and further configure this filter category, go to the {settings_link}.",
+  "filter_modal.added.review_and_configure": "For å gjennomgå og ytterligere konfigurere denne filterkategorien, gå til {settings_link}.",
   "filter_modal.added.review_and_configure_title": "Filterinnstillinger",
   "filter_modal.added.settings_link": "innstillinger-siden",
-  "filter_modal.added.short_explanation": "This post has been added to the following filter category: {title}.",
+  "filter_modal.added.short_explanation": "Dette innlegget er lagt til i følgende filterkategori: {title}.",
   "filter_modal.added.title": "Filter lagt til!",
-  "filter_modal.select_filter.context_mismatch": "does not apply to this context",
+  "filter_modal.select_filter.context_mismatch": "gjelder ikke for denne sammenhengen",
   "filter_modal.select_filter.expired": "utløpt",
   "filter_modal.select_filter.prompt_new": "Ny kategori: {name}",
   "filter_modal.select_filter.search": "Søk eller opprett",
@@ -286,7 +283,7 @@
   "home.column_settings.show_replies": "Vis svar",
   "home.hide_announcements": "Skjul kunngjøring",
   "home.show_announcements": "Vis kunngjøring",
-  "interaction_modal.description.favourite": "Med en konto på Mastodon, kan du \"like\" dette innlegget for å la forfatteren vite at du likte det samt lagre innlegget til senere.",
+  "interaction_modal.description.favourite": "Med en konto på Mastodon, kan du favorittmarkere dette innlegget for å la forfatteren vite at du satte pris på det, og lagre innlegget til senere.",
   "interaction_modal.description.follow": "Med en konto på Mastodon, kan du følge {name} for å få innleggene deres i hjem-feeden din.",
   "interaction_modal.description.reblog": "Med en konto på Mastodon, kan du fremheve dette innlegget for å dele det med dine egne følgere.",
   "interaction_modal.description.reply": "Med en konto på Mastodon, kan du svare på dette innlegget.",
@@ -301,40 +298,40 @@
   "intervals.full.days": "{number, plural,one {# dag} other {# dager}}",
   "intervals.full.hours": "{number, plural, one {# time} other {# timer}}",
   "intervals.full.minutes": "{number, plural, one {# minutt} other {# minutter}}",
-  "keyboard_shortcuts.back": "for å navigere tilbake",
-  "keyboard_shortcuts.blocked": "åpne listen over blokkerte brukere",
-  "keyboard_shortcuts.boost": "å fremheve",
-  "keyboard_shortcuts.column": "å fokusere en status i en av kolonnene",
-  "keyboard_shortcuts.compose": "å fokusere komponeringsfeltet",
+  "keyboard_shortcuts.back": "Gå tilbake",
+  "keyboard_shortcuts.blocked": "Åpne listen over blokkerte brukere",
+  "keyboard_shortcuts.boost": "Fremhev innlegg",
+  "keyboard_shortcuts.column": "Gå til en kolonne",
+  "keyboard_shortcuts.compose": "Gå til komponeringsfeltet",
   "keyboard_shortcuts.description": "Beskrivelse",
   "keyboard_shortcuts.direct": "for å åpne kolonne med direktemeldinger",
-  "keyboard_shortcuts.down": "for å flytte ned i listen",
-  "keyboard_shortcuts.enter": "å åpne status",
-  "keyboard_shortcuts.favourite": "for å favorittmarkere",
-  "keyboard_shortcuts.favourites": "åpne listen over likte ting",
-  "keyboard_shortcuts.federated": "for å åpne fellestidslinjen",
-  "keyboard_shortcuts.heading": "Keyboard Shortcuts",
-  "keyboard_shortcuts.home": "åpne hjemmetidslinjen",
+  "keyboard_shortcuts.down": "Flytt nedover i listen",
+  "keyboard_shortcuts.enter": "Åpne innlegg",
+  "keyboard_shortcuts.favourite": "Marker innlegg som favoritt",
+  "keyboard_shortcuts.favourites": "Åpne listen over favoritter",
+  "keyboard_shortcuts.federated": "Åpne fellestidslinjen",
+  "keyboard_shortcuts.heading": "Hurtigtaster",
+  "keyboard_shortcuts.home": "Åpne hjemmetidslinjen",
   "keyboard_shortcuts.hotkey": "Lyntast",
-  "keyboard_shortcuts.legend": "å vise denne forklaringen",
-  "keyboard_shortcuts.local": "åpne den lokale tidslinjen",
-  "keyboard_shortcuts.mention": "å nevne forfatter",
-  "keyboard_shortcuts.muted": "åpne listen over dempede brukere",
-  "keyboard_shortcuts.my_profile": "å åpne profilen din",
-  "keyboard_shortcuts.notifications": "åpne varslingskolonnen",
-  "keyboard_shortcuts.open_media": "å åpne media",
+  "keyboard_shortcuts.legend": "Vis denne tegnforklaringen",
+  "keyboard_shortcuts.local": "Åpne den lokale tidslinjen",
+  "keyboard_shortcuts.mention": "Nevn forfatter",
+  "keyboard_shortcuts.muted": "Åpne listen over dempede brukere",
+  "keyboard_shortcuts.my_profile": "Åpne profilen din",
+  "keyboard_shortcuts.notifications": "Åpne varslingskolonnen",
+  "keyboard_shortcuts.open_media": "Åpne media",
   "keyboard_shortcuts.pinned": "Åpne listen over festede innlegg",
-  "keyboard_shortcuts.profile": "åpne forfatterens profil",
-  "keyboard_shortcuts.reply": "for å svare",
-  "keyboard_shortcuts.requests": "åpne følgingsforespørselslisten",
-  "keyboard_shortcuts.search": "å fokusere søk",
-  "keyboard_shortcuts.spoilers": "to show/hide CW field",
-  "keyboard_shortcuts.start": "åpne «Sett i gang»-kolonnen",
-  "keyboard_shortcuts.toggle_hidden": "å vise/skjule tekst bak en innholdsadvarsel",
-  "keyboard_shortcuts.toggle_sensitivity": "å vise/skjule media",
+  "keyboard_shortcuts.profile": "Åpne forfatterens profil",
+  "keyboard_shortcuts.reply": "Svar på innlegg",
+  "keyboard_shortcuts.requests": "Åpne listen over følgeforespørsler",
+  "keyboard_shortcuts.search": "Gå til søkefeltet",
+  "keyboard_shortcuts.spoilers": "Vis/skjul CW-felt",
+  "keyboard_shortcuts.start": "Åpne kolonnen «Kom i gang»",
+  "keyboard_shortcuts.toggle_hidden": "Vis/skjul tekst bak innholdsvarsel",
+  "keyboard_shortcuts.toggle_sensitivity": "Vis/skjul media",
   "keyboard_shortcuts.toot": "Start et nytt innlegg",
-  "keyboard_shortcuts.unfocus": "å ufokusere komponerings-/søkefeltet",
-  "keyboard_shortcuts.up": "å flytte opp i listen",
+  "keyboard_shortcuts.unfocus": "Fjern fokus fra komponerings-/søkefeltet",
+  "keyboard_shortcuts.up": "Flytt oppover i listen",
   "lightbox.close": "Lukk",
   "lightbox.compress": "Komprimer bildevisningsboks",
   "lightbox.expand": "Ekspander bildevisning boks",
@@ -390,13 +387,13 @@
   "not_signed_in_indicator.not_signed_in": "Du må logge inn for å få tilgang til denne ressursen.",
   "notification.admin.report": "{name} rapporterte {target}",
   "notification.admin.sign_up": "{name} registrerte seg",
-  "notification.favourite": "{name} likte din status",
+  "notification.favourite": "{name} favorittmarkerte innlegget ditt",
   "notification.follow": "{name} fulgte deg",
   "notification.follow_request": "{name} har bedt om å få følge deg",
   "notification.mention": "{name} nevnte deg",
   "notification.own_poll": "Avstemningen din er ferdig",
-  "notification.poll": "En avstemning du har stemt på har avsluttet",
-  "notification.reblog": "{name} fremhevde din status",
+  "notification.poll": "En avstemning du stemte på har avsluttet",
+  "notification.reblog": "{name} fremhevet ditt innlegg",
   "notification.status": "{name} la nettopp ut",
   "notification.update": "{name} redigerte et innlegg",
   "notifications.clear": "Fjern varsler",
@@ -404,7 +401,7 @@
   "notifications.column_settings.admin.report": "Nye rapporter:",
   "notifications.column_settings.admin.sign_up": "Nye registreringer:",
   "notifications.column_settings.alert": "Skrivebordsvarslinger",
-  "notifications.column_settings.favourite": "Likt:",
+  "notifications.column_settings.favourite": "Favoritter:",
   "notifications.column_settings.filter_bar.advanced": "Vis alle kategorier",
   "notifications.column_settings.filter_bar.category": "Hurtigfiltreringslinje",
   "notifications.column_settings.filter_bar.show_bar": "Vis filterlinjen",
@@ -517,7 +514,7 @@
   "search.placeholder": "Søk",
   "search.search_or_paste": "Søk eller lim inn URL",
   "search_popout.search_format": "Avansert søkeformat",
-  "search_popout.tips.full_text": "Enkel tekst gir resultater for statuser du har skrevet, likt, fremhevet, eller har blitt nevnt i, i tillegg til samsvarende brukernavn, visningsnavn og emneknagger.",
+  "search_popout.tips.full_text": "Enkel tekst gir resultater for innlegg du har skrevet, favorittmarkert, fremhevet, eller har blitt nevnt i, i tillegg til samsvarende brukernavn, visningsnavn og emneknagger.",
   "search_popout.tips.hashtag": "emneknagg",
   "search_popout.tips.status": "status",
   "search_popout.tips.text": "Enkel tekst returnerer matchende visningsnavn, brukernavn og emneknagger",
@@ -545,7 +542,7 @@
   "status.bookmark": "Bokmerke",
   "status.cancel_reblog_private": "Fjern fremheving",
   "status.cannot_reblog": "Denne posten kan ikke fremheves",
-  "status.copy": "Kopier lenken til statusen",
+  "status.copy": "Kopier lenken til innlegget",
   "status.delete": "Slett",
   "status.detailed_status": "Detaljert samtalevisning",
   "status.direct": "Send direktemelding til @{name}",
@@ -553,7 +550,7 @@
   "status.edited": "Redigert {date}",
   "status.edited_x_times": "Redigert {count, plural,one {{count} gang} other {{count} ganger}}",
   "status.embed": "Bygge inn",
-  "status.favourite": "Lik",
+  "status.favourite": "Marker som favoritt",
   "status.filter": "Filtrer dette innlegget",
   "status.filtered": "Filtrert",
   "status.hide": "Skjul innlegg",
@@ -565,17 +562,17 @@
   "status.more": "Mer",
   "status.mute": "Demp @{name}",
   "status.mute_conversation": "Demp samtale",
-  "status.open": "Utvid denne statusen",
+  "status.open": "Utvid dette innlegget",
   "status.pin": "Fest på profilen",
   "status.pinned": "Festet innlegg",
   "status.read_more": "Les mer",
   "status.reblog": "Fremhev",
   "status.reblog_private": "Fremhev til det opprinnelige publikummet",
-  "status.reblogged_by": "Fremhevd av {name}",
+  "status.reblogged_by": "Fremhevet av {name}",
   "status.reblogs.empty": "Ingen har fremhevet dette innlegget enda. Når noen gjør det, vil de dukke opp her.",
   "status.redraft": "Slett og drøft på nytt",
   "status.remove_bookmark": "Fjern bokmerke",
-  "status.replied_to": "Svarte {name}",
+  "status.replied_to": "Som svar til {name}",
   "status.reply": "Svar",
   "status.replyAll": "Svar til samtale",
   "status.report": "Rapporter @{name}",
@@ -594,7 +591,7 @@
   "status.unpin": "Angre festing på profilen",
   "subscribed_languages.lead": "Bare innlegg på valgte språk vil dukke opp i dine hjem- og liste-tidslinjer etter endringen. Velg ingen for å motta innlegg på alle språk.",
   "subscribed_languages.save": "Lagre endringer",
-  "subscribed_languages.target": "Endre abbonerte språk for {target}",
+  "subscribed_languages.target": "Endre abonnerte språk for {target}",
   "suggestions.dismiss": "Utelukk forslaget",
   "suggestions.header": "Du er kanskje interessert i …",
   "tabs_bar.federated_timeline": "Felles",
@@ -619,7 +616,7 @@
   "upload_area.title": "Dra og slipp for å laste opp",
   "upload_button.label": "Legg til media",
   "upload_error.limit": "Filopplastingsgrensen er oversteget.",
-  "upload_error.poll": "Filopplasting inni avstemninger er ikke tillatt.",
+  "upload_error.poll": "Filopplasting er ikke tillatt for avstemninger.",
   "upload_form.audio_description": "Beskriv det for folk med hørselstap",
   "upload_form.description": "Beskriv for synshemmede",
   "upload_form.description_missing": "Ingen beskrivelse lagt til",
diff --git a/app/javascript/mastodon/locales/oc.json b/app/javascript/mastodon/locales/oc.json
index 8d8674541..ac76f1b82 100644
--- a/app/javascript/mastodon/locales/oc.json
+++ b/app/javascript/mastodon/locales/oc.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Cambiar lo sondatge per permetre de causidas multiplas",
   "compose_form.poll.switch_to_single": "Cambiar lo sondatge per permetre una sola causida",
   "compose_form.publish": "Publicar",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish} !",
   "compose_form.save_changes": "Salvar los cambiaments",
   "compose_form.sensitive.hide": "Marcar coma sensible",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copiar las traças al quichapapièrs",
   "errors.unexpected_crash.report_issue": "Senhalar un problèma",
   "explore.search_results": "Resultats de recèrca",
-  "explore.suggested_follows": "Per vos",
   "explore.title": "Explorar",
-  "explore.trending_links": "Novèlas",
-  "explore.trending_statuses": "Publicacions",
-  "explore.trending_tags": "Etiquetas",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/pa.json b/app/javascript/mastodon/locales/pa.json
index a8585c042..693991651 100644
--- a/app/javascript/mastodon/locales/pa.json
+++ b/app/javascript/mastodon/locales/pa.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
   "compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "{count, plural, one {Mark media as sensitive} other {Mark media as sensitive}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "Report issue",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/pl.json b/app/javascript/mastodon/locales/pl.json
index 78b09ca53..9de1ccf16 100644
--- a/app/javascript/mastodon/locales/pl.json
+++ b/app/javascript/mastodon/locales/pl.json
@@ -142,6 +142,7 @@
   "compose_form.poll.switch_to_multiple": "Pozwól na wybranie wielu opcji",
   "compose_form.poll.switch_to_single": "Pozwól na wybranie tylko jednej opcji",
   "compose_form.publish": "Opublikuj",
+  "compose_form.publish_form": "Publikuj",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Zapisz zmiany",
   "compose_form.sensitive.hide": "Oznacz multimedia jako wrażliwe",
@@ -238,11 +239,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Skopiuj ślad stosu do schowka",
   "errors.unexpected_crash.report_issue": "Zgłoś problem",
   "explore.search_results": "Wyniki wyszukiwania",
-  "explore.suggested_follows": "Dla ciebie",
   "explore.title": "Odkrywaj",
-  "explore.trending_links": "Aktualności",
-  "explore.trending_statuses": "Posty",
-  "explore.trending_tags": "Hasztagi",
   "filter_modal.added.context_mismatch_explanation": "Ta kategoria filtrów nie ma zastosowania do kontekstu, w którym uzyskałeś dostęp do tego wpisu. Jeśli chcesz, aby wpis został przefiltrowany również w tym kontekście, będziesz musiał edytować filtr.",
   "filter_modal.added.context_mismatch_title": "Niezgodność kontekstów!",
   "filter_modal.added.expired_explanation": "Ta kategoria filtra wygasła, będziesz musiał zmienić datę wygaśnięcia, aby ją zastosować.",
diff --git a/app/javascript/mastodon/locales/pt-BR.json b/app/javascript/mastodon/locales/pt-BR.json
index f9881dbc6..b42871558 100644
--- a/app/javascript/mastodon/locales/pt-BR.json
+++ b/app/javascript/mastodon/locales/pt-BR.json
@@ -2,7 +2,7 @@
   "about.blocks": "Servidores moderados",
   "about.contact": "Contato:",
   "about.disclaimer": "Mastodon é um software de código aberto e livre, e uma marca registrada de Mastodon gGmbH.",
-  "about.domain_blocks.no_reason_available": "Reason not available",
+  "about.domain_blocks.no_reason_available": "Razão não disponível",
   "about.domain_blocks.preamble": "O Mastodon geralmente permite que você veja o conteúdo e interaja com usuários de qualquer outro servidor no fediverso. Estas são as exceções deste servidor em específico.",
   "about.domain_blocks.silenced.explanation": "Você geralmente não verá perfis e conteúdo deste servidor, a menos que você o procure explicitamente ou opte por seguir.",
   "about.domain_blocks.silenced.title": "Limitado",
@@ -80,7 +80,7 @@
   "audio.hide": "Ocultar áudio",
   "autosuggest_hashtag.per_week": "{count} por semana",
   "boost_modal.combo": "Pressione {combo} para pular isso na próxima vez",
-  "bundle_column_error.copy_stacktrace": "Copiar erro de informe",
+  "bundle_column_error.copy_stacktrace": "Copiar relatório do erro",
   "bundle_column_error.error.body": "A página solicitada não pode ser renderizada. Pode ser devido a um erro em nosso código ou um problema de compatibilidade do navegador.",
   "bundle_column_error.error.title": "Ah, não!",
   "bundle_column_error.network.body": "Ocorreu um erro ao tentar carregar esta página. Isso pode ser devido a um problema temporário com sua conexão de internet ou deste servidor.",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Permitir múltiplas escolhas",
   "compose_form.poll.switch_to_single": "Opção única",
   "compose_form.publish": "Publicar",
+  "compose_form.publish_form": "Publicar",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Salvar alterações",
   "compose_form.sensitive.hide": "{count, plural, one {Marcar mídia como sensível} other {Marcar mídias como sensível}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copiar dados do erro para área de transferência",
   "errors.unexpected_crash.report_issue": "Reportar problema",
   "explore.search_results": "Resultado da pesquisa",
-  "explore.suggested_follows": "Para você",
   "explore.title": "Explorar",
-  "explore.trending_links": "Notícias",
-  "explore.trending_statuses": "Publicações",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "Esta categoria de filtro não se aplica ao contexto no qual você acessou esta publicação. Se quiser que a publicação seja filtrada nesse contexto também, você terá que editar o filtro.",
   "filter_modal.added.context_mismatch_title": "Incompatibilidade de contexto!",
   "filter_modal.added.expired_explanation": "Esta categoria de filtro expirou, você precisará alterar a data de expiração para aplicar.",
@@ -401,7 +398,7 @@
   "notification.update": "{name} editou uma publicação",
   "notifications.clear": "Limpar notificações",
   "notifications.clear_confirmation": "Você tem certeza de que deseja limpar todas as suas notificações?",
-  "notifications.column_settings.admin.report": "Novos relatórios:",
+  "notifications.column_settings.admin.report": "Novas denúncias:",
   "notifications.column_settings.admin.sign_up": "Novas inscrições:",
   "notifications.column_settings.alert": "Notificações no computador",
   "notifications.column_settings.favourite": "Favoritos:",
@@ -481,7 +478,7 @@
   "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.close": "Concluir",
   "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á?",
@@ -504,16 +501,16 @@
   "report.submit": "Enviar",
   "report.target": "Denunciando {target}",
   "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.take_action_actionable": "Enquanto revisamos isso, você pode tomar uma atitude contra @{name}:",
   "report.thanks.title": "Não quer ver isto?",
   "report.thanks.title_actionable": "Obrigado por denunciar, nós vamos analisar.",
   "report.unfollow": "Deixar de seguir @{name}",
   "report.unfollow_explanation": "Você está seguindo esta conta. Para não ver as publicações dela em sua página inicial, deixe de segui-la.",
-  "report_notification.attached_statuses": "{count, plural, one {{count} publicação} other {{count} publicações}} anexada(s)",
+  "report_notification.attached_statuses": "{count, plural, one {{count} publicação anexada} other {{count} publicações anexadas}}",
   "report_notification.categories.other": "Outro",
   "report_notification.categories.spam": "Spam",
   "report_notification.categories.violation": "Violação de regra",
-  "report_notification.open": "Abrir relatório",
+  "report_notification.open": "Abrir denúncia",
   "search.placeholder": "Pesquisar",
   "search.search_or_paste": "Buscar ou colar URL",
   "search_popout.search_format": "Formato de pesquisa avançada",
diff --git a/app/javascript/mastodon/locales/pt-PT.json b/app/javascript/mastodon/locales/pt-PT.json
index 828efe9f9..8dd5b446c 100644
--- a/app/javascript/mastodon/locales/pt-PT.json
+++ b/app/javascript/mastodon/locales/pt-PT.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Alterar a votação para permitir múltiplas escolhas",
   "compose_form.poll.switch_to_single": "Alterar a votação para permitir uma única escolha",
   "compose_form.publish": "Publicar",
+  "compose_form.publish_form": "Publicar",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Guardar alterações",
   "compose_form.sensitive.hide": "Marcar media como sensível",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copiar a stacktrace para o clipboard",
   "errors.unexpected_crash.report_issue": "Reportar problema",
   "explore.search_results": "Resultados da pesquisa",
-  "explore.suggested_follows": "Para si",
   "explore.title": "Explorar",
-  "explore.trending_links": "Notícias",
-  "explore.trending_statuses": "Publicações",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "Esta categoria de filtro não se aplica ao contexto em que acedeu a esta publicação. Se pretender que esta publicação seja filtrada também neste contexto, terá que editar o filtro.",
   "filter_modal.added.context_mismatch_title": "Contexto incoerente!",
   "filter_modal.added.expired_explanation": "Esta categoria de filtro expirou, necessita alterar a data de validade para que ele seja aplicado.",
diff --git a/app/javascript/mastodon/locales/ro.json b/app/javascript/mastodon/locales/ro.json
index 2f76585f8..4a4c2f159 100644
--- a/app/javascript/mastodon/locales/ro.json
+++ b/app/javascript/mastodon/locales/ro.json
@@ -1,12 +1,12 @@
 {
   "about.blocks": "Servere moderate",
   "about.contact": "Contact:",
-  "about.disclaimer": "Mastodon este o aplicație gratuită, open-source și o marcă înregistrată a Mastodon gGmbH.",
+  "about.disclaimer": "Mastodon este o aplicație gratuită, cu sursă deschisă și o marcă înregistrată a Mastodon gGmbH.",
   "about.domain_blocks.no_reason_available": "Motivul nu este disponibil",
   "about.domain_blocks.preamble": "Mastodon îți permite în general să vezi conținut de la și să interacționezi cu utilizatori de pe oricare server în fediverse. Acestea sunt excepțiile care au fost făcute pe acest server.",
   "about.domain_blocks.silenced.explanation": "În general, nu vei vedea profiluri și conținut de pe acest server, cu excepția cazului în care îl cauți în mod explicit sau optezi pentru el prin urmărire.",
   "about.domain_blocks.silenced.title": "Limitat",
-  "about.domain_blocks.suspended.explanation": "Nici o informație de la acest server nu va fi procesată, stocată sau schimbată, făcând imposibilă orice interacțiune sau comunicare cu utilizatorii de pe acest server.",
+  "about.domain_blocks.suspended.explanation": "Nicio informație de la acest server nu va fi procesată, stocată sau trimisă, făcând imposibilă orice interacțiune sau comunicare cu utilizatorii de pe acest server.",
   "about.domain_blocks.suspended.title": "Suspendat",
   "about.not_available": "Această informație nu a fost pusă la dispoziție pe acest server.",
   "about.powered_by": "Media socială descentralizată furnizată de {mastodon}",
@@ -28,13 +28,13 @@
   "account.endorse": "Promovează pe profil",
   "account.featured_tags.last_status_at": "Ultima postare pe {date}",
   "account.featured_tags.last_status_never": "Fără postări",
-  "account.featured_tags.title": "Hashtag-uri recomandate de {name}",
+  "account.featured_tags.title": "Haștagurile recomandate de {name}",
   "account.follow": "Abonează-te",
-  "account.followers": "Abonați",
-  "account.followers.empty": "Acest utilizator încă nu are abonați.",
-  "account.followers_counter": "{count, plural, one {{counter} Abonat} few {{counter} Abonați} other {{counter} Abonați}}",
+  "account.followers": "Urmăritori",
+  "account.followers.empty": "Acest utilizator nu are încă urmăritori.",
+  "account.followers_counter": "{count, plural, one {Un abonat} few {{counter} abonați} other {{counter} de abonați}}",
   "account.following": "Urmăriți",
-  "account.following_counter": "{count, plural, one {{counter} Abonament} few {{counter} Abonamente} other {{counter} Abonamente}}",
+  "account.following_counter": "{count, plural, one {Un abonament} few {{counter} abonamente} other {{counter} de abonamente}}",
   "account.follows.empty": "Momentan acest utilizator nu are niciun abonament.",
   "account.follows_you": "Este abonat la tine",
   "account.go_to_profile": "Mergi la profil",
@@ -46,9 +46,9 @@
   "account.media": "Media",
   "account.mention": "Menționează pe @{name}",
   "account.moved_to": "{name} a indicat că noul său cont este acum:",
-  "account.mute": "Ignoră pe @{name}",
-  "account.mute_notifications": "Ignoră notificările de la @{name}",
-  "account.muted": "Ignorat",
+  "account.mute": "Pune pe @{name} pe silențios",
+  "account.mute_notifications": "Pune pe silențios notificările de la @{name}",
+  "account.muted": "Pus pe silențios",
   "account.open_original_page": "Deschide pagina originală",
   "account.posts": "Postări",
   "account.posts_with_replies": "Postări și răspunsuri",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Modifică sondajul pentru a permite mai multe opțiuni",
   "compose_form.poll.switch_to_single": "Modifică sondajul pentru a permite o singură opțiune",
   "compose_form.publish": "Publică",
+  "compose_form.publish_form": "Publică",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Salvează modificările",
   "compose_form.sensitive.hide": "{count, plural, one {Marchează conținutul media ca fiind sensibil} few {Marchează conținuturile media ca fiind sensibile} other {Marchează conținuturile media ca fiind sensibile}}",
@@ -212,9 +213,9 @@
   "empty_column.blocks": "Momentan nu ai blocat niciun utilizator.",
   "empty_column.bookmarked_statuses": "Momentan nu ai nicio postare marcată. Când vei marca una, va apărea aici.",
   "empty_column.community": "Nu există nimic în cronologia locală. Postează ceva public pentru a sparge gheața!",
-  "empty_column.direct": "You don't have any direct messages yet. When you send or receive one, it will show up here.",
+  "empty_column.direct": "Momentan nu ai niciun mesaj direct. Când trimiți sau primești un mesaj, va apărea aici.",
   "empty_column.domain_blocks": "Momentan nu există domenii blocate.",
-  "empty_column.explore_statuses": "Nothing is trending right now. Check back later!",
+  "empty_column.explore_statuses": "Nimic nu figurează în tendințe în acest moment. Verifică din nou mai târziu!",
   "empty_column.favourited_statuses": "Momentan nu ai nicio postare favorită. Când vei adăuga una, va apărea aici.",
   "empty_column.favourites": "Momentan nimeni nu a adăugat această postare la favorite. Când cineva o va face, va apărea aici.",
   "empty_column.follow_recommendations": "Se pare că nu am putut genera nicio sugestie pentru tine. Poți încerca funcția de căutare pentru a căuta persoane pe care le cunoști, sau poți explora tendințele.",
@@ -233,41 +234,37 @@
   "error.unexpected_crash.next_steps_addons": "Încearcă să le dezactivezi și să reîmprospătezi pagina. Dacă tot nu funcționează, poți accesa Mastodon dintr-un alt navigator sau dintr-o aplicație nativă.",
   "errors.unexpected_crash.copy_stacktrace": "Copiere stacktrace în clipboard",
   "errors.unexpected_crash.report_issue": "Raportează o problemă",
-  "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
-  "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
+  "explore.search_results": "Rezultatele căutării",
+  "explore.title": "Explorează",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
-  "filter_modal.added.context_mismatch_title": "Context mismatch!",
-  "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
-  "filter_modal.added.expired_title": "Expired filter!",
-  "filter_modal.added.review_and_configure": "To review and further configure this filter category, go to the {settings_link}.",
-  "filter_modal.added.review_and_configure_title": "Filter settings",
-  "filter_modal.added.settings_link": "settings page",
-  "filter_modal.added.short_explanation": "This post has been added to the following filter category: {title}.",
-  "filter_modal.added.title": "Filter added!",
-  "filter_modal.select_filter.context_mismatch": "does not apply to this context",
-  "filter_modal.select_filter.expired": "expired",
-  "filter_modal.select_filter.prompt_new": "New category: {name}",
-  "filter_modal.select_filter.search": "Search or create",
-  "filter_modal.select_filter.subtitle": "Use an existing category or create a new one",
-  "filter_modal.select_filter.title": "Filter this post",
-  "filter_modal.title.status": "Filter a post",
+  "filter_modal.added.context_mismatch_title": "Nepotrivire contextuală!",
+  "filter_modal.added.expired_explanation": "Această categorie de filtre a expirat, va trebui să modifici data de expirare pentru ca aceasta să se aplice.",
+  "filter_modal.added.expired_title": "Filtru expirat!",
+  "filter_modal.added.review_and_configure": "Pentru a revizui și a configura în continuare această categorie de filtre, mergi la {settings_link}.",
+  "filter_modal.added.review_and_configure_title": "Configurări pentru filtre",
+  "filter_modal.added.settings_link": "pagina configurărilor",
+  "filter_modal.added.short_explanation": "Această postare a fost adăugată la următoarea categorie de filtre: {title}.",
+  "filter_modal.added.title": "Filtru adăugat!",
+  "filter_modal.select_filter.context_mismatch": "nu se aplică acestui context",
+  "filter_modal.select_filter.expired": "expirat",
+  "filter_modal.select_filter.prompt_new": "Categorie nouă: {name}",
+  "filter_modal.select_filter.search": "Caută sau creează",
+  "filter_modal.select_filter.subtitle": "Folosește o categorie existentă sau creează una nouă",
+  "filter_modal.select_filter.title": "Filtrează această postare",
+  "filter_modal.title.status": "Filtrează o postare",
   "follow_recommendations.done": "Terminat",
   "follow_recommendations.heading": "Urmărește persoanele ale căror postări te-ar interesa! Iată câteva sugestii.",
   "follow_recommendations.lead": "Postările de la persoanele la care te-ai abonat vor apărea în ordine cronologică în cronologia principală. Nu-ți fie teamă să faci greșeli, poți să te dezabonezi oricând de la ei la fel de ușor!",
   "follow_request.authorize": "Acceptă",
   "follow_request.reject": "Respinge",
   "follow_requests.unlocked_explanation": "Chiar dacă contul tău nu este blocat, personalul {domain} a considerat că ai putea prefera să consulți manual cererile de abonare de la aceste conturi.",
-  "footer.about": "About",
-  "footer.directory": "Profiles directory",
-  "footer.get_app": "Get the app",
-  "footer.invite": "Invite people",
-  "footer.keyboard_shortcuts": "Keyboard shortcuts",
-  "footer.privacy_policy": "Privacy policy",
-  "footer.source_code": "View source code",
+  "footer.about": "Despre",
+  "footer.directory": "Catalogul de profiluri",
+  "footer.get_app": "Obține aplicația",
+  "footer.invite": "Invită persoane",
+  "footer.keyboard_shortcuts": "Comenzi rapide de la tastatură",
+  "footer.privacy_policy": "Politica de confidenţialitate",
+  "footer.source_code": "Vizualizează codul sursă",
   "generic.saved": "Salvat",
   "getting_started.heading": "Primii pași",
   "hashtag.column_header.tag_mode.all": "și {additional}",
@@ -279,35 +276,35 @@
   "hashtag.column_settings.tag_mode.any": "Oricare din acestea",
   "hashtag.column_settings.tag_mode.none": "Niciuna dintre acestea",
   "hashtag.column_settings.tag_toggle": "Adaugă etichete suplimentare pentru această coloană",
-  "hashtag.follow": "Follow hashtag",
-  "hashtag.unfollow": "Unfollow hashtag",
+  "hashtag.follow": "Urmărește haștagul",
+  "hashtag.unfollow": "Nu mai urmări haștagul",
   "home.column_settings.basic": "De bază",
   "home.column_settings.show_reblogs": "Afișează distribuirile",
   "home.column_settings.show_replies": "Afișează răspunsurile",
   "home.hide_announcements": "Ascunde anunțurile",
   "home.show_announcements": "Afișează anunțurile",
-  "interaction_modal.description.favourite": "With an account on Mastodon, you can favourite this post to let the author know you appreciate it and save it for later.",
-  "interaction_modal.description.follow": "With an account on Mastodon, you can follow {name} to receive their posts in your home feed.",
-  "interaction_modal.description.reblog": "With an account on Mastodon, you can boost this post to share it with your own followers.",
-  "interaction_modal.description.reply": "With an account on Mastodon, you can respond to this post.",
-  "interaction_modal.on_another_server": "On a different server",
-  "interaction_modal.on_this_server": "On this server",
-  "interaction_modal.other_server_instructions": "Copy and paste this URL into the search field of your favourite Mastodon app or the web interface of your Mastodon server.",
-  "interaction_modal.preamble": "Since Mastodon is decentralized, you can use your existing account hosted by another Mastodon server or compatible platform if you don't have an account on this one.",
-  "interaction_modal.title.favourite": "Favourite {name}'s post",
-  "interaction_modal.title.follow": "Follow {name}",
-  "interaction_modal.title.reblog": "Boost {name}'s post",
-  "interaction_modal.title.reply": "Reply to {name}'s post",
-  "intervals.full.days": "{number, plural,one {# zi} other {# zile}}",
-  "intervals.full.hours": "{number, plural, one {# oră} other {# ore}}",
-  "intervals.full.minutes": "{number, plural, one {# minut} other {# minute}}",
+  "interaction_modal.description.favourite": "Cu un cont pe Mastodon, poți adăuga această postare la favorite pentru a-l informa pe autorul ei că o apreciezi și pentru a o salva pentru mai târziu.",
+  "interaction_modal.description.follow": "Cu un cont Mastodon, poți urmări pe {name} pentru a vedea postările sale în cronologia ta principală.",
+  "interaction_modal.description.reblog": "Cu un cont pe Mastodon, poți distribui această postare pentru a le-o arăta și celor abonați ție.",
+  "interaction_modal.description.reply": "Cu un cont pe Mastodon, poți răspunde acestei postări.",
+  "interaction_modal.on_another_server": "Pe un alt server",
+  "interaction_modal.on_this_server": "Pe acest server",
+  "interaction_modal.other_server_instructions": "Copiază și lipește acest URL în câmpul de căutare al aplicației tale preferate Mastodon sau în interfața web a serverului tău Mastodon.",
+  "interaction_modal.preamble": "De vreme ce Mastodon este descentralizat, poți folosi contul tău existent, găzduit de un alt server Mastodon, sau o platformă compatibilă dacă nu ai un cont pe acesta.",
+  "interaction_modal.title.favourite": "Adaugă la favorite postarea lui {name}",
+  "interaction_modal.title.follow": "Urmărește pe {name}",
+  "interaction_modal.title.reblog": "Distribuie postarea lui {name}",
+  "interaction_modal.title.reply": "Răspunde postării lui {name}",
+  "intervals.full.days": "{number, plural, one {o zi} few {# zile} other {# de zile}}",
+  "intervals.full.hours": "{number, plural, one {o oră} few {# ore} other {# de ore}}",
+  "intervals.full.minutes": "{number, plural, one {un minut} few {# minute} other {# de minute}}",
   "keyboard_shortcuts.back": "Navighează înapoi",
   "keyboard_shortcuts.blocked": "Deschide lista utilizatorilor blocați",
   "keyboard_shortcuts.boost": "Distribuie postarea",
   "keyboard_shortcuts.column": "Focalizează pe coloană",
   "keyboard_shortcuts.compose": "Focalizează pe zona de text",
   "keyboard_shortcuts.description": "Descriere",
-  "keyboard_shortcuts.direct": "to open direct messages column",
+  "keyboard_shortcuts.direct": "pentru a deschide coloana cu mesaje directe",
   "keyboard_shortcuts.down": "Coboară în listă",
   "keyboard_shortcuts.enter": "Deschide postarea",
   "keyboard_shortcuts.favourite": "Adaugă postarea la favorite",
@@ -340,8 +337,8 @@
   "lightbox.expand": "Deschide panoul de vizualizare a imaginilor",
   "lightbox.next": "Înainte",
   "lightbox.previous": "Înapoi",
-  "limited_account_hint.action": "Show profile anyway",
-  "limited_account_hint.title": "This profile has been hidden by the moderators of {domain}.",
+  "limited_account_hint.action": "Afișează profilul oricum",
+  "limited_account_hint.title": "Acest profil a fost ascuns de moderatorii domeniului {domain}.",
   "lists.account.add": "Adaugă în listă",
   "lists.account.remove": "Elimină din listă",
   "lists.delete": "Șterge lista",
@@ -360,20 +357,20 @@
   "media_gallery.toggle_visible": "{number, plural, one {Ascunde imaginea} other {Ascunde imaginile}}",
   "missing_indicator.label": "Nu a fost găsit",
   "missing_indicator.sublabel": "Această resursă nu a putut fi găsită",
-  "moved_to_account_banner.text": "Your account {disabledAccount} is currently disabled because you moved to {movedToAccount}.",
+  "moved_to_account_banner.text": "Contul tău {disabledAccount} este în acest moment dezactivat deoarece te-ai mutat la {movedToAccount}.",
   "mute_modal.duration": "Durata",
   "mute_modal.hide_notifications": "Ascunde notificările de la acest utilizator?",
   "mute_modal.indefinite": "Nedeterminat",
-  "navigation_bar.about": "About",
+  "navigation_bar.about": "Despre",
   "navigation_bar.blocks": "Utilizatori blocați",
   "navigation_bar.bookmarks": "Marcaje",
   "navigation_bar.community_timeline": "Cronologie locală",
   "navigation_bar.compose": "Compune o nouă postare",
-  "navigation_bar.direct": "Direct messages",
+  "navigation_bar.direct": "Mesaje directe",
   "navigation_bar.discover": "Descoperă",
   "navigation_bar.domain_blocks": "Domenii blocate",
   "navigation_bar.edit_profile": "Modifică profilul",
-  "navigation_bar.explore": "Explore",
+  "navigation_bar.explore": "Explorează",
   "navigation_bar.favourites": "Favorite",
   "navigation_bar.filters": "Cuvinte ignorate",
   "navigation_bar.follow_requests": "Cereri de abonare",
@@ -385,11 +382,11 @@
   "navigation_bar.pins": "Postări fixate",
   "navigation_bar.preferences": "Preferințe",
   "navigation_bar.public_timeline": "Cronologie globală",
-  "navigation_bar.search": "Search",
+  "navigation_bar.search": "Caută",
   "navigation_bar.security": "Securitate",
-  "not_signed_in_indicator.not_signed_in": "You need to sign in to access this resource.",
-  "notification.admin.report": "{name} reported {target}",
-  "notification.admin.sign_up": "{name} signed up",
+  "not_signed_in_indicator.not_signed_in": "Trebuie să te conectezi pentru a accesa această resursă.",
+  "notification.admin.report": "{name} a raportat pe {target}",
+  "notification.admin.sign_up": "{name} s-a înscris",
   "notification.favourite": "{name} a adăugat postarea ta la favorite",
   "notification.follow": "{name} s-a abonat la tine",
   "notification.follow_request": "{name} a trimis o cerere de abonare",
@@ -398,11 +395,11 @@
   "notification.poll": "Un sondaj pentru care ai votat s-a încheiat",
   "notification.reblog": "{name} ți-a distribuit postarea",
   "notification.status": "{name} tocmai a postat",
-  "notification.update": "{name} edited a post",
+  "notification.update": "{name} și-a modificat o postare",
   "notifications.clear": "Șterge notificările",
   "notifications.clear_confirmation": "Ești sigur că vrei să ștergi permanent toate notificările?",
-  "notifications.column_settings.admin.report": "New reports:",
-  "notifications.column_settings.admin.sign_up": "New sign-ups:",
+  "notifications.column_settings.admin.report": "Raportări noi:",
+  "notifications.column_settings.admin.sign_up": "Înscrieri noi:",
   "notifications.column_settings.alert": "Notificări pe desktop",
   "notifications.column_settings.favourite": "Favorite:",
   "notifications.column_settings.filter_bar.advanced": "Afișează toate categoriile",
@@ -419,7 +416,7 @@
   "notifications.column_settings.status": "Postări noi:",
   "notifications.column_settings.unread_notifications.category": "Notificări necitite",
   "notifications.column_settings.unread_notifications.highlight": "Evidențiază notificările necitite",
-  "notifications.column_settings.update": "Edits:",
+  "notifications.column_settings.update": "Modificări:",
   "notifications.filter.all": "Toate",
   "notifications.filter.boosts": "Distribuiri",
   "notifications.filter.favourites": "Favorite",
@@ -448,74 +445,74 @@
   "poll_button.remove_poll": "Elimină sondajul",
   "privacy.change": "Modifică confidențialitatea postării",
   "privacy.direct.long": "Vizibil doar pentru utilizatorii menționați",
-  "privacy.direct.short": "Direct",
+  "privacy.direct.short": "Doar persoane menționate",
   "privacy.private.long": "Vizibil doar pentru abonați",
-  "privacy.private.short": "Followers-only",
-  "privacy.public.long": "Visible for all",
+  "privacy.private.short": "Doar abonați",
+  "privacy.public.long": "Vizibil pentru toți",
   "privacy.public.short": "Public",
   "privacy.unlisted.long": "Visible for all, but opted-out of discovery features",
   "privacy.unlisted.short": "Nelistat",
-  "privacy_policy.last_updated": "Last updated {date}",
-  "privacy_policy.title": "Privacy Policy",
+  "privacy_policy.last_updated": "Ultima actualizare în data de {date}",
+  "privacy_policy.title": "Politică de confidențialitate",
   "refresh": "Reîncarcă",
   "regeneration_indicator.label": "Se încarcă…",
   "regeneration_indicator.sublabel": "Cronologia ta principală este în curs de pregătire!",
   "relative_time.days": "{number}z",
-  "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.minutes": "{number, plural, one {# minute} other {# minutes}} ago",
-  "relative_time.full.seconds": "{number, plural, one {# second} other {# seconds}} ago",
+  "relative_time.full.days": "acum {number, plural, one {o zi} few {# zile} other {# de zile}}",
+  "relative_time.full.hours": "acum {number, plural, one {o oră} few {# ore} other {# de ore}}",
+  "relative_time.full.just_now": "chiar acum",
+  "relative_time.full.minutes": "acum {number, plural, one {un minut} few {# minute} other {# de minute}}",
+  "relative_time.full.seconds": "acum {number, plural, one {o secundă} few {# secunde} other {# de secunde}}",
   "relative_time.hours": "{number}o",
   "relative_time.just_now": "acum",
   "relative_time.minutes": "{number}m",
   "relative_time.seconds": "{number}s",
   "relative_time.today": "astăzi",
   "reply_indicator.cancel": "Anulează",
-  "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.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.category.title_account": "profile",
-  "report.category.title_status": "post",
-  "report.close": "Done",
-  "report.comment.title": "Is there anything else you think we should know?",
+  "report.block": "Blochează",
+  "report.block_explanation": "Nu îi vei mai vedea postările. Nu va mai putea să îți vadă postările sau să ți se aboneze. Va putea să își dea seama că a fost blocat·ă.",
+  "report.categories.other": "Altele",
+  "report.categories.spam": "Mesaje nedorite",
+  "report.categories.violation": "Conținutul încalcă una sau mai multe dintre regulile serverului",
+  "report.category.subtitle": "Alege varianta care se potrivește cel mai bine",
+  "report.category.title": "Spune-ne care este problema cu acest {type}",
+  "report.category.title_account": "profil",
+  "report.category.title_status": "mesaj",
+  "report.close": "Gata",
+  "report.comment.title": "Mai este ceva important pe care ai vrea să ni-l spui?",
   "report.forward": "Redirecționează către {target}",
   "report.forward_hint": "Acest cont este de pe un alt server. Trimitem o copie anonimă a raportului și acolo?",
-  "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.mute": "Pune pe silențios",
+  "report.mute_explanation": "Nu îi vei mai vedea postările. Va mai putea să îți vadă postările sau să ți se aboneze și nu va putea să își dea seama că a fost pus·ă pe silențios.",
+  "report.next": "Înainte",
   "report.placeholder": "Comentarii adiționale",
-  "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": "Nu-mi place",
+  "report.reasons.dislike_description": "Nu este ceva ce ai vrea să vezi",
+  "report.reasons.other": "Este altceva",
+  "report.reasons.other_description": "Problema nu se încadrează în vreuna dintre categoriile de mai sus",
+  "report.reasons.spam": "Este spam",
+  "report.reasons.spam_description": "Linkuri malițioase, reclame false sau mesaje care se tot repetă",
+  "report.reasons.violation": "Încalcă regulile serverului",
+  "report.reasons.violation_description": "Știi că încalcă anumite reguli specifice",
+  "report.rules.subtitle": "Selectează toate variantele care se aplică",
+  "report.rules.title": "Care reguli sunt încălcate?",
+  "report.statuses.subtitle": "Selectează toate variantele care se aplică",
+  "report.statuses.title": "Există vreo postare care să susțină această raportare?",
   "report.submit": "Trimite",
   "report.target": "Raportează {target}",
-  "report.thanks.take_action": "Here are your options for controlling what you see on Mastodon:",
-  "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_explanation": "You are following this account. To not see their posts in your home feed anymore, unfollow them.",
-  "report_notification.attached_statuses": "{count, plural, one {{count} post} other {{count} posts}} attached",
-  "report_notification.categories.other": "Other",
-  "report_notification.categories.spam": "Spam",
-  "report_notification.categories.violation": "Rule violation",
-  "report_notification.open": "Open report",
+  "report.thanks.take_action": "Aici poți controla ceea ce vezi pe Mastodon:",
+  "report.thanks.take_action_actionable": "Cât timp consultăm raportarea ta, poți să iei măsuri împotriva @{name}:",
+  "report.thanks.title": "Nu vrei să vezi aceste lucruri?",
+  "report.thanks.title_actionable": "Îți mulțumim pentru raportare, o vom analiza în curând.",
+  "report.unfollow": "Dezabonează-te de la @{name}",
+  "report.unfollow_explanation": "Ești abonat acestui cont. Pentru a nu-i mai vedea postările în cronologia ta principală, dezabonează-te.",
+  "report_notification.attached_statuses": "{count, plural, one {o postare legată} few {{count} postări legate} other {{count} de postări legate}}",
+  "report_notification.categories.other": "Altele",
+  "report_notification.categories.spam": "Mesaje nedorite",
+  "report_notification.categories.violation": "Încălcare a regulilor",
+  "report_notification.open": "Deschide raportarea",
   "search.placeholder": "Caută",
-  "search.search_or_paste": "Search or paste URL",
+  "search.search_or_paste": "Caută sau lipește un URL",
   "search_popout.search_format": "Formate pentru căutare avansată",
   "search_popout.tips.full_text": "Textele simple returnează postări pe care le-ai scris, favorizat, impulsionat, sau în care sunt menționate, deasemenea și utilizatorii sau hashtag-urile care se potrivesc.",
   "search_popout.tips.hashtag": "hashtag",
@@ -523,22 +520,22 @@
   "search_popout.tips.text": "Textele simple returnează nume, nume de utilizatori și hashtag-urile care se potrivesc",
   "search_popout.tips.user": "utilizator",
   "search_results.accounts": "Persoane",
-  "search_results.all": "All",
+  "search_results.all": "Toate",
   "search_results.hashtags": "Hashtag-uri",
-  "search_results.nothing_found": "Could not find anything for these search terms",
+  "search_results.nothing_found": "Nu am putut găsi nimic care să corespundă termenilor de căutare",
   "search_results.statuses": "Postări",
   "search_results.statuses_fts_disabled": "Căutarea de postări după conținutul lor nu este activată pe acest server.",
-  "search_results.title": "Search for {q}",
+  "search_results.title": "Caută „{q}”",
   "search_results.total": "{count, number} {count, plural, one {rezultat} other {rezultate}}",
-  "server_banner.about_active_users": "People using this server during the last 30 days (Monthly Active Users)",
-  "server_banner.active_users": "active users",
-  "server_banner.administered_by": "Administered by:",
-  "server_banner.introduction": "{domain} is part of the decentralized social network powered by {mastodon}.",
-  "server_banner.learn_more": "Learn more",
-  "server_banner.server_stats": "Server stats:",
-  "sign_in_banner.create_account": "Create account",
-  "sign_in_banner.sign_in": "Sign in",
-  "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts, or interact from your account on a different server.",
+  "server_banner.about_active_users": "Persoane care au folosit acest server în ultimele 30 de zile (Utilizatori Lunari Activi)",
+  "server_banner.active_users": "utilizatori activi",
+  "server_banner.administered_by": "Administrat de:",
+  "server_banner.introduction": "{domain} face parte din rețeaua socială descentralizată alimentată de {mastodon}.",
+  "server_banner.learn_more": "Află mai multe",
+  "server_banner.server_stats": "Statisticile serverului:",
+  "sign_in_banner.create_account": "Creează-ți un cont",
+  "sign_in_banner.sign_in": "Conectează-te",
+  "sign_in_banner.text": "Conectează-te pentru a te abona la profiluri și haștaguri, pentru a aprecia, distribui și a răspunde postărilor, sau interacționează folosindu-ți contul de pe un alt server.",
   "status.admin_account": "Deschide interfața de moderare pentru @{name}",
   "status.admin_status": "Deschide această stare în interfața de moderare",
   "status.block": "Blochează pe @{name}",
@@ -549,16 +546,16 @@
   "status.delete": "Șterge",
   "status.detailed_status": "Conversația detaliată",
   "status.direct": "Mesaj direct către @{name}",
-  "status.edit": "Edit",
-  "status.edited": "Edited {date}",
-  "status.edited_x_times": "Edited {count, plural, one {{count} time} other {{count} times}}",
+  "status.edit": "Modifică",
+  "status.edited": "Modificat în data de {date}",
+  "status.edited_x_times": "Modificată {count, plural, one {o dată} few {de {count} ori} other {de {count} de ori}}",
   "status.embed": "Înglobează",
   "status.favourite": "Favorite",
-  "status.filter": "Filter this post",
+  "status.filter": "Filtrează această postare",
   "status.filtered": "Sortate",
-  "status.hide": "Hide toot",
-  "status.history.created": "{name} created {date}",
-  "status.history.edited": "{name} edited {date}",
+  "status.hide": "Ascunde postarea",
+  "status.history.created": "creată de {name} pe {date}",
+  "status.history.edited": "modificată de {name} pe {date}",
   "status.load_more": "Încarcă mai multe",
   "status.media_hidden": "Media ascunsă",
   "status.mention": "Menționează pe @{name}",
@@ -575,42 +572,42 @@
   "status.reblogs.empty": "Nimeni nu a impulsionat această postare până acum. Când cineva o va face, va apărea aici.",
   "status.redraft": "Șterge și adaugă la ciorne",
   "status.remove_bookmark": "Îndepărtează marcajul",
-  "status.replied_to": "Replied to {name}",
+  "status.replied_to": "Răspunde-i lui {name}",
   "status.reply": "Răspunde",
   "status.replyAll": "Răspunde la discuție",
   "status.report": "Raportează pe @{name}",
   "status.sensitive_warning": "Conținut sensibil",
   "status.share": "Distribuie",
-  "status.show_filter_reason": "Show anyway",
+  "status.show_filter_reason": "Afișează oricum",
   "status.show_less": "Arată mai puțin",
   "status.show_less_all": "Arată mai puțin pentru toți",
   "status.show_more": "Arată mai mult",
   "status.show_more_all": "Arată mai mult pentru toți",
-  "status.show_original": "Show original",
-  "status.translate": "Translate",
-  "status.translated_from_with": "Translated from {lang} using {provider}",
+  "status.show_original": "Afișează originalul",
+  "status.translate": "Traduce",
+  "status.translated_from_with": "Tradus din {lang} folosind serviciile {provider}",
   "status.uncached_media_warning": "Indisponibil",
   "status.unmute_conversation": "Repornește conversația",
   "status.unpin": "Eliberează din profil",
-  "subscribed_languages.lead": "Only posts in selected languages will appear on your home and list timelines after the change. Select none to receive posts in all languages.",
-  "subscribed_languages.save": "Save changes",
-  "subscribed_languages.target": "Change subscribed languages for {target}",
+  "subscribed_languages.lead": "Doar postări în limbile selectate vor apărea în cronologia ta principală după ce efectuezi modificarea. Alege „niciuna” pentru a primi postări în orice limbă.",
+  "subscribed_languages.save": "Salvează modificările",
+  "subscribed_languages.target": "Modifică limbile abonate pentru {target}",
   "suggestions.dismiss": "Omite sugestia",
   "suggestions.header": "Ai putea fi interesat de…",
   "tabs_bar.federated_timeline": "Global",
   "tabs_bar.home": "Acasă",
   "tabs_bar.local_timeline": "Local",
   "tabs_bar.notifications": "Notificări",
-  "time_remaining.days": "{number, plural, one {# zi} other {# zile}} rămase",
-  "time_remaining.hours": "{number, plural, one {# oră} other {# ore}} rămase",
-  "time_remaining.minutes": "{number, plural, one {# minut} other {# minute}} rămase",
+  "time_remaining.days": "{number, plural, one {o zi rămasă} few {# zile rămase} other {# de zile rămase}}",
+  "time_remaining.hours": "{number, plural, one {o oră rămasă} few {# ore rămase} other {# de ore rămase}}",
+  "time_remaining.minutes": "{number, plural, one {un minut rămas} few {# minute rămase} other {# de minute rămase}}",
   "time_remaining.moments": "Momente rămase",
-  "time_remaining.seconds": "{number, plural, one {# secundă} other {# secunde}} rămase",
+  "time_remaining.seconds": "{number, plural, one {o secundă rămasă} few {# secunde rămase} other {# de secunde rămase}}",
   "timeline_hint.remote_resource_not_displayed": "{resource} de la alte servere nu sunt afișate.",
   "timeline_hint.resources.followers": "Urmăritori",
   "timeline_hint.resources.follows": "Urmăriri",
   "timeline_hint.resources.statuses": "Postări mai vechi",
-  "trends.counter_by_accounts": "{count, plural, one {{counter} person} other {{counter} people}} in the past {days, plural, one {day} other {{days} days}}",
+  "trends.counter_by_accounts": "{count, plural, one {o persoană} few {{counter} persoane} other {{counter} de persoane}} în {days, plural, one {ultima zi} few {ultimele {days} zile} other {ultimele {days} de zile}}",
   "trends.trending_now": "În tendință acum",
   "ui.beforeunload": "Postarea se va pierde dacă părăsești pagina.",
   "units.short.billion": "{count}Mld",
@@ -622,7 +619,7 @@
   "upload_error.poll": "Încărcarea fișierului nu este permisă cu sondaje.",
   "upload_form.audio_description": "Descrie pentru persoanele cu deficiență a auzului",
   "upload_form.description": "Adaugă o descriere pentru persoanele cu deficiențe de vedere",
-  "upload_form.description_missing": "No description added",
+  "upload_form.description_missing": "Nicio descriere adăugată",
   "upload_form.edit": "Modifică",
   "upload_form.thumbnail": "Schimbă miniatura",
   "upload_form.undo": "Șterge",
@@ -638,7 +635,7 @@
   "upload_modal.preparing_ocr": "Se pregătește OCR…",
   "upload_modal.preview_label": "Previzualizare ({ratio})",
   "upload_progress.label": "Se încarcă...",
-  "upload_progress.processing": "Processing…",
+  "upload_progress.processing": "Se procesează…",
   "video.close": "Închide video",
   "video.download": "Descarcă fișierul",
   "video.exit_fullscreen": "Ieși din modul ecran complet",
diff --git a/app/javascript/mastodon/locales/ru.json b/app/javascript/mastodon/locales/ru.json
index ef511918c..011c2d9ba 100644
--- a/app/javascript/mastodon/locales/ru.json
+++ b/app/javascript/mastodon/locales/ru.json
@@ -1,15 +1,15 @@
 {
   "about.blocks": "Модерируемые серверы",
-  "about.contact": "Контакты:",
-  "about.disclaimer": "Mastodon — бесплатное программным обеспечением с открытым исходным кодом и торговой маркой Mastodon gGmbH.",
-  "about.domain_blocks.no_reason_available": "Reason not available",
+  "about.contact": "Связаться:",
+  "about.disclaimer": "Mastodon — свободное программное обеспечение с открытым исходным кодом и торговая марка Mastodon gGmbH.",
+  "about.domain_blocks.no_reason_available": "Причина не указана",
   "about.domain_blocks.preamble": "Mastodon обычно позволяет просматривать содержимое и взаимодействовать с другими пользователями любых серверов в Федиверсе. Вот исключения, сделанные конкретно для этого сервера.",
-  "about.domain_blocks.silenced.explanation": "You will generally not see profiles and content from this server, unless you explicitly look it up or opt into it by following.",
-  "about.domain_blocks.silenced.title": "Limited",
-  "about.domain_blocks.suspended.explanation": "No data from this server will be processed, stored or exchanged, making any interaction or communication with users from this server impossible.",
-  "about.domain_blocks.suspended.title": "Suspended",
-  "about.not_available": "This information has not been made available on this server.",
-  "about.powered_by": "Децентрализованные социальные сети на базе {mastodon}",
+  "about.domain_blocks.silenced.explanation": "Как правило, вы не увидите профили и контент с этого сервера, если вы явно не будете их искать или не подпишетесь на них.",
+  "about.domain_blocks.silenced.title": "Ограничивается",
+  "about.domain_blocks.suspended.explanation": "Никакие данные с этого сервера не будут обрабатываться, храниться или обмениваться, что делает невозможным любое взаимодействие или связь с пользователями с этого сервера.",
+  "about.domain_blocks.suspended.title": "Заблокирован",
+  "about.not_available": "Эта информация не указана на данном сервере.",
+  "about.powered_by": "Децентрализованная социальная сеть на базе {mastodon}",
   "about.rules": "Правила сервера",
   "account.account_note_header": "Заметка",
   "account.add_or_remove_from_list": "Управление списками",
@@ -17,18 +17,18 @@
   "account.badges.group": "Группа",
   "account.block": "Заблокировать @{name}",
   "account.block_domain": "Заблокировать {domain}",
-  "account.blocked": "Заблокирован(а)",
+  "account.blocked": "Заблокировано",
   "account.browse_more_on_origin_server": "Посмотреть в оригинальном профиле",
-  "account.cancel_follow_request": "Withdraw follow request",
+  "account.cancel_follow_request": "Отозвать запрос на подписку",
   "account.direct": "Написать @{name}",
   "account.disable_notifications": "Не уведомлять о постах от @{name}",
   "account.domain_blocked": "Домен заблокирован",
   "account.edit_profile": "Редактировать профиль",
   "account.enable_notifications": "Уведомлять о постах от @{name}",
   "account.endorse": "Рекомендовать в профиле",
-  "account.featured_tags.last_status_at": "Last post on {date}",
-  "account.featured_tags.last_status_never": "No posts",
-  "account.featured_tags.title": "{name}'s featured hashtags",
+  "account.featured_tags.last_status_at": "Последний пост {date}",
+  "account.featured_tags.last_status_never": "Нет постов",
+  "account.featured_tags.title": "Избранные хэштеги {name}",
   "account.follow": "Подписаться",
   "account.followers": "Подписчики",
   "account.followers.empty": "На этого пользователя пока никто не подписан.",
@@ -39,17 +39,17 @@
   "account.follows_you": "Подписан(а) на вас",
   "account.go_to_profile": "Перейти к профилю",
   "account.hide_reblogs": "Скрыть продвижения от @{name}",
-  "account.joined_short": "Joined",
+  "account.joined_short": "Присоединился",
   "account.languages": "Изменить языки подписки",
   "account.link_verified_on": "Владение этой ссылкой было проверено {date}",
   "account.locked_info": "Это закрытый аккаунт. Его владелец вручную одобряет подписчиков.",
   "account.media": "Медиа",
   "account.mention": "Упомянуть @{name}",
-  "account.moved_to": "{name} has indicated that their new account is now:",
+  "account.moved_to": "У {name} теперь новый аккаунт:",
   "account.mute": "Игнорировать @{name}",
   "account.mute_notifications": "Игнорировать уведомления от @{name}",
   "account.muted": "Игнорируется",
-  "account.open_original_page": "Open original page",
+  "account.open_original_page": "Открыть исходную страницу",
   "account.posts": "Посты",
   "account.posts_with_replies": "Посты и ответы",
   "account.report": "Пожаловаться на @{name}",
@@ -83,7 +83,7 @@
   "bundle_column_error.copy_stacktrace": "Скопировать отчет об ошибке",
   "bundle_column_error.error.body": "Запрошенная страница не может быть отображена. Это может быть вызвано ошибкой в нашем коде или проблемой совместимости браузера.",
   "bundle_column_error.error.title": "О нет!",
-  "bundle_column_error.network.body": "There was an error when trying to load this page. This could be due to a temporary problem with your internet connection or this server.",
+  "bundle_column_error.network.body": "При загрузке этой страницы произошла ошибка. Это может быть связано с Вашим Интернет-соединением или неполадками на сервере.",
   "bundle_column_error.network.title": "Ошибка сети",
   "bundle_column_error.retry": "Попробовать снова",
   "bundle_column_error.return": "Вернуться на главную",
@@ -92,10 +92,10 @@
   "bundle_modal_error.close": "Закрыть",
   "bundle_modal_error.message": "Что-то пошло не так при загрузке этого компонента.",
   "bundle_modal_error.retry": "Попробовать снова",
-  "closed_registrations.other_server_instructions": "Since Mastodon is decentralized, you can create an account on another server and still interact with this one.",
-  "closed_registrations_modal.description": "Creating an account on {domain} is currently not possible, but please keep in mind that you do not need an account specifically on {domain} to use Mastodon.",
-  "closed_registrations_modal.find_another_server": "Найдите другой сервер",
-  "closed_registrations_modal.preamble": "Mastodon децентрализован, поэтому независимо от того, где вы создадите свою учетную запись, вы сможете следить и взаимодействовать с кем угодно на этом сервере. Вы даже можете разместить его самостоятельно!",
+  "closed_registrations.other_server_instructions": "Поскольку Mastodon децентрализован, вы можете создать учетную запись на другом сервере и всё ещё взаимодействовать с этим сервером.",
+  "closed_registrations_modal.description": "Создание учетной записи на {domain} в настоящее время невозможно, но имейте в виду, что для использования Mastodon вам не нужен аккаунт именно на {domain}.",
+  "closed_registrations_modal.find_another_server": "Найти другой сервер",
+  "closed_registrations_modal.preamble": "Mastodon децентрализован, поэтому независимо от того, где вы создадите свою учетную запись, вы сможете следить и взаимодействовать с кем угодно на этом сервере. Вы даже можете разместить свой собственный сервер!",
   "closed_registrations_modal.title": "Регистрация в Mastodon",
   "column.about": "О проекте",
   "column.blocks": "Заблокированные пользователи",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Разрешить выбор нескольких вариантов",
   "compose_form.poll.switch_to_single": "Переключить в режим выбора одного ответа",
   "compose_form.publish": "Опубликовать",
+  "compose_form.publish_form": "Опубликовать",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Сохранить",
   "compose_form.sensitive.hide": "{count, plural, one {Отметить медифайл как деликатный} other {Отметить медифайлы как деликатные}}",
@@ -186,9 +187,9 @@
   "dismissable_banner.community_timeline": "Это самые последние публичные сообщения от людей, чьи учетные записи размещены в {domain}.",
   "dismissable_banner.dismiss": "Закрыть",
   "dismissable_banner.explore_links": "Об этих новостях прямо сейчас говорят люди на этом и других серверах децентрализованной сети.",
-  "dismissable_banner.explore_statuses": "Эти сообщения с этого и других серверов в децентрализованной сети, сейчас набирают популярность на этом сервере.",
+  "dismissable_banner.explore_statuses": "Эти сообщения с этого и других серверов в децентрализованной сети сейчас набирают популярность на этом сервере.",
   "dismissable_banner.explore_tags": "Эти хэштеги привлекают людей на этом и других серверах децентрализованной сети прямо сейчас.",
-  "dismissable_banner.public_timeline": "These are the most recent public posts from people on this and other servers of the decentralized network that this server knows about.",
+  "dismissable_banner.public_timeline": "Это самые последние публичные посты от людей на этом и других серверах децентрализованной сети, о которых знает этот сервер.",
   "embed.instructions": "Встройте этот пост на свой сайт, скопировав следующий код:",
   "embed.preview": "Так это будет выглядеть:",
   "emoji_button.activity": "Занятия",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Скопировать диагностическую информацию",
   "errors.unexpected_crash.report_issue": "Сообщить о проблеме",
   "explore.search_results": "Результаты поиска",
-  "explore.suggested_follows": "Для вас",
   "explore.title": "Обзор",
-  "explore.trending_links": "Новости",
-  "explore.trending_statuses": "Посты",
-  "explore.trending_tags": "Хэштеги",
   "filter_modal.added.context_mismatch_explanation": "Эта категория не применяется к контексту, в котором вы получили доступ к этому посту. Если вы хотите, чтобы пост был отфильтрован в этом контексте, вам придётся отредактировать фильтр.",
   "filter_modal.added.context_mismatch_title": "Несоответствие контекста!",
   "filter_modal.added.expired_explanation": "Эта категория фильтра устарела, вам нужно изменить дату окончания фильтра, чтобы применить его.",
@@ -260,9 +257,9 @@
   "follow_recommendations.lead": "Посты от людей, на которых вы подписаны, будут отображаться в вашей домашней ленте в хронологическом порядке. Не бойтесь ошибиться — вы так же легко сможете отписаться от них в любое время!",
   "follow_request.authorize": "Авторизовать",
   "follow_request.reject": "Отказать",
-  "follow_requests.unlocked_explanation": "Этот запрос отправлен с учётной записи, для которой администрация {domain} включила ручную проверку подписок.",
+  "follow_requests.unlocked_explanation": "Хотя ваша учетная запись не закрыта, команда {domain} подумала, что вы захотите просмотреть запросы от этих учетных записей вручную.",
   "footer.about": "О проекте",
-  "footer.directory": "Profiles directory",
+  "footer.directory": "Каталог профилей",
   "footer.get_app": "Скачать приложение",
   "footer.invite": "Пригласить людей",
   "footer.keyboard_shortcuts": "Сочетания клавиш",
@@ -286,18 +283,18 @@
   "home.column_settings.show_replies": "Показывать ответы",
   "home.hide_announcements": "Скрыть объявления",
   "home.show_announcements": "Показать объявления",
-  "interaction_modal.description.favourite": "With an account on Mastodon, you can favourite this post to let the author know you appreciate it and save it for later.",
-  "interaction_modal.description.follow": "With an account on Mastodon, you can follow {name} to receive their posts in your home feed.",
-  "interaction_modal.description.reblog": "With an account on Mastodon, you can boost this post to share it with your own followers.",
-  "interaction_modal.description.reply": "With an account on Mastodon, you can respond to this post.",
+  "interaction_modal.description.favourite": "С учётной записью Mastodon, вы можете добавить этот пост в избранное, чтобы сохранить его на будущее и дать автору знать, что пост вам понравился.",
+  "interaction_modal.description.follow": "С учётной записью Mastodon вы можете подписаться на {name}, чтобы получать их посты в своей домашней ленте.",
+  "interaction_modal.description.reblog": "С учётной записью Mastodon, вы можете продвинуть этот пост, чтобы поделиться им со своими подписчиками.",
+  "interaction_modal.description.reply": "Вы можете ответить на этот пост с учётной записью Mastodon.",
   "interaction_modal.on_another_server": "На другом сервере",
   "interaction_modal.on_this_server": "На этом сервере",
   "interaction_modal.other_server_instructions": "Скопируйте и вставьте этот URL в поле поиска вашего любимого приложения Mastodon или веб-интерфейс вашего сервера Mastodon.",
   "interaction_modal.preamble": "Поскольку Mastodon децентрализован, вы можете использовать существующую учётную запись, размещенную на другом сервере Mastodon или совместимой платформе, если у вас нет учётной записи на этом сервере.",
-  "interaction_modal.title.favourite": "Favourite {name}'s post",
+  "interaction_modal.title.favourite": "Добавить пост {name} в избранное",
   "interaction_modal.title.follow": "Подписаться на {name}",
-  "interaction_modal.title.reblog": "Boost {name}'s post",
-  "interaction_modal.title.reply": "Reply to {name}'s post",
+  "interaction_modal.title.reblog": "Продвинуть публикацию {name}",
+  "interaction_modal.title.reply": "Ответить на пост {name}",
   "intervals.full.days": "{number, plural, one {# день} few {# дня} other {# дней}}",
   "intervals.full.hours": "{number, plural, one {# час} few {# часа} other {# часов}}",
   "intervals.full.minutes": "{number, plural, one {# минута} few {# минуты} other {# минут}}",
@@ -360,12 +357,12 @@
   "media_gallery.toggle_visible": "Показать/скрыть {number, plural, =1 {изображение} other {изображения}}",
   "missing_indicator.label": "Не найдено",
   "missing_indicator.sublabel": "Запрашиваемый ресурс не найден",
-  "moved_to_account_banner.text": "Your account {disabledAccount} is currently disabled because you moved to {movedToAccount}.",
+  "moved_to_account_banner.text": "Ваша учетная запись {disabledAccount} в настоящее время заморожена, потому что вы переехали на {movedToAccount}.",
   "mute_modal.duration": "Продолжительность",
   "mute_modal.hide_notifications": "Скрыть уведомления от этого пользователя?",
   "mute_modal.indefinite": "Не определена",
-  "navigation_bar.about": "About",
-  "navigation_bar.blocks": "Список блокировки",
+  "navigation_bar.about": "О проекте",
+  "navigation_bar.blocks": "Заблокированные пользователи",
   "navigation_bar.bookmarks": "Закладки",
   "navigation_bar.community_timeline": "Локальная лента",
   "navigation_bar.compose": "Создать новый пост",
@@ -387,7 +384,7 @@
   "navigation_bar.public_timeline": "Глобальная лента",
   "navigation_bar.search": "Поиск",
   "navigation_bar.security": "Безопасность",
-  "not_signed_in_indicator.not_signed_in": "You need to sign in to access this resource.",
+  "not_signed_in_indicator.not_signed_in": "Войдите в систему, чтобы получить доступ к ресурсу.",
   "notification.admin.report": "{name} сообщил о {target}",
   "notification.admin.sign_up": "{name} зарегистрирован",
   "notification.favourite": "{name} добавил(а) ваш пост в избранное",
@@ -513,9 +510,9 @@
   "report_notification.categories.other": "Прочее",
   "report_notification.categories.spam": "Спам",
   "report_notification.categories.violation": "Нарушение правил",
-  "report_notification.open": "Подать жалобу",
+  "report_notification.open": "Открыть жалобу",
   "search.placeholder": "Поиск",
-  "search.search_or_paste": "Поиск или вставка URL-адреса",
+  "search.search_or_paste": "Поиск (или вставьте URL)",
   "search_popout.search_format": "Продвинутый формат поиска",
   "search_popout.tips.full_text": "Поиск по простому тексту отобразит посты, которые вы написали, добавили в избранное, продвинули или в которых были упомянуты, а также подходящие имена пользователей и хэштеги.",
   "search_popout.tips.hashtag": "хэштег",
@@ -530,7 +527,7 @@
   "search_results.statuses_fts_disabled": "Поиск постов по их содержанию не поддерживается данным сервером Mastodon.",
   "search_results.title": "Поиск {q}",
   "search_results.total": "{count, number} {count, plural, one {результат} few {результата} many {результатов} other {результатов}}",
-  "server_banner.about_active_users": "People using this server during the last 30 days (Monthly Active Users)",
+  "server_banner.about_active_users": "Люди, заходившие на этот сервер за последние 30 дней (ежемесячные активные пользователи)",
   "server_banner.active_users": "активные пользователи",
   "server_banner.administered_by": "Управляется:",
   "server_banner.introduction": "{domain} является частью децентрализованной социальной сети, основанной на {mastodon}.",
@@ -575,7 +572,7 @@
   "status.reblogs.empty": "Никто ещё не продвинул этот пост. Как только кто-то это сделает, они появятся здесь.",
   "status.redraft": "Удалить и исправить",
   "status.remove_bookmark": "Убрать из закладок",
-  "status.replied_to": "Replied to {name}",
+  "status.replied_to": "Ответил(а) {name}",
   "status.reply": "Ответить",
   "status.replyAll": "Ответить всем",
   "status.report": "Пожаловаться",
@@ -588,7 +585,7 @@
   "status.show_more_all": "Развернуть все спойлеры в ветке",
   "status.show_original": "Показать оригинал",
   "status.translate": "Перевод",
-  "status.translated_from_with": "Translated from {lang} using {provider}",
+  "status.translated_from_with": "Переведено с {lang}, используя {provider}",
   "status.uncached_media_warning": "Невозможно отобразить файл",
   "status.unmute_conversation": "Не игнорировать обсуждение",
   "status.unpin": "Открепить от профиля",
diff --git a/app/javascript/mastodon/locales/sa.json b/app/javascript/mastodon/locales/sa.json
index 01ed9e336..0507010cc 100644
--- a/app/javascript/mastodon/locales/sa.json
+++ b/app/javascript/mastodon/locales/sa.json
@@ -1,16 +1,16 @@
 {
-  "about.blocks": "Moderated servers",
-  "about.contact": "Contact:",
-  "about.disclaimer": "Mastodon is free, open-source software, and a trademark of Mastodon gGmbH.",
-  "about.domain_blocks.no_reason_available": "Reason not available",
-  "about.domain_blocks.preamble": "Mastodon generally allows you to view content from and interact with users from any other server in the fediverse. These are the exceptions that have been made on this particular server.",
-  "about.domain_blocks.silenced.explanation": "You will generally not see profiles and content from this server, unless you explicitly look it up or opt into it by following.",
-  "about.domain_blocks.silenced.title": "Limited",
-  "about.domain_blocks.suspended.explanation": "No data from this server will be processed, stored or exchanged, making any interaction or communication with users from this server impossible.",
-  "about.domain_blocks.suspended.title": "Suspended",
-  "about.not_available": "This information has not been made available on this server.",
-  "about.powered_by": "Decentralized social media powered by {mastodon}",
-  "about.rules": "Server rules",
+  "about.blocks": "प्रशमितानि सर्वरः",
+  "about.contact": "सम्पर्कः:",
+  "about.disclaimer": "मास्तोडनस्ति निश्शुल्को विवृत्तस्तन्त्रांशः, मास्तोडन् gGmbH इत्यस्य च व्यापारमुद्रा।",
+  "about.domain_blocks.no_reason_available": "कारणं न लभ्यते",
+  "about.domain_blocks.preamble": "मास्तोडन्सामान्यतया फेडिभर्सि अन्यस्मात्सर्वरादुपयोक्तृभ्यस्सामग्रीं द्रष्टुम्, तैस्संवादं कर्तुञ्च शक्नोति । एतानि वर्जनानि अस्मिन्सर्वरि कृतास्सन्ति।",
+  "about.domain_blocks.silenced.explanation": "सामान्यतया अस्मात्सर्वरात्प्रोफाइल्सामग्रीञ्च न पश्यसि, यावत्स्पष्टतया तन्न पश्यसि अथवा अनुसरणं कृत्वा तस्मिन्विकल्पं न करोति ।",
+  "about.domain_blocks.silenced.title": "निबद्धम्",
+  "about.domain_blocks.suspended.explanation": "अस्मात्सर्वरः कोऽपि दत्तांशस्संसाधितः, संगृहीतो वा आदानप्रदानो वा न भविष्यति, येन अस्मात्सर्वरः उपयोक्तृभिः किमपि अन्तरक्रिया वा सञ्चारो वा असम्भवति।",
+  "about.domain_blocks.suspended.title": "प्रलम्बितः",
+  "about.not_available": "अस्मिन्सर्वरि अस्यास्सूचनायाः उपलभ्यो न कृतः।",
+  "about.powered_by": "अकेन्द्रीयितसामाजिकजालकर्म {mastodon} द्वारा आधारितम्",
+  "about.rules": "सर्वरो नियमाः",
   "account.account_note_header": "टीका",
   "account.add_or_remove_from_list": "युज्यतां / नश्यतां सूच्याः",
   "account.badges.bot": "यन्त्रम्",
@@ -19,37 +19,37 @@
   "account.block_domain": "अवरुध्यतां प्रदेशः {domain}",
   "account.blocked": "अवरुद्धम्",
   "account.browse_more_on_origin_server": "अधिकं मूलव्यक्तिगतविवरणे दृश्यताम्",
-  "account.cancel_follow_request": "Withdraw follow request",
+  "account.cancel_follow_request": "अनुसरणयाचनामपनय",
   "account.direct": "प्रत्यक्षसन्देशः @{name}",
-  "account.disable_notifications": "Stop notifying me when @{name} posts",
+  "account.disable_notifications": "यदा @{name} स्थापयति तदा माम्मा ज्ञापय",
   "account.domain_blocked": "प्रदेशो निषिद्धः",
   "account.edit_profile": "सम्पाद्यताम्",
-  "account.enable_notifications": "Notify me when @{name} posts",
+  "account.enable_notifications": "यदा @{name} स्थापयति तदा मां ज्ञापय",
   "account.endorse": "व्यक्तिगतविवरणे वैशिष्ट्यम्",
-  "account.featured_tags.last_status_at": "Last post on {date}",
-  "account.featured_tags.last_status_never": "No posts",
-  "account.featured_tags.title": "{name}'s featured hashtags",
+  "account.featured_tags.last_status_at": "{date} दिने गतस्थापनम्",
+  "account.featured_tags.last_status_never": "न स्थापनम्",
+  "account.featured_tags.title": "{name} इत्यस्य विशेषहैस्टैगः",
   "account.follow": "अनुस्रियताम्",
   "account.followers": "अनुसर्तारः",
   "account.followers.empty": "नाऽनुसर्तारो वर्तन्ते",
   "account.followers_counter": "{count, plural, one {{counter} अनुसर्ता} two {{counter} अनुसर्तारौ} other {{counter} अनुसर्तारः}}",
-  "account.following": "Following",
+  "account.following": "अनुसरति",
   "account.following_counter": "{count, plural, one {{counter} अनुसृतः} two {{counter} अनुसृतौ} other {{counter} अनुसृताः}}",
   "account.follows.empty": "न कोऽप्यनुसृतो वर्तते",
   "account.follows_you": "त्वामनुसरति",
-  "account.go_to_profile": "Go to profile",
+  "account.go_to_profile": "प्रोफायिलं गच्छ",
   "account.hide_reblogs": "@{name} मित्रस्य प्रकाशनानि छिद्यन्ताम्",
-  "account.joined_short": "Joined",
-  "account.languages": "Change subscribed languages",
+  "account.joined_short": "युक्तम्",
+  "account.languages": "निवेशितभाषां परिवर्तय",
   "account.link_verified_on": "अन्तर्जालस्थानस्यास्य स्वामित्वं परीक्षितमासीत् {date} दिने",
   "account.locked_info": "एतस्या लेखायाः गुह्यता \"निषिद्ध\"इति वर्तते । स्वामी स्वयञ्चिनोति कोऽनुसर्ता भवितुमर्हतीति ।",
   "account.media": "सामग्री",
   "account.mention": "उल्लिख्यताम् @{name}",
-  "account.moved_to": "{name} has indicated that their new account is now:",
+  "account.moved_to": "{name} द्वारा सूचितं यत्तस्य नव एकाउण्ट् सद्यः अस्ति :",
   "account.mute": "निःशब्दम् @{name}",
   "account.mute_notifications": "@{name} सूचनाः निष्क्रियन्ताम्",
   "account.muted": "निःशब्दम्",
-  "account.open_original_page": "Open original page",
+  "account.open_original_page": "मूलपृष्ठमुट्घाटय",
   "account.posts": "दौत्यानि",
   "account.posts_with_replies": "दौत्यानि प्रत्युत्तराणि च",
   "account.report": "आविद्यताम् @{name}",
@@ -59,36 +59,36 @@
   "account.statuses_counter": "{count, plural, one {{counter} दौत्यम्} two {{counter} दौत्ये} other {{counter} दौत्यानि}}",
   "account.unblock": "निषेधता नश्यताम् @{name}",
   "account.unblock_domain": "प्रदेशनिषेधता नश्यताम् {domain}",
-  "account.unblock_short": "Unblock",
+  "account.unblock_short": "अनवरुन्धि",
   "account.unendorse": "व्यक्तिगतविवरणे मा प्रकाश्यताम्",
   "account.unfollow": "नश्यतामनुसरणम्",
   "account.unmute": "सशब्दम् @{name}",
   "account.unmute_notifications": "@{name} सूचनाः सक्रियन्ताम्",
-  "account.unmute_short": "Unmute",
+  "account.unmute_short": "अनमूकीकुरु",
   "account_note.placeholder": "टीकायोजनार्थं नुद्यताम्",
-  "admin.dashboard.daily_retention": "User retention rate by day after sign-up",
-  "admin.dashboard.monthly_retention": "User retention rate by month after sign-up",
-  "admin.dashboard.retention.average": "Average",
-  "admin.dashboard.retention.cohort": "Sign-up month",
-  "admin.dashboard.retention.cohort_size": "New users",
+  "admin.dashboard.daily_retention": "पञ्जीकरणस्यानन्तरमुपयोक्तृधारणदरो दिनेन",
+  "admin.dashboard.monthly_retention": "पञ्जीकरणस्यानन्तरमुपयोक्तृधारणदरो मासेन",
+  "admin.dashboard.retention.average": "मध्यत्वम्",
+  "admin.dashboard.retention.cohort": "पञ्जीकरणमासः",
+  "admin.dashboard.retention.cohort_size": "नवोपभोक्तारः",
   "alert.rate_limited.message": "{retry_time, time, medium}. समयात् पश्चात् प्रयतताम्",
   "alert.rate_limited.title": "सीमितगतिः",
   "alert.unexpected.message": "अनपेक्षितदोषो जातः ।",
   "alert.unexpected.title": "अरे !",
   "announcement.announcement": "उद्घोषणा",
-  "attachments_list.unprocessed": "(unprocessed)",
-  "audio.hide": "Hide audio",
+  "attachments_list.unprocessed": "(अप्रकृतम्)",
+  "audio.hide": "ध्वनिं प्रच्छादय",
   "autosuggest_hashtag.per_week": "{count} प्रतिसप्ताहे",
   "boost_modal.combo": "{combo} अत्र स्प्रष्टुं शक्यते, त्यक्तुमेतमन्यस्मिन् समये",
-  "bundle_column_error.copy_stacktrace": "Copy error report",
-  "bundle_column_error.error.body": "The requested page could not be rendered. It could be due to a bug in our code, or a browser compatibility issue.",
-  "bundle_column_error.error.title": "Oh, no!",
-  "bundle_column_error.network.body": "There was an error when trying to load this page. This could be due to a temporary problem with your internet connection or this server.",
-  "bundle_column_error.network.title": "Network error",
+  "bundle_column_error.copy_stacktrace": "त्रुट्यावेदनं प्रतिलिपिङ्कुरु",
+  "bundle_column_error.error.body": "अनुरोधितं पृष्ठं प्रतिपादयितुं न शक्यते। अस्माकं कोडि दोषस्य कारणेन, अथवा ब्राउजर् संगततायास्समस्यायाः कारणेन भवितुमर्हति।",
+  "bundle_column_error.error.title": "हा हन्त!",
+  "bundle_column_error.network.body": "पृष्ठमिदं लोडङ्कर्तुं प्रयतमाने त्रुटिरभवत्। एतत्तव अन्तर्जालसम्पर्कस्य अथवा अस्य सर्वरोऽस्थायिन्यास्समस्यायाः कारणेन भवितुमर्हति।",
+  "bundle_column_error.network.title": "अन्तर्जालस्य त्रुटिः",
   "bundle_column_error.retry": "पुनः यतताम्",
-  "bundle_column_error.return": "Go back home",
-  "bundle_column_error.routing.body": "The requested page could not be found. Are you sure the URL in the address bar is correct?",
-  "bundle_column_error.routing.title": "404",
+  "bundle_column_error.return": "गृहं प्रतिगच्छ",
+  "bundle_column_error.routing.body": "अनुरोधितं पृष्ठं न लब्धम्। URL सङ्केतं सम्यगस्तीति कृपया दृढीकुरु।",
+  "bundle_column_error.routing.title": "४०४",
   "bundle_modal_error.close": "पिधीयताम्",
   "bundle_modal_error.message": "आरोपणे कश्चन दोषो जातः",
   "bundle_modal_error.retry": "पुनः यतताम्",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "मतदानं परिवर्तयित्वा बहुवैकल्पिकमतदानं क्रियताम्",
   "compose_form.poll.switch_to_single": "मतदानं परिवर्तयित्वा निर्विकल्पमतदानं क्रियताम्",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "संवेदनशीलसामग्रीत्यङ्यताम्",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "Report issue",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/sc.json b/app/javascript/mastodon/locales/sc.json
index ea927e364..4990d6813 100644
--- a/app/javascript/mastodon/locales/sc.json
+++ b/app/javascript/mastodon/locales/sc.json
@@ -1,16 +1,16 @@
 {
-  "about.blocks": "Moderated servers",
-  "about.contact": "Contact:",
-  "about.disclaimer": "Mastodon is free, open-source software, and a trademark of Mastodon gGmbH.",
-  "about.domain_blocks.no_reason_available": "Reason not available",
-  "about.domain_blocks.preamble": "Mastodon generally allows you to view content from and interact with users from any other server in the fediverse. These are the exceptions that have been made on this particular server.",
-  "about.domain_blocks.silenced.explanation": "You will generally not see profiles and content from this server, unless you explicitly look it up or opt into it by following.",
-  "about.domain_blocks.silenced.title": "Limited",
+  "about.blocks": "Serbidores moderados",
+  "about.contact": "Contatu:",
+  "about.disclaimer": "Mastodon est software de còdigu lìberu e unu màrchiu de Mastodon gGmbH.",
+  "about.domain_blocks.no_reason_available": "Rasone no a disponimentu",
+  "about.domain_blocks.preamble": "Mastodon ti permitit de bìdere su cuntenutu de utentes de cale si siat àteru serbidore de su fediversu. Custas sunt etzetziones fatas in custu serbidore ispetzìficu.",
+  "about.domain_blocks.silenced.explanation": "As a bìere perfilos e contenutos dae custu serbidore sceti chi ddos chircas o detzidas de ddu sighere.",
+  "about.domain_blocks.silenced.title": "Limitadu",
   "about.domain_blocks.suspended.explanation": "No data from this server will be processed, stored or exchanged, making any interaction or communication with users from this server impossible.",
-  "about.domain_blocks.suspended.title": "Suspended",
+  "about.domain_blocks.suspended.title": "Suspèndidu",
   "about.not_available": "This information has not been made available on this server.",
   "about.powered_by": "Decentralized social media powered by {mastodon}",
-  "about.rules": "Server rules",
+  "about.rules": "Règulas de su serbidore",
   "account.account_note_header": "Nota",
   "account.add_or_remove_from_list": "Agiunghe o boga dae is listas",
   "account.badges.bot": "Robot",
@@ -33,13 +33,13 @@
   "account.followers": "Sighiduras",
   "account.followers.empty": "Nemos sighit ancora custa persone.",
   "account.followers_counter": "{count, plural, one {{counter} sighidura} other {{counter} sighiduras}}",
-  "account.following": "Following",
+  "account.following": "Sighende",
   "account.following_counter": "{count, plural, one {Sighende a {counter}} other {Sighende a {counter}}}",
   "account.follows.empty": "Custa persone non sighit ancora a nemos.",
   "account.follows_you": "Ti sighit",
   "account.go_to_profile": "Go to profile",
   "account.hide_reblogs": "Cua is cumpartziduras de @{name}",
-  "account.joined_short": "Joined",
+  "account.joined_short": "At aderidu",
   "account.languages": "Change subscribed languages",
   "account.link_verified_on": "Sa propiedade de custu ligòngiu est istada controllada su {date}",
   "account.locked_info": "S'istadu de riservadesa de custu contu est istadu cunfiguradu comente blocadu. Sa persone chi tenet sa propiedade revisionat a manu chie dda podet sighire.",
@@ -77,14 +77,14 @@
   "alert.unexpected.title": "Oh!",
   "announcement.announcement": "Annùntziu",
   "attachments_list.unprocessed": "(unprocessed)",
-  "audio.hide": "Hide audio",
+  "audio.hide": "Cua s'àudio",
   "autosuggest_hashtag.per_week": "{count} a sa chida",
   "boost_modal.combo": "Podes incarcare {combo} pro brincare custu sa borta chi benit",
   "bundle_column_error.copy_stacktrace": "Copy error report",
   "bundle_column_error.error.body": "The requested page could not be rendered. It could be due to a bug in our code, or a browser compatibility issue.",
   "bundle_column_error.error.title": "Oh, no!",
   "bundle_column_error.network.body": "There was an error when trying to load this page. This could be due to a temporary problem with your internet connection or this server.",
-  "bundle_column_error.network.title": "Network error",
+  "bundle_column_error.network.title": "Faddina de connessione",
   "bundle_column_error.retry": "Torra·bi a proare",
   "bundle_column_error.return": "Go back home",
   "bundle_column_error.routing.body": "The requested page could not be found. Are you sure the URL in the address bar is correct?",
@@ -97,11 +97,11 @@
   "closed_registrations_modal.find_another_server": "Find another server",
   "closed_registrations_modal.preamble": "Mastodon is decentralized, so no matter where you create your account, you will be able to follow and interact with anyone on this server. You can even self-host it!",
   "closed_registrations_modal.title": "Signing up on Mastodon",
-  "column.about": "About",
+  "column.about": "Informatziones",
   "column.blocks": "Persones blocadas",
   "column.bookmarks": "Sinnalibros",
   "column.community": "Lìnia de tempus locale",
-  "column.direct": "Direct messages",
+  "column.direct": "Messàgios diretos",
   "column.directory": "Nàviga in is profilos",
   "column.domain_blocks": "Domìnios blocados",
   "column.favourites": "Preferidos",
@@ -123,7 +123,7 @@
   "community.column_settings.local_only": "Isceti locale",
   "community.column_settings.media_only": "Isceti multimediale",
   "community.column_settings.remote_only": "Isceti remotu",
-  "compose.language.change": "Change language",
+  "compose.language.change": "Càmbia sa limba",
   "compose.language.search": "Search languages...",
   "compose_form.direct_message_warning_learn_more": "Àteras informatziones",
   "compose_form.encryption_warning": "Posts on Mastodon are not end-to-end encrypted. Do not share any dangerous information over Mastodon.",
@@ -137,7 +137,8 @@
   "compose_form.poll.remove_option": "Boga custa optzione",
   "compose_form.poll.switch_to_multiple": "Muda su sondàgiu pro permìtere multi-optziones",
   "compose_form.poll.switch_to_single": "Muda su sondàgiu pro permìtere un'optzione isceti",
-  "compose_form.publish": "Publish",
+  "compose_form.publish": "Pùblica",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "{count, plural, one {Marca elementu multimediale comente a sensìbile} other {Marca elementos multimediales comente sensìbiles}}",
@@ -233,12 +234,8 @@
   "error.unexpected_crash.next_steps_addons": "Proa a ddos disabilitare e torra a carrigare sa pàgina. Si custu no acontzat su problema, podes chircare de impreare Mastodon in unu navigadore diferente o in un'aplicatzione nativa.",
   "errors.unexpected_crash.copy_stacktrace": "Còpia stacktrace in punta de billete",
   "errors.unexpected_crash.report_issue": "Sinnala unu problema",
-  "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
+  "explore.search_results": "Resurtados de sa chirca",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
@@ -249,7 +246,7 @@
   "filter_modal.added.short_explanation": "This post has been added to the following filter category: {title}.",
   "filter_modal.added.title": "Filter added!",
   "filter_modal.select_filter.context_mismatch": "does not apply to this context",
-  "filter_modal.select_filter.expired": "expired",
+  "filter_modal.select_filter.expired": "iscadidu",
   "filter_modal.select_filter.prompt_new": "New category: {name}",
   "filter_modal.select_filter.search": "Search or create",
   "filter_modal.select_filter.subtitle": "Use an existing category or create a new one",
@@ -261,12 +258,12 @@
   "follow_request.authorize": "Autoriza",
   "follow_request.reject": "Refuda",
   "follow_requests.unlocked_explanation": "Fintzas si su contu tuo no est blocadu, su personale de {domain} at pensadu chi forsis bolias revisionare a manu is rechestas de custos contos.",
-  "footer.about": "About",
+  "footer.about": "Informatziones",
   "footer.directory": "Profiles directory",
   "footer.get_app": "Get the app",
-  "footer.invite": "Invite people",
+  "footer.invite": "Invita gente",
   "footer.keyboard_shortcuts": "Keyboard shortcuts",
-  "footer.privacy_policy": "Privacy policy",
+  "footer.privacy_policy": "Polìtica de riservadesa",
   "footer.source_code": "View source code",
   "generic.saved": "Sarvadu",
   "getting_started.heading": "Comente cumintzare",
@@ -279,7 +276,7 @@
   "hashtag.column_settings.tag_mode.any": "Cale si siat de custos",
   "hashtag.column_settings.tag_mode.none": "Perunu de custos",
   "hashtag.column_settings.tag_toggle": "Include etichetas additzionales pro custa colunna",
-  "hashtag.follow": "Follow hashtag",
+  "hashtag.follow": "Sighi su hashtag",
   "hashtag.unfollow": "Unfollow hashtag",
   "home.column_settings.basic": "Bàsicu",
   "home.column_settings.show_reblogs": "Ammustra is cumpartziduras",
@@ -289,15 +286,15 @@
   "interaction_modal.description.favourite": "With an account on Mastodon, you can favourite this post to let the author know you appreciate it and save it for later.",
   "interaction_modal.description.follow": "With an account on Mastodon, you can follow {name} to receive their posts in your home feed.",
   "interaction_modal.description.reblog": "With an account on Mastodon, you can boost this post to share it with your own followers.",
-  "interaction_modal.description.reply": "With an account on Mastodon, you can respond to this post.",
+  "interaction_modal.description.reply": "Podes arrespondere a custu post con una conta in Mastodon.",
   "interaction_modal.on_another_server": "On a different server",
-  "interaction_modal.on_this_server": "On this server",
+  "interaction_modal.on_this_server": "In custu serbidore",
   "interaction_modal.other_server_instructions": "Copy and paste this URL into the search field of your favourite Mastodon app or the web interface of your Mastodon server.",
   "interaction_modal.preamble": "Since Mastodon is decentralized, you can use your existing account hosted by another Mastodon server or compatible platform if you don't have an account on this one.",
   "interaction_modal.title.favourite": "Favourite {name}'s post",
-  "interaction_modal.title.follow": "Follow {name}",
+  "interaction_modal.title.follow": "Sighi a {name}",
   "interaction_modal.title.reblog": "Boost {name}'s post",
-  "interaction_modal.title.reply": "Reply to {name}'s post",
+  "interaction_modal.title.reply": "Arresponde a su post de {name}",
   "intervals.full.days": "{number, plural, one {# die} other {# dies}}",
   "intervals.full.hours": "{number, plural, one {# ora} other {# oras}}",
   "intervals.full.minutes": "{number, plural, one {# minutu} other {# minutos}}",
@@ -341,7 +338,7 @@
   "lightbox.next": "Imbeniente",
   "lightbox.previous": "Pretzedente",
   "limited_account_hint.action": "Show profile anyway",
-  "limited_account_hint.title": "This profile has been hidden by the moderators of {domain}.",
+  "limited_account_hint.title": "Custu perfilu dd'ant cuadu is moderadores de {domain}.",
   "lists.account.add": "Agiunghe a sa lista",
   "lists.account.remove": "Boga dae sa lista",
   "lists.delete": "Cantzella sa lista",
@@ -364,12 +361,12 @@
   "mute_modal.duration": "Durada",
   "mute_modal.hide_notifications": "Boles cuare is notìficas de custa persone?",
   "mute_modal.indefinite": "Indefinida",
-  "navigation_bar.about": "About",
+  "navigation_bar.about": "Informatziones",
   "navigation_bar.blocks": "Persones blocadas",
   "navigation_bar.bookmarks": "Sinnalibros",
   "navigation_bar.community_timeline": "Lìnia de tempus locale",
   "navigation_bar.compose": "Cumpone una publicatzione noa",
-  "navigation_bar.direct": "Direct messages",
+  "navigation_bar.direct": "Messàgios diretos",
   "navigation_bar.discover": "Iscoberi",
   "navigation_bar.domain_blocks": "Domìnios blocados",
   "navigation_bar.edit_profile": "Modìfica profilu",
@@ -385,7 +382,7 @@
   "navigation_bar.pins": "Publicatziones apicadas",
   "navigation_bar.preferences": "Preferèntzias",
   "navigation_bar.public_timeline": "Lìnia de tempus federada",
-  "navigation_bar.search": "Search",
+  "navigation_bar.search": "Chirca",
   "navigation_bar.security": "Seguresa",
   "not_signed_in_indicator.not_signed_in": "You need to sign in to access this resource.",
   "notification.admin.report": "{name} reported {target}",
diff --git a/app/javascript/mastodon/locales/sco.json b/app/javascript/mastodon/locales/sco.json
new file mode 100644
index 000000000..ae464a50f
--- /dev/null
+++ b/app/javascript/mastodon/locales/sco.json
@@ -0,0 +1,649 @@
+{
+  "about.blocks": "Moderatit servers",
+  "about.contact": "Contack:",
+  "about.disclaimer": "Mastodon is free, open-soorced saftware, an a trademairk o Mastodon gGmbH.",
+  "about.domain_blocks.no_reason_available": "Raison no available",
+  "about.domain_blocks.preamble": "Mastodon generally alloos ye tae view content fae an interact wi uisers fae onie ither server in the fediverse.",
+  "about.domain_blocks.silenced.explanation": "Ye'll generally no see profiles an content fae this server, unless ye explicitly luik it up or opt intae it bi follaein.",
+  "about.domain_blocks.silenced.title": "Limitit",
+  "about.domain_blocks.suspended.explanation": "Nae data fae this server wull bi processed, stored or exchynged, makkin onie interaction or communication wi uisers fae this server no possible.",
+  "about.domain_blocks.suspended.title": "Suspendit",
+  "about.not_available": "This information haesnae been made available on this server.",
+  "about.powered_by": "Decentralised social media pooert bi {mastodon}",
+  "about.rules": "Server rules",
+  "account.account_note_header": "Note",
+  "account.add_or_remove_from_list": "Add or Remuive frae lists",
+  "account.badges.bot": "Bot",
+  "account.badges.group": "Group",
+  "account.block": "Block @{name}",
+  "account.block_domain": "Block domain {domain}",
+  "account.blocked": "Blockit",
+  "account.browse_more_on_origin_server": "Brouse mair oan the oreeginal profile",
+  "account.cancel_follow_request": "Resile follae requeest",
+  "account.direct": "Direct message @{name}",
+  "account.disable_notifications": "Stap notifyin me whan @{name} posts",
+  "account.domain_blocked": "Domain blockit",
+  "account.edit_profile": "Eedit profile",
+  "account.enable_notifications": "Notify me whan @{name} posts",
+  "account.endorse": "Shaw oan profile",
+  "account.featured_tags.last_status_at": "Last post oan {date}",
+  "account.featured_tags.last_status_never": "Nae posts",
+  "account.featured_tags.title": "{name}'s hielichtit hashtags",
+  "account.follow": "Follae",
+  "account.followers": "Follaers",
+  "account.followers.empty": "Naebdy follaes this uiser yet.",
+  "account.followers_counter": "{count, plural, one {{counter} Follaer} other {{counter} Follaers}}",
+  "account.following": "Follaein",
+  "account.following_counter": "{count, plural, one {{counter} Follaein} other {{counter} Follaein}}",
+  "account.follows.empty": "This uiser disnae follae oniebody yit.",
+  "account.follows_you": "Follaes ye",
+  "account.go_to_profile": "Gan tae profile",
+  "account.hide_reblogs": "Dinnae shaw heezes fae @{name}",
+  "account.joined_short": "Jynt",
+  "account.languages": "Chynge subscribed leids",
+  "account.link_verified_on": "Ainership o this link wis checked on {date}",
+  "account.locked_info": "This accoont privacy status is snibbed. The ainer picks wha kin follae them bi haun.",
+  "account.media": "Media",
+  "account.mention": "Menshie@{name}",
+  "account.moved_to": "{name} haes sayed thit their new accoont is noo:",
+  "account.mute": "Wheesht@{name}",
+  "account.mute_notifications": "Wheesht notifications fae @{name}",
+  "account.muted": "Whesht",
+  "account.open_original_page": "Open the furst page",
+  "account.posts": "Posts",
+  "account.posts_with_replies": "Posts an repones",
+  "account.report": "Clype @{name}",
+  "account.requested": "Haudin fir approval. Chap tae cancel follae request",
+  "account.share": "Share @{name}'s profile",
+  "account.show_reblogs": "Shaw boosts fae @{name}",
+  "account.statuses_counter": "{count, plural, one {{counter} Post} other {{counter} Posts}}",
+  "account.unblock": "Undingie @{name}",
+  "account.unblock_domain": "Undingie domain {domain}",
+  "account.unblock_short": "Undingie",
+  "account.unendorse": "Dinnae pit on profile",
+  "account.unfollow": "Unfollae",
+  "account.unmute": "Unwheesht @{name}",
+  "account.unmute_notifications": "Unwheesht notes fae @{name}",
+  "account.unmute_short": "Unwheesht",
+  "account_note.placeholder": "Chap tae eik note",
+  "admin.dashboard.daily_retention": "Uiser retention rate bi day efter signin-up",
+  "admin.dashboard.monthly_retention": "Uiser restention rate bi month efter signin-up",
+  "admin.dashboard.retention.average": "Average",
+  "admin.dashboard.retention.cohort": "Signin-up month",
+  "admin.dashboard.retention.cohort_size": "New uisers",
+  "alert.rate_limited.message": "Please hae anither shot efter {retry_time, time, medium}.",
+  "alert.rate_limited.title": "Rate limitit",
+  "alert.unexpected.message": "A error thit wisnae expectit happent.",
+  "alert.unexpected.title": "Crivens!",
+  "announcement.announcement": "Annooncement",
+  "attachments_list.unprocessed": "(No processed)",
+  "audio.hide": "Stow audio",
+  "autosuggest_hashtag.per_week": "{count} per week",
+  "boost_modal.combo": "Ye kin chap {combo} tae dingie this neist tim",
+  "bundle_column_error.copy_stacktrace": "Copy error report",
+  "bundle_column_error.error.body": "The requestit page cuidnae be rennert. Hit cuid be doon tae a bug in wir code, or a brooser compatability issue.",
+  "bundle_column_error.error.title": "Aw naw!",
+  "bundle_column_error.network.body": "There wis a error whan gaun tae load this page. This cuid be doon tae a temporary snaffle wi yer internet connexion or wi this server.",
+  "bundle_column_error.network.title": "Netwirk error",
+  "bundle_column_error.retry": "Gie it anither shot",
+  "bundle_column_error.return": "Gae back hame",
+  "bundle_column_error.routing.body": "The requestit page cuidnae be fun. Are ye shair thit the URL in the addres baur is richt?",
+  "bundle_column_error.routing.title": "404",
+  "bundle_modal_error.close": "Shut",
+  "bundle_modal_error.message": "Somehin went wrang whilst loadin this component.",
+  "bundle_modal_error.retry": "Gie it anither shot",
+  "closed_registrations.other_server_instructions": "Seein Mastodon is decentralized ye kin mak a accoont on anither server an stull interact wi this ane.",
+  "closed_registrations_modal.description": "Makkin a accoont on {domain} isnae possible the noo, but mind ye dinnae need a accoont on {domain} specific for tae uise Mastodon.",
+  "closed_registrations_modal.find_another_server": "Fin anither server",
+  "closed_registrations_modal.preamble": "Mastodon is decentralized, sae nae maitter whaur ye mak yer accoont, ye'll be able tae follae an interact wi oniebody on this server. Ye kin even sel-host it!",
+  "closed_registrations_modal.title": "Signin up on Mastodon",
+  "column.about": "Aboot",
+  "column.blocks": "Dingied uisers",
+  "column.bookmarks": "Buikmairks",
+  "column.community": "Local timeline",
+  "column.direct": "Direck messages",
+  "column.directory": "Broose profiles",
+  "column.domain_blocks": "Dingied domains",
+  "column.favourites": "Best anes",
+  "column.follow_requests": "Follae requests",
+  "column.home": "Hame",
+  "column.lists": "Lists",
+  "column.mutes": "Wheesht uisers",
+  "column.notifications": "Notes",
+  "column.pins": "Preenit posts",
+  "column.public": "Federatit timeline",
+  "column_back_button.label": "Back",
+  "column_header.hide_settings": "Hide settins",
+  "column_header.moveLeft_settings": "Shift column tae the left",
+  "column_header.moveRight_settings": "Shift coloumn tae the richt",
+  "column_header.pin": "Preen",
+  "column_header.show_settings": "Shaw settins",
+  "column_header.unpin": "Unpreen",
+  "column_subheading.settings": "Settins",
+  "community.column_settings.local_only": "Local ainly",
+  "community.column_settings.media_only": "Media ainly",
+  "community.column_settings.remote_only": "Remote ainly",
+  "compose.language.change": "Chynge Leid",
+  "compose.language.search": "Seirch leids...",
+  "compose_form.direct_message_warning_learn_more": "Lairn mair",
+  "compose_form.encryption_warning": "Posts on Mastodon urnae en-tae-en encryptit. Dinnae share onie sensitive information ower Mastodon.",
+  "compose_form.hashtag_warning": "This post wulnae be listit unner onie hashtag seein it is no listit. Ainly public posts kin be seirchit oot bi hashtag.",
+  "compose_form.lock_disclaimer": "Yer accoont isnae {locked}. Awbody kin follae ye folir tae luik at yer follaer-ainly posts.",
+  "compose_form.lock_disclaimer.lock": "lockit",
+  "compose_form.placeholder": "Whit's on yer mind?",
+  "compose_form.poll.add_option": "Pit in a chyce",
+  "compose_form.poll.duration": "Poll lenth",
+  "compose_form.poll.option_placeholder": "Chyce {number}",
+  "compose_form.poll.remove_option": "Tak oot this chyce",
+  "compose_form.poll.switch_to_multiple": "Chynge poll tae alloo multiple chyces",
+  "compose_form.poll.switch_to_single": "Chynge poll tae alloo fir a single chyce",
+  "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
+  "compose_form.publish_loud": "{publish}!",
+  "compose_form.save_changes": "Save chynges",
+  "compose_form.sensitive.hide": "{count, plural, one {Mairk media as sensitive} other {Mairk media as sensitive}}",
+  "compose_form.sensitive.marked": "{count, plural, one {Media is mairkit as sensitive} other {Media is mairkit as sensitive}}",
+  "compose_form.sensitive.unmarked": "{count, plural, one {Media isnae mairkit as sensitive} other {Media isnae mairkit as sensitive}}",
+  "compose_form.spoiler.marked": "Tak aff the content warnin",
+  "compose_form.spoiler.unmarked": "Pit on a content warnin",
+  "compose_form.spoiler_placeholder": "Scrieve yer warnin in here",
+  "confirmation_modal.cancel": "Stap",
+  "confirmations.block.block_and_report": "Dingie & Clype",
+  "confirmations.block.confirm": "Dingie",
+  "confirmations.block.message": "Ye shair thit ye'r wantin tae dingie {name}?",
+  "confirmations.cancel_follow_request.confirm": "Tak back yer request",
+  "confirmations.cancel_follow_request.message": "Ye shair thit ye'r wantin tae tak back yer request fir tae follae {name}?",
+  "confirmations.delete.confirm": "Delete",
+  "confirmations.delete.message": "Ye shair thit ye'r wantin tae delete this post?",
+  "confirmations.delete_list.confirm": "Delete",
+  "confirmations.delete_list.message": "Ye shair thit ye'r wantin fir tae delete this post fir ever?",
+  "confirmations.discard_edit_media.confirm": "Fling awa",
+  "confirmations.discard_edit_media.message": "Ye'v chynges tae the media description or preview thit ye'v no saved, fling them awa onie weys?",
+  "confirmations.domain_block.confirm": "Dingie the hail domain",
+  "confirmations.domain_block.message": "Ye a hunner percent shair thit ye'r wantin tae dingie the hail {domain}? In maist cases a haunfae tairgtit dingies an wheeshts are eneuch an preferit. Ye wullnae see content fae that domain in onie public timelines or in yer notes. Yer follaers fae that domain wull be taen awa.",
+  "confirmations.logout.confirm": "Log oot",
+  "confirmations.logout.message": "Ye shair thit ye'r wantin tae log oot?",
+  "confirmations.mute.confirm": "Wheesht",
+  "confirmations.mute.explanation": "This'll hide posts fae them an posts mentionin them, but it'll stull alloo them tae see yer posts an follae ye.",
+  "confirmations.mute.message": "Ye sure thit ye'r wantin tae wheesht {name}?",
+  "confirmations.redraft.confirm": "Delete an stert anew",
+  "confirmations.redraft.message": "Ye sure thit ye'r wantin tae delete this post an stert again? Favourites an boosts'll be lost, an the replies tae the original post'll be orphant.",
+  "confirmations.reply.confirm": "Reply",
+  "confirmations.reply.message": "Replyin noo'll owerwrite the message ye'r screivin the noo. Ur ye sure thit ye'r wantin tae dae that?",
+  "confirmations.unfollow.confirm": "Unfollae",
+  "confirmations.unfollow.message": "Ye sure thit ye'r wantin tae unfollae {name}?",
+  "conversation.delete": "Delete the conversation",
+  "conversation.mark_as_read": "Mairk as seen",
+  "conversation.open": "Luik at conversation",
+  "conversation.with": "Wi {names}",
+  "copypaste.copied": "Copied",
+  "copypaste.copy": "Copy",
+  "directory.federated": "Fae a kent fediverse",
+  "directory.local": "Fae {domain} ainly",
+  "directory.new_arrivals": "New arrivals",
+  "directory.recently_active": "Active recent",
+  "disabled_account_banner.account_settings": "Accoont settins",
+  "disabled_account_banner.text": "Yer accoont {disabledAccount} is disabilt the noo.",
+  "dismissable_banner.community_timeline": "Here the maist recent public posts fae fowk thit's accoonts ur hostit bi {domain}.",
+  "dismissable_banner.dismiss": "Pit awa",
+  "dismissable_banner.explore_links": "Thir news stories is bein talked aboot bi fowk on this an ither servers o the decentralized netwirk richt noo.",
+  "dismissable_banner.explore_statuses": "Thir posts fae this an ither servers in this decentralized netwirk ur gainin traction on this server richt noo.",
+  "dismissable_banner.explore_tags": "Thir hashtags is gaitherin traction amang the fowk on thit an ither servers o the decentralized netwirk richt noo.",
+  "dismissable_banner.public_timeline": "Thir's the maist recent public posts fae fowk on this an ither server o the decentralized netwirk thit this server kens aboot.",
+  "embed.instructions": "Embed this post on yer wabsteid bi copyin the code ablow.",
+  "embed.preview": "Here whit it'll luik lik:",
+  "emoji_button.activity": "Activity",
+  "emoji_button.clear": "Claer",
+  "emoji_button.custom": "Custom",
+  "emoji_button.flags": "Flags",
+  "emoji_button.food": "Fid & drink",
+  "emoji_button.label": "Pit in emoji",
+  "emoji_button.nature": "Naiture",
+  "emoji_button.not_found": "Nae matchin emoji fun",
+  "emoji_button.objects": "Objecks",
+  "emoji_button.people": "Fowk",
+  "emoji_button.recent": "Maist aften uised",
+  "emoji_button.search": "Seirch...",
+  "emoji_button.search_results": "Seirch results",
+  "emoji_button.symbols": "Symbols",
+  "emoji_button.travel": "Traivel & steidins",
+  "empty_column.account_suspended": "Accoont suspendit",
+  "empty_column.account_timeline": "Nae posts here!",
+  "empty_column.account_unavailable": "Profile isnae available",
+  "empty_column.blocks": "Ye huvnae dingied onie uisers yit.",
+  "empty_column.bookmarked_statuses": "Ye dinnae hae onie buikmairkt posts yit. Efter ye buikmairk ane, it'll shaw up here.",
+  "empty_column.community": "The loval timeline is toum. Screive socht public fir tae get gaun!",
+  "empty_column.direct": "Ye dinnae hae onie direck messages yit. Ance ye sen or get ane, it'll shaw up here.",
+  "empty_column.domain_blocks": "There nae dingied domains yit.",
+  "empty_column.explore_statuses": "Naethin is trendin the noo. Check back efter!",
+  "empty_column.favourited_statuses": "Ye dinnae hae onie favourite posts yit. Whan ye favourite ane, it'll shaw up here.",
+  "empty_column.favourites": "Naebody haes favouritit this post yit. Whan somebody dis, they'll shaw up here.",
+  "empty_column.follow_recommendations": "It luiks lik nae suggestions cuid be generatit fir ye. Ye kin try uisin seirch fir tae luik fir fowk ye wad mibbie ken, or splore uisin trendin hashtags.",
+  "empty_column.follow_requests": "Ye dinnae hae onie follaer requests yit. Whan ye get ane, it'll shaw up here.",
+  "empty_column.hashtag": "There naethin in this hashtag yit.",
+  "empty_column.home": "Yer hame timeline is toum! Follae mair fowk fir tae full it up. {suggestions}",
+  "empty_column.home.suggestions": "See some suggestions",
+  "empty_column.list": "There naethin in this list yit. Whan memmers o this list publish new posts, ye'll see them here.",
+  "empty_column.lists": "Ye dinnae hae onie lists yit. Ance ye mak ane, it'll shaw up here.",
+  "empty_column.mutes": "Ye'v no wheesht onie uisers yit.",
+  "empty_column.notifications": "Ye dinnae hae onie notes yit. Whan ither fowk interack wi ye, ye'll see it here.",
+  "empty_column.public": "There naethin here! Scrieve socht public, or follae uisers fae ither servers fir tae full it up",
+  "error.unexpected_crash.explanation": "Doon tae a bug in wir code or a brooser compatibility maitter, this page cuidnae get displayed richt.",
+  "error.unexpected_crash.explanation_addons": "This page cannae be displayit richt. This error is maist lik tae be doon tae a brooser add-on or autimatic owersettin tools.",
+  "error.unexpected_crash.next_steps": "Gie refreshin the page a shot. Gin thon disnae help ye, ye kin mibbie stull be able tae uise Mastodon throu anither brooser or native app.",
+  "error.unexpected_crash.next_steps_addons": "Try oot pittin them aff an rejiggin the page. Gin thonndisnae wirk, ye kin mibbie be able tae uise Mastodon on a different brooser or native app.",
+  "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace tae yer clipboord",
+  "errors.unexpected_crash.report_issue": "Sen in a issue",
+  "explore.search_results": "Seirch finnins",
+  "explore.title": "Splore",
+  "filter_modal.added.context_mismatch_explanation": "This filter caitegory disnae apply tae the context thit ye'v uised tae access this post. Gin ye'r wantin the post tae be filtert in this context tae, ye'll hae tae edit the filter.",
+  "filter_modal.added.context_mismatch_title": "Context disnae match!",
+  "filter_modal.added.expired_explanation": "This filter caitegory haes expirit, ye'll hae tae chynge the expiration date fir it tae apply.",
+  "filter_modal.added.expired_title": "Expirit filter!",
+  "filter_modal.added.review_and_configure": "Tae luik ower an configure this filter caitegort mair, awa tae the {settings_link}.",
+  "filter_modal.added.review_and_configure_title": "Filter settins",
+  "filter_modal.added.settings_link": "settins page",
+  "filter_modal.added.short_explanation": "This post haes been eikit tae the follaein filter caitegory: {title}.",
+  "filter_modal.added.title": "Filter pit on!",
+  "filter_modal.select_filter.context_mismatch": "disnae apply tae this context",
+  "filter_modal.select_filter.expired": "expirit",
+  "filter_modal.select_filter.prompt_new": "New caitegory: {name}",
+  "filter_modal.select_filter.search": "Seirch or mak",
+  "filter_modal.select_filter.subtitle": "Uise a awriddy existin caitegory or mak a new ane",
+  "filter_modal.select_filter.title": "Filter this post",
+  "filter_modal.title.status": "Filter a post",
+  "follow_recommendations.done": "Duin",
+  "follow_recommendations.heading": "Follae fowk thit ye'd want tae see posts fae! Here some suggestions.",
+  "follow_recommendations.lead": "Posts fae thaim thit ye follae wull shaw up in chronological order on yer hame feed. Dinnae be feart tae mak mistaks, ye kin unfollae fowk juist as easy onie tim!",
+  "follow_request.authorize": "Gie permission",
+  "follow_request.reject": "Dingie",
+  "follow_requests.unlocked_explanation": "Tho yer accoont isnae snibbed, the {domain} staff thocht ye'd mibbie want tae review follae requests fae thir accoonts bi haun.",
+  "footer.about": "Aboot",
+  "footer.directory": "Profiles directory",
+  "footer.get_app": "Get the app",
+  "footer.invite": "Invite fowk",
+  "footer.keyboard_shortcuts": "Keyboord shortcuts",
+  "footer.privacy_policy": "Privacy policy",
+  "footer.source_code": "View the soorce code",
+  "generic.saved": "Saved",
+  "getting_started.heading": "Gettin stertit",
+  "hashtag.column_header.tag_mode.all": "an {additional}",
+  "hashtag.column_header.tag_mode.any": "or {additional}",
+  "hashtag.column_header.tag_mode.none": "athoot {additional}",
+  "hashtag.column_settings.select.no_options_message": "Nae suggestions fun",
+  "hashtag.column_settings.select.placeholder": "Pit in hashtags…",
+  "hashtag.column_settings.tag_mode.all": "Aw o thir",
+  "hashtag.column_settings.tag_mode.any": "Onie o thir",
+  "hashtag.column_settings.tag_mode.none": "Naen o thir",
+  "hashtag.column_settings.tag_toggle": "Pit in mair hashtags fir this column",
+  "hashtag.follow": "Follae hashtag",
+  "hashtag.unfollow": "Unfollae hashtag",
+  "home.column_settings.basic": "Basic",
+  "home.column_settings.show_reblogs": "Shaw boosts",
+  "home.column_settings.show_replies": "Shaw replies",
+  "home.hide_announcements": "Hide annooncements",
+  "home.show_announcements": "Shaw annooncements",
+  "interaction_modal.description.favourite": "Wi a accoont on Mastodon ye kinnfavourite this post fir tae let the writer ken thit ye like it an save it fir efter.",
+  "interaction_modal.description.follow": "Wi a accoont on Mastodon, ye kin follae {name} tae get their posts on yer hame feed.",
+  "interaction_modal.description.reblog": "Wi a accoont on Mastodon, ye kin heeze this post tae ahare it wi yer ain follaers.",
+  "interaction_modal.description.reply": "Wi a accoont on Mastodon, ye kin sen a repone tae this post.",
+  "interaction_modal.on_another_server": "On a different server",
+  "interaction_modal.on_this_server": "On this server",
+  "interaction_modal.other_server_instructions": "Copy an paste this URL intae the seirch field o yer favourite Mastodon app or the wab interface o yer Mastodon server.",
+  "interaction_modal.preamble": "Seein Mastodon is decentralized, ye kin uise the accoont thit ye awriddy hae hostit on anither Mastodon server or compatable platforn gien thit dinnae hae a accoont in this yin.",
+  "interaction_modal.title.favourite": "Favourite {name}'s post",
+  "interaction_modal.title.follow": "Follae {name}",
+  "interaction_modal.title.reblog": "Heeze {name}'s post",
+  "interaction_modal.title.reply": "Reply tae {name}'s post",
+  "intervals.full.days": "{number, plural, one {# day} other {# days}}",
+  "intervals.full.hours": "{number, plural, one {# oor} other {# oors}}",
+  "intervals.full.minutes": "{number, plural, one {# minute} other {# minties}}",
+  "keyboard_shortcuts.back": "Awa back",
+  "keyboard_shortcuts.blocked": "Open dingied uisers list",
+  "keyboard_shortcuts.boost": "Heeze post",
+  "keyboard_shortcuts.column": "Focus column",
+  "keyboard_shortcuts.compose": "Focus compose text area",
+  "keyboard_shortcuts.description": "Description",
+  "keyboard_shortcuts.direct": "tae open direct messages column",
+  "keyboard_shortcuts.down": "Muive doon in the list",
+  "keyboard_shortcuts.enter": "Open post",
+  "keyboard_shortcuts.favourite": "Favourite post",
+  "keyboard_shortcuts.favourites": "Open favourites list",
+  "keyboard_shortcuts.federated": "Open federatit timeline",
+  "keyboard_shortcuts.heading": "Keyboord shortcuts",
+  "keyboard_shortcuts.home": "Open hame timeline",
+  "keyboard_shortcuts.hotkey": "Hetkey",
+  "keyboard_shortcuts.legend": "Display this legend",
+  "keyboard_shortcuts.local": "Open local timeline",
+  "keyboard_shortcuts.mention": "Menshie author",
+  "keyboard_shortcuts.muted": "Open wheesht uisers list",
+  "keyboard_shortcuts.my_profile": "Open yer profile",
+  "keyboard_shortcuts.notifications": "Open notes column",
+  "keyboard_shortcuts.open_media": "Open media",
+  "keyboard_shortcuts.pinned": "Open preenit posts list",
+  "keyboard_shortcuts.profile": "Open author's profile",
+  "keyboard_shortcuts.reply": "Reply tae post",
+  "keyboard_shortcuts.requests": "Open follae requests list",
+  "keyboard_shortcuts.search": "Focus seirch baur",
+  "keyboard_shortcuts.spoilers": "Shaw/hide CW field",
+  "keyboard_shortcuts.start": "Open “get stertit” column",
+  "keyboard_shortcuts.toggle_hidden": "Show/hide text ahin CW",
+  "keyboard_shortcuts.toggle_sensitivity": "Show/hide media",
+  "keyboard_shortcuts.toot": "Stert a new post",
+  "keyboard_shortcuts.unfocus": "Unfocus scrieve textarea/seirch",
+  "keyboard_shortcuts.up": "Muive up in the list",
+  "lightbox.close": "Shut",
+  "lightbox.compress": "Compress image view box",
+  "lightbox.expand": "Expand image view box",
+  "lightbox.next": "Neist",
+  "lightbox.previous": "Last ane",
+  "limited_account_hint.action": "Shaw profile onieweys",
+  "limited_account_hint.title": "This profile haes been planked bi the moderators o {domain}.",
+  "lists.account.add": "Add tae list",
+  "lists.account.remove": "Tak aff o the list",
+  "lists.delete": "Delete list",
+  "lists.edit": "Edit list",
+  "lists.edit.submit": "Chynge title",
+  "lists.new.create": "Add list",
+  "lists.new.title_placeholder": "New list title",
+  "lists.replies_policy.followed": "Onie follaed uiser",
+  "lists.replies_policy.list": "Memmers o the list",
+  "lists.replies_policy.none": "Naebody",
+  "lists.replies_policy.title": "Shaw replies tae:",
+  "lists.search": "Seirch amang the fowk ye ken",
+  "lists.subheading": "Yer lists",
+  "load_pending": "{count, plural, one {# new item} other {# new items}}",
+  "loading_indicator.label": "Loadin...",
+  "media_gallery.toggle_visible": "{number, plural, one {Hide image} other {Hide images}}",
+  "missing_indicator.label": "No fun",
+  "missing_indicator.sublabel": "This resoorce cuidnae be fun",
+  "moved_to_account_banner.text": "Yer accoont {disabledAccount} is disabilt the noo acause ye flittit tae {movedToAccount}.",
+  "mute_modal.duration": "Lenth",
+  "mute_modal.hide_notifications": "Hide notifications fae this uiser?",
+  "mute_modal.indefinite": "Indefinite",
+  "navigation_bar.about": "Aboot",
+  "navigation_bar.blocks": "Dingied uisers",
+  "navigation_bar.bookmarks": "Buikmairks",
+  "navigation_bar.community_timeline": "Local timeline",
+  "navigation_bar.compose": "Scrieve new post",
+  "navigation_bar.direct": "Direck messages",
+  "navigation_bar.discover": "Fin",
+  "navigation_bar.domain_blocks": "Dingied domains",
+  "navigation_bar.edit_profile": "Edit profile",
+  "navigation_bar.explore": "Splore",
+  "navigation_bar.favourites": "Best anes",
+  "navigation_bar.filters": "Wheesht wirds",
+  "navigation_bar.follow_requests": "Follae requests",
+  "navigation_bar.follows_and_followers": "Follaes an follaers",
+  "navigation_bar.lists": "Leets",
+  "navigation_bar.logout": "Logoot",
+  "navigation_bar.mutes": "Wheesht uisers",
+  "navigation_bar.personal": "Personal",
+  "navigation_bar.pins": "Preenit posts",
+  "navigation_bar.preferences": "Preferences",
+  "navigation_bar.public_timeline": "Federatit timeline",
+  "navigation_bar.search": "Seirch",
+  "navigation_bar.security": "Security",
+  "not_signed_in_indicator.not_signed_in": "Ye'r needin tae sign in fir tae access this resoorce.",
+  "notification.admin.report": "{name} reportit {target}",
+  "notification.admin.sign_up": "{name} signed up",
+  "notification.favourite": "{name} favouritit yer post",
+  "notification.follow": "{name} follaed ye",
+  "notification.follow_request": "{name} is wantin tae follae ye",
+  "notification.mention": "{name} menshied ye",
+  "notification.own_poll": "Yer poll is duin",
+  "notification.poll": "A poll thit ye votit in is duin",
+  "notification.reblog": "{name} heezed yer post",
+  "notification.status": "{name} juist postit",
+  "notification.update": "{name} editit a post",
+  "notifications.clear": "Claer yer notes",
+  "notifications.clear_confirmation": "Ye shaire thit ye'r wantin tae claer yer notes fir ever?",
+  "notifications.column_settings.admin.report": "New reports:",
+  "notifications.column_settings.admin.sign_up": "New sign-ups:",
+  "notifications.column_settings.alert": "Desktap notes",
+  "notifications.column_settings.favourite": "Best anes:",
+  "notifications.column_settings.filter_bar.advanced": "Shaw aw caitegories",
+  "notifications.column_settings.filter_bar.category": "Quick filter baur",
+  "notifications.column_settings.filter_bar.show_bar": "Shaw filter baur",
+  "notifications.column_settings.follow": "New follaers:",
+  "notifications.column_settings.follow_request": "New follae requests:",
+  "notifications.column_settings.mention": "Menshies:",
+  "notifications.column_settings.poll": "Poll results:",
+  "notifications.column_settings.push": "Push notes",
+  "notifications.column_settings.reblog": "Heezes:",
+  "notifications.column_settings.show": "Shaw in column",
+  "notifications.column_settings.sound": "Pley soond",
+  "notifications.column_settings.status": "New posts:",
+  "notifications.column_settings.unread_notifications.category": "Notes no read",
+  "notifications.column_settings.unread_notifications.highlight": "Heichlicht notes no read",
+  "notifications.column_settings.update": "Edits:",
+  "notifications.filter.all": "Aw",
+  "notifications.filter.boosts": "Heezes",
+  "notifications.filter.favourites": "Best anes",
+  "notifications.filter.follows": "Follaes",
+  "notifications.filter.mentions": "Menshies",
+  "notifications.filter.polls": "Poll results",
+  "notifications.filter.statuses": "Updates fae fowk thit ye follae",
+  "notifications.grant_permission": "Gie permission.",
+  "notifications.group": "{count} notes",
+  "notifications.mark_as_read": "Mairk ilka note as read",
+  "notifications.permission_denied": "Desktap notes urnae available doon tae denied brooser permissions requests aforehaun",
+  "notifications.permission_denied_alert": "Desktap notes cannae be turnt on, as brooser permission haes been denied aforehaun",
+  "notifications.permission_required": "Desktap notes urnae available acause the needit permission haesnae been gien.",
+  "notifications_permission_banner.enable": "Turn on desktap notes",
+  "notifications_permission_banner.how_to_control": "Fir tae get notes whan Mastodon isnae open, turn on desktap notes. Ye kin pick exactly whit types o interactions gie ye desktap notes throu the {icon} button abuin ance they'r turnt on.",
+  "notifications_permission_banner.title": "Dinnae miss a hing",
+  "picture_in_picture.restore": "Pit it back",
+  "poll.closed": "Shut",
+  "poll.refresh": "Refresh",
+  "poll.total_people": "{count, plural, one {# fowk} other {# fowk}}",
+  "poll.total_votes": "{count, plural, one {# vote} other {# votes}}",
+  "poll.vote": "Vote",
+  "poll.voted": "Ye votit fir this answer",
+  "poll.votes": "{votes, plural, one {# vote} other {# votes}}",
+  "poll_button.add_poll": "Dae a poll",
+  "poll_button.remove_poll": "Tak doon poll",
+  "privacy.change": "Chynge post privacy",
+  "privacy.direct.long": "Ainly menshied uisers kin see this",
+  "privacy.direct.short": "Menshied fowk ainly",
+  "privacy.private.long": "Ainly follaers kin see this",
+  "privacy.private.short": "Ainly follaers",
+  "privacy.public.long": "Awbody kin see this",
+  "privacy.public.short": "Public",
+  "privacy.unlisted.long": "Aw kin see this, but optit-oot o discovery features",
+  "privacy.unlisted.short": "No listit",
+  "privacy_policy.last_updated": "Last updatit {date}",
+  "privacy_policy.title": "Privacy Policy",
+  "refresh": "Refresh",
+  "regeneration_indicator.label": "Loadin…",
+  "regeneration_indicator.sublabel": "Yer hame feed is gettin sortit fir ye!",
+  "relative_time.days": "{number}t",
+  "relative_time.full.days": "{number, plural, one {# day} other {# days}} syne",
+  "relative_time.full.hours": "{number, plural, one {# oor} other {# oors}} syne",
+  "relative_time.full.just_now": "the noo",
+  "relative_time.full.minutes": "{number, plural, one {# minute} other {# minties}} syne",
+  "relative_time.full.seconds": "{number, plural, one {# saicont} other {# saiconts}} syne",
+  "relative_time.hours": "{number}o",
+  "relative_time.just_now": "noo",
+  "relative_time.minutes": "{number}m",
+  "relative_time.seconds": "{number}s",
+  "relative_time.today": "the day",
+  "reply_indicator.cancel": "Cancel",
+  "report.block": "Dingie",
+  "report.block_explanation": "Ye'll no see their posts. They wullnae be able tae see your posts or follae ye. They wull be able tae tell thit they're dingied.",
+  "report.categories.other": "Ither",
+  "report.categories.spam": "Guff",
+  "report.categories.violation": "Content breks ae or mair server rules",
+  "report.category.subtitle": "Pick the best match",
+  "report.category.title": "Tell us whit's gaun on wi this {type}",
+  "report.category.title_account": "profile",
+  "report.category.title_status": "post",
+  "report.close": "Duin",
+  "report.comment.title": "There ocht else thit ye hink we shuid ken?",
+  "report.forward": "Forret tae {target}",
+  "report.forward_hint": "The accoont is fae anither server. Sen an anonymized copy o the report tae there tae?",
+  "report.mute": "Wheesht",
+  "report.mute_explanation": "Ye wullnae see theirposts. They kin follae ye stull an see yer posts an wullnae ken thit they'r wheesht.",
+  "report.next": "Neist",
+  "report.placeholder": "Mair comments",
+  "report.reasons.dislike": "A dinnae like it",
+  "report.reasons.dislike_description": "It's no somehin thit ye want tae see",
+  "report.reasons.other": "It's anither hing",
+  "report.reasons.other_description": "The maitter disnae fir intae ither caitegories",
+  "report.reasons.spam": "It's mince",
+  "report.reasons.spam_description": "Fly links, fake engagement, or repetitive replies",
+  "report.reasons.violation": "It breks server rules",
+  "report.reasons.violation_description": "Ke ken thit it breks specific rules",
+  "report.rules.subtitle": "Puck aw thit apply",
+  "report.rules.title": "Whit rules is bein broke?",
+  "report.statuses.subtitle": "Pick aw thit apply",
+  "report.statuses.title": "Is there onie posts thit back up this report?",
+  "report.submit": "Pit in",
+  "report.target": "Reportin {target}",
+  "report.thanks.take_action": "Here yer options fir pickin whit ye see on Mastodon:",
+  "report.thanks.take_action_actionable": "Whilst we'r luikin ower this, ye kin tak steps aginst @{name}:",
+  "report.thanks.title": "Ye dinnae want tae see this?",
+  "report.thanks.title_actionable": "Ta fir reportin, we'll tak a luik intae this.",
+  "report.unfollow": "Unfollae @{name}",
+  "report.unfollow_explanation": "Ye'r follaein this accoont. Tae stap seein their post in yer hame feed onie mair, unfollae them.",
+  "report_notification.attached_statuses": "{count, plural, one {{count} post} other {{count} posts}} attached",
+  "report_notification.categories.other": "Ither",
+  "report_notification.categories.spam": "Mince",
+  "report_notification.categories.violation": "Rule violation",
+  "report_notification.open": "Open report",
+  "search.placeholder": "Seirch",
+  "search.search_or_paste": "Seirch or paste URL",
+  "search_popout.search_format": "Advanced seirch format",
+  "search_popout.tips.full_text": "Simple text gie ye posts thit ye'v wrate, favouritit, heezed, or hae been menshied in, as weil as matchinnuisernemms, displey nemms, an hashtags.",
+  "search_popout.tips.hashtag": "hashtag",
+  "search_popout.tips.status": "post",
+  "search_popout.tips.text": "Simple text gies ye matchin dipley nemms, uisernemms an hashtags",
+  "search_popout.tips.user": "uiser",
+  "search_results.accounts": "Fowk",
+  "search_results.all": "Aw",
+  "search_results.hashtags": "Hashtags",
+  "search_results.nothing_found": "Cuidnae fin ocht fir thir seirch terms",
+  "search_results.statuses": "Posts",
+  "search_results.statuses_fts_disabled": "Seirchin posts bi theri content isnae turnt on on this Mastadon server.",
+  "search_results.title": "Seirch fir {q}",
+  "search_results.total": "{count, number} {count, plural, one {result} other {results}}",
+  "server_banner.about_active_users": "Fowk uisin this server in the last 30 days (Monthly Active Uisers)",
+  "server_banner.active_users": "active uisers",
+  "server_banner.administered_by": "Administert bi:",
+  "server_banner.introduction": "{domain} is pairt o the decentralized social network pooery bi {mastodon}.",
+  "server_banner.learn_more": "Lairn mair",
+  "server_banner.server_stats": "Server stats:",
+  "sign_in_banner.create_account": "Mak accoont",
+  "sign_in_banner.sign_in": "Sign in",
+  "sign_in_banner.text": "Sign in fir tae follae profiles o hashtags, favourite, shaire an reply tae posts, or interack fae yer accoont on a different server.",
+  "status.admin_account": "Open moderation interface fir @{name}",
+  "status.admin_status": "Open this post in the moderation interface",
+  "status.block": "Dingie @{name}",
+  "status.bookmark": "Buikmairk",
+  "status.cancel_reblog_private": "Unheeze",
+  "status.cannot_reblog": "This post cannae be heezed",
+  "status.copy": "Copy link tae post",
+  "status.delete": "Delete",
+  "status.detailed_status": "Detailt conversation view",
+  "status.direct": "Direck message @{name}",
+  "status.edit": "Edit",
+  "status.edited": "Editit {date}",
+  "status.edited_x_times": "Editit {count, plural, one {{count} time} other {{count} times}}",
+  "status.embed": "Embed",
+  "status.favourite": "Favourite",
+  "status.filter": "Filter this post",
+  "status.filtered": "Filtert",
+  "status.hide": "Hide toot",
+  "status.history.created": "{name} creatit {date}",
+  "status.history.edited": "{name} editit {date}",
+  "status.load_more": "Load mair",
+  "status.media_hidden": "Media planked",
+  "status.mention": "Menshie @{name}",
+  "status.more": "Mair",
+  "status.mute": "Wheesht @{name}",
+  "status.mute_conversation": "Wheesht conversation",
+  "status.open": "Expand this post",
+  "status.pin": "Preen tae profile",
+  "status.pinned": "Preenit post",
+  "status.read_more": "Read mair",
+  "status.reblog": "Heeze",
+  "status.reblog_private": "Heeze wi original visibility",
+  "status.reblogged_by": "{name} heezed",
+  "status.reblogs.empty": "Naebody haes heezed this post yit. Whan somebody dis, they wull shaw up here.",
+  "status.redraft": "Delete & re-dae",
+  "status.remove_bookmark": "Tak doon buikmairk",
+  "status.replied_to": "Replied tae {name}",
+  "status.reply": "Reply",
+  "status.replyAll": "Reply tae threid",
+  "status.report": "Clype @{name}",
+  "status.sensitive_warning": "Sensitive content",
+  "status.share": "Shaire",
+  "status.show_filter_reason": "Shaw onieweys",
+  "status.show_less": "Shaw less",
+  "status.show_less_all": "Shaw less fir aw",
+  "status.show_more": "Shaw mair",
+  "status.show_more_all": "Shaw mair fir aw",
+  "status.show_original": "Shaw original",
+  "status.translate": "Owerset",
+  "status.translated_from_with": "Owerset fae {lang} uisin {provider}",
+  "status.uncached_media_warning": "No available",
+  "status.unmute_conversation": "Unwheesht conversation",
+  "status.unpin": "Unpreen fae profile",
+  "subscribed_languages.lead": "Ainly posts in the leids ye pick wull shaw on yer hame an list timelines efter the chynge. Pick naen fir tae get posts in aw leids.",
+  "subscribed_languages.save": "Save chynges",
+  "subscribed_languages.target": "Chynge subscribed leids fir {target}",
+  "suggestions.dismiss": "Pit awa suggestions",
+  "suggestions.header": "Ye'd mibbie be interestit in…",
+  "tabs_bar.federated_timeline": "Federatit",
+  "tabs_bar.home": "Hame",
+  "tabs_bar.local_timeline": "Local",
+  "tabs_bar.notifications": "Notes",
+  "time_remaining.days": "{number, plural, one {# day} other {# days}} left",
+  "time_remaining.hours": "{number, plural, one {# oor} other {# oors}} left",
+  "time_remaining.minutes": "{number, plural, one {# minute} other {# minties}} left",
+  "time_remaining.moments": "Moments remainin",
+  "time_remaining.seconds": "{number, plural, one {# saicont} other {# saiconts}} left",
+  "timeline_hint.remote_resource_not_displayed": "{resource} fae ither servers urnae displayed.",
+  "timeline_hint.resources.followers": "Follaers",
+  "timeline_hint.resources.follows": "Follaes",
+  "timeline_hint.resources.statuses": "Aulder posts",
+  "trends.counter_by_accounts": "{count, plural, one {{counter} body} other {{counter} fowk}} in the past {days, plural, one {day} other {{days} days}}",
+  "trends.trending_now": "Trendin noo",
+  "ui.beforeunload": "Yer draft wull be lost if ye lea Mastodon.",
+  "units.short.billion": "{count}B",
+  "units.short.million": "{count}M",
+  "units.short.thousand": "{count}K",
+  "upload_area.title": "Drag & drap fir tae upload",
+  "upload_button.label": "Add images, a video or a audio file",
+  "upload_error.limit": "File upload limit exceedit.",
+  "upload_error.poll": "File upload isnae allooed wi polls.",
+  "upload_form.audio_description": "Describe fir fowk wi hearin loss",
+  "upload_form.description": "Describe fir thaim wi visual impairments",
+  "upload_form.description_missing": "Nae description addit",
+  "upload_form.edit": "Edit",
+  "upload_form.thumbnail": "Chynge thoomnail",
+  "upload_form.undo": "Delete",
+  "upload_form.video_description": "Describe fir fowk wi hearin loss or wi visual impairment",
+  "upload_modal.analyzing_picture": "Analyzin picture…",
+  "upload_modal.apply": "Apply",
+  "upload_modal.applying": "Applyin…",
+  "upload_modal.choose_image": "Pick image",
+  "upload_modal.description_placeholder": "A quick broon fox jamps ower the lazy dug",
+  "upload_modal.detect_text": "Detect text fae picture",
+  "upload_modal.edit_media": "Edit media",
+  "upload_modal.hint": "Click or drag the circle on the preview tae pick the focal pynt thit wull aye be in view on aw thoomnails.",
+  "upload_modal.preparing_ocr": "Preparin OCR…",
+  "upload_modal.preview_label": "Preview ({ratio})",
+  "upload_progress.label": "Uploadin...",
+  "upload_progress.processing": "Processin…",
+  "video.close": "Shut video",
+  "video.download": "Doonload file",
+  "video.exit_fullscreen": "Lea fu-screen",
+  "video.expand": "Expand video",
+  "video.fullscreen": "Fu-screen",
+  "video.hide": "Plank video",
+  "video.mute": "Wheesht soond",
+  "video.pause": "Pause",
+  "video.play": "Pley",
+  "video.unmute": "Unwheesht soond"
+}
diff --git a/app/javascript/mastodon/locales/si.json b/app/javascript/mastodon/locales/si.json
index 1c13c76cd..a7d66a25f 100644
--- a/app/javascript/mastodon/locales/si.json
+++ b/app/javascript/mastodon/locales/si.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "තේරීම් කිහිපයක් ඉඩ දීම සඳහා මත විමසුම වෙනස් කරන්න",
   "compose_form.poll.switch_to_single": "තනි තේරීමකට ඉඩ දීම සඳහා මත විමසුම වෙනස් කරන්න",
   "compose_form.publish": "ප්‍රකාශනය",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "වෙනස්කම් සුරකින්න",
   "compose_form.sensitive.hide": "{count, plural, one {මාධ්ය සංවේදී ලෙස සලකුණු කරන්න} other {මාධ්ය සංවේදී ලෙස සලකුණු කරන්න}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "ස්ටැක්ට්රේස් පසුරු පුවරුවට පිටපත් කරන්න",
   "errors.unexpected_crash.report_issue": "ගැටළුව වාර්තාව",
   "explore.search_results": "සෙවුම් ප්‍රතිඵල",
-  "explore.suggested_follows": "ඔබට",
   "explore.title": "ගවේශණය",
-  "explore.trending_links": "පුවත්",
-  "explore.trending_statuses": "ලිපි",
-  "explore.trending_tags": "හැෂ් ටැග්",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/sk.json b/app/javascript/mastodon/locales/sk.json
index d02fb0bec..7b026e4d5 100644
--- a/app/javascript/mastodon/locales/sk.json
+++ b/app/javascript/mastodon/locales/sk.json
@@ -1,15 +1,15 @@
 {
-  "about.blocks": "Moderated servers",
+  "about.blocks": "Moderované servery",
   "about.contact": "Kontakt:",
-  "about.disclaimer": "Mastodon is free, open-source software, and a trademark of Mastodon gGmbH.",
-  "about.domain_blocks.no_reason_available": "Reason not available",
-  "about.domain_blocks.preamble": "Mastodon generally allows you to view content from and interact with users from any other server in the fediverse. These are the exceptions that have been made on this particular server.",
-  "about.domain_blocks.silenced.explanation": "You will generally not see profiles and content from this server, unless you explicitly look it up or opt into it by following.",
+  "about.disclaimer": "Mastodon je bezplatný softvér s otvoreným zdrojovým kódom a ochranná známka spoločnosti Mastodon gGmbH.",
+  "about.domain_blocks.no_reason_available": "Dôvod nie je k dispozícii",
+  "about.domain_blocks.preamble": "Mastodon vo všeobecnosti umožňuje prezerať obsah a komunikovať s používateľmi z akéhokoľvek iného servera vo fediverse. Toto sú výnimky, ktoré boli urobené na tomto konkrétnom serveri.",
+  "about.domain_blocks.silenced.explanation": "Vo všeobecnosti neuvidíte profily a obsah z tohto servera, pokiaľ si ho nevyhľadáte alebo sa neprihlásite k jeho sledovaniu.",
   "about.domain_blocks.silenced.title": "Obmedzená",
-  "about.domain_blocks.suspended.explanation": "No data from this server will be processed, stored or exchanged, making any interaction or communication with users from this server impossible.",
+  "about.domain_blocks.suspended.explanation": "Žiadne údaje z tohto servera nebudú spracovávané, ukladané ani vymieňané, čo znemožní akúkoľvek interakciu alebo komunikáciu s používateľmi z tohto servera.",
   "about.domain_blocks.suspended.title": "Vylúčený/á",
-  "about.not_available": "This information has not been made available on this server.",
-  "about.powered_by": "Decentralized social media powered by {mastodon}",
+  "about.not_available": "Tieto informácie neboli sprístupnené na tomto serveri.",
+  "about.powered_by": "Decentralizované sociálne médiá poháňané technológiou {mastodon}",
   "about.rules": "Serverové pravidlá",
   "account.account_note_header": "Poznámka",
   "account.add_or_remove_from_list": "Pridaj do, alebo odober zo zoznamov",
@@ -19,7 +19,7 @@
   "account.block_domain": "Ukry všetko z {domain}",
   "account.blocked": "Blokovaný/á",
   "account.browse_more_on_origin_server": "Prehľadávaj viac na pôvodnom profile",
-  "account.cancel_follow_request": "Withdraw follow request",
+  "account.cancel_follow_request": "Stiahni žiadosť o nasledovanie",
   "account.direct": "Priama správa pre @{name}",
   "account.disable_notifications": "Prestaň oznamovať, keď má príspevky @{name}",
   "account.domain_blocked": "Doména ukrytá",
@@ -28,28 +28,28 @@
   "account.endorse": "Zobrazuj na profile",
   "account.featured_tags.last_status_at": "Posledný príspevok dňa {date}",
   "account.featured_tags.last_status_never": "Žiadne príspevky",
-  "account.featured_tags.title": "{name}'s featured hashtags",
+  "account.featured_tags.title": "Odporúčané hashtagy používateľa {name}",
   "account.follow": "Nasleduj",
   "account.followers": "Sledujúci",
-  "account.followers.empty": "Tohto používateľa ešte nikto nenásleduje.",
+  "account.followers.empty": "Tohto používateľa ešte nikto nenasleduje.",
   "account.followers_counter": "{count, plural, one {{counter} Sledujúci} few {{counter} Sledujúci} many {{counter} Sledujúci} other {{counter} Sledujúci}}",
   "account.following": "Nasledujem",
-  "account.following_counter": "{count, plural, one {{counter} Following} other {{counter} Following}}",
+  "account.following_counter": "{count, plural, one {{counter} Sledovaných} other {{counter} Sledujúcich}}",
   "account.follows.empty": "Tento používateľ ešte nikoho nenasleduje.",
   "account.follows_you": "Nasleduje ťa",
   "account.go_to_profile": "Prejdi na profil",
   "account.hide_reblogs": "Skry vyzdvihnutia od @{name}",
   "account.joined_short": "Pridal/a sa",
-  "account.languages": "Change subscribed languages",
+  "account.languages": "Zmeniť odoberané jazyky",
   "account.link_verified_on": "Vlastníctvo tohto odkazu bolo skontrolované {date}",
   "account.locked_info": "Stav súkromia pre tento účet je nastavený na zamknutý. Jeho vlastník sám prehodnocuje, kto ho môže sledovať.",
   "account.media": "Médiá",
   "account.mention": "Spomeň @{name}",
-  "account.moved_to": "{name} has indicated that their new account is now:",
+  "account.moved_to": "{name} uvádza, že jeho/jej nový účet je:",
   "account.mute": "Nevšímaj si @{name}",
   "account.mute_notifications": "Stĺm oboznámenia od @{name}",
   "account.muted": "Nevšímaný/á",
-  "account.open_original_page": "Open original page",
+  "account.open_original_page": "Otvor pôvodnú stránku",
   "account.posts": "Príspevky/ov",
   "account.posts_with_replies": "Príspevky a odpovede",
   "account.report": "Nahlás @{name}",
@@ -66,8 +66,8 @@
   "account.unmute_notifications": "Zruš nevšímanie si oznámení od @{name}",
   "account.unmute_short": "Zruš nevšímanie",
   "account_note.placeholder": "Klikni pre vloženie poznámky",
-  "admin.dashboard.daily_retention": "User retention rate by day after sign-up",
-  "admin.dashboard.monthly_retention": "User retention rate by month after sign-up",
+  "admin.dashboard.daily_retention": "Miera udržania používateľov podľa dňa po registrácii",
+  "admin.dashboard.monthly_retention": "Miera udržania používateľov podľa mesiaca po registrácii",
   "admin.dashboard.retention.average": "Priemer",
   "admin.dashboard.retention.cohort": "Mesiac zaregistrovania sa",
   "admin.dashboard.retention.cohort_size": "Noví užívatelia",
@@ -80,22 +80,22 @@
   "audio.hide": "Skry zvuk",
   "autosuggest_hashtag.per_week": "{count} týždenne",
   "boost_modal.combo": "Nabudúce môžeš kliknúť {combo} pre preskočenie",
-  "bundle_column_error.copy_stacktrace": "Copy error report",
-  "bundle_column_error.error.body": "The requested page could not be rendered. It could be due to a bug in our code, or a browser compatibility issue.",
-  "bundle_column_error.error.title": "Oh, no!",
-  "bundle_column_error.network.body": "There was an error when trying to load this page. This could be due to a temporary problem with your internet connection or this server.",
+  "bundle_column_error.copy_stacktrace": "Kopírovať chybovú hlášku",
+  "bundle_column_error.error.body": "Požadovanú stránku nebolo možné vykresliť. Môže to byť spôsobené chybou v našom kóde alebo problémom s kompatibilitou prehliadača.",
+  "bundle_column_error.error.title": "Ale nie!",
+  "bundle_column_error.network.body": "Pri pokuse o načítanie tejto stránky sa vyskytla chyba. Môže to byť spôsobené dočasným problémom s Vaším internetovým pripojením alebo týmto serverom.",
   "bundle_column_error.network.title": "Chyba siete",
   "bundle_column_error.retry": "Skús to znova",
   "bundle_column_error.return": "Prejdi späť na domovskú stránku",
-  "bundle_column_error.routing.body": "The requested page could not be found. Are you sure the URL in the address bar is correct?",
+  "bundle_column_error.routing.body": "Žiadaná stránka nebola nájdená. Ste si istý, že zadaná adresa URL je správna?",
   "bundle_column_error.routing.title": "404",
   "bundle_modal_error.close": "Zatvor",
   "bundle_modal_error.message": "Nastala chyba pri načítaní tohto komponentu.",
   "bundle_modal_error.retry": "Skúsiť znova",
-  "closed_registrations.other_server_instructions": "Since Mastodon is decentralized, you can create an account on another server and still interact with this one.",
+  "closed_registrations.other_server_instructions": "Keďže Mastodon je decentralizovaný, môžete si vytvoriť účet na inom serveri a stále komunikovať s týmto serverom.",
   "closed_registrations_modal.description": "Vytvorenie účtu na {domain} nie je v súčasnosti možné, ale majte prosím na pamäti, že nepotrebujete účet práve na {domain}, aby bolo možné používať Mastodon.",
   "closed_registrations_modal.find_another_server": "Nájdi iný server",
-  "closed_registrations_modal.preamble": "Mastodon is decentralized, so no matter where you create your account, you will be able to follow and interact with anyone on this server. You can even self-host it!",
+  "closed_registrations_modal.preamble": "Mastodon je decentralizovaný, takže bez ohľadu na to, kde si vytvoríte účet, budete môcť sledovať a komunikovať s kýmkoľvek na tomto serveri. Môžete ho dokonca hostiť sami!",
   "closed_registrations_modal.title": "Registrácia na Mastodon",
   "column.about": "O tomto serveri",
   "column.blocks": "Blokovaní užívatelia",
@@ -126,7 +126,7 @@
   "compose.language.change": "Zmeň jazyk",
   "compose.language.search": "Hľadaj medzi jazykmi...",
   "compose_form.direct_message_warning_learn_more": "Zisti viac",
-  "compose_form.encryption_warning": "Posts on Mastodon are not end-to-end encrypted. Do not share any dangerous information over Mastodon.",
+  "compose_form.encryption_warning": "Príspevky na Mastodon nie sú end-to-end šifrované. Nezdieľajte cez Mastodon žiadne citlivé informácie.",
   "compose_form.hashtag_warning": "Tento toot nebude zobrazený pod žiadným haštagom lebo nieje listovaný. Iba verejné tooty môžu byť nájdené podľa haštagu.",
   "compose_form.lock_disclaimer": "Tvoj účet nie je {locked}. Ktokoľvek ťa môže nasledovať a vidieť tvoje správy pre sledujúcich.",
   "compose_form.lock_disclaimer.lock": "zamknutý",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Zmeň anketu pre povolenie viacerých možností",
   "compose_form.poll.switch_to_single": "Zmeň anketu na takú s jedinou voľbou",
   "compose_form.publish": "Zverejni",
+  "compose_form.publish_form": "Zverejniť",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Ulož zmeny",
   "compose_form.sensitive.hide": "Označ médiá ako chúlostivé",
@@ -150,8 +151,8 @@
   "confirmations.block.block_and_report": "Zablokuj a nahlás",
   "confirmations.block.confirm": "Blokuj",
   "confirmations.block.message": "Si si istý/á, že chceš blokovať {name}?",
-  "confirmations.cancel_follow_request.confirm": "Withdraw request",
-  "confirmations.cancel_follow_request.message": "Are you sure you want to withdraw your request to follow {name}?",
+  "confirmations.cancel_follow_request.confirm": "Odvolanie žiadosti",
+  "confirmations.cancel_follow_request.message": "Naozaj chcete stiahnuť svoju žiadosť o sledovanie {name}?",
   "confirmations.delete.confirm": "Vymaž",
   "confirmations.delete.message": "Si si istý/á, že chceš vymazať túto správu?",
   "confirmations.delete_list.confirm": "Vymaž",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Skopíruj stacktrace do schránky",
   "errors.unexpected_crash.report_issue": "Nahlás problém",
   "explore.search_results": "Výsledky hľadania",
-  "explore.suggested_follows": "Pre teba",
   "explore.title": "Objavuj",
-  "explore.trending_links": "Novinky",
-  "explore.trending_statuses": "Príspevky",
-  "explore.trending_tags": "Haštagy",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
@@ -261,7 +258,7 @@
   "follow_request.authorize": "Povoľ prístup",
   "follow_request.reject": "Odmietni",
   "follow_requests.unlocked_explanation": "Síce Váš učet nie je uzamknutý, ale {domain} tím si myslel že môžete chcieť skontrolovať žiadosti o sledovanie z týchto účtov manuálne.",
-  "footer.about": "About",
+  "footer.about": "O",
   "footer.directory": "Profiles directory",
   "footer.get_app": "Get the app",
   "footer.invite": "Pozvi ľudí",
@@ -294,7 +291,7 @@
   "interaction_modal.on_this_server": "Na tomto serveri",
   "interaction_modal.other_server_instructions": "Copy and paste this URL into the search field of your favourite Mastodon app or the web interface of your Mastodon server.",
   "interaction_modal.preamble": "Since Mastodon is decentralized, you can use your existing account hosted by another Mastodon server or compatible platform if you don't have an account on this one.",
-  "interaction_modal.title.favourite": "Favourite {name}'s post",
+  "interaction_modal.title.favourite": "Obľúbiť si {name}ov/in príspevok",
   "interaction_modal.title.follow": "Nasleduj {name}",
   "interaction_modal.title.reblog": "Vyzdvihni {name}ov/in príspevok",
   "interaction_modal.title.reply": "Odpovedz na {name}ov/in príspevok",
@@ -426,7 +423,7 @@
   "notifications.filter.follows": "Sledovania",
   "notifications.filter.mentions": "Iba spomenutia",
   "notifications.filter.polls": "Výsledky ankiet",
-  "notifications.filter.statuses": "Aktualizácie od ľudí, ktorých následuješ",
+  "notifications.filter.statuses": "Aktualizácie od ľudí, ktorých nasleduješ",
   "notifications.grant_permission": "Udeľ povolenie.",
   "notifications.group": "{count} oboznámení",
   "notifications.mark_as_read": "Označ každé oboznámenie za prečítané",
@@ -608,7 +605,7 @@
   "time_remaining.seconds": "Ostáva {number, plural, one {# sekunda} few {# sekúnd} many {# sekúnd} other {# sekúnd}}",
   "timeline_hint.remote_resource_not_displayed": "{resource} z iných serverov sa nezobrazí.",
   "timeline_hint.resources.followers": "Sledujúci",
-  "timeline_hint.resources.follows": "Následuje",
+  "timeline_hint.resources.follows": "Nasleduje",
   "timeline_hint.resources.statuses": "Staršie príspevky",
   "trends.counter_by_accounts": "{count, plural, one {{counter} person} other {{counter} people}} in the past {days, plural, one {day} other {{days} days}}",
   "trends.trending_now": "Teraz populárne",
diff --git a/app/javascript/mastodon/locales/sl.json b/app/javascript/mastodon/locales/sl.json
index a450225a5..b49db119b 100644
--- a/app/javascript/mastodon/locales/sl.json
+++ b/app/javascript/mastodon/locales/sl.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Spremenite anketo, da omogočite več izbir",
   "compose_form.poll.switch_to_single": "Spremenite anketo, da omogočite eno izbiro",
   "compose_form.publish": "Objavi",
+  "compose_form.publish_form": "Objavi",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Shrani spremembe",
   "compose_form.sensitive.hide": "{count, plural,one {Označi medij kot občutljiv} two {Označi medija kot občutljiva} other {Označi medije kot občutljive}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Kopiraj sledenje skladu na odložišče",
   "errors.unexpected_crash.report_issue": "Prijavi težavo",
   "explore.search_results": "Rezultati iskanja",
-  "explore.suggested_follows": "Za vas",
   "explore.title": "Razišči",
-  "explore.trending_links": "Novice",
-  "explore.trending_statuses": "Objave",
-  "explore.trending_tags": "Ključniki",
   "filter_modal.added.context_mismatch_explanation": "Ta kategorija filtra ne velja za kontekst, v katerem ste dostopali do te objave. Če želite, da je objava filtrirana tudi v tem kontekstu, morate urediti filter.",
   "filter_modal.added.context_mismatch_title": "Neujemanje konteksta!",
   "filter_modal.added.expired_explanation": "Ta kategorija filtra je pretekla, morali boste spremeniti datum veljavnosti, da bo veljal še naprej.",
diff --git a/app/javascript/mastodon/locales/sq.json b/app/javascript/mastodon/locales/sq.json
index 860c0e5a1..a09da3af6 100644
--- a/app/javascript/mastodon/locales/sq.json
+++ b/app/javascript/mastodon/locales/sq.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Ndrysho votimin për të lejuar shumë zgjedhje",
   "compose_form.poll.switch_to_single": "Ndrysho votimin për të lejuar vetëm një zgjedhje",
   "compose_form.publish": "Botoje",
+  "compose_form.publish_form": "Publikoje",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Ruaji ndryshimet",
   "compose_form.sensitive.hide": "{count, plural, one {Vëri shenjë medias si rezervat} other {Vëru shenjë mediave si rezervat}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Kopjo stacktrace-in në të papastër",
   "errors.unexpected_crash.report_issue": "Raportoni problemin",
   "explore.search_results": "Përfundime kërkimi",
-  "explore.suggested_follows": "Për ju",
   "explore.title": "Eksploroni",
-  "explore.trending_links": "Lajme",
-  "explore.trending_statuses": "Postime",
-  "explore.trending_tags": "Hashtagë",
   "filter_modal.added.context_mismatch_explanation": "Kjo kategori filtrash nuk aplikohet për kontekstin nën të cilin po merreni me këtë postim. Nëse doni që postimi të filtrohet edhe në këtë kontekst, do t’ju duhet të përpunoni filtrin.",
   "filter_modal.added.context_mismatch_title": "Mospërputhje kontekstesh!",
   "filter_modal.added.expired_explanation": "Kjo kategori filtrash ka skaduar, do t’ju duhet të ndryshoni datën e skadimit për të, pa të aplikohet.",
diff --git a/app/javascript/mastodon/locales/sr-Latn.json b/app/javascript/mastodon/locales/sr-Latn.json
index aae597974..ea23d2ad3 100644
--- a/app/javascript/mastodon/locales/sr-Latn.json
+++ b/app/javascript/mastodon/locales/sr-Latn.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
   "compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "{count, plural, one {Mark media as sensitive} other {Mark media as sensitive}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "Report issue",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/sr.json b/app/javascript/mastodon/locales/sr.json
index d35f9bb02..4f7c95066 100644
--- a/app/javascript/mastodon/locales/sr.json
+++ b/app/javascript/mastodon/locales/sr.json
@@ -1,108 +1,108 @@
 {
-  "about.blocks": "Moderated servers",
-  "about.contact": "Contact:",
-  "about.disclaimer": "Mastodon is free, open-source software, and a trademark of Mastodon gGmbH.",
-  "about.domain_blocks.no_reason_available": "Reason not available",
-  "about.domain_blocks.preamble": "Mastodon generally allows you to view content from and interact with users from any other server in the fediverse. These are the exceptions that have been made on this particular server.",
-  "about.domain_blocks.silenced.explanation": "You will generally not see profiles and content from this server, unless you explicitly look it up or opt into it by following.",
-  "about.domain_blocks.silenced.title": "Limited",
-  "about.domain_blocks.suspended.explanation": "No data from this server will be processed, stored or exchanged, making any interaction or communication with users from this server impossible.",
-  "about.domain_blocks.suspended.title": "Suspended",
-  "about.not_available": "This information has not been made available on this server.",
-  "about.powered_by": "Decentralized social media powered by {mastodon}",
-  "about.rules": "Server rules",
+  "about.blocks": "Модерирани сервери",
+  "about.contact": "Контакт:",
+  "about.disclaimer": "Мастодон је беслатан софтвер отвореног кода и заштићени знак компаније Mastodon gGmbH.",
+  "about.domain_blocks.no_reason_available": "Разлог није наведен",
+  "about.domain_blocks.preamble": "Мастодон Вам дозвољава да видите и комуницирате са корисницима са других сервера у федиверсу. Ово су изузеци који су направљени на овом серверу.",
+  "about.domain_blocks.silenced.explanation": "У начелу нећете видети профиле и садржај са овог сервера, осим ако га експлицитно не потражите или се укључите тако што ћете га пратити.",
+  "about.domain_blocks.silenced.title": "Ограничен",
+  "about.domain_blocks.suspended.explanation": "Подаци са овог сервера неће се обрађивати, чувати или размењивати, што онемогућава било какву интеракцију или комуникацију са корисницима са овог сервера.",
+  "about.domain_blocks.suspended.title": "Суспендован",
+  "about.not_available": "Ове информације нису доступне на овом серверу.",
+  "about.powered_by": "Децентрализована друштвена медија коју покреће {mastodon}",
+  "about.rules": "Правила сервера",
   "account.account_note_header": "Напомена",
-  "account.add_or_remove_from_list": "Додај или Одстрани са листа",
+  "account.add_or_remove_from_list": "Додај или уклони са листа",
   "account.badges.bot": "Бот",
   "account.badges.group": "Група",
   "account.block": "Блокирај @{name}",
   "account.block_domain": "Сакриј све са домена {domain}",
   "account.blocked": "Блокиран",
-  "account.browse_more_on_origin_server": "Погледајте још на оригиналном налогу",
-  "account.cancel_follow_request": "Withdraw follow request",
+  "account.browse_more_on_origin_server": "Погледајте још на оригиналном профилу",
+  "account.cancel_follow_request": "Повуци захтев за праћење",
   "account.direct": "Директна порука @{name}",
   "account.disable_notifications": "Прекини обавештавање за објаве корисника @{name}",
-  "account.domain_blocked": "Домен сакривен",
-  "account.edit_profile": "Уреди налог",
+  "account.domain_blocked": "Домен блокиран",
+  "account.edit_profile": "Уреди профил",
   "account.enable_notifications": "Обавести ме када @{name} објави",
-  "account.endorse": "Истакнуто на налогу",
-  "account.featured_tags.last_status_at": "Last post on {date}",
-  "account.featured_tags.last_status_never": "No posts",
-  "account.featured_tags.title": "{name}'s featured hashtags",
+  "account.endorse": "Истакнуто на профилу",
+  "account.featured_tags.last_status_at": "Последња објава {date}",
+  "account.featured_tags.last_status_never": "Нема објава",
+  "account.featured_tags.title": "Истакнути хештегови корисника {name}",
   "account.follow": "Запрати",
   "account.followers": "Пратиоци",
   "account.followers.empty": "Тренутно нико не прати овог корисника.",
   "account.followers_counter": "{count, plural, one {{counter} пратилац} few {{counter} пратиоца} other {{counter} пратилаца}}",
-  "account.following": "Following",
+  "account.following": "Праћени",
   "account.following_counter": "{count, plural, one {{counter} прати} few {{counter} прати} other {{counter} прати}}",
   "account.follows.empty": "Корисник тренутно не прати никога.",
   "account.follows_you": "Прати Вас",
-  "account.go_to_profile": "Go to profile",
-  "account.hide_reblogs": "Сакриј подршке које даје корисника @{name}",
-  "account.joined_short": "Joined",
-  "account.languages": "Change subscribed languages",
+  "account.go_to_profile": "Иди на профил",
+  "account.hide_reblogs": "Сакриј подршке корисника @{name}",
+  "account.joined_short": "Придружио се",
+  "account.languages": "Промени претплаћене језике",
   "account.link_verified_on": "Власништво над овом везом је проверено {date}",
   "account.locked_info": "Статус приватности овог налога је подешен на закључано. Власник ручно прегледа ко га може пратити.",
   "account.media": "Медији",
   "account.mention": "Помени корисника @{name}",
-  "account.moved_to": "{name} has indicated that their new account is now:",
+  "account.moved_to": "Корисник {name} је назначио да је његов нови налог сада:",
   "account.mute": "Ућуткај корисника @{name}",
   "account.mute_notifications": "Искључи обавештења од корисника @{name}",
   "account.muted": "Ућуткан",
-  "account.open_original_page": "Open original page",
-  "account.posts": "Трубе",
-  "account.posts_with_replies": "Трубе и одговори",
+  "account.open_original_page": "Отвори оригиналну страницу",
+  "account.posts": "Објаве",
+  "account.posts_with_replies": "Објаве и одговори",
   "account.report": "Пријави @{name}",
   "account.requested": "Чекам одобрење. Кликните да поништите захтев за праћење",
-  "account.share": "Подели налог корисника @{name}",
+  "account.share": "Подели профил корисника @{name}",
   "account.show_reblogs": "Прикажи подршке од корисника @{name}",
   "account.statuses_counter": "{count, plural, one {{counter} објава} few {{counter} објаве} other {{counter} објава}}",
   "account.unblock": "Одблокирај корисника @{name}",
   "account.unblock_domain": "Одблокирај домен {domain}",
-  "account.unblock_short": "Unblock",
-  "account.unendorse": "Не истичи на налогу",
+  "account.unblock_short": "Одблокирај",
+  "account.unendorse": "Не истичи на профилу",
   "account.unfollow": "Отпрати",
   "account.unmute": "Уклони ућуткавање кориснику @{name}",
   "account.unmute_notifications": "Укључи назад обавештења од корисника @{name}",
-  "account.unmute_short": "Unmute",
-  "account_note.placeholder": "Click to add a note",
-  "admin.dashboard.daily_retention": "User retention rate by day after sign-up",
-  "admin.dashboard.monthly_retention": "User retention rate by month after sign-up",
-  "admin.dashboard.retention.average": "Average",
-  "admin.dashboard.retention.cohort": "Sign-up month",
-  "admin.dashboard.retention.cohort_size": "New users",
+  "account.unmute_short": "Искључи ућуткивање",
+  "account_note.placeholder": "Кликните да додате напомену",
+  "admin.dashboard.daily_retention": "Стопа задржавања корисника по данима након регистрације",
+  "admin.dashboard.monthly_retention": "Стопа задржавања корисника по месецима након регистрације",
+  "admin.dashboard.retention.average": "Просек",
+  "admin.dashboard.retention.cohort": "Месец приступања",
+  "admin.dashboard.retention.cohort_size": "Нови корисници",
   "alert.rate_limited.message": "Молимо покушајте поново после {retry_time, time, medium}.",
   "alert.rate_limited.title": "Ограничена брзина",
   "alert.unexpected.message": "Појавила се неочекивана грешка.",
   "alert.unexpected.title": "Упс!",
   "announcement.announcement": "Најава",
-  "attachments_list.unprocessed": "(unprocessed)",
-  "audio.hide": "Hide audio",
+  "attachments_list.unprocessed": "(необрађено)",
+  "audio.hide": "Сакриј аудио",
   "autosuggest_hashtag.per_week": "{count} недељно",
   "boost_modal.combo": "Можете притиснути {combo} да прескочите ово следећи пут",
-  "bundle_column_error.copy_stacktrace": "Copy error report",
-  "bundle_column_error.error.body": "The requested page could not be rendered. It could be due to a bug in our code, or a browser compatibility issue.",
-  "bundle_column_error.error.title": "Oh, no!",
-  "bundle_column_error.network.body": "There was an error when trying to load this page. This could be due to a temporary problem with your internet connection or this server.",
-  "bundle_column_error.network.title": "Network error",
+  "bundle_column_error.copy_stacktrace": "Копирај извештај о грешци",
+  "bundle_column_error.error.body": "Тражена страница није могла да буде приказана. Разлог може бити грешка у нашем коду или проблем са компатибилношћу претраживача.",
+  "bundle_column_error.error.title": "О, не!",
+  "bundle_column_error.network.body": "Дошло је до грешке при покушају учитавања ове странице. Разлог може бити тренутни проблем са Вашом интернет везом или са овим сервером.",
+  "bundle_column_error.network.title": "Грешка на мрежи",
   "bundle_column_error.retry": "Покушајте поново",
-  "bundle_column_error.return": "Go back home",
-  "bundle_column_error.routing.body": "The requested page could not be found. Are you sure the URL in the address bar is correct?",
+  "bundle_column_error.return": "Иди на почетак",
+  "bundle_column_error.routing.body": "Тражена страница није пронађена. Да ли сте сигурни да је УРЛ у пољу за адресу исправан?",
   "bundle_column_error.routing.title": "404",
   "bundle_modal_error.close": "Затвори",
   "bundle_modal_error.message": "Нешто није било у реду при учитавању ове компоненте.",
   "bundle_modal_error.retry": "Покушајте поново",
-  "closed_registrations.other_server_instructions": "Since Mastodon is decentralized, you can create an account on another server and still interact with this one.",
-  "closed_registrations_modal.description": "Creating an account on {domain} is currently not possible, but please keep in mind that you do not need an account specifically on {domain} to use Mastodon.",
-  "closed_registrations_modal.find_another_server": "Find another server",
-  "closed_registrations_modal.preamble": "Mastodon is decentralized, so no matter where you create your account, you will be able to follow and interact with anyone on this server. You can even self-host it!",
-  "closed_registrations_modal.title": "Signing up on Mastodon",
-  "column.about": "About",
+  "closed_registrations.other_server_instructions": "Пошто је Мастодон децентрализован, можете направити налог на другом серверу али и даље комуницирати са овим.",
+  "closed_registrations_modal.description": "Прављење налога на {domain} тренутно није могуће, али имајте у виду да Вам не треба налог засебно на {domain} да бисте користили Мастодон.",
+  "closed_registrations_modal.find_another_server": "Пронађите други сервер",
+  "closed_registrations_modal.preamble": "Мастодон је децентрализован, тако да без обзира где креирате свој налог, моћи ћете да пратите и комуницирате са било ким на овом серверу. Можете чак и сами да га хостујете!",
+  "closed_registrations_modal.title": "Пријављивање на Мастодон",
+  "column.about": "О",
   "column.blocks": "Блокирани корисници",
   "column.bookmarks": "Обележивачи",
   "column.community": "Локална временска линија",
-  "column.direct": "Direct messages",
-  "column.directory": "Претражи налоге",
+  "column.direct": "Директне поруке",
+  "column.directory": "Претражи профиле",
   "column.domain_blocks": "Скривени домени",
   "column.favourites": "Омиљене",
   "column.follow_requests": "Захтеви за праћење",
@@ -123,10 +123,10 @@
   "community.column_settings.local_only": "Само локално",
   "community.column_settings.media_only": "Само Медији",
   "community.column_settings.remote_only": "Само удаљено",
-  "compose.language.change": "Change language",
-  "compose.language.search": "Search languages...",
+  "compose.language.change": "Промени језик",
+  "compose.language.search": "Претрага језика...",
   "compose_form.direct_message_warning_learn_more": "Сазнајте више",
-  "compose_form.encryption_warning": "Posts on Mastodon are not end-to-end encrypted. Do not share any dangerous information over Mastodon.",
+  "compose_form.encryption_warning": "Објаве на Мастодону нису end-to-end енкриптоване. Немојте делити никакве осетљиве информације преко Мастодона.",
   "compose_form.hashtag_warning": "Ова труба неће бити излистана под било којом тарабом јер је сакривена. Само јавне трубе могу бити претражене тарабом.",
   "compose_form.lock_disclaimer": "Ваш налог није {locked}. Свако може да Вас запрати и да види објаве намењене само Вашим пратиоцима.",
   "compose_form.lock_disclaimer.lock": "закључан",
@@ -137,9 +137,10 @@
   "compose_form.poll.remove_option": "Одстрани овај избор",
   "compose_form.poll.switch_to_multiple": "Промените анкету да бисте омогућили више избора",
   "compose_form.poll.switch_to_single": "Промените анкету да бисте омогућили један избор",
-  "compose_form.publish": "Publish",
+  "compose_form.publish": "Објави",
+  "compose_form.publish_form": "Објави",
   "compose_form.publish_loud": "{publish}!",
-  "compose_form.save_changes": "Save changes",
+  "compose_form.save_changes": "Сачувај измене",
   "compose_form.sensitive.hide": "Означи мултимедију као осетљиву",
   "compose_form.sensitive.marked": "Медији су означени као осетљиви",
   "compose_form.sensitive.unmarked": "Медији су означени као не-осетљиви",
@@ -150,14 +151,14 @@
   "confirmations.block.block_and_report": "Блокирај и Пријави",
   "confirmations.block.confirm": "Блокирај",
   "confirmations.block.message": "Да ли сте сигурни да желите да блокирате корисника {name}?",
-  "confirmations.cancel_follow_request.confirm": "Withdraw request",
-  "confirmations.cancel_follow_request.message": "Are you sure you want to withdraw your request to follow {name}?",
+  "confirmations.cancel_follow_request.confirm": "Повуци захтев",
+  "confirmations.cancel_follow_request.message": "Да ли сте сигурни да желите да повучете захтев да пратите {name}?",
   "confirmations.delete.confirm": "Обриши",
   "confirmations.delete.message": "Да ли сте сигурни да желите обришете овај статус?",
   "confirmations.delete_list.confirm": "Обриши",
   "confirmations.delete_list.message": "Да ли сте сигурни да желите да бесповратно обришете ову листу?",
-  "confirmations.discard_edit_media.confirm": "Discard",
-  "confirmations.discard_edit_media.message": "You have unsaved changes to the media description or preview, discard them anyway?",
+  "confirmations.discard_edit_media.confirm": "Одбаци",
+  "confirmations.discard_edit_media.message": "Имате несачуване промене у опису или предпрегледу медија, да ли ипак хоћете да их одбаците?",
   "confirmations.domain_block.confirm": "Сакриј цео домен",
   "confirmations.domain_block.message": "Да ли сте заиста сигурни да желите да блокирате цео домен {domain}? У већини случајева, неколико добро промишљених блокирања или ућуткавања су довољна и препоручљива.",
   "confirmations.logout.confirm": "Одјави се",
@@ -175,24 +176,24 @@
   "conversation.mark_as_read": "Означи као прочитано",
   "conversation.open": "Прикажи преписку",
   "conversation.with": "Са {names}",
-  "copypaste.copied": "Copied",
-  "copypaste.copy": "Copy",
+  "copypaste.copied": "Копирано",
+  "copypaste.copy": "Копирај",
   "directory.federated": "Са знаних здружених инстанци",
   "directory.local": "Само са {domain}",
   "directory.new_arrivals": "Новопридошли",
   "directory.recently_active": "Недавно активни",
-  "disabled_account_banner.account_settings": "Account settings",
-  "disabled_account_banner.text": "Your account {disabledAccount} is currently disabled.",
-  "dismissable_banner.community_timeline": "These are the most recent public posts from people whose accounts are hosted by {domain}.",
-  "dismissable_banner.dismiss": "Dismiss",
-  "dismissable_banner.explore_links": "These news stories are being talked about by people on this and other servers of the decentralized network right now.",
-  "dismissable_banner.explore_statuses": "These posts from this and other servers in the decentralized network are gaining traction on this server right now.",
-  "dismissable_banner.explore_tags": "These hashtags are gaining traction among people on this and other servers of the decentralized network right now.",
-  "dismissable_banner.public_timeline": "These are the most recent public posts from people on this and other servers of the decentralized network that this server knows about.",
+  "disabled_account_banner.account_settings": "Подешавања налога",
+  "disabled_account_banner.text": "Ваш налог {disabledAccount} је тренутно онемогућен.",
+  "dismissable_banner.community_timeline": "Ово су најновије јавне објаве корисника чије налоге хостује {domain}.",
+  "dismissable_banner.dismiss": "Одбаци",
+  "dismissable_banner.explore_links": "О овим вестима управо сада разговарају људи на овом и другим серверима децентрализоване мреже.",
+  "dismissable_banner.explore_statuses": "Ове објаве са овог и других сервера у децентрализованој мрежи постају све популарнији на овом серверу.",
+  "dismissable_banner.explore_tags": "Ови хештагови постају све популарнији међу корисницима на овом и другим серверима децентрализоване мреже.",
+  "dismissable_banner.public_timeline": "Ово су најновије јавне објаве корисника на овом и другим серверима децентрализоване мреже који су овом серверу познати.",
   "embed.instructions": "Угради овај статус на Ваш веб сајт копирањем кода испод.",
   "embed.preview": "Овако ће да изгледа:",
   "emoji_button.activity": "Активност",
-  "emoji_button.clear": "Clear",
+  "emoji_button.clear": "Очисти",
   "emoji_button.custom": "Произвољно",
   "emoji_button.flags": "Заставе",
   "emoji_button.food": "Храна и пиће",
@@ -208,20 +209,20 @@
   "emoji_button.travel": "Путовања и места",
   "empty_column.account_suspended": "Налог суспендован",
   "empty_column.account_timeline": "Овде нема труба!",
-  "empty_column.account_unavailable": "Налог је недоступан",
+  "empty_column.account_unavailable": "Профил је недоступан",
   "empty_column.blocks": "Још увек немате блокираних корисника.",
   "empty_column.bookmarked_statuses": "Још увек немате обележене трубе. Када их обележите, појавиће се овде.",
   "empty_column.community": "Локална временска линија је празна. Напишите нешто јавно да започнете!",
-  "empty_column.direct": "You don't have any direct messages yet. When you send or receive one, it will show up here.",
+  "empty_column.direct": "Још увек немаш ниједну директну поруку. Када је пошаљеш или примиш, она ће се појавити овде.",
   "empty_column.domain_blocks": "Још увек нема сакривених домена.",
-  "empty_column.explore_statuses": "Nothing is trending right now. Check back later!",
+  "empty_column.explore_statuses": "Тренутно ништа није у тренду. Провери поново касније!",
   "empty_column.favourited_statuses": "Још увек немате труба које су вам се свиделе. Када вам се једна свиди, појавиће се овде.",
   "empty_column.favourites": "Још увек се никоме није свидела ова труба. Када се некоме свиди, појавиће се овде.",
-  "empty_column.follow_recommendations": "Looks like no suggestions could be generated for you. You can try using search to look for people you might know or explore trending hashtags.",
+  "empty_column.follow_recommendations": "Изгледа да не може да се генерише било какав предлог за тебе. Можеш да покушаш да користиш претрагу да пронађеш особе које можда познајеш или истражиш популарне хештегове.",
   "empty_column.follow_requests": "Још увек немате захтева за праћење. Када примите захтев, појавиће се овде.",
   "empty_column.hashtag": "Тренутно нема ништа на овој означеној тараби.",
   "empty_column.home": "Ваша временска линија је празна! Посетите {public} или користите претрагу да почнете и да упознате нове људе.",
-  "empty_column.home.suggestions": "See some suggestions",
+  "empty_column.home.suggestions": "Погледајте неке предлоге",
   "empty_column.list": "У овој листи још нема ничега. Када чланови листе објаве нове статусе, они ће се појавити овде.",
   "empty_column.lists": "Још увек немате ниједну листу. Када направите једну, појавиће се овде.",
   "empty_column.mutes": "Још увек немате ућутканих корисника.",
@@ -233,40 +234,36 @@
   "error.unexpected_crash.next_steps_addons": "Покушајте да их онемогућите и освежите страницу. Ако то не помогне, можда ћете и даље моћи да користите Mastodon преко другог прегледача или матичне апликације.",
   "errors.unexpected_crash.copy_stacktrace": "Копирај \"stacktrace\" у клипборд",
   "errors.unexpected_crash.report_issue": "Пријави проблем",
-  "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
-  "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
+  "explore.search_results": "Резултати претраге",
+  "explore.title": "Истражи",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
   "filter_modal.added.expired_title": "Expired filter!",
   "filter_modal.added.review_and_configure": "To review and further configure this filter category, go to the {settings_link}.",
-  "filter_modal.added.review_and_configure_title": "Filter settings",
+  "filter_modal.added.review_and_configure_title": "Подешавања филтера",
   "filter_modal.added.settings_link": "settings page",
   "filter_modal.added.short_explanation": "This post has been added to the following filter category: {title}.",
   "filter_modal.added.title": "Filter added!",
   "filter_modal.select_filter.context_mismatch": "does not apply to this context",
-  "filter_modal.select_filter.expired": "expired",
+  "filter_modal.select_filter.expired": "истекло",
   "filter_modal.select_filter.prompt_new": "New category: {name}",
   "filter_modal.select_filter.search": "Search or create",
   "filter_modal.select_filter.subtitle": "Use an existing category or create a new one",
-  "filter_modal.select_filter.title": "Filter this post",
-  "filter_modal.title.status": "Filter a post",
-  "follow_recommendations.done": "Done",
+  "filter_modal.select_filter.title": "Филтрирај ову објаву",
+  "filter_modal.title.status": "Филтрирај објаву",
+  "follow_recommendations.done": "Завршено",
   "follow_recommendations.heading": "Follow people you'd like to see posts from! Here are some suggestions.",
   "follow_recommendations.lead": "Posts from people you follow will show up in chronological order on your home feed. Don't be afraid to make mistakes, you can unfollow people just as easily any time!",
   "follow_request.authorize": "Одобри",
   "follow_request.reject": "Одбиј",
   "follow_requests.unlocked_explanation": "Иако ваш налог није закључан, особље {domain} је помислило да бисте можда желели ручно да прегледате захтеве за праћење са ових налога.",
-  "footer.about": "About",
-  "footer.directory": "Profiles directory",
-  "footer.get_app": "Get the app",
-  "footer.invite": "Invite people",
-  "footer.keyboard_shortcuts": "Keyboard shortcuts",
-  "footer.privacy_policy": "Privacy policy",
+  "footer.about": "О",
+  "footer.directory": "Директоријум профила",
+  "footer.get_app": "Преузмите апликацију",
+  "footer.invite": "Pozovite korisnike",
+  "footer.keyboard_shortcuts": "Пречице на тастатури",
+  "footer.privacy_policy": "Политика приватности",
   "footer.source_code": "View source code",
   "generic.saved": "Сачувано",
   "getting_started.heading": "Да почнете",
@@ -278,7 +275,7 @@
   "hashtag.column_settings.tag_mode.all": "Све оve",
   "hashtag.column_settings.tag_mode.any": "Било које од ових",
   "hashtag.column_settings.tag_mode.none": "Ништа од ових",
-  "hashtag.column_settings.tag_toggle": "Include additional tags in this column",
+  "hashtag.column_settings.tag_toggle": "Укључи и додатне ознаке за ову колону",
   "hashtag.follow": "Follow hashtag",
   "hashtag.unfollow": "Unfollow hashtag",
   "home.column_settings.basic": "Основно",
@@ -320,11 +317,11 @@
   "keyboard_shortcuts.local": "да отворите локалну временску линију",
   "keyboard_shortcuts.mention": "да поменете аутора",
   "keyboard_shortcuts.muted": "да отворите листу ућутканих корисника",
-  "keyboard_shortcuts.my_profile": "Погледајте ваш налог",
+  "keyboard_shortcuts.my_profile": "Погледајте ваш профил",
   "keyboard_shortcuts.notifications": "да отворите колону обавештења",
   "keyboard_shortcuts.open_media": "за отварање медија",
   "keyboard_shortcuts.pinned": "да отворите листу закачених труба",
-  "keyboard_shortcuts.profile": "Погледајте налог аутора",
+  "keyboard_shortcuts.profile": "Погледајте профил аутора",
   "keyboard_shortcuts.reply": "да одговорите",
   "keyboard_shortcuts.requests": "да отворите листу примљених захтева за праћење",
   "keyboard_shortcuts.search": "да се пребаците на претрагу",
@@ -332,7 +329,7 @@
   "keyboard_shortcuts.start": "да отворите колону \"почнимо\"",
   "keyboard_shortcuts.toggle_hidden": "да прикажете/сакријте текст иза CW-а",
   "keyboard_shortcuts.toggle_sensitivity": "за приказивање/сакривање медија",
-  "keyboard_shortcuts.toot": "да започнете скроз нову трубу",
+  "keyboard_shortcuts.toot": "Започни нову објаву",
   "keyboard_shortcuts.unfocus": "да одфокусирате/не будете више на претрази/прављењу нове трубе",
   "keyboard_shortcuts.up": "да се померите на горе у листи",
   "lightbox.close": "Затвори",
@@ -340,8 +337,8 @@
   "lightbox.expand": "Увећај преглед слике",
   "lightbox.next": "Следећи",
   "lightbox.previous": "Претходни",
-  "limited_account_hint.action": "Show profile anyway",
-  "limited_account_hint.title": "This profile has been hidden by the moderators of {domain}.",
+  "limited_account_hint.action": "Ипак прикажи профил",
+  "limited_account_hint.title": "Овај профил су сакрили модератори {domain}.",
   "lists.account.add": "Додај на листу",
   "lists.account.remove": "Уклони са листе",
   "lists.delete": "Обриши листу",
@@ -349,7 +346,7 @@
   "lists.edit.submit": "Промени наслов",
   "lists.new.create": "Додај листу",
   "lists.new.title_placeholder": "Наслов нове листе",
-  "lists.replies_policy.followed": "Any followed user",
+  "lists.replies_policy.followed": "Сваки праћени корисник",
   "lists.replies_policy.list": "Чланови листе",
   "lists.replies_policy.none": "Нико",
   "lists.replies_policy.title": "Прикажи одговоре на:",
@@ -364,16 +361,16 @@
   "mute_modal.duration": "Трајање",
   "mute_modal.hide_notifications": "Сакриј обавештења од овог корисника?",
   "mute_modal.indefinite": "Неодређен",
-  "navigation_bar.about": "About",
+  "navigation_bar.about": "О",
   "navigation_bar.blocks": "Блокирани корисници",
   "navigation_bar.bookmarks": "Маркери",
   "navigation_bar.community_timeline": "Локална временска линија",
   "navigation_bar.compose": "Саставите нову трубу",
-  "navigation_bar.direct": "Direct messages",
+  "navigation_bar.direct": "Директне поруке",
   "navigation_bar.discover": "Откриј",
   "navigation_bar.domain_blocks": "Сакривени домени",
-  "navigation_bar.edit_profile": "Измени налог",
-  "navigation_bar.explore": "Explore",
+  "navigation_bar.edit_profile": "Уреди профил",
+  "navigation_bar.explore": "Истражи",
   "navigation_bar.favourites": "Омиљене",
   "navigation_bar.filters": "Пригушене речи",
   "navigation_bar.follow_requests": "Захтеви за праћење",
@@ -385,11 +382,11 @@
   "navigation_bar.pins": "Прикачене трубе",
   "navigation_bar.preferences": "Подешавања",
   "navigation_bar.public_timeline": "Здружена временска линија",
-  "navigation_bar.search": "Search",
+  "navigation_bar.search": "Претрага",
   "navigation_bar.security": "Безбедност",
-  "not_signed_in_indicator.not_signed_in": "You need to sign in to access this resource.",
-  "notification.admin.report": "{name} reported {target}",
-  "notification.admin.sign_up": "{name} signed up",
+  "not_signed_in_indicator.not_signed_in": "Морате да се пријавите да приступите овом ресурсу.",
+  "notification.admin.report": "{name} је пријавио {target}",
+  "notification.admin.sign_up": "{name} се регистровао",
   "notification.favourite": "{name} је ставио/ла Ваш статус као омиљени",
   "notification.follow": "{name} Вас је запратио/ла",
   "notification.follow_request": "{name} је затражио да Вас запрати",
@@ -398,16 +395,16 @@
   "notification.poll": "Завршена је анкета у којој сте гласали",
   "notification.reblog": "{name} је подржао/ла Ваш статус",
   "notification.status": "{name} управо објавио",
-  "notification.update": "{name} edited a post",
+  "notification.update": "{name} је изменио објаву",
   "notifications.clear": "Очисти обавештења",
   "notifications.clear_confirmation": "Да ли сте сигурно да трајно желите да очистите Ваша обавештења?",
-  "notifications.column_settings.admin.report": "New reports:",
-  "notifications.column_settings.admin.sign_up": "New sign-ups:",
+  "notifications.column_settings.admin.report": "Нове пријаве:",
+  "notifications.column_settings.admin.sign_up": "Нове пријаве:",
   "notifications.column_settings.alert": "Обавештења на радној површини",
   "notifications.column_settings.favourite": "Омиљени:",
   "notifications.column_settings.filter_bar.advanced": "Прикажи све категорије",
   "notifications.column_settings.filter_bar.category": "Трака за брзи филтер",
-  "notifications.column_settings.filter_bar.show_bar": "Show filter bar",
+  "notifications.column_settings.filter_bar.show_bar": "Прикажи траку са филтерима",
   "notifications.column_settings.follow": "Нови пратиоци:",
   "notifications.column_settings.follow_request": "Нови захтеви за праћење:",
   "notifications.column_settings.mention": "Помињања:",
@@ -417,9 +414,9 @@
   "notifications.column_settings.show": "Прикажи у колони",
   "notifications.column_settings.sound": "Пуштај звук",
   "notifications.column_settings.status": "Нови тутови:",
-  "notifications.column_settings.unread_notifications.category": "Unread notifications",
-  "notifications.column_settings.unread_notifications.highlight": "Highlight unread notifications",
-  "notifications.column_settings.update": "Edits:",
+  "notifications.column_settings.unread_notifications.category": "Непрочитана обавештења",
+  "notifications.column_settings.unread_notifications.highlight": "Истакни непрочитана обавештења",
+  "notifications.column_settings.update": "Измене:",
   "notifications.filter.all": "Све",
   "notifications.filter.boosts": "Подршки",
   "notifications.filter.favourites": "Омиљене",
@@ -448,22 +445,22 @@
   "poll_button.remove_poll": "Уклони анкету",
   "privacy.change": "Подеси статус приватности",
   "privacy.direct.long": "Објави само корисницима који су поменути",
-  "privacy.direct.short": "Direct",
+  "privacy.direct.short": "Само за поменуте",
   "privacy.private.long": "Објави само пратиоцима",
-  "privacy.private.short": "Followers-only",
-  "privacy.public.long": "Visible for all",
+  "privacy.private.short": "Само пратиоци",
+  "privacy.public.long": "Видљиво свима",
   "privacy.public.short": "Јавно",
-  "privacy.unlisted.long": "Visible for all, but opted-out of discovery features",
+  "privacy.unlisted.long": "Видљиво свима, али искључено из могућности откривања",
   "privacy.unlisted.short": "Неизлистано",
-  "privacy_policy.last_updated": "Last updated {date}",
-  "privacy_policy.title": "Privacy Policy",
+  "privacy_policy.last_updated": "Последња измена {date}",
+  "privacy_policy.title": "Политика приватности",
   "refresh": "Освежи",
   "regeneration_indicator.label": "Учитавање…",
   "regeneration_indicator.sublabel": "Ваша почетна страница се припрема!",
   "relative_time.days": "{number}д",
-  "relative_time.full.days": "{number, plural, one {# day} other {# days}} ago",
+  "relative_time.full.days": "пре {number, plural, one {# дана} other {# дана}}",
   "relative_time.full.hours": "{number, plural, one {# hour} other {# hours}} ago",
-  "relative_time.full.just_now": "just now",
+  "relative_time.full.just_now": "управо сад",
   "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}х",
@@ -472,20 +469,20 @@
   "relative_time.seconds": "{number}с",
   "relative_time.today": "данас",
   "reply_indicator.cancel": "Поништи",
-  "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.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.category.title_account": "profile",
-  "report.category.title_status": "post",
-  "report.close": "Done",
-  "report.comment.title": "Is there anything else you think we should know?",
+  "report.block": "Блокирај",
+  "report.block_explanation": "Нећете видети његове/њене објаве. Ни он/она неће видети Ваше објаве нити ће моћи да Вас прате. Такође може да зна да је блокиран(а).",
+  "report.categories.other": "Остало",
+  "report.categories.spam": "Спам",
+  "report.categories.violation": "Садржај крши једно или више правила сервера",
+  "report.category.subtitle": "Одаберите најприближније",
+  "report.category.title": "Реците нам шта је проблем са овим {type}",
+  "report.category.title_account": "профилом",
+  "report.category.title_status": "постом",
+  "report.close": "Готово",
+  "report.comment.title": "Да ли има нешто додатно што треба да знамо?",
   "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": "Next",
   "report.placeholder": "Додатни коментари",
@@ -493,29 +490,29 @@
   "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": "Ово је спам",
   "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.reasons.violation": "Крши правила сервера",
+  "report.reasons.violation_description": "Свесни сте да крши нека одређена правила",
   "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.statuses.title": "Да ли постоје било какве објаве које подржавају ову пријаву?",
   "report.submit": "Пошаљи",
   "report.target": "Пријављујем {target}",
-  "report.thanks.take_action": "Here are your options for controlling what you see on Mastodon:",
-  "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_explanation": "You are following this account. To not see their posts in your home feed anymore, unfollow them.",
-  "report_notification.attached_statuses": "{count, plural, one {{count} post} other {{count} posts}} attached",
-  "report_notification.categories.other": "Other",
-  "report_notification.categories.spam": "Spam",
-  "report_notification.categories.violation": "Rule violation",
-  "report_notification.open": "Open report",
+  "report.thanks.take_action": "Ово су Ваше опције да контролишете шта видите на Мастодону:",
+  "report.thanks.take_action_actionable": "Док ми гледамо, можете применити следеће радње против @{name}:",
+  "report.thanks.title": "Не желите да видите ово?",
+  "report.thanks.title_actionable": "Хвала на пријави, прегледаћемо је.",
+  "report.unfollow": "Отпрати @{name}",
+  "report.unfollow_explanation": "Пратиш овај налог. Да не би више видео њихове објаве у својом основном низу објава, престани да их пратиш.",
+  "report_notification.attached_statuses": "{count, plural, one {{count} објава} other {{count} објаве}} у прилогу",
+  "report_notification.categories.other": "Остало",
+  "report_notification.categories.spam": "Спам",
+  "report_notification.categories.violation": "Кршење правила",
+  "report_notification.open": "Отвори пријаву",
   "search.placeholder": "Претрага",
-  "search.search_or_paste": "Search or paste URL",
+  "search.search_or_paste": "Претражите или унесите адресу",
   "search_popout.search_format": "Напредни формат претраге",
   "search_popout.tips.full_text": "Једноставан текст враћа статусе које сте написали, фаворизовали, подржали или били поменути, као и подударање корисничких имена, приказаних имена, и тараба.",
   "search_popout.tips.hashtag": "хештег",
@@ -523,22 +520,22 @@
   "search_popout.tips.text": "Тражењем обичног текста ћете добити сва пронађена имена, сва корисничка имена и све нађене хештегове",
   "search_popout.tips.user": "корисник",
   "search_results.accounts": "Људи",
-  "search_results.all": "All",
+  "search_results.all": "Све",
   "search_results.hashtags": "Тарабе",
-  "search_results.nothing_found": "Could not find anything for these search terms",
+  "search_results.nothing_found": "Нема ништа за овај термин претраге",
   "search_results.statuses": "Трубе",
-  "search_results.statuses_fts_disabled": "Searching toots by their content is not enabled on this Mastodon server.",
-  "search_results.title": "Search for {q}",
+  "search_results.statuses_fts_disabled": "Претрага објава по садржају није омогућена на овом Мастодон серверу.",
+  "search_results.title": "Претражи {q}",
   "search_results.total": "{count, number} {count, plural, one {резултат} few {резултата} other {резултата}}",
-  "server_banner.about_active_users": "People using this server during the last 30 days (Monthly Active Users)",
-  "server_banner.active_users": "active users",
-  "server_banner.administered_by": "Administered by:",
+  "server_banner.about_active_users": "Људи који су користили овај сервер у претходних 30 дана (месечно активних корисника)",
+  "server_banner.active_users": "активних корисника",
+  "server_banner.administered_by": "Администрирано од стране:",
   "server_banner.introduction": "{domain} is part of the decentralized social network powered by {mastodon}.",
-  "server_banner.learn_more": "Learn more",
-  "server_banner.server_stats": "Server stats:",
-  "sign_in_banner.create_account": "Create account",
-  "sign_in_banner.sign_in": "Sign in",
-  "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts, or interact from your account on a different server.",
+  "server_banner.learn_more": "Сазнајте више",
+  "server_banner.server_stats": "Статистике сервера:",
+  "sign_in_banner.create_account": "Направи налог",
+  "sign_in_banner.sign_in": "Пријави се",
+  "sign_in_banner.text": "Пријавите се да пратите профиле или хештегове, ставите објаве као омиљене, делите и одговарате на њих или комуницирате са свог налога са другог сервера.",
   "status.admin_account": "Отвори модераторски интерфејс за @{name}",
   "status.admin_status": "Отвори овај статус у модераторском интерфејсу",
   "status.block": "Блокирај @{name}",
@@ -549,16 +546,16 @@
   "status.delete": "Обриши",
   "status.detailed_status": "Детаљни преглед разговора",
   "status.direct": "Директна порука @{name}",
-  "status.edit": "Edit",
-  "status.edited": "Edited {date}",
-  "status.edited_x_times": "Edited {count, plural, one {{count} time} other {{count} times}}",
+  "status.edit": "Измени",
+  "status.edited": "Измењено {date}",
+  "status.edited_x_times": "Измењено {count, plural, one {{count} пут} other {{count} пута}}",
   "status.embed": "Угради на сајт",
   "status.favourite": "Омиљено",
-  "status.filter": "Filter this post",
+  "status.filter": "Филтрирај ову објаву",
   "status.filtered": "Филтрирано",
-  "status.hide": "Hide toot",
-  "status.history.created": "{name} created {date}",
-  "status.history.edited": "{name} edited {date}",
+  "status.hide": "Сакриј тут",
+  "status.history.created": "{name} написао/ла {date}",
+  "status.history.edited": "{name} изменио/ла {date}",
   "status.load_more": "Учитај још",
   "status.media_hidden": "Мултимедија сакривена",
   "status.mention": "Помени корисника @{name}",
@@ -566,7 +563,7 @@
   "status.mute": "Ућуткај @{name}",
   "status.mute_conversation": "Ућуткај преписку",
   "status.open": "Прошири овај статус",
-  "status.pin": "Закачи на налог",
+  "status.pin": "Закачи на профил",
   "status.pinned": "Закачена труба",
   "status.read_more": "Прочитајте више",
   "status.reblog": "Подржи",
@@ -575,28 +572,28 @@
   "status.reblogs.empty": "Још увек нико није подржао ову трубу. Када буде подржана, појавиће се овде.",
   "status.redraft": "Избриши и преправи",
   "status.remove_bookmark": "Уклони обележивач",
-  "status.replied_to": "Replied to {name}",
+  "status.replied_to": "Одговор за {name}",
   "status.reply": "Одговори",
   "status.replyAll": "Одговори на дискусију",
   "status.report": "Пријави корисника @{name}",
   "status.sensitive_warning": "Осетљив садржај",
   "status.share": "Подели",
-  "status.show_filter_reason": "Show anyway",
+  "status.show_filter_reason": "Ипак прикажи",
   "status.show_less": "Прикажи мање",
   "status.show_less_all": "Прикажи мање за све",
   "status.show_more": "Прикажи више",
   "status.show_more_all": "Прикажи више за све",
-  "status.show_original": "Show original",
-  "status.translate": "Translate",
-  "status.translated_from_with": "Translated from {lang} using {provider}",
+  "status.show_original": "Прикажи оргинал",
+  "status.translate": "Преведи",
+  "status.translated_from_with": "Преведено са {lang} користећи {provider}",
   "status.uncached_media_warning": "Није доступно",
   "status.unmute_conversation": "Укључи преписку",
-  "status.unpin": "Откачи са налога",
-  "subscribed_languages.lead": "Only posts in selected languages will appear on your home and list timelines after the change. Select none to receive posts in all languages.",
-  "subscribed_languages.save": "Save changes",
-  "subscribed_languages.target": "Change subscribed languages for {target}",
-  "suggestions.dismiss": "Dismiss suggestion",
-  "suggestions.header": "You might be interested in…",
+  "status.unpin": "Откачи са профила",
+  "subscribed_languages.lead": "Само објаве на означеним језицима ће се појављивати на почетној линији и на листама после ове измене. Одаберите ништа да примате објаве на свим језицима.",
+  "subscribed_languages.save": "Сачувај измене",
+  "subscribed_languages.target": "Промени језике на које је {target} пријављен",
+  "suggestions.dismiss": "Одбаци предлог",
+  "suggestions.header": "Можда ће Вас занимати…",
   "tabs_bar.federated_timeline": "Федерисано",
   "tabs_bar.home": "Почетна",
   "tabs_bar.local_timeline": "Локално",
@@ -604,41 +601,41 @@
   "time_remaining.days": "Остало {number, plural, one {# дан} few {# дана} other {# дана}}",
   "time_remaining.hours": "Остало {number, plural, one {# сат} few {# сата} other {# сати}}",
   "time_remaining.minutes": "Остало {number, plural, one {# минут} few {# минута} other {# минута}}",
-  "time_remaining.moments": "Moments remaining",
+  "time_remaining.moments": "Преостао тренутак",
   "time_remaining.seconds": "Остало {number, plural, one {# секунд} few {# секунде} other {# секунди}}",
   "timeline_hint.remote_resource_not_displayed": "{resource} са других сервера се не приказују.",
   "timeline_hint.resources.followers": "Пратиоци",
   "timeline_hint.resources.follows": "Праћени",
   "timeline_hint.resources.statuses": "Старији тут",
   "trends.counter_by_accounts": "{count, plural, one {{counter} person} other {{counter} people}} in the past {days, plural, one {day} other {{days} days}}",
-  "trends.trending_now": "Trending now",
-  "ui.beforeunload": "Ако напустите Мастодонт, изгубићете написани нацрт.",
+  "trends.trending_now": "У тренду сада",
+  "ui.beforeunload": "Ако напустите Мастодон, изгубићете написани нацрт.",
   "units.short.billion": "{count}Б",
   "units.short.million": "{count}М",
   "units.short.thousand": "{count}К",
   "upload_area.title": "Превуците овде да отпремите",
   "upload_button.label": "Додај мултимедију (JPEG, PNG, GIF, WebM, MP4, MOV)",
-  "upload_error.limit": "File upload limit exceeded.",
-  "upload_error.poll": "File upload not allowed with polls.",
-  "upload_form.audio_description": "Describe for people with hearing loss",
+  "upload_error.limit": "Достигнуто ограничење величине за отпремање.",
+  "upload_error.poll": "Отпремање датотека није дозвољено са анкетама.",
+  "upload_form.audio_description": "Опишите за људе са оштећењем слуха",
   "upload_form.description": "Опишите за особе са оштећеним видом",
-  "upload_form.description_missing": "No description added",
+  "upload_form.description_missing": "Нема описа",
   "upload_form.edit": "Уреди",
   "upload_form.thumbnail": "Промени приказ слика",
   "upload_form.undo": "Обриши",
-  "upload_form.video_description": "Describe for people with hearing loss or visual impairment",
+  "upload_form.video_description": "Опишите за људе са оштећењем слуха или вида",
   "upload_modal.analyzing_picture": "Анализа слике…",
   "upload_modal.apply": "Примени",
-  "upload_modal.applying": "Applying…",
+  "upload_modal.applying": "Примењујем…",
   "upload_modal.choose_image": "Изабери слику",
-  "upload_modal.description_placeholder": "A quick brown fox jumps over the lazy dog",
-  "upload_modal.detect_text": "Detect text from picture",
+  "upload_modal.description_placeholder": "Љубазни фењерџија чађавог лица хоће да ми покаже штос",
+  "upload_modal.detect_text": "Откриј текст са слике",
   "upload_modal.edit_media": "Уреди милтимедијум",
   "upload_modal.hint": "Click or drag the circle on the preview to choose the focal point which will always be in view on all thumbnails.",
-  "upload_modal.preparing_ocr": "Preparing OCR…",
+  "upload_modal.preparing_ocr": "Припрема OCR-а…",
   "upload_modal.preview_label": "Преглед ({ratio})",
   "upload_progress.label": "Отпремам...",
-  "upload_progress.processing": "Processing…",
+  "upload_progress.processing": "Обрада…",
   "video.close": "Затвори видео",
   "video.download": "Преузимање датотеке",
   "video.exit_fullscreen": "Напусти цео екран",
diff --git a/app/javascript/mastodon/locales/sv.json b/app/javascript/mastodon/locales/sv.json
index 7556b4141..5e4da3e55 100644
--- a/app/javascript/mastodon/locales/sv.json
+++ b/app/javascript/mastodon/locales/sv.json
@@ -19,7 +19,7 @@
   "account.block_domain": "Blockera domänen {domain}",
   "account.blocked": "Blockerad",
   "account.browse_more_on_origin_server": "Läs mer på den ursprungliga profilen",
-  "account.cancel_follow_request": "Återkalla följförfrågan",
+  "account.cancel_follow_request": "Återkalla din begäran om att få följa",
   "account.direct": "Skicka direktmeddelande till @{name}",
   "account.disable_notifications": "Sluta notifiera mig när @{name} gör inlägg",
   "account.domain_blocked": "Domän blockerad",
@@ -40,25 +40,25 @@
   "account.go_to_profile": "Gå till profilen",
   "account.hide_reblogs": "Dölj boostar från @{name}",
   "account.joined_short": "Gick med",
-  "account.languages": "Ändra prenumererade språk",
+  "account.languages": "Ändra vilka språk du helst vill se i ditt flöde",
   "account.link_verified_on": "Ägarskap för denna länk kontrollerades den {date}",
   "account.locked_info": "För detta konto har ägaren valt att manuellt godkänna vem som kan följa dem.",
   "account.media": "Media",
   "account.mention": "Nämn @{name}",
   "account.moved_to": "{name} har indikerat att hen har ett nytt konto:",
   "account.mute": "Tysta @{name}",
-  "account.mute_notifications": "Stäng av notifieringar från @{name}",
+  "account.mute_notifications": "Stäng av notifikationer från @{name}",
   "account.muted": "Tystad",
   "account.open_original_page": "Öppna den ursprungliga sidan",
   "account.posts": "Inlägg",
   "account.posts_with_replies": "Inlägg och svar",
   "account.report": "Rapportera @{name}",
-  "account.requested": "Inväntar godkännande. Klicka för att avbryta följdförfrågan",
+  "account.requested": "Inväntar godkännande. Klicka för att ta tillbaka din begäran om att få följa",
   "account.share": "Dela @{name}s profil",
   "account.show_reblogs": "Visa boostar från @{name}",
   "account.statuses_counter": "{count, plural, one {{counter} Inlägg} other {{counter} Inlägg}}",
   "account.unblock": "Avblockera @{name}",
-  "account.unblock_domain": "Sluta dölja {domain}",
+  "account.unblock_domain": "Avblockera {domain}",
   "account.unblock_short": "Avblockera",
   "account.unendorse": "Visa inte på profil",
   "account.unfollow": "Sluta följ",
@@ -103,15 +103,15 @@
   "column.community": "Lokal tidslinje",
   "column.direct": "Direktmeddelanden",
   "column.directory": "Bläddra bland profiler",
-  "column.domain_blocks": "Dolda domäner",
+  "column.domain_blocks": "Blockerade domäner",
   "column.favourites": "Favoriter",
   "column.follow_requests": "Följarförfrågningar",
   "column.home": "Hem",
   "column.lists": "Listor",
   "column.mutes": "Tystade användare",
-  "column.notifications": "Aviseringar",
+  "column.notifications": "Notifikationer",
   "column.pins": "Fästa inlägg",
-  "column.public": "Federerad tidslinje",
+  "column.public": "Global tidslinje",
   "column_back_button.label": "Tillbaka",
   "column_header.hide_settings": "Dölj inställningar",
   "column_header.moveLeft_settings": "Flytta kolumnen åt vänster",
@@ -125,8 +125,8 @@
   "community.column_settings.remote_only": "Endast fjärr",
   "compose.language.change": "Ändra språk",
   "compose.language.search": "Sök språk...",
-  "compose_form.direct_message_warning_learn_more": "Lär dig mer",
-  "compose_form.encryption_warning": "Inlägg på Mastodon är inte obrutet krypterade. Dela inte någon känslig information på Mastodon.",
+  "compose_form.direct_message_warning_learn_more": "Läs mer",
+  "compose_form.encryption_warning": "Inlägg på Mastodon är inte obrutet krypterade. Dela inte känslig information på Mastodon.",
   "compose_form.hashtag_warning": "Detta inlägg kommer inte listas under någon hashtagg eftersom det är olistat. Endast offentliga inlägg kan eftersökas med hashtagg.",
   "compose_form.lock_disclaimer": "Ditt konto är inte {locked}. Vem som helst kan följa dig för att se dina inlägg som endast är för följare.",
   "compose_form.lock_disclaimer.lock": "låst",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Ändra enkät för att tillåta flera val",
   "compose_form.poll.switch_to_single": "Ändra enkät för att tillåta ett enda val",
   "compose_form.publish": "Publicera",
+  "compose_form.publish_form": "Publicera",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Spara ändringar",
   "compose_form.sensitive.hide": "Markera media som känsligt",
@@ -220,7 +221,7 @@
   "empty_column.follow_recommendations": "Det ser ut som om inga förslag kan genereras till dig. Du kan prova att använda sök för att leta efter personer som du kanske känner eller utforska trendande hash-taggar.",
   "empty_column.follow_requests": "Du har inga följarförfrågningar än. När du får en kommer den visas här.",
   "empty_column.hashtag": "Det finns inget i denna hashtag ännu.",
-  "empty_column.home": "Din hemma-tidslinje är tom! Besök {public} eller använd sökning för att komma igång och träffa andra användare.",
+  "empty_column.home": "Din hemma-tidslinje är tom! Följ fler användare för att fylla den. {suggestions}",
   "empty_column.home.suggestions": "Se några förslag",
   "empty_column.list": "Det finns inget i denna lista än. När listmedlemmar publicerar nya inlägg kommer de synas här.",
   "empty_column.lists": "Du har inga listor än. När skapar en kommer den dyka upp här.",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Kopiera stacktrace till urklipp",
   "errors.unexpected_crash.report_issue": "Rapportera problem",
   "explore.search_results": "Sökresultat",
-  "explore.suggested_follows": "För dig",
   "explore.title": "Utforska",
-  "explore.trending_links": "Nyheter",
-  "explore.trending_statuses": "Inlägg",
-  "explore.trending_tags": "Hashtaggar",
   "filter_modal.added.context_mismatch_explanation": "Denna filterkategori gäller inte för det sammanhang där du har tillgång till det här inlägget. Om du vill att inlägget ska filtreras även i detta sammanhang måste du redigera filtret.",
   "filter_modal.added.context_mismatch_title": "Misspassning av sammanhang!",
   "filter_modal.added.expired_explanation": "Denna filterkategori har utgått, du måste ändra utgångsdatum för att den ska kunna tillämpas.",
@@ -274,7 +271,7 @@
   "hashtag.column_header.tag_mode.any": "eller {additional}",
   "hashtag.column_header.tag_mode.none": "utan {additional}",
   "hashtag.column_settings.select.no_options_message": "Inga förslag hittades",
-  "hashtag.column_settings.select.placeholder": "Ange hashtags …",
+  "hashtag.column_settings.select.placeholder": "Ange hashtaggar…",
   "hashtag.column_settings.tag_mode.all": "Alla dessa",
   "hashtag.column_settings.tag_mode.any": "Någon av dessa",
   "hashtag.column_settings.tag_mode.none": "Ingen av dessa",
@@ -301,8 +298,8 @@
   "intervals.full.days": "{number, plural, one {# dag} other {# dagar}}",
   "intervals.full.hours": "{number, plural, one {# timme} other {# timmar}}",
   "intervals.full.minutes": "{number, plural, one {# minut} other {# minuter}}",
-  "keyboard_shortcuts.back": "för att gå bakåt",
-  "keyboard_shortcuts.blocked": "för att öppna listan över blockerade användare",
+  "keyboard_shortcuts.back": "Gå bakåt",
+  "keyboard_shortcuts.blocked": "Öppna listan över blockerade användare",
   "keyboard_shortcuts.boost": "Boosta inlägg",
   "keyboard_shortcuts.column": "för att fokusera en status i en av kolumnerna",
   "keyboard_shortcuts.compose": "för att fokusera skrivfältet",
@@ -319,7 +316,7 @@
   "keyboard_shortcuts.legend": "för att visa denna översikt",
   "keyboard_shortcuts.local": "för att öppna Lokal tidslinje",
   "keyboard_shortcuts.mention": "för att nämna skaparen",
-  "keyboard_shortcuts.muted": "för att öppna listan över tystade användare",
+  "keyboard_shortcuts.muted": "Öppna listan över tystade användare",
   "keyboard_shortcuts.my_profile": "för att öppna din profil",
   "keyboard_shortcuts.notifications": "för att öppna Meddelanden",
   "keyboard_shortcuts.open_media": "öppna media",
diff --git a/app/javascript/mastodon/locales/szl.json b/app/javascript/mastodon/locales/szl.json
index a8585c042..693991651 100644
--- a/app/javascript/mastodon/locales/szl.json
+++ b/app/javascript/mastodon/locales/szl.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
   "compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "{count, plural, one {Mark media as sensitive} other {Mark media as sensitive}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "Report issue",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/ta.json b/app/javascript/mastodon/locales/ta.json
index a69becb95..c3eaf02f3 100644
--- a/app/javascript/mastodon/locales/ta.json
+++ b/app/javascript/mastodon/locales/ta.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "பல தேர்வுகளை அனுமதிக்குமாறு மாற்று",
   "compose_form.poll.switch_to_single": "ஒரே ஒரு தேர்வை மட்டும் அனுமதிக்குமாறு மாற்று",
   "compose_form.publish": "வெளியிடு",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "மாற்றங்களை சேமி",
   "compose_form.sensitive.hide": "அனைவருக்கும் ஏற்றப் படம் இல்லை எனக் குறியிடு",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Stacktrace-ஐ clipboard-ல் நகலெடு",
   "errors.unexpected_crash.report_issue": "புகாரளி",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/tai.json b/app/javascript/mastodon/locales/tai.json
index a3ae8a051..bf5ad7a4e 100644
--- a/app/javascript/mastodon/locales/tai.json
+++ b/app/javascript/mastodon/locales/tai.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
   "compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "{count, plural, one {Mark media as sensitive} other {Mark media as sensitive}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "Report issue",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/te.json b/app/javascript/mastodon/locales/te.json
index 1d99fc4df..0000ffc91 100644
--- a/app/javascript/mastodon/locales/te.json
+++ b/app/javascript/mastodon/locales/te.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
   "compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "{count, plural, one {Mark media as sensitive} other {Mark media as sensitive}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "Report issue",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/th.json b/app/javascript/mastodon/locales/th.json
index d6d53d56c..ea69b1e39 100644
--- a/app/javascript/mastodon/locales/th.json
+++ b/app/javascript/mastodon/locales/th.json
@@ -95,7 +95,7 @@
   "closed_registrations.other_server_instructions": "เนื่องจาก Mastodon เป็นแบบกระจายศูนย์ คุณสามารถสร้างบัญชีในเซิร์ฟเวอร์อื่นและยังคงโต้ตอบกับเซิร์ฟเวอร์นี้",
   "closed_registrations_modal.description": "ไม่สามารถสร้างบัญชีใน {domain} ได้ในปัจจุบัน แต่โปรดจำไว้ว่าคุณไม่จำเป็นต้องมีบัญชีใน {domain} โดยเฉพาะเพื่อใช้ Mastodon",
   "closed_registrations_modal.find_another_server": "ค้นหาเซิร์ฟเวอร์อื่น",
-  "closed_registrations_modal.preamble": "Mastodon เป็นแบบกระจายศูนย์ ดังนั้นไม่ว่าคุณจะสร้างบัญชีของคุณที่ใด คุณจะสามารถติดตามและโต้ตอบกับใครก็ตามในเซิร์ฟเวอร์นี้ คุณยังสามารถโฮสต์บัญชีด้วยตนเองได้อีกด้วย!",
+  "closed_registrations_modal.preamble": "Mastodon เป็นแบบกระจายศูนย์ ดังนั้นไม่ว่าคุณจะสร้างบัญชีของคุณที่ใด คุณจะสามารถติดตามและโต้ตอบกับใครก็ได้ในเซิร์ฟเวอร์นี้ คุณยังสามารถโฮสต์เซิร์ฟเวอร์ด้วยตนเองได้อีกด้วย!",
   "closed_registrations_modal.title": "การลงทะเบียนใน Mastodon",
   "column.about": "เกี่ยวกับ",
   "column.blocks": "ผู้ใช้ที่ปิดกั้นอยู่",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "เปลี่ยนการสำรวจความคิดเห็นเป็นอนุญาตหลายตัวเลือก",
   "compose_form.poll.switch_to_single": "เปลี่ยนการสำรวจความคิดเห็นเป็นอนุญาตตัวเลือกเดี่ยว",
   "compose_form.publish": "เผยแพร่",
+  "compose_form.publish_form": "เผยแพร่",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "บันทึกการเปลี่ยนแปลง",
   "compose_form.sensitive.hide": "{count, plural, other {ทำเครื่องหมายสื่อว่าละเอียดอ่อน}}",
@@ -183,12 +184,12 @@
   "directory.recently_active": "ใช้งานล่าสุด",
   "disabled_account_banner.account_settings": "การตั้งค่าบัญชี",
   "disabled_account_banner.text": "มีการปิดใช้งานบัญชีของคุณ {disabledAccount} ในปัจจุบัน",
-  "dismissable_banner.community_timeline": "นี่คือโพสต์สาธารณะล่าสุดจากผู้คนที่บัญชีได้รับการโฮสต์โดย {domain}",
+  "dismissable_banner.community_timeline": "ด้านล่างนี้เป็นโพสต์สาธารณะล่าสุดจากผู้คนที่มีบัญชีอยู่บน {domain}",
   "dismissable_banner.dismiss": "ปิด",
   "dismissable_banner.explore_links": "เรื่องข่าวเหล่านี้กำลังได้รับการพูดถึงโดยผู้คนในเซิร์ฟเวอร์นี้และอื่น ๆ ของเครือข่ายแบบกระจายศูนย์ในตอนนี้",
   "dismissable_banner.explore_statuses": "โพสต์เหล่านี้จากเซิร์ฟเวอร์นี้และอื่น ๆ ในเครือข่ายแบบกระจายศูนย์กำลังได้รับความสนใจในเซิร์ฟเวอร์นี้ในตอนนี้",
   "dismissable_banner.explore_tags": "แฮชแท็กเหล่านี้กำลังได้รับความสนใจในหมู่ผู้คนในเซิร์ฟเวอร์นี้และอื่น ๆ ของเครือข่ายแบบกระจายศูนย์ในตอนนี้",
-  "dismissable_banner.public_timeline": "นี่คือโพสต์สาธารณะล่าสุดจากผู้คนในเซิร์ฟเวอร์นี้และอื่น ๆ ของเครือข่ายแบบกระจายศูนย์ที่เซิร์ฟเวอร์นี้รู้เกี่ยวกับ",
+  "dismissable_banner.public_timeline": "ด้านล่างนี้เป็นโพสต์สาธารณะล่าสุดจากผู้คนในเซิร์ฟเวอร์นี้และอื่น ๆ ของเครือข่ายแบบกระจายศูนย์ที่เซิร์ฟเวอร์นี้รู้จัก",
   "embed.instructions": "ฝังโพสต์นี้ในเว็บไซต์ของคุณโดยคัดลอกโค้ดด้านล่าง",
   "embed.preview": "นี่คือลักษณะที่จะปรากฏ:",
   "emoji_button.activity": "กิจกรรม",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "คัดลอกการติดตามสแตกไปยังคลิปบอร์ด",
   "errors.unexpected_crash.report_issue": "รายงานปัญหา",
   "explore.search_results": "ผลลัพธ์การค้นหา",
-  "explore.suggested_follows": "สำหรับคุณ",
   "explore.title": "สำรวจ",
-  "explore.trending_links": "ข่าว",
-  "explore.trending_statuses": "โพสต์",
-  "explore.trending_tags": "แฮชแท็ก",
   "filter_modal.added.context_mismatch_explanation": "หมวดหมู่ตัวกรองนี้ไม่ได้นำไปใช้กับบริบทที่คุณได้เข้าถึงโพสต์นี้ หากคุณต้องการกรองโพสต์ในบริบทนี้ด้วย คุณจะต้องแก้ไขตัวกรอง",
   "filter_modal.added.context_mismatch_title": "บริบทไม่ตรงกัน!",
   "filter_modal.added.expired_explanation": "หมวดหมู่ตัวกรองนี้หมดอายุแล้ว คุณจะต้องเปลี่ยนวันหมดอายุสำหรับหมวดหมู่เพื่อนำไปใช้",
@@ -504,7 +501,7 @@
   "report.submit": "ส่ง",
   "report.target": "กำลังรายงาน {target}",
   "report.thanks.take_action": "นี่คือตัวเลือกของคุณสำหรับการควบคุมสิ่งที่คุณเห็นใน Mastodon:",
-  "report.thanks.take_action_actionable": "ขณะที่เราตรวจทานสิ่งนี้ คุณสามารถดำเนินการกับ @{name}:",
+  "report.thanks.take_action_actionable": "ขณะที่เราตรวจทานสิ่งนี้ คุณสามารถใช้การกระทำกับ @{name}:",
   "report.thanks.title": "ไม่ต้องการเห็นสิ่งนี้?",
   "report.thanks.title_actionable": "ขอบคุณสำหรับการรายงาน เราจะตรวจสอบสิ่งนี้",
   "report.unfollow": "เลิกติดตาม @{name}",
@@ -517,7 +514,7 @@
   "search.placeholder": "ค้นหา",
   "search.search_or_paste": "ค้นหาหรือวาง URL",
   "search_popout.search_format": "รูปแบบการค้นหาขั้นสูง",
-  "search_popout.tips.full_text": "ข้อความแบบง่ายส่งคืนโพสต์ที่คุณได้เขียน ชื่นชอบ ดัน หรือได้รับการกล่าวถึง ตลอดจนชื่อผู้ใช้, ชื่อที่แสดง และแฮชแท็กที่ตรงกัน",
+  "search_popout.tips.full_text": "ข้อความแบบง่ายส่งคืนโพสต์ที่คุณได้เขียน ชื่นชอบ ดัน หรือได้รับการกล่าวถึง เช่นเดียวกับชื่อผู้ใช้, ชื่อที่แสดง และแฮชแท็กที่ตรงกัน",
   "search_popout.tips.hashtag": "แฮชแท็ก",
   "search_popout.tips.status": "โพสต์",
   "search_popout.tips.text": "ข้อความแบบง่ายส่งคืนชื่อที่แสดง, ชื่อผู้ใช้ และแฮชแท็กที่ตรงกัน",
diff --git a/app/javascript/mastodon/locales/tr.json b/app/javascript/mastodon/locales/tr.json
index 9dd5aef76..cfd542e47 100644
--- a/app/javascript/mastodon/locales/tr.json
+++ b/app/javascript/mastodon/locales/tr.json
@@ -44,17 +44,17 @@
   "account.link_verified_on": "Bu bağlantının sahipliği {date} tarihinde denetlendi",
   "account.locked_info": "Bu hesabın gizlilik durumu gizli olarak ayarlanmış. Sahibi, onu kimin takip edebileceğini manuel olarak onaylıyor.",
   "account.media": "Medya",
-  "account.mention": "@{name}'i an",
+  "account.mention": "@{name} kişisinden bahset",
   "account.moved_to": "{name} yeni hesabının artık şu olduğunu belirtti:",
-  "account.mute": "@{name}'i sustur",
+  "account.mute": "@{name} adlı kişiyi sessize al",
   "account.mute_notifications": "@{name}'in bildirimlerini sustur",
   "account.muted": "Susturuldu",
   "account.open_original_page": "Asıl sayfayı aç",
   "account.posts": "Gönderiler",
   "account.posts_with_replies": "Gönderiler ve yanıtlar",
-  "account.report": "@{name}'i şikayet et",
+  "account.report": "@{name} adlı kişiyi bildir",
   "account.requested": "Onay bekleniyor. Takip isteğini iptal etmek için tıklayın",
-  "account.share": "@{name}'in profilini paylaş",
+  "account.share": "@{name} adlı kişinin profilini paylaş",
   "account.show_reblogs": "@{name} kişisinin boostlarını göster",
   "account.statuses_counter": "{count, plural, one {{counter} Gönderi} other {{counter} Gönderi}}",
   "account.unblock": "@{name}'in engelini kaldır",
@@ -92,14 +92,14 @@
   "bundle_modal_error.close": "Kapat",
   "bundle_modal_error.message": "Bu bileşen yüklenirken bir şeyler ters gitti.",
   "bundle_modal_error.retry": "Tekrar deneyin",
-  "closed_registrations.other_server_instructions": "Mastodon ademi merkeziyetçi olduğu için, başka bir sunucuda hesap oluşturabilir ve bu sunuyla etkileşebilirsiniz.",
+  "closed_registrations.other_server_instructions": "Mastodon merkeziyetsiz olduğu için, başka bir sunucuda bir hesap oluşturabilir ve bu sunucuyla etkileşimde bulunmaya devam edebilirsiniz.",
   "closed_registrations_modal.description": "{domain} adresinde hesap oluşturmak şu an mümkün değil ancak unutmayın ki Mastodon kullanmak için özellikle {domain} adresinde hesap oluşturmanız gerekmez.",
   "closed_registrations_modal.find_another_server": "Başka sunucu bul",
-  "closed_registrations_modal.preamble": "Mastodon ademi merkeziyetçi, bu yüzden hesabınızı nerede oluşturursanız oluşturun, bu sunucudaki herhangi birini takip edebilecek veya onunla etkileşebileceksiniz. Kendiniz bile sunabilirsiniz!",
+  "closed_registrations_modal.preamble": "Mastodon merkeziyetsizdir, bu yüzden hesabınızı nerede oluşturursanız oluşturun, bu sunucudaki herhangi birini takip edebilecek veya onunla etkileşebileceksiniz. Hatta kendi sunucunuzu bile barındırabilirsiniz!",
   "closed_registrations_modal.title": "Mastodon'a kayıt olmak",
   "column.about": "Hakkında",
   "column.blocks": "Engellenen kullanıcılar",
-  "column.bookmarks": "Yer İmleri",
+  "column.bookmarks": "Yer İşaretleri",
   "column.community": "Yerel zaman tüneli",
   "column.direct": "Doğrudan iletiler",
   "column.directory": "Profillere göz at",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Birden çok seçeneğe izin vermek için anketi değiştir",
   "compose_form.poll.switch_to_single": "Tek bir seçeneğe izin vermek için anketi değiştir",
   "compose_form.publish": "Yayınla",
+  "compose_form.publish_form": "Yayınla",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Değişiklikleri kaydet",
   "compose_form.sensitive.hide": "{count, plural, one {Medyayı hassas olarak işaretle} other {Medyayı hassas olarak işaretle}}",
@@ -185,10 +186,10 @@
   "disabled_account_banner.text": "{disabledAccount} hesabınız şu an devre dışı.",
   "dismissable_banner.community_timeline": "Bunlar, {domain} sunucusunda hesabı olanların yakın zamandaki herkese açık gönderileridir.",
   "dismissable_banner.dismiss": "Yoksay",
-  "dismissable_banner.explore_links": "Bunlar, ademi merkeziyetçi ağda bu ve diğer sunucularda şimdilerde insanların hakkında konuştuğu haber öyküleridir.",
-  "dismissable_banner.explore_statuses": "Ademi merkeziyetçi ağın bu ve diğer sunucularındaki bu gönderiler, mevcut sunucuda şimdilerde ilgi çekiyorlar.",
-  "dismissable_banner.explore_tags": "Bu etiketler, ademi merkeziyetçi ağdaki bu ve diğer sunuculardaki insanların şimdilerde ilgisini çekiyor.",
-  "dismissable_banner.public_timeline": "Bunlar, ademi merkeziyetçi ağdaki bu ve diğer sunuculardaki insanların son zamanlardaki herkese açık gönderilerinden bu sunucunun haberdar olduklarıdır.",
+  "dismissable_banner.explore_links": "Bu haberler, merkeziyetsiz ağın bu ve diğer sunucularındaki insanlar tarafından şimdilerde konuşuluyor.",
+  "dismissable_banner.explore_statuses": "Merkeziyetsiz ağın bu ve diğer sunucularındaki bu gönderiler, mevcut sunucuda şimdilerde ilgi çekiyorlar.",
+  "dismissable_banner.explore_tags": "Bu etiketler, merkeziyetsiz ağda bulunan bu ve diğer sunuculardaki insanların şimdilerde ilgisini çekiyor.",
+  "dismissable_banner.public_timeline": "Bunlar, merkeziyetsiz ağda bulunan bu ve diğer sunuculardaki insanların son zamanlardaki herkese açık gönderilerinden bu sunucunun haberdar olduklarıdır.",
   "embed.instructions": "Aşağıdaki kodu kopyalayarak bu durumu sitenize gömün.",
   "embed.preview": "İşte nasıl görüneceği:",
   "emoji_button.activity": "Aktivite",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Yığın izlemeyi (stacktrace) panoya kopyala",
   "errors.unexpected_crash.report_issue": "Sorun bildir",
   "explore.search_results": "Arama sonuçları",
-  "explore.suggested_follows": "Sizin için",
   "explore.title": "Keşfet",
-  "explore.trending_links": "Haberler",
-  "explore.trending_statuses": "Gönderiler",
-  "explore.trending_tags": "Etiketler",
   "filter_modal.added.context_mismatch_explanation": "Bu filtre kategorisi, bu gönderide eriştiğin bağlama uymuyor. Eğer gönderinin bu bağlamda da filtrelenmesini istiyorsanız, filtreyi düzenlemeniz gerekiyor.",
   "filter_modal.added.context_mismatch_title": "Bağlam uyumsuzluğu!",
   "filter_modal.added.expired_explanation": "Bu filtre kategorisinin süresi dolmuş, filtreyi uygulamak için bitiş tarihini değiştirmeniz gerekiyor.",
@@ -293,7 +290,7 @@
   "interaction_modal.on_another_server": "Farklı bir sunucuda",
   "interaction_modal.on_this_server": "Bu sunucuda",
   "interaction_modal.other_server_instructions": "Bu URL'yi kopyalayın ve Mastodon sunucunuzun web arayüzündeki veya gözde Mastodon uygulamanızdaki arama sahasına yapıştırın.",
-  "interaction_modal.preamble": "Mastodon ademi merkeziyetçi olduğu için, bu sunucuda bir hesabınız yoksa bile başka bir Mastodon sunucusu veya uyumlu bir platformda barındırılan mevcut hesabınızı kullanabilirsiniz.",
+  "interaction_modal.preamble": "Mastodon merkeziyetsiz olduğu için, bu sunucuda bir hesabınız yoksa bile başka bir Mastodon sunucusunda veya uyumlu bir platformda barındırılan mevcut hesabınızı kullanabilirsiniz.",
   "interaction_modal.title.favourite": "{name} kişisinin gönderisini favorilerine ekle",
   "interaction_modal.title.follow": "{name} kişisini takip et",
   "interaction_modal.title.reblog": "{name} kişisinin gönderisini yükselt",
@@ -366,7 +363,7 @@
   "mute_modal.indefinite": "Belirsiz",
   "navigation_bar.about": "Hakkında",
   "navigation_bar.blocks": "Engellenen kullanıcılar",
-  "navigation_bar.bookmarks": "Yer İmleri",
+  "navigation_bar.bookmarks": "Yer İşaretleri",
   "navigation_bar.community_timeline": "Yerel Zaman Tüneli",
   "navigation_bar.compose": "Yeni gönderi yaz",
   "navigation_bar.direct": "Doğrudan iletiler",
@@ -533,7 +530,7 @@
   "server_banner.about_active_users": "Bu sunucuyu son 30 günde kullanan insanlar (Aylık Etkin Kullanıcılar)",
   "server_banner.active_users": "etkin kullanıcılar",
   "server_banner.administered_by": "Yönetici:",
-  "server_banner.introduction": "{domain}, {mastodon} destekli ademi merkeziyetçi sosyal ağın bir parçasıdır.",
+  "server_banner.introduction": "{domain}, {mastodon} destekli merkeziyetsiz sosyal ağın bir parçasıdır.",
   "server_banner.learn_more": "Daha fazlasını öğrenin",
   "server_banner.server_stats": "Sunucu istatistikleri:",
   "sign_in_banner.create_account": "Hesap oluştur",
@@ -542,7 +539,7 @@
   "status.admin_account": "@{name} için denetim arayüzünü açın",
   "status.admin_status": "Denetim arayüzünde bu gönderiyi açın",
   "status.block": "@{name} adlı kişiyi engelle",
-  "status.bookmark": "Yer imlerine ekle",
+  "status.bookmark": "Yer işareti ekle",
   "status.cancel_reblog_private": "Boostu geri al",
   "status.cannot_reblog": "Bu gönderi boost edilemez",
   "status.copy": "Bağlantı durumunu kopyala",
@@ -556,7 +553,7 @@
   "status.favourite": "Favorilerine ekle",
   "status.filter": "Bu gönderiyi filtrele",
   "status.filtered": "Filtrelenmiş",
-  "status.hide": "Toot'u gizle",
+  "status.hide": "Gönderiyi gizle",
   "status.history.created": "{name} oluşturdu {date}",
   "status.history.edited": "{name} düzenledi {date}",
   "status.load_more": "Daha fazlasını yükle",
@@ -574,7 +571,7 @@
   "status.reblogged_by": "{name} boostladı",
   "status.reblogs.empty": "Henüz kimse bu tootu boostlamadı. Biri yaptığında burada görünecek.",
   "status.redraft": "Sil ve yeniden taslak yap",
-  "status.remove_bookmark": "Yer imini kaldır",
+  "status.remove_bookmark": "Yer işaretini kaldır",
   "status.replied_to": "{name} kullanıcısına yanıt verildi",
   "status.reply": "Yanıtla",
   "status.replyAll": "Konuyu yanıtla",
diff --git a/app/javascript/mastodon/locales/tt.json b/app/javascript/mastodon/locales/tt.json
index fc36699c7..536940a36 100644
--- a/app/javascript/mastodon/locales/tt.json
+++ b/app/javascript/mastodon/locales/tt.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
   "compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "{count, plural, one {Mark media as sensitive} other {Mark media as sensitive}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "Report issue",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/ug.json b/app/javascript/mastodon/locales/ug.json
index a8585c042..693991651 100644
--- a/app/javascript/mastodon/locales/ug.json
+++ b/app/javascript/mastodon/locales/ug.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
   "compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "{count, plural, one {Mark media as sensitive} other {Mark media as sensitive}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "Report issue",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/uk.json b/app/javascript/mastodon/locales/uk.json
index 3273dae14..d52537e2c 100644
--- a/app/javascript/mastodon/locales/uk.json
+++ b/app/javascript/mastodon/locales/uk.json
@@ -1,13 +1,13 @@
 {
   "about.blocks": "Модеровані сервери",
-  "about.contact": "Kонтакти:",
-  "about.disclaimer": "Mastodon — це безплатне програмне забезпечення з відкритим вихідним кодом та торгова марка компанії Mastodon GmbH.",
+  "about.contact": "Контакти:",
+  "about.disclaimer": "Mastodon — це вільне програмне забезпечення з відкритим кодом і торгова марка компанії Mastodon gGmbH.",
   "about.domain_blocks.no_reason_available": "Причина недоступна",
   "about.domain_blocks.preamble": "Mastodon зазвичай дозволяє вам взаємодіяти з користувачами будь-яких серверів у Федіверсі та переглядати їх вміст. Ось винятки, які було зроблено на цьому конкретному сервері.",
-  "about.domain_blocks.silenced.explanation": "Ви загалом не побачите профілі та вміст цього сервера, якщо тільки Ви не обрали його явним або не обрали його наступним чином.",
+  "about.domain_blocks.silenced.explanation": "Ви загалом не будете бачити профілі та вміст цього сервера, якщо ви не шукаєте їх цілеспрямовано або не підписані на його користувачів.",
   "about.domain_blocks.silenced.title": "Обмежені",
-  "about.domain_blocks.suspended.explanation": "Дані з цього сервера не обробляться, зберігаються чи обмінюються, взаємодію чи спілкування з користувачами цього сервера неможливі.",
-  "about.domain_blocks.suspended.title": "Призупинено",
+  "about.domain_blocks.suspended.explanation": "Дані з цього сервера не будуть оброблятися, зберігатися чи обмінюватися, що унеможливить взаємодію чи спілкування з користувачами цього сервера.",
+  "about.domain_blocks.suspended.title": "Заблоковані",
   "about.not_available": "Ця інформація не доступна на цьому сервері.",
   "about.powered_by": "Децентралізовані соціальні мережі від {mastodon}",
   "about.rules": "Правила сервера",
@@ -25,7 +25,7 @@
   "account.domain_blocked": "Домен заблоковано",
   "account.edit_profile": "Редагувати профіль",
   "account.enable_notifications": "Повідомляти мене про дописи @{name}",
-  "account.endorse": "Рекомендувати у профілі",
+  "account.endorse": "Рекомендувати у моєму профілі",
   "account.featured_tags.last_status_at": "Останній допис {date}",
   "account.featured_tags.last_status_never": "Немає дописів",
   "account.featured_tags.title": "{name} виділяє хештеґи",
@@ -62,9 +62,9 @@
   "account.unblock_short": "Розблокувати",
   "account.unendorse": "Не публікувати у профілі",
   "account.unfollow": "Відписатися",
-  "account.unmute": "Не нехтувати @{name}",
+  "account.unmute": "Не приховувати @{name}",
   "account.unmute_notifications": "Показувати сповіщення від @{name}",
-  "account.unmute_short": "Не нехтувати",
+  "account.unmute_short": "Не приховувати",
   "account_note.placeholder": "Натисніть, щоб додати примітку",
   "admin.dashboard.daily_retention": "Щоденний показник утримання користувачів після реєстрації",
   "admin.dashboard.monthly_retention": "Щомісячний показник утримання користувачів після реєстрації",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Дозволити вибір декількох відповідей",
   "compose_form.poll.switch_to_single": "Перемкнути у режим вибору однієї відповіді",
   "compose_form.publish": "Опублікувати",
+  "compose_form.publish_form": "Опублікувати",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Зберегти зміни",
   "compose_form.sensitive.hide": "{count, plural, one {Позначити медіа делікатним} other {Позначити медіа делікатними}}",
@@ -162,7 +163,7 @@
   "confirmations.domain_block.message": "Ви точно, точно впевнені, що хочете заблокувати весь домен {domain}? У більшості випадків для нормальної роботи краще заблокувати або приховати лише деяких користувачів. Ви не зможете бачити контент з цього домену у будь-яких стрічках або ваших сповіщеннях. Ваші підписники з цього домену будуть відписані від вас.",
   "confirmations.logout.confirm": "Вийти",
   "confirmations.logout.message": "Ви впевнені, що хочете вийти?",
-  "confirmations.mute.confirm": "Нехтуавти",
+  "confirmations.mute.confirm": "Нехтувати",
   "confirmations.mute.explanation": "Це сховає дописи від них і дописи зі згадками про них, проте вони все одно матимуть змогу бачити ваші дописи й підписуватися на вас.",
   "confirmations.mute.message": "Ви впевнені, що хочете приховати {name}?",
   "confirmations.redraft.confirm": "Видалити та виправити",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Скопіювати трасування стека у буфер обміну",
   "errors.unexpected_crash.report_issue": "Повідомити про проблему",
   "explore.search_results": "Результати пошуку",
-  "explore.suggested_follows": "Для вас",
   "explore.title": "Огляд",
-  "explore.trending_links": "Новини",
-  "explore.trending_statuses": "Дописи",
-  "explore.trending_tags": "Хештеґи",
   "filter_modal.added.context_mismatch_explanation": "Ця категорія фільтра не застосовується до контексту, в якому ви отримали доступ до цього допису. Якщо ви хочете, щоб дописи також фільтрувалися за цим контекстом, вам доведеться редагувати фільтр.",
   "filter_modal.added.context_mismatch_title": "Невідповідність контексту!",
   "filter_modal.added.expired_explanation": "Категорія цього фільтра застаріла, Вам потрібно змінити дату закінчення терміну дії, щоб застосувати її.",
@@ -403,7 +400,7 @@
   "notifications.clear_confirmation": "Ви впевнені, що хочете назавжди видалити всі сповіщення?",
   "notifications.column_settings.admin.report": "Нові скарги:",
   "notifications.column_settings.admin.sign_up": "Нові реєстрації:",
-  "notifications.column_settings.alert": "Сповіщення на комп'ютері",
+  "notifications.column_settings.alert": "Сповіщення стільниці",
   "notifications.column_settings.favourite": "Вподобане:",
   "notifications.column_settings.filter_bar.advanced": "Показати всі категорії",
   "notifications.column_settings.filter_bar.category": "Панель швидкого фільтру",
@@ -416,7 +413,7 @@
   "notifications.column_settings.reblog": "Поширення:",
   "notifications.column_settings.show": "Показати в стовпчику",
   "notifications.column_settings.sound": "Відтворювати звуки",
-  "notifications.column_settings.status": "Нові дмухи:",
+  "notifications.column_settings.status": "Нові дописи:",
   "notifications.column_settings.unread_notifications.category": "Непрочитані сповіщення",
   "notifications.column_settings.unread_notifications.highlight": "Виділити непрочитані сповіщення",
   "notifications.column_settings.update": "Зміни:",
@@ -485,7 +482,7 @@
   "report.comment.title": "Чи є щось, що нам потрібно знати?",
   "report.forward": "Надіслати до {target}",
   "report.forward_hint": "Це обліковий запис з іншого сервера. Відправити анонімізовану копію скарги й туди?",
-  "report.mute": "Нехтувати",
+  "report.mute": "Приховати",
   "report.mute_explanation": "Ви не побачите їхніх дописів. Вони все ще можуть стежити за вами, бачити ваші дописи та не знатимуть про нехтування.",
   "report.next": "Далі",
   "report.placeholder": "Додаткові коментарі",
@@ -523,10 +520,10 @@
   "search_popout.tips.text": "Пошук за текстом знаходить імена користувачів, реальні імена та хештеґи",
   "search_popout.tips.user": "користувач",
   "search_results.accounts": "Люди",
-  "search_results.all": "Усе",
+  "search_results.all": "Усі",
   "search_results.hashtags": "Хештеґи",
   "search_results.nothing_found": "Нічого не вдалося знайти за цими пошуковими термінами",
-  "search_results.statuses": "Дмухів",
+  "search_results.statuses": "Дописів",
   "search_results.statuses_fts_disabled": "Пошук дописів за вмістом недоступний на даному сервері Mastodon.",
   "search_results.title": "Шукати {q}",
   "search_results.total": "{count, number} {count, plural, one {результат} few {результати} many {результатів} other {результатів}}",
@@ -543,8 +540,8 @@
   "status.admin_status": "Відкрити цей допис в інтерфейсі модерації",
   "status.block": "Заблокувати @{name}",
   "status.bookmark": "Додати в закладки",
-  "status.cancel_reblog_private": "Відмінити передмухання",
-  "status.cannot_reblog": "Цей допис не може бути передмухнутий",
+  "status.cancel_reblog_private": "Скасувати поширення",
+  "status.cannot_reblog": "Цей допис не може бути поширений",
   "status.copy": "Копіювати посилання на допис",
   "status.delete": "Видалити",
   "status.detailed_status": "Детальний вигляд бесіди",
@@ -579,7 +576,7 @@
   "status.reply": "Відповісти",
   "status.replyAll": "Відповісти на ланцюжок",
   "status.report": "Поскаржитися на @{name}",
-  "status.sensitive_warning": "Делікатний зміст",
+  "status.sensitive_warning": "Делікатний вміст",
   "status.share": "Поділитися",
   "status.show_filter_reason": "Усе одно показати",
   "status.show_less": "Згорнути",
diff --git a/app/javascript/mastodon/locales/ur.json b/app/javascript/mastodon/locales/ur.json
index 3702a7ffe..ad048dccb 100644
--- a/app/javascript/mastodon/locales/ur.json
+++ b/app/javascript/mastodon/locales/ur.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "متعدد انتخاب کی اجازت دینے کے لیے پول تبدیل کریں",
   "compose_form.poll.switch_to_single": "کسی ایک انتخاب کے لیے پول تبدیل کریں",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "وسائل کو حساس نشاندہ کریں",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "مسئلہ کی اطلاع کریں",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/vi.json b/app/javascript/mastodon/locales/vi.json
index 11847e1b2..ac3dbae5e 100644
--- a/app/javascript/mastodon/locales/vi.json
+++ b/app/javascript/mastodon/locales/vi.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Có thể chọn nhiều lựa chọn",
   "compose_form.poll.switch_to_single": "Chỉ cho phép chọn duy nhất một lựa chọn",
   "compose_form.publish": "Đăng",
+  "compose_form.publish_form": "Đăng",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Lưu thay đổi",
   "compose_form.sensitive.hide": "{count, plural, other {Đánh dấu nội dung nhạy cảm}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Sao chép stacktrace vào clipboard",
   "errors.unexpected_crash.report_issue": "Báo cáo lỗi",
   "explore.search_results": "Kết quả tìm kiếm",
-  "explore.suggested_follows": "Dành cho bạn",
   "explore.title": "Khám phá",
-  "explore.trending_links": "Tin tức",
-  "explore.trending_statuses": "Tút",
-  "explore.trending_tags": "Hashtag",
   "filter_modal.added.context_mismatch_explanation": "Danh mục bộ lọc này không áp dụng cho ngữ cảnh mà bạn đã truy cập tút này. Nếu bạn muốn tút cũng được lọc trong ngữ cảnh này, bạn sẽ phải chỉnh sửa bộ lọc.",
   "filter_modal.added.context_mismatch_title": "Bối cảnh không phù hợp!",
   "filter_modal.added.expired_explanation": "Danh mục bộ lọc này đã hết hạn, bạn sẽ cần thay đổi ngày hết hạn để áp dụng.",
@@ -263,7 +260,7 @@
   "follow_requests.unlocked_explanation": "Mặc dù tài khoản của bạn đang ở chế độ công khai, quản trị viên của {domain} vẫn tin rằng bạn sẽ muốn xem lại yêu cầu theo dõi từ những người khác.",
   "footer.about": "Giới thiệu",
   "footer.directory": "Cộng đồng",
-  "footer.get_app": "Tải ứng dụng",
+  "footer.get_app": "Ứng dụng",
   "footer.invite": "Mời bạn bè",
   "footer.keyboard_shortcuts": "Phím tắt",
   "footer.privacy_policy": "Chính sách bảo mật",
@@ -532,13 +529,13 @@
   "search_results.total": "{count, number} {count, plural, one {kết quả} other {kết quả}}",
   "server_banner.about_active_users": "Những người ở máy chủ này trong 30 ngày qua (MAU)",
   "server_banner.active_users": "người hoạt động",
-  "server_banner.administered_by": "Quản trị bởi:",
+  "server_banner.administered_by": "Vận hành:",
   "server_banner.introduction": "{domain} là một phần của mạng xã hội liên hợp {mastodon}.",
   "server_banner.learn_more": "Tìm hiểu",
   "server_banner.server_stats": "Thống kê:",
-  "sign_in_banner.create_account": "Tạo tài khoản",
+  "sign_in_banner.create_account": "Đăng ký",
   "sign_in_banner.sign_in": "Đăng nhập",
-  "sign_in_banner.text": "Đăng nhập để theo dõi hồ sơ hoặc hashtag; thích, chia sẻ và trả lời tút hoặc tương tác bằng tài khoản của bạn trên một máy chủ khác.",
+  "sign_in_banner.text": "Đăng nhập để theo dõi người hoặc hashtag; cũng như thích, chia sẻ và trả lời tút.",
   "status.admin_account": "Mở giao diện quản trị @{name}",
   "status.admin_status": "Mở tút này trong giao diện quản trị",
   "status.block": "Chặn @{name}",
diff --git a/app/javascript/mastodon/locales/whitelist_an.json b/app/javascript/mastodon/locales/whitelist_an.json
new file mode 100644
index 000000000..0d4f101c7
--- /dev/null
+++ b/app/javascript/mastodon/locales/whitelist_an.json
@@ -0,0 +1,2 @@
+[
+]
diff --git a/app/javascript/mastodon/locales/whitelist_be.json b/app/javascript/mastodon/locales/whitelist_be.json
new file mode 100644
index 000000000..0d4f101c7
--- /dev/null
+++ b/app/javascript/mastodon/locales/whitelist_be.json
@@ -0,0 +1,2 @@
+[
+]
diff --git a/app/javascript/mastodon/locales/whitelist_bs.json b/app/javascript/mastodon/locales/whitelist_bs.json
new file mode 100644
index 000000000..0d4f101c7
--- /dev/null
+++ b/app/javascript/mastodon/locales/whitelist_bs.json
@@ -0,0 +1,2 @@
+[
+]
diff --git a/app/javascript/mastodon/locales/whitelist_fo.json b/app/javascript/mastodon/locales/whitelist_fo.json
new file mode 100644
index 000000000..0d4f101c7
--- /dev/null
+++ b/app/javascript/mastodon/locales/whitelist_fo.json
@@ -0,0 +1,2 @@
+[
+]
diff --git a/app/javascript/mastodon/locales/whitelist_fr-QC.json b/app/javascript/mastodon/locales/whitelist_fr-QC.json
new file mode 100644
index 000000000..0d4f101c7
--- /dev/null
+++ b/app/javascript/mastodon/locales/whitelist_fr-QC.json
@@ -0,0 +1,2 @@
+[
+]
diff --git a/app/javascript/mastodon/locales/whitelist_sco.json b/app/javascript/mastodon/locales/whitelist_sco.json
new file mode 100644
index 000000000..0d4f101c7
--- /dev/null
+++ b/app/javascript/mastodon/locales/whitelist_sco.json
@@ -0,0 +1,2 @@
+[
+]
diff --git a/app/javascript/mastodon/locales/zgh.json b/app/javascript/mastodon/locales/zgh.json
index 804fb6c0a..dd2bd7a06 100644
--- a/app/javascript/mastodon/locales/zgh.json
+++ b/app/javascript/mastodon/locales/zgh.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
   "compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
   "compose_form.publish": "Publish",
+  "compose_form.publish_form": "Publish",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "Save changes",
   "compose_form.sensitive.hide": "{count, plural, one {Mark media as sensitive} other {Mark media as sensitive}}",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
   "errors.unexpected_crash.report_issue": "Report issue",
   "explore.search_results": "Search results",
-  "explore.suggested_follows": "For you",
   "explore.title": "Explore",
-  "explore.trending_links": "News",
-  "explore.trending_statuses": "Posts",
-  "explore.trending_tags": "Hashtags",
   "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
   "filter_modal.added.context_mismatch_title": "Context mismatch!",
   "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",
diff --git a/app/javascript/mastodon/locales/zh-CN.json b/app/javascript/mastodon/locales/zh-CN.json
index 10c137e83..a07d622e6 100644
--- a/app/javascript/mastodon/locales/zh-CN.json
+++ b/app/javascript/mastodon/locales/zh-CN.json
@@ -1,7 +1,7 @@
 {
   "about.blocks": "被限制的服务器",
   "about.contact": "联系方式:",
-  "about.disclaimer": "Mastodon 是免费的开源软件,由 Mastodon gGmbH 持有商标。",
+  "about.disclaimer": "Mastodon 是自由的开源软件,商标由 Mastodon gGmbH 持有。",
   "about.domain_blocks.no_reason_available": "原因不可用",
   "about.domain_blocks.preamble": "通常来说,在 Mastodon 上,你可以浏览联邦宇宙中任何一台服务器上的内容,并且和上面的用户互动。但其中一些在本服务器上被设置为例外。",
   "about.domain_blocks.silenced.explanation": "除非明确地搜索并关注对方,否则你不会看到来自此服务器的用户信息与内容。",
@@ -64,7 +64,7 @@
   "account.unfollow": "取消关注",
   "account.unmute": "不再隐藏 @{name}",
   "account.unmute_notifications": "不再隐藏来自 @{name} 的通知",
-  "account.unmute_short": "恢复消息提醒",
+  "account.unmute_short": "取消隐藏",
   "account_note.placeholder": "点击添加备注",
   "admin.dashboard.daily_retention": "注册后用户留存率(按日计算)",
   "admin.dashboard.monthly_retention": "注册后用户留存率(按月计算)",
@@ -81,24 +81,24 @@
   "autosuggest_hashtag.per_week": "每星期 {count} 条",
   "boost_modal.combo": "下次按住 {combo} 即可跳过此提示",
   "bundle_column_error.copy_stacktrace": "复制错误报告",
-  "bundle_column_error.error.body": "请求的页面无法渲染。这可能是由于代码错误或浏览器兼容性等问题造成。",
+  "bundle_column_error.error.body": "请求的页面无法渲染,可能是代码出现错误或浏览器存在兼容性问题。",
   "bundle_column_error.error.title": "糟糕!",
-  "bundle_column_error.network.body": "尝试加载此页面时出错。这可能是由于你到此服务器的网络连接存在问题。",
+  "bundle_column_error.network.body": "页面加载出错,可能是你的网络连接或这个服务器目前存在问题。",
   "bundle_column_error.network.title": "网络错误",
   "bundle_column_error.retry": "重试",
-  "bundle_column_error.return": "返回首页",
+  "bundle_column_error.return": "回到首页",
   "bundle_column_error.routing.body": "找不到请求的页面。你确定地址栏中的 URL 正确吗?",
   "bundle_column_error.routing.title": "404",
   "bundle_modal_error.close": "关闭",
   "bundle_modal_error.message": "载入这个组件时发生了错误。",
   "bundle_modal_error.retry": "重试",
-  "closed_registrations.other_server_instructions": "基于 Mastodon 去中心化的特性,你可以在其它服务器上创建账号并继续与此账号保持联系。",
+  "closed_registrations.other_server_instructions": "基于 Mastodon 去中心化的特性,你可以在其它服务器上创建账号并继续与此服务器互动。",
   "closed_registrations_modal.description": "目前不能在 {domain} 上创建账号,但请注意使用 Mastodon 并非必须持有 {domain} 上的账号。",
-  "closed_registrations_modal.find_another_server": "查找另外的服务器",
+  "closed_registrations_modal.find_another_server": "查找另一个服务器",
   "closed_registrations_modal.preamble": "Mastodon 是去中心化的,所以无论在哪个实例创建账号,都可以关注本服务器上的账号并与之交流。 或者你还可以自己搭建实例!",
-  "closed_registrations_modal.title": "在 Mastodon 注册",
+  "closed_registrations_modal.title": "注册 Mastodon 账号",
   "column.about": "关于",
-  "column.blocks": "已屏蔽的用户",
+  "column.blocks": "屏蔽的用户",
   "column.bookmarks": "书签",
   "column.community": "本站时间轴",
   "column.direct": "私信",
@@ -138,9 +138,10 @@
   "compose_form.poll.switch_to_multiple": "将投票改为多选",
   "compose_form.poll.switch_to_single": "将投票改为单选",
   "compose_form.publish": "发布",
+  "compose_form.publish_form": "发布",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "保存更改",
-  "compose_form.sensitive.hide": "标记媒体为敏感内容",
+  "compose_form.sensitive.hide": "将媒体标记为敏感内容",
   "compose_form.sensitive.marked": "媒体已被标记为敏感内容",
   "compose_form.sensitive.unmarked": "媒体未被标记为敏感内容",
   "compose_form.spoiler.marked": "移除内容警告",
@@ -151,11 +152,11 @@
   "confirmations.block.confirm": "屏蔽",
   "confirmations.block.message": "你确定要屏蔽 {name} 吗?",
   "confirmations.cancel_follow_request.confirm": "撤回请求",
-  "confirmations.cancel_follow_request.message": "确定要撤回对 {name} 的关注请求吗?",
+  "confirmations.cancel_follow_request.message": "确定撤回关注 {name} 的请求吗?",
   "confirmations.delete.confirm": "删除",
   "confirmations.delete.message": "你确定要删除这条嘟文吗?",
   "confirmations.delete_list.confirm": "删除",
-  "confirmations.delete_list.message": "你确定要永久删除此列表吗?",
+  "confirmations.delete_list.message": "确定永久删除这个列表吗?",
   "confirmations.discard_edit_media.confirm": "丢弃",
   "confirmations.discard_edit_media.message": "您还有未保存的媒体描述或预览修改,仍然丢弃它们吗?",
   "confirmations.domain_block.confirm": "屏蔽整个域名",
@@ -163,10 +164,10 @@
   "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": "你确定要删除这条嘟文并重新编辑它吗?所有相关的转嘟和喜欢都会被清除,回复将会失去关联。",
+  "confirmations.redraft.message": "确定删除这条嘟文并重写吗?与它相关的所有转嘟和收藏都会清除,嘟文的回复也会失去关联。",
   "confirmations.reply.confirm": "回复",
   "confirmations.reply.message": "回复此消息将会覆盖当前正在编辑的信息。确定继续吗?",
   "confirmations.unfollow.confirm": "取消关注",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "把堆栈跟踪信息复制到剪贴板",
   "errors.unexpected_crash.report_issue": "报告问题",
   "explore.search_results": "搜索结果",
-  "explore.suggested_follows": "为你推荐",
   "explore.title": "探索",
-  "explore.trending_links": "最新消息",
-  "explore.trending_statuses": "嘟文",
-  "explore.trending_tags": "话题标签",
   "filter_modal.added.context_mismatch_explanation": "此过滤器分类不适用访问过嘟文的环境中。如果你想要在环境中过滤嘟文,你必须编辑此过滤器。",
   "filter_modal.added.context_mismatch_title": "环境不匹配!",
   "filter_modal.added.expired_explanation": "此过滤器分类已过期,你需要修改到期日期才能应用。",
@@ -261,7 +258,7 @@
   "follow_request.authorize": "授权",
   "follow_request.reject": "拒绝",
   "follow_requests.unlocked_explanation": "尽管你没有锁嘟,但是 {domain} 的工作人员认为你也许会想手动审核审核这些账号的关注请求。",
-  "footer.about": "关于本站",
+  "footer.about": "关于",
   "footer.directory": "用户目录",
   "footer.get_app": "获取应用程序",
   "footer.invite": "邀请",
@@ -279,8 +276,8 @@
   "hashtag.column_settings.tag_mode.any": "任一",
   "hashtag.column_settings.tag_mode.none": "无一",
   "hashtag.column_settings.tag_toggle": "在此栏加入额外的标签",
-  "hashtag.follow": "关注哈希标签",
-  "hashtag.unfollow": "取消关注哈希标签",
+  "hashtag.follow": "关注话题标签",
+  "hashtag.unfollow": "取消关注话题标签",
   "home.column_settings.basic": "基本设置",
   "home.column_settings.show_reblogs": "显示转嘟",
   "home.column_settings.show_replies": "显示回复",
@@ -292,7 +289,7 @@
   "interaction_modal.description.reply": "拥有一个 Mastodon 账号,你可以回复此嘟文。",
   "interaction_modal.on_another_server": "在另一服务器",
   "interaction_modal.on_this_server": "在此服务器",
-  "interaction_modal.other_server_instructions": "复制此链接并粘贴到你使用的Mastodon应用或者Mastodon服务器网页版搜索栏中。",
+  "interaction_modal.other_server_instructions": "复制此链接并粘贴到你使用的 Mastodon 应用或者 Mastodon 服务器网页版搜索栏中。",
   "interaction_modal.preamble": "基于 Mastodon 去中心化的特性,如果你在本站没有账号,也可以使用在另一 Mastodon 服务器或其他兼容平台上的已有账号。",
   "interaction_modal.title.favourite": "喜欢 {name} 的嘟文",
   "interaction_modal.title.follow": "关注 {name}",
@@ -319,7 +316,7 @@
   "keyboard_shortcuts.legend": "显示此列表",
   "keyboard_shortcuts.local": "打开本站时间轴",
   "keyboard_shortcuts.mention": "提及嘟文作者",
-  "keyboard_shortcuts.muted": "打开已静音的用户列表",
+  "keyboard_shortcuts.muted": "打开隐藏用户列表",
   "keyboard_shortcuts.my_profile": "打开你的个人资料",
   "keyboard_shortcuts.notifications": "打开通知栏",
   "keyboard_shortcuts.open_media": "打开媒体",
@@ -388,7 +385,7 @@
   "navigation_bar.search": "搜索",
   "navigation_bar.security": "安全",
   "not_signed_in_indicator.not_signed_in": "您需要登录才能访问此资源。",
-  "notification.admin.report": "{name} 已报告 {target}",
+  "notification.admin.report": "{name} 举报了 {target}",
   "notification.admin.sign_up": "{name} 注册了",
   "notification.favourite": "{name} 喜欢了你的嘟文",
   "notification.follow": "{name} 开始关注你",
@@ -401,7 +398,7 @@
   "notification.update": "{name} 编辑了嘟文",
   "notifications.clear": "清空通知列表",
   "notifications.clear_confirmation": "你确定要永久清空通知列表吗?",
-  "notifications.column_settings.admin.report": "新报告",
+  "notifications.column_settings.admin.report": "新举报:",
   "notifications.column_settings.admin.sign_up": "新注册:",
   "notifications.column_settings.alert": "桌面通知",
   "notifications.column_settings.favourite": "喜欢:",
@@ -450,7 +447,7 @@
   "privacy.direct.long": "只有被提及的用户能看到",
   "privacy.direct.short": "仅提到的人",
   "privacy.private.long": "仅对关注者可见",
-  "privacy.private.short": "仅关注者",
+  "privacy.private.short": "仅关注可见",
   "privacy.public.long": "所有人可见",
   "privacy.public.short": "公开",
   "privacy.unlisted.long": "对所有人可见,但不加入探索功能",
@@ -458,7 +455,7 @@
   "privacy_policy.last_updated": "最近更新于 {date}",
   "privacy_policy.title": "隐私政策",
   "refresh": "刷新",
-  "regeneration_indicator.label": "加载中……",
+  "regeneration_indicator.label": "加载中…",
   "regeneration_indicator.sublabel": "你的主页动态正在准备中!",
   "relative_time.days": "{number} 天",
   "relative_time.full.days": "{number, plural, one {# 天} other {# 天}}前",
@@ -500,7 +497,7 @@
   "report.rules.subtitle": "选择所有适用选项",
   "report.rules.title": "哪些规则被违反了?",
   "report.statuses.subtitle": "选择所有适用选项",
-  "report.statuses.title": "有任何帖子可以支持此报告吗?",
+  "report.statuses.title": "是否有任何嘟文可以支持这一报告?",
   "report.submit": "提交",
   "report.target": "举报 {target}",
   "report.thanks.take_action": "以下是您控制您在 Mastodon 上能看到哪些内容的选项:",
@@ -513,7 +510,7 @@
   "report_notification.categories.other": "其他",
   "report_notification.categories.spam": "骚扰",
   "report_notification.categories.violation": "违反规则",
-  "report_notification.open": "展开报告",
+  "report_notification.open": "打开举报",
   "search.placeholder": "搜索",
   "search.search_or_paste": "搜索或输入链接",
   "search_popout.search_format": "高级搜索格式",
@@ -538,7 +535,7 @@
   "server_banner.server_stats": "服务器统计数据:",
   "sign_in_banner.create_account": "创建账户",
   "sign_in_banner.sign_in": "登录",
-  "sign_in_banner.text": "登录以关注个人资料或主题标签、喜欢、分享和嘟文,或与在不同服务器上的帐号进行互动。",
+  "sign_in_banner.text": "登录以关注个人资料或话题标签、喜欢、分享和嘟文,或与在不同服务器上的账号进行互动。",
   "status.admin_account": "打开 @{name} 的管理界面",
   "status.admin_status": "打开此帖的管理界面",
   "status.block": "屏蔽 @{name}",
diff --git a/app/javascript/mastodon/locales/zh-HK.json b/app/javascript/mastodon/locales/zh-HK.json
index 495cfdca4..0b6fc762f 100644
--- a/app/javascript/mastodon/locales/zh-HK.json
+++ b/app/javascript/mastodon/locales/zh-HK.json
@@ -1,85 +1,85 @@
 {
   "about.blocks": "受管制的伺服器",
   "about.contact": "聯絡我們:",
-  "about.disclaimer": "Mastodon 是一個自由的開源軟體,為 Mastodon gGmbH 的註冊商標。",
-  "about.domain_blocks.no_reason_available": "Reason not available",
-  "about.domain_blocks.preamble": "Mastodon 一般允許您閱讀,並和聯邦宇宙上任何伺服器的用戶互動。這些伺服器是本站設下的例外。",
+  "about.disclaimer": "Mastodon 是免費的開源軟件,為 Mastodon gGmbH 的商標。",
+  "about.domain_blocks.no_reason_available": "沒有原因",
+  "about.domain_blocks.preamble": "Mastodon 通常也讓你查看聯邦宇宙中各伺服器的內容,並與使用者互動。這些是發生在這個特定伺服器上的例外情況。",
   "about.domain_blocks.silenced.explanation": "一般來說您不會看到來自這個伺服器的個人檔案和內容,除非您明確地打開或著追蹤此個人檔案。",
-  "about.domain_blocks.silenced.title": "受限的",
-  "about.domain_blocks.suspended.explanation": "來自此伺服器的資料將不會被處理、儲存或交換,本站也將無法和此伺服器上的用戶互動或者溝通。",
+  "about.domain_blocks.silenced.title": "受限",
+  "about.domain_blocks.suspended.explanation": "來自此伺服器的所有資料都不會被處理、儲存或交換,因此不可能從此伺服器跟使用者互動或交流。",
   "about.domain_blocks.suspended.title": "已停權",
-  "about.not_available": "此信息在此伺服器上尚未可存取。",
+  "about.not_available": "本伺服器尚未提供這資訊。",
   "about.powered_by": "由 {mastodon} 提供之去中心化社交媒體",
   "about.rules": "伺服器規則",
-  "account.account_note_header": "筆記",
+  "account.account_note_header": "備忘",
   "account.add_or_remove_from_list": "從列表中新增或移除",
   "account.badges.bot": "機械人",
   "account.badges.group": "群組",
   "account.block": "封鎖 @{name}",
-  "account.block_domain": "封鎖來自 {domain} 的一切文章",
+  "account.block_domain": "封鎖網域 {domain}",
   "account.blocked": "已封鎖",
-  "account.browse_more_on_origin_server": "瀏覽原服務站上的個人資料頁",
+  "account.browse_more_on_origin_server": "前往原始的個人檔案頁瀏覽更多",
   "account.cancel_follow_request": "撤回追蹤請求",
   "account.direct": "私訊 @{name}",
-  "account.disable_notifications": "如果 @{name} 發文請不要再通知我",
-  "account.domain_blocked": "服務站被封鎖",
-  "account.edit_profile": "修改個人資料",
-  "account.enable_notifications": "如果 @{name} 發文請通知我",
-  "account.endorse": "在個人資料頁推薦對方",
+  "account.disable_notifications": "當 @{name} 發文時不要再通知我",
+  "account.domain_blocked": "網域被封鎖",
+  "account.edit_profile": "修改個人檔案",
+  "account.enable_notifications": "當 @{name} 發文時通知我",
+  "account.endorse": "在個人檔案中推薦對方",
   "account.featured_tags.last_status_at": "上次帖文於 {date}",
   "account.featured_tags.last_status_never": "沒有帖文",
   "account.featured_tags.title": "{name} 的精選標籤",
   "account.follow": "關注",
   "account.followers": "追蹤者",
   "account.followers.empty": "尚未有人追蹤這位使用者。",
-  "account.followers_counter": "有 {count, plural,one {{counter} 個} other {{counter} 個}} 追蹤者",
+  "account.followers_counter": "有 {count, plural,one {{counter} 個} other {{counter} 個}}追蹤者",
   "account.following": "正在追蹤",
   "account.following_counter": "正在追蹤 {count, plural,one {{counter}}other {{counter} 人}}",
   "account.follows.empty": "這位使用者尚未追蹤任何人。",
-  "account.follows_you": "追蹤您",
+  "account.follows_you": "追蹤你",
   "account.go_to_profile": "前往個人檔案",
   "account.hide_reblogs": "隱藏 @{name} 的轉推",
   "account.joined_short": "加入於",
   "account.languages": "變更訂閱語言",
-  "account.link_verified_on": "此連結的所有權已在 {date} 檢查過",
+  "account.link_verified_on": "已於 {date} 檢查此連結的所有權",
   "account.locked_info": "此帳號的隱私狀態被設為鎖定。該擁有者會手動審核追蹤者。",
   "account.media": "媒體",
   "account.mention": "提及 @{name}",
-  "account.moved_to": "{name} 的新帳號現在是:",
+  "account.moved_to": "{name} 表示現在的新帳號是:",
   "account.mute": "將 @{name} 靜音",
   "account.mute_notifications": "將來自 @{name} 的通知靜音",
   "account.muted": "靜音",
-  "account.open_original_page": "Open original page",
-  "account.posts": "文章",
-  "account.posts_with_replies": "包含回覆的文章",
-  "account.report": "舉報 @{name}",
+  "account.open_original_page": "打開原始頁面",
+  "account.posts": "帖文",
+  "account.posts_with_replies": "帖文與回覆",
+  "account.report": "檢舉 @{name}",
   "account.requested": "正在等待核准。按一下以取消追蹤請求",
-  "account.share": "分享 @{name} 的個人資料",
-  "account.show_reblogs": "顯示 @{name} 的推文",
-  "account.statuses_counter": "{count, plural,one {{counter} 篇}other {{counter} 篇}}文章",
-  "account.unblock": "解除對 @{name} 的封鎖",
-  "account.unblock_domain": "解除對域名 {domain} 的封鎖",
+  "account.share": "分享 @{name} 的個人檔案",
+  "account.show_reblogs": "顯示 @{name} 的轉推",
+  "account.statuses_counter": "{count, plural,one {{counter} 篇}other {{counter} 篇}}帖文",
+  "account.unblock": "解除封鎖 @{name}",
+  "account.unblock_domain": "解除封鎖網域 {domain}",
   "account.unblock_short": "解除封鎖",
-  "account.unendorse": "不再於個人資料頁面推薦對方",
+  "account.unendorse": "不要在個人檔案中推薦",
   "account.unfollow": "取消追蹤",
-  "account.unmute": "取消 @{name} 的靜音",
-  "account.unmute_notifications": "取消來自 @{name} 通知的靜音",
-  "account.unmute_short": "取消靜音",
-  "account_note.placeholder": "按此添加備注",
-  "admin.dashboard.daily_retention": "註冊後用戶日計存留率",
-  "admin.dashboard.monthly_retention": "註冊後用戶月計存留率",
+  "account.unmute": "取消靜音 @{name}",
+  "account.unmute_notifications": "解除來自 @{name} 通知的靜音",
+  "account.unmute_short": "解除靜音",
+  "account_note.placeholder": "點擊添加備注",
+  "admin.dashboard.daily_retention": "註冊後按天計算的使用者存留率",
+  "admin.dashboard.monthly_retention": "註冊後按月計算的使用者存留率",
   "admin.dashboard.retention.average": "平均",
   "admin.dashboard.retention.cohort": "註冊月份",
-  "admin.dashboard.retention.cohort_size": "新用戶",
+  "admin.dashboard.retention.cohort_size": "新使用者",
   "alert.rate_limited.message": "請在 {retry_time, time, medium} 後重試",
   "alert.rate_limited.title": "已限速",
-  "alert.unexpected.message": "發生不可預期的錯誤。",
+  "alert.unexpected.message": "發生意外錯誤。",
   "alert.unexpected.title": "噢!",
   "announcement.announcement": "公告",
   "attachments_list.unprocessed": "(未處理)",
   "audio.hide": "隱藏音訊",
-  "autosuggest_hashtag.per_week": "{count} / 週",
-  "boost_modal.combo": "如你想在下次路過這顯示,請按{combo},",
+  "autosuggest_hashtag.per_week": "每週 {count} 次",
+  "boost_modal.combo": "你下次可以按 {combo} 來跳過",
   "bundle_column_error.copy_stacktrace": "複製錯誤報告",
   "bundle_column_error.error.body": "無法提供請求的頁面。這可能是因為代碼出現錯誤或瀏覽器出現相容問題。",
   "bundle_column_error.error.title": "大鑊!",
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "變更投票為允許多個選項",
   "compose_form.poll.switch_to_single": "變更投票為限定單一選項",
   "compose_form.publish": "發佈",
+  "compose_form.publish_form": "發佈",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "儲存變更",
   "compose_form.sensitive.hide": "標記媒體為敏感內容",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "複製 stacktrace 到剪貼簿",
   "errors.unexpected_crash.report_issue": "舉報問題",
   "explore.search_results": "搜尋結果",
-  "explore.suggested_follows": "為您推薦",
   "explore.title": "探索",
-  "explore.trending_links": "最新消息",
-  "explore.trending_statuses": "帖文",
-  "explore.trending_tags": "主題標籤",
   "filter_modal.added.context_mismatch_explanation": "此過濾器類別不適用於您所存取帖文的情境。如果您想要此帖文被於此情境被過濾,您必須編輯過濾器。",
   "filter_modal.added.context_mismatch_title": "情境不符合!",
   "filter_modal.added.expired_explanation": "此過濾器類別已失效,您需要更新過期日期才能套用。",
@@ -292,7 +289,7 @@
   "interaction_modal.description.reply": "在 Mastodon 上擁有帳號的話,您可以回覆此帖文。",
   "interaction_modal.on_another_server": "於不同伺服器",
   "interaction_modal.on_this_server": "於此伺服器",
-  "interaction_modal.other_server_instructions": "Copy and paste this URL into the search field of your favourite Mastodon app or the web interface of your Mastodon server.",
+  "interaction_modal.other_server_instructions": "複製此 URL 並貼上到你最喜歡的 Mastodon 應用程式或 Mastodon 伺服器網頁介面的搜尋欄中。",
   "interaction_modal.preamble": "由於 Mastodon 是去中心化的,即使您於此伺服器上沒有帳號,仍可以利用託管於其他 Mastodon 伺服器或相容平台上的既存帳號。",
   "interaction_modal.title.favourite": "將 {name} 的帖文加入最愛",
   "interaction_modal.title.follow": "追蹤 {name}",
@@ -398,16 +395,16 @@
   "notification.poll": "你參與過的一個投票已經結束",
   "notification.reblog": "{name} 轉推你的文章",
   "notification.status": "{name} 剛發表了文章",
-  "notification.update": "{name} edited a post",
+  "notification.update": "{name} 編輯了帖文",
   "notifications.clear": "清空通知紀錄",
   "notifications.clear_confirmation": "你確定要清空通知紀錄嗎?",
-  "notifications.column_settings.admin.report": "New reports:",
-  "notifications.column_settings.admin.sign_up": "New sign-ups:",
+  "notifications.column_settings.admin.report": "新舉報:",
+  "notifications.column_settings.admin.sign_up": "新註冊:",
   "notifications.column_settings.alert": "顯示桌面通知",
   "notifications.column_settings.favourite": "你最愛的文章:",
   "notifications.column_settings.filter_bar.advanced": "顯示所有分類",
   "notifications.column_settings.filter_bar.category": "快速過濾欄",
-  "notifications.column_settings.filter_bar.show_bar": "Show filter bar",
+  "notifications.column_settings.filter_bar.show_bar": "顯示篩選欄",
   "notifications.column_settings.follow": "新追蹤者:",
   "notifications.column_settings.follow_request": "新的追蹤請求:",
   "notifications.column_settings.mention": "提及你:",
@@ -417,9 +414,9 @@
   "notifications.column_settings.show": "在通知欄顯示",
   "notifications.column_settings.sound": "播放音效",
   "notifications.column_settings.status": "新的文章",
-  "notifications.column_settings.unread_notifications.category": "Unread notifications",
-  "notifications.column_settings.unread_notifications.highlight": "Highlight unread notifications",
-  "notifications.column_settings.update": "Edits:",
+  "notifications.column_settings.unread_notifications.category": "未讀通知",
+  "notifications.column_settings.unread_notifications.highlight": "突顯未讀通知",
+  "notifications.column_settings.update": "編輯:",
   "notifications.filter.all": "全部",
   "notifications.filter.boosts": "轉推",
   "notifications.filter.favourites": "最愛",
@@ -443,79 +440,79 @@
   "poll.total_votes": "{count, plural, one {# 票} other {# 票}}",
   "poll.vote": "投票",
   "poll.voted": "你已投票給這答案",
-  "poll.votes": "{votes, plural, one {# vote} other {# votes}}",
+  "poll.votes": "{votes, plural, one {# 票} other {# 票}}",
   "poll_button.add_poll": "建立投票",
   "poll_button.remove_poll": "移除投票",
   "privacy.change": "調整私隱設定",
   "privacy.direct.long": "只有提及的使用者能看到",
-  "privacy.direct.short": "Direct",
+  "privacy.direct.short": "僅限提及的人",
   "privacy.private.long": "只有你的關注者能看到",
-  "privacy.private.short": "Followers-only",
-  "privacy.public.long": "Visible for all",
+  "privacy.private.short": "僅限追隨者",
+  "privacy.public.long": "對所有人可見",
   "privacy.public.short": "公共",
-  "privacy.unlisted.long": "Visible for all, but opted-out of discovery features",
+  "privacy.unlisted.long": "對所有人可見,但不包括探索功能",
   "privacy.unlisted.short": "公開",
-  "privacy_policy.last_updated": "Last updated {date}",
-  "privacy_policy.title": "Privacy Policy",
+  "privacy_policy.last_updated": "最後更新 {date}",
+  "privacy_policy.title": "私隱政策",
   "refresh": "重新整理",
   "regeneration_indicator.label": "載入中……",
   "regeneration_indicator.sublabel": "你的主頁時間軸正在準備中!",
   "relative_time.days": "{number}日前",
-  "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.minutes": "{number, plural, one {# minute} other {# minutes}} ago",
-  "relative_time.full.seconds": "{number, plural, one {# second} other {# seconds}} ago",
+  "relative_time.full.days": "{number, plural, one {# 天} other {# 天}}前",
+  "relative_time.full.hours": "{number, plural, one {# 小時} other {# 小時}}前",
+  "relative_time.full.just_now": "剛剛",
+  "relative_time.full.minutes": "{number, plural, one {# 分鐘} other {# 分鐘}}前",
+  "relative_time.full.seconds": "{number, plural, one {# 秒} other {# 秒}}前",
   "relative_time.hours": "{number}小時前",
   "relative_time.just_now": "剛剛",
   "relative_time.minutes": "{number}分鐘前",
   "relative_time.seconds": "{number}秒前",
   "relative_time.today": "今天",
   "reply_indicator.cancel": "取消",
-  "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.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.category.title_account": "profile",
-  "report.category.title_status": "post",
-  "report.close": "Done",
-  "report.comment.title": "Is there anything else you think we should know?",
+  "report.block": "封鎖",
+  "report.block_explanation": "你將不會看到他們的帖文。他們將無法看到你的帖文或追隨你。他們將發現自己被封鎖了。",
+  "report.categories.other": "其他",
+  "report.categories.spam": "垃圾訊息",
+  "report.categories.violation": "內容違犯一項或多項伺服器規則",
+  "report.category.subtitle": "選擇最佳選項",
+  "report.category.title": "告訴我們這個 {type} 發生了甚麼事",
+  "report.category.title_account": "個人檔案",
+  "report.category.title_status": "帖文",
+  "report.close": "完成",
+  "report.comment.title": "還有甚麼你想讓我們知道的嗎?",
   "report.forward": "轉寄到 {target}",
   "report.forward_hint": "這個帳戶屬於其他服務站。要向該服務站發送匿名的舉報訊息嗎?",
   "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": "Next",
+  "report.mute_explanation": "你將不會看到他們的帖文。他們仍然能夠追蹤你和查看你的帖文,並且不會知道他們自己已被靜音。",
+  "report.next": "繼續",
   "report.placeholder": "額外訊息",
-  "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": "我不喜歡它",
+  "report.reasons.dislike_description": "這不是你想看到的東西",
+  "report.reasons.other": "其他原因",
+  "report.reasons.other_description": "這個問題不屬於其他類別",
+  "report.reasons.spam": "這是垃圾訊息",
+  "report.reasons.spam_description": "惡意連結、虛假互動或重複回覆",
+  "report.reasons.violation": "它違反了伺服器規則",
+  "report.reasons.violation_description": "你知道它違反了特定規則",
+  "report.rules.subtitle": "選擇所有適用選項",
+  "report.rules.title": "違反了哪些規則?",
+  "report.statuses.subtitle": "選擇所有適用選項",
+  "report.statuses.title": "有沒有能夠佐證這個檢舉的帖文?",
   "report.submit": "提交",
   "report.target": "舉報",
-  "report.thanks.take_action": "Here are your options for controlling what you see on Mastodon:",
-  "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.thanks.take_action": "以下是控制你在 Mastodon 上看到的內容的選項:",
+  "report.thanks.take_action_actionable": "在我們審核期間,你可以對 @{name} 採取以下行動:",
+  "report.thanks.title": "不想看到這個嗎?",
+  "report.thanks.title_actionable": "感謝你的檢舉,我們會著手調查。",
   "report.unfollow": "取消追蹤 @{name}",
-  "report.unfollow_explanation": "You are following this account. To not see their posts in your home feed anymore, unfollow them.",
-  "report_notification.attached_statuses": "{count, plural, one {{count} post} other {{count} posts}} attached",
-  "report_notification.categories.other": "Other",
-  "report_notification.categories.spam": "Spam",
-  "report_notification.categories.violation": "Rule violation",
-  "report_notification.open": "Open report",
+  "report.unfollow_explanation": "你正在追蹤此帳號。如果不想再在首頁時間軸看到他們的帖文,請取消追蹤。",
+  "report_notification.attached_statuses": "已附上 {count, plural, one {{count} 則帖文} other {{count} 則帖文}}",
+  "report_notification.categories.other": "其他",
+  "report_notification.categories.spam": "垃圾訊息",
+  "report_notification.categories.violation": "違反規則",
+  "report_notification.open": "打開檢舉報告",
   "search.placeholder": "搜尋",
-  "search.search_or_paste": "Search or paste URL",
+  "search.search_or_paste": "搜尋或貼上網址",
   "search_popout.search_format": "高級搜索格式",
   "search_popout.tips.full_text": "輸入簡單的文字,搜索由你發放、收藏、轉推和提及你的文章,以及符合的使用者名稱,顯示名稱和標籤。",
   "search_popout.tips.hashtag": "標籤",
@@ -523,22 +520,22 @@
   "search_popout.tips.text": "輸入簡單的文字,搜索符合的顯示名稱、使用者名稱和標籤",
   "search_popout.tips.user": "使用者",
   "search_results.accounts": "使用者",
-  "search_results.all": "All",
+  "search_results.all": "全部",
   "search_results.hashtags": "標籤",
-  "search_results.nothing_found": "Could not find anything for these search terms",
+  "search_results.nothing_found": "找不到與搜尋字詞相關的內容",
   "search_results.statuses": "文章",
   "search_results.statuses_fts_disabled": "此 Mastodon 伺服器並未啟用「搜尋文章內章」功能。",
-  "search_results.title": "Search for {q}",
+  "search_results.title": "搜尋 {q}",
   "search_results.total": "{count, number} 項結果",
-  "server_banner.about_active_users": "People using this server during the last 30 days (Monthly Active Users)",
-  "server_banner.active_users": "active users",
-  "server_banner.administered_by": "Administered by:",
-  "server_banner.introduction": "{domain} is part of the decentralized social network powered by {mastodon}.",
-  "server_banner.learn_more": "Learn more",
-  "server_banner.server_stats": "Server stats:",
-  "sign_in_banner.create_account": "Create account",
-  "sign_in_banner.sign_in": "Sign in",
-  "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts, or interact from your account on a different server.",
+  "server_banner.about_active_users": "在最近 30 天內內使用此伺服器的人 (月活躍用戶)",
+  "server_banner.active_users": "活躍用戶",
+  "server_banner.administered_by": "管理者:",
+  "server_banner.introduction": "{domain} 是由 {mastodon} 提供之去中心化社交網絡的一部份。",
+  "server_banner.learn_more": "了解更多",
+  "server_banner.server_stats": "伺服器統計:",
+  "sign_in_banner.create_account": "建立帳號",
+  "sign_in_banner.sign_in": "登入",
+  "sign_in_banner.text": "登入以追蹤個人檔案、標籤、最愛、分享和回覆帖文,或用你在其他伺服器的帳號進行互動。",
   "status.admin_account": "開啟 @{name} 的管理介面",
   "status.admin_status": "在管理介面開啟這篇文章",
   "status.block": "封鎖 @{name}",
@@ -549,16 +546,16 @@
   "status.delete": "刪除",
   "status.detailed_status": "詳細對話內容",
   "status.direct": "私訊 @{name}",
-  "status.edit": "Edit",
-  "status.edited": "Edited {date}",
-  "status.edited_x_times": "Edited {count, plural, one {{count} time} other {{count} times}}",
+  "status.edit": "編輯",
+  "status.edited": "編輯於 {date}",
+  "status.edited_x_times": "Edited {count, plural, one {{count} 次} other {{count} 次}}",
   "status.embed": "嵌入",
   "status.favourite": "最愛",
-  "status.filter": "Filter this post",
+  "status.filter": "篩選此帖文",
   "status.filtered": "已過濾",
-  "status.hide": "Hide toot",
-  "status.history.created": "{name} created {date}",
-  "status.history.edited": "{name} edited {date}",
+  "status.hide": "隱藏帖文",
+  "status.history.created": "{name} 於 {date} 建立",
+  "status.history.edited": "{name} 於 {date} 編輯",
   "status.load_more": "載入更多",
   "status.media_hidden": "隱藏媒體內容",
   "status.mention": "提及 @{name}",
@@ -575,26 +572,26 @@
   "status.reblogs.empty": "還未有人轉推。有的話會顯示在這裡。",
   "status.redraft": "刪除並編輯",
   "status.remove_bookmark": "移除書籤",
-  "status.replied_to": "Replied to {name}",
+  "status.replied_to": "回覆 {name}",
   "status.reply": "回應",
   "status.replyAll": "回應所有人",
   "status.report": "舉報 @{name}",
   "status.sensitive_warning": "敏感內容",
   "status.share": "分享",
-  "status.show_filter_reason": "Show anyway",
+  "status.show_filter_reason": "仍要顯示",
   "status.show_less": "收起",
   "status.show_less_all": "全部收起",
   "status.show_more": "展開",
   "status.show_more_all": "全部展開",
-  "status.show_original": "Show original",
-  "status.translate": "Translate",
-  "status.translated_from_with": "Translated from {lang} using {provider}",
+  "status.show_original": "顯示原文",
+  "status.translate": "翻譯",
+  "status.translated_from_with": "使用 {provider} 翻譯 {lang}",
   "status.uncached_media_warning": "無法使用",
   "status.unmute_conversation": "對話解除靜音",
   "status.unpin": "解除置頂",
-  "subscribed_languages.lead": "Only posts in selected languages will appear on your home and list timelines after the change. Select none to receive posts in all languages.",
-  "subscribed_languages.save": "Save changes",
-  "subscribed_languages.target": "Change subscribed languages for {target}",
+  "subscribed_languages.lead": "更改後,只有所選語言的帖文會出現在你的主頁和列表時間軸上。選擇「無」以接收所有語言的帖文。",
+  "subscribed_languages.save": "儲存變更",
+  "subscribed_languages.target": "變更 {target} 的訂閱語言",
   "suggestions.dismiss": "關閉建議",
   "suggestions.header": "你可能對這些感興趣…",
   "tabs_bar.federated_timeline": "跨站",
@@ -610,7 +607,7 @@
   "timeline_hint.resources.followers": "追蹤者",
   "timeline_hint.resources.follows": "追蹤中",
   "timeline_hint.resources.statuses": "更早的文章",
-  "trends.counter_by_accounts": "{count, plural, one {{counter} person} other {{counter} people}} in the past {days, plural, one {day} other {{days} days}}",
+  "trends.counter_by_accounts": "{count, plural, one {{counter} 人} other {{counter} 人}} 於過去 {days, plural, one {日} other {{days} days}} 之間",
   "trends.trending_now": "現在流行",
   "ui.beforeunload": "如果你現在離開 Mastodon,你的草稿內容將會被丟棄。",
   "units.short.billion": "{count}B",
@@ -622,14 +619,14 @@
   "upload_error.poll": "不允許在投票上傳檔案。",
   "upload_form.audio_description": "簡單描述內容給聽障人士",
   "upload_form.description": "為視覺障礙人士添加文字說明",
-  "upload_form.description_missing": "No description added",
+  "upload_form.description_missing": "沒有加入描述",
   "upload_form.edit": "編輯",
   "upload_form.thumbnail": "更改預覽圖",
   "upload_form.undo": "刪除",
   "upload_form.video_description": "簡單描述給聽障或視障人士",
   "upload_modal.analyzing_picture": "正在分析圖片…",
   "upload_modal.apply": "套用",
-  "upload_modal.applying": "Applying…",
+  "upload_modal.applying": "套用中…",
   "upload_modal.choose_image": "選擇圖片",
   "upload_modal.description_placeholder": "一隻敏捷的狐狸,輕巧地跳過那隻懶洋洋的狗",
   "upload_modal.detect_text": "從圖片偵測文字",
@@ -638,7 +635,7 @@
   "upload_modal.preparing_ocr": "準備辨識圖片文字…",
   "upload_modal.preview_label": "預覽 ({ratio})",
   "upload_progress.label": "上載中……",
-  "upload_progress.processing": "Processing…",
+  "upload_progress.processing": "處理中...",
   "video.close": "關閉影片",
   "video.download": "下載檔案",
   "video.exit_fullscreen": "退出全螢幕",
diff --git a/app/javascript/mastodon/locales/zh-TW.json b/app/javascript/mastodon/locales/zh-TW.json
index a5ac8dbf7..aa5a0512a 100644
--- a/app/javascript/mastodon/locales/zh-TW.json
+++ b/app/javascript/mastodon/locales/zh-TW.json
@@ -138,6 +138,7 @@
   "compose_form.poll.switch_to_multiple": "變更投票為允許多個選項",
   "compose_form.poll.switch_to_single": "變更投票為允許單一選項",
   "compose_form.publish": "嘟出去",
+  "compose_form.publish_form": "嘟出去",
   "compose_form.publish_loud": "{publish}!",
   "compose_form.save_changes": "儲存變更",
   "compose_form.sensitive.hide": "標記媒體為敏感內容",
@@ -234,11 +235,7 @@
   "errors.unexpected_crash.copy_stacktrace": "複製 stacktrace 到剪貼簿",
   "errors.unexpected_crash.report_issue": "回報問題",
   "explore.search_results": "搜尋結果",
-  "explore.suggested_follows": "為您推薦",
   "explore.title": "探索",
-  "explore.trending_links": "最新消息",
-  "explore.trending_statuses": "嘟文",
-  "explore.trending_tags": "主題標籤",
   "filter_modal.added.context_mismatch_explanation": "此過濾器類別不是用您所存取嘟文的情境。若您想要此嘟文被於此情境被過濾,您必須編輯過濾器。",
   "filter_modal.added.context_mismatch_title": "不符合情境!",
   "filter_modal.added.expired_explanation": "此過濾器類別已失效,您需要更新過期日期以套用。",
diff --git a/app/javascript/mastodon/reducers/accounts_map.js b/app/javascript/mastodon/reducers/accounts_map.js
index 53e08c8fb..444bbda19 100644
--- a/app/javascript/mastodon/reducers/accounts_map.js
+++ b/app/javascript/mastodon/reducers/accounts_map.js
@@ -1,4 +1,5 @@
 import { ACCOUNT_IMPORT, ACCOUNTS_IMPORT } from '../actions/importer';
+import { ACCOUNT_LOOKUP_FAIL } from '../actions/accounts';
 import { Map as ImmutableMap } from 'immutable';
 
 export const normalizeForLookup = str => str.toLowerCase();
@@ -7,6 +8,8 @@ const initialState = ImmutableMap();
 
 export default function accountsMap(state = initialState, action) {
   switch(action.type) {
+  case ACCOUNT_LOOKUP_FAIL:
+    return action.error?.response?.status === 404 ? state.set(normalizeForLookup(action.acct), null) : state;
   case ACCOUNT_IMPORT:
     return state.set(normalizeForLookup(action.account.acct), action.account.id);
   case ACCOUNTS_IMPORT:
diff --git a/app/javascript/mastodon/reducers/compose.js b/app/javascript/mastodon/reducers/compose.js
index 8cc7bf520..1dafb07fd 100644
--- a/app/javascript/mastodon/reducers/compose.js
+++ b/app/javascript/mastodon/reducers/compose.js
@@ -337,6 +337,10 @@ export default function compose(state = initialState, action) {
       if (action.status.get('spoiler_text').length > 0) {
         map.set('spoiler', true);
         map.set('spoiler_text', action.status.get('spoiler_text'));
+
+        if (map.get('media_attachments').size >= 1) {
+          map.set('sensitive', true);
+        }
       } else {
         map.set('spoiler', false);
         map.set('spoiler_text', '');
diff --git a/app/javascript/styles/mastodon/components.scss b/app/javascript/styles/mastodon/components.scss
index 24e2aed5d..8a2f64526 100644
--- a/app/javascript/styles/mastodon/components.scss
+++ b/app/javascript/styles/mastodon/components.scss
@@ -3139,12 +3139,16 @@ $ui-header-height: 55px;
     margin-top: 10px;
 
     h4 {
+      border-bottom: 1px solid lighten($ui-base-color, 8%);
+      padding: 10px;
       font-size: 12px;
       text-transform: uppercase;
-      color: $darker-text-color;
-      padding: 10px;
       font-weight: 500;
-      border-bottom: 1px solid lighten($ui-base-color, 8%);
+
+      a {
+        color: $darker-text-color;
+        text-decoration: none;
+      }
     }
 
     @media screen and (max-height: 810px) {
diff --git a/app/lib/vacuum/statuses_vacuum.rb b/app/lib/vacuum/statuses_vacuum.rb
index 41d6ba270..d1c4e7197 100644
--- a/app/lib/vacuum/statuses_vacuum.rb
+++ b/app/lib/vacuum/statuses_vacuum.rb
@@ -8,47 +8,40 @@ class Vacuum::StatusesVacuum
   end
 
   def perform
-    vacuum_statuses! if retention_period?
+    vacuum_statuses! if @retention_period.present?
   end
 
   private
 
   def vacuum_statuses!
-    statuses_scope.find_in_batches do |statuses|
+    statuses_scope.in_batches do |statuses|
       # Side-effects not covered by foreign keys, such
       # as the search index, must be handled first.
-
-      remove_from_account_conversations(statuses)
-      remove_from_search_index(statuses)
-
-      # Foreign keys take care of most associated records
-      # for us. Media attachments will be orphaned.
-
-      Status.where(id: statuses.map(&:id)).delete_all
+      statuses.direct_visibility
+              .includes(mentions: :account)
+              .find_each do |status|
+        # TODO: replace temporary solution - call of private model method
+        status.send(:unlink_from_conversations)
+      end
+      remove_from_search_index(statuses.ids) if Chewy.enabled?
+
+      # Foreign keys take care of most associated records for us.
+      # Media attachments will be orphaned.
+      statuses.delete_all
     end
   end
 
   def statuses_scope
-    Status.unscoped.kept.where(account: Account.remote).where(Status.arel_table[:id].lt(retention_period_as_id)).select(:id, :visibility)
+    Status.unscoped.kept
+          .joins(:account).merge(Account.remote)
+          .where('statuses.id < ?', retention_period_as_id)
   end
 
   def retention_period_as_id
     Mastodon::Snowflake.id_at(@retention_period.ago, with_random: false)
   end
 
-  def analyze_statuses!
-    ActiveRecord::Base.connection.execute('ANALYZE statuses')
-  end
-
-  def remove_from_account_conversations(statuses)
-    Status.where(id: statuses.select(&:direct_visibility?).map(&:id)).includes(:account, mentions: :account).each(&:unlink_from_conversations)
-  end
-
-  def remove_from_search_index(statuses)
-    with_redis { |redis| redis.sadd('chewy:queue:StatusesIndex', statuses.map(&:id)) } if Chewy.enabled?
-  end
-
-  def retention_period?
-    @retention_period.present?
+  def remove_from_search_index(status_ids)
+    with_redis { |redis| redis.sadd('chewy:queue:StatusesIndex', status_ids) }
   end
 end
diff --git a/app/models/account/field.rb b/app/models/account/field.rb
index ffc8dce80..4db4cac30 100644
--- a/app/models/account/field.rb
+++ b/app/models/account/field.rb
@@ -46,7 +46,8 @@ class Account::Field < ActiveModelSerializers::Model
       parsed_url.user.nil? &&
       parsed_url.password.nil? &&
       parsed_url.host.present? &&
-      parsed_url.normalized_host == parsed_url.host
+      parsed_url.normalized_host == parsed_url.host &&
+      (parsed_url.path.empty? || parsed_url.path == parsed_url.normalized_path)
   rescue Addressable::URI::InvalidURIError, IDN::Idna::IdnaError
     false
   end
diff --git a/app/models/account_filter.rb b/app/models/account_filter.rb
index e09ce4ec2..3a4ac0492 100644
--- a/app/models/account_filter.rb
+++ b/app/models/account_filter.rb
@@ -43,13 +43,13 @@ class AccountFilter
     when 'status'
       status_scope(value)
     when 'by_domain'
-      Account.where(domain: value.to_s)
+      Account.where(domain: value.to_s.strip)
     when 'username'
-      Account.matches_username(value.to_s)
+      Account.matches_username(value.to_s.strip)
     when 'display_name'
-      Account.matches_display_name(value.to_s)
+      Account.matches_display_name(value.to_s.strip)
     when 'email'
-      accounts_with_users.merge(User.matches_email(value.to_s))
+      accounts_with_users.merge(User.matches_email(value.to_s.strip))
     when 'ip'
       valid_ip?(value) ? accounts_with_users.merge(User.matches_ip(value).group('users.id, accounts.id')) : Account.none
     when 'invited_by'
diff --git a/app/models/admin/import.rb b/app/models/admin/import.rb
index c305be237..79c0722d5 100644
--- a/app/models/admin/import.rb
+++ b/app/models/admin/import.rb
@@ -2,28 +2,31 @@
 
 # A non-activerecord helper class for csv upload
 class Admin::Import
-  extend ActiveModel::Callbacks
   include ActiveModel::Model
-  include Paperclip::Glue
 
-  FILE_TYPES = %w(text/plain text/csv application/csv).freeze
+  ROWS_PROCESSING_LIMIT = 20_000
 
-  # Paperclip required callbacks
-  define_model_callbacks :save, only: [:after]
-  define_model_callbacks :destroy, only: [:before, :after]
+  attr_accessor :data
 
-  attr_accessor :data_file_name, :data_content_type
+  validates :data, presence: true
+  validate :validate_data
 
-  has_attached_file :data
-  validates_attachment_content_type :data, content_type: FILE_TYPES
-  validates_attachment_presence :data
-  validates_with AdminImportValidator, on: :create
-
-  def save
-    run_callbacks :save
+  def data_file_name
+    data.original_filename
   end
 
-  def destroy
-    run_callbacks :destroy
+  private
+
+  def validate_data
+    return if data.blank?
+
+    csv_data = CSV.read(data.path, encoding: 'UTF-8')
+
+    row_count  = csv_data.size
+    row_count -= 1 if csv_data.first&.first == '#domain'
+
+    errors.add(:data, I18n.t('imports.errors.over_rows_processing_limit', count: ROWS_PROCESSING_LIMIT)) if row_count > ROWS_PROCESSING_LIMIT
+  rescue CSV::MalformedCSVError => e
+    errors.add(:data, I18n.t('imports.errors.invalid_csv_file', error: e.message))
   end
 end
diff --git a/app/models/form/account_batch.rb b/app/models/form/account_batch.rb
index 5cfcf7205..473622edf 100644
--- a/app/models/form/account_batch.rb
+++ b/app/models/form/account_batch.rb
@@ -115,6 +115,10 @@ class Form::AccountBatch
     authorize(account, :suspend?)
     log_action(:suspend, account)
     account.suspend!(origin: :local)
+    account.strikes.create!(
+      account: current_account,
+      action: :suspend
+    )
     Admin::SuspensionWorker.perform_async(account.id)
   end
 
diff --git a/app/models/media_attachment.rb b/app/models/media_attachment.rb
index 6f079dd18..f2b34e4cd 100644
--- a/app/models/media_attachment.rb
+++ b/app/models/media_attachment.rb
@@ -104,6 +104,7 @@ class MediaAttachment < ApplicationRecord
         'c:v' => 'h264',
         'maxrate' => '1300K',
         'bufsize' => '1300K',
+        'b:v' => '1300K',
         'frames:v' => 60 * 60 * 3,
         'crf' => 18,
         'map_metadata' => '-1',
diff --git a/app/models/poll.rb b/app/models/poll.rb
index 1a326e452..af3b09315 100644
--- a/app/models/poll.rb
+++ b/app/models/poll.rb
@@ -85,6 +85,7 @@ class Poll < ApplicationRecord
   def reset_votes!
     self.cached_tallies = options.map { 0 }
     self.votes_count = 0
+    self.voters_count = 0
     votes.delete_all unless new_record?
   end
 
diff --git a/app/models/status.rb b/app/models/status.rb
index 044816be7..6cfe19d23 100644
--- a/app/models/status.rb
+++ b/app/models/status.rb
@@ -68,6 +68,7 @@ class Status < ApplicationRecord
   has_many :reblogged_by_accounts, through: :reblogs, class_name: 'Account', source: :account
   has_many :replies, foreign_key: 'in_reply_to_id', class_name: 'Status', inverse_of: :thread
   has_many :mentions, dependent: :destroy, inverse_of: :status
+  has_many :mentioned_accounts, through: :mentions, source: :account, class_name: 'Account'
   has_many :active_mentions, -> { active }, class_name: 'Mention', inverse_of: :status
   has_many :media_attachments, dependent: :nullify
 
@@ -146,11 +147,11 @@ class Status < ApplicationRecord
     ids << account_id if local?
 
     if preloaded.nil?
-      ids += mentions.where(account: Account.local, silent: false).pluck(:account_id)
-      ids += favourites.where(account: Account.local).pluck(:account_id)
-      ids += reblogs.where(account: Account.local).pluck(:account_id)
-      ids += bookmarks.where(account: Account.local).pluck(:account_id)
-      ids += poll.votes.where(account: Account.local).pluck(:account_id) if poll.present?
+      ids += mentions.joins(:account).merge(Account.local).active.pluck(:account_id)
+      ids += favourites.joins(:account).merge(Account.local).pluck(:account_id)
+      ids += reblogs.joins(:account).merge(Account.local).pluck(:account_id)
+      ids += bookmarks.joins(:account).merge(Account.local).pluck(:account_id)
+      ids += poll.votes.joins(:account).merge(Account.local).pluck(:account_id) if poll.present?
     else
       ids += preloaded.mentions[id] || []
       ids += preloaded.favourites[id] || []
@@ -590,8 +591,8 @@ class Status < ApplicationRecord
   def unlink_from_conversations
     return unless direct_visibility?
 
-    mentioned_accounts = (association(:mentions).loaded? ? mentions : mentions.includes(:account)).map(&:account)
-    inbox_owners       = mentioned_accounts.select(&:local?) + (account.local? ? [account] : [])
+    inbox_owners = mentioned_accounts.local
+    inbox_owners += [account] if account.local?
 
     inbox_owners.each do |inbox_owner|
       AccountConversation.remove_status(inbox_owner, self)
diff --git a/app/models/user.rb b/app/models/user.rb
index 0e8a87aea..0eb975dec 100644
--- a/app/models/user.rb
+++ b/app/models/user.rb
@@ -237,6 +237,11 @@ class User < ApplicationRecord
   end
 
   def functional?
+
+    functional_or_moved?
+  end
+
+  def functional_or_moved?
     confirmed? && approved? && !disabled? && !account.suspended? && !account.memorial?
   end
 
diff --git a/app/policies/email_domain_block_policy.rb b/app/policies/email_domain_block_policy.rb
index 1a0ddfa87..0d167ea3e 100644
--- a/app/policies/email_domain_block_policy.rb
+++ b/app/policies/email_domain_block_policy.rb
@@ -5,6 +5,10 @@ class EmailDomainBlockPolicy < ApplicationPolicy
     role.can?(:manage_blocks)
   end
 
+  def show?
+    role.can?(:manage_blocks)
+  end
+
   def create?
     role.can?(:manage_blocks)
   end
diff --git a/app/serializers/manifest_serializer.rb b/app/serializers/manifest_serializer.rb
index 5604325be..48f3aa7a6 100644
--- a/app/serializers/manifest_serializer.rb
+++ b/app/serializers/manifest_serializer.rb
@@ -35,6 +35,7 @@ class ManifestSerializer < ActiveModel::Serializer
         src: full_pack_url("media/icons/android-chrome-#{size}x#{size}.png"),
         sizes: "#{size}x#{size}",
         type: 'image/png',
+        purpose: 'any maskable',
       }
     end
   end
diff --git a/app/services/activitypub/process_status_update_service.rb b/app/services/activitypub/process_status_update_service.rb
index addd5fc27..a0605b1a3 100644
--- a/app/services/activitypub/process_status_update_service.rb
+++ b/app/services/activitypub/process_status_update_service.rb
@@ -92,7 +92,13 @@ class ActivityPub::ProcessStatusUpdateService < BaseService
 
         next if unsupported_media_type?(media_attachment_parser.file_content_type) || skip_download?
 
-        RedownloadMediaWorker.perform_async(media_attachment.id) if media_attachment.remote_url_previously_changed? || media_attachment.thumbnail_remote_url_previously_changed?
+        begin
+          media_attachment.download_file! if media_attachment.remote_url_previously_changed?
+          media_attachment.download_thumbnail! if media_attachment.thumbnail_remote_url_previously_changed?
+          media_attachment.save
+        rescue Mastodon::UnexpectedResponseError, HTTP::TimeoutError, HTTP::ConnectionError, OpenSSL::SSL::SSLError
+          RedownloadMediaWorker.perform_in(rand(30..600).seconds, media_attachment.id)
+        end
       rescue Addressable::URI::InvalidURIError => e
         Rails.logger.debug "Invalid URL in attachment: #{e}"
       end
diff --git a/app/services/delete_account_service.rb b/app/services/delete_account_service.rb
index a2d535d26..3a082c7c8 100644
--- a/app/services/delete_account_service.rb
+++ b/app/services/delete_account_service.rb
@@ -267,7 +267,7 @@ class DeleteAccountService < BaseService
   end
 
   def delete_actor_json
-    @delete_actor_json ||= Oj.dump(serialize_payload(@account, ActivityPub::DeleteActorSerializer, signer: @account, always_sign: true))
+    @delete_actor_json ||= Oj.dump(serialize_payload(@account, ActivityPub::DeleteActorSerializer))
   end
 
   def delivery_inboxes
diff --git a/app/services/verify_link_service.rb b/app/services/verify_link_service.rb
index 0a39d7f26..7496fe2d5 100644
--- a/app/services/verify_link_service.rb
+++ b/app/services/verify_link_service.rb
@@ -28,7 +28,7 @@ class VerifyLinkService < BaseService
 
     links = Nokogiri::HTML(@body).xpath('//a[contains(concat(" ", normalize-space(@rel), " "), " me ")]|//link[contains(concat(" ", normalize-space(@rel), " "), " me ")]')
 
-    if links.any? { |link| link['href'].downcase == @link_back.downcase }
+    if links.any? { |link| link['href']&.downcase == @link_back.downcase }
       true
     elsif links.empty?
       false
@@ -38,6 +38,8 @@ class VerifyLinkService < BaseService
   end
 
   def link_redirects_back?(test_url)
+    return false if test_url.blank?
+
     redirect_to_url = Request.new(:head, test_url, follow: false).perform do |res|
       res.headers['Location']
     end
diff --git a/app/validators/admin_import_validator.rb b/app/validators/admin_import_validator.rb
deleted file mode 100644
index 338ceb3a7..000000000
--- a/app/validators/admin_import_validator.rb
+++ /dev/null
@@ -1,19 +0,0 @@
-# frozen_string_literal: true
-
-class AdminImportValidator < ActiveModel::Validator
-  FIRST_HEADER = '#domain'
-
-  def validate(import)
-    return if import.type.blank? || import.data.blank?
-
-    # We parse because newlines could be part of individual rows. This
-    # runs on create so we should be reading the local file here before
-    # it is uploaded to object storage or moved anywhere...
-    csv_data = CSV.parse(import.data.queued_for_write[:original].read)
-
-    row_count  = csv_data.size
-    row_count -= 1 if csv_data.first&.first == FIRST_HEADER
-
-    import.errors.add(:data, I18n.t('imports.errors.over_rows_processing_limit', count: Admin::DomainBlocksController::ROWS_PROCESSING_LIMIT)) if row_count > Admin::DomainBlocksController::ROWS_PROCESSING_LIMIT
-  end
-end
diff --git a/app/views/application/_card.html.haml b/app/views/application/_card.html.haml
index 909d9ff81..3d0e6b1da 100644
--- a/app/views/application/_card.html.haml
+++ b/app/views/application/_card.html.haml
@@ -13,4 +13,4 @@
           %strong.emojify.p-name= display_name(account, custom_emojify: true)
         %span
           = acct(account)
-          = fa_icon('lock', { :data => ({hidden: true} unless account.locked?)})
+          = fa_icon('lock', { data: ({hidden: true} unless account.locked?)})
diff --git a/app/views/auth/challenges/new.html.haml b/app/views/auth/challenges/new.html.haml
index ff4b7a506..4f21e4af6 100644
--- a/app/views/auth/challenges/new.html.haml
+++ b/app/views/auth/challenges/new.html.haml
@@ -5,7 +5,7 @@
   = f.input :return_to, as: :hidden
 
   .field-group
-    = f.input :current_password, wrapper: :with_block_label, input_html: { :autocomplete => 'current-password', :autofocus => true }, label: t('challenge.prompt'), required: true
+    = f.input :current_password, wrapper: :with_block_label, input_html: { autocomplete: 'current-password', autofocus: true }, label: t('challenge.prompt'), required: true
 
   .actions
     = f.button :button, t('challenge.confirm'), type: :submit
diff --git a/app/views/auth/confirmations/new.html.haml b/app/views/auth/confirmations/new.html.haml
index 4a1bedaa4..a294d3cb5 100644
--- a/app/views/auth/confirmations/new.html.haml
+++ b/app/views/auth/confirmations/new.html.haml
@@ -5,7 +5,7 @@
   = render 'shared/error_messages', object: resource
 
   .fields-group
-    = f.input :email, autofocus: true, wrapper: :with_label, label: t('simple_form.labels.defaults.email'), input_html: { 'aria-label' => t('simple_form.labels.defaults.email') }, hint: false
+    = f.input :email, autofocus: true, wrapper: :with_label, label: t('simple_form.labels.defaults.email'), input_html: { 'aria-label': t('simple_form.labels.defaults.email') }, hint: false
 
   .actions
     = f.button :button, t('auth.resend_confirmation'), type: :submit
diff --git a/app/views/auth/passwords/edit.html.haml b/app/views/auth/passwords/edit.html.haml
index c7dbebe75..b95a9b676 100644
--- a/app/views/auth/passwords/edit.html.haml
+++ b/app/views/auth/passwords/edit.html.haml
@@ -8,9 +8,9 @@
     = f.input :reset_password_token, as: :hidden
 
     .fields-group
-      = f.input :password, wrapper: :with_label, autofocus: true, label: t('simple_form.labels.defaults.new_password'), input_html: { 'aria-label' => t('simple_form.labels.defaults.new_password'), :autocomplete => 'new-password', :minlength => User.password_length.first, :maxlength => User.password_length.last }, required: true
+      = f.input :password, wrapper: :with_label, autofocus: true, label: t('simple_form.labels.defaults.new_password'), input_html: { 'aria-label': t('simple_form.labels.defaults.new_password'), autocomplete: 'new-password', minlength: User.password_length.first, maxlength: User.password_length.last }, required: true
     .fields-group
-      = f.input :password_confirmation, wrapper: :with_label, label: t('simple_form.labels.defaults.confirm_new_password'), input_html: { 'aria-label' => t('simple_form.labels.defaults.confirm_new_password'), :autocomplete => 'new-password' }, required: true
+      = f.input :password_confirmation, wrapper: :with_label, label: t('simple_form.labels.defaults.confirm_new_password'), input_html: { 'aria-label': t('simple_form.labels.defaults.confirm_new_password'), autocomplete: 'new-password' }, required: true
 
     .actions
       = f.button :button, t('auth.set_new_password'), type: :submit
diff --git a/app/views/auth/passwords/new.html.haml b/app/views/auth/passwords/new.html.haml
index bae5b24ba..10ad108ea 100644
--- a/app/views/auth/passwords/new.html.haml
+++ b/app/views/auth/passwords/new.html.haml
@@ -5,7 +5,7 @@
   = render 'shared/error_messages', object: resource
 
   .fields-group
-    = f.input :email, autofocus: true, wrapper: :with_label, label: t('simple_form.labels.defaults.email'), input_html: { 'aria-label' => t('simple_form.labels.defaults.email') }, hint: false
+    = f.input :email, autofocus: true, wrapper: :with_label, label: t('simple_form.labels.defaults.email'), input_html: { 'aria-label': t('simple_form.labels.defaults.email') }, hint: false
 
   .actions
     = f.button :button, t('auth.reset_password'), type: :submit
diff --git a/app/views/auth/registrations/_sessions.html.haml b/app/views/auth/registrations/_sessions.html.haml
index 5d993f574..c094dfd25 100644
--- a/app/views/auth/registrations/_sessions.html.haml
+++ b/app/views/auth/registrations/_sessions.html.haml
@@ -18,7 +18,7 @@
         %tr
           %td
             %span{ title: session.user_agent }<
-              = fa_icon "#{session_device_icon(session)} fw", 'aria-label' => session_device_icon(session)
+              = fa_icon "#{session_device_icon(session)} fw", 'aria-label': session_device_icon(session)
               = ' '
               = t 'sessions.description', browser: t("sessions.browsers.#{session.browser}", default: "#{session.browser}"), platform: t("sessions.platforms.#{session.platform}", default: "#{session.platform}")
           %td
diff --git a/app/views/auth/registrations/edit.html.haml b/app/views/auth/registrations/edit.html.haml
index c642c2293..60fd1635e 100644
--- a/app/views/auth/registrations/edit.html.haml
+++ b/app/views/auth/registrations/edit.html.haml
@@ -11,15 +11,15 @@
   - if !use_seamless_external_login? || resource.encrypted_password.present?
     .fields-row
       .fields-row__column.fields-group.fields-row__column-6
-        = f.input :email, wrapper: :with_label, input_html: { 'aria-label' => t('simple_form.labels.defaults.email') }, required: true, disabled: current_account.suspended?
+        = f.input :email, wrapper: :with_label, input_html: { 'aria-label': t('simple_form.labels.defaults.email') }, required: true, disabled: current_account.suspended?
       .fields-row__column.fields-group.fields-row__column-6
-        = f.input :current_password, wrapper: :with_label, input_html: { 'aria-label' => t('simple_form.labels.defaults.current_password'), :autocomplete => 'current-password' }, required: true, disabled: current_account.suspended?, hint: false
+        = f.input :current_password, wrapper: :with_label, input_html: { 'aria-label': t('simple_form.labels.defaults.current_password'), autocomplete: 'current-password' }, required: true, disabled: current_account.suspended?, hint: false
 
     .fields-row
       .fields-row__column.fields-group.fields-row__column-6
-        = f.input :password, wrapper: :with_label, label: t('simple_form.labels.defaults.new_password'), input_html: { 'aria-label' => t('simple_form.labels.defaults.new_password'), :autocomplete => 'new-password', :minlength => User.password_length.first, :maxlength => User.password_length.last }, hint: t('simple_form.hints.defaults.password'), disabled: current_account.suspended?
+        = f.input :password, wrapper: :with_label, label: t('simple_form.labels.defaults.new_password'), input_html: { 'aria-label': t('simple_form.labels.defaults.new_password'), autocomplete: 'new-password', minlength: User.password_length.first, maxlength: User.password_length.last }, hint: t('simple_form.hints.defaults.password'), disabled: current_account.suspended?
       .fields-row__column.fields-group.fields-row__column-6
-        = f.input :password_confirmation, wrapper: :with_label, label: t('simple_form.labels.defaults.confirm_new_password'), input_html: { 'aria-label' => t('simple_form.labels.defaults.confirm_new_password'), :autocomplete => 'new-password' }, disabled: current_account.suspended?
+        = f.input :password_confirmation, wrapper: :with_label, label: t('simple_form.labels.defaults.confirm_new_password'), input_html: { 'aria-label': t('simple_form.labels.defaults.confirm_new_password'), autocomplete: 'new-password' }, disabled: current_account.suspended?
 
     .actions
       = f.button :button, t('generic.save_changes'), type: :submit, class: 'button', disabled: current_account.suspended?
diff --git a/app/views/auth/registrations/new.html.haml b/app/views/auth/registrations/new.html.haml
index b1d52dd0c..0d8fd800f 100644
--- a/app/views/auth/registrations/new.html.haml
+++ b/app/views/auth/registrations/new.html.haml
@@ -17,13 +17,13 @@
 
   .fields-group
     = f.simple_fields_for :account do |ff|
-      = ff.input :display_name, wrapper: :with_label, label: false, required: false, input_html: { 'aria-label' => t('simple_form.labels.defaults.display_name'), :autocomplete => 'off', placeholder: t('simple_form.labels.defaults.display_name') }
-      = ff.input :username, wrapper: :with_label, label: false, required: true, input_html: { 'aria-label' => t('simple_form.labels.defaults.username'), :autocomplete => 'off', placeholder: t('simple_form.labels.defaults.username'), pattern: '[a-zA-Z0-9_]+', maxlength: 30 }, append: "@#{site_hostname}", hint: false
-    = f.input :email, placeholder: t('simple_form.labels.defaults.email'), required: true, input_html: { 'aria-label' => t('simple_form.labels.defaults.email'), :autocomplete => 'username' }, hint: false
-    = f.input :password, placeholder: t('simple_form.labels.defaults.password'), required: true, input_html: { 'aria-label' => t('simple_form.labels.defaults.password'), :autocomplete => 'new-password', :minlength => User.password_length.first, :maxlength => User.password_length.last }, hint: false
-    = f.input :password_confirmation, placeholder: t('simple_form.labels.defaults.confirm_password'), required: true, input_html: { 'aria-label' => t('simple_form.labels.defaults.confirm_password'), :autocomplete => 'new-password' }, hint: false
-    = f.input :confirm_password, as: :string, placeholder: t('simple_form.labels.defaults.honeypot', label: t('simple_form.labels.defaults.password')), required: false, input_html: { 'aria-label' => t('simple_form.labels.defaults.honeypot', label: t('simple_form.labels.defaults.password')), :autocomplete => 'off' }, hint: false
-    = f.input :website, as: :url, wrapper: :with_label, label: t('simple_form.labels.defaults.honeypot', label: 'Website'), required: false, input_html: { 'aria-label' => t('simple_form.labels.defaults.honeypot', label: 'Website'), :autocomplete => 'off' }
+      = ff.input :display_name, wrapper: :with_label, label: false, required: false, input_html: { 'aria-label': t('simple_form.labels.defaults.display_name'), autocomplete: 'off', placeholder: t('simple_form.labels.defaults.display_name') }
+      = ff.input :username, wrapper: :with_label, label: false, required: true, input_html: { 'aria-label': t('simple_form.labels.defaults.username'), autocomplete: 'off', placeholder: t('simple_form.labels.defaults.username'), pattern: '[a-zA-Z0-9_]+', maxlength: 30 }, append: "@#{site_hostname}", hint: false
+    = f.input :email, placeholder: t('simple_form.labels.defaults.email'), required: true, input_html: { 'aria-label': t('simple_form.labels.defaults.email'), autocomplete: 'username' }, hint: false
+    = f.input :password, placeholder: t('simple_form.labels.defaults.password'), required: true, input_html: { 'aria-label': t('simple_form.labels.defaults.password'), autocomplete: 'new-password', minlength: User.password_length.first, maxlength: User.password_length.last }, hint: false
+    = f.input :password_confirmation, placeholder: t('simple_form.labels.defaults.confirm_password'), required: true, input_html: { 'aria-label': t('simple_form.labels.defaults.confirm_password'), autocomplete: 'new-password' }, hint: false
+    = f.input :confirm_password, as: :string, placeholder: t('simple_form.labels.defaults.honeypot', label: t('simple_form.labels.defaults.password')), required: false, input_html: { 'aria-label': t('simple_form.labels.defaults.honeypot', label: t('simple_form.labels.defaults.password')), autocomplete: 'off' }, hint: false
+    = f.input :website, as: :url, wrapper: :with_label, label: t('simple_form.labels.defaults.honeypot', label: 'Website'), required: false, input_html: { 'aria-label': t('simple_form.labels.defaults.honeypot', label: 'Website'), autocomplete: 'off' }
 
   - if approved_registrations? && !@invite.present?
     .fields-group
diff --git a/app/views/auth/sessions/new.html.haml b/app/views/auth/sessions/new.html.haml
index 943618e39..304e3ab84 100644
--- a/app/views/auth/sessions/new.html.haml
+++ b/app/views/auth/sessions/new.html.haml
@@ -8,11 +8,11 @@
   = simple_form_for(resource, as: resource_name, url: session_path(resource_name)) do |f|
     .fields-group
       - if use_seamless_external_login?
-        = f.input :email, autofocus: true, wrapper: :with_label, label: t('simple_form.labels.defaults.username_or_email'), input_html: { 'aria-label' => t('simple_form.labels.defaults.username_or_email') }, hint: false
+        = f.input :email, autofocus: true, wrapper: :with_label, label: t('simple_form.labels.defaults.username_or_email'), input_html: { 'aria-label': t('simple_form.labels.defaults.username_or_email') }, hint: false
       - else
-        = f.input :email, autofocus: true, wrapper: :with_label, label: t('simple_form.labels.defaults.email'), input_html: { 'aria-label' => t('simple_form.labels.defaults.email') }, hint: false
+        = f.input :email, autofocus: true, wrapper: :with_label, label: t('simple_form.labels.defaults.email'), input_html: { 'aria-label': t('simple_form.labels.defaults.email') }, hint: false
     .fields-group
-      = f.input :password, wrapper: :with_label, label: t('simple_form.labels.defaults.password'), input_html: { 'aria-label' => t('simple_form.labels.defaults.password'), :autocomplete => 'current-password' }, hint: false
+      = f.input :password, wrapper: :with_label, label: t('simple_form.labels.defaults.password'), input_html: { 'aria-label': t('simple_form.labels.defaults.password'), autocomplete: 'current-password' }, hint: false
 
     .actions
       = f.button :button, t('auth.login'), type: :submit
diff --git a/app/views/auth/sessions/two_factor/_otp_authentication_form.html.haml b/app/views/auth/sessions/two_factor/_otp_authentication_form.html.haml
index 82f957527..094b502b1 100644
--- a/app/views/auth/sessions/two_factor/_otp_authentication_form.html.haml
+++ b/app/views/auth/sessions/two_factor/_otp_authentication_form.html.haml
@@ -5,7 +5,7 @@
   %p.hint.authentication-hint= t('simple_form.hints.sessions.otp')
 
   .fields-group
-    = f.input :otp_attempt, type: :number, wrapper: :with_label, label: t('simple_form.labels.defaults.otp_attempt'), input_html: { 'aria-label' => t('simple_form.labels.defaults.otp_attempt'), :autocomplete => 'one-time-code' }, autofocus: true
+    = f.input :otp_attempt, type: :number, wrapper: :with_label, label: t('simple_form.labels.defaults.otp_attempt'), input_html: { 'aria-label': t('simple_form.labels.defaults.otp_attempt'), autocomplete: 'one-time-code' }, autofocus: true
 
   .actions
     = f.button :button, t('auth.login'), type: :submit
diff --git a/app/views/auth/setup/show.html.haml b/app/views/auth/setup/show.html.haml
index c14fed56f..1a6611ceb 100644
--- a/app/views/auth/setup/show.html.haml
+++ b/app/views/auth/setup/show.html.haml
@@ -9,7 +9,7 @@
       %p.hint= t('auth.setup.email_below_hint_html')
 
     .fields-group
-      = f.input :email, required: true, hint: false, input_html: { 'aria-label' => t('simple_form.labels.defaults.email'), :autocomplete => 'off' }
+      = f.input :email, required: true, hint: false, input_html: { 'aria-label': t('simple_form.labels.defaults.email'), autocomplete: 'off' }
 
     .actions
       = f.submit t('admin.accounts.change_email.label'), class: 'button'
diff --git a/app/views/settings/deletes/show.html.haml b/app/views/settings/deletes/show.html.haml
index c08ee85b0..2e9785c89 100644
--- a/app/views/settings/deletes/show.html.haml
+++ b/app/views/settings/deletes/show.html.haml
@@ -21,9 +21,9 @@
   %hr.spacer/
 
   - if current_user.encrypted_password.present?
-    = f.input :password, wrapper: :with_block_label, input_html: { :autocomplete => 'current-password' }, hint: t('deletes.confirm_password')
+    = f.input :password, wrapper: :with_block_label, input_html: { autocomplete: 'current-password' }, hint: t('deletes.confirm_password')
   - else
-    = f.input :username, wrapper: :with_block_label, input_html: { :autocomplete => 'off' }, hint: t('deletes.confirm_username')
+    = f.input :username, wrapper: :with_block_label, input_html: { autocomplete: 'off' }, hint: t('deletes.confirm_username')
 
   .actions
     = f.button :button, t('deletes.proceed'), type: :submit, class: 'negative'
diff --git a/app/views/settings/migration/redirects/new.html.haml b/app/views/settings/migration/redirects/new.html.haml
index d7868e900..370087879 100644
--- a/app/views/settings/migration/redirects/new.html.haml
+++ b/app/views/settings/migration/redirects/new.html.haml
@@ -19,9 +19,9 @@
 
     .fields-row__column.fields-group.fields-row__column-6
       - if current_user.encrypted_password.present?
-        = f.input :current_password, wrapper: :with_block_label, input_html: { :autocomplete => 'current-password' }, required: true
+        = f.input :current_password, wrapper: :with_block_label, input_html: { autocomplete: 'current-password' }, required: true
       - else
-        = f.input :current_username, wrapper: :with_block_label, input_html: { :autocomplete => 'off' }, required: true
+        = f.input :current_username, wrapper: :with_block_label, input_html: { autocomplete: 'off' }, required: true
 
   .actions
     = f.button :button, t('migrations.set_redirect'), type: :submit, class: 'button button--destructive'
diff --git a/app/views/settings/migrations/show.html.haml b/app/views/settings/migrations/show.html.haml
index 1ecf7302a..31f7d5e58 100644
--- a/app/views/settings/migrations/show.html.haml
+++ b/app/views/settings/migrations/show.html.haml
@@ -48,9 +48,9 @@
 
     .fields-row__column.fields-group.fields-row__column-6
       - if current_user.encrypted_password.present?
-        = f.input :current_password, wrapper: :with_block_label, input_html: { :autocomplete => 'current-password' }, required: true, disabled: on_cooldown?
+        = f.input :current_password, wrapper: :with_block_label, input_html: { autocomplete: 'current-password' }, required: true, disabled: on_cooldown?
       - else
-        = f.input :current_username, wrapper: :with_block_label, input_html: { :autocomplete => 'off' }, required: true, disabled: on_cooldown?
+        = f.input :current_username, wrapper: :with_block_label, input_html: { autocomplete: 'off' }, required: true, disabled: on_cooldown?
 
   .actions
     = f.button :button, t('migrations.proceed_with_move'), type: :submit, class: 'button button--destructive', disabled: on_cooldown?
diff --git a/app/views/settings/two_factor_authentication/confirmations/new.html.haml b/app/views/settings/two_factor_authentication/confirmations/new.html.haml
index 671237db5..43830ac27 100644
--- a/app/views/settings/two_factor_authentication/confirmations/new.html.haml
+++ b/app/views/settings/two_factor_authentication/confirmations/new.html.haml
@@ -12,7 +12,7 @@
       %samp.qr-alternative__code= @new_otp_secret.scan(/.{4}/).join(' ')
 
   .fields-group
-    = f.input :otp_attempt, wrapper: :with_label, hint: t('otp_authentication.code_hint'), label: t('simple_form.labels.defaults.otp_attempt'), input_html: { :autocomplete => 'off' }, required: true
+    = f.input :otp_attempt, wrapper: :with_label, hint: t('otp_authentication.code_hint'), label: t('simple_form.labels.defaults.otp_attempt'), input_html: { autocomplete: 'off' }, required: true
 
   .actions
     = f.button :button, t('otp_authentication.enable'), type: :submit
diff --git a/app/views/settings/two_factor_authentication/webauthn_credentials/new.html.haml b/app/views/settings/two_factor_authentication/webauthn_credentials/new.html.haml
index c5a323ee5..5ec024757 100644
--- a/app/views/settings/two_factor_authentication/webauthn_credentials/new.html.haml
+++ b/app/views/settings/two_factor_authentication/webauthn_credentials/new.html.haml
@@ -8,7 +8,7 @@
   %p.hint= t('webauthn_credentials.description_html')
 
   .fields_group
-    = f.input :nickname, wrapper: :with_block_label, hint: t('webauthn_credentials.nickname_hint'), input_html: { :autocomplete => 'off' }, required: true
+    = f.input :nickname, wrapper: :with_block_label, hint: t('webauthn_credentials.nickname_hint'), input_html: { autocomplete: 'off' }, required: true
 
   .actions
     = f.button :button, t('webauthn_credentials.add'), class: 'js-webauthn', type: :submit
diff --git a/app/views/statuses/_detailed_status.html.haml b/app/views/statuses/_detailed_status.html.haml
index 619406d89..bf498e33d 100644
--- a/app/views/statuses/_detailed_status.html.haml
+++ b/app/views/statuses/_detailed_status.html.haml
@@ -15,12 +15,12 @@
 
   = account_action_button(status.account)
 
-  .status__content.emojify{ :data => ({ spoiler: current_account&.user&.setting_expand_spoilers ? 'expanded' : 'folded' } if status.spoiler_text?) }<
+  .status__content.emojify{ data: ({ spoiler: current_account&.user&.setting_expand_spoilers ? 'expanded' : 'folded' } if status.spoiler_text?) }<
     - if status.spoiler_text?
       %p<
         %span.p-summary> #{prerender_custom_emojis(h(status.spoiler_text), status.emojis)}&nbsp;
         %button.status__content__spoiler-link= t('statuses.show_more')
-    .e-content{ :lang => status.language }
+    .e-content{ lang: status.language }
       = prerender_custom_emojis(status_content_format(status), status.emojis)
 
       - if status.preloadable_poll
diff --git a/app/views/statuses/_simple_status.html.haml b/app/views/statuses/_simple_status.html.haml
index 1e37b6cf3..ecbabf34c 100644
--- a/app/views/statuses/_simple_status.html.haml
+++ b/app/views/statuses/_simple_status.html.haml
@@ -27,12 +27,12 @@
           %span.display-name__account
             = acct(status.account)
             = fa_icon('lock') if status.account.locked?
-  .status__content.emojify{ :data => ({ spoiler: current_account&.user&.setting_expand_spoilers ? 'expanded' : 'folded' } if status.spoiler_text?) }<
+  .status__content.emojify{ data: ({ spoiler: current_account&.user&.setting_expand_spoilers ? 'expanded' : 'folded' } if status.spoiler_text?) }<
     - if status.spoiler_text?
       %p<
         %span.p-summary> #{prerender_custom_emojis(h(status.spoiler_text), status.emojis)}&nbsp;
         %button.status__content__spoiler-link= t('statuses.show_more')
-    .e-content{ :lang => status.language }<
+    .e-content{ lang: status.language }<
       = prerender_custom_emojis(status_content_format(status), status.emojis)
 
       - if status.preloadable_poll
diff --git a/app/views/statuses/show.html.haml b/app/views/statuses/show.html.haml
index 106c41725..cb6b4c619 100644
--- a/app/views/statuses/show.html.haml
+++ b/app/views/statuses/show.html.haml
@@ -13,6 +13,7 @@
   = opengraph 'og:title', "#{display_name(@account)} (#{acct(@account)})"
   = opengraph 'og:url', short_account_status_url(@account, @status)
   = opengraph 'og:published_time', @status.created_at.iso8601
+  = opengraph 'profile:username', acct(@account)[1..-1]
 
   = render 'og_description', activity: @status
   = render 'og_image', activity: @status, account: @account
diff --git a/config/application.rb b/config/application.rb
index 7ee9d16b6..76db3b9b8 100644
--- a/config/application.rb
+++ b/config/application.rb
@@ -22,7 +22,6 @@ require 'mail'
 Bundler.require(*Rails.groups)
 
 require_relative '../lib/exceptions'
-require_relative '../lib/enumerable'
 require_relative '../lib/sanitize_ext/sanitize_config'
 require_relative '../lib/redis/namespace_extensions'
 require_relative '../lib/paperclip/url_generator_extensions'
diff --git a/config/environments/production.rb b/config/environments/production.rb
index fedfe5efb..a7540c12e 100644
--- a/config/environments/production.rb
+++ b/config/environments/production.rb
@@ -112,18 +112,18 @@ Rails.application.configure do
   end
 
   config.action_mailer.smtp_settings = {
-    :port                 => ENV['SMTP_PORT'],
-    :address              => ENV['SMTP_SERVER'],
-    :user_name            => ENV['SMTP_LOGIN'].presence,
-    :password             => ENV['SMTP_PASSWORD'].presence,
-    :domain               => ENV['SMTP_DOMAIN'] || ENV['LOCAL_DOMAIN'],
-    :authentication       => ENV['SMTP_AUTH_METHOD'] == 'none' ? nil : ENV['SMTP_AUTH_METHOD'] || :plain,
-    :ca_file              => ENV['SMTP_CA_FILE'].presence || '/etc/ssl/certs/ca-certificates.crt',
-    :openssl_verify_mode  => ENV['SMTP_OPENSSL_VERIFY_MODE'],
-    :enable_starttls      => enable_starttls,
-    :enable_starttls_auto => enable_starttls_auto,
-    :tls                  => ENV['SMTP_TLS'].presence && ENV['SMTP_TLS'] == 'true',
-    :ssl                  => ENV['SMTP_SSL'].presence && ENV['SMTP_SSL'] == 'true',
+    port: ENV['SMTP_PORT'],
+    address: ENV['SMTP_SERVER'],
+    user_name: ENV['SMTP_LOGIN'].presence,
+    password: ENV['SMTP_PASSWORD'].presence,
+    domain: ENV['SMTP_DOMAIN'] || ENV['LOCAL_DOMAIN'],
+    authentication: ENV['SMTP_AUTH_METHOD'] == 'none' ? nil : ENV['SMTP_AUTH_METHOD'] || :plain,
+    ca_file: ENV['SMTP_CA_FILE'].presence || '/etc/ssl/certs/ca-certificates.crt',
+    openssl_verify_mode: ENV['SMTP_OPENSSL_VERIFY_MODE'],
+    enable_starttls: enable_starttls,
+    enable_starttls_auto: enable_starttls_auto,
+    tls: ENV['SMTP_TLS'].presence && ENV['SMTP_TLS'] == 'true',
+    ssl: ENV['SMTP_SSL'].presence && ENV['SMTP_SSL'] == 'true',
   }
 
   config.action_mailer.delivery_method = ENV.fetch('SMTP_DELIVERY_METHOD', 'smtp').to_sym
diff --git a/config/initializers/cache_logging.rb b/config/initializers/cache_logging.rb
new file mode 100644
index 000000000..08aa80742
--- /dev/null
+++ b/config/initializers/cache_logging.rb
@@ -0,0 +1,3 @@
+# Log cache errors with Rail's logger
+# This used to be the default in old Rails versions: https://github.com/rails/rails/commit/7fcf8590e788cef8b64cc266f75931c418902ca9#diff-f0748f0be8a653eea13369ebb1cadabcad71ede7cfaf20282447e64329817befL86
+Rails.cache.logger = Rails.logger
diff --git a/config/initializers/content_security_policy.rb b/config/initializers/content_security_policy.rb
index 863db9d15..c6fff9889 100644
--- a/config/initializers/content_security_policy.rb
+++ b/config/initializers/content_security_policy.rb
@@ -31,7 +31,7 @@ if Rails.env.production?
     p.base_uri        :none
     p.default_src     :none
     p.frame_ancestors :none
-    p.script_src      :self, assets_host
+    p.script_src      :self, assets_host, "'wasm-unsafe-eval'"
     p.font_src        :self, assets_host
     p.img_src         :self, :data, :blob, *data_hosts, "pool.jortage.com", "blob.jortage.com", "s3-us-east-2.amazonaws.com"
     p.style_src       :self, assets_host
@@ -41,6 +41,7 @@ if Rails.env.production?
     p.worker_src      :self, :blob, assets_host
     p.connect_src     :self, :blob, :data, Rails.configuration.x.streaming_api_base_url, *data_hosts
     p.manifest_src    :self, assets_host
+    p.form_action     :self
   end
 end
 
diff --git a/config/initializers/doorkeeper.rb b/config/initializers/doorkeeper.rb
index 84b649f5c..43aac5769 100644
--- a/config/initializers/doorkeeper.rb
+++ b/config/initializers/doorkeeper.rb
@@ -98,9 +98,19 @@ Doorkeeper.configure do
                   :'admin:read',
                   :'admin:read:accounts',
                   :'admin:read:reports',
+                  :'admin:read:domain_allows',
+                  :'admin:read:domain_blocks',
+                  :'admin:read:ip_blocks',
+                  :'admin:read:email_domain_blocks',
+                  :'admin:read:canonical_email_blocks',
                   :'admin:write',
                   :'admin:write:accounts',
                   :'admin:write:reports',
+                  :'admin:write:domain_allows',
+                  :'admin:write:domain_blocks',
+                  :'admin:write:ip_blocks',
+                  :'admin:write:email_domain_blocks',
+                  :'admin:write:canonical_email_blocks',
                   :crypto
 
   # Change the way client credentials are retrieved from the request object.
diff --git a/config/locales-glitch/en.yml b/config/locales-glitch/en.yml
index c559ee0ec..23c566153 100644
--- a/config/locales-glitch/en.yml
+++ b/config/locales-glitch/en.yml
@@ -4,26 +4,6 @@ en:
     custom_emojis:
       batch_copy_error: 'An error occurred when copying some of the selected emoji: %{message}'
       batch_error: 'An error occurred: %{message}'
-    domain_allows:
-      export: Export
-      import: Import
-    domain_blocks:
-      export: Export
-      import: Import
-    export_domain_allows:
-      new:
-        title: Import domain allows
-      no_file: No file selected
-    export_domain_blocks:
-      import:
-        description_html: You are about to import a list of domain blocks. Please review this list very carefully, especially if you have not authored this list yourself.
-        existing_relationships_warning: Existing follow relationships
-        private_comment_description_html: 'To help you track where imported blocks come from, imported blocks will be created with the following private comment: <q>%{comment}</q>'
-        private_comment_template: Imported from %{source} on %{date}
-        title: Import domain blocks
-      new:
-        title: Import domain blocks
-      no_file: No file selected
     settings:
       captcha_enabled:
         desc_html: This relies on external scripts from hCaptcha, which may be a security and privacy concern. In addition, <strong>this can make the registration process significantly less accessible to some (especially disabled) people</strong>. For these reasons, please consider alternative measures such as approval-based or invite-based registration.<br>Users that have been invited through a limited-use invite will not need to solve a CAPTCHA
diff --git a/config/locales-glitch/ko.yml b/config/locales-glitch/ko.yml
index 0e6890db7..bc9c4e86b 100644
--- a/config/locales-glitch/ko.yml
+++ b/config/locales-glitch/ko.yml
@@ -4,26 +4,6 @@ ko:
     custom_emojis:
       batch_copy_error: '선택된 에모지를 복사하던 중 오류가 발생했습니다: %{message}'
       batch_error: '에러가 발생했습니다: %{message}'
-    domain_allows:
-      export: 내보내기
-      import: 불러오기
-    domain_blocks:
-      export: 내보내기
-      import: 불러오기
-    export_domain_allows:
-      new:
-        title: 도메인 허용 불러오기
-      no_file: 파일이 선택되지 않았습니다
-    export_domain_blocks:
-      import:
-        description_html: 도메인 차단 목록을 불러오려고 합니다. 이 목록을 조심스럽게 검토하세요, 특히 자신이 직접 작성한 목록이 아니라면 더 조심하세요.
-        existing_relationships_warning: 팔로우 관계가 존재합니다
-        private_comment_description_html: '어디서 불러온 것인지 추적을 원활하게 하기 위해서, 불러온 차단들은 다음과 같은 비공개 주석과 함께 생성될 것입니다: <q>%{comment}</q>'
-        private_comment_template: '%{date}에 %{source}에서 불러옴'
-        title: 도메인 차단 불러오기
-      new:
-        title: 도메인 차단 불러오기
-      no_file: 파일이 선택되지 않았습니다
     settings:
       captcha_enabled:
         desc_html: 이것은 hCaptcha의 외부 스크립트에 의존합니다, 이것은 개인정보 보호에 위협을 가할 수도 있습니다. 추가적으로, <strong>이것은 몇몇 사람들(특히나 장애인들)에게 가입 절차의 접근성을 심각하게 떨어트릴 수 있습니다</strong>. 이러한 이유로, 대체제로 승인 전용이나 초대제를 통한 가입을 고려해보세요.<br>한정된 사용만 가능한 초대장을 통한 가입자들은 CAPTCHA를 풀지 않아도 됩니다
diff --git a/config/locales/activerecord.af.yml b/config/locales/activerecord.af.yml
index 18bf0388d..c0810999d 100644
--- a/config/locales/activerecord.af.yml
+++ b/config/locales/activerecord.af.yml
@@ -7,7 +7,7 @@ af:
         options: Keuses
       user:
         agreement: Diensooreenkoms
-        email: E-pos adres
+        email: E-posadres
         locale: Plaaslik
         password: Wagwoord
       user/account:
@@ -19,12 +19,12 @@ af:
         account:
           attributes:
             username:
-              invalid: moet slegs letters, nommers en onderstrepe bevat
+              invalid: mag slegs letters, syfers en onderstrepe bevat
               reserved: is gereserveer
         admin/webhook:
           attributes:
             url:
-              invalid: is nie 'n geldige URL nie
+              invalid: is nie ’n geldige URL nie
         doorkeeper/application:
           attributes:
             website:
@@ -32,7 +32,7 @@ af:
         import:
           attributes:
             data:
-              malformed: is misvormd
+              malformed: is misvorm
         status:
           attributes:
             reblog:
@@ -40,16 +40,16 @@ af:
         user:
           attributes:
             email:
-              blocked: maak gebruik van 'n e-pos verskaffer wat nie toegelaat word nie
+              blocked: gebruik ’n ontoelaatbare e-posverskaffer
               unreachable: blyk nie te bestaan nie
             role_id:
-              elevated: kan nie hoër as huidige rol wees nie
+              elevated: kan nie hoër as jou huidige rol wees nie
         user_role:
           attributes:
             permissions_as_keys:
-              dangerous: bevat permissies wat nie veilig vir die basis rol is nie
-              elevated: kan nie permissies bevat wat vanaf die huidige rol ontbreek nie
+              dangerous: bevat toestemmings wat vir die basisrol onveilig is
+              elevated: kan nie toestemmings bevat waaroor jou huidige rol nie beskik nie
               own_role: kan nie verander word met jou huidige rol nie
             position:
-              elevated: kan nie hoër as die huidige rol wees nie
+              elevated: kan nie hoër as jou huidige rol wees nie
               own_role: kan nie verander word met jou huidige rol nie
diff --git a/config/locales/activerecord.an.yml b/config/locales/activerecord.an.yml
new file mode 100644
index 000000000..79cfb2a4e
--- /dev/null
+++ b/config/locales/activerecord.an.yml
@@ -0,0 +1,55 @@
+---
+an:
+  activerecord:
+    attributes:
+      poll:
+        expires_at: Vencimiento
+        options: Opcions
+      user:
+        agreement: Acuerdo de Servicio
+        email: Adreza de correu electronico
+        locale: Idioma
+        password: Clau
+      user/account:
+        username: Nombre d'usuario
+      user/invite_request:
+        text: Razón
+    errors:
+      models:
+        account:
+          attributes:
+            username:
+              invalid: nomás puede contener letras, numeros y guions baixos
+              reserved: ye reservau
+        admin/webhook:
+          attributes:
+            url:
+              invalid: no ye una URL valida
+        doorkeeper/application:
+          attributes:
+            website:
+              invalid: no ye una URL valida
+        import:
+          attributes:
+            data:
+              malformed: tiene un formato incorrecto
+        status:
+          attributes:
+            reblog:
+              taken: d'o estau ya existe
+        user:
+          attributes:
+            email:
+              blocked: utiliza un furnidor de correu no autorizau
+              unreachable: no pareixe existir
+            role_id:
+              elevated: no puede estar mayor que lo tuyo rol actual
+        user_role:
+          attributes:
+            permissions_as_keys:
+              dangerous: incluyir permisos que no son seguros pa lo rol base
+              elevated: no se pueden incluyir permisos que lo tuyo rol actual no poseiga
+              own_role: no se puede cambiar con o tuyo rol actual
+            position:
+              elevated: no puede estar mayor que lo tuyo rol actual
+              own_role: no se puede cambiar con o tuyo rol actual
diff --git a/config/locales/activerecord.ast.yml b/config/locales/activerecord.ast.yml
index 280f2b6c5..75d2c8bae 100644
--- a/config/locales/activerecord.ast.yml
+++ b/config/locales/activerecord.ast.yml
@@ -2,7 +2,10 @@
 ast:
   activerecord:
     attributes:
+      poll:
+        options: Opciones
       user:
+        agreement: Acuerdu del serviciu
         email: Direición de corréu electrónicu
         locale: Locale
         password: Contraseña
@@ -25,11 +28,19 @@ ast:
           attributes:
             website:
               invalid: nun ye una URL válida
-        status:
-          attributes:
-            reblog:
-              taken: d'artículos xá esisten
         user:
           attributes:
             email:
+              blocked: usa un fornidor de corréu electrónicu que nun ta permitíu
               unreachable: nun paez qu'esista
+            role_id:
+              elevated: nun pue ser mayor que'l to rol actual
+        user_role:
+          attributes:
+            permissions_as_keys:
+              dangerous: incluyir los permisos que nun son seguros pal rol base
+              elevated: nun se puen incluyir los permisos que'l to rol nun poseye
+              own_role: nun se pue camudar col to rol actual
+            position:
+              elevated: nun pue ser mayor que'l to rol actual
+              own_role: nun se pue camudar col to rol actual
diff --git a/config/locales/activerecord.be.yml b/config/locales/activerecord.be.yml
new file mode 100644
index 000000000..6245ee090
--- /dev/null
+++ b/config/locales/activerecord.be.yml
@@ -0,0 +1,55 @@
+---
+be:
+  activerecord:
+    attributes:
+      poll:
+        expires_at: Дэдлайн
+        options: Выбар
+      user:
+        agreement: Пагадненне аб абслугоўванні
+        email: Адрас электроннай пошты
+        locale: Лакаль
+        password: Пароль
+      user/account:
+        username: Імя карыстальніка
+      user/invite_request:
+        text: Прычына
+    errors:
+      models:
+        account:
+          attributes:
+            username:
+              invalid: павінна змяшчаць толькі літары, лічбы і ніжнія падкрэсліванні
+              reserved: зарэзервавана
+        admin/webhook:
+          attributes:
+            url:
+              invalid: нядзейсны URL
+        doorkeeper/application:
+          attributes:
+            website:
+              invalid: нядзейсны URL
+        import:
+          attributes:
+            data:
+              malformed: дэфармаваны
+        status:
+          attributes:
+            reblog:
+              taken: гэтага допісу ўжо існуе
+        user:
+          attributes:
+            email:
+              blocked: выкарыстоўвае забароненую крыніцу электроннай пошты
+              unreachable: не існуе
+            role_id:
+              elevated: не можа быць вышэй за вашу бягучую ролю
+        user_role:
+          attributes:
+            permissions_as_keys:
+              dangerous: уключаць дазволы, якія не з'яўляюцца бяспечнымі для базавай ролі
+              elevated: не можа ўключыць дазволы, якімі не валодае ваша бягучая роля
+              own_role: не можа быць зменены з вашай бягучай роляй
+            position:
+              elevated: не можа быць вышэй за вашу бягучую ролю
+              own_role: не можа быць зменены з вашай бягучай роляй
diff --git a/config/locales/activerecord.bs.yml b/config/locales/activerecord.bs.yml
new file mode 100644
index 000000000..e9e174462
--- /dev/null
+++ b/config/locales/activerecord.bs.yml
@@ -0,0 +1 @@
+bs:
diff --git a/config/locales/activerecord.ca.yml b/config/locales/activerecord.ca.yml
index 5f109c2c1..79db38a29 100644
--- a/config/locales/activerecord.ca.yml
+++ b/config/locales/activerecord.ca.yml
@@ -6,8 +6,8 @@ ca:
         expires_at: Data límit
         options: Opcions
       user:
-        agreement: Acord sobre serveis
-        email: Adreça de correu electrònic
+        agreement: Acord de servei
+        email: Adreça de correu-e
         locale: Idioma
         password: Contrasenya
       user/account:
@@ -40,10 +40,10 @@ ca:
         user:
           attributes:
             email:
-              blocked: utilitza un proveïdor de correu electrònic no autoritzat
+              blocked: utilitza un proveïdor de correu-e no autoritzat
               unreachable: sembla que no existeix
             role_id:
-              elevated: no pot ser superior que el teu rol actual
+              elevated: no pot ser superior al teu rol actual
         user_role:
           attributes:
             permissions_as_keys:
@@ -52,4 +52,4 @@ ca:
               own_role: no es pot canviar amb el teu rol actual
             position:
               elevated: no pot ser superior al teu rol actual
-              own_role: no pot ser canviat amb el teu rol actual
+              own_role: no es pot canviar amb el teu rol actual
diff --git a/config/locales/activerecord.cs.yml b/config/locales/activerecord.cs.yml
index a411d270d..def69db1f 100644
--- a/config/locales/activerecord.cs.yml
+++ b/config/locales/activerecord.cs.yml
@@ -11,9 +11,9 @@ cs:
         locale: Lokalizace
         password: Heslo
       user/account:
-        username: Uživatel
+        username: Uživatelské jméno
       user/invite_request:
-        text: Zdůvodnění
+        text: Důvod
     errors:
       models:
         account:
diff --git a/config/locales/activerecord.cy.yml b/config/locales/activerecord.cy.yml
index 61cb24161..cadc4eee4 100644
--- a/config/locales/activerecord.cy.yml
+++ b/config/locales/activerecord.cy.yml
@@ -19,8 +19,8 @@ cy:
         account:
           attributes:
             username:
-              invalid: gall gynnwys dim ond llythrennau, rhifau a tanlinellau
-              reserved: yn neilltuedig
+              invalid: rhaid iddo gynnwys dim ond llythrennau, rhifau a thanlinellau
+              reserved: wedi ei neilltuo
         admin/webhook:
           attributes:
             url:
@@ -40,7 +40,7 @@ cy:
         user:
           attributes:
             email:
-              blocked: yn defnyddio darparwr e-bost nd yw'n cael ei ganiatáu
+              blocked: yn defnyddio darparwr e-bost nad yw'n cael ei ganiatáu
               unreachable: nid yw i weld yn bodoli
             role_id:
               elevated: nid yw'n gallu bod yn uwch na'ch rôl presennol
diff --git a/config/locales/activerecord.eo.yml b/config/locales/activerecord.eo.yml
index 02774dd39..9ae8bab42 100644
--- a/config/locales/activerecord.eo.yml
+++ b/config/locales/activerecord.eo.yml
@@ -4,7 +4,7 @@ eo:
     attributes:
       poll:
         expires_at: Limdato
-        options: Elektoj
+        options: Elektebloj
       user:
         agreement: Servo-interkonsento
         email: Retpoŝtadreso
@@ -19,7 +19,7 @@ eo:
         account:
           attributes:
             username:
-              invalid: nur leteroj, ciferoj kaj substrekoj
+              invalid: nur literoj, ciferoj kaj substrekoj
               reserved: rezervita
         admin/webhook:
           attributes:
@@ -41,7 +41,7 @@ eo:
           attributes:
             email:
               blocked: uzas nepermesitan retpoŝtan provizanton
-              unreachable: ne ŝajnas ekzisti
+              unreachable: ŝajne ne ekzistas
             role_id:
               elevated: ne povas esti pli altranga ol via aktuala rolo
         user_role:
diff --git a/config/locales/activerecord.et.yml b/config/locales/activerecord.et.yml
index 5679a91fe..1496dedcb 100644
--- a/config/locales/activerecord.et.yml
+++ b/config/locales/activerecord.et.yml
@@ -5,13 +5,51 @@ et:
       poll:
         expires_at: Tähtaeg
         options: Valikud
+      user:
+        agreement: Teenusetingimused
+        email: E-posti aadress
+        locale: Keel
+        password: Salasõna
+      user/account:
+        username: Kasutajanimi
+      user/invite_request:
+        text: Põhjus
     errors:
       models:
         account:
           attributes:
             username:
               invalid: ainult tähtmärgid, numbrid ja alakriipsud
+              reserved: on reserveeritud
+        admin/webhook:
+          attributes:
+            url:
+              invalid: pole sobiv URL
+        doorkeeper/application:
+          attributes:
+            website:
+              invalid: pole sobiv URL
+        import:
+          attributes:
+            data:
+              malformed: on vigasel kujul
         status:
           attributes:
             reblog:
-              taken: staatusel juba eksisteerib
+              taken: postitusel juba eksisteerib
+        user:
+          attributes:
+            email:
+              blocked: kasutab mitte lubatud e-posti teenusepakkujat
+              unreachable: ei paista eksisteerivat
+            role_id:
+              elevated: ei saa olla kõrgem kui teie enda roll
+        user_role:
+          attributes:
+            permissions_as_keys:
+              dangerous: hõlmata õiguseid, mis ei ole turvalised baasrollile
+              elevated: ei saa hõlmata õiguseid, mida teie praegune roll ei sisalda
+              own_role: ei saa muuta teie praeguse rolliga
+            position:
+              elevated: ei saa olla kõrgem, kui teie praegune roll
+              own_role: ei saa muuta teie praeguse rolliga
diff --git a/config/locales/activerecord.fi.yml b/config/locales/activerecord.fi.yml
index 1ead707f5..c1dbaff0f 100644
--- a/config/locales/activerecord.fi.yml
+++ b/config/locales/activerecord.fi.yml
@@ -8,7 +8,7 @@ fi:
       user:
         agreement: Palvelusopimus
         email: Sähköpostiosoite
-        locale: Paikallinen
+        locale: Alue
         password: Salasana
       user/account:
         username: Käyttäjätunnus
diff --git a/config/locales/activerecord.fo.yml b/config/locales/activerecord.fo.yml
new file mode 100644
index 000000000..4e1a39596
--- /dev/null
+++ b/config/locales/activerecord.fo.yml
@@ -0,0 +1,55 @@
+---
+fo:
+  activerecord:
+    attributes:
+      poll:
+        expires_at: Freist
+        options: Val
+      user:
+        agreement: Tænastuavtala
+        email: Teldupostur
+        locale: Staðbundið
+        password: Loyniorð
+      user/account:
+        username: Brúkaranavn
+      user/invite_request:
+        text: Orsøk
+    errors:
+      models:
+        account:
+          attributes:
+            username:
+              invalid: kann bara innihalda bókstavir, tøl og botnstriku
+              reserved: er umbiðið
+        admin/webhook:
+          attributes:
+            url:
+              invalid: er ikki eitt rætt leinki
+        doorkeeper/application:
+          attributes:
+            website:
+              invalid: er ikki eitt rætt leinki
+        import:
+          attributes:
+            data:
+              malformed: er avskeplað
+        status:
+          attributes:
+            reblog:
+              taken: frá posti sum longu finst
+        user:
+          attributes:
+            email:
+              blocked: brúkar ein ikki loyvdan teldopostveitara
+              unreachable: tykist ikki at vera til
+            role_id:
+              elevated: kann ikki vera hægri enn verandi støða
+        user_role:
+          attributes:
+            permissions_as_keys:
+              dangerous: inniheldur loyvi, ið ikki eru trygg, á grundstøði
+              elevated: rúmar ikki loyvum ið tín verandi støða loyvir
+              own_role: kann ikki verða broytt við verandi rættindum
+            position:
+              elevated: loyvi kunnu ikki setast hægri, við verandi rættindum
+              own_role: kann ikki verða broytt við tínum verandi rættindum
diff --git a/config/locales/activerecord.fr-QC.yml b/config/locales/activerecord.fr-QC.yml
new file mode 100644
index 000000000..0ffa90ef2
--- /dev/null
+++ b/config/locales/activerecord.fr-QC.yml
@@ -0,0 +1,55 @@
+---
+fr-QC:
+  activerecord:
+    attributes:
+      poll:
+        expires_at: Date butoir
+        options: Choix
+      user:
+        agreement: Contrat de service
+        email: Adresse de courriel
+        locale: Langue
+        password: Mot de passe
+      user/account:
+        username: Nom d’utilisateur·ice
+      user/invite_request:
+        text: Raison
+    errors:
+      models:
+        account:
+          attributes:
+            username:
+              invalid: seulement des lettres, des nombres et des tirets bas
+              reserved: est réservé
+        admin/webhook:
+          attributes:
+            url:
+              invalid: n’est pas une URL valide
+        doorkeeper/application:
+          attributes:
+            website:
+              invalid: n’est pas une URL valide
+        import:
+          attributes:
+            data:
+              malformed: est mal formé
+        status:
+          attributes:
+            reblog:
+              taken: du message existe déjà
+        user:
+          attributes:
+            email:
+              blocked: utilise un fournisseur de courriel interdit
+              unreachable: ne semble pas exister
+            role_id:
+              elevated: ne peut pas être supérieur à votre rôle actuel
+        user_role:
+          attributes:
+            permissions_as_keys:
+              dangerous: inclure des autorisations non sécurisées pour le rôle de base
+              elevated: ne peut pas inclure des autorisations que votre rôle actuel ne possède pas
+              own_role: ne peut pas être modifié avec votre rôle actuel
+            position:
+              elevated: ne peut pas être supérieur à votre rôle actuel
+              own_role: ne peut pas être modifié avec votre rôle actuel
diff --git a/config/locales/activerecord.it.yml b/config/locales/activerecord.it.yml
index ef2319520..0acbd8747 100644
--- a/config/locales/activerecord.it.yml
+++ b/config/locales/activerecord.it.yml
@@ -8,7 +8,7 @@ it:
       user:
         agreement: Condizioni di servizio
         email: Indirizzo email
-        locale: Localizzazione
+        locale: Locale
         password: Password
       user/account:
         username: Nome utente
@@ -19,7 +19,7 @@ it:
         account:
           attributes:
             username:
-              invalid: solo lettere, numeri e trattini bassi
+              invalid: deve contenere solo lettere, numeri e trattini bassi
               reserved: è riservato
         admin/webhook:
           attributes:
@@ -43,13 +43,13 @@ it:
               blocked: utilizza un provider di posta elettronica non autorizzato
               unreachable: non sembra esistere
             role_id:
-              elevated: non può essere superiore al tuo ruolo attuale
+              elevated: non può essere superiore al tuo ruolo corrente
         user_role:
           attributes:
             permissions_as_keys:
-              dangerous: include i permessi non sicuri per il ruolo di base
-              elevated: non è possibile includere i permessi che il tuo ruolo attuale non possiede
+              dangerous: include autorizzazioni che non sono sicure per il ruolo di base
+              elevated: non può includere le autorizzazioni che il tuo ruolo corrente non possiede
               own_role: non può essere modificato con il tuo ruolo attuale
             position:
-              elevated: non può essere superiore al tuo ruolo attuale
-              own_role: non può essere modificato con il tuo ruolo attuale
+              elevated: non può essere superiore al tuo ruolo corrente
+              own_role: non può essere modificato con il tuo ruolo corrente
diff --git a/config/locales/activerecord.ko.yml b/config/locales/activerecord.ko.yml
index 8c6ebf5e6..5d6b6693c 100644
--- a/config/locales/activerecord.ko.yml
+++ b/config/locales/activerecord.ko.yml
@@ -4,7 +4,7 @@ ko:
     attributes:
       poll:
         expires_at: 마감 기한
-        options: 선택
+        options: 선택지
       user:
         agreement: 이용약관
         email: 이메일 주소
diff --git a/config/locales/activerecord.ms.yml b/config/locales/activerecord.ms.yml
index 2925688a0..c681e324b 100644
--- a/config/locales/activerecord.ms.yml
+++ b/config/locales/activerecord.ms.yml
@@ -1 +1,36 @@
+---
 ms:
+  activerecord:
+    attributes:
+      poll:
+        expires_at: Tarikh akhir
+        options: Pilihan
+      user:
+        agreement: Perjanjian perkhidmatan
+        email: Alamat e-mel
+        locale: Tempatan
+        password: Kata laluan
+      user/account:
+        username: Nama pengguna
+      user/invite_request:
+        text: Sebab
+    errors:
+      models:
+        account:
+          attributes:
+            username:
+              invalid: hanya mengandungi aksara, nombor dan garis bawah sahaja
+              reserved: dikhaskan
+        admin/webhook:
+          attributes:
+            url:
+              invalid: bukan merupakan URL yang sah
+        doorkeeper/application:
+          attributes:
+            website:
+              invalid: bukan merupakan URL yang sah
+        user:
+          attributes:
+            email:
+              blocked: menggunakan pembekal e-mel yang tidak dibenarkan
+              unreachable: nampaknya tidak wujud
diff --git a/config/locales/activerecord.pt-BR.yml b/config/locales/activerecord.pt-BR.yml
index fa01c9c53..9aa9af62e 100644
--- a/config/locales/activerecord.pt-BR.yml
+++ b/config/locales/activerecord.pt-BR.yml
@@ -43,13 +43,13 @@ pt-BR:
               blocked: usa provedor de e-mail não permitido
               unreachable: parece não existir
             role_id:
-              elevated: não pode ser maior do que sua função atual
+              elevated: não pode ser maior do que seu cargo atual
         user_role:
           attributes:
             permissions_as_keys:
-              dangerous: inlcuir permissões que não são seguras para a função base
-              elevated: não pode incluir permissões que a sua função atual não possui
-              own_role: não pode ser alterado com sua função atual
+              dangerous: incluir permissões que não são seguras para o cargo base
+              elevated: não pode incluir permissões que o seu cargo atual não possui
+              own_role: não pode ser alterado com seu cargo atual
             position:
-              elevated: não pode ser maior do que sua função atual
-              own_role: não pode ser alterado com sua função atual
+              elevated: não pode ser maior do que seu cargo atual
+              own_role: não pode ser alterado com seu cargo atual
diff --git a/config/locales/activerecord.sco.yml b/config/locales/activerecord.sco.yml
new file mode 100644
index 000000000..dfba33c3f
--- /dev/null
+++ b/config/locales/activerecord.sco.yml
@@ -0,0 +1,55 @@
+---
+sco:
+  activerecord:
+    attributes:
+      poll:
+        expires_at: Deidline
+        options: Chyces
+      user:
+        agreement: Service greeance
+        email: E-mail address
+        locale: Locale
+        password: Passwird
+      user/account:
+        username: Uisername
+      user/invite_request:
+        text: Raison
+    errors:
+      models:
+        account:
+          attributes:
+            username:
+              invalid: haes tae ainly hae letters, nummers an unnerscores
+              reserved: is reseirvit
+        admin/webhook:
+          attributes:
+            url:
+              invalid: isnae a guid URL
+        doorkeeper/application:
+          attributes:
+            website:
+              invalid: isnae a guid URL
+        import:
+          attributes:
+            data:
+              malformed: isnae o the expectit form
+        status:
+          attributes:
+            reblog:
+              taken: o post awriddy exists
+        user:
+          attributes:
+            email:
+              blocked: uises a e-mail provider thit's no allooed
+              unreachable: disnae seem tae exist
+            role_id:
+              elevated: cannae be heicher nor yer role the noo
+        user_role:
+          attributes:
+            permissions_as_keys:
+              dangerous: hae permissions thit urnae safe fir the base role
+              elevated: cannae include permissions thit yer role the noo disnae haud
+              own_role: cannae be chynged wi the role ye hae the noo
+            position:
+              elevated: cannae be heicher nor the role ye hae the noo
+              own_role: cannae be chynged wi the role ye hae the noo
diff --git a/config/locales/activerecord.sr-Latn.yml b/config/locales/activerecord.sr-Latn.yml
index 1527a0d8c..c6b5e7761 100644
--- a/config/locales/activerecord.sr-Latn.yml
+++ b/config/locales/activerecord.sr-Latn.yml
@@ -1,13 +1,55 @@
 ---
 sr-Latn:
   activerecord:
+    attributes:
+      poll:
+        expires_at: Krajnji rok
+        options: Izbori
+      user:
+        agreement: Ugovor o usluzi
+        email: E-adresa
+        locale: Lokalno
+        password: Lozinka
+      user/account:
+        username: Korisničko ime
+      user/invite_request:
+        text: Razlog
     errors:
       models:
         account:
           attributes:
             username:
-              invalid: samo slova, brojevi i donje crte
+              invalid: mora da sadrži samo slova, brojeve i donje crte
+              reserved: je rezervisano
+        admin/webhook:
+          attributes:
+            url:
+              invalid: nije važeća URL adresa
+        doorkeeper/application:
+          attributes:
+            website:
+              invalid: nije važeća URL adresa
+        import:
+          attributes:
+            data:
+              malformed: nije dobro formiran
         status:
           attributes:
             reblog:
-              taken: statusa već postoji
+              taken: objave već postoji
+        user:
+          attributes:
+            email:
+              blocked: koristi nedozvoljeni provajder e-pošte
+              unreachable: izgleda da ne postoji
+            role_id:
+              elevated: ne može biti više sa vašom trenutnom ulogom
+        user_role:
+          attributes:
+            permissions_as_keys:
+              dangerous: uključuje dozvole koje nisu bezbedne za osnovnu ulogu
+              elevated: ne može da uključi dozvole koje vaša trenutna uloga ne poseduje
+              own_role: ne može da se promeni sa vašom trenutnom ulogom
+            position:
+              elevated: ne može biti više sa vašom trenutnom ulogom
+              own_role: ne može da se promeni sa vašom trenutnom ulogom
diff --git a/config/locales/activerecord.sr.yml b/config/locales/activerecord.sr.yml
index feebfb6dc..e3fcdd691 100644
--- a/config/locales/activerecord.sr.yml
+++ b/config/locales/activerecord.sr.yml
@@ -7,8 +7,8 @@ sr:
         options: Избори
       user:
         agreement: Уговор о услузи
-        email: Имејл адреса
-        locale: Регионална подешавања
+        email: Е-адреса
+        locale: Локално
         password: Лозинка
       user/account:
         username: Корисничко име
@@ -21,12 +21,35 @@ sr:
             username:
               invalid: мора да садржи само слова, бројеве и доње црте
               reserved: је резервисано
+        admin/webhook:
+          attributes:
+            url:
+              invalid: није важећа УРЛ адреса
+        doorkeeper/application:
+          attributes:
+            website:
+              invalid: није важећа УРЛ адреса
+        import:
+          attributes:
+            data:
+              malformed: није добро формиран
         status:
           attributes:
             reblog:
-              taken: објава већ постоји
+              taken: објаве већ постоји
         user:
           attributes:
             email:
-              blocked: користи недозвољени имејл сервис
+              blocked: користи недозвољени провајдер е-поште
               unreachable: изгледа да не постоји
+            role_id:
+              elevated: не може бити више са вашом тренутном улогом
+        user_role:
+          attributes:
+            permissions_as_keys:
+              dangerous: укључује дозволе које нису безбедне за основну улогу
+              elevated: не може да укључи дозволе које ваша тренутна улога не поседује
+              own_role: не може да се промени са вашом тренутном улогом
+            position:
+              elevated: не може бити више са вашом тренутном улогом
+              own_role: не може да се промени са вашом тренутном улогом
diff --git a/config/locales/activerecord.zh-HK.yml b/config/locales/activerecord.zh-HK.yml
index 1aa9dfebe..a4ca66386 100644
--- a/config/locales/activerecord.zh-HK.yml
+++ b/config/locales/activerecord.zh-HK.yml
@@ -21,6 +21,18 @@ zh-HK:
             username:
               invalid: 只能使用字母、數字和下劃線
               reserved: 已被保留
+        admin/webhook:
+          attributes:
+            url:
+              invalid: 不是一個有效的網址
+        doorkeeper/application:
+          attributes:
+            website:
+              invalid: 不是一個有效的網址
+        import:
+          attributes:
+            data:
+              malformed: 是畸形
         status:
           attributes:
             reblog:
@@ -30,3 +42,14 @@ zh-HK:
             email:
               blocked: 使用不被允許的電子郵件供應商
               unreachable: 似乎不存在
+            role_id:
+              elevated: 不可高於你目前的身份
+        user_role:
+          attributes:
+            permissions_as_keys:
+              dangerous: 包括對基本身份不安全的權限
+              elevated: 不能包括你當前身份不具備的權限
+              own_role: 無法以你目前的身份更改
+            position:
+              elevated: 不可高於你目前的身份
+              own_role: 無法以你目前的身份更改
diff --git a/config/locales/af.yml b/config/locales/af.yml
index 0903af744..dadb61c75 100644
--- a/config/locales/af.yml
+++ b/config/locales/af.yml
@@ -19,10 +19,21 @@ af:
       deleted_account: geskrapte rekening
     announcements:
       publish: Publiseer
-      published_msg: Aankondiging was suksesvol gepubliseer!
+      published_msg: Aankondiging suksesvol gepubliseer!
       unpublish: Depubliseer
+    domain_allows:
+      export: Voer uit
+      import: Voer in
     domain_blocks:
-      existing_domain_block: Jy het alreeds strenger perke ingelê op %{name}.
+      existing_domain_block: Jy het %{name} al strenger ingeperk.
+      export: Voer uit
+      import: Voer in
+      new:
+        severity:
+          desc_html: "<strong>Beperk</strong> maak plasings deur ’n rekening op hierdie domein onsigbaar vir alle nievolgers van die beperkte rekening. <strong>Skort op</strong> haal alle inhoud, media en profieldata van rekeninge van die opgeskorte domein van jou bediener af. Gebruik <strong>Geen</strong> as jy slegs medialêers wil verwerp."
+          silence: Beperk
+    export_domain_allows:
+      no_file: Geen lêer is gekies nie
     instances:
       back_to_limited: Beperk
       moderation:
@@ -31,13 +42,14 @@ af:
       categories:
         devops: DevOps
       privileges:
+        invite_users_description: Laat gebruikers toe om nuwe mense te nooi na die bediener
         view_devops: DevOps
     settings:
       about:
-        title: Aangaande
+        title: Oor
     statuses:
       favourites: Gunstelinge
-      in_reply_to: Reaksie op
+      in_reply_to: Antwoord op
     strikes:
       actions:
         silence: "%{name} het %{target} se rekening beperk"
@@ -47,39 +59,40 @@ af:
         title: Publiseerders
       trending: Gewild
     webhooks:
-      add_new: Voeg end-punt by
+      add_new: Voeg eindpunt by
       delete: Wis uit
       disable: Deaktiveer
       disabled: Gedeaktiveer
-      edit: Redigeer end-punt
-      empty: Jy het tans geen opgestelde web-hoek end-punte nie.
+      edit: Redigeer eindpunt
+      empty: Jy het nog nie webhoekeindpunte oogestel nie.
       enable: Aktiveer
       enabled: Aktief
-      new: Nuwe web-hoek
+      new: Nuwe webhoek
       rotate_secret: Roteer geheim
       secret: Onderteken geheim
       status: Status
-      title: Web-hoeke
+      title: Webhoeke
       webhook: Web-hoek
   appearance:
-    advanced_web_interface_hint: 'As jy jou hele skerm wydte wil gebruik, laat die gevorderde web koppelvlak jou toe om konfigurasie op te stel vir vele verskillende kolomme om so veel as moontlik inligting op dieselfde tyd te sien as wat jy wil: Tuis, kennisgewings, gefedereerde tydlyn, enige aantal lyste of hits-etikette.'
+    advanced_web_interface_hint: As jy die volle wydte van jou skerm gebruik, laat die gevorderde webkoppelvlak jou toe om kolomme met verskillende soorte inligting langs mekaar te rangskik. So kan jy, byvoorbeeld, tegelyk jou tuistoevoer, kennisgewings, gefedereerde tydlyn en nog ander lyste of hutsetikette dophou.
   application_mailer:
-    notification_preferences: Verander epos voorkeure
-    settings: 'Verander epos voorkeure: %{link}'
+    notification_preferences: Verander e-posvoorkeure
+    settings: 'Verander e-posvoorkeure: %{link}'
   auth:
-    logout: Teken Uit
+    apply_for_account: Doen aansoek om ’n rekening
+    logout: Teken uit
   datetime:
     distance_in_words:
-      about_x_hours: "%{count} ure"
+      about_x_hours: "%{count} uur"
       about_x_months: "%{count} maande"
-      about_x_years: "%{count} jare"
+      about_x_years: "%{count} jaar"
   disputes:
     strikes:
-      approve_appeal: Aanvaar appêl
-      reject_appeal: Verwerp appêl
+      approve_appeal: Aanvaar appèl
+      reject_appeal: Verwerp appèl
   errors:
     '400': The request you submitted was invalid or malformed.
-    '403': Jy het nie toestemming om hierdie bladsy te besigtig nie.
+    '403': Jy het nie toestemming om hierdie bladsy te sien nie.
     '404': The page you are looking for isn't here.
     '406': This page is not available in the requested format.
     '410': The page you were looking for doesn't exist here anymore.
@@ -89,13 +102,19 @@ af:
     '503': The page could not be served due to a temporary server failure.
   exports:
     bookmarks: Boekmerke
+    lists: Lyste
+  filters:
+    contexts:
+      home: Tuis en lyste
   imports:
     types:
       bookmarks: Boekmerke
+  invites:
+    title: Nooi ander
   login_activities:
-    description_html: Indien jy onbekende aktiwiteite gewaar, oorweeg dit om jou wagwoord te verander en twee-faktor verifikasie te aktiveer.
+    description_html: Indien jy onbekende aktiwiteite gewaar, oorweeg dit om jou wagwoord te verander en tweefaktorverifikasie te aktiveer.
   navigation:
-    toggle_menu: Skakel-kieslys
+    toggle_menu: Wisselkieslys
   notification_mailer:
     mention:
       action: Reageer
@@ -105,15 +124,15 @@ af:
         format: "%n %u"
   preferences:
     other: Ander
-    posting_defaults: Plasing verstekte
-    public_timelines: Publieke tydlyne
+    posting_defaults: Standaardplasings
+    public_timelines: Openbare tydlyne
   privacy_policy:
     title: Privaatheidsbeleid
   rss:
-    content_warning: 'Inhoud waarskuwing:'
+    content_warning: 'Inhoudwaarskuwing:'
     descriptions:
-      account: Publieke plasings vanaf @%{acct}
-      tag: 'Publieke plasings met die #%{hashtag} etiket'
+      account: Openbare plasings vanaf @%{acct}
+      tag: 'Openbare plasings met die etiket #%{hashtag}'
   sessions:
     browsers:
       blackberry: BlackBerry
@@ -132,10 +151,10 @@ af:
     ignore_favs: Ignoreer gunstelinge
   strikes:
     errors:
-      too_late: Dit is te laat om hierdie staking te appelleer
+      too_late: Dit is te laat om hierteen te appelleer
   user_mailer:
     warning:
       title:
-        silence: Beperkte rekening
+        silence: Rekening beperk
     welcome:
       edit_profile_action: Stel profiel op
diff --git a/config/locales/an.yml b/config/locales/an.yml
new file mode 100644
index 000000000..6fb24cc8a
--- /dev/null
+++ b/config/locales/an.yml
@@ -0,0 +1,1662 @@
+---
+an:
+  about:
+    about_mastodon_html: 'Lo ret social d''o futuro: Sin anuncios, sin vichilancia corporativa, disenyo etico, y descentralización! Sé duenyo d''a tuya información con Mastodon!'
+    contact_missing: No especificau
+    contact_unavailable: No disponible
+    hosted_on: Mastodon alochau en %{domain}
+    title: Sobre
+  accounts:
+    follow: Seguir
+    followers:
+      one: Seguidor
+      other: Seguidores
+    following: Seguindo
+    instance_actor_flash: Esta cuenta ye un actor virtual utilizau pa representar a lo servidor en ell mesmo y no a garra usuario individual. S'utiliza pa propositos d'a federación y no s'ha de suspender.
+    last_active: zaguera connexión
+    link_verified_on: La propiedat d'este vinclo estió verificada lo %{date}
+    nothing_here: No i hai cosa aquí!
+    pin_errors:
+      following: Has d'estar seguindo a la persona a la quala quiers aprebar
+    posts:
+      one: Publicación
+      other: Publicacions
+    posts_tab_heading: Publicacions
+  admin:
+    account_actions:
+      action: Realizar acción
+      title: Amoderar %{acct}
+    account_moderation_notes:
+      create: Creyar
+      created_msg: Nota de moderación creyada con exito!
+      destroyed_msg: Nota de moderación destruyida con exito!
+    accounts:
+      add_email_domain_block: Meter en lista negra lo dominio d'o correu
+      approve: Aprebar
+      approved_msg: La solicitut de rechistro de %{username} ha estau aprebada correctament
+      are_you_sure: Yes seguro?
+      avatar: Avatar
+      by_domain: Dominio
+      change_email:
+        changed_msg: Email cambiau con exito!
+        current_email: Correu electronico actual
+        label: Cambiar lo correu electronico
+        new_email: Nuevo correu electronico
+        submit: Cambiar lo correu electronico
+        title: Cambiar lo correu electronico de %{username}
+      change_role:
+        changed_msg: Rol cambiau con exito!
+        label: Cambiar rol
+        no_role: Sin rol
+        title: Cambiar rol pa %{username}
+      confirm: Confirmar
+      confirmed: Confirmau
+      confirming: Confirmando
+      custom: Personalizau
+      delete: Eliminar datos
+      deleted: Borrau
+      demote: Degradar
+      destroyed_msg: Los datos de %{username} son ya en coda pa estar eliminaus de camín
+      disable: Deshabilitar
+      disable_sign_in_token_auth: Deshabilitar l'autenticación per token de correu electronico
+      disable_two_factor_authentication: Desactivar autenticación de dos factors
+      disabled: Deshabilitada
+      display_name: Nombre
+      domain: Dominio
+      edit: Editar
+      email: Adreza de correu-e
+      email_status: Status de correu-e
+      enable: Habilitar
+      enable_sign_in_token_auth: Habilitar l'autenticación per token de correu electronico
+      enabled: Habilitada
+      enabled_msg: S'ha descongelado correctament la cuenta de %{username}
+      followers: Seguidores
+      follows: Sigue
+      header: Capitero
+      inbox_url: URL d'a servilla de dentrada
+      invite_request_text: Razons pa unir-se
+      invited_by: Convidau per
+      ip: IP
+      joined: Uniu
+      location:
+        all: Totz
+        local: Local
+        remote: Remoto
+        title: Localización
+      login_status: Estau d'o login
+      media_attachments: Multimedia
+      memorialize: Convertir en memorial
+      memorialized: Cuenta commemorativa
+      memorialized_msg: "%{username} se convirtió con exito en una cuenta commemorativa"
+      moderation:
+        active: Activo
+        all: Totz
+        pending: Pendient
+        silenced: Limitau
+        suspended: Suspendius
+        title: Moderación
+      moderation_notes: Notas de moderación
+      most_recent_activity: Actividat mas recient
+      most_recent_ip: IP mas recient
+      no_account_selected: Garra cuenta se cambió como garra estió triada
+      no_limits_imposed: Sin limites imposaus
+      no_role_assigned: Garra rol asignau
+      not_subscribed: No se ye suscrito
+      pending: Revisión pendient
+      perform_full_suspension: Suspender
+      previous_strikes: Amonestacions anteriors
+      previous_strikes_description_html:
+        one: Esta cuenta tiene <strong>una</strong> amonestación.
+        other: Esta cuenta tiene <strong>%{count}</strong> amonestacions.
+      promote: Promocionar
+      protocol: Protocolo
+      public: Publico
+      push_subscription_expires: Expiración d'a conduta PuSH
+      redownload: Refrescar avatar
+      redownloaded_msg: S'actualizó correctament lo perfil de %{username} dende l'orichen
+      reject: Refusar
+      rejected_msg: La solicitut de rechistro de %{username} ha estau refusada con exito
+      remove_avatar: Eliminar lo avatar
+      remove_header: Eliminar capitero
+      removed_avatar_msg: S'ha eliminau exitosament la imachen d'o avatar de %{username}
+      removed_header_msg: S'ha eliminau con exito la imachen de capitero de %{username}
+      resend_confirmation:
+        already_confirmed: Este usuario ya ye confirmau
+        send: Reninviar lo correu electronico de confirmación
+        success: Correu electronico de confirmación ninviau con exito!
+      reset: Reiniciar
+      reset_password: Reiniciar clau
+      resubscribe: Re-suscribir
+      role: Rol
+      search: Buscar
+      search_same_email_domain: Atros usuarios con o mesmo dominio de correu
+      search_same_ip: Atros usuarios con a mesma IP
+      security_measures:
+        only_password: Nomás clau
+        password_and_2fa: Clau y 2FA
+      sensitive: Sensible
+      sensitized: Marcau como sensible
+      shared_inbox_url: URL de servilla compartida
+      show:
+        created_reports: Reportes feitos per esta cuenta
+        targeted_reports: Reportes feitos sobre esta cuenta
+      silence: Silenciar
+      silenced: Silenciau
+      statuses: Estaus
+      strikes: Amonestacions previas
+      subscribe: Suscribir
+      suspend: Suspender
+      suspended: Suspendiu
+      suspension_irreversible: Los datos d'esta cuenta han estau irreversiblement eliminaus. Puetz desfer la suspensión d'a cuenta pa fer-la utilizable, pero no recuperará los datos que tenebas anteriorment.
+      suspension_reversible_hint_html: La cuenta ha estau suspendida y los datos s'eliminarán completament lo %{date}. Dica alavez, la cuenta puede estar restaurada sin garra efecto perchudicial. Si deseya eliminar totz los datos d'a cuenta immediatament, puede fer-lo contino.
+      title: Cuentas
+      unblock_email: Desblocar adreza de correu
+      unblocked_email_msg: S'ha desblocau correctament l'adreza de correu de %{username}
+      unconfirmed_email: Correu electronico sin confirmar
+      undo_sensitized: Desmarcar como sensible
+      undo_silenced: Des-silenciar
+      undo_suspension: Des-suspender
+      unsilenced_msg: Se sacó con exito lo limite d'a cuenta %{username}
+      unsubscribe: Desuscribir
+      unsuspended_msg: Se sacó con exito la suspensión d'a cuenta de %{username}
+      username: Nombre d'usuario
+      view_domain: Veyer resumen d'o dominio
+      warn: Adevertir
+      web: Web
+      whitelisted: Anyadiu a la lista blanca
+    action_logs:
+      action_types:
+        approve_appeal: Aprebar Apelación
+        approve_user: Aprebar Usuario
+        assigned_to_self_report: Asignar Reporte
+        change_email_user: Cambiar Correu Electronico de l'Usuario
+        change_role_user: Cambiar Rol d'Usuario
+        confirm_user: Confirmar Usuario
+        create_account_warning: Creyar Alvertencia
+        create_announcement: Creyar Anuncio
+        create_canonical_email_block: Creyar Bloqueyo de Correu Electronico
+        create_custom_emoji: Creyar Emoji Personalizau
+        create_domain_allow: Creyar Permiso de Dominio
+        create_domain_block: Creyar Bloqueyo de Dominio
+        create_email_domain_block: Creyar Bloqueyo de Dominio de Correu Electronico
+        create_ip_block: Creyar regla IP
+        create_unavailable_domain: Creyar Dominio No Disponible
+        create_user_role: Creyar Rol
+        demote_user: Degradar Usuario
+        destroy_announcement: Eliminar Anuncio
+        destroy_canonical_email_block: Eliminar Bloqueyo de Correu Electronico
+        destroy_custom_emoji: Eliminar Emoji Personalizau
+        destroy_domain_allow: Eliminar Permiso de Dominio
+        destroy_domain_block: Eliminar Bloqueyo de Dominio
+        destroy_email_domain_block: Eliminar Bloqueyo de Dominio de Correu Electronico
+        destroy_instance: Purgar Dominio
+        destroy_ip_block: Eliminar regla IP
+        destroy_status: Eliminar Estau
+        destroy_unavailable_domain: Eliminar Dominio No Disponible
+        destroy_user_role: Destruyir Rol
+        disable_2fa_user: Deshabilitar 2FA
+        disable_custom_emoji: Deshabilitar Emoji Personalizau
+        disable_sign_in_token_auth_user: Deshabilitar l'Autenticación per Token de Correu Electronico pa l'Usuario
+        disable_user: Deshabilitar Usuario
+        enable_custom_emoji: Habilitar Emoji Personalizau
+        enable_sign_in_token_auth_user: Habilitar l'Autenticación per Token de Correu Electronico pa l'Usuario
+        enable_user: Habilitar Usuario
+        memorialize_account: Transformar en Cuenta Commemorativa
+        promote_user: Promover Usuario
+        reject_appeal: Refusar Apelación
+        reject_user: Refusar Usuario
+        remove_avatar_user: Eliminar Avatar
+        reopen_report: Reubrir Reporte
+        resend_user: Reninviar Correu de Confirmación
+        reset_password_user: Restablir Clau
+        resolve_report: Resolver Reporte
+        sensitive_account: Marcar multimedia en a tuya cuenta como sensible
+        silence_account: Silenciar Cuenta
+        suspend_account: Suspender Cuenta
+        unassigned_report: Desasignar Reporte
+        unblock_email_account: Desblocar adreza de correu
+        unsensitive_account: Desmarcar multimedia en a tuya cuenta como sensible
+        unsilence_account: Deixar de Silenciar Cuenta
+        unsuspend_account: Deixar de Suspender Cuenta
+        update_announcement: Actualizar Anuncio
+        update_custom_emoji: Actualizar Emoji Personalizau
+        update_domain_block: Actualizar lo Bloqueyo de Dominio
+        update_ip_block: Actualizar regla IP
+        update_status: Actualizar Estau
+        update_user_role: Actualizar Rol
+      actions:
+        approve_appeal_html: "%{name} aprebó la solicitut de moderación de %{target}"
+        approve_user_html: "%{name} aprebó lo rechistro de %{target}"
+        assigned_to_self_report_html: "%{name} asignó l'informe %{target} a ell mesmo"
+        change_email_user_html: "%{name} cambió l'adreza de correu electronico de l'usuario %{target}"
+        change_role_user_html: "%{name} cambió lo rol de %{target}"
+        confirm_user_html: "%{name} confirmó l'adreza de correu electronico de l'usuario %{target}"
+        create_account_warning_html: "%{name} ninvió una alvertencia a %{target}"
+        create_announcement_html: "%{name} ha creyau un nuevo anuncio %{target}"
+        create_canonical_email_block_html: "%{name} blocó lo correu electronico con o hash %{target}"
+        create_custom_emoji_html: "%{name} puyó un nuevo emoji %{target}"
+        create_domain_allow_html: "%{name} permitió la federación con o dominio %{target}"
+        create_domain_block_html: "%{name} blocó lo dominio %{target}"
+        create_email_domain_block_html: "%{name} blocó lo dominio de correu electronico %{target}"
+        create_ip_block_html: "%{name} creyó una regla pa la IP %{target}"
+        create_unavailable_domain_html: "%{name} aturó las entregas a lo dominio %{target}"
+        create_user_role_html: "%{name} creyó lo rol %{target}"
+        demote_user_html: "%{name} degradó a l'usuario %{target}"
+        destroy_announcement_html: "%{name} eliminó l'anuncio %{target}"
+        destroy_canonical_email_block_html: "%{name} desblocó lo correu electronico con o hash %{target}"
+        destroy_custom_emoji_html: "%{name} eliminó lo emoji %{target}"
+        destroy_domain_allow_html: "%{name} blocó la federación con o dominio %{target}"
+        destroy_domain_block_html: "%{name} desblocó lo dominio %{target}"
+        destroy_email_domain_block_html: "%{name} desblocó lo dominio de correu electronico %{target}"
+        destroy_instance_html: "%{name} purgó lo dominio %{target}"
+        destroy_ip_block_html: "%{name} eliminó una regla pa la IP %{target}"
+        destroy_status_html: "%{name} eliminó lo estau per %{target}"
+        destroy_unavailable_domain_html: "%{name} reprenió las entregas a lo dominio %{target}"
+        destroy_user_role_html: "%{name} eliminó lo rol %{target}"
+        disable_2fa_user_html: "%{name} desactivó lo requisito de dos factors pa l'usuario %{target}"
+        disable_custom_emoji_html: "%{name} desactivó lo emoji %{target}"
+        disable_sign_in_token_auth_user_html: "%{name} ha deshabilitau l'autenticación per token de correu electronico pa %{target}"
+        disable_user_html: "%{name} deshabilitó l'inicio de sesión pa l'usuario %{target}"
+        enable_custom_emoji_html: "%{name} activó lo emoji %{target}"
+        enable_sign_in_token_auth_user_html: "%{name} ha habilitau l'autenticación per token de correu electronico pa %{target}"
+        enable_user_html: "%{name} habilitó l'inicio de sesión pa l'usuario %{target}"
+        memorialize_account_html: "%{name} convirtió la cuenta de %{target} en una pachina in memoriam"
+        promote_user_html: "%{name} promoción a l'usuario %{target}"
+        reject_appeal_html: "%{name} refusó la solicitut de moderación de %{target}"
+        reject_user_html: "%{name} refusó lo rechistro de %{target}"
+        remove_avatar_user_html: "%{name} eliminó lo avatar de %{target}"
+        reopen_report_html: "%{name} reubrió l'informe %{target}"
+        resend_user_html: "%{name} ha reninviau lo correu de confirmación pa %{target}"
+        reset_password_user_html: "%{name} reinició la clau de l'usuario %{target}"
+        resolve_report_html: "%{name} resolvió l'informe %{target}"
+        sensitive_account_html: "%{name} marcó los fichers multimedia de %{target} como sensibles"
+        silence_account_html: "%{name} silenció la cuenta de %{target}"
+        suspend_account_html: "%{name} suspendió la cuenta de %{target}"
+        unassigned_report_html: "%{name} des-asignó l'informe %{target}"
+        unblock_email_account_html: "%{name} ha desblocau l'adreza de correu de %{target}"
+        unsensitive_account_html: "%{name} desmarcó los fichers multimedia de %{target} como sensibles"
+        unsilence_account_html: "%{name} desilenció la cuenta de %{target}"
+        unsuspend_account_html: "%{name} reactivó la cuenta de %{target}"
+        update_announcement_html: "%{name} actualizó l'anuncio %{target}"
+        update_custom_emoji_html: "%{name} actualizó lo emoji %{target}"
+        update_domain_block_html: "%{name} actualizó lo bloqueyo de dominio pa %{target}"
+        update_ip_block_html: "%{name} cambió la regla pa la IP %{target}"
+        update_status_html: "%{name} actualizó lo estau de %{target}"
+        update_user_role_html: "%{name} cambió lo rol %{target}"
+      deleted_account: cuenta eliminada
+      empty: No se troboron rechistros.
+      filter_by_action: Filtrar per acción
+      filter_by_user: Filtrar per usuario
+      title: Log de auditoría
+    announcements:
+      destroyed_msg: Anuncio eliminau con exito!
+      edit:
+        title: Editar anuncio
+      empty: No se troboron anuncios.
+      live: En vivo
+      new:
+        create: Creyar anuncio
+        title: Nuevo anuncio
+      publish: Publicar
+      published_msg: Anuncio publicau con exito!
+      scheduled_for: Programado atura %{time}
+      scheduled_msg: Anuncio programado pa la suya publicación!
+      title: Anuncios
+      unpublish: Retirar publicación
+      unpublished_msg: Anuncio despublicado con exito!
+      updated_msg: Anuncio actualizau con exito!
+    custom_emojis:
+      assign_category: Asignar categoría
+      by_domain: Dominio
+      copied_msg: Copia local d'o emoji creyada con exito
+      copy: Copiar
+      copy_failed_msg: No se podió realizar una copia local d'ixe emoji
+      create_new_category: Creyar una nueva categoría
+      created_msg: Emoji creyau con exito!
+      delete: Borrar
+      destroyed_msg: Emojo destruyiu con exito!
+      disable: Deshabilitar
+      disabled: Desactivau
+      disabled_msg: Se deshabilitó con exito ixe emoji
+      emoji: Emoji
+      enable: Habilitar
+      enabled: Activau
+      enabled_msg: S'habilitó con exito ixe emoji
+      image_hint: PNG u GIF dica %{size}
+      list: Lista
+      listed: Listaus
+      new:
+        title: Anyadir nuevo emoji personalizau
+      no_emoji_selected: No se cambió garra emoji ya que no se trió garra
+      not_permitted: No tiens permiso pa realizar esta acción
+      overwrite: Sobrescribir
+      shortcode: Codigo d'alcorce
+      shortcode_hint: A lo menos 2 caracters, solo caracters alfanumericos y guións baixos
+      title: Emojis personalizaus
+      uncategorized: Sin clasificar
+      unlist: No listau
+      unlisted: Sin listar
+      update_failed_msg: No se podió actualizar ixe emoji
+      updated_msg: Emoji actualizau con exito!
+      upload: Puyar
+    dashboard:
+      active_users: usuarios activos
+      interactions: interaccions
+      media_storage: Almagazenamiento multimedia
+      new_users: nuevos usuarios
+      opened_reports: informes ubiertos
+      pending_appeals_html:
+        one: "<strong>%{count}</strong> apelación pendient"
+        other: "<strong>%{count}</strong> apelacions pendients"
+      pending_reports_html:
+        one: "<strong>%{count}</strong> informe pendient"
+        other: "<strong>%{count}</strong> informes pendients"
+      pending_tags_html:
+        one: "<strong>%{count}</strong> etiqueta pendient"
+        other: "<strong>%{count}</strong> etiquetas pendients"
+      pending_users_html:
+        one: "<strong>%{count}</strong> usuario pendient"
+        other: "<strong>%{count}</strong> usuarios pendients"
+      resolved_reports: informes resueltos
+      software: Software
+      sources: Fuents de rechistro
+      space: Uso d'almagazenamiento
+      title: Tablero
+      top_languages: Idiomas mas activos
+      top_servers: Servidors mas activos
+      website: Puesto web
+    disputes:
+      appeals:
+        empty: No se troboron apelacions.
+        title: Apelacions
+    domain_allows:
+      add_new: Anyadir dominio a la lista blanca
+      created_msg: Dominio anyadiu a la lista blanca con exito
+      destroyed_msg: Dominio sacau d'a lista blanca con exito
+      export: Exportar
+      import: Importar
+      undo: Sacar d'a lista blanca
+    domain_blocks:
+      add_new: Anyadir nuevo
+      created_msg: Lo bloqueyo d'o dominio ye estando procesau
+      destroyed_msg: Lo bloqueyo d'o dominio se desfació
+      domain: Dominio
+      edit: Editar bloqueyo de dominio
+      existing_domain_block: Ya imposés limites mas estrictos a %{name}.
+      existing_domain_block_html: Ya ha imposau limites mas estrictos a %{name}, cal <a href="%{unblock_url}">desblocar-lo primero</a>.
+      export: Exportar
+      import: Importar
+      new:
+        create: Creyar bloqueyo
+        hint: Lo bloqueyo de dominio no aprevendrá la creyación de dentradas de cuenta en a base de datos, pero aplicará retroactiva y automaticament metodos de moderación especifica en ditas cuentas.
+        severity:
+          desc_html: "<strong>Limitar</strong> ferá que las publicacions d'as cuentas d'ixe dominio sían invisibles pa qualsequiera que no las sía seguindo. <strong>Suspender</strong> eliminará tot lo conteniu, fichers multimedia, y datos d'o perfil. Usa <strong>Garra</strong> si nomás quiers refusar fichers multimedia."
+          noop: Garra
+          silence: Limitar
+          suspend: Suspender
+        title: Nuevo bloqueyo de dominio
+      no_domain_block_selected: No se cambió garra bloqueyo de dominio ya que garra estió triau
+      not_permitted: No tiens permiso pa realizar esta acción
+      obfuscate: Amagar nombre de dominio
+      obfuscate_hint: Amagada parcialment lo nombre de dominio en a lista si amostrar la lista de limitacions de dominio ye habilitau
+      private_comment: Comentario privau
+      private_comment_hint: Comentario sobre esta limitación de dominio pa l'uso interno per parte d'os moderadors.
+      public_comment: Comentario publico
+      public_comment_hint: Comentario sobre esta limitación de dominio pa lo publico en cheneral, si la publicidat d'a lista de limitacions de dominio ye habilitada.
+      reject_media: Refusar fichers multimedia
+      reject_media_hint: Remueve localment fichers multimedia almagazenaus pa descargar qualsequiera en o futuro. Irrelevant pa suspensions
+      reject_reports: Refusar informes
+      reject_reports_hint: Ignore totz los reportes d'este dominio. Irrelevant pa suspensions
+      undo: Desfer
+      view: Veyer dominio blocau
+    email_domain_blocks:
+      add_new: Anyadir nuevo
+      attempts_over_week:
+        one: "%{count} intento entre la zaguera semana"
+        other: "%{count} intentos de rechistro entre la zaguera semana"
+      created_msg: Dominio de correu anyadiu a la lista negra con exito
+      delete: Borrar
+      dns:
+        types:
+          mx: Rechistro MX
+      domain: Dominio
+      new:
+        create: Anyadir dominio
+        resolve: Resolver dominio
+        title: Nueva dentrada en a lista negra de correu
+      no_email_domain_block_selected: No s'ha cambiau bloqueyos de dominio ya que garra ha estau triau
+      resolved_dns_records_hint_html: Lo nombre de dominio resuelte los siguients dominios MX, los quals son responsables en zaguera instancia d'acceptar lo correu electronico. Blocar un dominio MX blocará los rechistros de qualsequier adreza de correu electronico que utilice lo mesmo dominio MX, mesmo si lo nombre de dominio visible ye diferent. <strong>Tienga cudiau de no blocar los prencipals furnidors de correu electronico.</strong>
+      resolved_through_html: Resuelto a traviés de %{domain}
+      title: Lista negra de correu
+    export_domain_allows:
+      new:
+        title: Importar dominios permitius
+      no_file: Garra fichero triau
+    export_domain_blocks:
+      import:
+        description_html: Yes a punto d'importar una lista de bloqueyos de dominio. Per favor, revisa esta lista con muito cudiau, especialment si no has creyau esta lista tu mesmo.
+        existing_relationships_warning: Relacions de seguimiento existents
+        private_comment_description_html: 'Pa aduyar-le a rastriar d''án proceden los bloqueyos importaus, los bloqueyos importaus se creyarán con o siguient comentario privau: <q>%{comment}</q>'
+        private_comment_template: Importau dende %{source} lo %{date}
+        title: Importar bloqueyos de dominio
+      new:
+        title: Importar bloqueyos de dominio
+      no_file: Garra fichero triau
+    follow_recommendations:
+      description_html: "<strong>Las recomendacions de cuentas aduyan a los nuevos usuarios a trobar rapidament conteniu interesant</strong>. Quan un usuario no ha interactuado con atros pro como pa suscitar recomendacions personalizadas de cuentas a las qualas seguir, en o suyo puesto se le recomiendan estas cuentas. Se recalculan diariament a partir d'una mescla de cuentas con o mayor numero d'interaccions recients y con o mayor numero de seguidores locals con un idioma determinau."
+      language: Pa l'idioma
+      status: Estau
+      suppress: Suprimir recomendación de cuentas
+      suppressed: Suprimida
+      title: Recomendacions de cuentas
+      unsuppress: Restaurar recomendacions de cuentas
+    instances:
+      availability:
+        description_html:
+          one: Si lo ninvio a lo dominio falla <strong>%{count} día</strong> sin exito, no se ferán mas intentos d'entrega de no estar que se reciba un ninvio <em>dende</em> lo dominio.
+          other: Si lo ninvio a lo dominio falla <strong>%{count} días diferents</strong> sin exito, no se ferán mas intentos d'entrega de no estar que se reciba un ninvio <em>dende</em> lo dominio.
+        failure_threshold_reached: Limite de fallo aconseguiu lo %{date}.
+        failures_recorded:
+          one: Intento fallido en %{count} día.
+          other: Intentos fallidos en %{count} días diferents.
+        no_failures_recorded: No i hai fallos en o rechistro.
+        title: Disponibilidat
+        warning: Lo zaguer intento de connexión a este servidor no ha teniu exito
+      back_to_all: Totz
+      back_to_limited: Limitaus
+      back_to_warning: Alvertencia
+      by_domain: Dominio
+      confirm_purge: Seguro que quiers eliminar permanentment los datos d'este dominio?
+      content_policies:
+        comment: Nota interna
+        description_html: Puetz definir politicas de conteniu que s'aplicarán a totas las cuentas d'este dominio y a qualsequiera d'os suyos subdominios.
+        policies:
+          reject_media: Refusar multimedia
+          reject_reports: Refusar informes
+          silence: Limite
+          suspend: Suspender
+        policy: Politica
+        reason: Razón publica
+        title: Politicas de conteniu
+      dashboard:
+        instance_accounts_dimension: Cuentas mas seguidas
+        instance_accounts_measure: cuentas almagazenadas
+        instance_followers_measure: nuestros seguidores allí
+        instance_follows_measure: los suyos seguidores aquí
+        instance_languages_dimension: Idiomas prencipals
+        instance_media_attachments_measure: fichers adjuntos alzaus
+        instance_reports_measure: informes sobre ells
+        instance_statuses_measure: mensaches almagazenaus
+      delivery:
+        all: Totz
+        clear: Limpiar errors d'entrega
+        failing: Fallando
+        restart: Reiniciar entrega
+        stop: Aturar entrega
+        unavailable: No disponible
+      delivery_available: Entrega disponible
+      delivery_error_days: Días d'error d'entrega
+      delivery_error_hint: Si la entrega no ye posible a lo largo de %{count} días, se marcará automaticament como no entregable.
+      destroyed_msg: Los datos de %{domain} son agora en coda pa la suya imminent eliminación.
+      empty: No se troboron dominios.
+      known_accounts:
+        one: "%{count} cuenta conoixida"
+        other: "%{count} cuentas conoixidas"
+      moderation:
+        all: Totz
+        limited: Limitau
+        title: Moderación
+      private_comment: Comentario privau
+      public_comment: Comentario publico
+      purge: Purgar
+      purge_description_html: Si creyes que este dominio ye desconnectau, puetz borrar totz los rechistros de cuentas y los datos asociaus d'este dominio d'o tuyo almagazenamiento. Esto puede levar un tiempo.
+      title: Instancias conoixidas
+      total_blocked_by_us: Blocau per nusatros
+      total_followed_by_them: Seguius per ells
+      total_followed_by_us: Seguiu per nusatros
+      total_reported: Informes sobre ellas
+      total_storage: Fichers multimedia
+      totals_time_period_hint_html: Los totals amostraus contino incluyen datos pa tot lo tiempo.
+    invites:
+      deactivate_all: Desactivar totz
+      filter:
+        all: Totas
+        available: Disponibles
+        expired: Expiradas
+        title: Filtrar
+      title: Invitacions
+    ip_blocks:
+      add_new: Creyar regla
+      created_msg: Nueva regla IP anyadida con exito
+      delete: Eliminar
+      expires_in:
+        '1209600': 2 semanas
+        '15778476': 6 meses
+        '2629746': 1 mes
+        '31556952': 1 anyo
+        '86400': 1 día
+        '94670856': 3 anyos
+      new:
+        title: Creyar nueva regla IP
+      no_ip_block_selected: No s'ha cambiau reglas IP ya que no s'ha triau garra
+      title: Reglas IP
+    relationships:
+      title: Relacions de %{acct}
+    relays:
+      add_new: Anyadir un nuevo relés
+      delete: Borrar
+      description_html: Un <strong>relé de federación</strong> ye un servidor intermedio que intercambia grans volumens de publicacions publicas entre servidors que se suscriben y publican en ell. <strong>Puede aduyar a servidors chicotz y medianos a descubrir conteniu d'o fediverso</strong>, que d'unatra traza requeriría que los usuarios locals seguisen manualment a personas de servidors remotos.
+      disable: Deshabilitar
+      disabled: Deshabilitau
+      enable: Hablitar
+      enable_hint: Una vegada connectau, lo tuyo servidor se suscribirá a totz las publicacions publicas d'este relé, y prencipiará a ninviar las publicacions publicas d'este servidor enta ell.
+      enabled: Habilitau
+      inbox_url: URL d'o relés
+      pending: Asperando l'aprebación d'o relés
+      save_and_enable: Alzar y connectar
+      setup: Preparar una connexión de relés
+      signatures_not_enabled: Los relés no funcionarán correctament mientres lo modo seguro u lo modo de lista blanca sían habilitaus
+      status: Estau
+      title: Releses
+    report_notes:
+      created_msg: Lo rechistro d'a denuncia s'ha creyau correctament!
+      destroyed_msg: Lo rechistro d'a denuncia s'ha borrau correctament!
+      today_at: Hue a las %{time}
+    reports:
+      account:
+        notes:
+          one: "%{count} nota"
+          other: "%{count} notas"
+      action_log: Rechistro de auditoría
+      action_taken_by: Acción presa per
+      actions:
+        delete_description_html: Los mensaches denunciaus serán eliminaus y se rechistrará una amonestación pa aduyar-te a escalar en futuras infraccions per la mesma cuenta.
+        mark_as_sensitive_description_html: Los fichers multimedia en os mensaches informaus se marcarán como sensibles y s'aplicará una amonestación pa aduyar-te a escalar las futuras infraccions d'a mesma cuenta.
+        other_description_html: Veyer mas opcions pa controlar lo comportamiento d'a cuenta y personalizar la comunicación d'a cuenta denunciada.
+        resolve_description_html: No se prendrán medidas contra la cuenta denunciada, no se rechistrará l'amonestación, y se zarrará l'informe.
+        silence_description_html: Lo perfil será visible solo pa aquells que ya lo sigan u lo busquen manualment, limitando seriosament lo suyo aconsiga. Siempre puede estar revertiu.
+        suspend_description_html: Lo perfil y totz los suyos contenius serán inaccesibles dica que sían finalment eliminaus. La interacción con a cuenta será imposible. Reversible entre un plazo de 30 días.
+      actions_description_html: Decide qué medidas prener pa resolver esta denuncia. Si prenes una acción punitiva contra la cuenta denunciada, se le ninviará a dita cuenta una notificación per correu electronico, fueras de quan se tríe la categoría <strong>Spam</strong>.
+      add_to_report: Anyadir mas a lo reporte
+      are_you_sure: Yes seguro?
+      assign_to_self: Asignar-me-la
+      assigned: Moderador asignau
+      by_target_domain: Dominio d'a cuenta denunciada
+      category: Categoría
+      category_description_html: La razón per la quala se reportó esta cuenta u conteniu será citada en as comunicacions con a cuenta denunciada
+      comment:
+        none: Garra
+      comment_description_html: 'Pa proporcionar mas información, %{name} escribió:'
+      created_at: Denunciau
+      delete_and_resolve: Eliminar publicacions
+      forwarded: Reninviau
+      forwarded_to: Reninviau a %{domain}
+      mark_as_resolved: Marcar como resuelto
+      mark_as_sensitive: Marcar como sensible
+      mark_as_unresolved: Marcar como no resuelto
+      no_one_assigned: Dengún
+      notes:
+        create: Anyadir una nota
+        create_and_resolve: Resolver con una nota
+        create_and_unresolve: Reubrir con una nota
+        delete: Eliminar
+        placeholder: Especificar qué accions s'han preso u qualsequier atra novedat respective a esta denuncia...
+        title: Notas
+      notes_description_html: Veyer y deixar notas a atros moderadors y a lo tuyo yo futuro
+      quick_actions_description_html: 'Prene una acción rapida u desplaza-te enta baixo pa veyer lo conteniu denunciau:'
+      remote_user_placeholder: l'usuario remoto de %{instance}
+      reopen: Reubrir denuncia
+      report: 'Denunciar #%{id}'
+      reported_account: Cuenta denunciada
+      reported_by: Denunciau per
+      resolved: Resuelto
+      resolved_msg: La denuncia s'ha resuelto correctament!
+      skip_to_actions: Ir dreitament a las accions
+      status: Estau
+      statuses: Conteniu denunciau
+      statuses_description_html: Lo conteniu ofensivo se citará en a comunicación con a cuenta denunciada
+      target_origin: Orichen d'a cuenta denunciada
+      title: Reportes
+      unassign: Desasignar
+      unresolved: No resuelto
+      updated_at: Actualizau
+      view_profile: Veyer perfil
+    roles:
+      add_new: Anyadir rol
+      assigned_users:
+        one: "%{count} usuario"
+        other: "%{count} usuarios"
+      categories:
+        administration: Administración
+        devops: DevOps
+        invites: Invitacions
+        moderation: Moderación
+        special: Especial
+      delete: Eliminar
+      description_html: Con <strong>rols d'usuario</strong>, puede personalizar las funcions y arias de Mastodon a las qualas pueden acceder los suyos usuarios.
+      edit: Editar rol '%{name}'
+      everyone: Permisos per defecto
+      everyone_full_description_html: Este ye lo <strong>rol base</strong> que afecta a <strong>totz los usuarios</strong>, mesmo aquells sin un rol asignau. Totz los atros rols heredan permisos d'ell.
+      permissions_count:
+        one: "%{count} permiso"
+        other: "%{count} permisos"
+      privileges:
+        administrator: Administrador
+        administrator_description: Los usuarios con este permiso blincarán totz los permisos
+        delete_user_data: Borrar Datos d'Usuario
+        delete_user_data_description: Permite a los usuarios eliminar los datos d'atros usuarios sin demora
+        invite_users: Convidar usuarios
+        invite_users_description: Permite a los usuarios convidar a nuevas personas a lo servidor
+        manage_announcements: Administrar Anuncios
+        manage_announcements_description: Permite a los usuarios chestionar anuncios en o servidor
+        manage_appeals: Administrar Apelacions
+        manage_appeals_description: Permite a los usuarios revisar apelacions contra accions de moderación
+        manage_blocks: Administrar Bloqueyos
+        manage_blocks_description: Permite a los usuarios blocar los furnidors de e-mail y las adrezas IP
+        manage_custom_emojis: Administrar Emojis Personalizaus
+        manage_custom_emojis_description: Permite a los usuarios chestionar emojis personalizaus en o servidor
+        manage_federation: Administrar Federación
+        manage_federation_description: Permite a los usuarios blocar u permitir la federación con atros dominios, y controlar la entregabilidad
+        manage_invites: Administrar Invitacions
+        manage_invites_description: Permite a los usuarios navegar y desactivar los vinclos d'invitación
+        manage_reports: Administrar Informes
+        manage_reports_description: Permite a los usuarios revisar informes y realizar accions de moderación basadas en ells
+        manage_roles: Administrar Rols
+        manage_roles_description: Permite a los usuarios administrar y asignar rols per debaixo d'os suyos
+        manage_rules: Chestionar Reglas
+        manage_rules_description: Permite a los usuarios cambiar las reglas d'o servidor
+        manage_settings: Administrar Achustes
+        manage_settings_description: Permite a los usuarios cambiar la configuración d'o puesto
+        manage_taxonomies: Administrar Taxonomías
+        manage_taxonomies_description: Permite a los usuarios revisar lo conteniu en tendencia y actualizar la configuración d'as etiquetas
+        manage_user_access: Administrar Acceso d'Usuarios
+        manage_user_access_description: Permite a los usuarios desactivar l'autenticación de dos factors d'atros usuarios, cambiar la suya adreza de correu electronico y restablir la suya clau
+        manage_users: Administrar Usuarios
+        manage_users_description: Permite a los usuarios veyer los detalles d'atros usuarios y realizar accions de moderación contra ells
+        manage_webhooks: Administrar Webhooks
+        manage_webhooks_description: Permite a los usuarios configurar webhooks pa eventos administrativos
+        view_audit_log: Veyer Rechistro de Auditoría
+        view_audit_log_description: Permite a los usuarios veyer un historial d'accions administrativas en o servidor
+        view_dashboard: Veyer Panel de Control
+        view_dashboard_description: Permite a los usuarios acceder ta lo panel de control y quantas metricas
+        view_devops: DevOps
+        view_devops_description: Permite a los usuarios acceder ta los panels de control Sidekiq y pgHero
+      title: Rols
+    rules:
+      add_new: Anyadir norma
+      delete: Eliminar
+      description_html: Encara que la mayoría afirma haber leyiu y estar d'acuerdo con os termins de servicio, la chent normalment no los leye dica dimpués de que surta bell problema. <strong>Fe que sía mas facil veyer las normas d'o tuyo servidor d'un vistazo estipulándolas en una lista de puntos.</strong> Intenta que cada norma sía curta y sencilla, pero sin estar divididas en muitos puntos.
+      edit: Editar norma
+      empty: Encara no s'han definiu las normas d'o servidor.
+      title: Normas d'o servidor
+    settings:
+      about:
+        manage_rules: Administrar reglas d'o servidor
+        preamble: Proporciona información detallada sobre cómo lo servidor ye operau, moderau y financiau.
+        rules_hint: I hai una aria dedicada pa las reglas a las qualas s'aspera que los tuyos usuarios se adhieran.
+        title: Sobre
+      appearance:
+        preamble: Personalizar la interficie web de Mastodon.
+        title: Apariencia
+      branding:
+        preamble: La marca d'o tuyo servidor lo diferencia d'atros servidors d'o ret. Esta información puede amostrar-se a traviés d'una variedat d'entornos, como en a interficie web de Mastodon, en aplicacions nativas, en previsualizacions de vinclos en atros puestos web y en aplicacions de mensachería, etc. Per esta razón, ye millor mantener esta información clara, breu y concisa.
+        title: Marca
+      content_retention:
+        preamble: Controlar cómo lo conteniu chenerau per l'usuario s'almagazena en Mastodon.
+        title: Retención de conteniu
+      discovery:
+        follow_recommendations: Recomendacions de cuentas
+        preamble: Exposar conteniu interesant a la superficie ye fundamental pa incorporar nuevos usuarios que pueden no conoixer a dengún Mastodon. Controla cómo funcionan quantas opcions d'escubrimiento en o tuyo servidor.
+        profile_directory: Directorio de perfils
+        public_timelines: Linias de tiempo publicas
+        title: Escubrimiento
+        trends: Tendencias
+      domain_blocks:
+        all: A totz
+        disabled: A dengún
+        users: Pa los usuarios locals que han iniciau sesión
+      registrations:
+        preamble: Controla quí puede creyar una cuenta en o tuyo servidor.
+        title: Rechistros
+      registrations_mode:
+        modes:
+          approved: Se requiere aprebación pa rechistrar-se
+          none: Dengún puede rechistrar-se
+          open: Qualsequiera puede rechistrar-se
+      title: Achustes d'o Servidor
+    site_uploads:
+      delete: Eliminar fichero puyau
+      destroyed_msg: Carga d'o puesto eliminada con exito!
+    statuses:
+      account: Autor
+      application: Aplicación
+      back_to_account: Tornar ta la cuenta
+      back_to_report: Tornar ta la pachina d'o reporte
+      batch:
+        remove_from_report: Eliminar d'o reporte
+        report: Reporte
+      deleted: Eliminau
+      favourites: Favoritos
+      history: Historial de versions
+      in_reply_to: En respuesta a
+      language: Idioma
+      media:
+        title: Multimedia
+      metadata: Metadatos
+      no_status_selected: No se cambió garra estau a lo no triar garra
+      open: Ubrir publicación
+      original_status: Publicación orichinal
+      reblogs: Impulsos
+      status_changed: Publicación cambiada
+      title: Estau d'as cuentas
+      trending: En tendencia
+      visibility: Visibilidat
+      with_media: Con multimedia
+    strikes:
+      actions:
+        delete_statuses: "%{name} eliminó las publicacions de %{target}"
+        disable: "%{name} concheló la cuenta de %{target}"
+        mark_statuses_as_sensitive: "%{name} ha marcau las publicacions de %{target} como sensibles"
+        none: "%{name} ninvió una alvertencia a %{target}"
+        sensitive: "%{name} marcó la cuenta de %{target} como sensible"
+        silence: "%{name} limitó la cuenta de %{target}"
+        suspend: "%{name} suspendió la cuenta de %{target}"
+      appeal_approved: Apelado
+      appeal_pending: Apelación pendient
+    system_checks:
+      database_schema_check:
+        message_html: I hai migracions pendients d'a base de datos. Per favor, executa-las pa asegurar-te que l'aplicación funciona como debería
+      elasticsearch_running_check:
+        message_html: No se podió connectar a Elasticsearch. Per favor, compreba que ye executando-se, u desactiva la busqueda de texto completo
+      elasticsearch_version_check:
+        message_html: 'Versión incompatible de Elasticsearch: %{value}'
+        version_comparison: Elasticsearch %{running_version} se ye executando pero s'ameneste Elasticsearch %{required_version}
+      rules_check:
+        action: Administrar reglas d'o servidor
+        message_html: No ha definiu garra regla d'o servidor.
+      sidekiq_process_check:
+        message_html: No i hai garra proceso Sidekiq en execución pa la coda (u codas) de %{value}. Per favor, revise la suya configuración de Sidekiq
+    tags:
+      review: Estau de revisión
+      updated_msg: Hashtags actualizaus exitosament
+    title: Administración
+    trends:
+      allow: Permitir
+      approved: Aprebadas
+      disallow: No permitir
+      links:
+        allow: Permitir vinclo
+        allow_provider: Permitir meyo
+        description_html: Estes son vinclos que actualment son estando compartius muito per las cuentas dende las qualas lo tuyo servidor veye los mensaches. Pueden aduyar a los tuyos usuarios a averiguar qué ye pasando en o mundo. Garra vinclo s'amuestren publicament dica que autorice a lo dominio. Tamién puede permitir u refusar vinclos individuals.
+        disallow: Refusar vinclo
+        disallow_provider: Refusar meyo
+        no_link_selected: No se cambió garra vinclo ya que no se trió garra
+        publishers:
+          no_publisher_selected: No se cambió garra editor ya que no se trió garra
+        shared_by_over_week:
+          one: Compartiu per una persona entre la zaguera semana
+          other: Compartiu per %{count} personas entre la zaguera semana
+        title: Vinclos en tendencia
+        usage_comparison: Compartiu %{today} vegadas hue, comparau con %{yesterday} ahiere
+      only_allowed: Nomás las permitidas
+      pending_review: Revisión pendient
+      preview_card_providers:
+        allowed: Los vinclos d'este meyo pueden estar tendencia
+        description_html: Estes son dominios dende los quals los vinclos a ormino se comparten en o suyo servidor. Los vinclos no serán tendencia publicament de no estar que s'aprebe lo dominio d'o vinclo. La suya aprebación (u refuso) s'extiende a los subdominios.
+        rejected: Los vinclos d'este meyo no pueden estar tendencia
+        title: Medios
+      rejected: Refusadas
+      statuses:
+        allow: Permitir publicación
+        allow_account: Permitir autor
+        description_html: Estes son publicacions que lo suyo servidor conoixe que son estando compartidas y marcadas como favoritas muito en este momento. Pueden aduyar a los tuyos usuarios nuevos y retornantes a trobar mas chent a la quala seguir. No i hai mensaches que s'amuestren publicament dica que aprebes l'autor y l'autor permita que la suya cuenta sía sucherida a atros. Tamién puetz permitir u refusar mensaches individuals.
+        disallow: No permitir publicación
+        disallow_account: No permitir autor
+        no_status_selected: No se cambió garra publicación en tendencia ya que no se trió garra
+        not_discoverable: L'autor no ha optado per estar detectable
+        shared_by:
+          one: Compartiu u marcau como favorito una vegada
+          other: Compatido u marcau como favorito %{friendly_count} vegadas
+        title: Publicacions destacadas
+      tags:
+        current_score: Puntuación actual %{score}
+        dashboard:
+          tag_accounts_measure: usos solos
+          tag_languages_dimension: Idiomas prencipals
+          tag_servers_dimension: Servidors prencipals
+          tag_servers_measure: diferents servidors
+          tag_uses_measure: usos totals
+        description_html: Estes son etiquetas que son amaneixendo en muitos posts que lo tuyo servidor veye. Pueden aduyar a los tuyos usuarios a averiguar de qué fabla mas chent en estes momentos. No i hai hashtags que s'amuestren publicament dica que los aprebes.
+        listable: Pueden estar recomendadas
+        no_tag_selected: No se cambió garra etiqueta ya que no se trió garra
+        not_listable: No serán recomendadas
+        not_trendable: No amaneixerán en tendencias
+        not_usable: No pueden estar usadas
+        peaked_on_and_decaying: Aconsiguió lo pico en %{date}, agora decreixendo
+        title: Etiquetas en tendencia
+        trendable: Pueden amaneixer en tendencias
+        trending_rank: 'Tendencia #%{rank}'
+        usable: Pueden usar-se
+        usage_comparison: Usada %{today} vegadas hue, comparau con %{yesterday} ahiere
+        used_by_over_week:
+          one: Usada per una persona entre la zaguera semana
+          other: Usada per %{count} personas entre la zaguera semana
+      title: Tendencias
+      trending: En tendencia
+    warning_presets:
+      add_new: Anyadir nuevo
+      delete: Borrar
+      edit_preset: Editar aviso predeterminau
+      empty: Encara no has definiu garra preajuste d'alvertencia.
+      title: Editar configuración predeterminada d'avisos
+    webhooks:
+      add_new: Anyadir endpoint
+      delete: Eliminar
+      description_html: Un <strong>webhook</strong> permite a Mastodon ninviar <strong>notificacions en tiempo real</strong> sobre los eventos triaus a la tuya propia aplicación, pa que la tuya aplicación pueda <strong>lanzar reaccions automaticament</strong>.
+      disable: Deshabilitar
+      disabled: Deshabilitau
+      edit: Editar endpoint
+      empty: Encara no tiens garra endpoint de webhook configurau.
+      enable: Habilitar
+      enabled: Activo
+      enabled_events:
+        one: 1 evento habilitau
+        other: "%{count} eventos habilitaus"
+      events: Eventos
+      new: Nuevo webhook
+      rotate_secret: Rotar secreto
+      secret: Sinyando secreto
+      status: Estau
+      title: Webhooks
+      webhook: Webhook
+  admin_mailer:
+    new_appeal:
+      actions:
+        delete_statuses: pa eliminar los suyos mensaches
+        disable: pa conchelar la suya cuenta
+        mark_statuses_as_sensitive: pa marcar los suyos mensaches como sensibles
+        none: una alvertencia
+        sensitive: pa marcar la suya cuenta como sensible
+        silence: pa limitar la suya cuenta
+        suspend: suspender la suya cuenta
+      body: "%{target} ye apelando a una solicitut de moderación de %{action_taken_by} lo %{date}, d'o tipo %{type}. Ells escribioron:"
+      next_steps: Puetz aprebar l'apelación pa desfer la decisión de moderación, u ignorar-la.
+      subject: "%{username} ye apelando a una decisión de moderación en %{instance}"
+    new_pending_account:
+      body: Los detalles d'a nueva cuenta son abajos. Puetz aprebar u refusar esta aplicación.
+      subject: Nueva cuenta pa revisión en %{instance} (%{username})
+    new_report:
+      body: "%{reporter} ha denunciau a %{target}"
+      body_remote: Belún de %{domain} a denunciau a %{target}
+      subject: Nuevo reporte pa la %{instance} (#%{id})
+    new_trends:
+      body: 'Los siguients elementos amenesten una revisión antes que se puedan amostrar publicament:'
+      new_trending_links:
+        title: Vinclos en tendencia
+      new_trending_statuses:
+        title: Publicacions en tendencia
+      new_trending_tags:
+        no_approved_tags: Actualment no i hai garra etiqueta en tendencia aprebada.
+        requirements: 'Qualsequiera d''estes candidatos podría superar lo hashtag en tendencia aprebau per #%{rank}, que actualment ye #%{lowest_tag_name} con una puntuación de %{lowest_tag_score}.'
+        title: Etiquetas en tendencia
+      subject: Nuevas tendencias asperando estar revisadas en %{instance}
+  aliases:
+    add_new: Creyar alias
+    created_msg: Lo nuevo alias s'ha creyau correctament. Agora puetz empecipiar lo treslado dende la cuenta antiga.
+    deleted_msg: Elimina l'alias correctament. Lo treslado d'ixa cuenta a esta ya no será posible.
+    empty: No tiens garra alias.
+    hint_html: Si quiers migrar d'unatra cuenta a esta, aquí puetz creyar un alias, que ye necesario antes de que puedas empecipiar a mover seguidors d'a cuenta anterior ta esta. Esta acción per ella mesma ye <strong>inofensiva y reversible</strong>. <strong>La migración d'a cuenta s'inicia dende la cuenta antiga</strong>.
+    remove: Desvincular alias
+  appearance:
+    advanced_web_interface: Interficie web abanzada
+    advanced_web_interface_hint: 'Si deseya utilizar tot l''amplo de pantalla, la interficie web abanzada le permite configurar quantas columnas diferents pa veyer tanta información a lo mesmo tiempo como quiera: Inicio, notificacions, linia de tiempo federada, qualsequier numero de listas y etiquetas.'
+    animations_and_accessibility: Animacions y accesibilidat
+    confirmation_dialogs: Dialogos de confirmación
+    discovery: Descubrir
+    localization:
+      body: Mastodon ye traduciu con la aduya de voluntarios.
+      guide_link: https://crowdin.com/project/mastodon
+      guide_link_text: Totz pueden contribuyir.
+    sensitive_content: Conteniu sensible
+    toot_layout: Disenyo d'as publicacions
+  application_mailer:
+    notification_preferences: Cambiar preferencias de correu electronico
+    salutation: "%{name}:"
+    settings: 'Cambiar preferencias de correu: %{link}'
+    view: 'Vista:'
+    view_profile: Veyer perfil
+    view_status: Veyer estau
+  applications:
+    created: Aplicación creyada exitosament
+    destroyed: Apicación eliminada exitosament
+    regenerate_token: Regenerar token d'acceso
+    token_regenerated: Token d'acceso regenerado exitosament
+    warning: Tiene muito cudiau con estes datos. No los compartas con dengún!
+    your_token: Lo tuyo token d'acceso
+  auth:
+    apply_for_account: Solicitar una cuenta
+    change_password: Clau
+    delete_account: Borrar cuenta
+    delete_account_html: Si deseya eliminar la suya cuenta, puede <a href="%{path}">proceder aquí</a>. Será pediu d'una confirmación.
+    description:
+      prefix_invited_by_user: "@%{name} te convida a unir-te a este servidor de Mastodon!"
+      prefix_sign_up: Une-te a Mastodon hue!
+      suffix: Con una cuenta podrás seguir a chent, publicar novedatz y intercambiar mensaches con usuarios de qualsequier servidor de Mastodon y mas!
+    didnt_get_confirmation: No recibió lo correu de confirmación?
+    dont_have_your_security_key: No tiens la tuya clau de seguranza?
+    forgot_password: Ixuplidés la tuya clau?
+    invalid_reset_password_token: Lo token de reinicio de clau ye invalido u expiró. Per favor pide un nuevo.
+    link_to_otp: Escribe un codigo de dos factors dende lo tuyo telefono u un codigo de recuperación
+    link_to_webauth: Utilice lo suyo dispositivo de clau de seguranza
+    log_in_with: Iniciar sesión con
+    login: Iniciar sesión
+    logout: Zarrar sesión
+    migrate_account: Mudar-se a unatra cuenta
+    migrate_account_html: Si deseyas reendrezar esta cuenta a unatra distinta, puetz <a href="%{path}">configurar-lo aquí</a>.
+    or_log_in_with: U inicia sesión con
+    privacy_policy_agreement_html: He leyiu y accepto la <a href="%{privacy_policy_path}" target="_blank">politica de privacidat</a>
+    providers:
+      cas: CAS
+      saml: SAML
+    register: Rechistrar-se
+    registration_closed: "%{instance} no ye acceptando nuevos miembros"
+    resend_confirmation: Tornar a ninviar lo correu de confirmación
+    reset_password: Restablir clau
+    rules:
+      preamble: Estas son establidas y aplicadas per los moderadors de %{domain}.
+      title: Qualques reglas basicas.
+    security: Cambiar clau
+    set_new_password: Establir nueva clau
+    setup:
+      email_below_hint_html: Si l'adreza de correu electronico que amaneixe contino ye incorrecta, se puede cambiar-la aquí y recibir un nuevo correu electronico de confirmación.
+      email_settings_hint_html: Lo correu electronico de confirmación estió ninviau a %{email}. Si ixa adreza de correu electronico no sía correcta, se puede cambiar-la en a configuración d'a cuenta.
+      title: Configuración
+    sign_up:
+      preamble: Con una cuenta en este servidor de Mastodon, podrás seguir a qualsequier atra persona en o ret, independientment d'o servidor en o qual se trobe.
+      title: Creyar cuenta de Mastodon en %{domain}.
+    status:
+      account_status: Estau d'a cuenta
+      confirming: Asperando confirmación de correu electronico.
+      functional: La tuya cuenta ye completament operativa.
+      pending: La suya solicitut ye pendient de revisión per los nuestros administradors. Ixo puede tardar bell tiempo. Vusté recibirá un correu electronico si lo solicitut sía aprebada.
+      redirecting_to: La tuya cuenta se troba inactiva perque ye estando reendrezada a %{acct}.
+      view_strikes: Veyer amonestacions pasadas contra la tuya cuenta
+    too_fast: Formulario ninviau masiau rapido, lo intente de nuevo.
+    use_security_key: Usar la clau de seguranza
+  authorize_follow:
+    already_following: Ya yes seguindo a esta cuenta
+    already_requested: Ya has ninviau una solicitut de seguimiento a ixa cuenta
+    error: Desafortunadament, ha ocurriu una error buscando la cuenta remota
+    follow: Seguir
+    follow_request: 'Tiens una solicitut de seguimiento de:'
+    following: 'Exito! Agora yes seguindo a:'
+    post_follow:
+      close: U, puetz simplament zarrar esta finestra.
+      return: Tornar ta lo perfil de l'usuario
+      web: Ir ta lo puesto web
+    title: Seguir a %{acct}
+  challenge:
+    confirm: Continar
+    hint_html: "<strong>Tip:</strong> No tornaremos a preguntar-te per la clau entre la siguient hora."
+    invalid_password: Clau incorrecta
+    prompt: Confirmar clau pa seguir
+  crypto:
+    errors:
+      invalid_key: no ye una clau Ed25519 u Curve25519 valida
+      invalid_signature: no ye una sinyatura Ed25519 valida
+  date:
+    formats:
+      default: "%d %b %Y"
+      with_month_name: "%d %B %Y"
+  datetime:
+    distance_in_words:
+      about_x_hours: "%{count} h"
+      about_x_months: "%{count}m"
+      about_x_years: "%{count}a"
+      almost_x_years: "%{count}a"
+      half_a_minute: Chusto agora
+      less_than_x_minutes: "%{count} m"
+      less_than_x_seconds: Chusto agora
+      over_x_years: "%{count}a"
+      x_days: "%{count} d"
+      x_minutes: "%{count} m"
+      x_months: "%{count}m"
+      x_seconds: "%{count} s"
+  deletes:
+    challenge_not_passed: Los datos escritos son incorrectos
+    confirm_password: Ingresa la tuya clau actual pa contrimostrar la tuya identidat
+    confirm_username: Escribe lo tuyo nombre d'usuario pa confirmar
+    proceed: Eliminar cuenta
+    success_msg: La tuya cuenta s'eliminó con exito
+    warning:
+      before: 'Antes de continar, per favor leye con atención las siguients notas:'
+      caches: Lo conteniu que ha estau almagazenau en caché per atros servidors puede persistir
+      data_removal: Las tuyas publicacions y la resta de datos s'eliminarán definitivament
+      email_change_html: Puetz <a href="%{path}"> cambiar la tuya adreza de correu electronico</a> sin eliminar la tuya cuenta
+      email_contact_html: Si encara no t'ha plegau, puetz escribir a <a href="mailto:%{email}">%{email}</a> pa pedir aduya
+      email_reconfirmation_html: Si no t'ha plegau lo correu de confirmación, puetz <a href="%{path}"> tornar a demandar-lo</a>
+      irreversible: No podrás restaurar ni reactivar la tuya cuenta
+      more_details_html: Pa mas detalles, veyer <a href="%{terms_path}"> la politica de privacidat</a>.
+      username_available: Lo tuyo nombre d'usuario tornará a estar disponible
+      username_unavailable: Lo tuyo nombre d'usuario no será disponible
+  disputes:
+    strikes:
+      action_taken: Acción realizada
+      appeal: Apelar
+      appeal_approved: Esta amonestación estió apelada exitosament y ya no ye valida
+      appeal_rejected: Se refusó l'apelación
+      appeal_submitted_at: Apelación ninviada
+      appealed_msg: La tuya apelación estió ninviada. Si s'apreba, se te notificará.
+      appeals:
+        submit: Ninviar apelación
+      approve_appeal: Aprebar apelación
+      associated_report: Informe asociau
+      created_at: Con calendata
+      description_html: Estas son las accions emprendidas contra la tuya cuenta y las alvertencias que t'han estau ninviadas per lo personal de %{instance}.
+      recipient: Endrezada a
+      reject_appeal: Refusar apelación
+      status: 'Publicación #%{id}'
+      status_removed: Publicación ya eliminada d'o sistema
+      title: "%{action} d'o %{date}"
+      title_actions:
+        delete_statuses: Eliminación de publicación
+        disable: Conchelación d'a cuenta
+        mark_statuses_as_sensitive: Marcando los mensaches como sensibles
+        none: Alvertencia
+        sensitive: Marcando la cuenta como sensible
+        silence: Limitación de cuenta
+        suspend: Suspensión de cuenta
+      your_appeal_approved: S'aprebó la tuya apelación
+      your_appeal_pending: Has ninviau una apelación
+      your_appeal_rejected: La tuya apelación ha estau refusada
+  domain_validator:
+    invalid_domain: no ye un nombre de dominio valido
+  errors:
+    '400': La solicitut que has ninviau no ye valida u yera malformada.
+    '403': No tiens permiso pa acceder ta esta pachina.
+    '404': La pachina que yeras buscando no existe.
+    '406': Esta pachina no ye disponible en o formato solicitau.
+    '410': La pachina que yeras buscando no existe mas.
+    '422':
+      content: Verificación de seguranza fallida. Yes blocando qualques cookies?
+      title: Verificación de seguranza fallida
+    '429': Asfixiado
+    '500':
+      content: Lo sentimos, bella cosa ha funcionau malament per la nuestra parte.
+      title: Esta pachina no ye correcta
+    '503': La pachina no s'ha puesto cargar a causa d'un fallo temporal d'o servidor.
+    noscript_html: Pa usar l'aplicación web de Mastodon, per favor activa Javascript. Alternativament, preba bella d'as <a href="%{apps_path}">aplicacions nativas</a> pa Mastodon pa la tuya plataforma.
+  existing_username_validator:
+    not_found: no podió trobar un usuario local con ixe nombre d'usuario
+    not_found_multiple: no podió trobar %{usernames}
+  exports:
+    archive_takeout:
+      date: Calendata
+      download: Descargar lo tuyo fichero
+      hint_html: Puetz solicitar un fichero d'os tuyos <strong>publicacions y fichers multimedia puyaus</strong>. Los datos exportaus serán en formato ActivityPub, leyibles per qualsequier software compatible. Puetz demandar un archivo cada 7 días.
+      in_progress: Recopilando lo tuyo fichero...
+      request: Solicitar lo tuyo fichero
+      size: Grandaria
+    blocks: Personas que has blocau
+    bookmarks: Marcadors
+    csv: CSV
+    domain_blocks: Bloqueyos de dominios
+    lists: Listas
+    mutes: Tiens en silencio
+    storage: Almagazenamiento
+  featured_tags:
+    add_new: Anyadir nuevo
+    errors:
+      limit: Ya has aconseguiu la cantidat maxima de hashtags
+    hint_html: "<strong>Qué son las etiquetas destacadas?</strong> S'amuestran de forma prominent en o tuyo perfil publico y permiten a los usuarios navegar per las tuyas publicacions publicas especificament baixo ixas etiquetas. Son una gran ferramienta pa fer un seguimiento de treballos creativos u prochectos a largo plazo."
+  filters:
+    contexts:
+      account: Perfils
+      home: Inicio y listas
+      notifications: Notificacions
+      public: Linias de tiempo publicas
+      thread: Conversacions
+    edit:
+      add_keyword: Anyadir parola clau
+      keywords: Parolas clau
+      statuses: Publicacions individuals
+      statuses_hint_html: Este filtro s'aplica a la selección de publicacions individuals independientment de si coinciden con as parolas clau contino. <a href="%{path}">Revise u elimine publicacions d'o filtro</a>.
+      title: Editar filtro
+    errors:
+      deprecated_api_multiple_keywords: Estes parametros no se pueden cambiar dende esta aplicación perque s'aplican a mas d'una parola clau de filtro. Utilice una aplicación mas recient u la interficie web.
+      invalid_context: Se suminstró un contexto invalido u vuedo
+    index:
+      contexts: Filtros en %{contexts}
+      delete: Borrar
+      empty: No tiens filtros.
+      expires_in: Caduca en %{distance}
+      expires_on: Expira lo %{date}
+      keywords:
+        one: "%{count} parola clau"
+        other: "%{count} parolas clau"
+      statuses:
+        one: "%{count} publicación"
+        other: "%{count} publicacions"
+      statuses_long:
+        one: "%{count} publicación individual amagada"
+        other: "%{count} publicacions individuals amagadas"
+      title: Filtros
+    new:
+      save: Alzar nuevo filtro
+      title: Anyadir nuevo filtro
+    statuses:
+      back_to_filter: Tornar a filtrar
+      batch:
+        remove: Eliminar d'o filtro
+      index:
+        hint: Este filtro s'aplica a la selección de publicacions individuals independientment d'atros criterios. Puede anyadir mas publicacions a este filtro dende la interficie web.
+        title: Publicacions filtradas
+  footer:
+    trending_now: Tendencia agora
+  generic:
+    all: Totz
+    all_items_on_page_selected_html:
+      one: "<strong>%{count}</strong> elemento en esta pachina ye triau."
+      other: Totz los <strong>%{count}</strong> elementos en esta pachina son triaus.
+    all_matching_items_selected_html:
+      one: "<strong>%{count}</strong> elemento que coincide con a suya busqueda ye triau."
+      other: Totz los <strong>%{count}</strong> elementos que coinciden con a suya busqueda son triaus.
+    changes_saved_msg: Cambios alzaus con exito!
+    copy: Copiar
+    delete: Eliminar
+    deselect: Deseleccionar tot
+    none: Cosa
+    order_by: Ordenar per
+    save_changes: Alzar cambios
+    select_all_matching_items:
+      one: Triar %{count} elemento que coincide con a tuya busqueda.
+      other: Triar totz los %{count} elementos que coinciden con a tuya busqueda.
+    today: hue
+    validation_errors:
+      one: Bella cosa no ye bien! Per favor, revisa la error
+      other: Bella cosa no ye bien! Per favor, revise %{count} errors mas abaixo
+  html_validator:
+    invalid_markup: 'contiene codigo HTML no valido: %{error}'
+  imports:
+    errors:
+      invalid_csv_file: 'Fichero CSV no valido. Error: %{error}'
+      over_rows_processing_limit: contiene mas de %{count} ringleras
+    modes:
+      merge: Unir
+      merge_long: Mantener rechistros existents y anyadir nuevos
+      overwrite: Sobrescribir
+      overwrite_long: Reemplazar rechistros actuals con os nuevos
+    preface: Puetz importar bells datos, como totas las personas que yes seguindo u blocando en a tuya cuenta en esta instancia, dende fichers exportaus d'unatra instancia.
+    success: Los suyos datos s'han cargau correctament y serán procesaus en brevedad
+    types:
+      blocking: Lista de blocaus
+      bookmarks: Marcadors
+      domain_blocking: Lista de dominios blocaus
+      following: Lista de seguius
+      muting: Lista de silenciaus
+    upload: Cargar
+  invites:
+    delete: Desactivar
+    expired: Expiradas
+    expires_in:
+      '1800': 30 menutos
+      '21600': 6 horas
+      '3600': 1 hora
+      '43200': 12 horas
+      '604800': 1 semana
+      '86400': 1 día
+    expires_in_prompt: Nunca
+    generate: Chenerar
+    invited_by: 'Estiés convidau per:'
+    max_uses:
+      one: 1 uso
+      other: "%{count} usos"
+    max_uses_prompt: Sin limite
+    prompt: Chenerar y compartir vinclos con atros pa conceder acceso a este nodo
+    table:
+      expires_at: Expira
+      uses: Usos
+    title: Convidar a chent
+  lists:
+    errors:
+      limit: Has aconseguiu la cantidat maxima de listas
+  login_activities:
+    authentication_methods:
+      otp: aplicación d'autenticación en dos pasos
+      password: clau
+      sign_in_token: codigo de seguranza per correu electronico
+      webauthn: claus de seguranza
+    description_html: Si veye una actividat que no reconoixe, considere cambiar la suya clau y habilitar l'autenticación de dos factors.
+    empty: No i hai historial d'autenticación disponible
+    failed_sign_in_html: Intento d'inicio de sesión fallido con %{method} de %{ip} (%{browser})
+    successful_sign_in_html: Inicio de sesión exitoso con %{method} dende %{ip} (%{browser})
+    title: Historial d'autenticación
+  media_attachments:
+    validations:
+      images_and_video: No se puede adchuntar un video a un estau que ya contienga imachens
+      not_ready: No se pueden adchuntar fichers que no s'han rematau de procesar. Intenta-lo de nuevo en un momento!
+      too_many: No se pueden adchuntar mas de 4 fichers
+  migrations:
+    acct: Moviu ta
+    cancel: Cancelar redireccionamiento
+    cancel_explanation: En cancelar lo redireccionamiento se reactivará la tuya cuenta actual, pero no recuperarás los seguidores que haigan estau tresladaus a l'atra cuenta.
+    cancelled_msg: Lo redireccionamiento s'ha cancelau correctament.
+    errors:
+      already_moved: ye la mesma cuenta a la quala ya has migrado
+      missing_also_known_as: no ye fendo referencia a esta cuenta
+      move_to_self: no puede estar la cuenta actual
+      not_found: no se podió trobar
+      on_cooldown: Yes en tiempo de reutilización
+    followers_count: Seguidores a lo momento de migrar
+    incoming_migrations: Migrar d'una cuenta diferent
+    incoming_migrations_html: Pa migrar d'unatra cuenta a esta, primero amenestes <a href="%{path}">creyar un alias d'a cuenta</a>.
+    moved_msg: La tuya cuenta agora se ye reendrezando a %{acct} y las tuyas seguidores se son migrando.
+    not_redirecting: La tuya cuenta no se ye reendrezando a garra atra cuenta actualment.
+    on_cooldown: Has migrado la tuya cuenta recientment. Esta función será disponible de nuevo en %{count} días.
+    past_migrations: Migracions pasadas
+    proceed_with_move: Migrar seguidores
+    redirected_msg: La tuya cuenta agora reendreza a %{acct}.
+    redirecting_to: La tuya cuenta se ye reendrezando a %{acct}.
+    set_redirect: Establir redirección
+    warning:
+      backreference_required: La nueva cuenta ha d'estar configurada primero pa fer referencia a esta
+      before: 'Antes de continar, per favor leye con atención las siguients notas:'
+      cooldown: Dimpués de migrar i hai un periodo d'aspera entre lo qual no podrás tornar a migrar
+      disabled_account: La tuya cuenta actual no será completament utilizable dimpués. Manimenos, tendrás acceso a la exportación de datos asinas como a la reactivación.
+      followers: Esta acción migrará a totz los seguidores d'a cuenta actual a la nueva cuenta
+      only_redirect_html: Alternativament, nomás puetz <a href="%{path}">meter una redirección en o tuyo perfil</a>.
+      other_data: No se moverán atros datos automaticament
+      redirect: Lo perfil d'a tuya cuenta actual s'actualizará con un aviso de redirección y será excluyiu d'as busquedas
+  moderation:
+    title: Moderación
+  move_handler:
+    carry_blocks_over_text: Este usuario se mudó dende %{acct}, que hebas blocau.
+    carry_mutes_over_text: Este usuario se mudó dende %{acct}, que hebas silenciau.
+    copy_account_note_text: 'Este usuario se mudó dende %{acct}, aquí yeran los tuyos notas anteriors sobre ell:'
+  navigation:
+    toggle_menu: Alternar menú
+  notification_mailer:
+    admin:
+      report:
+        subject: "%{name} ninvió un informe"
+      sign_up:
+        subject: "%{name} se rechistró"
+    favourite:
+      body: 'Lo tuyo estau estió marcau como favorito per %{name}:'
+      subject: "%{name} marcó como favorito lo tuyo estau"
+      title: Nuevo favorito
+    follow:
+      body: "%{name} te ye seguindo!"
+      subject: "%{name} te ye seguindo"
+      title: Nuevo seguidor
+    follow_request:
+      action: Administrar solicitutz pa seguir
+      body: "%{name} ha solicitau seguir-te"
+      subject: 'Seguidor pendient: %{name}'
+      title: Nueva solicitut pa seguir
+    mention:
+      action: Responder
+      body: 'Estiés mencionau per %{name} en:'
+      subject: Estiés mencionau per %{name}
+      title: Nueva mención
+    poll:
+      subject: Una enqüesta de %{name} ha rematau
+    reblog:
+      body: "%{name} ha retutau la tuya publicación:"
+      subject: "%{name} ha retutau la tuya publicación"
+      title: Nueva difusión
+    status:
+      subject: "%{name} acaba de publicar"
+    update:
+      subject: "%{name} editó una publicación"
+  notifications:
+    email_events: Eventos pa notificacions per correu electronico
+    email_events_hint: 'Tría los eventos pa los quals deseyas recibir notificacions:'
+    other_settings: Atros achustes de notificacions
+  number:
+    human:
+      decimal_units:
+        format: "%n %u"
+        units:
+          billion: MM
+          million: M
+          quadrillion: MB
+          thousand: m
+          trillion: B
+  otp_authentication:
+    code_hint: Escribe lo codigo chenerau per la tuya aplicación d'autentificación pa confirmar
+    description_html: Si habilitas <strong>autenticación de dos factors</strong> a traviés d'una aplicación d'autenticación, l'ingreso requerirá que sías en posesión d'o tuyo telefono, que chenerará codigos pa que ingreses.
+    enable: Activar
+    instructions_html: "<strong>Escaneya este codigo QR dende Google Authenticator u una aplicación TOPT semellant en o tuyo telefono</strong>. A partir d'agora, esta aplicación chenerará codigos que habrás d'ingresar quan quieras iniciar sesión."
+    manual_instructions: 'Si no puetz escaniar lo codigo QR y amenestes escrebir-lo manualment, este ye lo secreto en texto plano:'
+    setup: Configurar
+    wrong_code: Lo codigo ingresau ye invalido! Ye correcta la hora d'o dispositivo y lo servidor?
+  pagination:
+    newer: Mas nuevo
+    next: Proximo
+    older: Mas antigo
+    prev: Anterior
+    truncate: "&hellip;"
+  polls:
+    errors:
+      already_voted: Ya has votau en esta enqüesta
+      duplicate_options: contiene elementos duplicaus
+      duration_too_long: ye masiau luen en o futuro
+      duration_too_short: ye masiau luego
+      expired: La enqüesta ya ha rematau
+      invalid_choice: La opción de voto triada no existe
+      over_character_limit: no puede exceder %{max} caracters cadagún
+      too_few_options: ha de tener mas d'un elemento
+      too_many_options: no puede contener mas de %{max} elementos
+  preferences:
+    other: Atros
+    posting_defaults: Configuración per defecto de publicacions
+    public_timelines: Linias de tiempo publicas
+  privacy_policy:
+    title: Politica de Privacidat
+  reactions:
+    errors:
+      limit_reached: Limite de reaccions diferents aconseguiu
+      unrecognized_emoji: no ye un emoji conoixiu
+  relationships:
+    activity: Actividat d'a cuenta
+    dormant: Inactivo
+    follow_selected_followers: Seguir a los seguidores triaus
+    followers: Seguidores
+    following: Seguindo
+    invited: Convidau
+    last_active: Zaguera actividat
+    most_recent: Mas recient
+    moved: Moviu
+    mutual: Mutuo
+    primary: Prencipal
+    relationship: Relación
+    remove_selected_domains: Eliminar totz los seguidores d'os dominios triaus
+    remove_selected_followers: Eliminar los seguidores triaus
+    remove_selected_follows: Deixar de seguir a los usuarios triaus
+    status: Estau d'a cuenta
+  remote_follow:
+    missing_resource: No se podió trobar la URL de redirección requerida pa la tuya cuenta
+  reports:
+    errors:
+      invalid_rules: no fa referencia a reglas validas
+  rss:
+    content_warning: 'Alvertencia de conteniu:'
+    descriptions:
+      account: Publicacions publicas de @%{acct}
+      tag: 'Publicacions publicas etiquetadas con #%{hashtag}'
+  scheduled_statuses:
+    over_daily_limit: Ha superau lo limite de %{limit} publicacions programadas pa ixe día
+    over_total_limit: Ha superau lo limite de %{limit} publicacions programadas
+    too_soon: La calendata programada ha d'estar en o futuro
+  sessions:
+    activity: Zaguera actividat
+    browser: Navegador
+    browsers:
+      alipay: Alipay
+      blackberry: BlackBerry
+      chrome: Chrome
+      edge: Microsoft Edge
+      electron: Electron
+      firefox: Firefox
+      generic: Desconoixiu
+      ie: Internet Explorer
+      micro_messenger: MicroMessenger
+      nokia: Navegador de Nokia S40 Ovi
+      opera: Opera
+      otter: Otter
+      phantom_js: PhantomJS
+      qq: Navegador QQ
+      safari: Safari
+      uc_browser: Navegador UC
+      weibo: Weibo
+    current_session: Sesión actual
+    description: "%{browser} en %{platform}"
+    explanation: Estes son los navegadors web connectaus actualment en a tuya cuenta de Mastodon.
+    ip: IP
+    platforms:
+      adobe_air: Adobe Air
+      android: Android
+      blackberry: BlackBerry
+      chrome_os: ChromeOS
+      firefox_os: Firefox OS
+      ios: iOS
+      linux: Linux
+      mac: Mac
+      other: plataforma desconoixida
+      windows: Windows
+      windows_mobile: Windows Mobile
+      windows_phone: Windows Phone
+    revoke: Revocar
+    revoke_success: Sesión revocada exitosament
+    title: Sesions
+    view_authentication_history: Veyer historial d'autenticación d'a tuya cuenta
+  settings:
+    account: Cuenta
+    account_settings: Achustes d'a cuenta
+    aliases: Alias d'a cuenta
+    appearance: Apariencia
+    authorized_apps: Aplicacions autorizadas
+    back: Tornar ta l'inicio
+    delete: Borrar cuenta
+    development: Desembolique
+    edit_profile: Editar perfil
+    export: Exportar información
+    featured_tags: Hashtags destacaus
+    import: Importar
+    import_and_export: Importar y exportar
+    migrate: Migración de cuenta
+    notifications: Notificacions
+    preferences: Preferencias
+    profile: Perfil
+    relationships: Seguindo y seguidores
+    statuses_cleanup: Eliminación automatica de publicacions
+    strikes: Amonestacions de moderación
+    two_factor_authentication: Autenticación de dos factors
+    webauthn_authentication: Claus de seguranza
+  statuses:
+    attached:
+      audio:
+        one: "%{count} audio"
+        other: "%{count} audios"
+      description: 'Adchunto: %{attached}'
+      image:
+        one: "%{count} imachen"
+        other: "%{count} imachens"
+      video:
+        one: "%{count} video"
+        other: "%{count} videos"
+    boosted_from_html: Empentau dende %{acct_link}
+    content_warning: 'Alerta de conteniu: %{warning}'
+    default_language: Igual que l'idioma d'a interficie
+    disallowed_hashtags:
+      one: 'conteneba un hashtag no permitiu: %{tags}'
+      other: 'conteneba los hashtags no permitius: %{tags}'
+    edited_at_html: Editau %{date}
+    errors:
+      in_reply_not_found: Lo estau a lo qual intentas responder no existe.
+    open_in_web: Ubrir en web
+    over_character_limit: Limite de caracters de %{max} superau
+    pin_errors:
+      direct: Las publicacions que son visibles solo pa los usuarios mencionaus no pueden fixar-se
+      limit: Ya has fixau lo numero maximo de publicacions
+      ownership: La publicación d'unatra persona no puede fixar-se
+      reblog: Un boost no puede fixar-se
+    poll:
+      total_people:
+        one: "%{count} persona"
+        other: "%{count} chent"
+      total_votes:
+        one: "%{count} voto"
+        other: "%{count} votos"
+      vote: Vota
+    show_more: Amostrar mas
+    show_newer: Amostrar mas recients
+    show_older: Amostrar mas antigos
+    show_thread: Amostrar discusión
+    sign_in_to_participate: Rechistra-te pa participar en a conversación
+    title: "%{name}: «%{quote}»"
+    visibilities:
+      direct: Directa
+      private: Nomás amostrar a seguidores
+      private_long: Nomás amostrar a las tuyas seguidores
+      public: Publico
+      public_long: Totz pueden veyer
+      unlisted: Publico, pero no amostrar en a historia federada
+      unlisted_long: Totz pueden veyer, pero no ye listau en as linias de tiempo publicas
+  statuses_cleanup:
+    enabled: Borrar automaticament publicacions antigas
+    enabled_hint: Elimina automaticament las tuyas publicacions una vegada que aconsigan un branquil de tiempo especificau, de no estar que coincidan con bella d'as excepcions detalladas debaixo
+    exceptions: Excepcions
+    explanation: A causa que la eliminación de mensaches ye una operación costosa, esto se fa lentament, a lo largo d'un tiempo, quan lo servidor no ye ocupau. Per este motivo, puede que las tuyas publicacions sían borradas bella cosa dimpués que aconsigan lo branquil de tiempo especificau.
+    ignore_favs: Ignorar favoritos
+    ignore_reblogs: Ignorar reblogueos
+    interaction_exceptions: Excepcions basadas en interaccions
+    interaction_exceptions_explanation: Tiene en cuenta que no i hai guarencia que s'eliminen las publicacions que son per debaixo d'os branquils de favoritos u de reblogueos si los han superau en bell momento.
+    keep_direct: Mantener mensaches directos
+    keep_direct_hint: No elimina garra d'os tuyos mensaches directos
+    keep_media: Mantener publicacions con multimedia adchunto
+    keep_media_hint: No borra garra d'as tuyas publicacions con multimedia adchunto
+    keep_pinned: Mantener publicacions fixadas
+    keep_pinned_hint: No borra garra d'as tuyas publicacions fixadas
+    keep_polls: Mantener enqüestas
+    keep_polls_hint: No borra garra d'as tuyas enqüestas
+    keep_self_bookmark: Mantener publicacions a las qualas has anyadiu un marcador
+    keep_self_bookmark_hint: No borra las tuyas propias publicacions si les has anyadiu un marcador
+    keep_self_fav: Mantener publicacions que marqués como favoritas
+    keep_self_fav_hint: No borra publicacions tuyas que haigas marcau como favoritas
+    min_age:
+      '1209600': 2 semanas
+      '15778476': 6 meses
+      '2629746': 1 mes
+      '31556952': 1 anyo
+      '5259492': 2 meses
+      '604800': 1 semana
+      '63113904': 2 anyos
+      '7889238': 3 meses
+    min_age_label: Branquil de tiempo
+    min_favs: Mantener mensaches con un numero de favoritos mayor que
+    min_favs_hint: No borra garra d'as publicacions que haigan recibiu mas d'esta cantidat de favoritos. Deixa en blanco pa eliminar publicacions sin importar lo numero de favoritos
+    min_reblogs: Mantener publicacions reblogueadas mas de
+    min_reblogs_hint: No borra garra d'as publicacions que haigan estau reblogueadas mas d'este numero de vegadas. Deixa en blanco pa eliminar publicacions sin importar lo numero de reblogueos
+  stream_entries:
+    pinned: Publicación fixada
+    reblogged: retutau
+    sensitive_content: Conteniu sensible
+  strikes:
+    errors:
+      too_late: Ye masiau tarde pa apelar esta amonestación
+  tags:
+    does_not_match_previous_name: no coincide con o nombre anterior
+  themes:
+    contrast: Mastodon (Alto contraste)
+    default: Mastodon (Fosco)
+    mastodon-light: Mastodon (claro)
+  time:
+    formats:
+      default: "%d de %b de %Y, %H:%M"
+      month: "%b %Y"
+      time: "%H:%M"
+  two_factor_authentication:
+    add: Anyadir
+    disable: Deshabilitar
+    disabled_success: Autenticación de dople factor desactivada correctament
+    edit: Editar
+    enabled: L'autenticación de dos factors ye activada
+    enabled_success: Verificación de dos factors activada exitosament
+    generate_recovery_codes: Chenerar codigos de recuperación
+    lost_recovery_codes: Los codigos de recuperación te permiten obtener acceso a la tuya cuenta si pierdes lo tuyo telefono. Si has perdiu los tuyos codigos de recuperación, puetz regenerarlos aquí. Los tuyos viellos codigos de recuperación se ferán invalidos.
+    methods: Metodos d'autenticación de dople factor
+    otp: Aplicación d'autenticación
+    recovery_codes: Fer copias de seguranza d'os tuyos codigos de recuperación
+    recovery_codes_regenerated: Codigos de recuperación regenerados con exito
+    recovery_instructions_html: Si pierdes acceso a lo tuyo telefono, puetz usar un d'os siguients codigos de recuperación pa obtener acceso a la tuya cuenta. <strong>Mantenlos a fueras de</strong>. Per eixemplo, puetz imprentar-los y alzar-los con atros documentos importants.
+    webauthn: Claus de seguranza
+  user_mailer:
+    appeal_approved:
+      action: Ir ta la tuya cuenta
+      explanation: L'apelación de l'amonestación contra la tuya cuenta d'o %{strike_date} que ninviés lo %{appeal_date} estió aprebada. La tuya cuenta se troba de nuevo en buen estau.
+      subject: La tuya apelación d'o %{date} ha estau aprebada
+      title: Apelación aprebada
+    appeal_rejected:
+      explanation: L'apelación de l'amonestación contra la tuya cuenta d'o %{strike_date} que ninviés lo %{appeal_date} estió refusada.
+      subject: La tuya apelación d'o %{date} ha estau refusada
+      title: Apelación refusada
+    backup_ready:
+      explanation: Has solicitau una copia completa d'a tuya cuenta de Mastodon. Ya ye preparada pa descargar!
+      subject: Lo tuyo fichero ye preparau pa descargar
+      title: Descargar fichero
+    suspicious_sign_in:
+      change_password: cambies la tuya clau
+      details: 'Aquí son los detalles de l''inicio de sesión:'
+      explanation: Hemos detectau un inicio de sesión en a tuya cuenta dende una nueva adreza IP.
+      further_actions_html: Si no estiés tu, te recomendamos que %{action} immediatament y habilites l'autenticación de dos factors pa mantener la tuya cuenta segura.
+      subject: La tuya cuenta ha estau accedida dende una nueva adreza IP
+      title: Un nuevo inicio de sesión
+    warning:
+      appeal: Ninviar una apelación
+      appeal_description: Si creyes que esto ye una error, puetz ninviar una apelación a l'equipo de %{instance}.
+      categories:
+        spam: Spam
+        violation: Lo conteniu viola las siguients directrices d'a comunidat
+      explanation:
+        delete_statuses: S'ha determinau que beluns d'os tuyos mensaches violan una u mas directrices d'a comunidat y han estau per tanto eliminaus per los moderadors de %{instance}.
+        disable: Ya no puetz usar la tuya cuenta, pero lo tuyo perfil y la resta de datos remaneixen intactos. Puetz solicitar una copia de seguranza d'os tuyos datos, cambiar la configuración d'a tuya cuenta u eliminar-la.
+        mark_statuses_as_sensitive: Beluns d'os tuyos mensaches han estau marcaus como sensibles per los moderadors de %{instance}. Esto significa que la chent habrá de pretar los fichers multimedia en as publicacions antes que s'amuestre una vista previa. Puetz marcar los fichers multimedia como sensibles tu mesmo quan publiques en o futuro.
+        sensitive: A partir d'agora totz los fichers multimedia que puyes serán marcaus como sensibles y amagaus dimpués d'una alvertencia que caldrá clicar.
+        silence: Encara puetz usar la tuya cuenta, pero nomás las personas que te son seguindo veyerán las tuyas publicacions en este servidor, y puetz estar excluyiu de quantas funcionalidatz d'escubrimiento. Manimenos, atras cuentas podrán empecipiar a seguir-te manualment.
+        suspend: Ya no puetz utilizar la tuya cuenta, y lo tuyo perfil y la resta de datos ya no son accesibles. Encara puetz iniciar sesión pa solicitar una copia de seguranza d'os tuyos datos, dica que estes sían eliminaus per completo en uns 30 días, encara que conservaremos qualques datos basicos pa impedir que enguileyes la suspensión.
+      reason: 'Razón:'
+      statuses: 'Publicacions citadas:'
+      subject:
+        delete_statuses: Las tuyas publicacions en %{acct} han estau eliminadas
+        disable: La suya cuenta %{acct} ha estau conchelada
+        mark_statuses_as_sensitive: Las tuyas publicacions en %{acct} han estau marcadas como sensibles
+        none: Alvertencia pa %{acct}
+        sensitive: Las tuyas publicacions en %{acct} se marcarán como sensibles a partir d'agora
+        silence: La suya cuenta %{acct} ha estau limitada
+        suspend: La suya cuenta %{acct} ha estau suspendida
+      title:
+        delete_statuses: Publicacions eliminadas
+        disable: Cuenta conchelada
+        mark_statuses_as_sensitive: Publicacions marcadas como sensibles
+        none: Alvertencia
+        sensitive: Cuenta marcada como sensible
+        silence: Cuenta limitada
+        suspend: Cuenta suspendida
+    welcome:
+      edit_profile_action: Configurar lo perfil
+      edit_profile_step: Puetz personalizar lo tuyo perfil puyando una foto de perfil, cambiando lo tuyo nombre d'usuario y muito mas. Puetz optar per revisar a los nuevos seguidores antes que puedan seguir-te.
+      explanation: Aquí i hai qualques consellos pa empecipiar
+      final_action: Empecipiar a publicar
+      final_step: 'Empecipia a publicar! Mesmo sin seguidores, las tuyas publicacions publicas pueden estar vistas per atros, per eixemplo en a linia de tiempo local u en etiquetas. Tal vegada quieras presentar-te con a etiqueta de #presentacions.'
+      full_handle: Lo suyo sobrenombre completo
+      full_handle_hint: Esto ye lo que le dirías a los tuyos amigos pa que ells puedan ninviar-te mensaches u seguir-te dende unatra instancia.
+      subject: Bienveniu a Mastodon
+      title: Te damos la bienvenida a bordo, %{name}!
+  users:
+    follow_limit_reached: No puetz seguir a mas de %{limit} personas
+    invalid_otp_token: Codigo de dos factors incorrecto
+    otp_lost_help_html: Si perdiés a l'acceso a totz dos, puetz meter-te en contancto con %{email}
+    seamless_external_login: Has iniciau sesión dende un servicio externo, asinas que los achustes de clau y correu no son disponibles.
+    signed_in_as: 'Sesión iniciada como:'
+  verification:
+    explanation_html: 'Puetz <strong> verificar-te a tu mesmo como lo duenyo d''os links en os metadatos d''o tuyo perfil </strong>. Pa ixo, lo puesto vinculau ha de contener un vinclo a lo tuyo perfil de Mastodon. Lo vinclo en o tuyo puesto <strong> debe </strong> tener un atributo <code> rel="me"</code>. Lo texto d''o vinclo no importa. Aquí un eixemplo:'
+    verification: Verificación
+  webauthn_credentials:
+    add: Adhibir nueva clau de seguranza
+    create:
+      error: I habió un problema en anyadir la suya clau de seguranza. Per favor, intenta-lo de nuevo.
+      success: La suya clau de seguranza s'ha anyadiu correctament.
+    delete: Eliminar
+    delete_confirmation: Yes seguro que quiers eliminar esta clau de seguranza?
+    description_html: Si habilita la <strong>autenticación de clau de seguranza</strong>, iniciar sesión requerirá que utilice una d'as suyas claus de seguranza.
+    destroy:
+      error: I habió un problema en anyadir la suya clau de seguranza. Per favor, intenta-lo de nuevo.
+      success: La suya clau de seguranza s'ha eliminau correctament.
+    invalid_credential: Clau de seguranza no valida
+    nickname_hint: Escriba la embotada d'a suya nueva clau de seguranza
+    not_enabled: Encara no has activau WebAuthn
+    not_supported: Este navegador no suporta claus de seguranza
+    otp_required: Pa usar claus de seguranza, per favor habilite primero l'autenticación de dople factor.
+    registered_on: Rechistrau lo %{date}
diff --git a/config/locales/ar.yml b/config/locales/ar.yml
index 278fc52e6..e51c74bd5 100644
--- a/config/locales/ar.yml
+++ b/config/locales/ar.yml
@@ -373,6 +373,8 @@ ar:
       add_new: إضافة النطاق إلى القائمة البيضاء
       created_msg: تمت إضافة النطاق إلى القائمة البيضاء بنجاح
       destroyed_msg: تمت إزالة النطاق مِن القائمة البيضاء
+      export: تصدير
+      import: استيراد
       undo: إزالة من القائمة البيضاء
     domain_blocks:
       add_new: إضافة حجب جديد لنطاق
@@ -380,16 +382,21 @@ ar:
       destroyed_msg: تم إلغاء الحجب المفروض على النطاق
       domain: النطاق
       edit: تحرير النطاق المحظور
+      existing_domain_block: لقم قمت بالفعل بفرض حدود صارمة على %{name}.
       existing_domain_block_html: لقد فرضت بالفعل سابقاً حدوداً أكثر صرامة على %{name}، تحتاج إلى <a href="%{unblock_url}">إلغاء حظره</a> أولاً.
+      export: تصدير
+      import: استيراد
       new:
         create: إنشاء حظر
         hint: لن تمنع كتلة المجال إنشاء إدخالات حساب في قاعدة البيانات ، ولكنها ستطبق طرق الإشراف المحددة بأثر رجعي وتلقائي على هذه الحسابات.
         severity:
-          desc_html: "<strong>Silence</strong> سيجعل مشاركات الحساب غير مرئية لأي شخص لا يتبعها. <strong>Suspend</strong> سيزيل كل محتوى الحساب ووسائطه وبيانات ملفه التعريفي. Use <strong>None</strong> إذا كنت تريد فقط رفض ملفات الوسائط."
+          desc_html: "<strong>الكتم</strong> سوف يتسبب بإخفاء جميع المنشورات للحسابات للذين لا يتابعون هذه الحسابات بالفعل. <strong>التعليق</strong> سوف يتسبب بحذف المحتوى، الوسائط، ومعلومات الحسابات الخاصة بهذا النطاق من الخادم الخاص بك. استخدم <strong>بدون</strong> في حال أردت فقط رفض الوسائط فقط."
           noop: لا شيء
           silence: كتم
           suspend: تعليق
         title: حجب نطاق جديد
+      no_domain_block_selected: لم يطرأ أي تغيير على أي نطاق بما أنه لم يتم اختيار أي نطاق
+      not_permitted: غير مسموح لك بتنفيذ هذا الإجراء
       obfuscate: تشويش اسم النطاق
       obfuscate_hint: تشويش اسم النطاق جزئيا في القائمة إذا كان الإعلان عن قائمة قيود النطاق مفعلاً
       private_comment: تعليق خاص
@@ -412,8 +419,26 @@ ar:
       domain: النطاق
       new:
         create: إضافة نطاق
+        resolve: العثور على عنوان النطاق
         title: إضافة نطاق بريد جديد إلى اللائحة السوداء
+      no_email_domain_block_selected: لم يطرأ أي تغيير على أي نطاق بريد بما أنه لم يتم اختيار أي نطاق
+      resolved_dns_records_hint_html: عنوان النطاق يعود لخوادم البريد (MX) التالية وهو ما يسمح للنطاق باستقبال البريد. حظر خوادم البريد هذه سوف يتسبب في منع أي تسجيل خلال أي نطاق يستخدم هذه الخوادم حتى لو كان اسم النطاق مختلف عن اسماء خوادم البريد.<strong>احذر من حظر مزودي البريد العالميين.</strong>
+      resolved_through_html: الحصول على العنوان من خلال %{domain}
       title: القائمة السوداء للبريد الإلكتروني
+    export_domain_allows:
+      new:
+        title: استيراد قامة النطاقات المسموحة
+      no_file: لم يتم تحديد أيّ ملف
+    export_domain_blocks:
+      import:
+        description_html: أنت على وشك استيراد قائمة نطاقات محظورة. يرجى مراجعة هذه القائمة بعناية شديدة، خاصة إذا لم تقم بكتابة هذه القائمة بنفسك.
+        existing_relationships_warning: تم العثور على متابعات مستركة
+        private_comment_description_html: 'لمساعدتك على تتبع سبب حظر النطاقات المستوردة، سيتم إنشاء الحظر مع التعليق الخاص التالي: <q>%{comment}</q>'
+        private_comment_template: تم الاستيراد من %{source} بتاريخ %{date}
+        title: استيراد قامة النطاقات المحظورة
+      new:
+        title: استيراد قامة النطاقات المحظورة
+      no_file: لم يتم تحديد أيّ ملف
     follow_recommendations:
       description_html: "<strong>تساعد اقتراحات المتابعة المستخدمين في العثور بسرعة على محتوى مثير للاهتمام</strong>. عندما لا يتفاعل المستخدم مع الآخرين بشكل كافي لتشكيل اقتراحات متابعة مخصصة له، تظهر هذه الاقتراحات بدلاً من ذلك. يُعاد حسابهم بشكل يومي من مزيج حسابات لديها أكثر التفاعلات وأكثر عدد من المتابعين المحليين للغة معينة."
       language: للغة
@@ -424,7 +449,10 @@ ar:
       unsuppress: إستعادة إقتراحات المتابعة
     instances:
       availability:
+        failure_threshold_reached: تم الوصول إلى أقصى حد للفشل بتاريخ %{date}.
+        no_failures_recorded: لم يتم العثور على أي فشل.
         title: التوفر
+        warning: فشلت المحاولة الأخيرة للاتصال بهذا النطاق
       back_to_all: الكل
       back_to_limited: محدود
       back_to_warning: تحذير
@@ -444,18 +472,23 @@ ar:
       dashboard:
         instance_accounts_dimension: الحسابات الأكثر متابعة
         instance_accounts_measure: حسابات مخزنة
+        instance_followers_measure: متابعينا هناك
         instance_follows_measure: متابِعوهم هنا
         instance_languages_dimension: اللغات الأكثر استخدامًا
         instance_media_attachments_measure: مرفقات الوسائط المخزَّنة
+        instance_reports_measure: تبليغات بخصوصهم
+        instance_statuses_measure: المنشورات المخزنة
       delivery:
         all: الكل
         clear: مسح أخطاء التسليم
+        failing: فشلت
         restart: إعادة تشغيل التوصيل
         stop: إيقاف التوصيل
         unavailable: غير متوفر
       delivery_available: التسليم متوفر
       delivery_error_days: أيام أخطاء التوصيل
       delivery_error_hint: إذا كان التوصيل غير ممكناً لـ%{count} يوم، فستوضع عليها علامة {غير قابلة للتسليم} تلقائياً.
+      destroyed_msg: تم جدولة حذف بيانات النطاق %{domain}.
       empty: لم يتم العثور على نطاقات.
       known_accounts:
         few: "%{count} حسابات معروفة"
@@ -471,12 +504,14 @@ ar:
       private_comment: تعليق خاص
       public_comment: تعليق للعلن
       purge: تطهير
+      purge_description_html: في حال رأيت أن هذا النطاق لن يعود، يمكنك حذف جميع الحسابات والبيانات المرتبطة به من التخزين الخاص بك. هذا قد يحتاج إلى بعض الوقت للانتهاء.
       title: الفديرالية
       total_blocked_by_us: المحجوبة مِن طرفنا
       total_followed_by_them: يُتابِعونها
       total_followed_by_us: التي نُتابِعها
       total_reported: تقارير عنهم
       total_storage: الوسائط المُرفَقة
+      totals_time_period_hint_html: المجموع المعروض في الأسفل يشمل بيانات منذ البداية.
     invites:
       deactivate_all: تعطيلها كافة
       filter:
@@ -509,7 +544,7 @@ ar:
       disable: تعطيل
       disabled: مُعطَّل
       enable: تشغيل
-      enable_hint: عندما تقوم بتنشيط هذه الميزة، سوف يشترك خادومكم في جميع المنشورات القادمة مِن هذا المُرحِّل و سيشرع كذلك بإرسال كافة المنشورات العمومية إليه.
+      enable_hint: عندما تقوم بتنشيط هذه الميزة، سوف يشترك هذا الخادم في جميع المنشورات القادمة مِن هذا المُرحِّل و سيشرع كذلك بإرسال كافة المنشورات العمومية إليه.
       enabled: مُشغَّل
       inbox_url: رابط المُرحّل
       pending: في انتظار تسريح المُرحِّل
@@ -534,13 +569,20 @@ ar:
       action_log: سجل المراجعة
       action_taken_by: تم اتخاذ الإجراء مِن طرف
       actions:
+        delete_description_html: سيتم حذف المناشير المبلّغ عنها وسيتم تسجيل إنذار لمساعدتك في التعامل المستقبلي مع أي مخالفة جديدة من نفس الحساب.
+        mark_as_sensitive_description_html: سيتم تحديد الوسائط في المناشير المبلّغ عنها على أنها محتوى حساس وسيتم تسجيل إنذار لمساعدتك في التعامل المستقبلي مع أي مخالفة جديدة من نفس الحساب.
+        other_description_html: عرض المزيد من الخيارات للتحكم في االحسابات وتخصيص التواصل مع الحسابات المُبلّغ عنها.
         resolve_description_html: ولن يُتخذ أي إجراء ضد الحساب المبلّغ عنه، ولن تسلَّط عليه أية عقوبة، وسوف يُغلق التقرير.
+        silence_description_html: الحساب سيكون ظاهر فقط لمن يتابعه بالفعل أو قام بالبحث عنه بشكل مباشر مما يتسبب في تخفيض إمكانية رؤيته بشكل شبه كامل. يمكنك دائما التراجع عن هذا القرار.
+        suspend_description_html: سيتم قفل الحساب ومنع الوصول إلى محتوياته إلى أن يتم حذفه. سيكون من غير الممكن التفاعل مع الحساب. يمكن التراجع عن هذا خلال 30 يوم.
+      actions_description_html: تحديد الإجراءات التي يتعين اتخاذها لحل هذا التبليغ. إذا اتخذت إجراء عقابيا ضد الحساب المبلغ عنه، فسيتم إرسال إشعار بالبريد الإلكتروني إليهم، إلا عندما يتم تحديد فئة <strong>البريد المزعج.</strong>
       add_to_report: أضف المزيد إلى التقرير
       are_you_sure: هل أنت متأكد ؟
       assign_to_self: عين لي
       assigned: تعين رئيس
       by_target_domain: نطاق الحساب المبلّغ عنه
       category: الفئة
+      category_description_html: سيشار إلى سبب الإبلاغ عن هذا الحساب و/أو المحتوى في الاتصال بالحساب المبلغ عنه
       comment:
         none: لا شيء
       comment_description_html: 'لتوفير المزيد من المعلومات، كتب %{name}:'
@@ -559,6 +601,8 @@ ar:
         delete: حذف
         placeholder: قم بوصف الإجراءات التي تم اتخاذها أو أي تحديثات أخرى ذات علاقة...
         title: الملاحظات
+      notes_description_html: عرض الملاحظات وتركها للمشرفين الآخرين ولنفسك في المستقبل
+      quick_actions_description_html: 'قم بإجراء سريع أو التمرير للأسفل لرؤية المحتوى المبلغ عنه:'
       remote_user_placeholder: المستخدم البعيد من %{instance}
       reopen: إعادة فتح الشكوى
       report: 'الشكوى #%{id}'
@@ -569,6 +613,7 @@ ar:
       skip_to_actions: تخطي إلى الإجراءات
       status: الحالة
       statuses: المحتوى المبلغ عنه
+      statuses_description_html: سيشار إلى المحتوى المخالف في الاتصال بالحساب المبلغ عنه
       target_origin: مصدر الحساب المبلغ عنه
       title: الشكاوى
       unassign: إلغاء تعيين
@@ -586,28 +631,48 @@ ar:
         zero: "%{count} لا مستخدم"
       categories:
         administration: الإدارة
+        devops: DevOps
         invites: الدعوات
         moderation: الإشراف
         special: مميز
       delete: حذف
+      description_html: مع <strong>أدوار المستخدم</strong>، يمكنك تخصيص أي الوظائف ومجالات ماستدون التي يمكن للمستخدمين الوصول إليها.
+      edit: تعديل رتبة '%{name}' '
       everyone: الصلاحيات الافتراضية
+      everyone_full_description_html: هذا هو <strong>الدور الأساسي</strong> الذي يحمله <strong>جميع المستخدمين</strong>، حتى أولئك الذين ليس لديهم دور معين. جميع الأدوار الأخرى ترث الأذونات منه.
       privileges:
         administrator: مدير
+        administrator_description: المستخدمين الذين لديهم هذا التصريح سيتجاوزون جميع التصاريح
+        delete_user_data: احذف بيانات المستخدم
+        delete_user_data_description: يسمح للمستخدمين بحذف بيانات المستخدمين الآخرين دون تأخير
         invite_users: دعوة مستخدمين
+        invite_users_description: يسمح للمستخدمين بدعوة أشخاص جدد إلى الخادم
         manage_announcements: ادارة الاعلانات
+        manage_announcements_description: يسمح للمستخدمين بإدارة الإعلانات على الخادم
         manage_appeals: إدارة الاستئنافات
+        manage_appeals_description: يسمح للمستخدمين بمراجعة الطعن ضد إجراءات الإشراف
+        manage_blocks: إدارة الحظر
+        manage_blocks_description: يسمح للمستخدمين بحظر مزودي خدمات البريد الإلكتروني وعناوين IP
         manage_custom_emojis: إدارة الرموز التعبيريّة المخصصة
         manage_custom_emojis_description: السماح للمستخدمين بإدارة الرموز التعبيريّة المخصصة على الخادم
         manage_federation: إدارة الفديرالية
+        manage_federation_description: يسمح للمستخدمين بحظر أو السماح للاتحاد مع النطاقات الأخرى، والتحكم في إمكانية التسليم
         manage_invites: إدارة الدعوات
+        manage_invites_description: السماح للمستخدمين بالتصفح و تعطيل روابط الدعوة
         manage_reports: إدارة التقارير
+        manage_reports_description: يسمح للمستخدمين بمراجعة التباليغ وتنفيذ إجراءات الإشراف ضدهم
         manage_roles: إدارة الأدوار
+        manage_roles_description: يسمح للمستخدمين بإدارة وتعيين الأدوار الأقل رتبه منهم
         manage_rules: إدارة القواعد
+        manage_rules_description: يسمح للمستخدمين بتغيير قوانين الخادم
         manage_settings: إدارة الإعدادات
+        manage_settings_description: يسمح للمستخدمين بتغيير إعدادات الموقع
         manage_taxonomies: إدارة التصنيفات
         manage_taxonomies_description: السماح للمستخدمين بمراجعة المحتوى المتداول وتحديث إعدادات الوسم
         manage_user_access: إدارة وصول المستخدم
+        manage_user_access_description: يسمح للمستخدمين بتعطيل المصادقة الثنائية المستخدمين الآخرين، تغيير عنوان البريد الإلكتروني الخاص بهم، وإعادة تعيين كلمة المرور الخاصة بهم
         manage_users: إدارة المستخدمين
+        manage_users_description: يسمح للمستخدمين بعرض تفاصيل المستخدمين الآخرين وتنفيذ إجراءات الإشراف ضدهم
         view_dashboard: عرض لوحة التحكم
         view_devops_description: السماح للمستخدمين بالوصول إلى لوحة Sidekiq و pgHero
       title: الأدوار
@@ -744,12 +809,18 @@ ar:
       empty: لم تحدد أي إعدادات تحذير مسبقة بعد.
       title: إدارة نماذج التحذير
     webhooks:
+      add_new: إضافة نقطة نهاية
       delete: حذف
       disable: تعطيل
       disabled: معطَّل
       edit: تعديل نقطة النهاية
       enable: تشغيل
       enabled: نشِط
+      new: رابط ويب جديد
+      rotate_secret: تغيير الرمز
+      secret: رمز تسجيل الدخول
+      status: الحالة
+      webhook: رابط ويب
   admin_mailer:
     new_appeal:
       actions:
@@ -760,6 +831,9 @@ ar:
         sensitive: لجعل حسابهم كحساس
         silence: للحد من حسابهم
         suspend: لتعليق حسابهم
+      body: 'قام %{target} بالطعن في قرار %{action_taken_by} بتاريخ %{date} وهو كان %{type}. نص الطعن:'
+      next_steps: يمكنك الموافقة على الطعن وبالتالي التراجع عن قرار المشرف، أو يمكنك تجاهل الطعن.
+      subject: قام %{username} بالطعن بقرار المشرفين بخصوص %{instance}
     new_pending_account:
       body: تفاصيل الحساب الجديد أدناه. يمكنك الموافقة على هذا الطلب أو رفضه.
       subject: حساب جديد في انتظار مراجعة على %{instance} (%{username})
@@ -768,11 +842,13 @@ ar:
       body_remote: أبلغ شخص ما من %{domain} عن %{target}
       subject: تقرير جديد ل%{instance} (#%{id})
     new_trends:
+      body: 'تحتاج العناصر التالية إلى مراجعة قبل أن يمكن عرضها علناً:'
       new_trending_links:
         title: الروابط المتداولة
       new_trending_statuses:
         title: المنشورات الشائعة
       new_trending_tags:
+        no_approved_tags: لا توجد حاليًا هاشات شائعة موافق عليها.
         title: الوسوم المتداولة
   aliases:
     add_new: أنشئ كُنية
@@ -783,7 +859,7 @@ ar:
     remove: إلغاء ربط الكنية
   appearance:
     advanced_web_interface: واجهة الويب المتقدمة
-    advanced_web_interface_hint: 'إذا كنت ترغب في استخدام عرض شاشتك بأكمله، فواجهة الويب المتقدمة تسمح لك بضبط العديد من الأعمدة المختلفة لرؤية أكبر قدر من المعلومات التي ترغب فيها في آن واحد: الخيط الرئيسي والإخطارات والخيط الزمني الفدرالي وأي عدد من القوائم والوسوم.'
+    advanced_web_interface_hint: 'إذا كنت ترغب في استخدام عرض شاشتك بأكمله، فواجهة الويب المتقدمة تسمح لك بضبط العديد من الأعمدة المختلفة لرؤية أكبر قدر من المعلومات التي ترغب فيها في آن واحد: الخيط الرئيسي والإشعارات والخيط الزمني الفدرالي وأي عدد من القوائم والوسوم.'
     animations_and_accessibility: الإتاحة والحركة
     confirmation_dialogs: نوافذ التأكيد
     discovery: الاستكشاف
@@ -794,7 +870,7 @@ ar:
     sensitive_content: المحتوى الحساس
     toot_layout: شكل المنشور
   application_mailer:
-    notification_preferences: تعديل خيارات البريد الإلكتروني
+    notification_preferences: تعديل تفضيلات البريد الإلكتروني
     salutation: "%{name}،"
     settings: 'تغيير تفضيلات البريد الإلكتروني: %{link}'
     view: 'اعرض:'
@@ -808,7 +884,7 @@ ar:
     warning: كن حذرا مع هذه البيانات. لا تقم أبدا بمشاركتها مع الآخَرين!
     your_token: رمز نفاذك
   auth:
-    apply_for_account: انضم إلى قائمة الانتظار
+    apply_for_account: اطلُب حسابًا
     change_password: الكلمة السرية
     delete_account: حذف الحساب
     delete_account_html: إن كنت ترغب في حذف حسابك يُمكنك <a href="%{path}">المواصلة هنا</a>. سوف يُطلَبُ منك التأكيد قبل الحذف.
@@ -828,6 +904,7 @@ ar:
     migrate_account: الانتقال إلى حساب آخر
     migrate_account_html: إن كنت ترغب في تحويل هذا الحساب نحو حساب آخَر، يُمكِنُك <a href="%{path}">إعداده هنا</a>.
     or_log_in_with: أو قم بتسجيل الدخول بواسطة
+    privacy_policy_agreement_html: لقد قرأتُ وأوافق على سياسة الخصوصية <a href="%{privacy_policy_path}" target="_blank"></a>
     providers:
       cas: CAS
       saml: SAML
@@ -978,7 +1055,7 @@ ar:
     contexts:
       account: الملفات التعريفية
       home: الخيط الزمني الرئيسي
-      notifications: الإخطارات
+      notifications: الإشعارات
       public: الخيوط الزمنية العامة
       thread: المحادثات
     edit:
@@ -1026,7 +1103,7 @@ ar:
       merge_long: الإبقاء علي التسجيلات الحالية وإضافة الجديدة
       overwrite: إعادة الكتابة
       overwrite_long: استبدال التسجيلات الحالية بالجديدة
-    preface: بإمكانك استيراد بيانات قد قُمتَ بتصديرها مِن مثيل خادوم آخَر، كقوائم المستخدِمين الذين كنتَ تتابِعهم أو قُمتَ بحظرهم.
+    preface: بإمكانك استيراد بيانات قد قُمتَ بتصديرها مِن مثيل خادم آخَر، كقوائم المستخدِمين الذين كنتَ تتابِعهم أو قُمتَ بحظرهم.
     success: تم تحميل بياناتك بنجاح وسيتم معالجتها في الوقت المناسب
     types:
       blocking: قائمة المحظورين
@@ -1056,7 +1133,7 @@ ar:
       two: "%{count} استخدامات"
       zero: "%{count} استخدامات"
     max_uses_prompt: بلا حدود
-    prompt: توليد و مشاركة روابط للسماح للآخَرين بالنفاذ إلى مثيل الخادوم هذا
+    prompt: توليد و مشاركة روابط للسماح للآخَرين بالنفاذ إلى مثيل الخادم هذا
     table:
       expires_at: تنتهي مدة صلاحيتها في
       uses: عدد الاستخدامات
@@ -1230,6 +1307,7 @@ ar:
     browser: المتصفح
     browsers:
       alipay: أليباي
+      blackberry: بلاك بيري
       chrome: كروم
       edge: مايكروسوفت إيدج
       electron: إلكترون
@@ -1243,6 +1321,7 @@ ar:
       phantom_js: فانتوم جي آس
       qq: متصفح كيوكيو
       safari: سفاري
+      uc_browser: متصفح UC Browser
       weibo: وايبو
     current_session: الجلسة الحالية
     description: "%{browser} على %{platform}"
@@ -1251,6 +1330,7 @@ ar:
     platforms:
       adobe_air: أدوبي إيير
       android: أندرويد
+      chrome_os: نظام كروم أواس
       firefox_os: نظام فايرفكس أواس
       ios: نظام آي أواس
       linux: لينكس
@@ -1399,6 +1479,9 @@ ar:
     pinned: منشور مثبّت
     reblogged: شارَكَه
     sensitive_content: محتوى حساس
+  strikes:
+    errors:
+      too_late: فات الأوان للطعن في هذه العقوبة
   tags:
     does_not_match_previous_name: لا يطابق الإسم السابق
   themes:
diff --git a/config/locales/ast.yml b/config/locales/ast.yml
index acbdeb655..5033a4cbd 100644
--- a/config/locales/ast.yml
+++ b/config/locales/ast.yml
@@ -1,77 +1,168 @@
 ---
 ast:
   about:
-    about_mastodon_html: 'La rede social del futuru: ¡ensin anuncios nin vixilancia, con un diseñu éticu y descentralizáu! Controla los tos datos con Mastodon.'
+    about_mastodon_html: 'La rede social del futuru: ¡ensin anuncios nin vixilancia, con un diseñu éticu ya descentralizáu! Controla los tos datos con Mastodon.'
     contact_missing: Nun s'afitó
     contact_unavailable: N/D
     hosted_on: Mastodon ta agospiáu en %{domain}
+    title: Tocante a
   accounts:
     followers:
       one: Siguidor
       other: Siguidores
+    last_active: Última actividá
     nothing_here: "¡Equí nun hai nada!"
     posts:
       one: Artículu
       other: Artículos
     posts_tab_heading: Artículos
   admin:
+    account_actions:
+      action: Facer l'aición
+    account_moderation_notes:
+      create: Dexar la nota
     accounts:
       are_you_sure: "¿De xuru?"
       avatar: Avatar
       by_domain: Dominiu
+      disabled: Conxelóse
+      display_name: Nome visible
       domain: Dominiu
-      email: Corréu
+      email: Direición de corréu electrónicu
       followers: Siguidores
+      header: Testera
       ip: IP
       joined: Data de xunión
       location:
         local: Llocal
         remote: Remotu
         title: Llugar
+      moderation:
+        pending: Pendiente
       most_recent_activity: L'actividá más recién
       most_recent_ip: La IP más recién
       protocol: Protocolu
       reject: Refugar
       resend_confirmation:
-        already_confirmed: Esti usuariu yá ta confirmáu
-        send: Reunviar les instrucciones
+        already_confirmed: Esti usuariu xá ta confirmáu
+        send: Volver unviar el mensaxe de confirmación
+      search_same_email_domain: Otros perfiles col mesmu dominiu de corréu electrónicu
+      search_same_ip: Otros perfiles cola mesma IP
+      show:
+        created_reports: Informes fechos
       statuses: Artículos
       title: Cuentes
       username: Nome d'usuariu
       web: Web
+    action_logs:
+      actions:
+        approve_user_html: "%{name} aprobó'l rexistru de: %{target}"
+        change_email_user_html: "%{name} camudó la direición de corréu electrónicu del perfil %{target}"
+        change_role_user_html: "%{name} camudó'l rol de: %{target}"
+        confirm_user_html: "%{name} confirmó la direición de corréu electrónicu del perfil %{target}"
+        create_account_warning_html: "%{name} unvió una alvertencia a %{target}"
+        create_announcement_html: "%{name} creó l'anunciu «%{target}»"
+        create_domain_allow_html: "%{name} permitió la federación col dominiu %{target}"
+        create_domain_block_html: "%{name} bloquió'l dominiu %{target}"
+        create_user_role_html: "%{name} creó'l rol «%{target}»"
+        destroy_announcement_html: "%{name} desanició l'anunciu «%{target}»"
+        destroy_custom_emoji_html: "%{name} desanició'l fustaxe %{target}"
+        destroy_domain_block_html: "%{name} desbloquió'l dominiu %{target}"
+        destroy_status_html: "%{name} quitó l'artículu de: %{target}"
+        destroy_user_role_html: "%{name} desanició'l rol %{target}"
+        disable_custom_emoji_html: "%{name} desactivó'l fustaxe «%{target}»"
+        enable_custom_emoji_html: "%{name} activó'l fustaxe «%{target}»"
+        reject_user_html: "%{name} refugó'l rexistru de: %{target}"
+        remove_avatar_user_html: "%{name} quitó l'avatar de: %{target}"
+        update_announcement_html: "%{name} anovó l'anunciu «%{target}»"
+        update_custom_emoji_html: "%{name} anovó'l fustaxe «%{target}»"
+        update_status_html: "%{name} anovó l'artículu de: %{target}"
+        update_user_role_html: "%{name} camudó'l rol %{target}"
+      empty: Nun s'atopó nengún rexistru.
     announcements:
       destroyed_msg: "¡L'anunciu desanicióse correutamente!"
+      empty: Nun s'atopó nengún anunciu.
+      live: En direuto
       new:
+        create: Crear l'anunciu
         title: Anunciu nuevu
-      published_msg: "¡L'anunciu espublizóse coreutamente!"
+      publish: Espublizar
+      published_msg: "¡L'anunciu espublizóse correutamente!"
+      scheduled_msg: "¡Programóse l'espublizamientu del anunciu!"
       title: Anuncios
+      unpublish: Dexar d'espublizar
+      unpublished_msg: "¡L'anunciu dexó d'espublizase correutamente!"
       updated_msg: "¡L'anunciu anovóse correutamente!"
     custom_emojis:
       by_domain: Dominiu
-      copy_failed_msg: Nun pudo facese una copia llocal d'esi fustaxe
+      copy: Copiar
+      copy_failed_msg: Nun se pudo facer una copia llocal d'esi fustaxe
       emoji: Fustaxe
+      list: Llistar
+      no_emoji_selected: Nun camudó nengún fustaxe darréu que nun se seleicionó nengún
       not_permitted: Nun tienes permisu pa facer esta aición
-      update_failed_msg: Nun pudo anovase esi fustaxe
+      shortcode: Códigu curtiu
+      shortcode_hint: De 2 caráuteres como muncho, namás caráuteres alfanumbéricos ya guiones baxos
+      title: Fustaxes personalizaos
+      uncategorized: Ensin categoría
+      update_failed_msg: Nun se pudo anovar esi fustaxe
+      updated_msg: "¡El fustaxe anovóse correutamente!"
+      upload: Xubir
     dashboard:
+      active_users: perfiles n'activo
       interactions: interaiciones
       media_storage: Almacenamientu multimedia
+      new_users: perfiles nuevos
+      opened_reports: informes abiertos
+      pending_appeals_html:
+        one: "<strong>%{count}</strong> apellación pendiente"
+        other: "<strong>%{count}</strong> apellaciones pendientes"
+      pending_reports_html:
+        one: "<strong>%{count}</strong> informe pendiente"
+        other: "<strong>%{count}</strong> informes pendientes"
+      pending_tags_html:
+        one: "<strong>%{count}</strong> etiqueta pendiente"
+        other: "<strong>%{count}</strong> etiquetes pendientes"
+      pending_users_html:
+        one: "<strong>%{count}</strong> perfil pendiente"
+        other: "<strong>%{count}</strong> perfiles pendientes"
+      resolved_reports: informes resueltos
       software: Software
+      space: Usu del espaciu
+      title: Panel
       top_languages: Les llingües más actives
       website: Sitiu web
+    disputes:
+      appeals:
+        empty: Nun s'atopó nenguna apellación.
+        title: Apellaciones
     domain_blocks:
       domain: Dominiu
+      not_permitted: Nun tienes permisu pa facer esta aición
       private_comment: Comentariu priváu
       public_comment: Comentariu públicu
     email_domain_blocks:
+      dns:
+        types:
+          mx: Rexistru MX
       domain: Dominiu
+    export_domain_allows:
+      no_file: Nun se seleicionó nengún ficheru
+    follow_recommendations:
+      language: Pa la llingua
     instances:
       availability:
+        no_failures_recorded: Nun se rexistró nengún fallu.
         title: Disponibilidá
       by_domain: Dominiu
       content_policies:
         comment: Nota interna
         policy: Política
         reason: Motivu públicu
+      empty: Nun s'atopó nengún dominiu.
+      known_accounts:
+        one: "%{count} cuenta conocida"
+        other: "%{count} cuentes conocíes"
       private_comment: Comentariu priváu
       public_comment: Comentariu públicu
       title: Federación
@@ -88,77 +179,231 @@ ast:
         '31556952': 1 añu
         '86400': 1 día
         '94670856': 3 años
+    relationships:
+      title: 'Rellaciones de: %{acct}'
     relays:
-      save_and_enable: Guardar y activar
+      save_and_enable: Guardar ya activar
       status: Estáu
     reports:
+      account:
+        notes:
+          one: "%{count} nota"
+          other: "%{count} notes"
+      actions_description_html: Decidi qué aición tomar pa resolver esti informe. Si tomes una aición punitiva escontra la cuenta de la que s'informó, va unviase un avisu per corréu electrónicu a esa cuenta, esceuto cuando se seleiciona la categoría <strong>Puxarra</strong>.
+      add_to_report: Amestar más al informe
       are_you_sure: "¿De xuru?"
+      category: Categoría
+      category_description_html: El motivu pol que s'informó d'esta cuenta y/o conteníu cítase na comunicación cola cuenta de la que s'informó
+      comment_description_html: 'Pa fornir más información, %{name} escribió:'
+      created_at: Data del informe
+      delete_and_resolve: Desaniciar los artículos
+      mark_as_resolved: Marcar como resueltu
+      mark_as_sensitive: Marcar como sensible
+      mark_as_unresolved: Marcar como ensin resolver
+      no_one_assigned: Naide
+      notes:
+        create: Amestar la nota
+        create_and_resolve: Resolver con una nota
+        title: Notes
+      quick_actions_description_html: 'Toma una aición rápida o baxa pa ver el conteníu del que s''informó:'
+      report: 'Informe #%{id}'
+      reported_by: Perfil qu'informó
+      resolved: Resolvióse
+      resolved_msg: "¡L'informe resolvióse correutamente!"
+      skip_to_actions: Saltar a les aiciones
       status: Estáu
+      statuses: Conteníu del que s'informó
+      statuses_description_html: El conteníu ofensivu cítase na comunicación cola cuenta de la que s'informó
+      target_origin: Orixe de la cuenta de la que s'infomó
       title: Informes
+      unresolved: Ensin resolver
+      view_profile: Ver el perfil
     roles:
+      categories:
+        administration: Alministración
+        devops: DevOps
+        invites: Invitaciones
       everyone: Permisos predeterminaos
       permissions_count:
         one: "%{count} permisu"
         other: "%{count} permisos"
+      privileges:
+        manage_announcements: Xestionar los anuncios
+        manage_appeals: Xestionar les apellaciones
+        manage_blocks: Xestionar los bloqueos
+        manage_reports: Xestionar los informes
+        manage_roles: Xestionar los roles
+        manage_rules: Xestionar les regles
+        manage_settings: Xestionar la configuración
+        manage_taxonomies: Xestionar les taxonomíes
+        view_devops: DevOps
+      title: Roles
+    rules:
+      add_new: Amestar la regla
+    settings:
+      about:
+        manage_rules: Xestionar les regles del sirvidor
+        title: Tocante a
+      appearance:
+        preamble: Personaliza la interfaz web de Mastodon.
+        title: Aspeutu
+      branding:
+        preamble: La marca del to sirvidor estrémalu d'otros sirvidores de la rede. Ye posible qu'esta información apaeza nuna variedá d'entornos, como la interfaz web de Mastodon, les aplicaciones natives, nes previsualizaciones de los enllaces d'otros sitios web, dientro de les aplicaciones de mensaxería, etc. Por esti motivu, lo meyor ye qu'esta información seya clara, curtia ya concisa.
+        title: Marca
+      content_retention:
+        preamble: Controla cómo s'atroxa'l conteníu xeneráu polos perfiles en Mastodon.
+        title: Retención del conteníu
+      discovery:
+        public_timelines: Llinies de tiempu públiques
+        title: Descubrimientu
+        trends: Tendencies
+      domain_blocks:
+        all: A tol mundu
+        disabled: A naide
+        users: A los perfiles llocales
+      registrations:
+        preamble: Controla quién pue crear una cuenta nel sirvidor.
+        title: Rexistros
+      registrations_mode:
+        modes:
+          approved: Tol mundu pente una aprobación
+          none: Naide
+          open: Tol mundu
+      title: Configuración del sirvidor
+    site_uploads:
+      delete: Desaniciar el ficheru xubíu
     statuses:
+      language: Llingua
       metadata: Metadatos
+      original_status: Artículu orixinal
+      visibility: Visibilidá
     strikes:
+      actions:
+        delete_statuses: "%{name} desanició l'artículu de: %{target}"
+        mark_statuses_as_sensitive: "%{name} marcó l'artículu de %{target} como sensible"
+        none: "%{name} unvió una alvertencia a %{target}"
+        sensitive: "%{name} marcó la cuenta de %{target} como sensible"
+        suspend: "%{name} suspendió la cuenta de: %{target}"
       appeal_approved: Apellóse
       appeal_pending: Apellación pendiente
+    system_checks:
+      elasticsearch_running_check:
+        message_html: Nun se pudo conectar con Elasticsearch. Revisa que tea n'execución o desactiva la busca de testos completos
     title: Alministración
     trends:
+      links:
+        title: Enllaces en tendencia
+      only_allowed: Namás lo permitío
+      pending_review: Revisión pendiente
+      statuses:
+        title: Artículos en tendencia
       tags:
         dashboard:
           tag_accounts_measure: usos únicos
+        listable: Pue suxerise
+        no_tag_selected: Nun camudó nenguna etiqueta darréu que nun se seleicionó nenguna
+        not_usable: Nun se pue usar
+        title: Etiquetes en tendencia
+        usable: Pue usase
+      title: Tendencies
+      trending: En tendencia
     webhooks:
+      add_new: Amestar un estremu
+      delete: Desaniciar
+      description_html: Un <strong>webhook</strong> permite a Mastodon unviar <strong>avisos en tiempu real</strong> de los eventos escoyíos sobre la to aplicación pa qu'esta pueda <strong>executar aiciones automáticamente</strong>.
+      disable: Desactivar
+      disabled: Desactivóse
+      edit: Editar l'estremu
+      empty: Entá nun tienes nengún estremu de webhooks configuráu.
+      enable: Activar
+      enabled: N'activo
+      enabled_events:
+        one: 1 eventu activu
+        other: "%{count} eventos activos"
       events: Eventos
+      new: Webhook nuevu
+      rotate_secret: Cambiar el secretu
+      secret: Secretu de la firma
+      status: Estáu
+      title: Webhooks
+      webhook: Webhook
   admin_mailer:
     new_pending_account:
-      body: Los detalles de la cuenta nueva tán embaxo. Pues aprobar o refugar esta aplicación.
+      body: Los detalles de la cuenta nueva tán abaxo. Pues aprobar o refugar esta solicitú.
     new_report:
-      body: "%{reporter} informó de %{target}"
-      body_remote: Daquién dende %{domain} informó de %{target}
+      body: "%{reporter} informó de: %{target}"
+      body_remote: 'Daquién dende %{domain} informó de: %{target}'
+    new_trends:
+      body: 'Los elementos siguientes precisen una revisión enantes de que puedan apaecer públicamente:'
+      new_trending_links:
+        title: Enllaces en tendencia
+      new_trending_statuses:
+        title: Artículos en tendencia
+      new_trending_tags:
+        title: Etiquetes en tendencia
   aliases:
-    empty: Nun tienes nomatos.
+    empty: Nun tienes nengún nomatu.
   appearance:
     advanced_web_interface: Interfaz web avanzada
-    advanced_web_interface_hint: 'Si quies asegúrate de que s''use tol llargor de la pantalla, la interfaz web avanzada permítete configurar munches columnes estremaes pa ver tanta información al empar como quieras: Aniciu, avisos, llinia temporal federada, cualesquier cantidá de llistes y etiquetes...'
-    animations_and_accessibility: Animaciones y accesibilidá
+    advanced_web_interface_hint: 'Si quies asegúrate de que s''use tol llargor de la pantalla, la interfaz web avanzada permítete configurar columnes estremaes pa ver muncha más información al empar: Aniciu, avisos, llinia de tiempu federada ya cualesquier cantidá de llistes ya etiquetes.'
+    animations_and_accessibility: Animaciones ya accesibilidá
     confirmation_dialogs: Diálogos de confirmación
-    discovery: Descubrición
+    discovery: Descubrimientu
     localization:
       body: Mastodon tradúcenlu voluntarios,
       guide_link_text: tol mundu pue collaborar.
     sensitive_content: Conteníu sensible
-    toot_layout: Distribución de los barritos
+    toot_layout: Distribución de los artículos
   applications:
+    created: L'aplicación creóse correutamente
+    regenerate_token: Volver xenerar el pase d'accesu
+    token_regenerated: El pase d'accesu volvió xenerase correutamente
     warning: Ten munchu curiáu con estos datos, ¡enxamás nun los compartas con naide!
+    your_token: El pase d'accesu
   auth:
     change_password: Contraseña
     delete_account: Desaniciu de la cuenta
     delete_account_html: Si quies desaniciar la cuenta, pues facelo <a href="%{path}">equí</a>. Va pidísete que confirmes l'aición.
     description:
-      suffix: "¡Con una cuenta, vas ser a siguir a persones, espublizar anovamientos ya intercambiar mensaxes con usuarios de cualesquier sirvidor de Mastodon y más!"
+      suffix: "¡Con una cuenta, vas ser a siguir a persones, espublizar anovamientos ya intercambiar mensaxes con usuarios de cualesquier sirvidor de Mastodon ya más!"
     didnt_get_confirmation: "¿Nun recibiesti les instrucciones de confirmación?"
-    dont_have_your_security_key: "¿Nun tienes una clave de seguranza?"
+    dont_have_your_security_key: "¿Nun tienes una llave de seguranza?"
     forgot_password: "¿Escaeciesti la contraseña?"
     login: Aniciar la sesión
+    logout: Zarrar la sesión
     migrate_account: Mudase a otra cuenta
     migrate_account_html: Si deseyes redirixir esta cuenta a otra, pues <a href="%{path}">configuralo equí</a>.
+    privacy_policy_agreement_html: Lleí ya acepto la <a href="%{privacy_policy_path}" target="_blank">política de privacidá</a>
     providers:
       cas: CAS
       saml: SAML
     register: Rexistrase
     security: Seguranza
+    setup:
+      email_settings_hint_html: Unvióse'l mensaxe de confirmación a %{email}. Si la direición de corréu electrónicu nun ye correuta, pues camudala na configuración de la cuenta.
+    sign_up:
+      preamble: Con una cuenta nesti sirvidor de Mastodon vas ser a siguir a cualesquier perfil de la rede, independientemente del sirvidor onde s'agospie la so cuenta.
+      title: 'Creación d''una cuenta en: %{domain}.'
+    status:
+      account_status: Estáu de la cuenta
+      functional: La cuenta ta completamente operativa.
+      pending: La to solicitú ta pendiente de que la revise'l nuesu personal ya ye posible que tarde tiempu. Vas recibir un mensaxe si s'aprueba.
+    too_fast: El formulariu xubióse mui rápido, volvi tentalo.
   authorize_follow:
-    already_following: Yá tas siguiendo a esta cuenta
+    already_following: Xá tas siguiendo a esta cuenta
     already_requested: Yá unviesti una solicitú de siguimientu a esa cuenta
-    error: Desafortunadamente, hebo un fallu guetando la cuenta remota
+    error: Desafortunadamente, hebo un error al buscar la cuenta remota
     follow_request: 'Unviesti una solicitú de siguimientu a:'
     post_follow:
       close: O pues zarrar esta ventana.
-      return: Amosar el perfil del usuariu
+      return: Amosar el perfil de la cuenta
       web: Dir a la web
+  challenge:
+    hint_html: "<strong>Conseyu:</strong> nun vamos volver pidite la contraseña hasta dientro d'una hora."
+  crypto:
+    errors:
+      invalid_key: nun ye una clave ed25519 o curve25519 válida
+      invalid_signature: nun ye una clave ed25519 válida
   datetime:
     distance_in_words:
       about_x_hours: "%{count} h"
@@ -175,65 +420,104 @@ ast:
     challenge_not_passed: La información qu'introduxesti nun yera correuta
     confirm_password: Introduz la contraseña pa verificar la to identidá
     warning:
-      email_contact_html: Si entá nun aportó, pues unviar un corréu a<a href="mailto:%{email}">%{email}</a> pa más ayuda
-      more_details_html: Pa más detalles, mira la <a href="%{terms_path}">política de privacidá</a>.
+      email_contact_html: Si entá nun aportó, pues unviar un mensaxe a <a href="mailto:%{email}">%{email}</a> pa consiguir más ayuda
+      email_reconfirmation_html: Si nun recibiesti'l mensaxe de confirmación, pues <a href="%{path}">volver solicitalu</a>
+      irreversible: Nun vas ser a restaurar o volver activar la cuenta
+      more_details_html: Pa consiguir más detalles, mira la <a href="%{terms_path}">política de privacidá</a>.
   disputes:
     strikes:
+      action_taken: Aición tomada
+      appeal: Apellación
       appeal_rejected: Refugóse l'apellación
+      appeals:
+        submit: Unviu d'una apellación
       approve_appeal: Aprobar l'apellación
+      created_at: Data
       reject_appeal: Refugar l'apellación
+      status: 'Artículu #%{id}'
+      status_removed: L'artículu xá se quitó del sistema
+      your_appeal_pending: Unviesti una apellación
+      your_appeal_rejected: Refugóse la to apellación
   errors:
     '400': The request you submitted was invalid or malformed.
     '403': Nun tienes permisu pa ver esta páxina.
     '404': La páxina que busques nun ta equí.
     '406': Esta páxina nun ta disponible nel formatu solicitáu.
-    '410': La páxina que tabes guetando yá nun esiste.
+    '410': La páxina que busques xá nun esiste.
     '422':
-      content: Falló la verificación de seguranza. ¿Tas bloquiando les cookies?
-      title: Falló la verificación de seguranza
+      content: La verificación de seguranza falló. ¿Tas bloquiando les cookies?
+      title: La verificación de seguranza falló
     '429': Ficiéronse milenta solicitúes
-    '500': 
+    '500':
+      title: La páxina nun ye correuta
     '503': Nun se pudo sirvir la páxina pola mor d'un fallu temporal del sirvidor.
+    noscript_html: Pa usar l'aplicación web de Mastodon, activa JavaScript. Tamién pues probar una de les <a href="%{apps_path}">aplicaciones natives</a> de Mastodon pa la to plataforma.
   exports:
     archive_takeout:
       date: Data
       download: Baxar l'archivu
-      hint_html: Pues solicitar un archivu colos tos <strong>barritos y ficheros xubíos</strong>. Los datos esportaos van tar nel formatu ActivityPub, llexible pa cualesquier software que seya compatible. Pues solicitar un archivu cada 7 díes.
+      hint_html: Pues solicitar un archivu colos tos <strong>artículos ya ficheros xubíos</strong>. Los datos esportaos van tar nel formatu ActivityPub, llexible pa cualesquier software que seya compatible. Pues solicitar un archivu cada 7 díes.
       in_progress: Compilando l'archivu...
       request: Solicitar l'archivu
       size: Tamañu
-    blocks: Xente que bloquiesti
+    blocks: Perfiles que bloquiesti
+    bookmarks: Marcadores
+    csv: CSV
+    domain_blocks: Dominios bloquiaos
     lists: Llistes
     mutes: Xente que silenciesti
     storage: Almacenamientu multimedia
   featured_tags:
     add_new: Amestar
-    hint_html: "<strong>¿Qué son les etiquetes destacaes?</strong> Apaecen de forma bien visible nel perfil públicu y permite que les persones restolen los tos artículos públicos per duana d'eses etiquetes. Son una gran ferramienta pa tener un rexistru de trabayos creativos o de proyeutos a plazu llongu."
+    hint_html: "<strong>¿Qué son les etiquetes destacaes?</strong> Apaecen de forma bien visible nel perfil públicu ya permite que les persones restolen los tos artículos públicos per duana d'eses etiquetes. Son una gran ferramienta pa tener un rexistru de trabayos creativos o de proyeutos a plazu llongu."
   filters:
     contexts:
+      account: Perfiles
       notifications: Avisos
-      public: Llinies temporales públiques
+      public: Llinies de tiempu públiques
       thread: Conversaciones
+    edit:
+      keywords: Pallabres clave
+      statuses: Artículos individuales
+    errors:
+      deprecated_api_multiple_keywords: Estos parámetros nun se puen camudar dende esta aplicación porque s'apliquen a más d'una pallabra clave de la peñera. Usa una aplicación más recién o la interfaz web.
     index:
-      empty: Nun tienes peñeres.
+      empty: Nun tienes nenguna peñera.
+      keywords:
+        one: "%{count} pallabra clave"
+        other: "%{count} pallabres claves"
+      statuses:
+        one: "%{count} artículu"
+        other: "%{count} artículos"
       title: Peñeres
     new:
       title: Amestar una peñera nueva
+  footer:
+    trending_now: En tendencia
   generic:
     all: Too
+    all_items_on_page_selected_html:
+      one: Seleicionóse <strong>%{count}</strong> elementu d'esta páxina.
+      other: Seleicionáronse <strong>%{count}</strong> elementos d'esta páxina.
+    all_matching_items_selected_html:
+      one: Seleicionóse <strong>%{count}</strong> elementu que concasa cola busca.
+      other: Seleicionáronse <strong>%{count}</strong> elementos que concasen cola busca.
     changes_saved_msg: "¡Los cambeos guardáronse correutamente!"
+    copy: Copiar
+    delete: Desaniciar
+    deselect: Deseleicionar too
     order_by: Clasificación
     save_changes: Guardar los cambeos
     today: güei
   imports:
     modes:
       merge: Mecíu
-      merge_long: Caltién los rexistros esistentes y amesta otros nuevos
+      merge_long: Caltién los rexistros esistentes ya amiesta otros nuevos
       overwrite: Sobrescritura
       overwrite_long: Troca los rexistros actuales por otros nuevos
-    preface: Pues importar los datos qu'esportares dende otra instancia, como por exemplu la llista de persones que bloquiares o tuvieres siguiendo.
+    preface: Pues importar los datos qu'esportares dende otru sirvidor, como la llista de perfiles bloquiaos o que sigas.
     types:
-      blocking: Llista de xente bloquiao
+      blocking: Llista de perfiles bloquiaos
       domain_blocking: Llista de dominios bloquiaos
       following: Llista de siguidores
       muting: Llista de xente silenciao
@@ -255,7 +539,7 @@ ast:
       one: 1 usu
       other: "%{count} usos"
     max_uses_prompt: Nun hai llende
-    prompt: Xenera y comparti enllaces con otros pa da-yos accesu a esti sirividor
+    prompt: Xenera ya comparti enllaces con otros pa da-yos accesu a esti sirividor
     table:
       expires_at: Data de caducidá
       uses: Usos
@@ -263,37 +547,49 @@ ast:
   lists:
     errors:
       limit: Algamesti la cantidá máxima de llistes
+  login_activities:
+    authentication_methods:
+      password: contraseña
+      webauthn: llaves de seguranza
   media_attachments:
     validations:
-      images_and_video: Nun se pue axuntar nengún videu a un artículu que yá contién imáxenes
+      images_and_video: Nun se pue axuntar nengún videu a un artículu que xá contién imáxenes
       too_many: Nun se puen axuntar más de 4 ficheros
   migrations:
     acct: nome_usuariu@dominiu de la cuenta nueva
+    errors:
+      missing_also_known_as: nun ye un nomatu d'esta cuenta
+      move_to_self: nun pue ser la cuenta actual
     incoming_migrations: Mudase dende otra cuenta
     warning:
       followers: Esta aición va mover tolos siguidores de la cuenta actual a la nueva
   notification_mailer:
+    admin:
+      sign_up:
+        subject: "%{name} rexistróse"
     favourite:
+      body: "%{name} marcó como favoritu'l to artículu:"
+      subject: "%{name} marcó'l to artículu como favoritu"
       title: Favoritu nuevu
     follow:
-      body: "¡Agora %{name} ta siguiéndote!"
+      body: "¡Agora %{name} siguete!"
       title: Siguidor nuevu
     follow_request:
       body: "%{name} solicitó siguite"
-      title: Petición nueva de siguimientu
+      title: Solicitú de siguimientu nueva
     mention:
       body: "%{name} mentóte en:"
       subject: "%{name} mentóte"
       title: Mención nueva
     reblog:
-      body: "%{name} compartió'l to estáu:"
-      subject: "%{name} compartió'l to estáu"
+      body: "%{name} compartió'l to artículu:"
+      subject: "%{name} compartió'l to artículu"
       title: Compartición nueva de barritu
     update:
       subject: "%{name} editó un artículu"
   notifications:
-    email_events_hint: 'Esbilla los eventos de los que quies recibir avisos:'
-    other_settings: Otros axustes
+    email_events_hint: 'Seleiciona los eventos de los que quies recibir avisos:'
+    other_settings: Configuración d'otros avisos
   number:
     human:
       decimal_units:
@@ -303,28 +599,38 @@ ast:
           quadrillion: mil B
           thousand: mil
           trillion: B
+  otp_authentication:
+    description_html: Si actives l'<strong>autenticación en dos pasos</strong> con una aplicación autenticadora, al aniciar la sesión va ser obligatorio que tengas el teléfonu a mano, preséu que xenera los pases que tienes d'introducir.
+    manual_instructions: 'Si nun pues escaniar el códigu QR ya tienes d''introducilu manualmente, equí tienes el secretu en testu ensin formatu:'
+    setup: Configurar
   pagination:
     next: Siguiente
+    truncate: "&hellip;"
   polls:
     errors:
-      already_voted: Yá votesti nesta encuesta
-      expired: La encuesta yá finó
+      already_voted: Xá votesti nesta encuesta
+      expired: La encuesta xá finó
       invalid_choice: La opción de votu escoyida nun esiste
+      too_many_options: nun pue contener más de %{max} elementos
   preferences:
-    public_timelines: Llinies temporales públiques
+    public_timelines: Llinies de tiempu públiques
   privacy_policy:
     title: Política de privacidá
   relationships:
     activity: Actividá
     followers: Siguidores
+    last_active: Última actividá
     most_recent: Lo más recién
     relationship: Rellación
-    remove_selected_follows: Dexar de siguir a los usuarios seleicionaos
-    status: Estáu
+    remove_selected_follows: Dexar de siguir a los perfiles seleicionaos
+  scheduled_statuses:
+    over_daily_limit: Superesti la llende de %{limit} artículos programaos pa güei
+    over_total_limit: Superesti la llende de %{limit} artículos programaos
   sessions:
     browser: Restolador
     browsers:
       alipay: Alipay
+      blackberry: BlackBerry
       chrome: Chrome
       edge: Microsoft Edge
       electron: Electron
@@ -332,9 +638,13 @@ ast:
       generic: Restolador desconocíu
       ie: Internet Explorer
       micro_messenger: MicroMessenger
+      nokia: Restolador Ovi pa S40 de Nokia
       opera: Opera
       otter: Otter
       phantom_js: PhantomJS
+      qq: QQ Browser
+      safari: Safari
+      uc_browser: UC Browser
       weibo: Weibo
     current_session: Sesión actual
     description: "%{browser} en %{platform}"
@@ -342,6 +652,8 @@ ast:
     platforms:
       adobe_air: Adobe Air
       android: Android
+      blackberry: BlackBerry
+      chrome_os: ChromeOS
       firefox_os: Firefox OS
       ios: iOS
       linux: GNU/Linux
@@ -355,7 +667,7 @@ ast:
     title: Sesiones
   settings:
     account: Cuenta
-    account_settings: Axustes de la cuenta
+    account_settings: Configuración de la cuenta
     appearance: Aspeutu
     authorized_apps: Aplicaciones autorizaes
     back: Volver a Mastodon
@@ -364,12 +676,14 @@ ast:
     export: Esportación de datos
     featured_tags: Etiquetes destacaes
     import: Importación
-    import_and_export: Importación y esportación
+    import_and_export: Importación ya esportación
+    migrate: Migración de la cuenta
     notifications: Avisos
     preferences: Preferencies
     profile: Perfil
+    statuses_cleanup: Desaniciu automáticu d'artículos
     two_factor_authentication: Autenticación en dos pasos
-    webauthn_authentication: Claves d'autenticación
+    webauthn_authentication: Llaves de seguranza
   statuses:
     attached:
       audio:
@@ -382,10 +696,15 @@ ast:
         one: "%{count} videu"
         other: "%{count} vídeos"
     boosted_from_html: Compartióse'l barritu dende %{acct_link}
+    default_language: La mesma que la de la interfaz
+    errors:
+      in_reply_not_found: L'artículu al que tentes de responder paez que nun esiste.
+    open_in_web: Abrir na web
     pin_errors:
-      limit: Yá fixesti'l númberu máximu de barritos
+      direct: Nun se puen fixar los artículos que son visibles namás pa los usuarios mentaos
+      limit: Xá fixesti'l númberu máximu d'artículos
       ownership: Nun se pue fixar l'artículu d'otru perfil
-      reblog: Nun pue fixase un barritu compartíu
+      reblog: Nun se pue fixar un artículu compartíu
     poll:
       total_people:
         one: "%{count} persona"
@@ -394,13 +713,17 @@ ast:
         one: "%{count} votu"
         other: "%{count} votos"
     show_more: Amosar más
+    sign_in_to_participate: Anicia la sesión pa participar na conversación
     title: "%{name}: «%{quote}»"
     visibilities:
+      direct: Mensaxe direutu
       private: Namái siguidores
       private_long: Namái s'amuesen a los siguidores
+      public_long: Tol mundu pue velos
       unlisted: Nun llistar
-      unlisted_long: Tol mundu puen velos pero nun se llisten nes llinies temporales públiques
+      unlisted_long: Tol mundu pue velos, mas nun apaecen nes llinies de tiempu públiques
   statuses_cleanup:
+    exceptions: Esceiciones
     min_age:
       '1209600': 2 selmanes
       '15778476': 6 meses
@@ -417,7 +740,7 @@ ast:
   tags:
     does_not_match_previous_name: nun concasa col nome anterior
   themes:
-    contrast: Contraste altu
+    contrast: Mastodon (contraste altu)
     default: Mastodon (escuridá)
     mastodon-light: Mastodon (claridá)
   two_factor_authentication:
@@ -425,25 +748,45 @@ ast:
     enabled: L'autenticación en dos pasos ta activada
     enabled_success: L'autenticación en dos pasos activóse correutamente
     generate_recovery_codes: Xenerar códigos de recuperación
-    lost_recovery_codes: Los códigos de recuperación permítente recuperar l'accesu a la cuenta si pierdes el teléfonu. Si tamién pierdes estos códigos, pues rexeneralos equí. Los códigos de recuperación vieyos van invalidase.
+    lost_recovery_codes: Los códigos de recuperación permítente recuperar l'accesu a la cuenta si pierdes el teléfonu. Si tamién pierdes estos códigos, pues volver xeneralos equí. Los códigos de recuperación antiguos van anulase.
     recovery_codes: Códigos de recuperación
-    recovery_codes_regenerated: Los códigos de recuperación rexeneráronse correutamente
-    webauthn: Claves d'autenticación
+    recovery_codes_regenerated: Los códigos de recuperación volvieron xenerase correutamente
+    webauthn: Llaves de seguranza
   user_mailer:
+    suspicious_sign_in:
+      explanation: Detectemos un aniciu de sesión a la to cuenta dende una direición IP nueva.
+      subject: Accedióse a la to cuenta dende una direición IP nueva
     warning:
+      appeal: Unviar una apellación
+      appeal_description: Si te paez que ye un error, pues unviar una apellación al personal de %{instance}.
+      explanation:
+        disable: Xá nun pues usar la cuenta mas el perfil ya otros datos siguen intautos. Pues solicitar una copia de seguranza de los datos, camudar la configuración de la cuenta o desaniciar la cuenta.
       reason: 'Motivu:'
       subject:
+        disable: Conxelóse la to cuenta %{acct}
         suspend: Suspendióse la cuenta %{acct}
       title:
+        disable: Cuenta conxelada
         none: Alvertencia
         suspend: Cuenta suspendida
     welcome:
+      edit_profile_action: Configurar el perfil
+      explanation: Equí tienes dalgunos conseyos pa que comiences
+      final_action: Comenzar a espublizar
       subject: Afáyate en Mastodon
+      title: "¡Afáyate, %{name}!"
   users:
     follow_limit_reached: Nun pues siguir a más de %{limit} persones
-    invalid_otp_token: El códigu nun ye válidu
+    invalid_otp_token: El códigu de l'autenticación en dos pasos nun ye válidu
     otp_lost_help_html: Si pierdes l'accesu, contauta con %{email}
-    seamless_external_login: Aniciesti sesión pente un serviciu esternu, polo que los axustes de la contraseña y corréu nun tán disponibles.
+    seamless_external_login: Aniciesti la sesión pente un serviciu esternu, polo que la configuración de la contraseña ya de la direición de corréu electrónicu nun tán disponibles.
   verification:
     explanation_html: 'Pues <strong>verificate como la persona propietaria de los enllaces nos metadatos del to perfil</strong>. Pa ello, el sitiu web enllaciáu ha contener un enllaz al to perfil de Mastodon. Esti enllaz <strong>ha</strong> tener l''atributu <code>rel="me"</code>. El testu del enllaz nun importa. Equí tienes un exemplu:'
     verification: Verificación
+  webauthn_credentials:
+    create:
+      error: Hebo un problema al amestar la llave de seguranza. Volvi tentalo.
+    invalid_credential: La llave de seguranza nun ye válida
+    not_enabled: Entá nun activesti la función WebAuthn
+    not_supported: Esti restolador nun ye compatible coles llaves de seguranza
+    otp_required: Pa usar les llaves de seguranza, activa primero l'autenticación en dos pasos.
diff --git a/config/locales/be.yml b/config/locales/be.yml
new file mode 100644
index 000000000..3d79037c0
--- /dev/null
+++ b/config/locales/be.yml
@@ -0,0 +1,1047 @@
+---
+be:
+  about:
+    about_mastodon_html: 'Сацыяльная сетка будучыні: без рэкламы, без карпаратыўнага назірання, этычны дызайн і дэцэнтралізацыя! Валодайце сваімі дадзенымі з Mastodon'
+    contact_missing: Не зададзены
+    contact_unavailable: Недаступна
+    hosted_on: Mastodon знаходзіцца на %{domain}
+    title: Пра нас
+  accounts:
+    follow: Падпісацца
+    followers:
+      few: Падпісчыка
+      many: Падпісчыкаў
+      one: Падпісчык
+      other: Падпісчыкі
+    following: Падпісаны
+    instance_actor_flash: Гэты ўліковы запіс - лічбавы аватар, неабходны для рэпрэзентацыі самога сервера, а не якой-небудзь асобы. Ён выкарыстоўваецца для федэралізацыі і не можа быць замарожаны.
+    last_active: апошняя актыўнасць
+    link_verified_on: Права ўласнасці на гэтую спасылку праверана %{date}
+    nothing_here: Тут нічога няма!
+    pin_errors:
+      following: Вы павінны быць падпісаны на чалавека, якога вы жадаеце ўхваліць
+    posts:
+      few: Допісы
+      many: Допісаў
+      one: Допіс
+      other: Допісы
+    posts_tab_heading: Допісы
+  admin:
+    account_actions:
+      action: Выканаць дзеянне
+      title: Мадэраваць %{acct}
+    account_moderation_notes:
+      create: Пакінуць нататку
+      created_msg: Нататка мадэратара паспяхова створана!
+      destroyed_msg: Нататка мадэратара паспяхова выдалена!
+    accounts:
+      add_email_domain_block: Заблакіраваць дамен эл. пошты
+      approve: Пацвердзіць
+      approved_msg: Заяўка на рэгістрацыю %{username} ухваленая
+      are_you_sure: Вы ўпэўнены?
+      avatar: Аватар
+      by_domain: Дамен
+      change_email:
+        changed_msg: Пошта паспяхова зменена!
+        current_email: Бягучая эл. пошта
+        label: Змяніць адрас эл. пошты
+        new_email: Новая эл. пошта
+        submit: Змяніць адрас эл. пошты
+        title: Змяніць адрас эл. пошты для %{username}
+      change_role:
+        changed_msg: Роля паспяхова зменена!
+        label: Змяніць ролю
+        no_role: Няма ролі
+        title: Змяніць ролю для %{username}
+      confirm: Пацвердзіць
+      confirmed: Пацверджаны
+      confirming: Ідзе пацвярджэнне
+      custom: Уласнае
+      delete: Выдаліць даныя
+      deleted: Выдалены
+      demote: Панізіць у правах
+      destroyed_msg: Даныя %{username} цяпер у чарзе на прымусовае выдаленне
+      disable: Замарозіць
+      disable_sign_in_token_auth: Выключыць аўтэнтыфікацыю па e-mail токену
+      disable_two_factor_authentication: Адключыць 2FA
+      disabled: Замарожаны
+      display_name: Бачнае імя
+      domain: Дамен
+      edit: Рэдагаваць
+      email: Электронная пошта
+      email_status: Статус электроннай пошты
+      enable: Размарозіць
+      enable_sign_in_token_auth: Уключыць аўтэнтыфікацыю па e-mail токену
+      enabled: Уключана
+      enabled_msg: Уліковы запіс %{username} размарожаны
+      followers: Падпісчыкі
+      follows: Падпіскі
+      header: Загаловак
+      inbox_url: URL уваходных
+      invite_request_text: Прычына далучэння
+      invited_by: Запрошаны
+      ip: IP
+      joined: Далучыўся
+      location:
+        all: Усе
+        local: Лакальны
+        remote: Адлеглы
+        title: Месцазнаходжанне
+      login_status: Стан уваходу
+      media_attachments: Медыя дадаткі
+      memorialize: Даданае да памяці
+      memorialized: Запомненае
+      memorialized_msg: Уліковы запіс %{username} ператвораны ў мемарыяльны
+      moderation:
+        active: Актыўны
+        all: Усе
+        pending: Чакаюць
+        silenced: Абмежаваны
+        suspended: Прыпынены
+        title: Мадэрацыя
+      moderation_notes: Нататкі мадэратару
+      most_recent_activity: Апошняя актыўнасць
+      most_recent_ip: Нядаўнія IP
+      no_account_selected: Ніякіх уліковых запісаў не было зменена таму што ні адзін не быў выбраны
+      no_limits_imposed: Без абмежаванняў
+      no_role_assigned: Роля не прызначана
+      not_subscribed: Не падпісаны
+      pending: Чакае праверкі
+      perform_full_suspension: Выключыць
+      previous_strikes: Ранейшыя скаргі
+      promote: Павысіць
+      protocol: Пратакол
+      public: Публічны
+      push_subscription_expires: Падпіска PuSH канчаецца
+      redownload: Абнавіць профіль
+      redownloaded_msg: Профіль %{username} паспяхова абноўлены за арыгіналу
+      reject: Адхіліць
+      rejected_msg: Заяўка на рэгістрацыю %{username} адхіленая
+      remove_avatar: Выдаліць аватар
+      remove_header: Выдаліць шапку
+      removed_avatar_msg: Аватар %{username} выдалены
+      removed_header_msg: Выява загалоўку %{username} выдаленая
+      resend_confirmation:
+        already_confirmed: Гэты карыстальнік ужо пацверджаны
+        send: Даслаць пацвярджальны ліст зноў
+        success: Ліст з пацвярджэннем паспяхова дасланы!
+      reset: Скінуць
+      reset_password: Скід паролю
+      resubscribe: Аднавіць падпіску
+      role: Роля
+      search: Пошук
+      search_same_email_domain: Іншыя карыстальнікі з такім жа даменам эл. пошты
+      search_same_ip: Іншыя карыстальнікі з гэтым IP
+      security_measures:
+        only_password: Толькі пароль
+        password_and_2fa: Пароль і 2FA
+      sensitive: Прымусова пазначыць як далікатны
+      sensitized: Пазначаны як далікатны
+      shared_inbox_url: URL супольных уваходных
+      show:
+        created_reports: Створана скарг
+        targeted_reports: Атрымана скарг
+      silence: Абмежаваць
+      silenced: Абмежаванае
+      statuses: Допісы
+      strikes: Ранейшыя скаргі
+      subscribe: Падпіска
+      suspend: Прыпыніць
+      suspended: Прыпынена
+      suspension_irreversible: Даныя гэтага ўліковага запісу былі канчаткова выдалены. Вы можаце аднавіць уліковы запіс каб зрабіць яго зноў працоўным, але гэта не адновіць даныя якія былі змешчаны на ім раней.
+      suspension_reversible_hint_html: Уліковы запіс быў прыпынены і даныя будуць цалкам выдалены ад %{date}. Дагэтуль уліковы запіс можа быць адноўлены без якіх-небудзь шкодных наступстваў. Калі вы хочаце вынішчыць усе даныя ўліковага запісу зараз, вы можаце зрабіць гэта ніжэй.
+      title: Уліковыя запісы
+      unblock_email: Разблакіраваць адрас эл. пошты
+      unblocked_email_msg: Электронная пошта %{username} паспяхова разблакіраваная
+      unconfirmed_email: Непацверджаны адрас эл. пошты
+      undo_sensitized: Прыбраць прымусовую пазнаку далікатнасці
+      undo_silenced: Адмяніць ліміт
+      undo_suspension: Разблакаваць карыстальніка
+      unsilenced_msg: Блакіроўка акаунта карыстальніка  %{username} знятая
+      unsubscribe: Адпісацца
+      unsuspended_msg: Уліковы запіс %{username} адноўлены
+      username: Імя карыстальніка
+      view_domain: Паглядзець падсумаванне дамену
+      warn: Папярэдзіць
+      web: Інтэрнэт
+      whitelisted: Дазволена для федэрацыі
+    action_logs:
+      action_types:
+        approve_appeal: Ухваліць абскарджанне
+        approve_user: Зацвердзіць карыстальніка
+        assigned_to_self_report: Прызначыць скаргу
+        change_email_user: Змяніць E-mail карыстальніка
+        change_role_user: Змяніць ролю карыстальніка
+        confirm_user: Пацвердзіць карыстальніка
+        create_account_warning: Стварыць папярэджванне
+        create_announcement: Стварыць аб'яву
+        create_canonical_email_block: Стварыць блакіроўку электроннай пошты
+        create_custom_emoji: Стварыць адвольны эмодзі
+        create_domain_allow: Стварыць даменны дазвол
+        create_domain_block: Стварыць даменны блок
+        create_email_domain_block: Стварыць даменны блок электроннай пошты
+        create_ip_block: Стварыць IP правіла
+        create_unavailable_domain: Стварыць недаступны Дамен
+        create_user_role: Стварыць ролю
+        demote_user: Панізіць карыстальніка
+        destroy_announcement: Выдаліць аб'яву
+        destroy_canonical_email_block: Выдаліць блакіроўку электроннай пошты
+        destroy_custom_emoji: Выдаліць адвольны эмодзі
+        destroy_domain_allow: Выдаліць дамены дазвол
+        destroy_domain_block: Выдаліць даменны блок
+        destroy_email_domain_block: Выдаліць даменны блок электроннай пошты
+        destroy_instance: Вычысціць дамен
+        destroy_ip_block: Выдаліць IP правіла
+        destroy_status: Выдаліць допіс
+        destroy_unavailable_domain: Выдаліць недаступны дамен
+        destroy_user_role: Выдаліць ролю
+        disable_2fa_user: Адключыць двухэтапнае спраўджанне
+        disable_custom_emoji: Адключыць адвольныя эмодзі
+        disable_sign_in_token_auth_user: Адключыць аўтарызацыю праз электронную пошту для Карыстальніка
+        disable_user: Адключыць карыстальніка
+        enable_custom_emoji: Уключыць адвольныя эмодзі
+        enable_sign_in_token_auth_user: Адключыць аўтарызацыю праз электронную пошту для Карыстальніка
+        enable_user: Уключыць карыстальніка
+        memorialize_account: Запомніць уліковы запіс
+        promote_user: Павысіць правы Карыстальніка
+        reject_appeal: Адхіліць абскарджанне
+        reject_user: Адмовіць карыстальніку
+        remove_avatar_user: Выдаліць аватар
+        reopen_report: Пераадкрыць скаргу
+        resend_user: Даслаць пацвярджальны ліст зноў
+        reset_password_user: Скінуць пароль
+        resolve_report: Вырашыць скаргу
+        sensitive_account: Уліковы запіс прымусова пазначаны як далікатны
+        silence_account: Абмежаваць уліковы запіс
+        suspend_account: Выключыць уліковы запіс
+        unassigned_report: Прыбраць прызначэнне скаргі
+        unblock_email_account: Разблакіраваць электронны адрас
+        unsensitive_account: Прымусовая пазнака далікатнасці прыбраная
+        unsilence_account: Уліковы запіс больш не абмежаваны
+        unsuspend_account: Аднавіць уліковы запіс
+        update_announcement: Абнавіць аб'яву
+        update_custom_emoji: Абнавіць адвольныя эмодзі
+        update_domain_block: Актуалізаваць блакіроўку дамена
+        update_ip_block: Абнавіць IP правіла
+        update_status: Абнавіць допіс
+        update_user_role: Абнавіць ролю
+      actions:
+        approve_appeal_html: Карыстальнік %{name} ухваліў запыт на мадэрацыю %{target}
+        approve_user_html: "%{name} пацвердзіў рэгістрацыю ад %{target}"
+        assigned_to_self_report_html: "%{name} прызначыў справаздачу %{target} на сябе\n"
+        change_email_user_html: "%{name} змяніў паштовы адрас карыстальніка %{target}"
+        change_role_user_html: "%{name} змяніў ролю %{target}"
+        confirm_user_html: "%{name} пацвердзіў паштовы адрас %{target}"
+        create_account_warning_html: "%{name} накіраваў папярэджанне %{target}"
+        create_announcement_html: "%{name} зрабіў новую аб'яву %{target}"
+        create_canonical_email_block_html: "%{name} заблакаваў імэйл з хэшам %{target}"
+        create_custom_emoji_html: "%{name} загрузіў новы смайлік %{target}\n\n"
+        create_domain_allow_html: "%{name} дазволіў федэрацыю з даменам %{target}"
+        create_domain_block_html: "%{name} заблакіраваў дамен %{target}"
+        create_email_domain_block_html: "%{name} заблакіраваў дамен эл. пошты %{target}"
+        create_ip_block_html: "%{name} стварыў правіла для IP %{target}"
+        create_unavailable_domain_html: "%{name} прыпыніў дастаўку да дамена %{target}"
+        create_user_role_html: "%{name} зрабіў ролю %{target}"
+        demote_user_html: "%{name} прыбраў карыстальніка %{target}"
+        destroy_announcement_html: "%{name} выдаліў аб'яву %{target}"
+        destroy_canonical_email_block_html: "%{name} разблакаваў імэйл з хэшам %{target}"
+        destroy_custom_emoji_html: "%{name} выдаліў(а) эмоджі %{target}"
+        destroy_domain_allow_html: "%{name} зняў дазвол на аб'яднанне з даменам %{target}\n"
+        destroy_domain_block_html: "%{name} разблакаваў дамен %{target}"
+        destroy_email_domain_block_html: "%{name} зняў блакіроўку імэйла дамена %{target}\n"
+        destroy_instance_html: "%{name} цалкам прыбраў дамен %{target}"
+        destroy_ip_block_html: "%{name} выдаліў правіла для IP %{target}"
+        destroy_status_html: "%{name} выдаліў допіс %{target}"
+        destroy_unavailable_domain_html: "%{name} дазволіў працягнуць адпраўку на дамен %{target}"
+        destroy_user_role_html: "%{name} выдаліў ролю %{target}"
+        disable_2fa_user_html: "%{name} амяніў абавязковую двухфактарную верыфікацыю для карыстальніка %{target}"
+        disable_custom_emoji_html: "%{name} заблакіраваў эмодзі %{target}"
+        disable_sign_in_token_auth_user_html: "%{name} выключыў токен аўэнтыфікацыі e-mail для %{target}"
+        disable_user_html: "%{name} адключыў уваход для карыстальніка %{target}"
+        enable_custom_emoji_html: "%{name} уключыў эмодзі %{target}"
+        enable_sign_in_token_auth_user_html: "%{name} уключыў(ла) такенную e-mail праверку для %{target}"
+        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}"
+        resend_user_html: "%{name} зноў адправіў ліст з пацвярджэннем для %{target}"
+        reset_password_user_html: "%{name} скінул(а) пароль для %{target}"
+        resolve_report_html: "%{name} вырашыў скаргу %{target}"
+        sensitive_account_html: "%{name} адзначыў медыя %{target} як далікатнае"
+        silence_account_html: "%{name} абмежаваў уліковы запіс %{target}"
+        suspend_account_html: Уліковы запіс %{target} выключаны %{name}
+        unassigned_report_html: "%{name} знял(а) прызначэнне скаргі %{target}"
+        unblock_email_account_html: "%{name} разблакіраваў эл. пошту %{target}"
+        unsensitive_account_html: "%{name} зняў адзнаку далікатнае з медыя %{target}"
+        unsilence_account_html: "%{name} зняў ліміт з уліковага запісу %{target}"
+        unsuspend_account_html: Уліковы запіс %{target} адноўлены %{name}
+        update_announcement_html: "%{name} абнавіў аб'яву %{target}"
+        update_custom_emoji_html: "%{name} абнавіў эмодзі %{target}"
+        update_domain_block_html: "%{name} абнавіў блакіроўку дамена для %{target}"
+        update_ip_block_html: "%{name} змяніў правіла для IP %{target}"
+        update_status_html: "%{name} абнавіў допіс %{target}"
+        update_user_role_html: "%{name} змяніў ролю %{target}"
+      deleted_account: выдалены ўліковы запіс
+      empty: Логі не знойдзены.
+      filter_by_action: Фільтраваць па дзеянню
+      filter_by_user: Адфільтраваць па карыстальніку
+      title: Правер логі
+    announcements:
+      destroyed_msg: Аб'ява паспяхова выдалена!
+      edit:
+        title: Рэдагаваць абвестку
+      empty: Не знайдзена ніводнай абвесткі
+      live: Ужывую
+      new:
+        create: Стварыць аб'яву
+        title: Новая аб'ява
+      publish: Апублікаваць
+      published_msg: Аб'ява паспяхова апублікавана!
+      scheduled_for: Запланавана на %{time}
+      scheduled_msg: Аб'ява запланавана да публікацыі!
+      title: Аб'явы
+      unpublish: Зняць з публікацыі
+      unpublished_msg: Аб'ява паспяхова схована!
+      updated_msg: Аб'ява паспяхова адноўлена!
+    custom_emojis:
+      assign_category: Прызначыць катэгорыю
+      by_domain: Дамен
+      copied_msg: Лакальная копія эмодзі паспяхова створана
+      copy: Скапіраваць
+      copy_failed_msg: Немагчыма зрабіць лакальную копію гэтага эмодзі
+      create_new_category: Стварыць новую катэгорыю
+      created_msg: Эмодзі паспяхова створана!
+      delete: Выдаліць
+      destroyed_msg: Смайлік паспяхова прыбраны!
+      disable: Адключыць
+      disabled: Адключана
+      disabled_msg: Смайлік паспяхова адключаны
+      emoji: Эмодзі
+      enable: Уключыць
+      enabled: Уключана
+      enabled_msg: Смайлік паспяхова ўключаны
+      image_hint: PNG або GIF да %{size}
+      list: Паказваць
+      listed: Паказваецца
+      new:
+        title: Дадаць новы адвольны эмодзі
+      no_emoji_selected: Не атрымалася змяніць ніводзін смайлік, бо ніводзін смайлік не быў абраны.
+      not_permitted: Вам не дазволена выконваць гэта дзеянне
+      overwrite: Перазапісаць
+      shortcode: Кароткі код
+      shortcode_hint: Як менш 2 сімвалы, толькі лічбы, лацінскія літары ці падкрэсліванне
+      title: Адвольныя эмодзі
+      uncategorized: Без катэгорыі
+      unlist: Прыбраць
+      unlisted: Не ў стужках
+      update_failed_msg: Немагчыма абнавіць гэта эмодзі
+      updated_msg: Смайлік паспяхова абноўлены!
+      upload: Запампаваць
+    dashboard:
+      active_users: актыўныя карыстальнікі
+      interactions: узаемадзеянні
+      media_storage: Медыясховішча
+      new_users: новыя карыстальнікі
+      opened_reports: скарг прынята
+      pending_appeals_html:
+        few: "<strong>%{count}</strong> апеляцыі ў чарзе"
+        many: "<strong>%{count}</strong> апеляцый у чарзе"
+        one: "<strong>%{count}</strong> апеляцыя ў чарзе"
+        other: "<strong>%{count}</strong> апеляцыі ў чарзе"
+      resolved_reports: скарг разгледжана
+      software: Праграмнае забеспячэнне
+      sources: Крыніцы рэгістрацыі
+      space: Выкарыстанне дыскавай прасторы
+      title: Панэль кіравання
+      top_languages: Найбольш актыўныя мовы
+      top_servers: Найбольш актыўныя серверы
+      website: Вэб-сайт
+    disputes:
+      appeals:
+        empty: Апеляцыі не знойдзены.
+        title: Апеляцыі
+    domain_allows:
+      add_new: Дазволіць федэрацыю з даменам
+      created_msg: Дамен быў паспяхова дабаўлены да федэрацыі
+      destroyed_msg: Дамен быў выключаны з федэрацыі
+      export: Экспарт
+      import: Імпарт
+      undo: Забараніць федэрацыю з даменам
+    domain_blocks:
+      add_new: Дадаць новы блок дамену
+      created_msg: Даменны блок быў апрацаваны
+      destroyed_msg: Даменны блок быў адменены
+      domain: Дамен
+      edit: Рэдагаваць блакіраванне дамену
+      existing_domain_block: Вы ўжо налажылі стражэйшыя абмежаванні на %{name}.
+      existing_domain_block_html: Вы ўжо налажылі стражэйшыя абмежаванні на %{name}, спачатку вам неабходна <a href="%{unblock_url}">разблакаваць гэты акаўнт</a>.
+      export: Экспарт
+      import: Імпарт
+      new:
+        create: Стварыць блакіроўку
+        hint: Блакіроўка дамена не будзе перашкаджаць стварэнню запісаў уліковых запісаў у базе даных, але будзе заднім лікам і аўтаматычна прымяняць да гэтых уліковых запісаў пэўныя метады мадэрацыі.
+        severity:
+          desc_html: "<strong>Абмежаванне</strong> зробіць допісы людзей з гэтага дамену нябачнымі для тых, хто на іх не падпісаны. <strong>Выключэнне</strong> выдаліць усё змесціва, медыя і даныя профіляў дамену з вашага серверу. <strong>«Нічога»</strong> проста адхіліць медыя файлы."
+          noop: Пуста
+          silence: Абмежаваць
+          suspend: Выключыць
+        title: Новы блок дамену
+      no_domain_block_selected: Блакіроўкі даменаў не былі змененыя, таму што ні адзін з іх не быў выбраны
+      not_permitted: Вам забаронена выконваць гэта дзеянне
+      obfuscate: Схаваць назву дамена
+      obfuscate_hint: Часткова замаскіраваць даменнае імя ў спісе, калі прапанова спісу абмежаванняў дамена ўключана
+      private_comment: Прыватны каментарый
+      private_comment_hint: Пракаментуйце абмежаванне гэтага дамена для ўнутранага выкарыстання мадэратарамі.
+      public_comment: Публічны каментарый
+      public_comment_hint: Пракаментуйце гэтае абмежаванне дамена для агульнага выкарыстання, калі рэклама спісу абмежаванняў дамена ўключана.
+      reject_media: Забараніць медыя файлы
+      reject_media_hint: Выдаляе лакальна захаваныя мультымедыйныя файлы і адмаўляе спампоўваць іх у будучыні. Не мае значэння для часавага прыпынення
+      reject_reports: Адхіляе справаздачы
+      reject_reports_hint: Ігнараваць усе справаздачы з гэтага дамена. Не мае значэння для часовага прыпынення
+      undo: Скасаваць блакіраванне дамену
+      view: Праглядзець новы блок дамену
+    email_domain_blocks:
+      add_new: Дадаць
+      created_msg: Дамен эл. пошты паспяхова заблакіраваны
+      delete: Выдаліць
+      dns:
+        types:
+          mx: MX запіс
+      domain: Дамен
+      new:
+        create: Дадаць дамен
+        resolve: Вызначыць дамен
+        title: Заблакіраваць новы дамен эл. пошты
+      no_email_domain_block_selected: Блакіроўкі даменаў эл. пошты не былі змененыя, таму што ні адзін з іх не быў выбраны
+      resolved_dns_records_hint_html: Даменнае імя ператвараецца ў наступныя дамены MX, якія ў канчатковым выніку адказваюць за прыём электроннай пошты. Блакаванне дамена MX заблакуе рэгістрацыю з любога адраса электроннай пошты, які выкарыстоўвае той жа дамен MX, нават калі бачнае імя дамена адрозніваецца. <strong>Будзьце асцярожныя, каб не заблакіраваць асноўных пастаўшчыкоў электроннай пошты.</strong>
+      resolved_through_html: Вызначына каля %{domain}
+      title: Заблакаваныя паштовыя дамены
+    export_domain_allows:
+      new:
+        title: Імпарт дазволаў дамена
+      no_file: Файл не выбраны
+    export_domain_blocks:
+      import:
+        description_html: Вы збіраецеся імпартаваць спіс даменных блокаў. Калі ласка, праглядзіце гэты спіс вельмі ўважліва, асабліва калі вы асабіста не з'яўляецеся аўтарам гэтага спісу.
+        existing_relationships_warning: Існуюць наступныя сувязі
+        private_comment_description_html: 'Каб дапамагчы вам адсочваць, адкуль паходзяць імпартаваныя блокі, імпартаваныя блокі будуць створаны з наступным прыватным каментарыем: <q>%{comment}</q>'
+        private_comment_template: Імпартавана з %{source} %{date}
+        title: Імпарт блакіровак дамену
+      new:
+        title: Імпарт блакіровак дамену
+      no_file: Файл не выбраны
+    follow_recommendations:
+      description_html: "<strong>Рэкамендацыі падпісак, дапамогаюць новым карыстальнікам хутка знайсці цікавы кантэнт</strong>. Калі карыстальнік недастаткова ўзаемадзейнічаў з іншымі, каб сфарміраваць персанальныя рэкамендацыі прытрымлівацца, замест гэтага рэкамендуюцца гэтыя ўліковыя запісы. Яны штодзённа пераразлічваюцца з сумесі ўліковых запісаў з самымі апошнімі ўзаемадзеяннямі і найбольшай колькасцю мясцовых падпісчыкаў для дадзенай мовы."
+      language: Для мовы
+      status: Статус
+      suppress: Схаваць рэкамендацыі падпісак
+      suppressed: Схаваныя
+      title: Рэкамендацыі падпісак
+      unsuppress: Аднавіць рэкамендацыі падпісак
+    instances:
+      availability:
+        failure_threshold_reached: Парог памылак дасягнуты %{date}.
+        failures_recorded:
+          few: Памылковых спроб за %{count} розныя дні.
+          many: Памылковых спроб за %{count} розных дзён.
+          one: Памылковых спроб за %{count} дзень.
+          other: Памылковых спроб за %{count} розныя дні.
+        no_failures_recorded: Памылак не зарэгістравана.
+        title: Дасяжнасць
+        warning: Апошняя спроба падключэння да гэтага серверу была няўдалай
+      back_to_all: Усе
+      back_to_limited: Абмежаваныя
+      back_to_warning: Папярэджанне
+      by_domain: Дамен
+      confirm_purge: Вы ўпэўненыя, што хочаце незваротна выдаліць даныя з гэтага дамена?
+      content_policies:
+        comment: Унутраная нататка
+        description_html: Вы можаце вызначыць палітыку кантэнту, якая будзе прымяняцца да ўсіх уліковых запісаў гэтага дамена і любога з яго субдаменаў.
+        policies:
+          reject_media: Адхіліць мультымедыя
+          reject_reports: Адхіліць справаздачы
+          silence: Ліміт
+          suspend: Выключыць
+        policy: Палітыка
+        reason: Публічная прычына
+        title: Палітыкі кантэнту
+      dashboard:
+        instance_accounts_dimension: Уліковыя запісы з найбольшай колькасцю падпісак
+        instance_accounts_measure: захаваныя ўліковыя запісы
+        instance_followers_measure: нашых падпісчыкаў там
+        instance_follows_measure: іх падпісчыкаў тут
+        instance_languages_dimension: Папулярныя мовы
+        instance_media_attachments_measure: захаваныя медыя-ўкладанні
+        instance_reports_measure: справаздач пра іх
+        instance_statuses_measure: захаваных паведамленняў
+      delivery:
+        all: Усе
+        clear: Выдаліць памылкі дастаўкі
+        failing: Збой
+        restart: Перазапусціць дастаўку
+        stop: Спыніць дастаўку
+        unavailable: Недаступна
+      delivery_available: Дастаўка даступна
+      delivery_error_days: Дзён памылак дастаўкі
+      destroyed_msg: Даныя з %{domain} цяпер стаяць у чарзе на неадкладнае выдаленне.
+      empty: Даменаў не знойдзена.
+      moderation:
+        all: Усе
+        limited: Абмежаваныя
+        title: Мадэрацыя
+      private_comment: Прыватны каментарый
+      public_comment: Публічны каментарый
+      purge: Ачысціць
+      purge_description_html: Калі вам здаецца, што гэты дамен больш не будзе працаваць, вы можаце выдаліць усе даныя ўліковых запісаў і звязаныя з даменам даныя з вашага сховішча. Гэта можа заняць нейкі час.
+      title: Федэрацыя
+      total_blocked_by_us: Заблакіравана намі
+      total_reported: Скаргі на іх
+    invites:
+      deactivate_all: Дэактываваць усё
+      filter:
+        all: Усе
+        title: Фільтр
+      title: Запрашэнні
+    ip_blocks:
+      add_new: Стварыць правіла
+      created_msg: Новае IP правіла паспяхова дададзена
+      delete: Выдаліць
+      expires_in:
+        '1209600': 2 тыдні
+        '15778476': 6 месяцаў
+        '2629746': 1 месяц
+        '31556952': 1 год
+        '86400': 1 дзень
+        '94670856': 3 гады
+      new:
+        title: Стварыць новае IP правіла
+      title: IP правілы
+    relays:
+      add_new: Дадаць новы рэтранслятар
+      delete: Выдаліць
+      disable: Адключыць
+      disabled: Адключана
+      enable: Уключыць
+      enabled: Уключана
+      save_and_enable: Захаваць і ўключыць
+      status: Стан
+      title: Рэтранслятары
+    report_notes:
+      created_msg: Скарга паспяхова створана!
+      destroyed_msg: Скарга паспяхова выдалена!
+      today_at: Сёння а %{time}
+    reports:
+      action_log: Журнал аўдыту
+      actions:
+        suspend_description_html: Профіль і яго змесціва стане недаступным да моманту канчатковага выдалення. Камунікацыя з уліковым запісам будзе немагчымай. Можна скасаваць на працягу 30 дзён.
+      are_you_sure: Вы ўпэўнены?
+      assign_to_self: Прызначыць мне
+      assigned: Прызначаны мадэратар
+      category: Катэгорыя
+      comment:
+        none: Пуста
+      delete_and_resolve: Выдаліць допісы
+      no_one_assigned: Ніводны
+      notes:
+        create: Дадаць нататку
+        create_and_resolve: Вырашыць з нататкай
+        create_and_unresolve: Паўторна адкрыць з нататкай
+        delete: Выдаліць
+        title: Нататкі
+      resolved: Вырашана
+      status: Стан
+      title: Скаргі
+      updated_at: Абноўлена
+      view_profile: Паглядзець профіль
+    roles:
+      add_new: Дадаць ролю
+      assigned_users:
+        few: "%{count} карыстальнікі"
+        many: "%{count} карыстальнікаў"
+        one: "%{count} карыстальнік"
+        other: "%{count} карыстальніка"
+      categories:
+        administration: Адміністрацыя
+        devops: DevOps
+        invites: Запрашэнні
+        moderation: Мадэрацыя
+        special: Спецыяльны
+      delete: Выдаліць
+      edit: Рэдагаваць ролю "%{name}"
+      everyone: Дазволы па змаўчанні
+      permissions_count:
+        few: "%{count} дазволы"
+        many: "%{count} дазволаў"
+        one: "%{count} дазвол"
+        other: "%{count} дазвола"
+      privileges:
+        administrator: Адміністратар
+        delete_user_data: Выдаленне даных карыстальнікаў
+        invite_users: Запрашэнне карыстальнікаў
+        invite_users_description: Дазваляе запрашаць новых людзей на сервер
+        manage_announcements: Кіраванне аб'явамі
+        manage_announcements_description: Дазваляе кіраваць аб'явамі на серверы
+        manage_appeals: Кіраванне апеляцыямі
+        manage_appeals_description: Дазваляе карыстальнікам разглядаць апеляцыі на дзеянні мадэратара
+        manage_blocks: Кіраванне блакіроўкамі
+        manage_blocks_description: Дазваляе блакаваць пэўныя паштовыя правайдэры і IP адрасы
+        manage_custom_emojis: Кіраванне адвольнымі эмодзі
+        manage_custom_emojis_description: Дазваляе кіраваць адвольнымі эмодзі на серверы
+        manage_invites: Кіраванне запрашэннямі
+        manage_invites_description: Дазваляе праглядаць і дэактывоўваць запрашальныя спасылкі
+        manage_reports: Кіраванне скаргамі
+        manage_reports_description: Дазваляе разглядаць скаргі і прымаць захады мадэрацыі
+        manage_roles: Кіраванне ролямі
+        manage_rules: Кіраванне правіламі
+        manage_rules_description: Дазваляе змяняць правілы сервера
+        manage_settings: Кіраванне наладамі
+        manage_settings_description: Дазваляе змяняць налады сервера
+        manage_user_access: Кіраванне наладамі доступу карыстальнікаў
+        manage_user_access_description: Дазваляе адключаць двухфактарную аўтэнтыфікацыю іншым карыстальнікам, змяняць іх паштовы адрас і скідваць пароль
+        manage_users: Кіраванне карыстальнікамі
+        manage_users_description: Дазваляе праглядаць звесткі іншых карыстальнікаў і іх мадэрацыю
+        manage_webhooks: Кіраванне webhook'амі
+        view_audit_log: Кіраванне журналам аўдыту
+        view_dashboard: Прагляд панэлі кіравання
+        view_dashboard_description: Дазваляе праглядаць панэль кіравання і розныя метрыкі
+        view_devops: DevOps
+        view_devops_description: Дае доступ да панэляў кіравання Sidekiq і pgHero
+      title: Ролі
+    rules:
+      add_new: Дадаць правіла
+      delete: Выдаліць
+      edit: Рэдагаваць правіла
+      title: Правілы сервера
+    settings:
+      about:
+        title: Пра нас
+      appearance:
+        preamble: Наладзьце вэб-інтэрфейс Mastodon.
+        title: Выгляд
+      discovery:
+        trends: Актуальныя
+      domain_blocks:
+        all: Для ўсіх
+        disabled: Нікому
+        users: Лакальным карыстальнікам, якія ўвайшлі
+      registrations:
+        title: Рэгістрацыя
+      title: Налады сервера
+    statuses:
+      account: Аўтар
+      application: Праграма
+      deleted: Выдалены
+      language: Мова
+      media:
+        title: Медыя
+      metadata: Метададзеныя
+      open: Адкрыць допіс
+      visibility: Бачнасць
+    strikes:
+      actions:
+        suspend: Уліковы запіс %{target} выключаны %{name}
+    tags:
+      updated_msg: Налады хэштэгаў паспяхова змененыя
+    title: Адміністрацыя
+    trends:
+      allow: Дазволіць
+      approved: Пацверджаны
+      disallow: Забараніць
+      links:
+        allow: Дазволіць спасылка
+        allow_provider: Дазволіць выдаўца
+      statuses:
+        allow: Дазволіць допіс
+        allow_account: Дазволіць аўтара
+        description_html: Гэта допісы, пра якія ведае ваш сервер, што на дадзены момант часта абагульваюцца і дадаюцца ў абранае. Гэта можа дапамагчы вашым новым і пастаянным карыстальнікам знайсці больш людзей, на якіх можна падпісацца. Ніякія допісы не будуць паказвацца публічна, пакуль вы не зацвердзіце аўтара, а аўтар не дазволіць прапанаваць свой уліковы запіс іншым. Вы таксама можаце дазволіць або адхіліць асобныя допісы.
+        disallow: Забараніць допіс
+        disallow_account: Забараніць аўтара
+        title: Актуальныя допісы
+      tags:
+        dashboard:
+          tag_languages_dimension: Папулярныя мовы
+          tag_servers_dimension: Папулярныя серверы
+          tag_servers_measure: розныя серверы
+          tag_uses_measure: усяго выкарыстанняў
+        not_listable: Не будзе прапанавана
+        not_usable: Немагчыма выкарыстаць
+      title: Актуальныя
+    warning_presets:
+      add_new: Дадаць новы
+      delete: Выдаліць
+    webhooks:
+      delete: Выдаліць
+      status: Стан
+  admin_mailer:
+    new_appeal:
+      actions:
+        suspend: каб выключыць уліковы запіс
+    new_report:
+      body_remote: Нехта з %{domain} паскардзіўся на %{target}
+  appearance:
+    advanced_web_interface: Пашыраны вэб-інтэрфейс
+    advanced_web_interface_hint: 'Калі вы хочаце выкарыстоўваць усю шырыню экрана, пашыраны вэб-інтэрфейс дазваляе вам наладзіць мноства розных слупкоў, каб бачыць столькі інфармацыі, колькі вам трэба: галоўная, апавяшчэнні, глабальная стужка, любая колькасць спісаў і хэштэгаў.'
+    animations_and_accessibility: Анімацыі і даступнасць
+    confirmation_dialogs: Дыялогавыя вокны пацвярджэння
+    localization:
+      body: Mastodon перакладаецца добраахвотнікамі.
+      guide_link: https://be.crowdin.com/project/mastodon/be
+      guide_link_text: Кожны можа зрабіць унёсак.
+    toot_layout: Макет допісу
+  application_mailer:
+    salutation: "%{name},"
+  applications:
+    created: Праграма паспяхова створана
+    destroyed: Праграма паспяхова выдалена
+  auth:
+    apply_for_account: Пакінуць заяўку
+    change_password: Пароль
+    delete_account: Выдаліць уліковы запіс
+    delete_account_html: Калі вы жадаеце выдаліць ваш уліковы запіс, можаце <a href="%{path}">працягнуць тут</a>. Ад вас будзе запатрабавана пацвярджэнне.
+    description:
+      prefix_invited_by_user: "@%{name} запрашае вас далучыцца да гэтага сервера ў Mastodon!"
+      prefix_sign_up: Зарэгістравацца ў Mastodon сёння!
+      suffix: Маючы ўліковы запіс, вы зможаце падпісвацца на іншых людзей, дзяліцца навінамі і абменьвацца паведамленнямі з карыстальнікамі з любога сервера Mastodon і шмат што яшчэ!
+    didnt_get_confirmation: Не атрымалі інструкцыю пацвярджэння?
+    dont_have_your_security_key: Не маеце ключа бяспекі?
+    forgot_password: Забылі свой пароль?
+    invalid_reset_password_token: Токен для скідвання пароля несапраўдны або састарэў. Зрабіце запыт на новы.
+    link_to_otp: Увядзіце код двухфактарнай аўтэнтыфікацыі з вашага тэлефона або код аднаўлення
+    log_in_with: Увайсці праз
+    login: Увайсці
+    logout: Выйсці
+    migrate_account: Пераехаць на іншы ўліковы запіс
+    or_log_in_with: Або ўвайсці з дапамогай
+    privacy_policy_agreement_html: Я азнаёміўся і пагаджаюся з <a href="%{privacy_policy_path}" target="_blank">палітыкай канфідэнцыйнасці</a>
+    providers:
+      cas: CAS
+      saml: SAML
+    register: Зарэгістравацца
+    registration_closed: "%{instance} больш не прымае новых удзельнікаў"
+    resend_confirmation: Адправіць інструкцыю пацвярджэння зноў
+    reset_password: Скінуць пароль
+    rules:
+      preamble: Правілы вызначаныя мадэратарамі дамена %{domain}.
+      title: Некалькі базавых правілаў.
+    security: Бяспека
+    set_new_password: Прызначыць новы пароль
+    sign_up:
+      preamble: Маючы ўліковы запіс на гэтым серверы Mastodon, вы будзеце мець магчымасць падпісацца на кожнага чалавека ў сетцы, незалежна ад таго, на якім серверы размешчаны ягоны ўліковы запіс.
+    status:
+      account_status: Стан уліковага запісу
+      confirming: Чакаецца пацвярджэнне з электроннай пошты.
+    too_fast: Форма адпраўлена занадта хутка, паспрабуйце яшчэ раз.
+    use_security_key: Выкарыстаеце ключ бяспекі
+  authorize_follow:
+    already_following: Вы ўжо падпісаныя на гэты ўліковы запіс
+    already_requested: Вы ўжо адправілі запыт на гэты ўліковы запіс
+    follow: Падпісацца
+    follow_request: 'Вы адправілі запыт на падпіску:'
+    following: 'Поспех! Цяпер вы падпісаны на:'
+    post_follow:
+      close: Або, вы можаце проста закрыць гэтае акно.
+      return: Паказаць профіль карыстальніка
+      web: Перайсці ў вэб-версію
+  challenge:
+    confirm: Працягнуць
+    hint_html: "<strong>Парада:</strong> Мы не будзем запытваць ваш пароль зноўку на працягу наступнай гадзіны."
+    invalid_password: Няправільны пароль
+    prompt: Пацвердзіць пароль, каб працягнуць
+  crypto:
+    errors:
+      invalid_key: гэта не сапраўдны Ed25519 або Curve25519 ключ
+      invalid_signature: гэта не сапраўдная Ed25519 сігнатура
+  date:
+    formats:
+      default: "%d.%m.%Y"
+      with_month_name: "%e %B %Y"
+  datetime:
+    distance_in_words:
+      about_x_hours: "%{count}гадз"
+      about_x_months: "%{count}мес"
+      about_x_years: "%{count}г"
+      almost_x_years: "%{count}г"
+      half_a_minute: Толькі што
+      less_than_x_minutes: "%{count}хв"
+      less_than_x_seconds: Толькі што
+      over_x_years: "%{count}г."
+      x_days: "%{count}д"
+      x_minutes: "%{count}хв"
+      x_months: "%{count}мес"
+      x_seconds: "%{count}с"
+  deletes:
+    challenge_not_passed: Уведзеная інфармацыя няправільная
+    confirm_password: Увядзіце свой бягучы пароль, каб пацвердзіць сваю асобу
+    proceed: Выдаліць уліковы запіс
+    success_msg: Ваш уліковы запіс быў паспяхова выдалены
+  disputes:
+    strikes:
+      appeals:
+        submit: Падаць апеляцыю
+      title_actions:
+        none: Папярэджванне
+        suspend: Выключэнне ўліковага запісу
+  errors:
+    '400': The request you submitted was invalid or malformed.
+    '403': You don't have permission to view this page.
+    '404': The page you are looking for isn't here.
+    '406': This page is not available in the requested format.
+    '410': The page you were looking for doesn't exist here anymore.
+    '422': 
+    '429': Too many requests
+    '500': 
+    '503': The page could not be served due to a temporary server failure.
+  exports:
+    archive_takeout:
+      date: Дата
+      size: Памер
+    bookmarks: Закладкі
+    csv: CSV
+    lists: Спісы
+  featured_tags:
+    add_new: Дадаць новы
+  filters:
+    contexts:
+      account: Профілі
+      notifications: Апавяшчэнні
+      thread: Размовы
+    edit:
+      add_keyword: Дадаць ключавое слова
+      keywords: Ключавыя словы
+      title: Рэдагаваць фільтр
+    index:
+      delete: Выдаліць
+      empty: У вас няма фільтраў.
+      title: Фільтры
+    new:
+      save: Захаваць новы фільтр
+      title: Дадаць новы фільтр
+  generic:
+    all: Усе
+    copy: Скапіяваць
+    delete: Выдаліць
+    order_by: Парадак
+    save_changes: Захаваць змены
+    today: сёння
+  imports:
+    modes:
+      merge: Аб'яднаць
+      merge_long: Захаваць існуючыя запісы і дадаць новыя
+      overwrite: Перазапісаць
+    types:
+      bookmarks: Закладкі
+    upload: Запампаваць
+  invites:
+    expires_in:
+      '1800': 30 хвілін
+      '21600': 6 гадзін
+      '3600': 1 гадзіна
+      '43200': 12 гадзін
+      '604800': 1 тыдзень
+      '86400': 1 дзень
+    expires_in_prompt: Ніколі
+    generate: Стварыць запрашальную спасылку
+    max_uses_prompt: Неабмежавана
+    title: Запрасіць людзей
+  login_activities:
+    authentication_methods:
+      otp: праграма двухфактарнай аўтэнтыфікацыі
+      password: пароль
+      sign_in_token: код з электроннай пошты
+      webauthn: ключы бяспекі
+    description_html: Калі вы бачыце невядомую вам актыўнасць, падумайце пра змену пароля і ўключэнне двухфактарнай аўтэнтыфікацыі.
+    empty: Няма гісторыі ўваходаў
+    failed_sign_in_html: Няўдалая спроба ўваходу праз %{method} з %{ip} (%{browser})
+    successful_sign_in_html: Паспяховы ўваход праз %{method} з %{ip} (%{browser})
+    title: Гісторыя ўваходаў
+  migrations:
+    errors:
+      not_found: не знойдзена
+    followers_count: Падпісчыкі на момант перамяшчэння
+    past_migrations: Колішнія перамяшчэнні
+    proceed_with_move: Перамясціць падпісчыкаў
+  moderation:
+    title: Мадэрацыя
+  notification_mailer:
+    follow:
+      body: "%{name} цяпер падпісаны на вас!"
+      subject: "%{name} цяпер падпісаны на вас"
+      title: Новы падпісчык
+    follow_request:
+      action: Кіраванне запытамі на падпіску
+      body: "%{name} хоча падпісацца на вас"
+      title: Новы запыт на падпіску
+    mention:
+      action: Адказаць
+    reblog:
+      subject: "%{name} пашырыў ваш допіс"
+    status:
+      subject: Новы допіс ад %{name}
+  notifications:
+    other_settings: Іншыя налады апавяшчэнняў
+  number:
+    human:
+      decimal_units:
+        format: "%n %u"
+        units:
+          billion: млрд
+          million: млн
+          thousand: тыс.
+          trillion: трлн
+  otp_authentication:
+    enable: Уключыць
+  pagination:
+    next: Далей
+  relationships:
+    remove_selected_domains: Выдаліць усіх падпісчыкаў з выбраных даменаў
+    remove_selected_followers: Выдаліць выбраных карыстальнікаў
+    remove_selected_follows: Адпісацца ад выбраных карыстальнікаў
+    status: Стан уліковага запісу
+  sessions:
+    activity: Апошняя актыўнасць
+    browser: Браўзер
+    browsers:
+      alipay: Alipay
+      blackberry: BlackBerry
+      chrome: Chrome
+      edge: Microsoft Edge
+      electron: Electron
+      firefox: Firefox
+      generic: Невядомы браўзер
+      ie: Internet Explorer
+      micro_messenger: MicroMessenger
+      nokia: Nokia S40 Ovi Browser
+      opera: Opera
+      otter: Otter
+      phantom_js: PhantomJS
+      qq: QQ Browser
+      safari: Safari
+      uc_browser: UC Browser
+      weibo: Weibo
+    current_session: Бягучая сесія
+    description: "%{browser} на %{platform}"
+    ip: IP
+    platforms:
+      adobe_air: Adobe AIR
+      android: Android
+      blackberry: BlackBerry
+      chrome_os: ChromeOS
+      firefox_os: Firefox OS
+      ios: iOS
+      linux: Linux
+      mac: macOS
+      other: невядомай платформе
+      windows: Windows
+      windows_mobile: Windows Mobile
+      windows_phone: Windows Phone
+    revoke: Адклікаць
+    revoke_success: Сеанс паспяхова адкліканы
+    title: Сесіі
+    view_authentication_history: Праглядзець гісторыю ўваходаў у мой уліковы запіс
+  settings:
+    account: Уліковы запіс
+    account_settings: Налады ўліковага запісу
+    appearance: Выгляд
+    authorized_apps: Аўтарызаваныя праграмы
+    back: Назад да Mastodon
+    delete: Выдаленне ўліковага запісу
+    development: Распрацоўка
+    edit_profile: Рэдагаваць профіль
+    export: Экспарт даных
+    import: Імпарт
+    import_and_export: Імпарт і экспарт
+    migrate: Перамяшчэнне ўліковага запісу
+    notifications: Апавяшчэнні
+    preferences: Параметры
+    profile: Профіль
+    relationships: Падпіскі і падпісчыкі
+    statuses_cleanup: Аўтаматычнае выдаленне допісаў
+    two_factor_authentication: Двухфактарная аўтэнтыфікацыя
+    webauthn_authentication: Ключы бяспекі
+  statuses:
+    attached:
+      audio:
+        few: "%{count} аўдыяфайлы"
+        many: "%{count} аўдыяфайлаў"
+        one: "%{count} аўдыяфайл"
+        other: "%{count} аўдыяфайла"
+      image:
+        few: "%{count} выявы"
+        many: "%{count} выяваў"
+        one: "%{count} выява"
+        other: "%{count} выявы"
+      video:
+        few: "%{count} відэафайлы"
+        many: "%{count} відэафайлаў"
+        one: "%{count} відэафайл"
+        other: "%{count} відэафайла"
+    edited_at_html: Адрэдагавана %{date}
+    over_character_limit: перавышаная колькасць сімвалаў у %{max}
+    pin_errors:
+      direct: Допісы, бачныя толькі згаданым карыстальнікам, не могуць быць замацаваныя
+      ownership: Немагчыма замацаваць чужы допіс
+    show_more: Паказаць больш
+    sign_in_to_participate: Зарэгіструйцеся каб удзельнічаць у абмеркаванні
+    title: '%{name}: "%{quote}"'
+    visibilities:
+      public: Публічны
+  statuses_cleanup:
+    min_age:
+      '1209600': 2 тыдні
+      '15778476': 6 месяцаў
+      '2629746': 1 месяц
+      '31556952': 1 год
+      '5259492': 2 месяцы
+      '604800': 1 тыдзень
+      '63113904': 2 гады
+      '7889238': 3 месяцы
+  stream_entries:
+    pinned: Замацаваны допіс
+  themes:
+    contrast: Mastodon (высокі кантраст)
+    default: Mastodon (цёмная)
+    mastodon-light: Mastodon (светлая)
+  time:
+    formats:
+      default: "%d.%m.%Y %H:%M"
+      time: "%H:%M"
+  two_factor_authentication:
+    add: Дадаць
+    edit: Рэдагаваць
+    generate_recovery_codes: Стварыць коды аднаўлення
+    lost_recovery_codes: Коды аднаўлення дазволяць вам аднавіць доступ да вашага ўліковага запісу ў выпадку страты тэлефона. Калі вы згубілі вашыя коды, вы можаце стварыць новыя тут. Старыя коды аднаўлення будуць ануляваныя.
+    recovery_codes: Абнавіць коды аднаўлення
+    recovery_codes_regenerated: Новыя коды аднаўлення паспяхова створаныя
+    recovery_instructions_html: Калі раптам вы страціце доступ да вашага тэлефона, вы можаце скарыстацца адным з кодаў аднаўлення ніжэй каб аднавіць доступ да вашага ўліковага запісу. <strong>Захоўвайце іх у бяспечным месцы</strong>. Напрыклад, вы можаце раздрукаваць іх і захоўваць разам з іншымі важнымі дакументамі.
+    webauthn: Ключы бяспекі
+  user_mailer:
+    warning:
+      categories:
+        spam: Спам
+      explanation:
+        delete_statuses: Было выяўлена, што некаторыя з вашых допісаў парушалі адно або больш правілаў супольнасці і былі выдаленыя мадэратарамі суполкі %{instance}.
+        mark_statuses_as_sensitive: Некаторыя вашыя допісы былі пазначаныя як далікатныя мадэратарамі суполкі %{instance}. Гэта значыць, што іншым людзям давядзецца спачатку націснуць на медыя допісу каб праглядзець яго. Вы можаце ўласнаручна пазначыць медыя як далікатныя перад тым, як апублікаваць іх у будучым.
+        silence: Вы ўсё яшчэ можаце карыстаецца вашым уліковым запісам, але толькі ўжо падпісаныя на вас людзі змогуць бачыць вашыя публікацыі на серверы. Вы таксама можаце быць адхілены ад удзелу ў розных пошукавых функцыях, аднак іншыя ўсё роўна могуць уласнаручна падпісацца на вас.
+        suspend: Вы больш не можаце выкарыстоўваць свой уліковы запіс, а профіль і іншыя даныя сталі недаступнымі. Вы ўсё яшчэ можаце ўвайсці, каб запытаць архіў сваіх даных да моманту іх выдалення праз 30 дзён, але мы захаваем вашы базавыя даныя, каб не даць вам абысці выключэнне.
+      statuses: 'Прычынныя допісы:'
+      subject:
+        delete_statuses: Вашыя допісы на %{acct} былі выдалены
+        mark_statuses_as_sensitive: Вашыя допісы на %{acct} былі пазначаныя як далікатныя
+        sensitive: З гэтага моманту вашыя допісы на %{acct} будуць пазначаныя як далікатныя
+        suspend: Ваш уліковы запіс %{acct} быў выключаны
+      title:
+        delete_statuses: Выдаленыя допісы
+        mark_statuses_as_sensitive: Допісы, пазначыная як далікатныя
+        none: Папярэджанне
+        suspend: Уліковы запіс выключаны
+    welcome:
+      explanation: Вось некаторыя парады каб пачаць
+      final_action: Пачаць пісаць
+      final_step: 'Пачынайце пісаць! Нават, калі ў вас няма падпісчыкаў, іншыя людзі змогуць пабачыць вашыя допісы, напрыклад, у лакальнай стужцы, або праз хэштэгі. Калі хочаце, вы можаце прадставіцца праз хэштэг #introductions.'
+      subject: Вітаем у Mastodon
+      title: Рады вітаць вас, %{name}!
+  webauthn_credentials:
+    delete: Выдаліць
diff --git a/config/locales/bg.yml b/config/locales/bg.yml
index c0287923f..f1587f940 100644
--- a/config/locales/bg.yml
+++ b/config/locales/bg.yml
@@ -12,9 +12,10 @@ bg:
       one: Последовател
       other: Последователи
     following: Следва
+    instance_actor_flash: Този профил е виртуално действащо лице, представляващо сървъра, а не индивидуален потребител. Използва се за федериране и не бива да бъде преустановен.
     last_active: последна дейност
     link_verified_on: Собствеността върху тази връзка е проверена на %{date}
-    nothing_here: Тук няма никого!
+    nothing_here: Тук няма нищо!
     pin_errors:
       following: Трябва вече да следвате човека, когото искате да подкрепите
     posts:
@@ -24,12 +25,15 @@ bg:
   admin:
     account_actions:
       action: Изпълняване на действие
+      title: Извършване на модериращо действие за %{acct}
     account_moderation_notes:
       create: Оставяне на бележка
       created_msg: Бележката за модерация е създадена успешно!
+      destroyed_msg: Бележката за модерация е успешно унищожена!
     accounts:
       add_email_domain_block: Блокиране на имейл домейн
       approve: Одобряване
+      approved_msg: Успешно одобрена заявка за регистрация на %{username}
       are_you_sure: Сигурни ли сте?
       avatar: Аватар
       by_domain: Домейн
@@ -54,19 +58,21 @@ bg:
       demote: Понижаване
       destroyed_msg: Данните на %{username} вече са на опашка за незабавно изтриване
       disable: Замразяване
+      disable_sign_in_token_auth: Изключване на удостоверяването с маркер по имейл
       disable_two_factor_authentication: Изключване на 2FA
       disabled: Замразено
       display_name: Показвано име
       domain: Домейн
-      edit: Редакция
+      edit: Редактиране
       email: Имейл
       email_status: Състояние на имейл
       enable: Размразяване
+      enable_sign_in_token_auth: Включване на удостоверяването с маркер по имейл
       enabled: Включено
       enabled_msg: Успешно размразяване на акаунта на %{username}
       followers: Последователи
       follows: Последвания
-      header: Заглавна част
+      header: Заглавка
       inbox_url: Входящ URL
       invite_request_text: Причини за присъединяване
       invited_by: Покана от
@@ -79,6 +85,9 @@ bg:
         title: Местоположение
       login_status: Състояние на вход
       media_attachments: Прикачена мултимедия
+      memorialize: Възпоминание
+      memorialized: Възпоминателен
+      memorialized_msg: Успещно превръщане на %{username} във възпоминателен профил
       moderation:
         active: Активно
         all: Всичко
@@ -95,17 +104,26 @@ bg:
       not_subscribed: Без абонамент
       pending: Изчаква преглед
       perform_full_suspension: Спиране
+      previous_strikes: Предишни провинения
+      previous_strikes_description_html:
+        one: "Този профил има \n <strong>едно</strong> провинение."
+        other: Този профил има <strong>%{count}</strong> провинения.
       promote: Повишаване
       protocol: Протокол
       public: Публично
       push_subscription_expires: PuSH абонаментът изтича
       redownload: Опресняване на профил
+      redownloaded_msg: Успешно обновяване на профила на %{username} от източника
       reject: Отхвърляне
       rejected_msg: Успешно отхвърлена заявка за регистрация на %{username}
       remove_avatar: Премахване на аватар
       remove_header: Премахване на заглавна част
+      removed_avatar_msg: Успешно премахване на изображението на аватара на %{username}
+      removed_header_msg: Успешно премахване на заглавното изображение на %{username}
       resend_confirmation:
         already_confirmed: Този потребител вече е потвърден
+        send: Повторно изпращане на имейла за потвърждение
+        success: Успешно изпращане на имейла за потвърждение!
       reset: Нулиране
       reset_password: Нулиране на паролата
       resubscribe: Абониране пак
@@ -116,6 +134,7 @@ bg:
       security_measures:
         only_password: Само парола
         password_and_2fa: Парола и двуфакторно удостоверяване
+      sensitive: Чувствителен
       sensitized: Отбелязано като деликатно съдържание
       shared_inbox_url: URL адрес на споделена входяща кутия
       show:
@@ -124,26 +143,44 @@ bg:
       silence: Ограничение
       silenced: Ограничено
       statuses: Публикации
+      strikes: Предишни провинения
       subscribe: Абониране
       suspend: Спиране
       suspended: Спряно
+      suspension_irreversible: Данните на този профил са безвъзвратно изтрити. Можете да възстановите достъпа на този профил, за да може да бъде отново използван, но данните отпреди няма да бъдат възстановени.
+      suspension_reversible_hint_html: Този профил е преустановен и данните от него ще бъдат напълно премахнати на %{date}. До тази дата профилът може да бъде възстановен без щети. Ако желаете, по-долу можете да премахнете всички данни от профила незабавно.
       title: Акаунти
+      unblock_email: Отблокиране на адреса на имейла
+      unblocked_email_msg: Успешно разблокиране на имейл адреса на %{username}
       unconfirmed_email: Непотвърден имейл
+      undo_sensitized: Нeчувствителен
+      undo_silenced: Отмяна на ограничението
+      undo_suspension: Връщане на достъпа
+      unsilenced_msg: Успешно премахване на ограниченията върху профила на %{username}
       unsubscribe: Отписване
+      unsuspended_msg: Успешно връщане на достъпа до профила на %{username}
       username: Потребителско име
+      view_domain: Виж резюмето на домейна
       warn: Предупреждение
       web: Уеб
       whitelisted: Позволено за федерацията
     action_logs:
       action_types:
+        approve_appeal: Одобри иска
+        approve_user: Одобряване на потребител
+        assigned_to_self_report: Назначи отчет
+        change_email_user: Промяна на имейл за потребител
+        change_role_user: Промяна на роля за потребител
         confirm_user: Потвърждаване на потребител
         create_account_warning: Създаване на предупреждение
         create_announcement: Създаване на оповестяване
+        create_canonical_email_block: Създаване на имейл блокировка
         create_custom_emoji: Създаване на персонализирано емоджи
         create_ip_block: Създаване на IP правило
         create_user_role: Създаване на роля
         demote_user: Понижаване на потребител
         destroy_announcement: Изтриване на оповестяване
+        destroy_canonical_email_block: Изтриване на имейл блокировка
         destroy_custom_emoji: Изтриване на персонализирано емоджи
         destroy_ip_block: Изтриване на правило за IP
         destroy_status: Изтриване на статус
@@ -154,10 +191,18 @@ bg:
         disable_user: Деактивиране на потребител
         enable_custom_emoji: Активиране на персонализирано емоджи
         enable_user: Активиране на потребител
+        memorialize_account: Запомни потребителя
         promote_user: Повишаване на потребител
         remove_avatar_user: Премахване на аватар
         reopen_report: Повторно отваряне на доклад
+        resend_user: Повторно изпращане на имейла за потвърждение
         reset_password_user: Нулиране на парола
+        silence_account: Ограничи Акаунта
+        suspend_account: Прекрати акаунта
+        unblock_email_account: Разблокирай Email адреса
+        update_ip_block: Обновяване на правило за IP
+        update_status: Обновяване на публикация
+        update_user_role: Обновяване на роля
       deleted_account: изтрит акаунт
     announcements:
       live: На живо
@@ -209,17 +254,26 @@ bg:
         title: Жалби
     domain_blocks:
       domain: Домейн
-      new:
-        severity:
-          silence: Тишина
       private_comment: Личен коментар
       private_comment_hint: Коментирането за това ограничение на домейна за вътрешна употреба от модераторите.
+      undo: Отмяна на блокиране на домейн
+      view: Преглед на блокиране на домейн
     email_domain_blocks:
+      delete: Изтриване
+      dns:
+        types:
+          mx: Запис MX
+      domain: Домейн
+      new:
+        create: Добавяне на домейн
       title: Блокирани домейни на имейл
     follow_recommendations:
       language: За език
       status: Състояние
     instances:
+      back_to_all: Всичко
+      back_to_limited: Ограничено
+      back_to_warning: Предупреждение
       by_domain: Домейн
       content_policies:
         policies:
@@ -237,6 +291,8 @@ bg:
       empty: Няма намерени домейни.
       moderation:
         all: Всичко
+        limited: Ограничено
+        title: Mодериране
       title: Федерация
       total_blocked_by_us: Блокирано от нас
       total_followed_by_them: Последвани от тях
@@ -273,9 +329,14 @@ bg:
     reports:
       are_you_sure: Сигурни ли сте?
       category: Категория
+      comment:
+        none: Нищо
       created_at: Докладвано
+      delete_and_resolve: Изтриване на публикациите
       forwarded: Препратено
       forwarded_to: Препратено до %{domain}
+      mark_as_resolved: Маркиране като решено
+      mark_as_sensitive: Означаване като деликатно
       notes:
         create: Добавяне на бележка
         delete: Изтриване
@@ -286,6 +347,7 @@ bg:
       resolved: Разрешено
       status: Състояние
       statuses: Докладвано съдържание
+      title: Доклади
       updated_at: Обновено
       view_profile: Преглед на профила
     roles:
@@ -312,6 +374,9 @@ bg:
         manage_rules: Управление на правилата на сървъра
       appearance:
         title: Външен вид
+      discovery:
+        title: Откриване
+        trends: Актуални
       registrations:
         title: Регистрации
       title: Настройки на сървъра
@@ -346,6 +411,7 @@ bg:
     warning_presets:
       delete: Изтриване
     webhooks:
+      add_new: Добавяне на крайна точка
       delete: Изтриване
       events: Събития
       status: Състояние
@@ -355,25 +421,42 @@ bg:
       actions:
         none: предупреждение
   appearance:
+    advanced_web_interface: Разширен уеб интерфейс
+    advanced_web_interface_hint: 'Ако желаете да се възползвате от пълната ширина на своя екран, разширеният уеб интерфейс ще ви позволи да настроите най-различни колони, за да виждате едновременно множество информация: Начало, известия, федериран инфопоток, множество списъци и хаштагове.'
+    animations_and_accessibility: Анимация и достъпност
+    confirmation_dialogs: Диалогов прозорец за потвърждение
+    discovery: Откриване
     localization:
       body: Mastodon е преведено от доброволци.
       guide_link: https://ru.crowdin.com/project/mastodon
-      guide_link_text: Всеки може да допринася.
+      guide_link_text: Всеки може да участва.
     sensitive_content: Деликатно съдържание
+    toot_layout: Оформление на публикацията
   application_mailer:
     notification_preferences: Промяна на предпочитанията за имейл
+    salutation: "%{name},"
     settings: 'Промяна на предпочитанията за e-mail: %{link}'
     view: 'Преглед:'
     view_profile: Преглед на профила
     view_status: Преглед на публикацията
+  applications:
+    warning: Бъдете внимателни с тези данни. Никога не ги споделяйте с никого!
   auth:
-    apply_for_account: Вземане в спсисъка за чакане
     change_password: Парола
     delete_account: Изтриване на акаунта
+    delete_account_html: Ако желаете да изтриете акаунта си, можете <a href="%{path}">да сторите това тук</a>. Ще ви бъде поискано потвърждение.
+    description:
+      prefix_invited_by_user: "@%{name} ви покани да се присъедините към този сървър на Mastodon!"
     didnt_get_confirmation: Не получих инструкции за потвърждение
+    dont_have_your_security_key: Нямате ли си ключ за сигурност?
     forgot_password: Забравих си паролата
+    link_to_otp: Въведете двуфакторния код от телефона си или кода за възстановяване
+    link_to_webauth: Използвайте ключа си за сигурност на устройството
     login: Влизане
     logout: Излизане
+    migrate_account: Преместване в различен акаунт
+    migrate_account_html: Ако желаете да пренасочите този акаунт към друг, можете да <a href="%{path}">настроите това тук</a>.
+    or_log_in_with: Или влизане с помощта на
     register: Регистрация
     registration_closed: "%{instance} не приема нови членуващи"
     resend_confirmation: Изпрати отново инструкции за потвърждение
@@ -384,11 +467,13 @@ bg:
       title: Настройка
     status:
       account_status: Състояние на акаунта
+    use_security_key: Употреба на ключ за сигурност
   authorize_follow:
     already_following: Вече следвате този акаунт
     error: Възникна грешка в откриването на потребителя
     follow: Последвай
     follow_request: 'Изпратихте следната заявка до:'
+    following: 'Успешно! Сега сте последвали:'
     post_follow:
       close: Или просто затворете този прозорец.
       return: Показване на профила на потребителя
@@ -396,6 +481,7 @@ bg:
     title: Последвай %{acct}
   challenge:
     confirm: Продължаване
+    hint_html: "<strong>Съвет</strong>: няма да ви питаме пак за паролата през следващия час."
     invalid_password: Невалидна парола
     prompt: Потвърдете паролата, за да продължите
   date:
@@ -428,6 +514,8 @@ bg:
       username_unavailable: Вашето потребителско име ще остане неналично
   disputes:
     strikes:
+      created_at: Остаряло
+      status: 'Публикация #%{id}'
       title: "%{action} от %{date}"
       title_actions:
         none: Предупреждение
@@ -451,7 +539,11 @@ bg:
     blocks: Вашите блокирания
     bookmarks: Отметки
     lists: Списъци
+    mutes: Заглушихте
     storage: Съхранение на мултимедия
+  featured_tags:
+    add_new: Добавяне на нов
+    hint_html: "<strong>Какво представляват актуалните хаштагове?</strong> Те се показват ясно на вашия публичен профил и позволяват на хората да преглеждат публичните ви публикации с тези хаштагове. Те са чудесен инструмент, с който може да се следи творческа работа или дългосрочни проекти."
   filters:
     contexts:
       account: Профили
@@ -492,6 +584,8 @@ bg:
     today: днес
   imports:
     modes:
+      merge: Сливане
+      merge_long: Пази текущите записи и добавя нови
       overwrite: Презаписване
       overwrite_long: Заменя текущите записи с новите
     preface: Можеш да импортираш някои данни, като например всички хора, които следваш или блокираш в акаунта си на тази инстанция, от файлове, създадени чрез експорт в друга инстанция.
@@ -500,6 +594,7 @@ bg:
       blocking: Списък на блокираните
       bookmarks: Отметки
       following: Списък на последователите
+      muting: Списък заглушавания
     upload: Качване
   invites:
     delete: Деактивиране
@@ -518,11 +613,20 @@ bg:
       one: 1 употреба
       other: "%{count} употреби"
     max_uses_prompt: Без ограничение
+    prompt: Пораждане и споделяне на връзки с други за даване на достъп до този сървър
+    table:
+      expires_at: Изтича
     title: Поканете хора
+  lists:
+    errors:
+      limit: Достигнахте максималния брой списъци
   login_activities:
     authentication_methods:
+      otp: приложение за двуфакторно удостоверяване
       password: парола
+      sign_in_token: код за сигурност на имейла
       webauthn: ключове за сигурност
+    description_html: Ако забележите неузнаваема дейност, то обмислете смяна на паролата си и включване на двуфакторното удостоверяване.
     empty: Няма налична история на удостоверяване
     title: Историята на удостоверяване
   media_attachments:
@@ -530,7 +634,15 @@ bg:
       images_and_video: Не мога да прикача видеоклип към публикация, която вече съдържа изображения
       too_many: Не мога да прикача повече от 4 файла
   migrations:
+    cancelled_msg: Успешно отменено пренасочване.
+    errors:
+      move_to_self: не може да е текущия акаунт
+      not_found: не може да се намери
+    followers_count: Последователи по време на преместването
+    incoming_migrations: Преместване от различен акаунт
+    incoming_migrations_html: За да се преместите от друг акаунт към този, първо трябва да<a href="%{path}">създадете псевдоним за акаунта</a>.
     past_migrations: Минали миграции
+    proceed_with_move: Още последователи
     redirected_msg: Вашият акаунт сега се пренасочва към %{acct}.
     redirecting_to: Вашият акаунт е пренасочен към %{acct}.
     set_redirect: Задаване на пренасочване
@@ -546,6 +658,7 @@ bg:
       subject: "%{name} те последва"
       title: Нов последовател
     follow_request:
+      action: Управляване на следните заявки
       body: "%{name} помоли за разрешение да те последва"
       subject: 'Чакащ последовател: %{name}'
     mention:
@@ -553,10 +666,13 @@ bg:
       body: "%{name} те спомена в:"
       subject: "%{name} те спомена"
       title: Ново споменаване
+    poll:
+      subject: Анкетата от %{name} приключи
     reblog:
       body: 'Твоята публикация беше споделена от %{name}:'
       subject: "%{name} сподели публикацията ти"
   notifications:
+    email_events: Събития за известия по имейл
     email_events_hint: 'Изберете събития, за които искате да получавате известия:'
     other_settings: Настройки за други известия
   number:
@@ -571,23 +687,46 @@ bg:
           trillion: трлн
   otp_authentication:
     enable: Включване
+    manual_instructions: 'Ако не може да сканирате QR-кода и трябва да го въведете ръчно, то ето го:'
+    setup: Настройване
+    wrong_code: Въведеният код е невалиден! Времето на сървъра и времето на устройството правилни ли са?
   pagination:
+    newer: По-ново
     next: Напред
+    older: По-старо
     prev: Назад
+    truncate: "&hellip;"
   polls:
     errors:
+      already_voted: Вече сте гласували в тази анкета
+      duplicate_options: съдържа повтарящи се елементи
+      duration_too_long: е твърде далеч в бъдещето
+      duration_too_short: е твърде скоро
       expired: Анкетата вече е приключила
+      invalid_choice: Избраната възможност за гласуване не съществува
+      over_character_limit: не може по-дълго от %{max} символа всяко
+      too_few_options: трябва да има повече от един елемент
+      too_many_options: не може да съдържа повече от %{max} елемента
   preferences:
     other: Друго
+    posting_defaults: Публикуване по подразбиране
+    public_timelines: Публични часови оси
   privacy_policy:
     title: Политика за поверителност
+  reactions:
+    errors:
+      limit_reached: Ограничението на различни реакции е достигнат
   relationships:
     activity: Дейност на акаунта
+    dormant: Спящо
     followers: Последователи
     invited: С покана
     last_active: Последна дейност
     most_recent: Най-наскоро
     moved: Преместено
+    mutual: Взаимни
+    primary: Основно
+    relationship: Отношение
     remove_selected_domains: Премахване на всички последователи от избраните домейни
     remove_selected_followers: Премахване на избраните последователи
     remove_selected_follows: Стоп на следването на избраните потребители
@@ -595,13 +734,17 @@ bg:
   remote_follow:
     missing_resource: Неуспешно търсене на нужния URL за пренасочване за твоя акаунт
   rss:
+    content_warning: 'Предупреждение за съдържанието:'
     descriptions:
       account: Публични публикации от @%{acct}
+  scheduled_statuses:
+    too_soon: Заплануваната дата трябва да е в бъдеще
   sessions:
     activity: Последна активност
     browser: Браузър
     browsers:
       alipay: Alipay
+      blackberry: BlackBerry
       chrome: Chrome
       edge: Edge на Майкрософт
       electron: Electron
@@ -615,6 +758,7 @@ bg:
       phantom_js: PhantomJS
       qq: Браузър QQ
       safari: Сафари
+      uc_browser: Браузър UC
       weibo: Weibo
     current_session: Текуща сесия
     description: "%{browser} на %{platform}"
@@ -622,6 +766,8 @@ bg:
     platforms:
       adobe_air: Adobe Air
       android: Android
+      blackberry: BlackBerry
+      chrome_os: ChromeOS
       firefox_os: Оп. сист. Firefox
       ios: iOS
       linux: Линукс
@@ -642,6 +788,7 @@ bg:
     development: Развой
     edit_profile: Редактирай профила си
     export: Експортиране на данни
+    featured_tags: Актуални хаштагове
     import: Импортиране
     import_and_export: Внос и износ
     migrate: Миграция на акаунта
@@ -656,26 +803,52 @@ bg:
       audio:
         one: "%{count} звукозапис"
         other: "%{count} звукозаписа"
+      description: 'Прикачено: %{attached}'
       image:
         one: "%{count} образ"
         other: "%{count} образа"
       video:
         one: "%{count} видео"
         other: "%{count} видеозаписа"
+    content_warning: 'Предупреждение за съдържание: %{warning}'
     default_language: Същият като езика на интерфейса
+    disallowed_hashtags:
+      one: 'съдържа непозволен хаштаг: %{tags}'
+      other: 'съдържа непозволени хаштагове: %{tags}'
+    edited_at_html: Редактирано на %{date}
+    errors:
+      in_reply_not_found: Публикацията, на която се опитвате да отговорите не изглежда да съществува.
     open_in_web: Отвори в уеб
     over_character_limit: прехвърлен лимит от %{max} символа
+    pin_errors:
+      direct: Публикациите, които са видими само за споменати потребители не може да се закачат
+      limit: Вече сте закачили максималния брой публикации
+      ownership: Публикация на някого другиго не може да се закачи
     poll:
+      total_people:
+        one: "%{count} човек"
+        other: "%{count} души"
       vote: Гласуване
     show_more: Покажи повече
+    show_newer: Показване на по-нови
+    show_older: Показване на по-стари
+    show_thread: Показване на нишката
+    sign_in_to_participate: Влезте, за да участвате в разговора
+    title: "%{name}: „%{quote}“"
     visibilities:
+      direct: Директно
       private: Покажи само на последователите си
+      private_long: Показване само на последователи
       public: Публично
+      public_long: Всеки може да вижда
       unlisted: Публично, но не показвай в публичния канал
   statuses_cleanup:
     enabled: Автоматично изтриване на стари публикации
+    enabled_hint: Автоматично изтрива публикациите ви щом достигнат указания възрастов праг, освен ако не съвпадне с някое от изключенията долу
     exceptions: Изключения
+    explanation: Тъй като изтриването на публикации е скъпа операция, това се прави бавно във времето, когато сървърът иначе не е зает. Поради тази причина публикациите ви може да се изтрият известно време след като достигнат възрастовия праг.
     ignore_favs: Пренебрегване на любими
+    interaction_exceptions: Изключения въз основа на взаимодействия
     keep_pinned: Държа на закачените публикации
     min_age:
       '1209600': 2 седмици
@@ -703,10 +876,14 @@ bg:
   two_factor_authentication:
     add: Добавяне
     disable: Деактивирай
+    disabled_success: Двуфакторното удостоверяване е успешно изключено
     edit: Редактиране
     enabled: Двуфакторното удостоверяване е включено
     enabled_success: Двуфакторното удостоверяване е успешно включено
+    generate_recovery_codes: Пораждане на кодове за възстановяване
+    lost_recovery_codes: Кодовете за възстановяване ви позволяват да възвърнете достъпа до акаунта си, ако загубите телефона си. Ако загубите кодовете си за възстановяване, то може да ги породите тук. Старите ви кодове за възстановяване ще станат невалидни.
     methods: Двуфакторни начини
+    otp: Приложение за удостоверяване
     webauthn: Ключове за сигурност
   user_mailer:
     appeal_approved:
@@ -720,6 +897,8 @@ bg:
       statuses: 'Цитирани публ.:'
       subject:
         delete_statuses: Ваши публикации в %{acct} са били премахнати
+        disable: Вашият акаунт %{acct} е бил замразен
+        none: Предупреждение за %{acct}
       title:
         delete_statuses: Публикацията е премахната
         disable: Акаунтът е замразен
@@ -728,12 +907,15 @@ bg:
     welcome:
       edit_profile_action: Настройване на профила
       explanation: Ето няколко стъпки за начало
+      final_action: Начало на публикуване
       subject: Добре дошли в Mastodon
       title: Добре дошли на борда, %{name}!
   users:
     follow_limit_reached: Не може да последвате повече от %{limit} души
     invalid_otp_token: Невалиден код
+    signed_in_as: 'Влезли като:'
   verification:
+    explanation_html: 'Можете да <strong>удостоверите самоличността си като собственик на линковете в метаданните на своя профил</strong>. За целта сайтът, към който води линк от метаданните, трябва да съдържа линк обратно към вашия профил в Mastodon. Линкът от сайта <strong>трябва</strong> да съдържа атрибут <code>rel="me"</code>. Текстовото съдържание на линка няма значение. Ето пример:'
     verification: Проверка
   webauthn_credentials:
     add: Добавяне на нов ключ за сигурност
@@ -741,9 +923,12 @@ bg:
       error: Възникна проблем, добавяйки ключ за сигурност. Опитайте пак.
       success: Вашият ключ за сигурност беше добавен успешно.
     delete: Изтриване
+    delete_confirmation: Наистина ли искате да изтриете този ключ за сигурност?
+    description_html: Ако включите <strong>ключ за сигурност при удостоверяване</strong>, то влизането ще изисква да употребите един от ключовете ви за сигурност.
     destroy:
       error: Възникна проблем, изтривайки ключа си за сигурност. Опитайте пак.
       success: Вашият ключ за сигурност беше изтрит успешно.
     invalid_credential: Невалиден ключ за сигурност
     not_supported: Този браузър не поддържа ключове за сигурност
     otp_required: Първо включете двуфакторното удостоверяване, за да използвате ключовете за сигурност.
+    registered_on: Регистрирано на %{date}
diff --git a/config/locales/br.yml b/config/locales/br.yml
index e7bc88eab..c53fac24f 100644
--- a/config/locales/br.yml
+++ b/config/locales/br.yml
@@ -1,6 +1,8 @@
 ---
 br:
   about:
+    contact_missing: Andermenet
+    contact_unavailable: N'eus ket
     title: Diwar-benn
   accounts:
     follow: Heuliañ
@@ -14,13 +16,15 @@ br:
     last_active: oberiantiz ziwezhañ
     nothing_here: N'eus netra amañ !
     posts:
-      few: Kannadoù
-      many: Kannadoù
-      one: Kannad
-      other: Kannadoù
-      two: Kannadoù
-    posts_tab_heading: Kannadoù
+      few: Toudoù
+      many: Toudoù
+      one: Toud
+      other: Toud
+      two: Toudoù
+    posts_tab_heading: Toudoù
   admin:
+    account_moderation_notes:
+      create: Leuskel un notenn
     accounts:
       add_email_domain_block: Stankañ an domani postel
       approve: Aprouiñ
@@ -33,44 +37,73 @@ br:
         label: Kemmañ ar postel
         new_email: Postel nevez
         submit: Kemmañ ar postel
+      change_role:
+        no_role: Roll ebet
+      confirm: Kadarnaat
+      confirming: O kadarnaat
+      custom: Personelaet
       deleted: Dilamet
+      demote: Argilañ
+      disable: Skornañ
+      disabled: Skornet
       domain: Domani
-      edit: Aozañ
+      edit: Kemmañ
       email: Postel
       enable: Gweredekaat
       enabled: Gweredekaet
       followers: Heulier·ezed·ien
+      follows: Koumanantoù
       header: Talbenn
+      invited_by: Pedet gant
+      ip: IP
+      joined: Amañ abaoe
       location:
+        all: Pep tra
         local: Lec'hel
         remote: A-bell
       moderation:
         active: Oberiant
+        all: Pep tra
+        pending: War ober
+        silenced: Bevennet
         suspended: Astalet
+        title: Habaskadur
       perform_full_suspension: Astalañ
+      promote: Brudañ
       protocol: Komenad
       public: Publik
       reject: Nac'hañ
       remove_header: Dilemel an talbenn
       reset: Adderaouekaat
       reset_password: Adderaouekaat ar ger-tremen
+      role: Roll
       search: Klask
-      statuses: Kannadoù
+      silence: Bevenniñ
+      silenced: Bevennet
+      statuses: Toudoù
+      suspend: Astalañ
       suspended: Astalet
       title: Kontoù
+      undo_silenced: Dizober ar bevennañ
       username: Anv
+      warn: Diwall
+      web: Web
     action_logs:
       action_types:
         destroy_status: Dilemel ar c'hannad
         update_status: Hizivaat ar c'hannad
       actions:
-        destroy_status_html: Dilamet eo bet kannad %{target} gant %{name}
-        update_status_html: Hizivaet eo bet kannad %{target} gant %{name}
+        destroy_status_html: Dilamet eo bet toud %{target} gant %{name}
+        update_status_html: Hizivaet eo bet toud %{target} gant %{name}
+      title: Renabl aodit
     announcements:
+      live: War-eeun
       new:
         create: Sevel ur gemenn
         title: Kemenn nevez
+      publish: Embann
       title: Kemennoù
+      unpublish: Diembann
     custom_emojis:
       by_domain: Domani
       copy: Eilañ
@@ -81,32 +114,75 @@ br:
       enable: Gweredekaat
       enabled: Gweredekaet
       list: Listenn
+      listed: Listennet
+      overwrite: Flastrañ
+      shortcode: Berradenn
+      unlist: Dilistennañ
+      upload: Ezkargañ
     dashboard:
+      new_users: implijerien·ezed nevez
       software: Meziant
       title: Taolenn labour
+      website: Lec'hienn
+    disputes:
+      appeals:
+        title: Galvoù
     domain_blocks:
       domain: Domani
       new:
         create: Sevel ur stanker
         severity:
           noop: Hini ebet
-          silence: Mudañ
           suspend: Astalañ
     email_domain_blocks:
       add_new: Ouzhpenniñ unan nevez
       delete: Dilemel
+      dns:
+        types:
+          mx: Enrolladenn MX
       domain: Domani
       new:
         create: Ouzhpenniñ un domani
+    follow_recommendations:
+      status: Statud
+      suppressed: Dilamet
     instances:
+      back_to_all: Pep tra
+      back_to_limited: Bevennet
+      back_to_warning: Diwall
       by_domain: Domani
+      content_policies:
+        policies:
+          silence: Bevenniñ
+          suspend: Astalañ
+        policy: Reolennoù
       dashboard:
-        instance_statuses_measure: kannadoù stoket
+        instance_statuses_measure: toudoù stoket
+      delivery:
+        all: Pep tra
+        failing: O faziañ
       moderation:
         all: Pep tra
+        limited: Bevennet
+        title: Habaskadur
+      purge: Spurjañ
+      title: Kevread
     invites:
       filter:
+        all: Pep tra
         available: Hegerzh
+        expired: Deuet d'an termen
+        title: Sil
+      title: Pedadennoù
+    ip_blocks:
+      delete: Dilemel
+      expires_in:
+        '1209600': 2 sizhunvezh
+        '15778476': 6 months
+        '2629746': 1 mizvezh
+        '31556952': 1 bloavezh
+        '86400': 1 devezh
+        '94670856': 3 bloavezh
     relays:
       delete: Dilemel
       disable: Diweredekaat
@@ -123,32 +199,103 @@ br:
           one: "%{count} a notennoù"
           other: "%{count} a notennoù"
           two: "%{count} a notennoù"
+      action_log: Renabl aodit
       are_you_sure: Ha sur oc'h?
+      comment:
+        none: Hini ebet
       delete_and_resolve: Dilemel ar c'hannadoù
+      forwarded: Treuzkaset
+      no_one_assigned: Den ebet
       notes:
         delete: Dilemel
+        title: Notennoù
       status: Statud
+      title: Disklêriadennoù
+      unresolved: Andiskoulmet
       updated_at: Nevesaet
+    roles:
+      categories:
+        devops: DevOps
+        invites: Pedadennoù
+        moderation: Habaskadur
+        special: Ispisial
+      delete: Dilemel
+      privileges:
+        view_devops: DevOps
+      title: Rolloù
+    rules:
+      delete: Dilemel
+      edit: Kemmañ ar reolenn
     settings:
+      about:
+        title: Diwar-benn
+      appearance:
+        title: Neuz
+      discovery:
+        title: Dizoloadur
+        trends: Luskadoù
       domain_blocks:
         all: D'an holl dud
+        disabled: Da zen ebet
     statuses:
+      account: Aozer·ez
+      batch:
+        report: Disklêriañ
       deleted: Dilamet
+      favourites: Re vuiañ-karet
+      media:
+        title: Media
       open: Digeriñ ar c'hannad
-      original_status: Kannad orin
-      status_changed: Kannad kemmet
-      title: Kannadoù ar gont
+      original_status: Toud orin
+      reblogs: Skignadennoù
+      status_changed: Toud kemmet
+      title: Toudoù ar gont
+      visibility: Gwelusted
+      with_media: Gant mediaoù
     strikes:
       actions:
-        delete_statuses: Dilamet eo bet kannadoù %{target} gant %{name}
+        delete_statuses: Dilamet eo bet toudoù %{target} gant %{name}
+    trends:
+      allow: Aotren
+      links:
+        allow: Aotren al liamm
+      preview_card_providers:
+        title: Embannerien·ezed
+      statuses:
+        allow: Aotren ar c'hannad
+      tags:
+        dashboard:
+          tag_uses_measure: implijoù hollek
+      title: Luskadoù
     warning_presets:
       add_new: Ouzhpenniñ unan nevez
       delete: Dilemel
+    webhooks:
+      delete: Dilemel
+      disable: Diweredekaat
+      enable: Bevaat
+      enabled: Bev
+      events: Darvoudoù
+      status: Statud
+      webhook: Webhook
+  admin_mailer:
+    new_appeal:
+      actions:
+        none: ur c'hemenn diwall
+  appearance:
+    discovery: Dizoloadur
+  application_mailer:
+    view: 'Sellet :'
+    view_status: Gwelet ar c'hannad
   auth:
     change_password: Ger-tremen
     delete_account: Dilemel ar gont
     login: Mont tre
     logout: Digennaskañ
+    providers:
+      cas: CAS
+      saml: SAML
+    register: Lakaat ho anv
     reset_password: Adderaouekaat ar ger-tremen
     security: Diogelroez
     setup:
@@ -157,6 +304,8 @@ br:
       account_status: Statud ar gont
   authorize_follow:
     follow: Heuliañ
+    post_follow:
+      web: Distreiñ d'an etrefas web
     title: Heuliañ %{acct}
   challenge:
     confirm: Kenderc' hel
@@ -172,12 +321,21 @@ br:
       about_x_years: "%{count}b"
       almost_x_years: "%{count}b"
       half_a_minute: Diouzhtu
+      less_than_x_minutes: "%{count}mun"
       less_than_x_seconds: Diouzhtu
       over_x_years: "%{count}b"
+      x_days: "%{count}d"
+      x_minutes: "%{count}mun"
       x_months: "%{count}miz"
       x_seconds: "%{count}eil"
   deletes:
     proceed: Dilemel ar gont
+  disputes:
+    strikes:
+      appeal: Ober engalv
+      created_at: Deiziad
+      title_actions:
+        none: Diwall
   errors:
     '400': The request you submitted was invalid or malformed.
     '403': You don't have permission to view this page.
@@ -192,6 +350,9 @@ br:
     archive_takeout:
       date: Deiziad
       size: Ment
+    blocks: Stankañ a rit
+    bookmarks: Sinedoù
+    csv: CSV
     lists: Listennoù
   featured_tags:
     add_new: Ouzhpenniñ unan nevez
@@ -210,13 +371,24 @@ br:
       title: Siloù
     statuses:
       index:
-        title: Kannadoù silet
+        title: Toudoù silet
   generic:
     all: Pep tra
     copy: Eilañ
     delete: Dilemel
+    none: Hini ebet
     order_by: Urzhiañ dre
+    today: hiziv
+  imports:
+    modes:
+      merge: Teuziñ
+      overwrite: Flastrañ
+    types:
+      bookmarks: Sinedoù
+    upload: Ezkargañ
   invites:
+    delete: Diweredekaat
+    expired: Deuet d'an termen
     expires_in:
       '1800': 30 munutenn
       '21600': 6 eur
@@ -225,30 +397,57 @@ br:
       '604800': 1 sizhun
       '86400': 1 deiz
     expires_in_prompt: Birviken
+    table:
+      uses: Implijoù
     title: Pediñ tud
+  moderation:
+    title: Habaskadur
   notification_mailer:
     follow:
       title: Heulier nevez
     mention:
       action: Respont
     reblog:
-      subject: Skignet ho kannad gant %{name}
+      subject: 'Gant %{name} eo bet skignet ho toud '
+      title: Skignadenn nevez
     status:
       subject: Embannet ez eus bet traoù gant %{name}
     update:
       subject: Kemmet eo bet ur c'hannad gant %{name}
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: G
+          million: M
+          quadrillion: P
+          thousand: K
+          trillion: T
   otp_authentication:
     enable: Gweredekaat
     setup: Kefluniañ
+  pagination:
+    newer: Nevesoc'h
+    next: Da-heul
+    older: Koshoc'h
+    prev: A-raok
   preferences:
+    other: All
     posting_defaults: Arventennoù embann dre ziouer
   relationships:
+    dormant: O kousket
     followers: Heulier·ezed·ien
     following: O heuliañ
+    invited: Pedet
+    moved: Dilojet
+    mutual: Kenetre
+    primary: Kentañ
   sessions:
     browser: Merdeer
     browsers:
       alipay: Alipay
+      blackberry: BlackBerry
       chrome: Chrome
       edge: Microsoft Edge
       electron: Electron
@@ -262,15 +461,24 @@ br:
       phantom_js: PhantomJS
       qq: QQ Browser
       safari: Safari
+      uc_browser: UC Browser
       weibo: Weibo
     description: "%{browser} war %{platform}"
+    ip: IP
     platforms:
+      adobe_air: Adobe Air
+      android: Android
+      ios: iOS
+      linux: Linux
+      mac: macOS
       other: savenn dianav
+      windows: Windows
+    revoke: Dizober
   settings:
     account: Kont
     account_settings: Arventennoù ar gont
     development: Diorren
-    edit_profile: Aozañ ar profil
+    edit_profile: Kemmañ ar profil
     import: Enporzhiañ
     import_and_export: Enporzhiañ hag ezporzhiañ
     preferences: Gwellvezioù
@@ -283,11 +491,26 @@ br:
         one: "%{count} skeudenn"
         other: "%{count} skeudenn"
         two: "%{count} skeudenn"
+    poll:
+      vote: Mouezhiañ
     show_more: Diskouez muioc'h
     visibilities:
+      direct: War-eeun
       public: Publik
+  statuses_cleanup:
+    keep_direct: Mirout ar c'hannadoù eeun
+    min_age:
+      '1209600': 2 sizhunvezh
+      '15778476': 6 months
+      '2629746': 1 mizvezh
+      '31556952': 1 bloavezh
+      '5259492': 2 months
+      '604800': 1 sizhunvezh
+      '63113904': 2 vloavezh
+      '7889238': 3 months
   stream_entries:
-    pinned: Kannad spilhennet
+    pinned: Toud spilhennet
+    reblogged: en·he deus skignet
   themes:
     default: Mastodoñ (Teñval)
     mastodon-light: Mastodoñ (Sklaer)
@@ -299,10 +522,13 @@ br:
   two_factor_authentication:
     add: Ouzhpennañ
     disable: Diweredekaat
-    edit: Aozañ
+    edit: Kemmañ
   user_mailer:
     warning:
-      statuses: 'Kannadoù meneget :'
+      categories:
+        spam: Spam
+      reason: 'Abeg :'
+      statuses: 'Toudoù meneget :'
       title:
         none: Diwall
     welcome:
diff --git a/config/locales/bs.yml b/config/locales/bs.yml
new file mode 100644
index 000000000..adb1ccc2a
--- /dev/null
+++ b/config/locales/bs.yml
@@ -0,0 +1,12 @@
+---
+bs:
+  errors:
+    '400': The request you submitted was invalid or malformed.
+    '403': You don't have permission to view this page.
+    '404': The page you are looking for isn't here.
+    '406': This page is not available in the requested format.
+    '410': The page you were looking for doesn't exist here anymore.
+    '422': 
+    '429': Too many requests
+    '500': 
+    '503': The page could not be served due to a temporary server failure.
diff --git a/config/locales/ca.yml b/config/locales/ca.yml
index 1652ab8ee..a4dd62e61 100644
--- a/config/locales/ca.yml
+++ b/config/locales/ca.yml
@@ -191,7 +191,7 @@ ca:
         destroy_email_domain_block: Esborra el bloqueig de domini de l'adreça de correu
         destroy_instance: Purga Domini
         destroy_ip_block: Eliminar regla IP
-        destroy_status: Esborrar la publicació
+        destroy_status: Esborra el tut
         destroy_unavailable_domain: Esborra domini no disponible
         destroy_user_role: Destrueix Rol
         disable_2fa_user: Desactiva 2FA
@@ -250,7 +250,7 @@ ca:
         destroy_email_domain_block_html: "%{name} ha desbloquejat el domini de correu electrònic %{target}"
         destroy_instance_html: "%{name} ha purgat el domini %{target}"
         destroy_ip_block_html: "%{name} ha esborrat la regla per a l'IP %{target}"
-        destroy_status_html: "%{name} ha eliminat la publicació de %{target}"
+        destroy_status_html: "%{name} ha eliminat el tut de %{target}"
         destroy_unavailable_domain_html: "%{name} ha représ el lliurament delivery al domini %{target}"
         destroy_user_role_html: "%{name} ha esborrat el rol %{target}"
         disable_2fa_user_html: "%{name} ha desactivat el requisit de dos factors per a l'usuari %{target}"
@@ -297,7 +297,7 @@ ca:
       new:
         create: Crea un anunci
         title: Nou anunci
-      publish: Publica-ho
+      publish: Publica
       published_msg: L’anunci s’ha publicat amb èxit!
       scheduled_for: Programat per a %{time}
       scheduled_msg: Anunci programat per a ser publicat!
@@ -373,6 +373,8 @@ ca:
       add_new: Dominis autoritzats
       created_msg: El domini ha estat correctament autoritzat
       destroyed_msg: S'ha esborrat el domini de la llista blanca
+      export: Exporta
+      import: Importa
       undo: Treure de la llista blanca
     domain_blocks:
       add_new: Afegir nou bloqueig de domini
@@ -382,21 +384,25 @@ ca:
       edit: Editar el bloqueig del domini
       existing_domain_block: Ja s'han imposat mesures més estrictes a %{name}.
       existing_domain_block_html: Ja has imposat uns límits més estrictes a %{name}, l'hauries de <a href="%{unblock_url}">desbloquejar-lo</a> primer.
+      export: Exporta
+      import: Importa
       new:
         create: Crea un bloqueig
         hint: El bloqueig de domini no impedirà la creació de nous comptes en la base de dades, però s'aplicaran de manera retroactiva mètodes de moderació específics sobre aquests comptes.
         severity:
-          desc_html: "<strong>Silenci</strong> farà les publicacions del compte invisibles a tothom que no l'estigui seguint. <strong>La suspensió</strong> eliminarà tots els continguts, multimèdia i les dades del perfil del compte. Usa <strong>Cap</strong> si només vols rebutjar el fitxers multimèdia."
+          desc_html: "<strong>Limitar</strong> farà que les publicacions dels comptes d'aquest domini siguin invisibles per a qualsevol persona que no les segueixi. <strong>Suspendre</strong> eliminarà del vostre servidor tot el contingut, multimèdia i perfil dels comptes d'aquest domini. Utilitza <strong>Cap</strong> si només vols rebutjar fitxers multimèdia."
           noop: Cap
-          silence: Silenci
+          silence: Limitar
           suspend: Suspensió
         title: Bloqueig de domini nou
+      no_domain_block_selected: No s'ha canviat cap bloqueig de domini perquè no se n'ha seleccionat cap
+      not_permitted: No tens permís per a realitzar aquesta acció
       obfuscate: Oculta el nom del domini
-      obfuscate_hint: Oculta parcialment el nom del domini si està activat mostrar la llista de dominis limitats
+      obfuscate_hint: Oculta parcialment el nom del domini si està activat "mostra la llista de dominis limitats"
       private_comment: Comentari privat
       private_comment_hint: Comentari sobre aquesta limitació del domini per a ús intern dels moderadors.
       public_comment: Comentari públic
-      public_comment_hint: Comentari pel públic general sobre aquesta limitació del domini, si la publicació de la llista de limitacions de domini està habilitada.
+      public_comment_hint: Comentari sobre la limitació de domini per al públic en general, si la visibilitat de la llista de limitacions de domini està activada.
       reject_media: Rebutja els fitxers multimèdia
       reject_media_hint: Elimina els fitxers multimèdia emmagatzemats localment i impedeix baixar-ne cap en el futur. Irrellevant en les suspensions
       reject_reports: Rebutja informes
@@ -422,6 +428,20 @@ ca:
       resolved_dns_records_hint_html: El nom del domini resol als següents dominis MX, els quals son els responsables finals per a acceptar els correus. Bloquejar un domini MX bloquejarà els registres des de qualsevol adreça de correu que utilitzi el mateix domini MX, encara que el nom visible del domini sigui diferent. <strong>Ves amb compte no bloquegis els grans proveïdors de correu electrònic.</strong>
       resolved_through_html: Resolt mitjançant %{domain}
       title: Llista negra de correus electrònics
+    export_domain_allows:
+      new:
+        title: Importa dominis permesos
+      no_file: No s'ha seleccionat cap fitxer
+    export_domain_blocks:
+      import:
+        description_html: Estàs a punt d'importar una llista de dominis blocats. Si us plau, revisa aquesta llista amb molta cura, especialment si no l'has creada tu mateix.
+        existing_relationships_warning: Relacions de seguiment existents
+        private_comment_description_html: 'Per a ajudar-te a fer un seguiment d''on provenen els bloquejos importats, es crearan amb el següent comentari privat: <q>%{comment}</q>'
+        private_comment_template: Importar des de %{source} el %{date}
+        title: Importa dominis bloquejats
+      new:
+        title: Importa dominis bloquejats
+      no_file: No s'ha seleccionat cap fitxer
     follow_recommendations:
       description_html: "<strong>Seguir les recomanacions ajuda als nous usuaris a trobar ràpidament contingut interessant</strong>. Quan un usuari no ha interactuat prou amb d'altres com per a formar a qui seguir personalment, aquests comptes li seran recomanats. Es recalculen a diari a partir d'una barreja de comptes amb els compromisos recents més alts i el nombre més alt de seguidors locals per a un idioma determinat."
       language: Per idioma
@@ -550,7 +570,7 @@ ca:
       action_log: Registre d'auditoria
       action_taken_by: Mesures adoptades per
       actions:
-        delete_description_html: Les publicacions reportades seran eliminades i un cop serà gravat per ajudar-te a escalar en futures infraccions des d'el mateix compte.
+        delete_description_html: Les publicacions reportades seran eliminades i un cop serà gravat per a ajudar-te a escalar en futures infraccions des del mateix compte.
         mark_as_sensitive_description_html: Els mèdia de les publicacions reportades seran marcats com a sensibles i una acció serà gravada per ajudar a escalar en futures infraccions del mateix compte.
         other_description_html: Veu més opcions controlant el comportament del compte i personalitza la comunicació al compte reportat.
         resolve_description_html: No serà presa cap acció contra el compte reportat, cap cop serà gravat i l'informe es tancarà.
@@ -679,7 +699,7 @@ ca:
         preamble: Personalitza l'interfície web de Mastodon.
         title: Aparença
       branding:
-        preamble: La marca del teu servidor el diferència dels demés servidors de la xarxa. Aquesta informació es pot mostrar en diversos entorns com ara en l'interfície web, en les aplicacions natives, en les previsualitzacions dels enllaços en altres webs, dins les aplicacions de missatgeria i d'altres. Per aquesta raó, és millor mantenir aquesta informació clara, breu i precisa.
+        preamble: La marca del teu servidor el diferencia dels altres servidors de la xarxa. Aquesta informació es pot mostrar en diversos entorns com ara en la interfície web, en les aplicacions natives, en les previsualitzacions dels enllaços en altres webs, dins les aplicacions de missatgeria i d'altres. Per aquesta raó, val més mantenir aquesta informació clara, breu i precisa.
         title: Marca
       content_retention:
         preamble: Controla com es desa a Mastodon el contingut generat per l'usuari.
@@ -724,10 +744,10 @@ ca:
         title: Contingut multimèdia
       metadata: Metadada
       no_status_selected: No s’han canviat els estatus perquè cap no ha estat seleccionat
-      open: Obrir publicació
-      original_status: Publicació original
+      open: Obrir tut
+      original_status: Tut original
       reblogs: Impulsos
-      status_changed: Publicació canviada
+      status_changed: El tut ha canviat
       title: Estats del compte
       trending: Tendència
       visibility: Visibilitat
@@ -767,7 +787,7 @@ ca:
       links:
         allow: Permet enllaç
         allow_provider: Permet mitjà
-        description_html: Aquests son enllaços que ara mateix s'estan compartint molt per els comptes que el teu servidor en veu les publicacions. Poden ajudar als teus usuaris a trobar què està passant en el món. Cap dels enllaços es mostra publicament fins que no aprovis el mitjà. També pots aceptar o rebutjar enllaços individuals.
+        description_html: Aquests són enllaços que ara mateix estan compartint molt els comptes dels quals el teu servidor veu les publicacions. Poden ajudar els teus usuaris a trobar què està passant en el món. Cap dels enllaços es mostra públicament fins que no aprovis el mitjà. També pots acceptar o rebutjar enllaços individuals.
         disallow: No permetre l'enllaç
         disallow_provider: No permetre el mitjà
         no_link_selected: No s'ha canviat cap enllaç perquè cap ha estat seleccionat
@@ -787,10 +807,10 @@ ca:
         title: Mitjans
       rejected: Rebutjat
       statuses:
-        allow: Permet publicació
+        allow: Permet tut
         allow_account: Permet autor
-        description_html: Aquestes son publicacions que el teu servidor veu i que ara mateix s'estan compartint i afavorint molt. Poden ajudar als teus nous usuaris i als que retornen a trobar més gent a qui seguir. Cap publicació es mostra publicament fins que no aprovis l'autor i l'autor permeti que el seu compte sigui sugerit a altres. També pots aceptar o rebutjar publicacions individuals.
-        disallow: Rebutja publicació
+        description_html: Aquests són tuts que el teu servidor veu i que ara mateix s'estan compartint i afavorint molt. Poden ajudar als teus nous usuaris i als que retornen a trobar més gent a qui seguir. Cap tut es mostra públicament fins que no aprovis l'autor i l'autor permeti que el seu compte sigui suggerit a altres. També pots acceptar o rebutjar tuts individualment.
+        disallow: Rebutja tut
         disallow_account: Rebutja autor
         no_status_selected: No s'han canviat les publicacions en tendència perquè cap ha estat seleccionada
         not_discoverable: L'autor no ha activat poder ser detectable
@@ -806,7 +826,7 @@ ca:
           tag_servers_dimension: Els millors servidors
           tag_servers_measure: diferents servidors
           tag_uses_measure: total usos
-        description_html: Aquestes son etiquetes que ara mateix estan apareixen en moltes publicacions que el teu servidor veu. Poden ajudar als teus usuaris a trobar de què està parlant majoritariament la gent en aquest moment. Cap etiqueta es mostra publicament fins que no l'aprovis.
+        description_html: Aquestes són les etiquetes que ara mateix estan apareixent en moltes publicacions que el teu servidor veu. Poden ajudar els teus usuaris a trobar de què està parlant majoritàriament la gent en aquest moment. Cap etiqueta es mostra públicament fins que no l'aprovis.
         listable: Es pot suggerir
         no_tag_selected: No s'ha canviat cap etiqueta perquè cap ha estat seleccionada
         not_listable: No es pot suggerir
@@ -889,7 +909,7 @@ ca:
     remove: Desvincula l'àlies
   appearance:
     advanced_web_interface: Interfície web avançada
-    advanced_web_interface_hint: 'Si vols fer ús de tota l''amplada de la teva pantalla, l''interfície web avançada et permet configurar diverses columnes per a veure molta més informació al mateix temps: Inici, notificacions, línia de temps federada i qualsevol quantitat de llistes i etiquetes.'
+    advanced_web_interface_hint: 'Si vols fer ús de tota l''amplada de la teva pantalla, la interfície web avançada et permet configurar diverses columnes per a veure molta més informació al mateix temps: Inici, notificacions, línia de temps federada i qualsevol quantitat de llistes i etiquetes.'
     animations_and_accessibility: Animacions i accessibilitat
     confirmation_dialogs: Diàlegs de confirmació
     discovery: Descobriment
@@ -898,14 +918,14 @@ ca:
       guide_link: https://crowdin.com/project/mastodon
       guide_link_text: Tothom hi pot contribuir.
     sensitive_content: Contingut sensible
-    toot_layout: Disseny de la publicació
+    toot_layout: Disseny del tut
   application_mailer:
     notification_preferences: Canvia les preferències de correu
     salutation: "%{name},"
     settings: 'Canvia les preferències de correu: %{link}'
     view: 'Visualització:'
     view_profile: Mostra el perfil
-    view_status: Mostra la publicació
+    view_status: Mostra el tut
   applications:
     created: L'aplicació s'ha creat correctament
     destroyed: L'aplicació s'ha suprimit correctament
@@ -914,7 +934,7 @@ ca:
     warning: Aneu amb compte amb aquestes dades. No les compartiu mai amb ningú!
     your_token: El teu identificador d'accés
   auth:
-    apply_for_account: Apunta't a la llista d'espera
+    apply_for_account: Sol·licitar un compte
     change_password: Contrasenya
     delete_account: Suprimeix el compte
     delete_account_html: Si vols suprimir el compte pots <a href="%{path}">fer-ho aquí</a>. Se't demanarà confirmació.
@@ -929,7 +949,7 @@ ca:
     link_to_otp: Introdueix el teu codi de doble factor des d’el teu mòbil o un codi de recuperació
     link_to_webauth: Usa el teu dispositiu de clau de seguretat
     log_in_with: Inicia sessió amb
-    login: Iniciar sessió
+    login: Inicia la sessió
     logout: Surt
     migrate_account: Mou a un compte diferent
     migrate_account_html: Si vols redirigir aquest compte a un altre diferent, el pots <a href="%{path}">configurar aquí</a>.
@@ -1003,7 +1023,7 @@ ca:
       x_months: "%{count} mesos"
       x_seconds: "%{count} s"
   deletes:
-    challenge_not_passed: L'informació que has entrat no és correcte
+    challenge_not_passed: La informació que has introduït no és correcta
     confirm_password: Introdueix la contrasenya actual per a verificar la identitat
     confirm_username: Escriu el teu nom d'usuari per a confirmar el procediment
     proceed: Suprimeix el compte
@@ -1035,11 +1055,11 @@ ca:
       description_html: Aquestes son accions preses contra el teu compte i avisos que se t'han enviat per l'equip de %{instance}.
       recipient: Dirigida a
       reject_appeal: Rebutja l'apel·lació
-      status: 'Publicació #%{id}'
-      status_removed: Publicació ja esborrada del sistema
+      status: 'Tut #%{id}'
+      status_removed: Tut ja esborrat del sistema
       title: "%{action} del %{date}"
       title_actions:
-        delete_statuses: Eliminació de publicació
+        delete_statuses: Eliminació del tut
         disable: Congelació del compte
         mark_statuses_as_sensitive: Marcatge de les publicacions com a sensibles
         none: Avís
@@ -1065,7 +1085,7 @@ ca:
       content: Ho sentim, però alguna cosa ha fallat a la nostra banda.
       title: Aquesta pàgina no es correcta
     '503': La pàgina no podria ser servida a causa d'un error temporal del servidor.
-    noscript_html: Per a utilitzar Mastodon, activa el JavaScript. També pots provar una de les <a href="%{apps_path}"> aplicacions natives</a> de Mastodon per a la teva plataforma.
+    noscript_html: Per a usar Mastodon, activa el JavaScript. També pots provar una de les <a href="%{apps_path}"> aplicacions natives</a> de Mastodon per a la teva plataforma.
   existing_username_validator:
     not_found: no s'ha pogut trobar cap usuari local amb aquest nom d'usuari
     not_found_multiple: no s'ha pogut trobar %{usernames}
@@ -1116,7 +1136,7 @@ ca:
         other: "%{count} paraules clau"
       statuses:
         one: "%{count} publicació"
-        other: "%{count} publicacions"
+        other: "%{count} tuts"
       statuses_long:
         one: "%{count} publicació individual ocultada"
         other: "%{count} publicacions individuals ocultades"
@@ -1159,6 +1179,7 @@ ca:
     invalid_markup: 'conté HTML markup no vàlid: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Fitxer CSV invàlid. Error: %{error}'
       over_rows_processing_limit: conté més de %{count} files
     modes:
       merge: Fusionar
@@ -1329,7 +1350,7 @@ ca:
       too_many_options: no pot contenir més de %{max} opcions
   preferences:
     other: Altre
-    posting_defaults: Valors predeterminats de publicació
+    posting_defaults: Valors predeterminats del tut
     public_timelines: Línies de temps públiques
   privacy_policy:
     title: Política de Privacitat
@@ -1355,14 +1376,14 @@ ca:
     remove_selected_follows: Deixa de seguir als usuaris seleccionats
     status: Estat del compte
   remote_follow:
-    missing_resource: No s'ha pogut trobar la URL de redirecció necessària per al compte
+    missing_resource: No s'ha pogut trobar l'URL de redirecció necessària per al compte
   reports:
     errors:
       invalid_rules: no fa referència a normes vàlides
   rss:
     content_warning: 'Avís de contingut:'
     descriptions:
-      account: Publicacions des de @%{acct}
+      account: Tuts des de @%{acct}
       tag: 'Publicacions etiquetades #%{hashtag}'
   scheduled_statuses:
     over_daily_limit: Has superat el límit de %{limit} publicacions programades per a avui
@@ -1453,13 +1474,13 @@ ca:
       other: 'conté les etiquetes no permeses: %{tags}'
     edited_at_html: Editat %{date}
     errors:
-      in_reply_not_found: La publicació a la qual intentes respondre sembla que no existeix.
+      in_reply_not_found: El tut al qual intentes respondre sembla que no existeix.
     open_in_web: Obre en la web
     over_character_limit: Límit de caràcters de %{max} superat
     pin_errors:
-      direct: Les publicacions que només son visibles per els usuaris mencionats no poden ser fixades
+      direct: Les publicacions que només són visibles per als usuaris mencionats no poden ser fixades
       limit: Ja has fixat el màxim nombre de publicacions
-      ownership: No es pot fixar la publicació d'algú altre
+      ownership: No es pot fixar el tut d'algú altre
       reblog: No es pot fixar un impuls
     poll:
       total_people:
@@ -1517,9 +1538,9 @@ ca:
     min_favs: Mantenir les publicacions afavorides més de
     min_favs_hint: No suprimeix cap de les teves publicacions que hagin rebut més d'aquesta quantitat de favorits. Deixa-ho en blanc per suprimir publicacions independentment del nombre de favorits que tinguin
     min_reblogs: Mantenir les publicacions impulsades més de
-    min_reblogs_hint: No suprimeix cap de les teves publicacions que s'hagin impulsat més que aquest número de vegades. Deixa-ho en blanc per suprimir les publicacions independentment del nombre d'impulsos que tinguin
+    min_reblogs_hint: No suprimeix cap de les teves publicacions que s'hagin impulsat més que aquest nombre de vegades. Deixa-ho en blanc per a suprimir les publicacions independentment del nombre d'impulsos que tinguin.
   stream_entries:
-    pinned: Publicació fixada
+    pinned: Tut fixat
     reblogged: ha impulsat
     sensitive_content: Contingut sensible
   strikes:
@@ -1549,7 +1570,7 @@ ca:
     otp: Aplicació autenticadora
     recovery_codes: Codis de recuperació de còpia de seguretat
     recovery_codes_regenerated: Codis de recuperació regenerats amb èxit
-    recovery_instructions_html: Si mai perds l'accés al teu telèfon pots utilitzar un dels codis de recuperació a continuació per a recuperar l'accés al teu compte. <strong>Cal mantenir els codis de recuperació en lloc segur</strong>. Per exemple, imprimint-los i guardar-los amb altres documents importants.
+    recovery_instructions_html: Si mai perds l'accés al teu telèfon, pots fer servir un dels codis de recuperació a continuació per a recuperar l'accés al teu compte. <strong>Cal mantenir els codis de recuperació en lloc segur</strong>. Per exemple, imprimint-los i guardar-los amb altres documents importants.
     webauthn: Claus de seguretat
   user_mailer:
     appeal_approved:
@@ -1563,8 +1584,8 @@ ca:
       title: Apel·lació rebutjada
     backup_ready:
       explanation: Has sol·licitat una copia completa del teu compte Mastodon. Ara ja està a punt per a descàrrega!
-      subject: El teu arxiu està preparat per a descàrrega
-      title: Recollida del arxiu
+      subject: L'arxiu està preparat per a descàrrega
+      title: Recollida de l'arxiu
     suspicious_sign_in:
       change_password: canvia la teva contrasenya
       details: 'Aquí estan els detalls del inici de sessió:'
@@ -1579,12 +1600,12 @@ ca:
         spam: Contingut brossa
         violation: El contingut viola les següents guies de la comunitat
       explanation:
-        delete_statuses: Algunes de les teves publicacions s'han trobat que violen una o més directrius de la comunitat i per tant han estat eliminades per els moderadors de %{instance}.
-        disable: Ja no pots utilitzar el teu compte però el teu perfil i altres dades segueixen intactes. Pots demanar una copia de les teves dades, canviar els ajustaments del teu compte o esborrar-lo.
-        mark_statuses_as_sensitive: Algunes de les teves publicacions han estat marcades com a sensibles per els moderadors de %{instance}. Això significa que la gent necessitarà tocar els mèdia en les publicacions per a que la previsualització sigui mostrada. Tu mateix pots marcar els teus mèdia com a sensibles quan publiquis en el futur.
-        sensitive: A partir d'ara, tots els mèdia pujats seran marcats com a sensibles i ocultats darrera un avís.
+        delete_statuses: S'ha trobat que algunes de les teves publicacions violen una o més directrius de la comunitat i, per tant, han estat eliminades pels moderadors de %{instance}.
+        disable: Ja no pots utilitzar el teu compte, però el teu perfil i altres dades encara són intactes. Pots demanar una còpia de les teves dades, canviar els ajustaments del teu compte o esborrar-lo.
+        mark_statuses_as_sensitive: Algunes de les teves publicacions han estat marcades com a sensibles pels moderadors de %{instance}. Això significa que la gent necessitarà tocar els mèdia en les publicacions perquè la previsualització es mostri. Tu mateix pots marcar els teus mèdia com a sensibles quan publiquis en el futur.
+        sensitive: A partir d'ara, tots els mèdia pujats seran marcats com a sensibles i ocultats darrere d'un avís.
         silence: Encara pots fer servir el teu compte però només la gent que ja t'està seguint veuran les teves publicacions en aquest servidor i tu podries ser exclòs de les diverses opcions de descobriment. De totes maneres altres podrien encara seguir-te manualment.
-        suspend: Ja no pots utilitzar el teu compte i el teu perfil i altres dades ja no son accessibles. Encara pots iniciar sessió per a demanar una copia de les teves dades fins que siguin totalment eliminades als 30 dies però es mantindran les dades bàsiques per evitar que esquivis la suspensió.
+        suspend: Ja no pots usar el teu compte i el teu perfil i altres dades ja no són accessibles. Encara pots iniciar sessió per a demanar una còpia de les teves dades fins que siguin totalment eliminades al cap de 30 dies, però es mantindran les dades bàsiques per a evitar que esquivis la suspensió.
       reason: 'Motiu:'
       statuses: 'Publicacions citades:'
       subject:
diff --git a/config/locales/ckb.yml b/config/locales/ckb.yml
index 483734fea..f774459f7 100644
--- a/config/locales/ckb.yml
+++ b/config/locales/ckb.yml
@@ -310,9 +310,7 @@ ckb:
         create: دروستکردنی بلۆک
         hint: بلۆکی دۆمەین رێگری لە دروستکردنی هەژمارەی چوونەژوورەوە لە بنکەی زانیارێکان ناکات ، بەڵکو بە شێوەیەکی دووبارە و خۆکارانە رێوشێوازی پێشکەوتوو تایبەت لەسەر ئەو هەژمارانە جێبەجێ دەکات.
         severity:
-          desc_html: "<strong> بێدەنگی</strong> وا دەکات کە نووسراوەکانی هەژمارەکان نەبینراوە بێت بۆ هەر کەسێک کە شوێنیان نەکەوێ. <strong>ڕاگرتنی</strong> هەموو ناوەڕۆکی هەژمارەکە، میدیا، و داتای پرۆفایلەکەی بەکارهێنان. <strong>هیچ </strong> ئەگەر دەتەوێت فایلەکانی میدیا ڕەت بکەیتەوە."
           noop: هیچ
-          silence: بێدەنگ
           suspend: ڕاگرتن
         title: بلۆکی دۆمەینی نوێ
       obfuscate: ناوی دۆمەینەکە تەمومژاوی بکە
diff --git a/config/locales/co.yml b/config/locales/co.yml
index c9d22cd12..2ab6c63f9 100644
--- a/config/locales/co.yml
+++ b/config/locales/co.yml
@@ -317,9 +317,7 @@ co:
         create: Creà un blucchime
         hint: U blucchime di duminiu ùn impedirà micca a creazione di conti indè a database, mà metudi di muderazione specifiche saranu applicati.
         severity:
-          desc_html: Cù <strong>Silenzà</strong>, solu l’abbunati di u contu viderenu i so missaghji. <strong>Suspende</strong> sguassarà tutti i cuntenuti è dati di u contu. Utilizate <strong>Nisuna</strong> s’è voi vulete solu righjittà fugliali media.
           noop: Nisuna
-          silence: Silenzà
           suspend: Suspende
         title: Novu blucchime di duminiu
       obfuscate: Uscurà u nome di duminiu
diff --git a/config/locales/cs.yml b/config/locales/cs.yml
index 4a1674893..923b4cd29 100644
--- a/config/locales/cs.yml
+++ b/config/locales/cs.yml
@@ -75,7 +75,7 @@ cs:
       enabled: Povoleno
       enabled_msg: Účet %{username} byl úspěšně rozmrazen
       followers: Sledující
-      follows: Sleduje
+      follows: Sledované
       header: Záhlaví
       inbox_url: URL příchozí schránky
       invite_request_text: Důvody založení
@@ -387,6 +387,8 @@ cs:
       add_new: Povolit federaci s doménou
       created_msg: S doménou byla úspěšně povolena federace
       destroyed_msg: S doménou byla zakázána federace
+      export: Export
+      import: Import
       undo: Zakázat federaci s doménou
     domain_blocks:
       add_new: Přidat novou blokaci domény
@@ -396,15 +398,19 @@ cs:
       edit: Upravit blokaci domény
       existing_domain_block: Pro %{name} už jste nastavili přísnější omezení.
       existing_domain_block_html: Pro %{name} už jste nastavili přísnější omezení, nejprve ji <a href="%{unblock_url}">odblokujte</a>.
+      export: Export
+      import: Import
       new:
         create: Vytvořit blokaci
         hint: Blokace domény nezakáže vytváření záznamů účtů v databázi, ale bude na tyto účty zpětně a automaticky aplikovat specifické metody moderování.
         severity:
-          desc_html: "<strong>Ztišení</strong> skryje příspěvky z účtu komukoliv, kdo jej nesleduje. <strong>Pozastavení</strong> odstraní všechen obsah, média a profilová data účtu. Pro pouhé odmítnutí mediálních souborů použijte funkci <strong>Žádné</strong>."
+          desc_html: "<strong>Omezit</strong> zneviditelní příspěvky účtů z této domény všem, kdo je nesledují. <strong>Pozastavit</strong> odstraní z vašeho serveru všechna data obsahu, médií a profilu účtů z této domény. Pokud chcete pouze odmítnout mediální soubory, použijte <strong>Nic</strong>."
           noop: Žádné
-          silence: Ztišit
+          silence: Omezit
           suspend: Pozastavit
         title: Nová blokace domény
+      no_domain_block_selected: Nebyly změněny žádné blokované domény, protože nebyla žádná vybrána
+      not_permitted: K provedení této akce nemáte oprávnění
       obfuscate: Obfuskovat doménu
       obfuscate_hint: Částečně zkreslit název domény v seznamu, pokud je povoleno zveřejnění seznamu omezených domén
       private_comment: Soukromý komentář
@@ -438,6 +444,20 @@ cs:
       resolved_dns_records_hint_html: Doménové jméno vede na následující MX domény, které mají nakonec na starost přijímání e-mailů. Blokování MX domény zablokuje registrace z jakékoliv e-mailové adresy, která používá stejnou MX doménu, i když je viditelné doménové jméno jiné. <strong>Dejte si pozor, abyste nezablokovali velké e-mailové poskytovatele.</strong>
       resolved_through_html: Přeložena přes %{domain}
       title: Blokované e-mailové domény
+    export_domain_allows:
+      new:
+        title: Importovat povolené domény
+      no_file: Nebyl vybrán žádný soubor
+    export_domain_blocks:
+      import:
+        description_html: Chystáte se importovat seznam blokovaných domén. Zkontrolujte prosím tento seznam velmi opatrně, zejména pokud jste tento seznam nenapsali vy sami.
+        existing_relationships_warning: Existující vztahy sledování
+        private_comment_description_html: 'Abychom vám pomohli sledovat, odkud pochází importované bloky, budou tyto importované bloky vytvořeny s následující soukromou poznámkou: <q>%{comment}</q>'
+        private_comment_template: Importováno z %{source} dne %{date}
+        title: Importovat blokované domény
+      new:
+        title: Importovat blokované domény
+      no_file: Nebyl vybrán žádný soubor
     follow_recommendations:
       description_html: "<strong>Doporučená sledování pomáhají novým uživatelům rychle najít zajímavý obsah</strong>. Pokud uživatel neinteragoval s ostatními natolik, aby mu byla vytvořena doporučená sledování na míru, jsou použity tyto účty. Jsou přepočítávány na denní bázi ze směsi účtů s největším nedávným zapojením a nejvyšším počtem místních sledovatelů pro daný jazyk."
       language: Pro jazyk
@@ -950,7 +970,7 @@ cs:
     warning: Zacházejte s těmito daty opatrně. Nikdy je s nikým nesdílejte!
     your_token: Váš přístupový token
   auth:
-    apply_for_account: Přejít na čekací frontu
+    apply_for_account: Požádat o účet
     change_password: Heslo
     delete_account: Odstranit účet
     delete_account_html: Chcete-li odstranit svůj účet, <a href="%{path}">pokračujte zde</a>. Budete požádáni o potvrzení.
@@ -1209,6 +1229,7 @@ cs:
     invalid_markup: 'obsahuje neplatný HTML kód: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Neplatný soubor CSV. Chyba: %{error}'
       over_rows_processing_limit: obsahuje více než %{count} řádků
     modes:
       merge: Sloučit
diff --git a/config/locales/cy.yml b/config/locales/cy.yml
index 91ef6a172..a63be45e4 100644
--- a/config/locales/cy.yml
+++ b/config/locales/cy.yml
@@ -1,12 +1,13 @@
 ---
 cy:
   about:
-    about_mastodon_html: Mae Mastodon yn rwydwaith cymdeithasol sy'n seiliedig ar brotocolau gwe a meddalwedd cod agored rhad ac am ddim. Yn debyg i e-bost mae'n ddatganoledig.
+    about_mastodon_html: 'Rhwydwaith cymdeithasol y dyfodol: Dim hysbysebion, dim gwyliadwriaeth gorfforaethol, dylunio moesegol, a datganoli! Chi sy berchen eich data gyda Mastodon!'
     contact_missing: Heb ei osod
     contact_unavailable: Ddim yn berthnasol
     hosted_on: Mastodon wedi ei weinyddu ar %{domain}
+    title: Ynghylch
   accounts:
-    follow: Dilynwch
+    follow: Dilyn
     followers:
       few: Dilynwyr
       many: Dilynwyr
@@ -15,77 +16,83 @@ cy:
       two: Dilynwyr
       zero: Dilynwyr
     following: Yn dilyn
-    instance_actor_flash: Mae'r cyfrif hwn yn actor rhithwir a ddefnyddir i gynrychioli'r gweinydd ei hun ac nid unrhyw ddefnyddiwr unigol. Fe'i defnyddir at ddibenion ffederasiwn ac ni ddylid ei atal.
+    instance_actor_flash: Mae'r cyfrif hwn yn actor rhithwir sy'n cael ei ddefnyddio i gynrychioli'r gweinydd ei hun ac nid unrhyw ddefnyddiwr unigol. Fe'i defnyddir at ddibenion ffederasiwn ac ni ddylid ei atal.
     last_active: diweddaraf
     link_verified_on: Gwiriwyd perchnogaeth y ddolen yma ar %{date}
     nothing_here: Does dim byd yma!
     pin_errors:
-      following: Rhaid i ti fod yn dilyn y person yr ydych am ei gymeradwyo yn barod
+      following: Rhaid i chi fod yn dilyn y person yr ydych am ei gymeradwyo yn barod
     posts:
-      few: Tŵtiau
-      many: Tŵtiau
-      one: Tŵt
-      other: Tŵtiau
-      two: Tŵtiau
-      zero: Tŵtiau
+      few: Postiadau
+      many: Postiadau
+      one: Postiad
+      other: Postiadau
+      two: Postiadu
+      zero: Postiadau
     posts_tab_heading: Postiadau
   admin:
     account_actions:
       action: Cyflawni gweithred
-      title: Perfformio gweithrediad goruwchwylio ar %{acct}
+      title: Cyflawni gweithred cymedroli ar %{acct}
     account_moderation_notes:
       create: Gadael nodyn
-      created_msg: Crewyd nodyn goruwchwylio yn llwyddiannus!
-      destroyed_msg: Dinistrwyd nodyn goruwchwylio yn llwyddiannus!
+      created_msg: Crëwyd nodyn cymedroli'n llwyddiannus!
+      destroyed_msg: Dinistriwyd nodyn cymedroli yn llwyddiannus!
     accounts:
-      add_email_domain_block: Cosbrestru parth e-bost
+      add_email_domain_block: Rhwystro parth e-bost
       approve: Cymeradwyo
-      approved_msg: Wedi llwyddo cymeradwyo cais cofrestru %{username}
+      approved_msg: Wedi llwyddo i gymeradwyo cais cofrestru %{username}
       are_you_sure: Ydych chi'n siŵr?
       avatar: Afatar
       by_domain: Parth
       change_email:
-        current_email: E-bost Cyfredol
-        label: Newid E-bost
-        new_email: E-bost Newydd
-        submit: Newid E-bost
-        title: Newid E-bost i %{username}
+        changed_msg: E-bost wedi newid yn llwyddiannus!
+        current_email: E-bost cyfredol
+        label: Newid e-bost
+        new_email: E-bost newydd
+        submit: Newid e-bost
+        title: Newid e-bost i %{username}
+      change_role:
+        changed_msg: Rôl wedi ei newid yn llwyddiannus!
+        label: Newid rôl
+        no_role: Dim rôl
+        title: Newid rôl %{username}
       confirm: Cadarnhau
       confirmed: Cadarnhawyd
-      confirming: Cadarnhau
-      custom: Arbennig
+      confirming: Yn cadarnhau
+      custom: Cyfaddas
       delete: Dileu data
       deleted: Wedi dileu
       demote: Diraddio
       destroyed_msg: Mae data %{username} bellach mewn ciw i gael ei ddileu yn fuan
-      disable: Diffodd
+      disable: Rhewi
       disable_sign_in_token_auth: Analluogi dilysu tocynnau e-bost
       disable_two_factor_authentication: Diffodd 2FA
-      disabled: Wedi ei ddiffodd
+      disabled: Wedi rhewi
       display_name: Enw arddangos
       domain: Parth
       edit: Golygu
       email: E-bost
-      email_status: Statws E-bost
-      enable: Galluogi
+      email_status: Statws e-bost
+      enable: Dad rewi
       enable_sign_in_token_auth: Galluogi dilysu tocynnau e-bost
       enabled: Wedi ei alluogi
-      enabled_msg: Wedi dadrewi cyfrif %{username} yn llwyddianus
+      enabled_msg: Wedi dadrewi cyfrif %{username} yn llwyddiannus
       followers: Dilynwyr
       follows: Yn dilyn
-      header: Pennawd
-      inbox_url: URL Mewnflwch
+      header: Pennyn
+      inbox_url: URL blwch derbyn
       invite_request_text: Rhesymau dros ymuno
       invited_by: Gwahoddwyd gan
       ip: IP
-      joined: Ymunodd
+      joined: Ymunwyd
       location:
         all: Popeth
         local: Lleol
         remote: Pell
         title: Lleoliad
       login_status: Statws mewngofnodi
-      media_attachments: Atodiadau
+      media_attachments: Atodiadau cyfryngau
       memorialize: Creu cyfrif coffa
       memorialized: Wedi troi'n gyfrif coffa
       memorialized_msg: Llwyddodd i droi %{username} yn gyfrif coffa
@@ -93,17 +100,26 @@ cy:
         active: Yn weithredol
         all: Popeth
         pending: Yn aros
+        silenced: Cyfyngedig
         suspended: Wedi ei atal
-        title: Goruwchwyliad
-      moderation_notes: Nodiadau goruwchwylio
+        title: Cymedroli
+      moderation_notes: Nodiadau cymedroli
       most_recent_activity: Gweithgarwch diweddaraf
       most_recent_ip: IP diweddaraf
-      no_account_selected: Ni newidwyd dim cyfrif achos ni ddewiswyd dim un
+      no_account_selected: Heb newid unrhyw gyfrif gan na ddewiswyd un
       no_limits_imposed: Dim terfynau wedi'i gosod
+      no_role_assigned: Dim rôl wedi'i neilltuo
       not_subscribed: Heb danysgrifio
       pending: Yn aros am adolygiad
       perform_full_suspension: Atal
       previous_strikes: Rhybuddion blaenorol
+      previous_strikes_description_html:
+        few: Mae gan y cyfrif hwn <strong>%{count}</strong> rybudd.
+        many: Mae gan y cyfrif hwn <strong>%{count}</strong> rybudd.
+        one: Mae gan y cyfrif hwn <strong>un</strong> rhybudd.
+        other: Mae gan y cyfrif hwn <strong>%{count}</strong> rhybudd.
+        two: Mae gan y cyfrif hwn <strong>%{count}</strong> rybudd.
+        zero: Mae gan y cyfrif hwn <strong>%{count}</strong> rybudd.
       promote: Hyrwyddo
       protocol: Protocol
       public: Cyhoeddus
@@ -113,164 +129,324 @@ cy:
       reject: Gwrthod
       rejected_msg: Wedi gwrthod cais cofrestru %{username}
       remove_avatar: Dileu afatar
-      remove_header: Dileu pennawd
+      remove_header: Dileu pennyn
+      removed_avatar_msg: Llwyddwyd i ddileu delwedd afatar %{username}
+      removed_header_msg: Llwyddwyd i ddileu delwedd pennyn %{username}
       resend_confirmation:
         already_confirmed: Mae'r defnyddiwr hwn wedi ei gadarnhau yn barod
-        send: Ailanfonwch e-bost cadarnhad
+        send: Ail anfon e-bost cadarnhad
         success: E-bost cadarnhau wedi ei anfon yn llwyddiannus!
       reset: Ailosod
       reset_password: Ailosod cyfrinair
-      resubscribe: Aildanysgrifio
+      resubscribe: Ail danysgrifio
       role: Rôl
       search: Chwilio
-      search_same_email_domain: Defnyddwyr eraill gyda'r un parth ebost
+      search_same_email_domain: Defnyddwyr eraill gyda'r un parth e-bost
       search_same_ip: Defnyddwyr eraill gyda'r un IP
-      shared_inbox_url: URL Mewnflwch wedi ei rannu
+      security_measures:
+        only_password: Cyfrinair yn unig
+        password_and_2fa: Cyfrinair a 2FA
+      sensitive: Grym-sensitif
+      sensitized: Wedi'i farcio fel sensitif
+      shared_inbox_url: URL blwch derbyn wedi ei rannu
       show:
         created_reports: Adroddiadau a wnaed
         targeted_reports: Adroddwyd gan eraill
-      silence: Tawelu
-      silenced: Tawelwyd
-      statuses: Statysau
+      silence: Cyfyngu
+      silenced: Cyfyngwyd
+      statuses: Postiadau
+      strikes: Rhybuddion blaenorol
       subscribe: Tanysgrifio
       suspend: Atal
       suspended: Ataliwyd
+      suspension_irreversible: Mae data'r cyfrif hwn wedi'i ddileu'n ddiwrthdro. Gallwch ddad-atal y cyfrif i'w wneud yn ddefnyddiadwy ond ni fydd yn adennill unrhyw ddata a oedd ganddo o'r blaen.
+      suspension_reversible_hint_html: Mae'r cyfrif wedi'i atal, a bydd y data'n cael ei ddileu yn llawn ar %{date}. Tan hynny, mae modd adfer y cyfrif heb unrhyw effeithiau gwael. Os dymunwch gael gwared ar holl ddata'r cyfrif ar unwaith, gallwch wneud hynny isod.
       title: Cyfrifon
+      unblock_email: Dadflocio cyfeiriad e-bost
+      unblocked_email_msg: Llwyddwyd i ddadflocio cyfeiriad e-bost %{username}
       unconfirmed_email: E-bost heb ei gadarnhau
-      undo_silenced: Dadwneud tawelu
+      undo_sensitized: Dadwneud grym-sensitif
+      undo_silenced: Dadwneud cyfyngu
       undo_suspension: Dadwneud ataliad
+      unsilenced_msg: Wedi llwyddo i ddadwneud cyfyngiad cyfrif %{username}
       unsubscribe: Dad-danysgrifio
+      unsuspended_msg: Llwyddwyd i ddad-atal cyfrif %{username}
       username: Enw defnyddiwr
+      view_domain: Gweld crynodeb ar gyfer parth
       warn: Rhybuddio
       web: Gwe
-      whitelisted: Rhestredig wen
+      whitelisted: Caniatáu ar gyfer ffedereiddio
     action_logs:
       action_types:
+        approve_appeal: Cymeradwyo'r Apêl
+        approve_user: Cymeradwyo Defnyddiwr
         assigned_to_self_report: Neilltuo Adroddiad
-        change_email_user: Newid Ebost ar gyfer Defnyddiwr
+        change_email_user: Newid E-bost ar gyfer Defnyddiwr
+        change_role_user: Newid Rôl y Defnyddiwr
         confirm_user: Cadarnhau Defnyddiwr
         create_account_warning: Creu Rhybydd
         create_announcement: Creu Cyhoeddiad
-        create_custom_emoji: Creu Emoji Addasiedig
-        create_domain_allow: Creu Alluogiad Parth
+        create_canonical_email_block: Creu Bloc E-bost
+        create_custom_emoji: Creu Emoji Cyfaddas
+        create_domain_allow: Creu Caniatáu Parth
         create_domain_block: Creu Gwaharddiad Parth
-        create_email_domain_block: Creu Gwaharddiad Parth Ebost
+        create_email_domain_block: Creu Gwaharddiad Parth E-bost
+        create_ip_block: Creu rheol IP
+        create_unavailable_domain: Creu Parth Ddim ar Gael
+        create_user_role: Creu Rôl
         demote_user: Diraddio Defnyddiwr
         destroy_announcement: Dileu Cyhoeddiad
-        destroy_custom_emoji: Dileu Emoji Addasiedig
-        destroy_domain_allow: Dileu Alluogiad Parth
+        destroy_canonical_email_block: Dileu Bloc E-bost
+        destroy_custom_emoji: Dileu Emoji Cyfaddas
+        destroy_domain_allow: Dileu Caniatáu Parth
         destroy_domain_block: Dileu Gwaharddiad Parth
-        destroy_email_domain_block: Dileu gwaharddiad parth ebost
+        destroy_email_domain_block: Dileu gwaharddiad parth e-bost
+        destroy_instance: Clirio Parth
         destroy_ip_block: Dileu rheol IP
         destroy_status: Dileu Statws
+        destroy_unavailable_domain: Dileu Parth Ddim ar Gael
+        destroy_user_role: Dinistrio Rôl
         disable_2fa_user: Diffodd 2FA
-        disable_custom_emoji: Analluogi Emoji Addasiedig
+        disable_custom_emoji: Analluogi Emoji Cyfaddas
+        disable_sign_in_token_auth_user: Analluogi Dilysu Tocyn E-bost ar gyfer Defnyddiwr
         disable_user: Analluogi Defnyddiwr
-        enable_custom_emoji: Alluogi Emoji Addasiedig
-        enable_user: Alluogi Defnyddiwr
+        enable_custom_emoji: Alluogi Emoji Cyfaddas
+        enable_sign_in_token_auth_user: Galluogi Dilysu Tocyn E-bost ar gyfer Defnyddiwr
+        enable_user: Galluogi Defnyddiwr
         memorialize_account: Cofadeilio Cyfrif
         promote_user: Dyrchafu Defnyddiwr
+        reject_appeal: Gwrthod Apêl
+        reject_user: Gwrthod Defnyddiwr
         remove_avatar_user: Tynnu Afatar
         reopen_report: Ailagor Adroddiad
+        resend_user: Ail-anfon E-bost Cadarnhad
         reset_password_user: Ailosod Cyfrinair
         resolve_report: Datrus Adroddiad
-        silence_account: Tawelu Cyfrif
+        sensitive_account: Cyfrif Grym-Sensitif
+        silence_account: Cyfyngu Cyfrif
         suspend_account: Gwahardd Cyfrif Dros Dro
         unassigned_report: Dadneilltuo Adroddiad
-        unsilence_account: Dadawelu Cyfrif
+        unblock_email_account: Dadflocio cyfeiriad e-bost
+        unsensitive_account: Dadwneud Cyfrif Grym-Sensitif
+        unsilence_account: Dad-gyfyngu Cyfrif
         unsuspend_account: Tynnu Gwahardd Cyfrif Dros Dro
         update_announcement: Diweddaru Cyhoeddiad
-        update_custom_emoji: Diweddaru Emoji Addasiedig
+        update_custom_emoji: Diweddaru Emoji Cyfaddas
+        update_domain_block: Diweddaru'r Blocio Parth
+        update_ip_block: Diweddaru rheol IP
         update_status: Diweddaru Statws
+        update_user_role: Diweddaru Rôl
       actions:
-        memorialize_account_html: Newidodd %{name} gyfrif %{target} i dudalen goffa
+        approve_appeal_html: Mae %{name} wedi cymeradwyo penderfyniad cymedroli gan %{target}
+        approve_user_html: Mae %{name} wedi cymeradwyo cofrestru gan %{target}
+        assigned_to_self_report_html: Mae %{name} wedi neilltuo adroddiad %{target} iddyn nhw eu hunain
+        change_email_user_html: Mae %{name} wedi newid cyfeiriad e-bost defnyddiwr %{target}
+        change_role_user_html: Mae %{name} wedi newid rôl %{target}
+        confirm_user_html: Mae %{name}  wedi cadarnhau cyfeiriad e-bost defnyddiwr %{target}
+        create_account_warning_html: Anfonodd %{name} rybudd at %{target}
+        create_announcement_html: Mae %{name} wedi creu cyhoeddiad newydd %{target}
+        create_canonical_email_block_html: Mae %{name} wedi rhwystro e-bost gyda'r hash %{target}
+        create_custom_emoji_html: "%{name} wedi llwytho emoji newydd %{target}"
+        create_domain_allow_html: Mae %{name} wedi caniatáu ffedereiddio â pharth %{target}
+        create_domain_block_html: Mae %{name} wedi rhwystro parth %{target}
+        create_email_domain_block_html: Mae %{name}  wedi rhwystro parth e-bost %{target}
+        create_ip_block_html: Mae %{name} wedi creu rheol ar gyfer IP %{target}
+        create_unavailable_domain_html: Mae %{name} wedi stopio danfon i barth %{target}
+        create_user_role_html: Mae %{name} wedi creu rôl %{target}
+        demote_user_html: Mae %{name} wedi israddio defnyddiwr %{target}
+        destroy_announcement_html: Mae %{name} wedi dileu cyhoeddiad %{target}
+        destroy_canonical_email_block_html: Mae %{name} wedi dadrwystro e-bost gyda'r hash %{target}
+        destroy_custom_emoji_html: Mae %{name} wedi dileu emoji %{target}
+        destroy_domain_allow_html: Mae %{name} wedi gwrthod ffederasiwn gyda pharth %{target}
+        destroy_domain_block_html: Mae %{name} wedi dad rwystro parth %{target}
+        destroy_email_domain_block_html: Mae %{name} wedi dad rwystro parth e-bost %{target}
+        destroy_instance_html: Mae %{name} wedi dileu parth %{target}
+        destroy_ip_block_html: Mae %{name} dileu rheol ar gyfer IP %{target}
+        destroy_status_html: Mae %{name} wedi tynnu postiad gan %{target}
+        destroy_unavailable_domain_html: Mae %{name} wedi ailddechrau anfon i barth %{target}
+        destroy_user_role_html: Mae %{name} wedi dileu rôl %{target}
+        disable_2fa_user_html: Mae %{name} wedi analluogi gofyniad dau ffactor ar gyfer defnyddiwr %{target}
+        disable_custom_emoji_html: Mae %{name} wedi analluogi emoji %{target}
+        disable_sign_in_token_auth_user_html: Mae %{name} wedi analluogi dilysiad tocyn e-bost ar gyfer %{target}
+        disable_user_html: Mae %{name} wedi analluogi mewngofnodi defnyddiwr %{target}
+        enable_custom_emoji_html: Mae %{name} wedi analluogi emoji %{target}
+        enable_sign_in_token_auth_user_html: Mae %{name} wedi galluogi dilysu tocyn e-bost %{target}
+        enable_user_html: Mae %{name} wedi galluogi mewngofnodi defnyddiwr %{target}
+        memorialize_account_html: Newidiodd %{name} gyfrif %{target} i dudalen memoriam
+        promote_user_html: Mae %{name} wedi hyrwyddo defnyddiwr %{target}
+        reject_appeal_html: Mae %{name} wedi gwrthod apêl penderfyniad cymedroli %{target}
+        reject_user_html: Mae %{name} wedi gwrthod cofrestriad gan %{target}
+        remove_avatar_user_html: Mae %{name} wedi tynnu afatar %{target}
+        reopen_report_html: Mae %{name} wedi ailagor adroddiad %{target}
+        resend_user_html: Mae %{name} wedi ail anfon e-bost cadarnhau %{target}
+        reset_password_user_html: Mae %{name} wedi ailosod cyfrinair defnyddiwr %{target}
+        resolve_report_html: Mae %{name} wedi datrys adroddiad %{target}
+        sensitive_account_html: Mae %{name} wedi marcio cyfrwng %{target} fel un sensitif
+        silence_account_html: Mae %{name} wedi cyfyngu cyfrif %{target}
+        suspend_account_html: Mae %{name} wedi atal cyfrif %{target}
+        unassigned_report_html: Mae %{name} wedi dad neilltuo adroddiad %{target}
+        unblock_email_account_html: Mae %{name} wedi dad rwystro cyfeiriad e-bost %{target}
+        unsensitive_account_html: Mae %{name} wedi dad farcio cyfryngau %{target} fel rhai sensitif
+        unsilence_account_html: Mae %{name} wedi dadwneud terfyn cyfrif %{target}
+        unsuspend_account_html: Mae %{name} wedi dad atal cyfrif %{target}
+        update_announcement_html: Mae %{name} wedi diweddaru cyhoeddiad %{target}
+        update_custom_emoji_html: Mae %{name} wedi diweddaru emoji %{target}
+        update_domain_block_html: Mae %{name} wedi diweddaru bloc parth %{target}
+        update_ip_block_html: Mae %{name} wedi newid rheol IP %{target}
+        update_status_html: Mae %{name} wedi diweddaru postiad gan %{target}
+        update_user_role_html: Mae %{name} wedi newid rôl %{target}
+      deleted_account: cyfrif wedi'i ddileu
       empty: Dim logiau ar gael.
-      filter_by_action: Hidlo wrth weithred
-      filter_by_user: Hidlo wrth ddefnyddiwr
-      title: Log archwilio
+      filter_by_action: Hidlo yn ôl gweithred
+      filter_by_user: Hidlo yn ôl defnyddiwr
+      title: Cofnod archwilio
     announcements:
-      destroyed_msg: Cyhoeddiad wedi'i ddileu yn llwyddianus!
+      destroyed_msg: Cyhoeddiad wedi'i ddileu'n llwyddiannus!
       edit:
         title: Golygu cyhoeddiad
-      empty: Dim gyhoeddiad ar gael.
+      empty: Dim cyhoeddiad ar gael.
       live: Byw
       new:
         create: Creu cyhoeddiad
         title: Cyhoeddiad newydd
-      published_msg: Cyhoeddiad wedi'i gyhoeddi'n llwyddianus!
+      publish: Cyhoeddi
+      published_msg: Cyhoeddiad wedi'i gyhoeddi'n llwyddiannus!
       scheduled_for: Wedi'i amserlenni ar gyfer %{time}
-      scheduled_msg: Cyhoeddiad wedi'i amserlenni ar gyfer cyhoeddiad!
+      scheduled_msg: Cyhoeddiad wedi'i amserlenni ar gyfer ei ryddhau!
       title: Cyhoeddiadau
-      unpublished_msg: Cyhoeddiad wedi'i angyhoeddi'n llwyddianus!
-      updated_msg: Cyhoeddiad wedi'i ddiweddaru yn llwyddianus!
+      unpublish: Dadgyhoeddi
+      unpublished_msg: Cyhoeddiad wedi'i ddad gyhoeddi'n llwyddiannus!
+      updated_msg: Cyhoeddiad wedi'i ddiweddaru'n llwyddiannus!
     custom_emojis:
       assign_category: Neilltuo categori
       by_domain: Parth
       copied_msg: Llwyddwyd i greu copi lleol o'r emoji
       copy: Copïo
-      copy_failed_msg: Methwyd i greu copi lleol o'r emoji hwnnw
+      copy_failed_msg: Methwyd a chreu copi lleol o'r emoji hwnnw
+      create_new_category: Creu categori newydd
       created_msg: Llwyddwyd i greu emoji!
       delete: Dileu
       destroyed_msg: Llwyddwyd i ddinistrio emojo!
-      disable: Diffodd
-      disabled: Wedi'i ddiffodd
-      disabled_msg: Llwyddwyd i ddiffodd yr emoji hwnnw
+      disable: Analluogi
+      disabled: Wedi'i analluogi
+      disabled_msg: Llwyddwyd i analluogi'r emoji hwnnw
+      emoji: Emoji
       enable: Galluogi
       enabled: Wedi ei alluogi
-      enabled_msg: Llwyddwyd i alluogi yr emoji hwnnw
+      enabled_msg: Llwyddwyd i alluogi'r emoji hwnnw
+      image_hint: PNG neu GIF hyd at %{size}
       list: Rhestr
       listed: Rhestredig
       new:
         title: Ychwanegu emoji personol newydd
+      no_emoji_selected: Heb newid unrhyw emojis gan na chafodd yr un ei ddewis
       not_permitted: Nid oes gennych caniatâd i gyflawni'r weithred hon
       overwrite: Trosysgrifio
-      shortcode: Byrgod
-      shortcode_hint: O leiaf 2 nodyn, dim ond nodau alffaniwmerig a tanlinellau
-      title: Emoji unigryw
+      shortcode: Cod byr
+      shortcode_hint: O leiaf 2 nod, dim ond nodau alffaniwmerig a thanlinellu
+      title: Emoji cyfaddas
       uncategorized: Heb gategori
       unlist: Dad-restru
       unlisted: Heb eu rhestru
       update_failed_msg: Methwyd a diweddaru'r emoji hwnnw
       updated_msg: Llwyddwyd i ddiweddaru'r emoji!
-      upload: Uwchlwytho
+      upload: Llwytho
     dashboard:
+      active_users: defnyddwyr gweithredol
+      interactions: rhyngweithiadau
+      media_storage: Storfa cyfryngau
+      new_users: defnyddwyr newydd
+      opened_reports: adroddiadau wedi'u hagor
+      pending_appeals_html:
+        few: "<strong>%{count}</strong> apêl yn aros"
+        many: "<strong>%{count}</strong> apêl yn aros"
+        one: "<strong>%{count}</strong> apêl yn aros"
+        other: "<strong>%{count}</strong> apêl yn aros"
+        two: "<strong>%{count}</strong> apêl yn aros"
+        zero: "<strong>%{count}</strong> o apeliadau'n aros"
+      pending_reports_html:
+        few: "<strong>%{count}</strong> adroddiad yn aros"
+        many: "<strong>%{count}</strong> adroddiad yn aros"
+        one: "<strong>%{count}</strong> adroddiad yn aros"
+        other: "<strong>%{count}</strong> adroddiad yn aros"
+        two: "<strong>%{count}</strong> adroddiad yn aros"
+        zero: "<strong>%{count}</strong> o adroddiadau'n aros"
+      pending_tags_html:
+        few: "<strong>%{count}</strong> hashnod yn aros"
+        many: "<strong>%{count}</strong> hashnod yn aros"
+        one: "<strong>%{count}</strong> hashnod yn aros"
+        other: "<strong>%{count}</strong> hashnod yn aros"
+        two: "<strong>%{count}</strong> hashnod yn aros"
+        zero: "<strong>%{count}</strong> o hashnodau'n aros"
+      pending_users_html:
+        few: "<strong>%{count}</strong> defnyddiwr yn aros"
+        many: "<strong>%{count}</strong> defnyddiwr yn aros"
+        one: "<strong>%{count}</strong> defnyddiwr yn aros"
+        other: "<strong>%{count}</strong> defnyddiwr yn aros"
+        two: "<strong>%{count}</strong> defnyddiwr yn aros"
+        zero: "<strong>%{count}</strong> o ddefnyddwyr yn aros"
+      resolved_reports: adroddiadau wedi'u datrys
       software: Meddalwedd
+      sources: Ffynonellau cofrestru
       space: Defnydd o ofod
-      title: Dangosfwrdd
+      title: Bwrdd rheoli
+      top_languages: Prif ieithoedd gweithredol
+      top_servers: Prif weinyddion gweithredol
+      website: Gwefan
+    disputes:
+      appeals:
+        empty: Heb ganfod unrhyw apeliadau.
+        title: Apeliadau
     domain_allows:
-      add_new: Rhestrwch parth
-      created_msg: Rhestrwyd wen parth yn llwyddiannus
-      destroyed_msg: Mae parth wedi'i dynnu o'r rhestr wen
-      undo: Tynnwch o'r rhestr wen
+      add_new: Caniatáu ffedereiddio gyda pharth
+      created_msg: Mae parth wedi'i ganiatáu'n llwyddiannus ar gyfer ffedereiddio
+      destroyed_msg: Mae parth wedi'i wahardd rhag ffedereiddio
+      export: Allforio
+      import: Mewnforio
+      undo: Gwrthod ffedereiddio gyda pharth
     domain_blocks:
       add_new: Ychwanegu bloc parth newydd
       created_msg: Mae'r bloc parth nawr yn cael ei brosesu
       destroyed_msg: Mae'r bloc parth wedi ei ddadwneud
       domain: Parth
       edit: Golygu bloc parth
-      existing_domain_block_html: Rydych yn barod wedi gosod cyfyngau fwy llym ar %{name}, mae rhaid i chi ei <a href="%{unblock_url}">ddadblocio</a> yn gyntaf.
+      existing_domain_block: Rydych chi eisoes wedi gosod terfynau llymach ar %{name}.
+      existing_domain_block_html: Rydych eisoes wedi gosod cyfyngau mwy llym ar %{name}, mae rhaid i chi ei <a href="%{unblock_url}">ddadflocio</a> yn gyntaf.
+      export: Allforio
+      import: Mewnforio
       new:
         create: Creu bloc
-        hint: Ni fydd y bloc parth yn atal cread cofnodion cyfrif yn y bas data, ond mi fydd yn gosod dulliau goruwchwylio penodol ôl-weithredol ac awtomatig ar y cyfrifau hynny.
+        hint: Ni fydd y bloc parth yn atal cread cofnodion cyfrif yn y bas data, ond mi fydd yn gosod dulliau cymedroli penodol ôl-weithredol ac awtomatig ar y cyfrifau hynny.
         severity:
-          desc_html: Mae <strong>Tawelu</strong> yn gwneud twtiau y cyfrif yn anweledig i unrhyw un nad yw'n dilyn y cyfrif. Mae <strong>Atal</strong> yn cael gwared ar holl gynnwys, cyfryngau a data proffil y cyfrif. Defnyddiwch <strong>Dim</strong> os ydych chi ond am wrthod dogfennau cyfryngau.
+          desc_html: Bydd <strong>terfyn</strong> yn gwneud postiadau o gyfrifon yn y parth hwn yn anweledig i unrhyw un nad yw'n eu dilyn. Bydd <strong>Atal</strong> yn dileu'r holl gynnwys, cyfryngau a data proffil ar gyfer cyfrifon y parth hwn o'ch gweinydd. Defnyddiwch <strong>Dim</strong> os ydych am wrthod ffeiliau cyfryngau yn unig.
           noop: Dim
-          silence: Tawelwch
+          silence: Terfyn
           suspend: Atal
         title: Blocio parth newydd
+      no_domain_block_selected: Heb newid unrhyw flociau parth e-bost gan nad oes un wedi'i ddewis
+      not_permitted: Nid oes gennych caniatâd i gyflawni'r weithred hon
+      obfuscate: Cuddio enw parth
+      obfuscate_hint: Cuddio'r enw parth yn y rhestr yn rhannol os yw hysbysebu'r rhestr o gyfyngiadau parth wedi'i alluogi
       private_comment: Sylw preifat
       private_comment_hint: Sylw am gyfyngiadau y barth ar gyfer defnydd mewnol gan y cymedrolwyr.
       public_comment: Sylw cyhoeddus
       public_comment_hint: Sylw am gyfyngiadau y parth hon ar gyfer y cyhoedd, os mae hysbysu'r rhestr o gyfyngiadau parth wedi'i alluogi.
-      reject_media: Gwrthod dogfennau cyfryngau
-      reject_media_hint: Dileu dogfennau cyfryngau wedi eu cadw yn lleol ac yn gwrthod i lawrlwytho unrhyw rai yn y dyfodol. Amherthnasol i ataliadau
+      reject_media: Gwrthod ffeiliau cyfryngau
+      reject_media_hint: Yn dileu ffeiliau cyfryngau sydd wedi'u storio'n lleol ac yn gwrthod llwytho i lawr unrhyw rai yn y dyfodol. Amherthnasol ar gyfer ataliadau
       reject_reports: Gwrthod adroddiadau
       reject_reports_hint: Anwybyddu'r holl adroddiadau sy'n dod o'r parth hwn. Amherthnasol i ataliadau
       undo: Dadwneud bloc parth
       view: Gweld bloc parth
     email_domain_blocks:
       add_new: Ychwanegu
-      created_msg: Llwyddwyd i ychwanegu parth e-bost i'r gosbrestr
+      attempts_over_week:
+        few: "%{count} ymgais i gofrestru dros yr wythnos ddiwethaf"
+        many: "%{count} ymgais i gofrestru dros yr wythnos ddiwethaf"
+        one: "%{count} ymgais dros yr wythnos ddiwethaf"
+        other: "%{count} ymgais i gofrestru dros yr wythnos ddiwethaf"
+        two: "%{count} ymgais i gofrestru dros yr wythnos ddiwethaf"
+        zero: "%{count} o ymgeisiadau i gofrestru dros yr wythnos ddiwethaf"
+      created_msg: Wedi blocio parth e-bost yn llwyddiannus
       delete: Dileu
       dns:
         types:
@@ -278,150 +454,546 @@ cy:
       domain: Parth
       new:
         create: Ychwanegu parth
-        title: Cofnod newydd yng nghosbrestr e-byst
-      title: Cosbrestr e-bost
+        resolve: Datrys parth
+        title: Rhwystro parth e-bost newydd
+      no_email_domain_block_selected: Heb newid unrhyw flociau parth e-bost gan nad oes un wedi'i ddewis
+      resolved_dns_records_hint_html: Mae'r enw parth yn cyd-fynd â'r parthau MX canlynol, sy'n gyfrifol yn y pen draw am dderbyn e-bost. Bydd rhwystro parth MX yn rhwystro cofrestriadau o unrhyw gyfeiriad e-bost sy'n defnyddio'r un parth MX, hyd yn oed os yw'r enw parth gweladwy yn wahanol. <strong>Byddwch yn ofalus i beidio â rhwystro darparwyr e-bost mawr.</strong>
+      resolved_through_html: Wedi'i ddatrys trwy %{domain}
+      title: Parthau e-bost wedi'u rhwystro
+    export_domain_allows:
+      new:
+        title: Mewnforio parth yn caniatáu
+      no_file: Heb ddewis ffeil
+    export_domain_blocks:
+      import:
+        description_html: Rydych ar fin mewnforio rhestr o flociau parth. Edrychwch dros y rhestr hon yn ofalus iawn, yn enwedig os nad ydych chi wedi ei hysgrifennu.
+        existing_relationships_warning: Perthynas ddilyn gyfredol
+        private_comment_description_html: 'Er mwyn eich helpu i olrhain o ble mae blociau a fewnforwyd yn dod, bydd blociau a fewnforwyd yn cael eu creu gyda''r sylw preifat canlynol: <q>%{comment}</q>'
+        private_comment_template: Mewnforiwyd o %{source} ar %{date}
+        title: Mewnforio blociau parth
+      new:
+        title: Mewnforio blociau parth
+      no_file: Heb ddewis ffeil
+    follow_recommendations:
+      description_html: "<strong>Mae dilyn yr argymhellion yn helpu i ddefnyddwyr newydd ddod o hyd i gynnwys diddorol yn gyflym</strong>. Pan nad yw defnyddiwr wedi rhyngweithio digon ag eraill i ffurfio argymhellion dilyn personol, argymhellir y cyfrifon hyn yn lle hynny. Cânt eu hailgyfrifo'n ddyddiol o gymysgedd o gyfrifon gyda'r ymgysylltiadau diweddar uchaf a'r cyfrif dilynwyr lleol uchaf ar gyfer iaith benodol."
+      language: Ar gyfer iaith
+      status: Statws
+      suppress: Atal dilyn argymhelliad
+      suppressed: Cyfyngwyd
+      title: Dilyn yr argymhellion
+      unsuppress: Adfer argymhelliad dilyn
     instances:
+      availability:
+        description_html:
+          few: Os bydd anfon i'r parth yn methu ar <strong>%{count} o ddiwrnodau gwahanol</strong> heb lwyddo, ni fydd unrhyw ymdrechion dosbarthu pellach yn cael eu gwneud oni bai y bydd danfoniad yn cael ei dderbyn <em>o'r</em> parth.
+          many: Os bydd anfon i'r parth yn methu ar <strong>%{count} o ddiwrnodau gwahanol</strong> heb lwyddo, ni fydd unrhyw ymdrechion dosbarthu pellach yn cael eu gwneud oni bai y bydd danfoniad yn cael ei dderbyn <em>o'r</em> parth.
+          one: Os bydd anfon i'r parth yn methu <strong>%{count} diwrnod</strong> heb lwyddo, ni fydd unrhyw ymdrechion danfon pellach yn cael eu gwneud oni bai y bydd danfoniad yn cael ei dderbyn <em>o'r</em> parth.
+          other: Os bydd anfon i'r parth yn methu ar <strong>%{count} o ddiwrnodau gwahanol</strong> heb lwyddo, ni fydd unrhyw ymdrechion dosbarthu pellach yn cael eu gwneud oni bai y bydd danfoniad yn cael ei dderbyn <em>o'r</em> parth.
+          two: Os bydd anfon i'r parth yn methu ar <strong>%{count} o ddiwrnodau gwahanol</strong> heb lwyddo, ni fydd unrhyw ymdrechion dosbarthu pellach yn cael eu gwneud oni bai y bydd danfoniad yn cael ei dderbyn <em>o'r</em> parth.
+          zero: Os bydd anfon i'r parth yn methu ar <strong>%{count} o ddiwrnodau gwahanol</strong> heb lwyddo, ni fydd unrhyw ymdrechion dosbarthu pellach yn cael eu gwneud oni bai y bydd danfoniad yn cael ei dderbyn <em>o'r</em> parth.
+        failure_threshold_reached: Trothwy methiant wedi'i gyrraedd ar %{date}.
+        failures_recorded:
+          few: Ymdrechion wedi methu ar %{count} diwrnod gwahanol.
+          many: Ymdrechion wedi methu ar %{count} diwrnod gwahanol.
+          one: Ymdrechion wedi methu ar %{count} diwrnod.
+          other: Ymdrechion wedi methu ar %{count} diwrnod gwahanol.
+          two: Ymdrechion wedi methu ar %{count} ddiwrnod gwahanol.
+          zero: Ymdrechion wedi methu ar %{count} o ddyddiau gwahanol.
+        no_failures_recorded: Dim methiannau wedi'u cofnodi
+        title: Argaeledd
+        warning: Bu'r ymgais olaf i gysylltu â'r gweinydd hwn yn aflwyddiannus
       back_to_all: Popeth
+      back_to_limited: Cyfyngedig
       back_to_warning: Rhybudd
       by_domain: Parth
-      delivery_available: Mae'r cyflenwad ar gael
+      confirm_purge: Ydych chi'n siŵr eich bod am ddileu data o'r parth hwn yn barhaol?
+      content_policies:
+        comment: Nodyn mewnol
+        description_html: Gallwch ddiffinio polisïau cynnwys a fydd yn cael eu cymhwyso i bob cyfrif o'r parth hwn ac unrhyw un o'i is-barthau.
+        policies:
+          reject_media: Gwrthod cyfryngau
+          reject_reports: Gwrthod adroddiadau
+          silence: Terfyn
+          suspend: Atal
+        policy: Polisi
+        reason: Rheswm cyhoeddus
+        title: Polisïau cynnwys
+      dashboard:
+        instance_accounts_dimension: Cyfrifon mwyaf poblogaidd
+        instance_accounts_measure: cyfrifon wedi'u storio
+        instance_followers_measure: ein dilynwyr yno
+        instance_follows_measure: eu dilynwyr yma
+        instance_languages_dimension: Prif ieithoedd
+        instance_media_attachments_measure: atodiadau cyfryngau wedi'u storio
+        instance_reports_measure: adroddiadau amdanyn nhw
+        instance_statuses_measure: postiadau wedi'u storio
+      delivery:
+        all: Popeth
+        clear: Clirio gwallau anfon
+        failing: Yn methu
+        restart: Ailgychwyn anfon
+        stop: Atal anfon
+        unavailable: Ddim ar gael
+      delivery_available: Mae'r anfon ar gael
+      delivery_error_days: Dyddiau gwall anfon
+      delivery_error_hint: Os nad yw'n bosibl anfon am %{count} o ddyddiau, caiff ei nodi'n awtomatig fel un nad oes modd ei anfon.
+      destroyed_msg: Mae data o %{domain} bellach mewn ciw i'w ddileu'n syth.
+      empty: Heb ganfod parthau.
+      known_accounts:
+        few: "%{count} cyfrif hysbys"
+        many: "%{count} cyfrif hysbys"
+        one: "%{count} cyfrif hysbys"
+        other: "%{count} cyfrif hysbys"
+        two: "%{count} gyfrif hysbys"
+        zero: "%{count} o gyfrifon hysbys"
       moderation:
-        all: Pob
-        limited: Gyfyngedig
-        title: Goruwchwyliad
+        all: Popeth
+        limited: Cyfyngedig
+        title: Cymedroli
       private_comment: Sylw preifat
       public_comment: Sylw cyhoeddus
+      purge: Clirio
+      purge_description_html: Os ydych chi'n credu bod y parth hwn all-lein am byth, gallwch ddileu'r holl gofnodion cyfrif a data cysylltiedig o'r parth hwn o'ch storfa. Gall hyn gymryd peth amser.
       title: Ffederasiwn
-      total_blocked_by_us: Wedi'i bloc gan ni
-      total_followed_by_them: Yn dilyn ganynt
-      total_followed_by_us: Yn dilyn ganom ni
-      total_reported: Adroddiadau amdanynt
+      total_blocked_by_us: Wedi'i flocio gennym ni
+      total_followed_by_them: Yn cael eu dilyn ganddyn nhw
+      total_followed_by_us: Yn cael eu dilyn gennym ni
+      total_reported: Adroddiadau amdanyn nhw
       total_storage: Atodiadau cyfryngau
+      totals_time_period_hint_html: Mae'r cyfansymiau sy'n cael eu dangos isod yn cynnwys data am y cyfnod cyfan.
     invites:
-      deactivate_all: Diffodd pob un
+      deactivate_all: Dadweithredu popeth
       filter:
-        all: Pob
+        all: Popeth
         available: Ar gael
         expired: Wedi dod i ben
         title: Hidlo
       title: Gwahoddiadau
+    ip_blocks:
+      add_new: Creu rheol
+      created_msg: Wedi ychwanegu rheol IP newydd yn llwyddiannus
+      delete: Dileu
+      expires_in:
+        '1209600': 2 wythnos
+        '15778476': 6 mis
+        '2629746': 1 mis
+        '31556952': 1 flwyddyn
+        '86400': 1 diwrnod
+        '94670856': 3 blynedd
+      new:
+        title: Creu rheol IP newydd
+      no_ip_block_selected: Heb newid unrhyw reolau IP gan na ddewiswyd yr un ohonyn nhw
+      title: Rheolau IP
     relationships:
       title: Perthnasau %{acct}
     relays:
       add_new: Ychwanegau relái newydd
       delete: Dileu
-      description_html: Mae <strong>relái ffederasiwn</strong> yn weinydd ganol sy'n cyfnewid niferoedd ucheol o dŵtiau cyhoeddus rhwng gweinyddwyr sydd wedi tanysgrifio ac yn cyhoeddi iddo. <strong>Gall helpu weinyddwyr bach a cymhedrol eu maint i ddarganfod cynnwys o'r ffedysawd</strong>, fel arall bydd gofyn ara ddefnyddwyr lleol yn dilyn unigolion ar weinyddwyr eraill a llaw.
-      disable: Diffodd
-      disabled: Wedi'i ddiffodd
+      description_html: Mae <strong>relái ffederasiwn</strong> yn weinydd cyfryngol sy'n cyfnewid llawer iawn o bostiadau cyhoeddus rhwng gweinyddwyr sy'n tanysgrifio ac yn cyhoeddi iddo. <strong>Gall helpu gweinyddwyr bach a chanolig i ddarganfod cynnwys o'r llif</strong>, a fyddai fel arall yn ei gwneud yn ofynnol i ddefnyddwyr lleol ddilyn pobl eraill ar weinyddion anghysbell â llaw.
+      disable: Analluogi
+      disabled: Analluogwyd
       enable: Galluogi
-      enable_hint: Unwaith y bydd wedi ei alluogi, bydd eich gweinydd yn tanysgrifio i holl dŵtiau cyhoeddus o'r relai hwn, ac yn dechrau anfon tŵtiau y gweinydd hwn ato.
-      enabled: Wedi ei alluogi
+      enable_hint: Unwaith y bydd wedi ei alluogi, bydd eich gweinydd yn tanysgrifio i holl bostiadau cyhoeddus o'r relái hwn, ac yn dechrau anfon postiadau'r gweinydd hwn ato.
+      enabled: Galluogwyd
       inbox_url: URL relái
-      pending: Aros am gymeradywaeth i'r relái
+      pending: Yn aros am gymeradwyaeth i'r relái
       save_and_enable: Cadw a galluogi
-      setup: Sefydlu cysylltiad relái
-      signatures_not_enabled: Ni fydd cyfnewidau yn gweithio'n iawn pan mae modd diogel neu restr gwyn wedi'i alluogi
+      setup: Yn gosod cysylltiad relái
+      signatures_not_enabled: Ni fydd relaiau'n gweithio'n iawn pan mae modd diogel neu fodd ffederasiwn cyfyngedig wedi'i alluogi
       status: Statws
-      title: Cyfnewidwyr
+      title: Relaiau
     report_notes:
       created_msg: Llwyddwyd i greu nodyn adroddiad!
       destroyed_msg: Llwyddwyd i ddileu nodyn adroddiad!
+      today_at: Heddiw am %{time}
     reports:
       account:
         notes:
-          few: "%{count} o nodiadau"
-          many: "%{count} o nodiadau"
-          one: "%{count} nodyn"
-          other: "%{count} o nodiadau"
-          two: "%{count} o nodiadau"
-          zero: "%{count} nodyn"
-      action_taken_by: Gwnaethpwyd hyn gan
-      are_you_sure: Ydych chi'n sicr?
-      assign_to_self: Aseinio i mi
-      assigned: Arolygwr wedi'i aseinio
-      by_target_domain: Parth cyfrif a adroddir
+          few: "%{count} nodyn"
+          many: "%{count} nodyn"
+          one: "%{count} un nodyn"
+          other: "%{count} nodyn"
+          two: "%{count} nodyn"
+          zero: "%{count} un nodyn"
+      action_log: Log archwilio
+      action_taken_by: Camau a gymerwyd gan
+      actions:
+        delete_description_html: Bydd y postiadau yr adroddwyd amdanyn nhw'n cael eu dileu a bydd rhybudd yn cael ei recordio i'ch helpu i gynyddu achosion o dordyletswydd yn y dyfodol gan yr un cyfrif.
+        mark_as_sensitive_description_html: Bydd y cyfryngau yn y postiadau sy'n cael eu hadrodd yn cael eu marcio'n sensitif a bydd rhybudd yn cael ei recordio i'ch helpu i gynyddu achosion o dorri rheolau yn y dyfodol gan yr un cyfrif.
+        other_description_html: Gweld rhagor o ddewisiadau rheoli ymddygiad y cyfrif a chyfaddasu cyfathrebiad i'r cyfrif a adroddwyd.
+        resolve_description_html: Ni fydd unrhyw gamau yn cael eu cymryd yn erbyn y cyfrif a adroddwyd, ni chofnodwyd rhybudd, a bydd yr adroddiad yn cael ei gau.
+        silence_description_html: Dim ond i'r rhai sydd eisoes yn ei ddilyn neu'n edrych arno â llaw y bydd y proffil yn weladwy, gan gyfyngu'n ddifrifol ar ei gyrhaeddiad. Mae modd ei ddychwelyd ar unrhyw adeg.
+        suspend_description_html: Bydd y proffil a'i holl gynnwys yn dod yn anhygyrch nes iddo gael ei ddileu yn y pen draw. Bydd rhyngweithio â'r cyfrif yn amhosibl. Mae modd ei adfer o fewn 30 diwrnod.
+      actions_description_html: Penderfynwch pa gamau i'w cymryd i ddatrys yr adroddiad hwn. Os byddwch yn cymryd camau cosbol yn erbyn y cyfrif a adroddwyd, bydd hysbysiad e-bost yn cael ei anfon atyn nhw, ac eithrio pan fydd y categori <strong>Sbam</strong> yn cael ei ddewis.
+      add_to_report: Ychwanegu rhagor i adroddiad
+      are_you_sure: Ydych chi'n siŵr?
+      assign_to_self: Neilltuo i mi
+      assigned: Cymedrolwr wedi'i neilltuo
+      by_target_domain: Parth y cyfrif a adroddwyd
+      category: Categori
+      category_description_html: Bydd y rheswm dros adrodd am y cyfrif a/neu’r cynnwys hwn yn cael ei ddyfynnu wrth gyfathrebu â’r cyfrif a adroddwyd
       comment:
         none: Dim
+      comment_description_html: 'I ddarparu rhagor o wybodaeth, ysgrifennodd %{name}:'
       created_at: Adroddwyd
+      delete_and_resolve: Dileu postiadau
+      forwarded: Wedi'i Anfon Ymlaen
+      forwarded_to: Wedi'i anfon ymlaen i %{domain}
       mark_as_resolved: Nodi fel wedi'i ddatrys
+      mark_as_sensitive: Marcio fel sensitif
       mark_as_unresolved: Nodi fel heb ei ddatrys
+      no_one_assigned: Neb
       notes:
         create: Ychwanegu nodyn
         create_and_resolve: Datrys gyda nodyn
         create_and_unresolve: Ailagor gyda nodyn
         delete: Dileu
-        placeholder: Disgrifiwch pa weithredoedd sydd wedi eu cymryd, neu unrhyw ddiweddariadau eraill...
+        placeholder: Disgrifiwch pa weithredoedd sydd wedi eu cymryd, neu unrhyw ddiweddariadau perthnasol eraill...
+        title: Nodiadau
+      notes_description_html: Gweld a gadael nodiadau i gymedrolwyr eraill a chi eich hun yn y dyfodol
+      quick_actions_description_html: 'Cymerwch gamau cyflym neu sgroliwch i lawr i weld cynnwys yr adroddwyd amdano:'
+      remote_user_placeholder: y defnyddiwr pell o %{instance}
       reopen: Ailagor adroddiad
       report: 'Adroddiad #%{id}'
       reported_account: Cyfrif wedi ei adrodd
       reported_by: Adroddwyd gan
       resolved: Wedi ei ddatrys
       resolved_msg: Llwyddwyd i ddatrys yr adroddiad!
+      skip_to_actions: Mynd i gamau gweithredu
       status: Statws
+      statuses: Cynnwys wedi'i adrodd
+      statuses_description_html: Bydd cynnwys tramgwyddus yn cael ei ddyfynnu wrth gyfathrebu â'r cyfrif a adroddwyd
+      target_origin: Tarddiad y cyfrif a adroddwyd
       title: Adroddiadau
       unassign: Dadneilltuo
       unresolved: Heb ei ddatrys
       updated_at: Diweddarwyd
+      view_profile: Gweld proffil
+    roles:
+      add_new: Ychwanegu rôl
+      assigned_users:
+        few: "%{count} defnyddiwr"
+        many: "%{count} defnyddiwr"
+        one: "%{count} defnyddiwr"
+        other: "%{count} defnyddiwr"
+        two: "%{count} ddefnyddiwr"
+        zero: "%{count} defnyddiwyr"
+      categories:
+        administration: Gweinyddiaeth
+        devops: DevOps
+        invites: Gwahoddiadau
+        moderation: Cymedroil
+        special: Arbennig
+      delete: 'Dileu:'
+      description_html: Gyda <strong>rolau defnyddwyr</strong>, gallwch chi gyfaddasu pa swyddogaethau a meysydd o Mastodon y gall eich defnyddwyr gael mynediad iddyn nhw.
+      edit: Golygu rôl '%{name}'
+      everyone: Caniatâd rhagosodedig
+      everyone_full_description_html: Dyma'r <strong>rôl sylfaenol</strong> sy'n effeithio ar <strong>bob defnyddiwr</strong>, hyd yn oed y rhai heb rôl benodol. Mae pob rôl arall yn etifeddu caniatâd ganddo.
+      permissions_count:
+        few: "%{count} caniatâd"
+        many: "%{count} caniatâd"
+        one: "%{count} caniatâd"
+        other: "%{count} caniatâd"
+        two: "%{count} ganiatâd"
+        zero: "%{count} caniatâd"
+      privileges:
+        administrator: Gweinyddwr
+        administrator_description: Bydd defnyddwyr sydd â'r caniatâd hwn yn osgoi pob caniatâd
+        delete_user_data: Dileu Data Defnyddiwr
+        delete_user_data_description: Yn caniatáu i ddefnyddwyr ddileu data defnyddwyr eraill yn ddi-oed
+        invite_users: Gwahodd Defnyddwyr
+        invite_users_description: Yn caniatáu i ddefnyddwyr wahodd pobl newydd i'r gweinydd
+        manage_announcements: Rheoli Cyhoeddiadau
+        manage_announcements_description: Yn caniatáu i ddefnyddwyr reoli cyhoeddiadau ar y gweinydd
+        manage_appeals: Rheoli Apeliadau
+        manage_appeals_description: Yn caniatáu i ddefnyddwyr adolygu apeliadau yn erbyn camau cymedroli
+        manage_blocks: Rheoli Blociau
+        manage_blocks_description: Yn caniatáu i ddefnyddwyr rwystro darparwyr e-bost a chyfeiriadau IP
+        manage_custom_emojis: Rheoli Emojis Cyfaddas
+        manage_custom_emojis_description: Yn caniatáu i ddefnyddwyr reoli emojis cyfaddas ar y gweinydd
+        manage_federation: Rheoli Ffederasiwn
+        manage_federation_description: Yn caniatáu i ddefnyddwyr rwystro neu ganiatáu ffedereiddio â pharthau eraill, a rheoli'r gallu i gyflawni
+        manage_invites: Rheoli Gwahoddiadau
+        manage_invites_description: Yn caniatáu i ddefnyddwyr bori a diffodd dolenni gwahodd
+        manage_reports: Rheoli Adroddiadau
+        manage_reports_description: Yn caniatáu i ddefnyddwyr adolygu adroddiadau a chyflawni camau cymedroli yn eu herbyn
+        manage_roles: Rheoli Rolau
+        manage_roles_description: Yn galluogi defnyddwyr i reoli a phennu rolau o dan eu rhai nhw
+        manage_rules: Rheoli Rheolau
+        manage_rules_description: Yn caniatáu i ddefnyddwyr newid rheolau gweinydd
+        manage_settings: Rheoli Gosodiadau
+        manage_settings_description: Yn caniatáu i ddefnyddwyr newid gosodiadau gwefan
+        manage_taxonomies: Rheoli Tacsonomeg
+        manage_taxonomies_description: Yn caniatáu i ddefnyddwyr adolygu cynnwys sy'n tueddu a diweddaru gosodiadau hashnodau
+        manage_user_access: Rheoli Mynediad Defnyddwyr
+        manage_user_access_description: Yn caniatáu i ddefnyddwyr analluogi dilysu dau ffactor defnyddwyr eraill, newid eu cyfeiriad e-bost, ac ailosod eu cyfrinair
+        manage_users: Rheoli Defnyddwyr
+        manage_users_description: Yn caniatáu i ddefnyddwyr weld manylion defnyddwyr eraill a chyflawni camau cymedroli yn eu herbyn
+        manage_webhooks: Rheoli Bachau Gwe
+        manage_webhooks_description: Yn caniatáu i ddefnyddwyr osod bachau gwe ar gyfer digwyddiadau gweinyddol
+        view_audit_log: Gweld Cofnodion Archwilio
+        view_audit_log_description: Yn caniatáu i ddefnyddwyr weld hanes o weithredoedd gweinyddol ar y gweinydd
+        view_dashboard: Gweld Bwrdd Gwaith
+        view_dashboard_description: Yn galluogi defnyddwyr i gael mynediad i'r bwrdd gwaith a metrigau amrywiol
+        view_devops: DevOps
+        view_devops_description: Yn caniatáu i ddefnyddwyr gael mynediad i fyrddau gwaith Sidekiq a pgHero
+      title: Rolau
+    rules:
+      add_new: Ychwanegu rheol
+      delete: Dileu
+      description_html: Er bod y rhan fwyaf yn honni eu bod wedi darllen ac yn cytuno i'r telerau gwasanaeth, fel arfer nid yw pobl yn darllen y cyfan tan ar ôl i broblem godi. <strong>Gwnewch hi'n haws i bobl weld rheolau eich gweinydd yn fras trwy eu darparu mewn rhestr pwyntiau bwled fflat.</strong> Ceisiwch gadw'r rheolau unigol yn fyr ac yn syml, ond ceisiwch beidio â'u rhannu'n nifer o eitemau ar wahân chwaith.
+      edit: Golygu rheol
+      empty: Nid oes unrhyw reolau gweinydd wedi'u diffinio eto.
+      title: Rheolau'r gweinydd
     settings:
+      about:
+        manage_rules: Rheoli rheolau gweinydd
+        preamble: Darparu gwybodaeth fanwl am sut mae'r gweinydd yn cael ei weithredu, ei gymedroli a'i ariannu.
+        rules_hint: Mae maes penodol ar gyfer rheolau y disgwylir i'ch defnyddwyr gadw ato.
+        title: Ynghylch
+      appearance:
+        preamble: Cyfaddasu rhyngwyneb gwe Mastodon.
+        title: Golwg
+      branding:
+        preamble: Mae brandio eich gweinydd yn ei wahaniaethu oddi wrth weinyddion eraill yn y rhwydwaith. Gall y wybodaeth hon gael ei dangos ar draws amrywiaeth o amgylcheddau, megis rhyngwyneb gwe Mastodon, rhaglenni brodorol, mewn rhagolygon cyswllt ar wefannau eraill ac o fewn apiau negeseuon, ac ati. Am y rheswm hwn, mae'n well cadw'r wybodaeth hon yn glir, yn fyr ac yn gryno.
+        title: Brandio
+      content_retention:
+        preamble: Rheoli sut mae cynnwys sy'n cael ei gynhyrchu gan ddefnyddwyr yn cael ei storio yn Mastodon.
+        title: Cadw cynnwys
+      discovery:
+        follow_recommendations: Dilyn yr argymhellion
+        preamble: Mae amlygu cynnwys diddorol yn allweddol ar gyfer derbyn defnyddwyr newydd nad ydynt efallai'n gyfarwydd ag unrhyw un Mastodon. Rheolwch sut mae nodweddion darganfod amrywiol yn gweithio ar eich gweinydd.
+        profile_directory: Cyfeiriadur proffiliau
+        public_timelines: Llinellau amser cyhoeddus
+        title: Darganfod
+        trends: Pynciau Llosg
       domain_blocks:
         all: I bawb
         disabled: I neb
-        users: I ddefnyddwyr lleol mewngofnodadwy
+        users: I ddefnyddwyr lleol wedi'u mewngofnodi
+      registrations:
+        preamble: Rheoli pwy all greu cyfrif ar eich gweinydd.
+        title: Cofrestriadau
       registrations_mode:
         modes:
-          approved: Mae angen cymeradwyaeth ar gyfer cofrestru
-          none: Ni all unrhyw un cofrestru
+          approved: Mae angen cymeradwyaeth i gofrestru
+          none: Nid oes neb yn gallu cofrestru
           open: Gall unrhyw un cofrestru
+      title: Gosodiadau Gweinydd
     site_uploads:
-      delete: Dileu ffeil sydd wedi'i uwchlwytho
-      destroyed_msg: Uwchlwythiad wefan wedi'i ddileu yn lwyddianus!
+      delete: Dileu ffeil sydd wedi'i llwytho
+      destroyed_msg: Llwytho i fyny i'r wefan wedi'i dileu yn llwyddiannus!
     statuses:
-      back_to_account: Yn ôl i dudalen y cyfrif
+      account: Awdur
+      application: Rhaglen
+      back_to_account: Nôl i dudalen y cyfrif
+      back_to_report: Nôl i dudalen yr adroddiad
+      batch:
+        remove_from_report: Dileu o'r adroddiad
+        report: Adroddiad
       deleted: Dilëwyd
+      favourites: Ffefrynnau
+      history: Hanes fersiynau
+      in_reply_to: Ymateb i
+      language: Iaith
       media:
         title: Cyfryngau
-      no_status_selected: Ni newidwyd dim statws achos ni ddewiswyd dim un
-      title: Statysau cyfrif
-      with_media: A chyfryngau
+      metadata: Metaddata
+      no_status_selected: Heb newid statws gan na ddewiswyd dim un
+      open: Agor post
+      original_status: Post gwreiddiol
+      reblogs: Ailflogiadau
+      status_changed: Post wedi'i newid
+      title: Postiadau cyfrif
+      trending: Trendio
+      visibility: Gwelededd
+      with_media: Gyda chyfryngau
+    strikes:
+      actions:
+        delete_statuses: Mae %{name} wedi dileu postiadau %{target}
+        disable: Mae %{name} wedi rhewi cyfrif %{target}
+        mark_statuses_as_sensitive: Mae %{name} wedi marcio postiadau %{target} fel rhai sensitif
+        none: Anfonodd %{name} rybudd at %{target}
+        sensitive: Mae %{name} wedi nodi bod cyfrif %{target} yn sensitif
+        silence: Mae %{name} wedi cyfyngu cyfrif %{target}
+        suspend: Mae %{name} wedi atal cyfrif %{target}
+      appeal_approved: Apeliwyd
+      appeal_pending: Apêl yn aros
+    system_checks:
+      database_schema_check:
+        message_html: Mae mudo cronfa ddata ar fin digwydd. Rhedwch nhw i sicrhau bod y rhaglen yn ymddwyn yn ôl y disgwyl
+      elasticsearch_running_check:
+        message_html: Methu cysylltu ag Elasticsearch. Gwiriwch ei fod yn rhedeg, neu analluogwch chwiliad testun llawn
+      elasticsearch_version_check:
+        message_html: 'Fersiwn Elasticsearch anghydnaws: %{value}'
+        version_comparison: Mae Elasticsearch %{running_version} yn rhedeg tra bod angen %{required_version}
+      rules_check:
+        action: Rheoli rheolau gweinydd
+        message_html: Nid ydych wedi diffinio unrhyw reolau gweinydd.
+      sidekiq_process_check:
+        message_html: Does dim proses Sidekiq yn rhedeg ar gyfer y ciw(iau) %{value}. Adolygwch eich ffurfweddiad Sidekiq
     tags:
       review: Adolygu statws
       updated_msg: Gosodiadau hashnodau wedi'i diweddaru'n llwyddiannus
     title: Gweinyddiaeth
     trends:
+      allow: Caniatáu
+      approved: Cymeradwywyd
+      disallow: Gwrthod
+      links:
+        allow: Caniatáu dolen
+        allow_provider: Caniatáu cyhoeddwr
+        description_html: Mae'r rhain yn ddolenni sy'n cael eu rhannu llawer ar hyn o bryd gan gyfrifon y mae eich gweinydd yn gweld postiadau ohonyn nhw. Gall helpu eich defnyddwyr i ddarganfod beth sy'n digwydd yn y byd. Ni chaiff unrhyw ddolenni eu dangos yn gyhoeddus nes i chi gymeradwyo'r cyhoeddwr. Gallwch hefyd ganiatáu neu wrthod dolenni unigol.
+        disallow: Gwrthod dolen
+        disallow_provider: Gwrthod y cyhoeddwr
+        no_link_selected: Heb newid unrhyw ddolen gan na chafodd yr un ohonyn nhw eu dewis
+        publishers:
+          no_publisher_selected: Heb newid unrhyw gyhoeddwr gan na ddewiswyd yr un ohonyn nhw
+        shared_by_over_week:
+          few: Wedi'i rannu gan %{count} o bobl dros yr wythnos ddiwethaf
+          many: Wedi'i rannu gan %{count} o bobl dros yr wythnos ddiwethaf
+          one: Wedi'i rannu gan un person dros yr wythnos ddiwethaf
+          other: Wedi'i rannu gan %{count} o bobl dros yr wythnos ddiwethaf
+          two: Wedi'i rannu gan %{count} o bobl dros yr wythnos ddiwethaf
+          zero: Wedi'i rannu gan %{count} o bobl dros yr wythnos ddiwethaf
+        title: Dolenni sy'n tueddu
+        usage_comparison: Wedi'i rannu %{today} gwaith heddiw, o'i gymharu â %{yesterday} ddoe
       only_allowed: Derbyniwyd yn unig
+      pending_review: Yn aros am adolygiad
+      preview_card_providers:
+        allowed: Gall dolenni gan y cyhoeddwr hwn greu tuedd
+        description_html: Mae'r rhain yn barthau lle mae dolenni'n cael eu rhannu'n aml ar eich gweinydd. Ni fydd dolenni'n dueddu'n gyhoeddus oni bai bod parth y ddolen yn cael ei gymeradwyo. Mae eich cymeradwyaeth (neu eich gwrthodiad) yn ymestyn i is-barthau.
+        rejected: Ni fydd dolenni gan y cyhoeddwr hwn yn creu tuedd
+        title: Cyhoeddwyr
+      rejected: Gwrthodwyd
+      statuses:
+        allow: Caniatáu post
+        allow_account: Caniatáu awdur
+        description_html: Mae'r rhain yn bostiadau y mae eich gweinydd yn gwybod amdanyn nhw sy'n cael eu rhannu a'u ffafrio llawer ar hyn o bryd. Gall helpu eich defnyddwyr newydd a'ch defnyddwyr sy'n dychwelyd i ddod o hyd i fwy o bobl i'w dilyn. Ni chaiff unrhyw bostiadau eu dangos yn gyhoeddus nes i chi gymeradwyo'r awdur, ac mae'r awdur yn caniatáu i'w cyfrif gael ei awgrymu i eraill. Gallwch hefyd ganiatáu neu wrthod postiadau unigol.
+        disallow: Gwrthod post
+        disallow_account: Gwrthod awdur
+        no_status_selected: Heb newid unrhyw negeseuon tuedd gan na chafodd yr un ohonyn nhw eu dewis
+        not_discoverable: Nid yw'r awdur wedi dewis bod yn ddarganfyddadwy
+        shared_by:
+          few: Wedi'i rannu a'i ffefrynnu %{friendly_count} gwaith
+          many: Wedi'i rannu a'i ffefrynnu %{friendly_count} gwaith
+          one: Wedi'i rannu neu ei ffefrynnu unwaith
+          other: Wedi'i rannu a'i ffefrynnu %{friendly_count} gwaith
+          two: Wedi'i rannu a'i ffefrynnu %{friendly_count} gwaith
+          zero: Wedi'i rannu a'i ffefrynnu %{friendly_count} gwaith
+        title: Postiadau sy'n trendio
+      tags:
+        current_score: Sgôr cyfredol %{score}
+        dashboard:
+          tag_accounts_measure: defnyddiau unigryw
+          tag_languages_dimension: Prif ieithoedd
+          tag_servers_dimension: Prif weinyddion
+          tag_servers_measure: gweinyddion gwahanol
+          tag_uses_measure: cyfanswm defnydd
+        description_html: Mae'r rhain yn hashnodau sy'n ymddangos ar hyn o bryd mewn llawer o bostiadau y mae eich gweinydd yn eu gweld. Gall helpu eich defnyddwyr i ddarganfod beth mae pobl yn siarad fwyaf amdano ar hyn o bryd. Nid oes unrhyw hashnodau yn cael eu dangos yn gyhoeddus nes i chi eu cymeradwyo.
+        listable: Mae modd ei awgrymu
+        no_tag_selected: Heb newid unrhyw dagiau gan na chafodd yr un ohonyn nhw eu dewis
+        not_listable: Ni fydd yn cael ei awgrymu
+        not_trendable: Ni fydd yn ymddangos o dan bynciau llosg
+        not_usable: Nid oes modd ei ddefnyddio
+        peaked_on_and_decaying: Ar ei anterth ar %{date}, bellach yn lleihau
+        title: Hashnodau tueddiadau
+        trendable: Gall ymddangos o dan bynciau llosg
+        trending_rank: 'Yn tueddu #%{rank}'
+        usable: Mae modd ei ddefnyddio
+        usage_comparison: Wedi'i ddefnyddio %{today} gwaith heddiw, o'i gymharu â %{yesterday} ddoe
+        used_by_over_week:
+          few: Wedi'i ddefnyddio gan %{count} o bobl dros yr wythnos ddiwethaf
+          many: Wedi'i ddefnyddio gan %{count} o bobl dros yr wythnos ddiwethaf
+          one: Wedi'i ddefnyddio gan un person dros yr wythnos ddiwethaf
+          other: Wedi'i ddefnyddio gan %{count} o bobl dros yr wythnos ddiwethaf
+          two: Wedi'i ddefnyddio gan %{count} o bobl dros yr wythnos ddiwethaf
+          zero: Wedi'i ddefnyddio gan %{count} o bobl dros yr wythnos ddiwethaf
+      title: Pynciau Llosg
+      trending: Trendio
     warning_presets:
       add_new: Ychwanegu newydd
       delete: Dileu
       edit_preset: Golygu rhagosodiad rhybudd
+      empty: Nid ydych wedi diffinio unrhyw ragosodiadau rhybudd eto.
       title: Rheoli rhagosodiadau rhybudd
+    webhooks:
+      add_new: Ychwanegu diweddbwynt
+      delete: Dileu
+      description_html: Mae <strong>bachyn gwe</strong> yn galluogi Mastodon i wthio <strong>hysbysiadau amser real</strong> am ddigwyddiadau a ddewiswyd i'ch cais eich hun, fel y gall eich cais <strong>ysgogi ymatebion yn awtomatig</strong> .
+      disable: Analluogi
+      disabled: Wedi'i analluogi
+      edit: Golygu diweddbwynt
+      empty: Nid oes gennych unrhyw diweddbwyntiau bachau gwe wedi'u ffurfweddu eto.
+      enable: Galluogi
+      enabled: Gweithredol
+      enabled_events:
+        few: "%{count} digwyddiad wedi'u galluogi"
+        many: "%{count} digwyddiad wedi'u galluogi"
+        one: 1 digwyddiad wedi'i alluogi
+        other: "%{count} digwyddiad wedi'u galluogi"
+        two: "%{count} digwyddiad wedi'u galluogi"
+        zero: "%{count} digwyddiadau wedi'u galluogi"
+      events: Digwyddiadau
+      new: Bachyn gwe newydd
+      rotate_secret: Cylchdroi cyfrinach
+      secret: Cyfrinach arwyddo
+      status: Statws
+      title: Bachau Gwe
+      webhook: Bachyn Gwe
   admin_mailer:
+    new_appeal:
+      actions:
+        delete_statuses: i ddileu eu postiadau
+        disable: i rewi eu cyfrif
+        mark_statuses_as_sensitive: i nodi eu postiadau fel rhai sensitif
+        none: rhybudd
+        sensitive: i nodi bod eu cyfrif yn sensitif
+        silence: i gyfyngu ar eu cyfrif
+        suspend: i atal eu cyfrif
+      body: 'Mae %{target} yn apelio yn erbyn penderfyniad cymedroli gan %{action_taken_by} ar %{date}, sef %{type}. Mae nhw''n dweud:'
+      next_steps: Gallwch gymeradwyo'r apêl i ddadwneud y penderfyniad cymedroli, neu ei anwybyddu.
+      subject: Mae %{username} yn apelio yn erbyn penderfyniad cymedroli ar %{instance}
     new_pending_account:
-      body: Mae manylion y cyfrif newydd yn isod. Gallwch cymeradwyo neu wrthod y ceisiad hon.
-      subject: Cyfrif newydd i fynu ar gyfer adolygiad ar %{instance} (%{username})
+      body: Mae manylion y cyfrif newydd yn isod. Gallwch gymeradwyo neu wrthod y cais hwn.
+      subject: Cyfrif newydd i'w adolygu ar %{instance} (%{username})
     new_report:
-      body: Mae %{reporter} wedi cwyno am %{target}
-      body_remote: Mae rhywun o %{domain} wedi cwyno am %{target}
-      subject: Cwyn newydd am %{instance} (#%{id})
+      body: Mae %{reporter} wedi adrodd am %{target}
+      body_remote: Mae rhywun o %{domain} wedi adrodd am %{target}
+      subject: Adroddiad newydd am %{instance} (#%{id})
+    new_trends:
+      body: 'Mae angen adolygu''r eitemau canlynol cyn y mae modd eu dangos yn gyhoeddus:'
+      new_trending_links:
+        title: Dolenni llosg
+      new_trending_statuses:
+        title: Postiadau sy'n trendio
+      new_trending_tags:
+        no_approved_tags: Ar hyn o bryd nid oes unrhyw hashnodau trendio cymeradwy.
+        requirements: 'Gallai unrhyw un o''r ymgeiswyr hyn ragori ar yr hashnod trendio cymeradwy #%{rank}, sef #%{lowest_tag_name} gyda sgôr o %{lowest_tag_score} ar hyn o bryd.'
+        title: Hashnodau sy'n trendio
+      subject: Trendiau newydd i'w hadolygu ar %{instance}
   aliases:
     add_new: Creu enw arall
-    created_msg: Wedi creu enw arall yn llwyddianus. Gallwch nawr dechrau'r symudiad o'r hen gyfrif.
-    deleted_msg: Wedi tynnu enw arall yn llwyddianus. Ni fydd symud o'r cyfrif hynny i'r cyfrif hon yn bosib.
-    empty: Nid oes gennych chi enwau eraill.
-    hint_html: Os hoffech symyd o gyfrif arall i'r cyfrif hon, gallwch creu enw arall fama, sydd yn angenrheidiol cyn i chi dechrau symyd ddilynwyr o'r hen gyfrif i'r cyfrif hon. Mae'r gweithred hon yn <strong>ddiniwed ac yn gildroadwy</strong>. <strong>Caiff symudiad y cyfrif ei dechrau o'r hen gyfrif</strong>.
+    created_msg: Wedi creu enw arall yn llwyddiannus. Gallwch nawr ddechrau symud o'r hen gyfrif.
+    deleted_msg: Wedi tynnu enw arall yn llwyddiannus. Ni fydd symud o'r cyfrif hynny i'r cyfrif hon yn bosib.
+    empty: Nid oes gennych enwau eraill.
+    hint_html: Os ydych chi am symud o gyfrif arall i'r un hwn, gallwch greu enw arall yma, sy'n ofynnol cyn y gallwch symud ymlaen i symud dilynwyr o'r hen gyfrif i'r un hwn. Mae'r weithred hon ynddo'i hun yn <strong>ddiniwed ac yn wrthdroadwy</strong>. <strong>Mae'r mudo cyfrif yn cael ei wneud o'r hen gyfrif</strong> .
     remove: Dadgysylltu'r enw arall
   appearance:
     advanced_web_interface: Rhyngwyneb gwe uwch
-    advanced_web_interface_hint: 'Os hoffech gwneud defnydd o gyd o''ch lled sgrin, mae''r rhyngwyneb gwe uwch yn gadael i chi ffurfweddu sawl colofn wahanol i weld cymaint o wybodaeth â hoffech: Catref, hysbysiadau, ffrwd y ffedysawd, unrhyw nifer o rhestrau ac hashnodau.'
-    animations_and_accessibility: Animeiddiau ac hygyrchedd
-    confirmation_dialogs: Deialog cadarnhau
-    discovery: Darganfyddiad
+    advanced_web_interface_hint: 'Os ydych chi am ddefnyddio lled eich sgrin gyfan, mae''r rhyngwyneb gwe datblygedig yn caniatáu i chi ffurfweddu llawer o wahanol golofnau i weld faint bynnag o wybodaeth ar yr un pryd ag y dymunwch: Cartref, hysbysiadau, llinell amser ffederaleiddiwyd, faint bynnag o restrau a hashnodau.'
+    animations_and_accessibility: Animeiddiadau a hygyrchedd
+    confirmation_dialogs: Deialogau cadarnhau
+    discovery: Darganfod
     localization:
-      body: Caiff Mastodon ei gyfieithu gan wirfoddolwyr.
+      body: Mae Mastodon yn cael ei gyfieithu gan wirfoddolwyr.
+      guide_link: https://crowdin.com/project/mastodon
       guide_link_text: Gall pawb gyfrannu.
     sensitive_content: Cynnwys sensitif
-    toot_layout: Gosodiad tŵt
+    toot_layout: Cynllun postiad
   application_mailer:
     notification_preferences: Newid gosodiadau e-bost
+    salutation: "%{name},"
     settings: 'Newid gosodiadau e-bost: %{link}'
     view: 'Gweld:'
     view_profile: Gweld proffil
@@ -431,234 +1003,361 @@ cy:
     destroyed: Cais wedi ei ddileu'n llwyddiannus
     regenerate_token: Adfywio tocyn mynediad
     token_regenerated: Adfywiwyd y tocyn mynediad yn llwyddiannus
-    warning: Byddwch yn ofalus a'r data hyn. Peidiwch a'i rannu byth!
+    warning: Byddwch yn ofalus iawn gyda'r data hwn. Peidiwch byth â'i rannu ag unrhyw un!
     your_token: Eich tocyn mynediad
   auth:
+    apply_for_account: Gofyn am gyfrif
     change_password: Cyfrinair
     delete_account: Dileu cyfrif
     delete_account_html: Os hoffech chi ddileu eich cyfrif, mae modd <a href="%{path}">parhau yma</a>. Bydd gofyn i chi gadarnhau.
     description:
-      prefix_invited_by_user: Mae @%{name} yn eich wahodd i ymuno â'r gweinidd Mastodon hon!
-      prefix_sign_up: Cofrestru ar Fastodon heddiw!
-      suffix: Gyda cyfrif, byddwch yn gallu dilyn pobl, postio dilysiadau a chyfnewid negeseuon gyda defnyddwyr o unrhyw gweinydd Mastodon ac mwy!
+      prefix_invited_by_user: Mae @%{name} yn eich gwahodd i ymuno â'r gweinydd Mastodon hwn!
+      prefix_sign_up: Cofrestru ar Mastodon heddiw!
+      suffix: Gyda chyfrif, byddwch yn gallu dilyn pobl, postio diweddariadau a chyfnewid negeseuon gyda defnyddwyr o unrhyw weinydd Mastodon, a mwy!
     didnt_get_confirmation: Heb dderbyn cyfarwyddiadau cadarnhau?
+    dont_have_your_security_key: Nid oes gennych eich allwedd ddiogelwch?
     forgot_password: Wedi anghofio'ch cyfrinair?
-    invalid_reset_password_token: Tocyn ailosod cyfrinair yn annilys neu wedi dod i ben. Gwnewch gais am un newydd os gwelwch yn dda.
+    invalid_reset_password_token: Tocyn ailosod cyfrinair yn annilys neu wedi dod i ben. Gwnewch gais am un newydd, os gwelwch yn dda.
+    link_to_otp: Rhowch god dau ffactor o'ch ffôn neu god adfer
+    link_to_webauth: Defnyddiwch eich dyfais allwedd diogelwch
+    log_in_with: Mewngofnodi gyda
     login: Mewngofnodi
     logout: Allgofnodi
     migrate_account: Symud i gyfrif gwahanol
     migrate_account_html: Os hoffech chi ailgyfeirio'r cyfrif hwn at un gwahanol, mae modd <a href="%{path}">ei ffurfweddu yma</a>.
-    or_log_in_with: Neu logiwch mewn a
-    register: Cofrestru
+    or_log_in_with: Neu mewngofnodwch gyda
+    privacy_policy_agreement_html: Rwyf wedi darllen ac yn cytuno i'r <a href="%{privacy_policy_path}" target="_blank">polisi preifatrwydd</a>
+    providers:
+      cas: CAS
+      saml: SAML
+    register: Cofrestrwch
     registration_closed: Nid yw %{instance} yn derbyn aelodau newydd
     resend_confirmation: Ailanfon cyfarwyddiadau cadarnhau
     reset_password: Ailosod cyfrinair
+    rules:
+      preamble: Mae'r rhain yn cael eu gosod a'u gorfodi gan y %{domain} cymedrolwyr.
+      title: Rhai rheolau sylfaenol.
     security: Diogelwch
     set_new_password: Gosod cyfrinair newydd
     setup:
-      email_below_hint_html: Os mae'r ebost isod yn anghywir, gallwch ei newid fama a derbyn ebost cadarnhad newydd.
-      email_settings_hint_html: Caiff yr ebost cadarnhad ei anfon i %{email}. Os nad yw'r ebost hon yn gywir, gallwch ei newid yn ngosodiadau'r cyfrif.
+      email_below_hint_html: Os yw'r cyfeiriad e-bost isod yn anghywir, gallwch ei newid yma a derbyn e-bost cadarnhau newydd.
+      email_settings_hint_html: Anfonwyd yr e-bost cadarnhau at %{email}. Os nad yw'r cyfeiriad e-bost hwnnw'n gywir, gallwch ei newid yng ngosodiadau'r cyfrif.
       title: Gosodiad
+    sign_up:
+      preamble: Gyda chyfrif ar y gweinydd Mastodon hwn, byddwch yn gallu dilyn unrhyw berson arall ar y rhwydwaith, lle bynnag mae eu cyfrif yn cael ei gynnal.
+      title: Gadewch i ni eich gosod ar %{domain}.
     status:
       account_status: Statws cyfrif
-      confirming: Aros i gadarnhad e-bost gael ei gwblhau.
+      confirming: Yn aros i gadarnhad yr e-bost gael ei gwblhau.
+      functional: Mae eich cyfrif nawr yn weithredol.
       pending: Mae'ch cais yn aros i gael ei adolygu gan ein staff. Gall hyn gymryd cryn amser. Byddwch yn derbyn e-bost os caiff eich cais ei gymeradwyo.
-      redirecting_to: Mae eich cyfrif yn anactif oherwydd ei fod ar hyn o bryd yn ailgyfeirio i %{acct}.
+      redirecting_to: Mae eich cyfrif yn anweithredol oherwydd ei fod ar hyn o bryd yn ailgyfeirio i %{acct}.
+      view_strikes: Gweld rybuddion y gorffennol yn erbyn eich cyfrif
+    too_fast: Cafodd y ffurflen ei chyflwyno'n rhy gyflym, ceisiwch eto.
+    use_security_key: Defnyddiwch allwedd diogelwch
   authorize_follow:
-    already_following: Yr ydych yn dilyn y cyfrif hwn yn barod
-    already_requested: Rydych barod wedi anfon ceisiad dilyn i'r cyfrif hynny
-    error: Yn anffodus, roedd gwall tra'n edrych am y cyfrif anghysbell
+    already_following: Rydych yn dilyn y cyfrif hwn yn barod
+    already_requested: Rydych chi eisoes wedi anfon cais i ddilyn y cyfrif hwnnw
+    error: Yn anffodus, roedd gwall tra'n edrych am y cyfrif pell
     follow: Dilyn
-    follow_request: 'Yr ydych wedi anfon cais dilyn at:'
-    following: 'Llwyddiant! Yr ydych yn awr yn dilyn:'
+    follow_request: 'Rydych wedi anfon cais dilyn at:'
+    following: 'Llwyddiant! Rydych nawr yn dilyn:'
     post_follow:
       close: Neu, gallwch gau'r ffenest hon.
       return: Dangos proffil y defnyddiwr
-      web: I'r wê
+      web: Ewch i'r we
     title: Dilyn %{acct}
   challenge:
     confirm: Parhau
-    hint_html: "<strong>Awgrym:</strong> Ni fyddwn yn gofyn i chi am eich cyfrinair eto am yr awr nesaf."
+    hint_html: "<strong>Awgrym:</strong> Fyddwn ni ddim yn gofyn i chi am eich cyfrinair eto am yr awr nesaf."
     invalid_password: Cyfrinair annilys
     prompt: Cadarnhewch gyfrinair i barhau
   crypto:
     errors:
       invalid_key: ddim yn allwedd Ed25519 na Curve25519 dilys
       invalid_signature: ddim yn llofnod Ed25519 dilys
+  date:
+    formats:
+      default: "%b %d %Y"
+      with_month_name: "%b %d %Y"
   datetime:
     distance_in_words:
       about_x_hours: "%{count}awr"
       about_x_months: "%{count}mis"
-      about_x_years: "%{count}blwyddyn"
-      almost_x_years: "%{count}blwyddyn"
+      about_x_years: "%{count}b"
+      almost_x_years: "%{count}b"
       half_a_minute: Newydd fod
       less_than_x_minutes: "%{count}munud"
       less_than_x_seconds: Newydd fod
-      over_x_years: "%{count}blwyddyn"
+      over_x_years: "%{count}b"
       x_days: "%{count}dydd"
       x_minutes: "%{count}munud"
       x_months: "%{count}mis"
-      x_seconds: "%{count}eiliad"
+      x_seconds: "%{count}e"
   deletes:
-    challenge_not_passed: Nid oedd y wybodaeth a nodoch yn gywir
+    challenge_not_passed: Nid oedd y wybodaeth a roesoch yn gywir
     confirm_password: Mewnbynnwch eich cyfrinair presennol i gadarnhau mai chi sydd yno
     confirm_username: Rhowch eich enw defnyddiwr i gadarnhau'r weithdrefn
     proceed: Dileu cyfrif
     success_msg: Llwyddwyd i ddileu eich cyfrif
     warning:
       before: 'Cyn bwrw ymlaen, darllenwch y nodiadau hyn yn ofalus:'
-      caches: Efallai bydd cynnwys sydd wedi'i storio dros dro gan weinyddau eraill yn barhau
-      data_removal: Bydd eich pyst a'ch data arall yn cael ei ddileu am fyth
-      email_change_html: Gallwch <a href="%{path}">newid eich cyfeiriad ebost</a> heb ddileu eich cyfrif
-      email_contact_html: Os nad yw hi'n cyrraedd, gallwch ebostio <a href="mailto:%{email}">%{email}</a> am gymorth
-      email_reconfirmation_html: Os nad ydych yn derbyn yr ebost cadarnhad, gallwch <a href="%{path}">ceisio amdani eto</a>
-      irreversible: Ni fyddwch yn gallu adfer nac ail-greu eich cyfrif
-      more_details_html: Am fwy o fanylion, gwelwch y <a href="%{terms_path}">polisi preifatrwydd</a>.
+      caches: Efallai bydd cynnwys sydd wedi'i storio dros dro gan weinyddion eraill yn parhau
+      data_removal: Bydd eich postiadau a data arall yn cael eu dileu'n barhaol
+      email_change_html: Gallwch <a href="%{path}">newid eich cyfeiriad e-bost</a> heb ddileu eich cyfrif
+      email_contact_html: Os nad yw'n cyrraedd o hyd, gallwch anfon e-bost at <a href="mailto:%{email}">%{email}</a> am help
+      email_reconfirmation_html: Os nad ydych yn derbyn yr e-bost cadarnhau, gallwch <a href="%{path}">ofyn amdano eto</a>
+      irreversible: Fyddwch chi ddim yn gallu adfer nac ail-greu eich cyfrif
+      more_details_html: Am fwy o fanylion, darllenwch y <a href="%{terms_path}">polisi preifatrwydd</a>.
       username_available: Bydd eich enw defnyddiwr ar gael eto
       username_unavailable: Ni fydd eich enw defnyddiwr ar gael
   disputes:
     strikes:
+      action_taken: Camau a gymerwyd
+      appeal: Apêl
+      appeal_approved: Apeliwyd yn llwyddiannus yn erbyn y rhybudd hwn ac nid yw'n ddilys bellach
+      appeal_rejected: Mae’r apêl wedi’i gwrthod
+      appeal_submitted_at: Apêl wedi'i chyflwyno
+      appealed_msg: Mae eich apêl wedi'i chyflwyno. Os caiff ei gymeradwyo, byddwch yn cael gwybod.
+      appeals:
+        submit: Cyflwyno apêl
       approve_appeal: Cymeradwyo'r apêl
+      associated_report: Adroddiad cysylltiedig
+      created_at: Dyddiedig
+      description_html: Mae'r rhain yn gamau a gymerwyd yn erbyn eich cyfrif a rhybuddion sydd wedi'u hanfon atoch gan staff %{instance}.
+      recipient: Wedi'i gyfeirio at
       reject_appeal: Gwrthod yr apêl
+      status: 'Postio #%{id}'
+      status_removed: Postiad sydd eisoes wedi'i dynnu o'r system
+      title: "%{action} gan %{date}"
+      title_actions:
+        delete_statuses: Dileu post
+        disable: Rhewi cyfrif
+        mark_statuses_as_sensitive: Marcio postiadau fel rhai sensitif
+        none: Rhybudd
+        sensitive: Marcio cyfrif fel un sensitif
+        silence: Cyfyngiad y cyfrif
+        suspend: Atal y cyfrif
+      your_appeal_approved: Mae eich apêl wedi'i chymeradwyo
+      your_appeal_pending: Rydych wedi cyflwyno apêl
+      your_appeal_rejected: Mae eich apêl wedi'i gwrthod
   domain_validator:
     invalid_domain: ddim yn enw parth dilys
   errors:
-    '400': Roedd y cais wnaethoch cyflwyno yn annilys neu'n gamffurfiedig.
-    '403': Nid oes gennych ganiatad i weld y dudalen hon.
-    '404': Nid yw'r dudalen yr oeddech yn chwilio amdani'n bodoli.
-    '406': Nid yw'r dudalen ar gael yn y fformat ceisiedig.
-    '410': Nid yw'r dudalen yr oeddech yn chwilio amdani'n bodoli mwyach.
+    '400': Roedd y cais a gyflwynwyd gennych yn annilys neu wedi'i gamffurfio.
+    '403': Nid oes gennych ganiatâd i weld y dudalen hon.
+    '404': Nid yw'r dudalen rydych yn chwilio amdani yma.
+    '406': Nid yw'r dudalen ar gael yn y fformat yna.
+    '410': Nid yw'r dudalen roeddech yn chwilio amdani yn bodoli yma bellach.
     '422':
-      content: Methwyd i ddilysu diogelwch. A ydych chi'n blocio cwcîs?
-      title: Methwyd i ddilysu diogelwch
-    '429': Wedi'i arafu
+      content: Methodd y dilysiad diogelwch. Ydych chi'n rhwystro cwcis?
+      title: Methodd y dilysiad diogelwch
+    '429': Gormod o geisiadau
     '500':
-      content: Mae'n ddrwg gennym ni, ond fe aeth rhywbeth o'i le ar ein rhan ni.
+      content: Ymddiheuriadau, ond fe aeth rhywbeth o'i le ar ein pen ni.
       title: Nid yw'r dudalen hon yn gywir
-    '503': Ni chaiff y dudalen ei weini oherwydd gwall gweinydd dros dro.
-    noscript_html: I ddefnyddio ap gwe Mastodon, galluogwch JavaScript os gwlwch yn dda. Fel arall, gallwch drio un o'r <a href="%{apps_path}">apiau cynhenid</a> ar gyfer Mastodon ar eich platfform.
+    '503': Ni fu modd gwasanaethu'r dudalen oherwydd methiant gweinydd dros dro.
+    noscript_html: I ddefnyddio ap gwe Mastodon, galluogwch JavaScript os gwelwch yn dda. Fel arall, gallwch drio un o'r <a href="%{apps_path}">apiau cynhenid</a> ar gyfer Mastodon ar eich platfform.
   existing_username_validator:
-    not_found: ni ddarganfwyd defnyddiwr lleol gyda'r enw cyfrif hynny
-    not_found_multiple: ni ddarganfwyd %{usernames}
+    not_found: methu dod o hyd i ddefnyddiwr lleol gyda'r enw defnyddiwr hwnnw
+    not_found_multiple: methu dod o hyd i %{usernames}
   exports:
     archive_takeout:
       date: Dyddiad
-      download: Lawrlwytho eich archif
-      hint_html: Mae modd gwneud cais am archif o'ch <strong>twtiau a'ch cyfryngau</strong>. Bydd y data sy'n cael ei allforio ar fformat ActivityPub, a ellir ei ddarllen gyda unrhyw feddalwaedd sy'n cydymffurfio. Mae modd gwneud cais am archif bob 7 diwrnod.
-      in_progress: Cyfansoddi eich archif...
-      request: Gwneud cais am eich archif
+      download: Llwythwch eich archif i lawr
+      hint_html: Gallwch ofyn am archif o'ch <strong>postiadau a'r cyfryngau a lwythwyd</strong>. Bydd y data a allforir yn y fformat ActivityPub, y mae modd ei ddarllen gan unrhyw feddalwedd sy'n cydymffurfio. Gallwch ofyn am archif bob 7 diwrnod.
+      in_progress: Wrthi'n llunio'ch archif...
+      request: Gofynn am eich archif
       size: Maint
-    blocks: Yr ydych yn blocio
+    blocks: Rydych chi'n blocio
+    bookmarks: Nodau Tudalen
+    csv: CSV
     domain_blocks: Blociau parth
     lists: Rhestrau
-    mutes: Yr ydych yn tawelu
-    storage: Storio cyfryngau
+    mutes: Rydych chi'n anwybyddu
+    storage: Storfa cyfryngau
   featured_tags:
     add_new: Ychwanegu
     errors:
-      limit: Yr ydych yn barod wedi cynnwys yr uchafswm o hashnodau
-    hint_html: "<strong>Beth yw hashnodau nodedig?</strong> Mae'r rhain yn cael ei arddangos yn amlwg ar eich proffil cyhoeddus ac yn gadael i bobl pori eich pyst cyhoeddus o dan y hashnodau rhain yn benodol. Rydynt yn declyn grêt ar gyfer tracio gweithiau creadigol neu brosiectau hir-dymor."
+      limit: Rydych chi eisoes wedi cynnwys yr uchafswm o hashnodau
+    hint_html: "<strong>Beth yw hashnodau dan sylw?</strong> Maen nhw'n cael eu dangos yn amlwg ar eich proffil cyhoeddus ac yn caniatáu i bobl bori'ch postiadau cyhoeddus yn benodol o dan yr hashnodau hynny. Maen nhw'n arf gwych ar gyfer cadw golwg ar weithiau creadigol neu brojectau tymor hir."
   filters:
     contexts:
       account: Proffilau
-      home: Ffrwd gartref
+      home: Cartref a rhestrau
       notifications: Hysbysiadau
-      public: Ffrwd gyhoeddus
+      public: Llinellau amser cyhoeddus
       thread: Sgyrsiau
     edit:
+      add_keyword: Ychwanegu allweddair
+      keywords: Allweddeiriau
+      statuses: Postiadau unigol
+      statuses_hint_html: Mae'r hidlydd hwn yn berthnasol i ddewis postiadau unigol pa un ai a ydynt yn cyfateb i'r allweddeiriau isod. <a href="%{path}">Adolygu neu ddileu postiadau o'r hidlydd</a> .
       title: Golygu hidlydd
     errors:
-      invalid_context: Dim cyd-destun neu cyd-destun annilys wedi ei ddarparu
+      deprecated_api_multiple_keywords: Nid oes modd newid y paramedrau hyn o'r cais hwn oherwydd eu bod yn berthnasol i fwy nag un allweddair hidlo. Defnyddiwch raglen fwy diweddar neu'r rhyngwyneb gwe.
+      invalid_context: Dim neu gyd-destun annilys wedi'i ddarparu
     index:
+      contexts: Hidlau yn %{contexts}
       delete: Dileu
-      empty: Nid oes gennych chi hidlyddion.
+      empty: Nid oes gennych unrhyw hidlyddion.
+      expires_in: Yn dod i ben ymhen %{distance}
+      expires_on: Yn dod i ben ar %{date}
+      keywords:
+        few: "%{count} allweddair"
+        many: "%{count} allweddair"
+        one: "%{count} allweddair"
+        other: "%{count} allweddair"
+        two: "%{count} allweddair"
+        zero: "%{count} allweddeiriau"
+      statuses:
+        few: "%{count} postiad"
+        many: "%{count} postiad"
+        one: "%{count} postiad"
+        other: "%{count} postiad"
+        two: "%{count} postiad"
+        zero: "%{count} postiadau"
+      statuses_long:
+        few: "%{count} postiad unigol wedi'u cuddio"
+        many: "%{count} postiad unigol wedi'u cuddio"
+        one: "%{count} postiad unigol wedi'u cuddio"
+        other: "%{count} postiad unigol wedi'u cuddio"
+        two: "%{count} bostiad unigol wedi'u cuddio"
+        zero: "%{count} postiadau unigol wedi'u cuddio"
       title: Hidlyddion
     new:
+      save: Cadw hidlydd newydd
       title: Ychwanegu hidlydd newydd
+    statuses:
+      back_to_filter: Nôl i'r hidlydd
+      batch:
+        remove: Tynnu o'r hidlydd
+      index:
+        hint: Mae'r hidlydd hwn yn berthnasol i ddethol postiadau unigol waeth beth fo'r meini prawf eraill. Gallwch ychwanegu mwy o bostiadau at yr hidlydd hwn o'r rhyngwyneb gwe.
+        title: Postiadau wedi'u hidlo
   footer:
-    trending_now: Yn tueddu nawr
+    trending_now: Pynciau llosg
   generic:
     all: Popeth
-    changes_saved_msg: Llwyddwyd i gadw y newidiadau!
+    all_items_on_page_selected_html:
+      few: Mae pob un o'r <strong>%{count}</strong> eitem ar y dudalen hon wedi'u dewis.
+      many: Mae pob un o'r <strong>%{count}</strong> eitem ar y dudalen hon wedi'u dewis.
+      one: Mae <strong>%{count}</strong> eitem wedi'i dewis ar y dudalen hon.
+      other: Mae pob un o'r <strong>%{count}</strong> eitem ar y dudalen hon wedi'u dewis.
+      two: Mae pob un o'r <strong>%{count}</strong> eitem ar y dudalen hon wedi'u dewis.
+      zero: Does <strong>%{count}</strong> o eitemau ar y dudalen hon wedi'u dewis.
+    all_matching_items_selected_html:
+      few: Mae pob un o'r <strong>%{count}</strong> eitem sy'n cyfateb i'ch chwiliad wedi'u dewis.
+      many: Mae pob un o'r <strong>%{count}</strong> eitem sy'n cyfateb i'ch chwiliad wedi'u dewis.
+      one: Mae <strong>%{count}</strong> eitem sy'n cyfateb i'ch chwiliad wedi'i dewis.
+      other: Mae pob un o'r <strong>%{count}</strong> eitem sy'n cyfateb i'ch chwiliad wedi'u dewis.
+      two: Mae pob un o'r <strong>%{count}</strong> eitem sy'n cyfateb i'ch chwiliad wedi'u dewis.
+      zero: Does <strong>%{count}</strong> o eitemau sy'n cyfateb i'ch chwiliad wedi'u dewis.
+    changes_saved_msg: Llwyddwyd i gadw'r newidiadau!
     copy: Copïo
     delete: Dileu
-    order_by: Trefnu wrth
+    deselect: Dad-ddewis y cwbl
+    none: Dim
+    order_by: Trefnu yn ôl
     save_changes: Cadw newidiadau
+    select_all_matching_items:
+      few: Dewiswch bob un o'r %{count} eitem sy'n cyfateb i'ch chwilio.
+      many: Dewiswch bob un o'r %{count} eitem sy'n cyfateb i'ch chwilio.
+      one: Dewiswch bob un o'r %{count} o eitemau sy'n cyfateb i'ch chwilio.
+      other: Dewiswch bob un o'r %{count} eitem sy'n cyfateb i'ch chwilio.
+      two: Dewiswch bob un o'r %{count} eitem sy'n cyfateb i'ch chwilio.
+      zero: Dewiswch bob un o'r %{count} eitemau sy'n cyfateb i'ch chwilio.
+    today: heddiw
     validation_errors:
-      few: Mae rhywbeth o'i le o hyd! Edrychwch ar y %{count} gwall isod os gwelwch yn dda
-      many: Mae rhywbeth o'i le o hyd! Edrychwch ar y %{count} gwall isod os gwelwch yn dda
-      one: Mae rhywbeth o'i le o hyd! Edrychwch ar y gwall isod os gwelwch yn dda
-      other: Mae rhywbeth o'i le o hyd! Edrychwch ar y %{count} gwall isod os gwelwch yn dda
-      two: Mae rhywbeth o'i le o hyd! Edrychwch ar y %{count} gwall isod os gwelwch yn dda
+      few: Mae rhywbeth o'i le o hyd! Edrychwch ar y %{count} gwall isod, os gwelwch yn dda
+      many: Mae rhywbeth o'i le o hyd! Edrychwch ar y %{count} gwall isod, os gwelwch yn dda
+      one: Mae rhywbeth o'i le o hyd! Edrychwch ar y gwall isod, os gwelwch yn dda
+      other: Mae rhywbeth o'i le o hyd! Edrychwch ar y %{count} gwall isod, os gwelwch yn dda
+      two: Mae rhywbeth o'i le o hyd! Edrychwch ar y %{count} wall isod, os gwelwch yn dda
       zero: Mae rhywbeth o'i le o hyd! Edrychwch ar y %{count} gwall isod os gwelwch yn dda
   html_validator:
-    invalid_markup: 'yn cynnwys marciad HTML annilys: %{error}'
+    invalid_markup: 'yn cynnwys markup HTML annilys: %{error}'
   imports:
+    errors:
+      invalid_csv_file: 'Ffeil CSV annilys. Gwall: %{error}'
+      over_rows_processing_limit: yn cynnwys mwy na %{count} o resi
     modes:
       merge: Cyfuno
-      merge_long: Cadw'r cofnodau presennol ac ychwanegu rhai newydd
+      merge_long: Cadw'r cofnodion presennol ac ychwanegu rhai newydd
       overwrite: Trosysgrifio
-      overwrite_long: Disodli cofnodau bresennol gyda'r cofnodau newydd
-    preface: Mae modd mewnforio data yr ydych wedi allforio o achos arall, megis rhestr o bobl yr ydych yn ei ddilyn neu yn blocio.
-    success: Uwchlwythwyd eich data yn llwyddiannus ac fe fydd yn cael ei brosesu mewn da bryd
+      overwrite_long: Amnewid y cofnodion cyfredol gyda'r rhai newydd
+    preface: Gallwch fewnforio data rydych chi wedi'i allforio o weinydd arall, fel rhestr o'r bobl rydych chi'n eu dilyn neu'n eu blocio.
+    success: Llwythwyd eich data yn llwyddiannus a bydd yn cael ei brosesu mewn da bryd
     types:
       blocking: Rhestr blocio
+      bookmarks: Nodau Tudalen
       domain_blocking: Rhestr rhwystro parth
-      following: Rhestr dilyn
-      muting: Rhestr tawelu
-    upload: Uwchlwytho
+      following: Rhestr ddilynion
+      muting: Rhestr tewi
+    upload: Llwytho
   invites:
-    delete: Dadactifadu
-    expired: Wedi darfod
+    delete: Dadweithredu
+    expired: Wedi dod i ben
     expires_in:
       '1800': 30 munud
       '21600': 6 awr
       '3600': 1 awr
       '43200': 12 awr
       '604800': 1 wythnos
-      '86400': 1 dydd
+      '86400': 1 diwrnod
     expires_in_prompt: Byth
-    generate: Cynhyrchu
+    generate: Cynhyrchu dolen wahoddiad
     invited_by: 'Cawsoch eich gwahodd gan:'
     max_uses:
       few: "%{count} defnydd"
       many: "%{count} defnydd"
-      one: 1 iws
+      one: 1 defnydd
       other: "%{count} defnydd"
       two: "%{count} defnydd"
       zero: "%{count} defnydd"
     max_uses_prompt: Dim terfyn
-    prompt: Cynhyrchwch a rhannwch ddolenni gyda eraill i ganiatau mynediad i'r achos hwn
+    prompt: Creu a rhannu dolenni â phobl eraill i roi mynediad iddyn nhw i'r gweinydd hwn
     table:
-      expires_at: Darfod ar
+      expires_at: Yn dod i ben ar
       uses: Defnyddiau
     title: Gwahodd pobl
   lists:
     errors:
-      limit: Yr ydych wedi cyrraedd uchafswm nifer y rhestrau posib
+      limit: Rydych wedi cyrraedd uchafswm y rhestrau
+  login_activities:
+    authentication_methods:
+      otp: ap dilysu dau ffactor
+      password: cyfrinair
+      sign_in_token: cod diogelwch e-bost
+      webauthn: allweddi diogelwch
+    description_html: Os ydych yn gweld gweithgaredd nad ydych yn ei adnabod, ystyriwch newid eich cyfrinair a galluogi dilysu dau ffactor.
+    empty: Dim hanes dilysu ar gael
+    failed_sign_in_html: Ymgais mewngofnodi wedi methu gyda %{method} gan %{ip} (%{browser})
+    successful_sign_in_html: Mewngofnodi llwyddiannus gyda %{method} o %{ip} (%{browser})
+    title: Hanes dilysu
   media_attachments:
     validations:
-      images_and_video: Ni ellir ychwanegu fideo at statws sy'n cynnwys delweddau'n barod
-      not_ready: Methu atodi ffeiliau sydd dal yn prosesu. Ceisiwch eto mewn foment!
-      too_many: Ni ellir ychwanegu mwy na 4 dogfen
+      images_and_video: Methu atodi fideo i bostiad sydd eisoes yn cynnwys delweddau
+      not_ready: Methu atodi ffeiliau nad ydynt wedi gorffen prosesu. Ceisiwch eto, cyn hir!
+      too_many: Methu atodi mwy na 4 ffeil
   migrations:
-    acct: enwdefnyddiwr@parth y cyfrif newydd
-    cancel: Canslo ailgyfeirio
-    cancel_explanation: Bydd diddymu'r ailgyfeiriad yn ail-actifadu eich cyfrif bresennol, ond ni fydd hi'n dychwelyd dilynwyr sydd wedi'i symud i'r cyfrif hynny.
+    acct: Symudwyd i
+    cancel: Diddymu ailgyfeirio
+    cancel_explanation: Bydd diddymu'r ailgyfeiriad yn ail agor eich cyfrif cyfredol, ond ni fydd yn dod â dilynwyr sydd wedi'u symud i'r cyfrif hwnnw yn ôl.
     cancelled_msg: Wedi diddymu'r ailgyfeiriad yn llwyddiannus.
     errors:
-      already_moved: yw'r un cyfrif rydych barod wedi symud i
-      missing_also_known_as: yn olgyfeirio at y gyfrif hon
+      already_moved: yw'r un cyfrif rydych chi wedi symud iddo eisoes
+      missing_also_known_as: nid yw'n arallenw o'r cyfrif hwn
       move_to_self: dim ym gallu bod y cyfrif presennol
-      not_found: ni ellid dod o hyd iddo
-      on_cooldown: Rydych ar oeriad
-    followers_count: Dilynwyr at amser y symudiad
+      not_found: yn methu ei ganfod
+      on_cooldown: Rydych ar amser allan
+    followers_count: Dilynwyr ar adeg y symud
     incoming_migrations: Symud o gyfrif wahanol
-    incoming_migrations_html: I symud o gyfrif arall i'r un hon, yn gyntaf mae'n rhaid i chi greu <a href="%{path}">enw arall ar gyfer y cyfrif</a>.
-    moved_msg: Mae eich cyfrif nawr yn ailgyfeirio at %{acct} ac mae eich dilynwyr yn cael ei symud ar draws.
-    not_redirecting: Nid yw eich cyfrif yn ailgyfeirio at gyfrif arall yn bresennol.
-    on_cooldown: Rydych wedi mudo eich cyfrif yn diweddar. Bydd y swyddogaeth hon ar gael eto mewn %{count} diwrnod.
-    past_migrations: Ymfudiadau yn y gorffennol
+    incoming_migrations_html: I symud o gyfrif arall i'r un hwn, yn gyntaf mae angen i chi <a href="%{path}">greu enwarall (alias) cyfrif</a> .
+    moved_msg: Mae eich cyfrif bellach yn ailgyfeirio i %{acct} ac mae eich dilynwyr yn cael eu symud drosodd.
+    not_redirecting: Nid yw eich cyfrif yn ailgyfeirio i unrhyw gyfrif arall ar hyn o bryd.
+    on_cooldown: Rydych chi wedi mudo'ch cyfrif yn ddiweddar. Bydd y swyddogaeth hon ar gael eto ymhen %{count} diwrnod.
+    past_migrations: Mudo'r gorffennol
     proceed_with_move: Symud dilynwyr
     redirected_msg: Mae eich cyfrif yn awr yn ailgyfeirio at %{acct}.
     redirecting_to: Mae eich cyfrif yn ailgyfeirio at %{acct}.
@@ -666,19 +1365,26 @@ cy:
     warning:
       backreference_required: Bydd rhaid i'r cyfrif newydd olgyfeirio at y cyfrif hon yn gyntaf
       before: 'Cyn bwrw ymlaen, darllenwch y nodiadau hyn yn ofalus:'
-      cooldown: Ar ôl symud, bydd yna cyfnod oeriad trwy pa ystod ni fyddwch yn gallu symud eto
-      disabled_account: Ni fydd eich cyfrif presennol yn gwbl ddefyddiedig ar ôl hyn. Er hynny, byddwch dal gyda fynediad at allforiad data ac hefyd ail-actifadu.
-      followers: Bydd y gweithred hon yn symud pob un o'ch dilynwyr o'r cyfrif presennol i'r cyfrif newydd
-      only_redirect_html: Fel arall, gallwch <a href="%{path}">dim ond ychwanegu ailgyfeiriad ar eich proffil</a>.
+      cooldown: Ar ôl symud, bydd yna cyfnod aros na fydd modd i chi symud eto
+      disabled_account: Ni fydd modd defnyddio'ch cyfrif cyfredol yn llawn wedyn. Fodd bynnag, bydd gennych fynediad i allforio data yn ogystal ag ail agor.
+      followers: Bydd y weithred hon yn symud yr holl ddilynwyr o'r cyfrif cyfredol i'r cyfrif newydd
+      only_redirect_html: Fel arall, <a href="%{path}">dim ond ailgyfeiriad y gallwch chi ei osod ar eich proffil</a> .
       other_data: Ni fydd unrhyw data arall yn cael ei symud yn awtomatig
       redirect: Bydd proffil eich cyfrif presennol yn cael ei diweddaru gyda hysbysiad ailgyfeirio ac yn cael ei eithrio o chwiliadau
   moderation:
-    title: Goruwchwyliad
+    title: Cymedroil
   move_handler:
-    carry_blocks_over_text: Wnaeth y defnyddiwr symud o %{acct}, a oeddech chi wedi'i flocio.
-    carry_mutes_over_text: Wnaeth y defnyddiwr symud o %{acct}, a oeddech chi wedi'i dawelu.
-    copy_account_note_text: 'Wnaeth y defnyddiwr symud o %{acct}, dyma oedd eich hen nodiadau amdanynt:'
+    carry_blocks_over_text: Symudodd y defnyddiwr hwn o %{acct}, yr oeddech wedi'i rwystro.
+    carry_mutes_over_text: Wnaeth y defnyddiwr symud o %{acct}, a oeddech chi wedi'i anwybyddu.
+    copy_account_note_text: 'Symudodd y defnyddiwr hwn o %{acct}, dyma oedd eich nodiadau blaenorol amdanynt:'
+  navigation:
+    toggle_menu: Toglo'r ddewislen
   notification_mailer:
+    admin:
+      report:
+        subject: Mae %{name} wedi cyflwyno adroddiad
+      sign_up:
+        subject: Mae %{name} wedi cofrestru
     favourite:
       body: 'Cafodd eich statws ei hoffi gan %{name}:'
       subject: Hoffodd %{name} eich statws
@@ -694,129 +1400,181 @@ cy:
       title: Cais dilynwr newydd
     mention:
       action: Ateb
-      body: 'Caswoch eich sôn amdano gan %{name} yn:'
-      subject: Cawsoch eich sôn amdano gan %{name}
+      body: 'Caswoch eich crybwyll gan %{name} yn:'
+      subject: Cawsoch eich crybwyll gan %{name}
       title: Crywbylliad newydd
+    poll:
+      subject: Mae arolwg barn gan %{name} wedi dod i ben
     reblog:
-      body: 'Cafodd eich statws ei fŵstio gan %{name}:'
-      subject: Bŵstiodd %{name} eich statws
+      body: 'Cafodd eich postiad ei hybu gan %{name}:'
+      subject: Rhoddodd %{name} hwb i'ch postiad
       title: Hwb newydd
     status:
       subject: "%{name} newydd ei bostio"
+    update:
+      subject: Golygodd %{name} bostiad
   notifications:
     email_events: Digwyddiadau ar gyfer hysbysiadau e-bost
-    email_events_hint: 'Dewis digwyddiadau hoffech derbyn hysbysiadau ar eu cyfer:'
+    email_events_hint: 'Dewiswch ddigwyddiadau yr ydych am dderbyn hysbysiadau ar eu cyfer:'
     other_settings: Gosodiadau hysbysiadau arall
   number:
     human:
       decimal_units:
+        format: "%n%u"
         units:
           billion: Biliwn
           million: Miliwn
           quadrillion: Cwadriliwn
           thousand: Mil
           trillion: Triliwn
+  otp_authentication:
+    code_hint: Rhowch y cod a gynhyrchwyd gan eich ap dilysu i gadarnhau
+    description_html: Os ydych chi'n galluogi <strong>dilysu dau-ffactor</strong> gan ddefnyddio ap dilysu, bydd mewngofnodi yn ei gwneud yn ofynnol i chi fod â'ch ffôn yn eich meddiant, a fydd yn cynhyrchu tocynnau i chi fynd i mewn iddo.
+    enable: Galluogi
+    instructions_html: "<strong>Sganiwch y cod QR hwn i mewn i Google Authenticator neu ap TOTP tebyg ar eich ffôn</strong>. O hyn ymlaen, bydd yr ap hwnnw'n cynhyrchu tocynnau y bydd yn rhaid i chi eu rhoi wrth fewngofnodi."
+    manual_instructions: 'Os nad ydych yn gallu sganio''r cod QR a bod angen i chi ei roi â llaw, dyma''r gyfrinach testun plaen:'
+    setup: Gosod
+    wrong_code: Roedd y cod a roddwyd yn annilys! A yw amser gweinydd ac amser dyfais yn gywir?
   pagination:
     newer: Diweddarach
     next: Nesaf
     older: Hŷn
     prev: Blaenorol
+    truncate: "&hellip;"
   polls:
     errors:
       already_voted: Rydych chi barod wedi pleidleisio ar y pleidlais hon
       duplicate_options: yn cynnwys eitemau dyblyg
       duration_too_long: yn rhy bell yn y dyfodol
       duration_too_short: yn rhy fuan
-      expired: Mae'r pleidlais wedi gorffen yn barod
+      expired: Mae'r arolwg barn eisoes wedi dod i ben
       invalid_choice: Nid yw'r dewis pleidlais hyn yn bodoli
-      over_character_limit: ni all fod yn hirach na %{max} cymeriad yr un
-      too_few_options: rhaid cael fwy nag un eitem
-      too_many_options: ni all cynnwys fwy na %{max} o eitemau
+      over_character_limit: ni all fod yn hwy na %{max} nod yr un
+      too_few_options: rhaid cael mwy nag un eitem
+      too_many_options: ni all gynnwys mwy na %{max} eitem
   preferences:
     other: Arall
     posting_defaults: Rhagosodiadau postio
-    public_timelines: Ffrydau gyhoeddus
+    public_timelines: Ffrydiau cyhoeddus
+  privacy_policy:
+    title: Polisi preifatrwydd
   reactions:
     errors:
-      limit_reached: Cyfwng o ymatebion wahanol wedi'i cyrraedd
-      unrecognized_emoji: ddim yn emoji adnabyddwy
+      limit_reached: Cyrhaeddwyd terfyn y gwahanol adweithiau
+      unrecognized_emoji: nid yw'n emoji cydnabyddedig
   relationships:
     activity: Gweithgareddau cyfrif
     dormant: Segur
+    follow_selected_followers: Dilynwch y dilynwyr a ddewiswyd
     followers: Dilynwyr
     following: Yn dilyn
-    invited: Wedi gwahodd
-    last_active: Gweithred ddiwethaf
-    most_recent: Yn diweddaraf
+    invited: Gwahoddwyd
+    last_active: Yn weithgar ddiwethaf
+    most_recent: Y diweddaraf
     moved: Wedi symud
-    mutual: Cydfuddiannol
+    mutual: Cydfudd
     primary: Cynradd
     relationship: Perthynas
-    remove_selected_domains: Tynnu pob dilynydd o'r parthau dewisiedig
-    remove_selected_followers: Tynnu'r dilynydd dewisiedig
-    remove_selected_follows: Dad-ddilyn y defnyddwyr dewisiedig
+    remove_selected_domains: Tynnu'r holl ddilynwyr o'r parthau a ddewiswyd
+    remove_selected_followers: Dileu'r dilynwyr a ddewiswyd
+    remove_selected_follows: Dad-ddilyn y defnyddwyr a ddewiswyd
     status: Statws cyfrif
   remote_follow:
-    missing_resource: Ni ellir canfod yr URL ailgyferio angenrheidiol i'ch cyfrif
+    missing_resource: Methu â dod o hyd i'r URL ailgyfeirio gofynnol ar gyfer eich cyfrif
+  reports:
+    errors:
+      invalid_rules: ddim yn cyfeirio at reolau dilys
+  rss:
+    content_warning: 'Rhybudd cynnwys:'
+    descriptions:
+      account: Postiadau cyhoeddus gan @%{acct}
+      tag: 'Postiadau cyhoeddus wedi''u tagio #%{hashtag}'
   scheduled_statuses:
-    over_daily_limit: Rydych wedi rhagori'r cyfwng o %{limit} o dŵtiau rhestredig ar y dydd hynny
-    over_total_limit: Rydych wedi rhagori'r cyfwng o %{limit} o dŵtiau rhestredig
-    too_soon: Mae rhaid i'r dydd rhestredig fod yn y dyfodol
+    over_daily_limit: Rydych wedi mynd dros y terfyn o %{limit} postiad a drefnwyd ar gyfer heddiw
+    over_total_limit: Rydych wedi mynd dros y terfyn o %{limit} postiad a drefnwyd
+    too_soon: Rhaid i'r dyddiad a drefnwyd fod yn y dyfodol
   sessions:
     activity: Gweithgaredd ddiwethaf
     browser: Porwr
     browsers:
+      alipay: Alipay
+      blackberry: BlackBerry
+      chrome: Chrome
+      edge: Microsoft Edge
+      electron: Electron
+      firefox: Firefox
       generic: Porwr anhysbys
+      ie: Nid yw'r rhaglen hon yn gydnaws ag Internet Explorer
+      micro_messenger: MicroMessenger
       nokia: Porwr Nokia S40 Ovi
+      opera: Opera
+      otter: dyfrgi
+      phantom_js: PhantomJS
       qq: Porwr QQ
-    current_session: Sesiwn cyfredol
+      safari: Agor yn Safari
+      uc_browser: UC Browser
+      weibo: Weibo
+    current_session: Sesiwn gyfredol
     description: "%{browser} ar %{platform}"
-    explanation: Dyma'r porwyr gwê sydd wedi mewngofnodi i'ch cyfrif Mastododon ar hyn o bryd.
+    explanation: Dyma'r porwyr gwe sydd wedi mewngofnodi i'ch cyfrif Mastodon ar hyn o bryd.
+    ip: IP
     platforms:
+      adobe_air: Adobe Air
+      android: Android
+      blackberry: BlackBerry
+      chrome_os: ChromeOS
       firefox_os: OS Firefox
+      ios: iOS
+      linux: Linux
       mac: Mac
       other: platfform anhysbys
+      windows: Windows
+      windows_mobile: Windows Mobile
       windows_phone: Ffôn Windows
-    revoke: Diddymu
-    revoke_success: Sesiwn wedi ei ddiddymu yn llwyddiannus
+    revoke: Dirymu
+    revoke_success: Diddymwyd y sesiwn yn llwyddiannus
     title: Sesiynau
+    view_authentication_history: Gweld hanes dilysu eich cyfrif
   settings:
     account: Cyfrif
     account_settings: Gosodiadau'r cyfrif
-    aliases: Aliasau cyfrif
-    appearance: Arddangosiad
+    aliases: Arallenwau cyfrif
+    appearance: Golwg
     authorized_apps: Apiau awdurdodedig
-    back: Yn ôl i Mastodon
+    back: Nôl i Mastodon
     delete: Dileu cyfrif
     development: Datblygu
     edit_profile: Golygu proffil
     export: Allforio data
-    featured_tags: Hashnodau Nodedig
+    featured_tags: Prif hashnodau
     import: Mewnforio
-    import_and_export: Mewnfori ac allfori
+    import_and_export: Mewnforio ac allforio
     migrate: Mudo cyfrif
     notifications: Hysbysiadau
     preferences: Dewisiadau
     profile: Proffil
-    relationships: Dilynion a dilynwyr
-    two_factor_authentication: Awdurdodi dau-gam
+    relationships: Yn dilyn a dilynwyr
+    statuses_cleanup: Dileu postiadau'n awtomatig
+    strikes: Rhybuddion cymedroli
+    two_factor_authentication: Dilysu dau-ffactor
+    webauthn_authentication: Allweddi diogelwch
   statuses:
     attached:
       audio:
-        few: "%{count} ffeil clywedol"
-        many: "%{count} ffeil clywedol"
-        one: "%{count} ffeil clywedol"
-        other: "%{count} ffeil clywedol"
-        two: "%{count} ffeil clywedol"
-        zero: "%{count} ffeil clywedol"
+        few: "%{count} sain"
+        many: "%{count} sain"
+        one: "%{count} sain"
+        other: "%{count} sain"
+        two: "%{count} sain"
+        zero: "%{count} sain"
       description: 'Ynghlwm: %{attached}'
       image:
-        few: "%{count} o luniau"
-        many: "%{count} o luniau"
+        few: "%{count} llun"
+        many: "%{count} llun"
         one: "%{count} llun"
-        other: "%{count} o luniau"
-        two: "%{count} o luniau"
-        zero: "%{count} o luniau"
+        other: "%{count} llun"
+        two: "%{count} lun"
+        zero: "%{count} llun"
       video:
         few: "%{count} fideo"
         many: "%{count} fideo"
@@ -824,8 +1582,9 @@ cy:
         other: "%{count} fideo"
         two: "%{count} fideo"
         zero: "%{count} fideo"
-    boosted_from_html: Wedi ei fŵstio %{acct_link}
+    boosted_from_html: Wedi'i hybu o %{acct_link}
     content_warning: 'Rhybudd cynnwys: %{warning}'
+    default_language: Yr un fath a'r iaith rhyngwyneb
     disallowed_hashtags:
       few: 'yn cynnwys yr hashnod gwaharddedig: %{tags}'
       many: 'yn cynnwys yr hashnod gwaharddedig: %{tags}'
@@ -833,43 +1592,83 @@ cy:
       other: 'yn cynnwys yr hashnod gwaharddedig: %{tags}'
       two: 'yn cynnwys yr hashnod gwaharddedig: %{tags}'
       zero: 'yn cynnwys yr hashnod gwaharddedig: %{tags}'
+    edited_at_html: Wedi'i olygu %{date}
     errors:
-      in_reply_not_found: Nid yw'r statws rydych yn ceisio ymateb i yn edrych fel ei fod yn bodoli.
-    open_in_web: Agor yn y wê
-    over_character_limit: wedi mynd heibio'r uchafswm nodyn o %{max}
+      in_reply_not_found: Nid yw'n ymddangos bod y postiad rydych chi'n ceisio ei ateb yn bodoli.
+    open_in_web: Agor yn y we
+    over_character_limit: wedi mynd y tu hwnt i'r terfyn nodau o %{max}
     pin_errors:
-      limit: Yr ydych wedi pinio yr uchafswm posib o dŵtiau
-      ownership: Ni ellir pinio tŵt rhywun arall
-      reblog: Ni ellir pinio bŵstiau
+      direct: Nid oes modd pinio postiadau sy'n weladwy i ddefnyddwyr a grybwyllwyd yn unig
+      limit: Rydych chi eisoes wedi pinio uchafswm nifer y postiadau
+      ownership: Nid oes modd pinio postiad rhywun arall
+      reblog: Nid oes modd pinio hwb
     poll:
       total_people:
-        few: "%{count} o bobl"
-        many: "%{count} o bobl"
+        few: "%{count} person"
+        many: "%{count} person"
         one: "%{count} berson"
-        other: "%{count} o bobl"
-        two: "%{count} o bobl"
-        zero: "%{count} berson"
+        other: "%{count} person"
+        two: "%{count} person"
+        zero: "%{count} o bersonau"
       total_votes:
-        few: "%{count} o bleidleisiau"
-        many: "%{count} o bleidleisiau"
+        few: "%{count} pleidlais"
+        many: "%{count} pleidlais"
         one: "%{count} bleidlais"
-        other: "%{count} o bleidleisiau"
-        two: "%{count} o bleidleisiau"
-        zero: "%{count} pleidlais"
-      vote: Pleidleisio
+        other: "%{count} pleidlais"
+        two: "%{count} pleidlais"
+        zero: "%{count} o pleidleisiau"
+      vote: Pleidlais
     show_more: Dangos mwy
+    show_newer: Dangos y diweddaraf
     show_older: Dangos pethau hŷn
-    show_thread: Dangos edefyn
+    show_thread: Dangos trywydd
     sign_in_to_participate: Mengofnodwch i gymryd rhan yn y sgwrs
+    title: '%{name}: "%{quote}"'
     visibilities:
+      direct: Uniongyrchol
       private: Dilynwyr yn unig
       private_long: Dangos i ddilynwyr yn unig
       public: Cyhoeddus
       public_long: Gall pawb weld
       unlisted: Heb ei restru
-      unlisted_long: Gall pawb weld, ond heb ei restru ar ffrydiau cyhoeddus
+      unlisted_long: Gall pawb weld, ond heb eu rhestru ar linellau amser cyhoeddus
+  statuses_cleanup:
+    enabled: Dileu hen bostiadau'n awtomatig
+    enabled_hint: Yn dileu eich postiadau yn awtomatig ar ôl iddyn nhw gyrraedd trothwy oed penodedig, oni bai eu bod yn cyfateb i un o'r eithriadau isod
+    exceptions: Eithriadau
+    explanation: Oherwydd bod dileu postiadau yn weithrediad drud, mae hyn yn cael ei wneud yn araf dros amser pan nad yw'r gweinydd yn brysur fel arall. Am y rheswm hwn, efallai y bydd eich postiadau yn cael eu dileu ychydig ar ôl iddyn nhw gyrraedd y trothwy oed.
+    ignore_favs: Anwybyddu ffefrynnau
+    ignore_reblogs: Anwybyddu hybiau
+    interaction_exceptions: Eithriadau yn seiliedig ar ryngweithio
+    interaction_exceptions_explanation: Sylwch nad oes unrhyw sicrwydd y bydd postiadau'n cael eu dileu os ydyn nhw'n mynd o dan y trothwy ffefrynnau neu fwstio ar ôl mynd drostyn nhw unwaith.
+    keep_direct: Cadw negeseuon uniongyrchol
+    keep_direct_hint: Nid yw'n dileu unrhyw un o'ch negeseuon uniongyrchol
+    keep_media: Cadw postiadau gydag atodiadau cyfryngau
+    keep_media_hint: Nid yw'n dileu unrhyw un o'ch postiadau sydd ag atodiadau cyfryngau
+    keep_pinned: Cadw postiadau wedi'u pinio
+    keep_pinned_hint: Nid yw'n dileu unrhyw un o'ch postiadau wedi'u pinio
+    keep_polls: Cadw polau
+    keep_polls_hint: Nid yw'n dileu unrhyw un o'ch polau
+    keep_self_bookmark: Cadw y postiadau wedi'u cadw fel nodau tudalen
+    keep_self_bookmark_hint: Nid yw'n dileu eich postiadau eich hun os ydych wedi rhoi nod tudalen arnyn nhw
+    keep_self_fav: Cadw'r postiadau yr oeddech yn eu ffefrynnu
+    keep_self_fav_hint: Nid yw'n dileu eich postiadau eich hun os ydych wedi eu ffefrynnu
+    min_age:
+      '1209600': 2 wythnos
+      '15778476': 6 mis
+      '2629746': 1 mis
+      '31556952': 1 flwyddyn
+      '5259492': 2 fis
+      '604800': 1 wythnos
+      '63113904': 2 flynedd
+      '7889238': 3 mis
+    min_age_label: Trothwy oedran
+    min_favs: Cadw postiadau ffafriwyd m o leiaf
+    min_favs_hint: Nid yw'n dileu unrhyw un o'ch postiadau sydd wedi derbyn o leiaf y swm hwn o ffefrynnau. Gadewch yn wag i ddileu postiadau waeth beth fo'u ffefrynnau
+    min_reblogs: Cadw postiadau wedi eu hybu o leiaf
+    min_reblogs_hint: Nid yw'n dileu unrhyw un o'ch postiadau sydd wedi cael eu hybu o leiaf y nifer hwn o weithiau. Gadewch yn wag i ddileu postiadau waeth beth fo'u nifer o hybiadau
   stream_entries:
-    pinned: Tŵt wedi'i binio
+    pinned: Postiad wedi'i binio
     reblogged: hybwyd
     sensitive_content: Cynnwys sensitif
   strikes:
@@ -880,38 +1679,87 @@ cy:
   themes:
     contrast: Mastodon (Cyferbyniad uchel)
     default: Mastodon (Tywyll)
-    mastodon-light: Mastodon (golau)
+    mastodon-light: Mastodon (Golau)
+  time:
+    formats:
+      default: "%b %d, %Y, %H:%M"
+      month: "%b %Y"
+      time: "%H:%M"
   two_factor_authentication:
-    disable: Diffodd
-    enabled: Awdurdodi dau-gam wedi'i alluogi
-    enabled_success: Awdurdodi dau-gam wedi'i alluogi'n llwyddiannus
-    generate_recovery_codes: Cynhyrchu côdau adfer
-    lost_recovery_codes: Mae côdau adfer yn caniatau i chi gael mynediad i'ch cyfrif eto os ydych yn colli'ch ffôn. Os ydych wedi colli eich côdau adfer, mae modd i chi gynhyrchu nhw eto yma. Bydd eich hen gôdau wedyn yn annilys.
-    recovery_codes: Creu copi wrth gefn o gôdau adfywio
-    recovery_codes_regenerated: Llwyddwyd i ail greu côdau adfywio
-    recovery_instructions_html: Os ydych byth yn colli mynediad i'ch ffôn, mae modd i chi ddefnyddio un o'r côdau adfywio isod i ennill mynediad i'ch cyfrif eto. <strong>Cadwch y côdau adfywio yn saff</strong>. Er enghraifft, gallwch eu argraffu a'u cadw gyda dogfennau eraill pwysig.
+    add: Ychwanegu
+    disable: Analluogi 2FA
+    disabled_success: Llwyddwyd i analluogi dilysu dau ffactor yn llwydiannus
+    edit: Golygu
+    enabled: Wedi galluogi dilysu dau-ffactor
+    enabled_success: Wedi galluogi dilysu dau-ffactor yn llwyddiannus
+    generate_recovery_codes: Cynhyrchu codau adfer
+    lost_recovery_codes: Mae codau adfer yn caniatáu ichi adennill mynediad i'ch cyfrif os byddwch chi'n colli'ch ffôn. Os ydych chi wedi colli'ch codau adfer, gallwch chi eu hadfywio yma. Bydd eich hen godau adfer yn annilys.
+    methods: Dulliau dau ffactor
+    otp: Ap dilysu.
+    recovery_codes: Creu copi wrth gefn o godau adfer
+    recovery_codes_regenerated: Llwyddwyd i ail greu codau adfer
+    recovery_instructions_html: Os ydych chi'n colli mynediad i'ch ffôn, mae modd i chi ddefnyddio un o'r codau adfer isod i gael mynediad at eich cyfrif. <strong>Cadwch y codau adfer yn breifat</strong>. Er enghraifft, gallwch chi eu argraffu a'u cadw gyda dogfennau eraill pwysig.
+    webauthn: Allweddi diogelwch
   user_mailer:
+    appeal_approved:
+      action: Ewch i'ch cyfrif
+      explanation: Mae apêl y rhybudd yn erbyn eich cyfrif ar %{strike_date} a gyflwynwyd gennych ar %{appeal_date} wedi'i chymeradwyo. Mae eich cyfrif unwaith eto yn gadarnhaol.
+      subject: Mae eich apêl gan %{date} wedi'i chymeradwyo
+      title: Cymeradwywyd yr apêl
+    appeal_rejected:
+      explanation: Mae apêl y rhybudd yn erbyn eich cyfrif ar %{strike_date} a gyflwynwyd gennych ar %{appeal_date} wedi'i gwrthod.
+      subject: Mae eich apêl ar %{date} wedi'i gwrthod
+      title: Mae'r apêl wedi'i gwrthod
     backup_ready:
       explanation: Fe wnaethoch chi gais am gopi wrth gefn llawn o'ch cyfrif Mastodon. Mae nawr yn barod i'w lawrlwytho!
       subject: Mae eich archif yn barod i'w lawrlwytho
       title: Allfudo archif
+    suspicious_sign_in:
+      change_password: newidiwch eich cyfrinair
+      details: 'Dyma fanylion y mewngofnodi:'
+      explanation: Rydym wedi canfod mewngofnodi i'ch cyfrif o gyfeiriad IP newydd.
+      further_actions_html: Os nad chi oedd hwn, rydym yn argymell eich bod yn %{action} ar unwaith ac yn galluogi dilysu dau ffactor i gadw'ch cyfrif yn ddiogel.
+      subject: Mae eich cyfrif wedi'i gyrchu o gyfeiriad IP newydd
+      title: Mewngofnodiad newydd
     warning:
+      appeal: Cyflwyno apêl
+      appeal_description: Os credwch fod hwn yn gamgymeriad, gallwch gyflwyno apêl i staff %{instance}.
+      categories:
+        spam: Sbam
+        violation: Mae'r cynnwys yn torri'r canllawiau cymunedol canlynol
+      explanation:
+        delete_statuses: Mae rhai o'ch postiadau wedi'u canfod i dorri un neu fwy o ganllawiau cymunedol ac wedi cael eu dileu wedyn gan gymedrolwyr %{instance}.
+        disable: Nid oes modd i chi ddefnyddio'ch cyfrif mwyach, ond mae'ch proffil a data arall yn parhau'n gyfan. Gallwch ofyn am gopi wrth gefn o'ch data, newid gosodiadau cyfrif neu ddileu eich cyfrif.
+        mark_statuses_as_sensitive: Mae rhai o'ch postiadau wedi'u marcio'n sensitif gan gymedrolwyr %{instance}. Mae hyn yn golygu y bydd angen i bobl dapio'r cyfryngau yn y postiadau cyn i ragolwg gael ei ddangos. Gallwch nodi bod y cyfryngau yn sensitif eich hun wrth bostio yn y dyfodol.
+        sensitive: O hyn ymlaen, bydd eich holl ffeiliau cyfryngau wedi'u llwytho i fyny yn cael eu marcio fel sensitif ac wedi'u cuddio y tu ôl i rybudd clicio drwodd.
+        silence: Gallwch barhau i ddefnyddio'ch cyfrif ond dim ond pobl sydd eisoes yn eich dilyn fydd yn gweld eich postiadau ar y gweinydd hwn, ac mae'n bosibl y cewch eich eithrio o wahanol nodweddion darganfod. Fodd bynnag, efallai y bydd eraill yn dal i'ch dilyn â llaw.
+        suspend: Nid oes modd i chi ddefnyddio'ch cyfrif mwyach, ac nid yw'ch proffil a data arall bellach yn hygyrch. Gallwch chi fewngofnodi o hyd i ofyn am gopi wrth gefn o'ch data nes bod y data wedi'i ddileu'n llawn mewn tua 30 diwrnod, ond byddwn yn cadw rhywfaint o ddata sylfaenol i'ch atal rhag osgoi'r ataliad.
+      reason: 'Rheswm:'
+      statuses: 'Postiadau a ddyfynnwyd:'
       subject:
+        delete_statuses: Mae eich postiadau ar %{acct} wedi'u dileu
         disable: Mae'ch cyfrif %{acct} wedi'i rewi
+        mark_statuses_as_sensitive: Mae eich postiadau ar %{acct} wedi'u marcio'n sensitif
         none: Rhybudd am %{acct}
+        sensitive: Bydd eich postiadau ar %{acct} yn cael eu marcio'n sensitif o hyn ymlaen
         silence: Mae'ch cyfrif %{acct} wedi bod yn gyfyngedig
         suspend: Mae'ch cyfrif %{acct} wedi'i atal
       title:
+        delete_statuses: Postiadau wedi'u dileu
         disable: Cyfrif wedi'i rewi
+        mark_statuses_as_sensitive: Postiadau wedi'u marcio'n sensitif
         none: Rhybudd
+        sensitive: Cyfrif wedi'i nodi'n sensitif
         silence: Cyfrif cyfyngedig
         suspend: Cyfrif wedi'i rewi
     welcome:
       edit_profile_action: Sefydlu proffil
+      edit_profile_step: Gallwch addasu'ch proffil trwy lwytho llun proffil, newid eich enw dangos a mwy. Gallwch ddewis i adolygu dilynwyr newydd cyn iddyn nhw gael caniatâd i'ch dilyn.
       explanation: Dyma ambell nodyn i'ch helpu i ddechrau
       final_action: Dechrau postio
+      final_step: 'Dechreuwch bostio! Hyd yn oed heb ddilynwyr, efallai y bydd eraill yn gweld eich postiadau cyhoeddus, er enghraifft ar y llinell amser leol neu mewn hashnodau. Efallai y byddwch am gyflwyno eich hun ar yr hashnod #cyflwyniadau neu/a #introductions.'
       full_handle: Eich enw llawn
-      full_handle_hint: Dyma'r hyn y bysech yn dweud wrth eich ffrindiau er mwyn iddyn nhw gael anfon neges atoch o achos arall.
+      full_handle_hint: Dyma beth fyddech chi'n ei ddweud wrth eich ffrindiau fel y gallant anfon neges neu eich dilyn o weinydd arall.
       subject: Croeso i Mastodon
       title: Croeso, %{name}!
   users:
@@ -923,3 +1771,20 @@ cy:
   verification:
     explanation_html: 'Mae modd i chi <strong>ddilysu eich hun fel perchenog y dolenni yn metadata eich proffil</strong>. Rhaid i''r wefan â dolen iddi gynnwys dolen yn ôl i''ch proffil Mastodon. <strong>Rhaid</strong> i''r ddolen yn ôl cynnwys y nodwedd <code>rel="me"</code>. Does dim ots beth yw cynnwys testun y ddolen. Dyma enghraifft:'
     verification: Dilysu
+  webauthn_credentials:
+    add: Ychwanegu allwedd ddiogelwch newydd
+    create:
+      error: Bu anhawster wrth ychwanegu'ch allwedd ddiogelwch. Ceisiwch eto, os gwelwch yn dda.
+      success: Ychwanegwyd eich allwedd ddiogelwch yn llwyddiannus.
+    delete: Dileu
+    delete_confirmation: Ydych chi'n siŵr eich bod am ddileu'r allwedd ddiogelwch hon?
+    description_html: Os ydych yn galluogi <strong>dilysu allwedd diogelwch</strong>, bydd angen i chi ddefnyddio un o'ch allweddi diogelwch er mwyn mewngofnodi.
+    destroy:
+      error: Bu anhawster wrth ddileu eich allwedd ddiogelwch. Ceisiwch eto, os gwelwch yn dda.
+      success: Cafodd eich allwedd ddiogelwch ei dileu'n llwyddiannus.
+    invalid_credential: Allwedd ddiogelwch annilys
+    nickname_hint: Rhowch lysenw eich allwedd ddiogelwch newydd
+    not_enabled: Nid ydych wedi galluogi WebAuthn eto
+    not_supported: Nid yw'r porwr hwn yn cynnal allweddi diogelwch
+    otp_required: I ddefnyddio allweddi diogelwch, galluogwch ddilysu dau ffactor yn gyntaf.
+    registered_on: Cofrestrwyd ar %{date}
diff --git a/config/locales/da.yml b/config/locales/da.yml
index f9fd00387..054562fe6 100644
--- a/config/locales/da.yml
+++ b/config/locales/da.yml
@@ -386,11 +386,13 @@ da:
         create: Opret blokering
         hint: Domæneblokeringen vil ikke forhindre oprettelse af kontoposter i databasen, men vil retroaktivt og automatisk føje særlige moderationsmetoder til disse konti.
         severity:
-          desc_html: "<strong>Tavsgørelse</strong> gør kontoens indlæg usynlige for alle, som ikke følger dem. <strong>Suspendering</strong> fjerner alt kontoindhold, medier og profildata. Brug <strong>Ingen</strong>, hvis mediefiler blot ønskes afvist."
+          desc_html: "<strong>Begræns</strong> gør indlæg fra konti på dette domæne usynlige for alle ikke-følger. <strong>Suspendér</strong> fjerner alt indhold, medier og profildata for dette domænes konti fra serveren. Brug <strong>Ingen</strong>, hvis man blot vil afvise mediefiler."
           noop: Ingen
-          silence: Tavsgøre
+          silence: Begræns
           suspend: Suspendere
         title: Ny domæneblokering
+      no_domain_block_selected: Ingen domæneblokeringer ændret (ingen var valgt)
+      not_permitted: Ingen tilladelse til at udføre denne handling
       obfuscate: Slør domænenavn
       obfuscate_hint: Slør delvist domænenavnet på listen, hvis annoncering af listen over domænebegrænsninger er aktiveret
       private_comment: Privat kommentar
@@ -422,6 +424,17 @@ da:
       resolved_dns_records_hint_html: Domænenavnet opløses til flg. MX-domæner, som i sidste ende er ansvarlige for e-mailmodtagelse. Blokering af et MX-domæne blokerer også tilmeldinger fra enhver e-mailadresse på det pågældende MX-domæne, selv hvis det synlige domænenavn er et andet. <strong>Pas på ikke ikke at blokere større e-mailudbydere.</strong>
       resolved_through_html: Opløst via %{domain}
       title: Blokerede e-maildomæner
+    export_domain_allows:
+      no_file: Ingen fil valgt
+    export_domain_blocks:
+      import:
+        description_html: En liste over domæneblokeringer er ved at blive importeret. Gennemgå listen meget nøje, især hvis man ikke selv har oprettet den.
+        existing_relationships_warning: Eksisterende følge-relationer
+        private_comment_description_html: 'For at man lettere kan holde styr på, hvorfra importerede blokeringer kommer, oprettes disse med flg. private kommentar: <q>%{comment}</q>'
+        private_comment_template: Importeret fra %{source} d. %{date}
+        title: Import af domæneblokeringer
+      new:
+        title: Import af domæneblokeringer
     follow_recommendations:
       description_html: "<strong>Følg-anbefalinger hjælpe nye brugere til hurtigt at finde interessant indhold</strong>. Når en bruger ikke har interageret nok med andre til at generere personlige følg-anbefalinger, anbefales disse konti i stedet. De revurderes dagligt baseret på en blanding af konti med de flest nylige engagementer og fleste lokale følger-antal for et givet sprog."
       language: For sprog
@@ -608,6 +621,7 @@ da:
         other: "%{count} brugere"
       categories:
         administration: Håndtering
+        devops: DevOps
         invites: Invitationer
         moderation: Moderering
         special: Speciel
@@ -658,6 +672,7 @@ da:
         view_audit_log_description: Tillader brugere at se en historik over administrative handlinger på serveren
         view_dashboard: Vis Dashboard
         view_dashboard_description: Tillader brugere at tilgå Dashboard'et og forskellige målinger
+        view_devops: DevOps
         view_devops_description: Tillader brugere at tilgå Sidekiq- og pgHero-dashboards
       title: Roller
     rules:
@@ -912,7 +927,7 @@ da:
     warning: Vær meget påpasselig med disse data. Del dem aldrig med nogen!
     your_token: Dit adgangstoken
   auth:
-    apply_for_account: Kom på ventelisten
+    apply_for_account: Anmod om en konto
     change_password: Adgangskode
     delete_account: Slet konto
     delete_account_html: Ønsker du at slette din konto, kan du <a href="%{path}">gøre dette hér</a>. Du vil blive bedt om bekræftelse.
@@ -1157,6 +1172,7 @@ da:
     invalid_markup: 'indeholder ugyldig HTML-markup: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Ugyldig CSV-fil. Fejl: %{error}'
       over_rows_processing_limit: indeholder mere end %{count} rækker
     modes:
       merge: Sammenflet
@@ -1371,6 +1387,7 @@ da:
     browser: Browser
     browsers:
       alipay: Alipay
+      blackberry: BlackBerry
       chrome: Chrome
       edge: Microsoft Edge
       electron: Electron
@@ -1384,6 +1401,7 @@ da:
       phantom_js: PhantomJS
       qq: QQ Browser
       safari: Safari
+      uc_browser: UC Browser
       weibo: Weibo
     current_session: Aktuelle session
     description: "%{browser} på %{platform}"
@@ -1392,6 +1410,7 @@ da:
     platforms:
       adobe_air: Adobe Air
       android: Android
+      chrome_os: ChromeOS
       firefox_os: Firefox OS
       ios: iOS
       linux: Linux
@@ -1614,7 +1633,7 @@ da:
     seamless_external_login: Du er logget ind via en ekstern tjeneste, så adgangskode- og e-mailindstillinger er utilgængelige.
     signed_in_as: 'Logget ind som:'
   verification:
-    explanation_html: 'Du kan <strong>bekræfte dig selv som ejer af linkene i din profilmetadata</strong>. For at gøre det, skal det linkede websted indeholde et link pegende tilbage til din Mastodon-profil. Returlinket <strong>skal</strong> have en <code>rel="mig"</code>-attribut. Linkets tekstindhold betyder ikke noget. Her er et eksempel:'
+    explanation_html: 'Du kan <strong>bekræfte dig selv som ejer af linkene i din profilmetadata</strong>. For at gøre det, skal det linkede websted indeholde et link pegende tilbage til din Mastodon-profil. Returlinket <strong>skal</strong> have en <code>rel="me"</code>-attribut. Linkets tekstindhold betyder ikke noget. Her er et eksempel:'
     verification: Bekræftelse
   webauthn_credentials:
     add: Tilføj ny sikkerhedsnøgle
diff --git a/config/locales/de.yml b/config/locales/de.yml
index 7bc73dcb4..47dcb29d6 100644
--- a/config/locales/de.yml
+++ b/config/locales/de.yml
@@ -15,7 +15,7 @@ de:
     instance_actor_flash: Dieses Konto ist ein virtueller Akteur, der den Server selbst repräsentiert und nicht ein einzelner Benutzer. Es wird für Föderationszwecke verwendet und sollte nicht gesperrt werden.
     last_active: zuletzt aktiv
     link_verified_on: Das Profil mit dieser E-Mail-Adresse wurde bereits am %{date} bestätigt
-    nothing_here: Keine Accounts mit dieser Auswahl vorhanden.
+    nothing_here: Keine Treffer mit dieser Auswahl
     pin_errors:
       following: Du musst dieser Person bereits folgen, um sie empfehlen zu können
     posts:
@@ -31,7 +31,7 @@ de:
       created_msg: Moderationshinweis erfolgreich abgespeichert!
       destroyed_msg: Moderationsnotiz erfolgreich gelöscht!
     accounts:
-      add_email_domain_block: E-Mail-Domain auf Blacklist setzen
+      add_email_domain_block: E-Mail-Domain sperren
       approve: Genehmigen
       approved_msg: Anmeldeantrag von %{username} erfolgreich genehmigt
       are_you_sure: Bist du dir sicher?
@@ -46,21 +46,21 @@ de:
         title: E-Mail-Adresse für %{username} ändern
       change_role:
         changed_msg: Benutzer*innen-Rechte erfolgreich aktualisiert!
-        label: Benutzer*innen-Rechte verändern
+        label: Rolle ändern
         no_role: Keine Benutzer*innen-Rechte
         title: Benutzer*innen-Rechte für %{username} bearbeiten
       confirm: Bestätigen
       confirmed: Bestätigt
       confirming: Verifiziert
-      custom: Benutzerdefiniert
+      custom: Angepasst
       delete: Daten löschen
       deleted: Gelöscht
       demote: Zurückstufen
       destroyed_msg: Daten von %{username} wurden zum Löschen in die Warteschlange eingereiht
-      disable: Sperren
+      disable: Einfrieren
       disable_sign_in_token_auth: Deaktiviere die Zwei-Faktor-Authentisierung (2FA) per E-Mail
       disable_two_factor_authentication: Zwei-Faktor-Authentisierung (2FA) deaktivieren
-      disabled: Gesperrte
+      disabled: Eingefroren
       display_name: Angezeigter Name
       domain: Domain
       edit: Bearbeiten
@@ -81,10 +81,10 @@ de:
       location:
         all: Alle
         local: Lokal
-        remote: Fern
-        title: Ursprung
+        remote: Extern
+        title: Herkunft
       login_status: Loginstatus
-      media_attachments: Dateien
+      media_attachments: Medienanhänge
       memorialize: In Gedenkmal verwandeln
       memorialized: Memorialisiert
       memorialized_msg: "%{username} wurde erfolgreich in ein In-Memoriam-Konto umgewandelt"
@@ -92,7 +92,7 @@ de:
         active: Aktiv
         all: Alle
         pending: In Warteschlange
-        silenced: Limitiert
+        silenced: Stummgeschaltet
         suspended: Gesperrt
         title: Moderation
       moderation_notes: Moderationsnotizen
@@ -102,20 +102,20 @@ de:
       no_limits_imposed: Keine Beschränkungen
       no_role_assigned: Keine Rolle zugewiesen
       not_subscribed: Nicht abonniert
-      pending: In Warteschlange
-      perform_full_suspension: Verbannen
-      previous_strikes: Vorherige Strikes
+      pending: Überprüfung ausstehend
+      perform_full_suspension: Sperren
+      previous_strikes: Vorherige Verstöße
       previous_strikes_description_html:
-        one: Dieses Konto hat <strong>einen</strong> Strike.
-        other: Dieses Konto hat <strong>%{count}</strong> Strikes.
+        one: Dieses Konto hat <strong>einen</strong> Verstoß.
+        other: Dieses Konto hat <strong>%{count}</strong> Verstöße.
       promote: Befördern
       protocol: Protokoll
       public: Öffentlich
       push_subscription_expires: PuSH-Abonnement läuft aus
       redownload: Profil neu laden
-      redownloaded_msg: Das Profil von %{username} wurde von der Quelle erfolgreich aktualisiert
+      redownloaded_msg: Das Profil %{username} wurde vom externen Server erfolgreich aktualisiert
       reject: Ablehnen
-      rejected_msg: Anmeldeantrag von %{username} erfolgreich abgelehnt
+      rejected_msg: Antrag zur Registrierung von %{username} erfolgreich abgelehnt
       remove_avatar: Profilbild entfernen
       remove_header: Titelbild entfernen
       removed_avatar_msg: Profilbild von %{username} erfolgreich entfernt
@@ -143,22 +143,22 @@ de:
       silence: Stummschalten
       silenced: Stummgeschaltet
       statuses: Beiträge
-      strikes: Vorherige Strikes
+      strikes: Vorherige Verstöße
       subscribe: Abonnieren
-      suspend: Suspendieren
-      suspended: Verbannt
+      suspend: Sperren
+      suspended: Gesperrt
       suspension_irreversible: Die Daten dieses Kontos wurden unwiderruflich gelöscht. Du kannst das Konto aufheben, um es wieder brauchbar zu machen, aber es wird keine Daten wiederherstellen, die es davor hatte.
       suspension_reversible_hint_html: Das Konto wurde gesperrt und die Daten werden am %{date} vollständig gelöscht. Bis dahin kann das Konto ohne irgendwelche negativen Auswirkungen wiederhergestellt werden. Wenn du alle Daten des Kontos sofort entfernen möchtest, kannst du dies nachfolgend tun.
       title: Konten
-      unblock_email: E-Mail Adresse entsperren
-      unblocked_email_msg: Die E-Mail-Adresse von %{username} wurde erfolgreich entsperrt
+      unblock_email: E-Mail-Adresse entsperren
+      unblocked_email_msg: E-Mail-Adresse von %{username} erfolgreich entsperrt
       unconfirmed_email: Unbestätigte E-Mail-Adresse
       undo_sensitized: Inhaltswarnung aufheben
       undo_silenced: Stummschaltung aufheben
-      undo_suspension: Verbannung aufheben
+      undo_suspension: Sperre aufheben
       unsilenced_msg: Konto von %{username} erfolgreich freigegeben
       unsubscribe: Abbestellen
-      unsuspended_msg: Konto von %{username} erfolgreich freigegeben
+      unsuspended_msg: Kontosperre von %{username} erfolgreich aufgehoben
       username: Profilname
       view_domain: Übersicht für Domain anzeigen
       warn: Warnen
@@ -169,36 +169,36 @@ de:
         approve_appeal: Einspruch annehmen
         approve_user: Benutzer*in genehmigen
         assigned_to_self_report: Bericht zuweisen
-        change_email_user: E-Mail des Accounts ändern
+        change_email_user: E-Mail des Profils ändern
         change_role_user: Rolle des Profils ändern
         confirm_user: Benutzer*in bestätigen
         create_account_warning: Warnung erstellen
         create_announcement: Ankündigung erstellen
-        create_canonical_email_block: E-Mail-Block erstellen
+        create_canonical_email_block: E-Mail-Sperre erstellen
         create_custom_emoji: Eigene Emojis erstellen
         create_domain_allow: Domain erlauben
         create_domain_block: Domain blockieren
-        create_email_domain_block: E-Mail-Domain-Block erstellen
+        create_email_domain_block: E-Mail-Domainsperre erstellen
         create_ip_block: IP-Regel erstellen
         create_unavailable_domain: Nicht verfügbare Domain erstellen
         create_user_role: Rolle erstellen
         demote_user: Benutzer*in herabstufen
         destroy_announcement: Ankündigung löschen
         destroy_canonical_email_block: E-Mail-Blockade löschen
-        destroy_custom_emoji: Eigene Emojis löschen
+        destroy_custom_emoji: Eigenes Emojis löschen
         destroy_domain_allow: Erlaube das Löschen von Domains
-        destroy_domain_block: Domain-Blockade löschen
-        destroy_email_domain_block: E-Mail-Domain-Blockade löschen
+        destroy_domain_block: Domainsperre löschen
+        destroy_email_domain_block: E-Mail-Domain-Sperre löschen
         destroy_instance: Domain-Daten entfernen
         destroy_ip_block: IP-Regel löschen
         destroy_status: Beitrag löschen
         destroy_unavailable_domain: Nicht verfügbare Domain löschen
-        destroy_user_role: Rolle löschen
+        destroy_user_role: Rolle entfernen
         disable_2fa_user: 2FA deaktivieren
-        disable_custom_emoji: Benutzerdefiniertes Emoji deaktivieren
+        disable_custom_emoji: Eigenes Emoji deaktivieren
         disable_sign_in_token_auth_user: Zwei-Faktor-Authentisierung (2FA) per E-Mail für diesen Account deaktivieren
         disable_user: Benutzer*in deaktivieren
-        enable_custom_emoji: Benutzerdefiniertes Emoji aktivieren
+        enable_custom_emoji: Eigenes Emoji aktivieren
         enable_sign_in_token_auth_user: Zwei-Faktor-Authentisierung (2FA) per E-Mail für diesen Account aktivieren
         enable_user: Benutzer*in aktivieren
         memorialize_account: Gedenkkonto
@@ -210,54 +210,54 @@ de:
         resend_user: Bestätigungs-E-Mail erneut senden
         reset_password_user: Passwort zurücksetzen
         resolve_report: Bericht lösen
-        sensitive_account: Zwangssensibles Konto
+        sensitive_account: Konto mit erzwungener Inhaltswarnung
         silence_account: Konto stummschalten
         suspend_account: Konto sperren
         unassigned_report: Meldung widerrufen
-        unblock_email_account: E-Mail Adresse entsperren
-        unsensitive_account: Zwangssensibles Konto rückgängig machen
+        unblock_email_account: E-Mail-Adresse entsperren
+        unsensitive_account: Konto mit erzwungener Inhaltswarnung rückgängig machen
         unsilence_account: Konto nicht mehr stummschalten
         unsuspend_account: Konto nicht mehr sperren
         update_announcement: Ankündigung aktualisieren
-        update_custom_emoji: Benutzerdefiniertes Emoji aktualisieren
-        update_domain_block: Domain-Blockade aktualisieren
+        update_custom_emoji: Eigenes Emoji aktualisieren
+        update_domain_block: Domainsperre aktualisieren
         update_ip_block: IP-Regel aktualisieren
         update_status: Beitrag aktualisieren
         update_user_role: Rolle aktualisieren
       actions:
         approve_appeal_html: "%{name} genehmigte die Moderationsbeschlüsse von %{target}"
-        approve_user_html: "%{name} genehmigte die Anmeldung von %{target}"
+        approve_user_html: "%{name} genehmigte die Registrierung von %{target}"
         assigned_to_self_report_html: "%{name} hat sich die Meldung %{target} selbst zugewiesen"
-        change_email_user_html: "%{name} hat die E-Mail-Adresse des Nutzers %{target} geändert"
+        change_email_user_html: "%{name} hat die E-Mail-Adresse von %{target} geändert"
         change_role_user_html: "%{name} hat die Rolle von %{target} geändert"
         confirm_user_html: "%{name} hat die E-Mail-Adresse von %{target} bestätigt"
         create_account_warning_html: "%{name} hat eine Warnung an %{target} gesendet"
-        create_announcement_html: "%{name} hat die neue Ankündigung %{target} erstellt"
-        create_canonical_email_block_html: "%{name} hat die E-Mail mit dem Hash %{target} blockiert"
-        create_custom_emoji_html: "%{name} hat neues Emoji %{target} hochgeladen"
+        create_announcement_html: "%{name} hat die neue Ankündigung erstellt: %{target}"
+        create_canonical_email_block_html: "%{name} hat die E-Mail mit dem Hash %{target} gesperrt"
+        create_custom_emoji_html: "%{name} hat neues Emoji hochgeladen: %{target}"
         create_domain_allow_html: "%{name} hat die Domain %{target} gewhitelistet"
         create_domain_block_html: "%{name} hat die Domain %{target} blockiert"
-        create_email_domain_block_html: "%{name} hat die E-Mail-Domain %{target} geblacklistet"
+        create_email_domain_block_html: "%{name} hat die E-Mail-Domain %{target} gesperrt"
         create_ip_block_html: "%{name} hat eine Regel für IP %{target} erstellt"
         create_unavailable_domain_html: "%{name} hat die Lieferung an die Domain %{target} eingestellt"
         create_user_role_html: "%{name} hat die Rolle %{target} erstellt"
-        demote_user_html: "%{name} hat die Nutzungsrechte von %{target} heruntergestuft"
+        demote_user_html: "%{name} hat %{target} heruntergestuft"
         destroy_announcement_html: "%{name} hat die neue Ankündigung %{target} gelöscht"
-        destroy_canonical_email_block_html: "%{name} hat die E-Mail mit dem Hash %{target} freigegeben"
-        destroy_custom_emoji_html: "%{name} hat das %{target} Emoji gelöscht"
+        destroy_canonical_email_block_html: "%{name} hat die E-Mail mit dem Hash %{target} entsperrt"
+        destroy_custom_emoji_html: "%{name} hat das Emoji gelöscht: %{target}"
         destroy_domain_allow_html: "%{name} hat die Domain %{target} von der Whitelist entfernt"
         destroy_domain_block_html: "%{name} hat die Domain %{target} entblockt"
-        destroy_email_domain_block_html: "%{name} hat die E-Mail-Domain %{target} gewhitelistet"
+        destroy_email_domain_block_html: "%{name} hat die E-Mail-Domain %{target} entsperrt"
         destroy_instance_html: "%{name} hat die Daten der Domain %{target} entfernt"
         destroy_ip_block_html: "%{name} hat eine Regel für IP %{target} gelöscht"
         destroy_status_html: "%{name} hat einen Beitrag von %{target} entfernt"
         destroy_unavailable_domain_html: "%{name} setzte die Lieferung an die Domain %{target} fort"
         destroy_user_role_html: "%{name} hat die Rolle %{target} gelöscht"
         disable_2fa_user_html: "%{name} hat die Zwei-Faktor-Authentisierung für %{target} deaktiviert"
-        disable_custom_emoji_html: "%{name} hat das %{target} Emoji deaktiviert"
-        disable_sign_in_token_auth_user_html: "%{name} hat die E-Mail-Token Authentifizierung für %{target} deaktiviert"
+        disable_custom_emoji_html: "%{name} hat das Emoji deaktiviert: %{target}"
+        disable_sign_in_token_auth_user_html: "%{name} hat die E-Mail-Token-Authentifizierung für %{target} deaktiviert"
         disable_user_html: "%{name} hat den Zugang für %{target} deaktiviert"
-        enable_custom_emoji_html: "%{name} hat das %{target} Emoji aktiviert"
+        enable_custom_emoji_html: "%{name} hat das Emoji aktiviert: %{target}"
         enable_sign_in_token_auth_user_html: "%{name} hat die E-Mail-Token-Authentifizierung für %{target} aktiviert"
         enable_user_html: "%{name} hat den Zugang für %{target} aktiviert"
         memorialize_account_html: "%{name} hat das Konto von %{target} in eine Gedenkseite umgewandelt"
@@ -271,14 +271,14 @@ de:
         resolve_report_html: "%{name} hat die Meldung %{target} bearbeitet"
         sensitive_account_html: "%{name} hat die Medien von %{target} mit einer Inhaltswarnung versehen"
         silence_account_html: "%{name} hat das Konto von %{target} stummgeschaltet"
-        suspend_account_html: "%{name} hat das Konto von %{target} verbannt"
+        suspend_account_html: "%{name} hat das Konto von %{target} gesperrt"
         unassigned_report_html: "%{name} hat die Zuweisung der Meldung %{target} entfernt"
-        unblock_email_account_html: "%{name} entsperrte die E-Mail-Adresse von %{target}"
+        unblock_email_account_html: "%{name} hat die E-Mail-Adresse von %{target} entsperrt"
         unsensitive_account_html: "%{name} hat die Inhaltswarnung für Medien von %{target} aufgehoben"
         unsilence_account_html: "%{name} hat die Stummschaltung von %{target} aufgehoben"
-        unsuspend_account_html: "%{name} hat die Verbannung von %{target} aufgehoben"
+        unsuspend_account_html: "%{name} hat die Kontosperre von %{target} aufgehoben"
         update_announcement_html: "%{name} aktualisierte Ankündigung %{target}"
-        update_custom_emoji_html: "%{name} hat das %{target} Emoji geändert"
+        update_custom_emoji_html: "%{name} hat das Emoji geändert: %{target}"
         update_domain_block_html: "%{name} hat den Domain-Block für %{target} aktualisiert"
         update_ip_block_html: "%{name} hat die Regel für IP %{target} geändert"
         update_status_html: "%{name} hat einen Beitrag von %{target} aktualisiert"
@@ -287,13 +287,13 @@ de:
       empty: Keine Protokolle gefunden.
       filter_by_action: Nach Aktion filtern
       filter_by_user: Nach Benutzer*in filtern
-      title: Überprüfungsprotokoll
+      title: Protokoll
     announcements:
       destroyed_msg: Ankündigung erfolgreich gelöscht!
       edit:
         title: Ankündigung bearbeiten
-      empty: Keine Ankündigungen gefunden.
-      live: Live
+      empty: Keine Ankündigungen vorhanden.
+      live: Aktuell gültig
       new:
         create: Ankündigung erstellen
         title: Neue Ankündigung
@@ -307,14 +307,14 @@ de:
       updated_msg: Ankündigung erfolgreich geändert!
     custom_emojis:
       assign_category: Kategorie zuweisen
-      by_domain: Domain
+      by_domain: Domain der externen Instanz
       copied_msg: Eine lokale Kopie des Emojis wurde erstellt
       copy: Kopieren
       copy_failed_msg: Es konnte keine lokale Kopie des Emojis erstellt werden
       create_new_category: Neue Kategorie erstellen
-      created_msg: Emoji erstellt!
+      created_msg: Emoji erfolgreich erstellt!
       delete: Löschen
-      destroyed_msg: Emoji gelöscht!
+      destroyed_msg: Emoji erfolgreich gelöscht!
       disable: Deaktivieren
       disabled: Deaktiviert
       disabled_msg: Das Emoji wurde deaktiviert
@@ -323,19 +323,19 @@ de:
       enabled: Aktiviert
       enabled_msg: Das Emoji wurde aktiviert
       image_hint: PNG oder GIF bis %{size}
-      list: Liste
-      listed: Gelistet
+      list: Aufführen
+      listed: Angezeigt
       new:
         title: Eigenes Emoji hinzufügen
       no_emoji_selected: Keine Emojis wurden geändert, da keine ausgewählt wurden
       not_permitted: Du bist für die Durchführung dieses Vorgangs nicht berechtigt
       overwrite: Überschreiben
-      shortcode: Kürzel
+      shortcode: Shortcode
       shortcode_hint: Mindestens 2 Zeichen, nur Buchstaben, Ziffern und Unterstriche
       title: Eigene Emojis
       uncategorized: Nicht kategorisiert
-      unlist: Nicht listen
-      unlisted: Ungelistet
+      unlist: Nicht Aufführen
+      unlisted: Nicht aufgeführt
       update_failed_msg: Konnte dieses Emoji nicht aktualisieren
       updated_msg: Emoji erfolgreich aktualisiert!
       upload: Hochladen
@@ -357,13 +357,13 @@ de:
       pending_users_html:
         one: "<strong>%{count}</strong> unerledigte*r Benutzer*in"
         other: "<strong>%{count}</strong> unerledigte Benutzer*innen"
-      resolved_reports: Gelöste Meldungen
+      resolved_reports: erledigte Meldungen
       software: Software
-      sources: Registrierungsquellen
+      sources: Registrierungsort
       space: Speicherverbrauch
       title: Übersicht
-      top_languages: Top aktive Sprachen
-      top_servers: Top aktive Server
+      top_languages: Häufigste Sprachen
+      top_servers: Aktivste Server
       website: Website
     disputes:
       appeals:
@@ -373,57 +373,77 @@ de:
       add_new: Whitelist-Domain
       created_msg: Domain wurde erfolgreich zur Whitelist hinzugefügt
       destroyed_msg: Domain wurde von der Whitelist entfernt
+      export: Exportieren
+      import: Importieren
       undo: Von der Whitelist entfernen
     domain_blocks:
       add_new: Neue Domainblockade hinzufügen
-      created_msg: Die Domain-Blockade wird nun durchgeführt
-      destroyed_msg: Die Domain-Blockade wurde rückgängig gemacht
+      created_msg: Die Domain ist jetzt blockiert bzw. eingeschränkt
+      destroyed_msg: Die Domainsperre wurde rückgängig gemacht
       domain: Domain
-      edit: Domainblockade bearbeiten
+      edit: Domainsperre bearbeiten
       existing_domain_block: Du hast %{name} bereits stärker eingeschränkt.
       existing_domain_block_html: Du hast bereits strengere Beschränkungen für die Domain %{name} verhängt. Du musst diese erst <a href="%{unblock_url}">aufheben</a>.
+      export: Exportieren
+      import: Importieren
       new:
         create: Blockade einrichten
-        hint: Die Domain-Blockade wird nicht verhindern, dass Konteneinträge in der Datenbank erstellt werden. Aber es werden rückwirkend und automatisch alle Moderationsmethoden auf diese Konten angewendet.
+        hint: Die Domainsperre wird nicht verhindern, dass Konteneinträge in der Datenbank erstellt werden, sondern rückwirkend und automatisch alle Moderationsmethoden auf diese Konten anwenden.
         severity:
-          desc_html: "<strong>Stummschaltung</strong> wird die Beiträge dieses Kontos für alle, die ihm nicht folgen, unsichtbar machen. Eine <strong>Sperre</strong> wird alle Beiträge, Medien und Profildaten dieses Kontos entfernen. Verwende <strong>Kein,</strong> um nur Mediendateien abzulehnen."
+          desc_html: "<strong>Stummschaltung</strong> wird die Beiträge von Konten unter dieser Domain für alle unsichtbar machen, die den Konten nicht folgen. Eine <strong>Sperre</strong> wird alle Inhalte, Medien und Profildaten für Konten dieser Domain von deinem Server entfernen. Verwende <strong>keine,</strong> um nur Mediendateien abzulehnen."
           noop: Kein
           silence: Stummschaltung
-          suspend: Sperre
-        title: Neue Domain-Blockade
+          suspend: Sperren
+        title: Neue Domainsperre
+      no_domain_block_selected: Keine Domains blockiert, weil keine ausgewählt wurde
+      not_permitted: Du bist nicht berechtigt, diese Aktion durchzuführen
       obfuscate: Domainname verschleiern
       obfuscate_hint: Den Domainnamen in der Liste teilweise verschleiern, wenn die Liste der Domänenbeschränkungen aktiviert ist
       private_comment: Privater Kommentar
-      private_comment_hint: Kommentar zu dieser Domain-Beschränkung für die interne Nutzung durch die Moderator_innen.
+      private_comment_hint: Kommentar zu dieser Domain-Beschränkung für die interne Nutzung durch die Moderator*innen.
       public_comment: Öffentlicher Kommentar
       public_comment_hint: Kommentar zu dieser Domain-Beschränkung für die allgemeine Öffentlichkeit, wenn das Veröffentlichen der Blockliste aktiviert ist.
       reject_media: Mediendateien ablehnen
       reject_media_hint: Entfernt lokal gespeicherte Mediendateien und verhindert deren künftiges Herunterladen. Für Sperren irrelevant
       reject_reports: Meldungen ablehnen
       reject_reports_hint: Ignoriere alle Meldungen von dieser Domain. Irrelevant für Sperrungen
-      undo: Domainblockade zurücknehmen
-      view: Zeige Domain-Blockade
+      undo: Domainsperre rückgängig machen
+      view: Domainsperre ansehen
     email_domain_blocks:
       add_new: Neue hinzufügen
       attempts_over_week:
         one: "%{count} Registrierungsversuch in der letzten Woche"
         other: "%{count} Registrierungsversuche in der letzten Woche"
-      created_msg: E-Mail-Domain-Blockade erfolgreich erstellt
+      created_msg: E-Mail-Domain erfolgreich gesperrt
       delete: Löschen
       dns:
         types:
           mx: MX-Record
       domain: Domain
       new:
-        create: Blockade erstellen
+        create: E-Mail-Domain hinzufügen
         resolve: Domain auflösen
-        title: Neue E-Mail-Domain-Blockade
-      no_email_domain_block_selected: Es wurden keine E-Mail-Domain-Blockierungen geändert, da keine ausgewählt wurden
+        title: Neue E-Mail-Domain sperren
+      no_email_domain_block_selected: Keine E-Mail-Domainsperren wurden geändert, da keine ausgewählt wurden
       resolved_dns_records_hint_html: Der Domain-Name wird an die folgenden MX-Domains aufgelöst, die letztendlich für die Annahme von E-Mails verantwortlich sind. Das Blockieren einer MX-Domain blockiert Anmeldungen von jeder E-Mail-Adresse, welche dieselbe MX-Domain verwendet, auch wenn der sichtbare Domainname anders ist. <strong>Achte darauf, große E-Mail-Anbieter nicht zu blockieren.</strong>
       resolved_through_html: Durch %{domain} aufgelöst
-      title: E-Mail-Domain-Blockade
+      title: Gesperrte E-Mail-Domains
+    export_domain_allows:
+      new:
+        title: Erlaubte Domains importieren
+      no_file: Keine Datei ausgewählt
+    export_domain_blocks:
+      import:
+        description_html: Du bist dabei, eine Liste von Domainsperren zu importieren. Bitte überprüfe diese Liste sehr sorgfältig, insbesondere wenn du sie nicht selbst erstellt hast.
+        existing_relationships_warning: Bestehende Folgebeziehungen
+        private_comment_description_html: 'Damit du nachvollziehen kannst, woher die importierten Sperren stammen, werden diese mit dem folgenden privaten Kommentar erstellt: <q>%{comment}</q>'
+        private_comment_template: Importiert von %{source} am %{date}
+        title: Domainsperren importieren
+      new:
+        title: Domainsperren importieren
+      no_file: Keine Datei ausgewählt
     follow_recommendations:
-      description_html: "<strong>Folgeempfehlungen helfen neuen Nutzern dabei, schnell interessante Inhalte zu finden</strong>. Wenn ein Nutzer noch nicht genug mit anderen interagiert hat, um personalisierte Folgeempfehlungen zu erstellen, werden stattdessen diese Benutzerkonten verwendet. Sie werden täglich basierend auf einer Mischung aus am meisten interagierenden Benutzerkonten und jenen mit den meisten Folgenden für eine bestimmte Sprache neuberechnet."
+      description_html: "<strong>Folgeempfehlungen helfen neuen Nutzer*innen, interessante Inhalte schnell zu finden</strong>. Wenn ein*e Nutzer*in noch nicht genug mit anderen interagiert hat, um personalisierte Folgeempfehlungen zu erhalten, werden stattdessen diese Profile verwendet. Sie werden täglich, basierend auf einer Mischung aus am meisten interagierenden Konten und jenen mit den meisten Followern für eine bestimmte Sprache, neu berechnet."
       language: Für Sprache
       status: Status
       suppress: Folgeempfehlungen unterdrücken
@@ -443,7 +463,7 @@ de:
         title: Verfügbarkeit
         warning: Der letzte Versuch, sich mit diesem Server zu verbinden, war nicht erfolgreich
       back_to_all: Alle
-      back_to_limited: Beschränkt
+      back_to_limited: Stummgeschaltet
       back_to_warning: Warnung
       by_domain: Domain
       confirm_purge: Bist du dir sicher, dass du die Daten für diese Domain für immer löschen möchtest?
@@ -454,7 +474,7 @@ de:
           reject_media: Medien ablehnen
           reject_reports: Meldungen ablehnen
           silence: Stummschalten
-          suspend: Verbannen
+          suspend: Gesperrt
         policy: Richtlinie
         reason: Öffentlicher Grund
         title: Inhaltsrichtlinien
@@ -462,15 +482,15 @@ de:
         instance_accounts_dimension: Meiste gefolgte Konten
         instance_accounts_measure: gespeicherte Konten
         instance_followers_measure: unsere Follower dort
-        instance_follows_measure: ihre Follower hier
+        instance_follows_measure: deren Follower hier
         instance_languages_dimension: Top Sprachen
         instance_media_attachments_measure: gespeicherte Medienanhänge
-        instance_reports_measure: über sie berichtet
+        instance_reports_measure: Meldungen über deren Accounts
         instance_statuses_measure: gespeicherte Beiträge
       delivery:
         all: Alle
         clear: Zustellfehler löschen
-        failing: Schlägt fehl
+        failing: Fehlerhaft
         restart: Lieferung neu starten
         stop: Lieferung stoppen
         unavailable: Nicht verfügbar
@@ -484,13 +504,13 @@ de:
         other: "%{count} bekannte Konten"
       moderation:
         all: Alle
-        limited: Beschränkt
+        limited: Eingeschränkt
         title: Moderation
       private_comment: Privater Kommentar
       public_comment: Öffentlicher Kommentar
       purge: Löschen
       purge_description_html: Wenn du glaubst, dass diese Domain endgültig offline ist, kannst du alle Account-Datensätze und zugehörigen Daten aus dieser Domain löschen. Das kann eine Weile dauern.
-      title: Föderation
+      title: Externe Instanzen
       total_blocked_by_us: Von uns blockiert
       total_followed_by_them: Gefolgt von denen
       total_followed_by_us: Gefolgt von uns
@@ -501,8 +521,8 @@ de:
       deactivate_all: Alle deaktivieren
       filter:
         all: Alle
-        available: Verfügbar
-        expired: Ausgelaufen
+        available: Noch gültig
+        expired: Abgelaufen
         title: Filter
       title: Einladungen
     ip_blocks:
@@ -536,7 +556,7 @@ de:
       save_and_enable: Speichern und aktivieren
       setup: Relaisverbindung einrichten
       signatures_not_enabled: Relais funktionieren nicht korrekt, während der sichere Modus oder der Whitelist-Modus aktiviert ist
-      status: Zustand
+      status: Status
       title: Relais
     report_notes:
       created_msg: Meldungs-Kommentar erfolgreich erstellt!
@@ -547,12 +567,12 @@ de:
         notes:
           one: "%{count} Notiz"
           other: "%{count} Notizen"
-      action_log: Überprüfungsprotokoll
+      action_log: Protokoll
       action_taken_by: Maßnahme ergriffen durch
       actions:
         delete_description_html: Der gemeldete Beitrag wird gelöscht und ein Strike wird aufgezeichnet, um dir bei zukünftigen Verstößen des gleichen Accounts zu helfen.
-        mark_as_sensitive_description_html: Die Medien in den gemeldeten Beiträgen werden mit einer Inhaltswarnung (NSFW) versehen und der Vorfall wird gesichert, um bei zukünftigen Verstößen desselben Kontos besser reagieren zu können.
-        other_description_html: Weitere Optionen zur Kontrolle des Kontoverhaltens und zur Anpassung der Kommunikation mit dem gemeldeten Konto.
+        mark_as_sensitive_description_html: Die Medien in den gemeldeten Beiträgen werden mit einer Inhaltswarnung versehen und ein Verstoß wird vermerkt, um bei zukünftigen Verstößen desselben Kontos besser reagieren zu können.
+        other_description_html: Weitere Optionen zur Steuerung des Kontoverhaltens und zur Anpassung der Kommunikation mit dem gemeldeten Konto.
         resolve_description_html: Es wird keine Maßnahme gegen das gemeldete Konto ergriffen, es wird kein Strike verzeichnet und die Meldung wird geschlossen.
         silence_description_html: Das Profil wird nur für diejenigen sichtbar sein, die ihm bereits folgen oder es manuell nachschlagen, und die Reichweite wird stark begrenzt. Kann immer rückgängig gemacht werden.
         suspend_description_html: Das Profil und alle seine Inhalte werden unzugänglich werden, bis es schließlich gelöscht wird. Interaktion mit dem Konto wird unmöglich sein. Reversibel innerhalb von 30 Tagen.
@@ -582,7 +602,7 @@ de:
         delete: Löschen
         placeholder: Bitte beschreibe, welche Maßnahmen ergriffen wurden oder andere damit verbundene Aktualisierungen …
         title: Notizen
-      notes_description_html: Zeige und hinterlasse Notizen an andere Moderator_innen und dein zukünftiges Ich
+      notes_description_html: Notiz an dich und andere Moderator*innen hinterlassen
       quick_actions_description_html: 'Führe eine schnelle Aktion aus oder scrolle nach unten, um gemeldete Inhalte zu sehen:'
       remote_user_placeholder: das externe Profil von %{instance}
       reopen: Meldung wieder eröffnen
@@ -592,7 +612,7 @@ de:
       resolved: Gelöst
       resolved_msg: Meldung erfolgreich gelöst!
       skip_to_actions: Zu Aktionen springen
-      status: Zustand
+      status: Status
       statuses: Gemeldeter Inhalt
       statuses_description_html: Störende Inhalte werden in der Kommunikation mit dem gemeldeten Konto zitiert
       target_origin: Domain des gemeldeten Kontos
@@ -614,26 +634,26 @@ de:
         special: Spezial
       delete: Löschen
       description_html: Mit <strong>Benutzer*inn-Rollen</strong> kannst du die Funktionen und Bereiche von Mastodon anpassen, auf die deine Benutzer*innen zugreifen können.
-      edit: "'%{name}' Rolle bearbeiten"
+      edit: Rolle „%{name}“ bearbeiten
       everyone: Standardberechtigungen
-      everyone_full_description_html: Das ist die <strong>-Basis-Rolle</strong>, die <strong>alle Benutzer*innen</strong> betrifft, auch diejenigen ohne zugewiesene Rolle. Alle anderen Rollen erben Berechtigungen davon.
+      everyone_full_description_html: Das ist die <strong>Basis-Rolle</strong>, die für <strong>alle Benutzer*innen</strong> gilt – auch für diejenigen ohne zugewiesene Rolle. Alle anderen Rollen erben Berechtigungen davon.
       permissions_count:
         one: "%{count} Berechtigung"
         other: "%{count} Berechtigungen"
       privileges:
-        administrator: Administrator
+        administrator: Administrator*in
         administrator_description: Benutzer*innen mit dieser Berechtigung werden alle Beschränkungen umgehen
-        delete_user_data: Löschen der Account-Daten
+        delete_user_data: Profildaten löschen
         delete_user_data_description: Erlaubt Benutzer*innen, die Daten anderer Benutzer*innen sofort zu löschen
         invite_users: Benutzer*innen einladen
-        invite_users_description: Erlaubt Benutzer*innen, neue Leute zum Server einzuladen
+        invite_users_description: Erlaubt bereits registrierten Benutzer*innen, neue Leute zum Server einzuladen
         manage_announcements: Ankündigungen verwalten
         manage_announcements_description: Erlaubt Benutzer*innen, Ankündigungen auf dem Server zu verwalten
-        manage_appeals: Anträge verwalten
+        manage_appeals: Einsprüche verwalten
         manage_appeals_description: Erlaubt es Benutzer*innen, Entscheidungen der Moderator*innen zu widersprechen
-        manage_blocks: Geblocktes verwalten
+        manage_blocks: Sperrungen verwalten
         manage_blocks_description: Erlaubt Benutzer*innen, E-Mail-Provider und IP-Adressen zu blockieren
-        manage_custom_emojis: Benutzerdefinierte Emojis verwalten
+        manage_custom_emojis: Eigene Emojis verwalten
         manage_custom_emojis_description: Erlaubt es Benutzer*innen, eigene Emojis auf dem Server zu verwalten
         manage_federation: Föderation verwalten
         manage_federation_description: Erlaubt es Benutzer*innen, den Zusammenschluss mit anderen Domains zu blockieren oder zuzulassen und die Zustellbarkeit zu kontrollieren
@@ -643,14 +663,14 @@ de:
         manage_reports_description: Erlaubt es Benutzer*innen, Meldungen zu überprüfen und Vorfälle zu moderieren
         manage_roles: Rollen verwalten
         manage_roles_description: Erlaubt es Benutzer*innen, Rollen, die sich unterhalb der eigenen Rolle befinden, zu verwalten und zuzuweisen
-        manage_rules: Regeln verwalten
+        manage_rules: Serverregeln verwalten
         manage_rules_description: Erlaubt es Benutzer*innen, Serverregeln zu ändern
         manage_settings: Einstellungen verwalten
         manage_settings_description: Erlaubt es Benutzer*innen, Einstellungen dieser Instanz zu ändern
         manage_taxonomies: Taxonomien verwalten
         manage_taxonomies_description: Ermöglicht Benutzer*innen, die Trends zu überprüfen und die Hashtag-Einstellungen zu aktualisieren
         manage_user_access: Benutzer*in-Zugriff verwalten
-        manage_user_access_description: Erlaubt es Benutzer*innen, die Zwei-Faktor-Authentisierung (2FA) anderer Benutzer zu deaktivieren, ihre E-Mail-Adresse zu ändern und ihr Passwort zurückzusetzen
+        manage_user_access_description: Erlaubt es Benutzer*innen, die Zwei-Faktor-Authentisierung (2FA) anderer zu deaktivieren, ihre E-Mail-Adresse zu ändern und ihr Passwort zurückzusetzen
         manage_users: Benutzer*innen verwalten
         manage_users_description: Erlaubt es Benutzer*innen, die Details anderer Profile einzusehen und diese Accounts zu moderieren
         manage_webhooks: Webhooks verwalten
@@ -665,45 +685,45 @@ de:
     rules:
       add_new: Regel hinzufügen
       delete: Löschen
-      description_html: Während die meisten behaupten, die Nutzungsbedingungen gelesen und akzeptiert zu haben, lesen die Menschen sie in der Regel erst nach einem Problem. <strong>Vereinfache es, die Regeln deines Servers auf einen Blick zu sehen, indem du sie in einer einfachen Auflistung zur Verfügung stellst.</strong> Versuche, die einzelnen Regeln kurz und einfach zu halten, aber versuche nicht, sie in viele verschiedene Elemente aufzuteilen.
+      description_html: Während die meisten behaupten, die Nutzungsbedingungen tatsächlich gelesen zu haben, bekommen viele sie erst nach einem Problem mit. <strong>Vereinfache und reduziere daher die Serverregeln mit Stichpunkten.</strong> Versuche dabei, die einzelnen Vorgaben kurz und einfach zu halten, aber vermeide, sie in viele verschiedene Elemente aufzuteilen.
       edit: Regel bearbeiten
-      empty: Es wurden bis jetzt keine Server-Regeln definiert.
-      title: Server-Regeln
+      empty: Es wurden bisher keine Serverregeln definiert.
+      title: Serverregeln
     settings:
       about:
         manage_rules: Serverregeln verwalten
-        preamble: Schildere ausführlich, wie Dein Server betrieben, moderiert und finanziert wird.
+        preamble: Schildere ausführlich, wie dein Server betrieben, moderiert und finanziert wird.
         rules_hint: Es gibt einen eigenen Bereich für Regeln, die deine Benutzer*innen einhalten müssen.
         title: Über
       appearance:
-        preamble: Passe die Weboberfläche von Mastodon an.
-        title: Erscheinungsbild
+        preamble: Die Oberfläche von Mastodon anpassen.
+        title: Design
       branding:
         preamble: Das Branding deines Servers unterscheidet ihn von anderen Servern im Netzwerk. Diese Informationen können in einer Vielzahl von Umgebungen angezeigt werden, z. B. in der Weboberfläche von Mastodon, in nativen Anwendungen, in Linkvorschauen auf anderen Websites und in Messaging-Apps und so weiter. Aus diesem Grund ist es am besten, diese Informationen klar, kurz und prägnant zu halten.
         title: Branding
       content_retention:
-        preamble: Steuern Sie, wie nutzergenerierte Inhalte in Mastodon gespeichert werden.
-        title: Aufbewahrung von Inhalten
+        preamble: Lege fest, wie lange nutzergenerierte Inhalte auf deiner Mastodon-Instanz gespeichert werden.
+        title: Cache & Archive
       discovery:
         follow_recommendations: Folgeempfehlungen
         preamble: Das Auffinden interessanter Inhalte ist wichtig, um neue Nutzer einzubinden, die Mastodon noch nicht kennen. Bestimme, wie verschiedene Suchfunktionen auf deinem Server funktionieren.
         profile_directory: Profilverzeichnis
-        public_timelines: Öffentliche Timelines
+        public_timelines: Öffentliche Timeline
         title: Entdecken
         trends: Trends
       domain_blocks:
-        all: An alle
-        disabled: An niemanden
-        users: Für angemeldete lokale Benutzer*innen
+        all: Allen
+        disabled: Niemandem
+        users: Benutzer*innen deiner Instanz
       registrations:
         preamble: Lege fest, wer auf Deinem Server ein Konto erstellen darf.
         title: Registrierungen
       registrations_mode:
         modes:
-          approved: Zustimmung benötigt zur Registrierung
+          approved: Registrierung muss genehmigt werden
           none: Niemand kann sich registrieren
-          open: Jeder kann sich registrieren
-      title: Servereinstellungen
+          open: Alle können sich registrieren
+      title: Server-Einstellungen
     site_uploads:
       delete: Hochgeladene Datei löschen
       destroyed_msg: Upload erfolgreich gelöscht!
@@ -739,8 +759,8 @@ de:
         mark_statuses_as_sensitive: "%{name} hat die Beiträge von %{target} mit einer Inhaltswarnung versehen"
         none: "%{name} hat eine Warnung an %{target} gesendet"
         sensitive: "%{name} hat das Profil von %{target} mit einer Inhaltswarnung versehen"
-        silence: "%{name} hat das Konto von %{target} eingeschränkt"
-        suspend: "%{name} hat das Konto von %{target} verbannt"
+        silence: "%{name} hat das Konto von %{target} stummgeschaltet"
+        suspend: "%{name} hat das Konto von %{target} gesperrt"
       appeal_approved: Einspruch angenommen
       appeal_pending: Einspruch ausstehend
     system_checks:
@@ -765,14 +785,14 @@ de:
       approved: Freigegeben
       disallow: Verbieten
       links:
-        allow: Erlaube Link
-        allow_provider: Erlaube Herausgeber
+        allow: Link erlauben
+        allow_provider: Herausgeber*in erlauben
         description_html: Dies sind Links, die derzeit von zahlreichen Accounts geteilt werden und die deinem Server aufgefallen sind. Die Benutzer*innen können darüber herausfinden, was in der Welt vor sich geht. Die Links werden allerdings erst dann öffentlich vorgeschlagen, wenn du die Herausgeber*innen genehmigt hast. Du kannst alternativ aber auch nur einzelne URLs zulassen oder ablehnen.
-        disallow: Verbiete Link
-        disallow_provider: Verbiete Herausgeber
+        disallow: Link verbieten
+        disallow_provider: Herausgeber*in verbieten
         no_link_selected: Keine Links wurden geändert, da keine ausgewählt wurden
         publishers:
-          no_publisher_selected: Es wurden keine Herausgeber geändert, da keine ausgewählt wurden
+          no_publisher_selected: Keine Herausgeber wurden geändert, da keine ausgewählt wurden
         shared_by_over_week:
           one: In der letzten Woche von einer Person geteilt
           other: In der letzten Woche von %{count} Personen geteilt
@@ -788,10 +808,10 @@ de:
       rejected: Abgelehnt
       statuses:
         allow: Beitrag erlauben
-        allow_account: Autor erlauben
-        description_html: Dies sind Beiträge, von denen dein Server weiß, dass sie derzeit viel geteilt und favorisiert werden. Es kann deinen neuen und wiederkehrenden Benutzern helfen, weitere Personen zu finden. Es werden keine Beiträge öffentlich angezeigt, bis du den Autor genehmigst und der Autor es zulässt, sein Konto anderen Benutzern zeigen zu lassen. Du kannst auch einzelne Beiträge zulassen oder ablehnen.
+        allow_account: Autor*in erlauben
+        description_html: Dies sind Beiträge, von denen dein Server weiß, dass sie derzeit viel geteilt und favorisiert werden. Dies kann neuen und wiederkehrenden Personen helfen, weitere Profile zu finden, denen sie folgen können. Die Beiträge werden erst dann öffentlich angezeigt, wenn du die Person genehmigst und sie es zulässt, dass ihr Profil anderen vorgeschlagen wird. Du kannst auch einzelne Beiträge zulassen oder ablehnen.
         disallow: Beitrag verbieten
-        disallow_account: Autor verbieten
+        disallow_account: Autor*in verweigern
         no_status_selected: Keine angesagten Beiträge wurden geändert, da keine ausgewählt wurden
         not_discoverable: Der Autor hat sich nicht dafür entschieden, entdeckt zu werden
         shared_by:
@@ -806,7 +826,7 @@ de:
           tag_servers_dimension: Top Server
           tag_servers_measure: verschiedene Server
           tag_uses_measure: Gesamtnutzungen
-        description_html: Dies sind Hashtags, die derzeit in vielen Beiträgen erscheinen, die dein Server sieht. Es kann deinen Benutzern helfen, herauszufinden, worüber die Menschen im Moment am meisten reden. Es werden keine Hashtags öffentlich angezeigt, bis du sie genehmigst.
+        description_html: Diese Hashtags werden derzeit in vielen Beiträgen verwendet, die dein Server sieht. Dies kann deinen Nutzer*innen helfen, herauszufinden, worüber die Leute im Moment am meisten schreiben. Hashtags werden erst dann öffentlich angezeigt, wenn du sie genehmigst.
         listable: Kann vorgeschlagen werden
         no_tag_selected: Keine Tags wurden geändert, da keine ausgewählt wurden
         not_listable: Wird nicht vorgeschlagen
@@ -832,11 +852,11 @@ de:
     webhooks:
       add_new: Endpunkt hinzufügen
       delete: Löschen
-      description_html: Ein <strong>Webhook</strong> ermöglicht Mastodon <strong>Echtzeitbenachrichtigungen</strong> über ausgewählte Ereignisse an deine eigene Anwendung zu senden damit deine Anwendung <strong>automatisch Reaktionen auslösen kann</strong>.
+      description_html: Ein <strong>Webhook</strong> ermöglicht Mastodon, <strong>Echtzeitbenachrichtigungen</strong> über ausgewählte Ereignisse an deine eigene Anwendung zu senden, damit deine Anwendung <strong>automatisch Reaktionen auslösen kann</strong>.
       disable: Deaktivieren
       disabled: Deaktiviert
       edit: Endpunkt bearbeiten
-      empty: Du hast noch keine Webhook Endpunkte konfiguriert.
+      empty: Du hast noch keine Webhook-Endpunkte konfiguriert.
       enable: Aktivieren
       enabled: Aktiv
       enabled_events:
@@ -852,14 +872,14 @@ de:
   admin_mailer:
     new_appeal:
       actions:
-        delete_statuses: deren Beiträge zu löschen
-        disable: deren Konto einzufrieren
-        mark_statuses_as_sensitive: um die Beiträge des Profils mit einer Inhaltswarnung zu versehen
+        delete_statuses: das Löschen der Beiträge
+        disable: das Einfrieren der Konten
+        mark_statuses_as_sensitive: das Markieren der Beiträge mit einer Inhaltswarnung
         none: eine Warnung
-        sensitive: um das Profil mit einer Inhaltswarnung zu versehen
-        silence: deren Konto zu beschränken
-        suspend: deren Konto zu sperren
-      body: "%{target} hat etwas gegen eine Moderationsentscheidung von %{action_taken_by} von %{date}, die %{type} war. Die Person schrieb:"
+        sensitive: das Markieren des Profils mit einer Inhaltswarnung
+        silence: das Beschränken des Kontos
+        suspend: um deren Konto zu sperren
+      body: "%{target} hat etwas gegen eine Moderationsentscheidung von %{action_taken_by} vom %{date}, die %{type} war. Die Person schrieb:"
       next_steps: Du kannst dem Einspruch zustimmen und die Moderationsentscheidung rückgängig machen oder ignorieren.
       subject: "%{username} hat Einspruch gegen eine Moderationsentscheidung von %{instance} eingelegt"
     new_pending_account:
@@ -885,22 +905,22 @@ de:
     created_msg: Ein neuer Alias wurde erfolgreich erstellt. Du kannst nun den Wechsel vom alten Konto starten.
     deleted_msg: Der Alias wurde erfolgreich entfernt. Aus jenem Konto zu diesem zu verschieben, ist nicht mehr möglich.
     empty: Du hast keine Aliase.
-    hint_html: Wenn du von einem Konto zu einem anderem Konto wechseln möchtest, dann kannst du einen Alias erstellen, welcher benötigt wird, bevor du deine Folgenden vom altem Account zu diesen migrierst. Die Aktion alleine ist <strong>harmlos und wi­der­ruf­lich</strong>. <strong>Die Kontenmigration wird vom altem Konto aus eingeleitet</strong>.
+    hint_html: Wenn du von einem Konto zu einem anderen Konto wechseln möchtest, dann kannst du einen Alias erstellen, welcher benötigt wird, bevor du deine Follower vom alten Account zu diesen migrierst. Die Aktion allein ist <strong>harmlos und wi­der­ruf­lich</strong>. <strong>Die Kontenmigration wird vom alten Konto aus eingeleitet</strong>.
     remove: Alle Aliase aufheben
   appearance:
-    advanced_web_interface: Fortgeschrittene Benutzeroberfläche
-    advanced_web_interface_hint: Wenn du mehr aus deiner Bildschirmbreite herausholen möchtest, kannst du mit der fortgeschrittenen Benutzeroberfläche weitere Spalten hinzufügen und dadurch mehr Informationen auf einmal sehen, z. B. deine Startseite, die Mitteilungen, die föderierte Timeline sowie beliebig viele deiner Listen und Hashtags.
+    advanced_web_interface: Erweitertes Webinterface
+    advanced_web_interface_hint: Wenn du mehr aus deiner Bildschirmbreite herausholen möchtest, kannst du mit dem erweiterten Webinterface weitere Spalten hinzufügen und dadurch mehr Informationen auf einmal sehen, z. B. deine Startseite, die Mitteilungen, die föderierte Timeline sowie beliebig viele deiner Listen und Hashtags.
     animations_and_accessibility: Animationen und Barrierefreiheit
     confirmation_dialogs: Bestätigungsfenster
     discovery: Entdecken
     localization:
-      body: Mastodon wurde von Freiwilligen übersetzt.
+      body: Mastodon wird von Freiwilligen übersetzt.
       guide_link: https://de.crowdin.com/project/mastodon
-      guide_link_text: Jeder kann etwas dazu beitragen.
+      guide_link_text: Alle können mitmachen und etwas dazu beitragen.
     sensitive_content: Inhaltswarnung
     toot_layout: Timeline-Layout
   application_mailer:
-    notification_preferences: Ändere E-Mail-Einstellungen
+    notification_preferences: E-Mail-Einstellungen ändern
     salutation: "%{name},"
     settings: 'E-Mail-Einstellungen ändern: %{link}'
     view: 'Ansehen:'
@@ -914,14 +934,14 @@ de:
     warning: Sei mit diesen Daten sehr vorsichtig. Teile sie mit niemandem!
     your_token: Dein Zugangs-Token
   auth:
-    apply_for_account: Auf Warteliste kommen
+    apply_for_account: Konto beantragen
     change_password: Passwort
     delete_account: Konto löschen
     delete_account_html: Falls du dein Konto löschen willst, kannst du <a href="%{path}">hier damit fortfahren</a>. Du wirst um Bestätigung gebeten werden.
     description:
       prefix_invited_by_user: "@%{name} lädt dich ein, diesem Server von Mastodon beizutreten!"
-      prefix_sign_up: Melde dich heute bei Mastodon an!
-      suffix: Mit einem Konto kannst du Leuten folgen, Updates veröffentlichen und Nachrichten mit Benutzern von jedem Mastodon-Server austauschen und mehr!
+      prefix_sign_up: Registriere dich noch heute bei Mastodon!
+      suffix: Mit einem Konto kannst du Profilen folgen, neue Beiträge veröffentlichen, Nachrichten mit Personen von jedem Mastodon-Server austauschen und vieles mehr!
     didnt_get_confirmation: Keine Bestätigungs-Mail erhalten?
     dont_have_your_security_key: Hast du keinen Sicherheitsschlüssel?
     forgot_password: Passwort vergessen?
@@ -931,10 +951,10 @@ de:
     log_in_with: Anmelden mit
     login: Anmelden
     logout: Abmelden
-    migrate_account: Ziehe zu einem anderen Konto um
-    migrate_account_html: Wenn du wünschst, dieses Konto zu einem anderen umzuziehen, kannst du <a href="%{path}">dies hier einstellen</a>.
+    migrate_account: Auf ein anderes Konto umziehen
+    migrate_account_html: Wenn du dieses Konto auf ein anderes umleiten möchtest, kannst du es <a href="%{path}">hier konfigurieren</a>.
     or_log_in_with: Oder anmelden mit
-    privacy_policy_agreement_html: Ich habe die <a href="%{privacy_policy_path}" target="_blank">Datenschutzbestimmungen</a> gelesen und stimme ihnen zu
+    privacy_policy_agreement_html: Ich habe die <a href="%{privacy_policy_path}" target="_blank">Datenschutzerklärung</a> gelesen und stimme ihr zu
     providers:
       cas: CAS
       saml: SAML
@@ -943,7 +963,7 @@ de:
     resend_confirmation: Bestätigungs-Mail erneut versenden
     reset_password: Passwort zurücksetzen
     rules:
-      preamble: Diese werden von den Moderatoren von %{domain} erzwungen.
+      preamble: Diese werden von den %{domain}-Moderator*innen festgelegt und erzwungen.
       title: Einige Grundregeln.
     security: Sicherheit
     set_new_password: Neues Passwort setzen
@@ -958,9 +978,9 @@ de:
       account_status: Kontostatus
       confirming: Warte auf die Bestätigung der E-Mail.
       functional: Dein Konto ist voll funktionsfähig.
-      pending: Deine Bewerbung wird von unseren Mitarbeitern noch überprüft. Dies kann einige Zeit dauern. Du erhältst eine E-Mail, wenn deine Bewerbung genehmigt wurde.
+      pending: Die Prüfung deiner Bewerbung steht noch aus. Dies kann einige Zeit in Anspruch nehmen. Sobald deine Bewerbung genehmigt wurde, erhältst du eine E-Mail.
       redirecting_to: Dein Konto ist inaktiv, da es derzeit zu %{acct} umgeleitet wird.
-      view_strikes: Zeige frühere Streiks gegen dein Konto
+      view_strikes: Vorherige Verstöße deines Kontos ansehen
     too_fast: Formular zu schnell gesendet, versuche es erneut.
     use_security_key: Sicherheitsschlüssel verwenden
   authorize_follow:
@@ -1005,7 +1025,7 @@ de:
   deletes:
     challenge_not_passed: Die eingegebenen Informationen waren nicht korrekt
     confirm_password: Gib dein derzeitiges Passwort ein, um deine Identität zu bestätigen
-    confirm_username: Gib deinen Benutzernamen ein, um das Verfahren zu bestätigen
+    confirm_username: Gib deinen Profilnamen ein, um den Vorgang zu bestätigen
     proceed: Konto löschen
     success_msg: Dein Konto wurde erfolgreich gelöscht
     warning:
@@ -1016,17 +1036,17 @@ de:
       email_contact_html: Wenn die Bestätigungs-E-Mail immer noch nicht ankam, kannst du eine E-Mail an <a href="mailto:%{email}">%{email}</a> senden, um weitere Hilfe zu erhalten
       email_reconfirmation_html: Wenn du die Bestätigungs-E-Mail nicht erhalten hast, kannst du sie <a href="%{path}">erneut anfordern</a>
       irreversible: Du kannst dein Konto nicht reaktivieren
-      more_details_html: Weitere Details findest du in der <a href="%{terms_path}">Datenschutzrichtlinie</a>.
-      username_available: Dein Benutzername wird wieder verfügbar
-      username_unavailable: Dein Benutzername bleibt nicht verfügbar
+      more_details_html: Weitere Details findest du in der <a href="%{terms_path}">Datenschutzerklärung</a>.
+      username_available: Dein Profilname wird wieder verfügbar sein
+      username_unavailable: Dein Profilname wird weiterhin nicht mehr verfügbar sein
   disputes:
     strikes:
       action_taken: Maßnahme ergriffen
       appeal: Einspruch
-      appeal_approved: Dieser Strike wurde erfolgreich beeinsprucht und ist nicht mehr gültig
+      appeal_approved: Dieser Verstoß wurde erfolgreich angefochten und ist nicht mehr gültig
       appeal_rejected: Der Einspruch wurde abgelehnt
-      appeal_submitted_at: Einspruch eingelegt
-      appealed_msg: Dein Einspruch wurde abgesendet. Wenn er angenommen wird, wirst du benachrichtigt.
+      appeal_submitted_at: Einspruch eingereicht
+      appealed_msg: Dein Einspruch wurde übermittelt. Wenn er angenommen wird, wirst du benachrichtigt.
       appeals:
         submit: Einspruch erheben
       approve_appeal: Einspruch annehmen
@@ -1039,7 +1059,7 @@ de:
       status_removed: Beitrag bereits vom System entfernt
       title: "%{action} vom %{date}"
       title_actions:
-        delete_statuses: Post-Entfernung
+        delete_statuses: Beitragsentfernung
         disable: Einfrieren des Kontos
         mark_statuses_as_sensitive: Beiträge mit einer Inhaltswarnung versehen
         none: Warnung
@@ -1067,13 +1087,13 @@ de:
     '503': Die Seite konnte wegen eines temporären Serverfehlers nicht angezeigt werden.
     noscript_html: Bitte aktiviere JavaScript, um die Mastodon-Web-Anwendung zu verwenden. Alternativ kannst du auch eine der <a href="%{apps_path}">nativen Mastodon-Anwendungen</a> für deine Plattform probieren.
   existing_username_validator:
-    not_found: kann lokalen Benutzer nicht mit diesem Nutzernamen finden
-    not_found_multiple: kann %{usernames} nicht finden
+    not_found: kann lokale*n Benutzer*in mit diesem Profilnamen nicht finden
+    not_found_multiple: "%{usernames} können nicht gefunden werden"
   exports:
     archive_takeout:
       date: Datum
       download: Dein Archiv herunterladen
-      hint_html: Du kannst ein Archiv deiner <strong>Beiträge, Listen, hochgeladenen Medien, usw.</strong> anfordern. Die exportierten Daten werden in dem ActivityPub-Format gespeichert und können mit jeder passenden Software gelesen werden. Du kannst alle 7 Tage ein Archiv anfordern.
+      hint_html: Du kannst ein Archiv deiner <strong>Beiträge, Listen, hochgeladenen Medien usw.</strong> anfordern. Die exportierten Daten werden im ActivityPub-Format gespeichert und können mit geeigneter Software ausgewertet und angezeigt werden. Du kannst alle 7 Tage ein Archiv erstellen lassen.
       in_progress: Persönliches Archiv wird erstellt …
       request: Dein Archiv anfordern
       size: Größe
@@ -1103,12 +1123,12 @@ de:
       statuses_hint_html: Dieser Filter gilt für die Auswahl einzelner Beiträge, unabhängig davon, ob sie mit den unten stehenden Schlüsselwörtern übereinstimmen. <a href="%{path}">Beiträge im Filter ansehen oder entfernen.</a>.
       title: Filter bearbeiten
     errors:
-      deprecated_api_multiple_keywords: Diese Parameter können von dieser Anwendung nicht geändert werden, da sie auf mehr als ein Filterschlüsselwort angewendet werden. Verwende eine neuere Anwendung oder die Web-Schnittstelle.
+      deprecated_api_multiple_keywords: Diese Parameter können von dieser Anwendung nicht geändert werden, da sie auf mehr als ein Filterschlüsselwort angewendet werden. Verwende eine neuere Anwendung oder das Webinterface.
       invalid_context: Ungültiger oder fehlender Kontext übergeben
     index:
       contexts: Filter in %{contexts}
       delete: Löschen
-      empty: Du hast noch keine Filter gesetzt.
+      empty: Du hast noch keine Filter erstellt.
       expires_in: Läuft ab in %{distance}
       expires_on: Läuft am %{date} ab
       keywords:
@@ -1129,7 +1149,7 @@ de:
       batch:
         remove: Vom Filter entfernen
       index:
-        hint: Dieser Filter wird verwendet, um einzelne Beiträge unabhängig von anderen Kriterien auszuwählen. Du kannst mehr Beiträge zu diesem Filter über die Webschnittstelle hinzufügen.
+        hint: Dieser Filter wird verwendet, um einzelne Beiträge unabhängig von anderen Kriterien auszuwählen. Du kannst mehr Beiträge zu diesem Filter über das Webinterface hinzufügen.
         title: Gefilterte Beiträge
   footer:
     trending_now: In den Trends
@@ -1159,6 +1179,7 @@ de:
     invalid_markup: 'enthält ungültiges HTML-Markup: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Ungültige CSV-Datei. Fehler: %{error}'
       over_rows_processing_limit: enthält mehr als %{count} Zeilen
     modes:
       merge: Zusammenführen
@@ -1170,7 +1191,7 @@ de:
     types:
       blocking: Blockierliste
       bookmarks: Lesezeichen
-      domain_blocking: Domain-Blockliste
+      domain_blocking: Domainsperrliste
       following: Folgeliste
       muting: Stummschaltungsliste
     upload: Liste importieren
@@ -1190,8 +1211,8 @@ de:
     max_uses:
       one: 1 mal verwendet
       other: "%{count} mal verwendet"
-    max_uses_prompt: Kein Limit
-    prompt: Generiere und teile Links, um Zugang zu diesem Server zu erteilen
+    max_uses_prompt: Keine Einschränkung
+    prompt: Erstelle Einladungen und teile die dazugehörigen Links, um anderen einen Zugang zu diesem Server zu gewähren
     table:
       expires_at: Läuft ab
       uses: Verwendet
@@ -1201,9 +1222,9 @@ de:
       limit: Du hast die maximale Anzahl an Listen erreicht
   login_activities:
     authentication_methods:
-      otp: Zwei-Faktor-Authentifizierung-App
+      otp: Zwei-Faktor-Authentisierungs-App
       password: Passwort
-      sign_in_token: E-Mail Sicherheitscode
+      sign_in_token: E-Mail-Sicherheitscode
       webauthn: Sicherheitsschlüssel
     description_html: Wenn du verdächtige Aktivitäten bemerkst, die du nicht verstehst oder zuordnen kannst, solltest du dringend dein Passwort ändern und ungeachtet dessen die Zwei-Faktor-Authentisierung (2FA) aktivieren.
     empty: Kein Authentifizierungsverlauf verfügbar
@@ -1216,9 +1237,9 @@ de:
       not_ready: Dateien, die noch nicht bearbeitet wurden, können nicht angehängt werden. Versuche es gleich noch einmal!
       too_many: Es können nicht mehr als 4 Dateien angehängt werden
   migrations:
-    acct: benutzername@domain des neuen Kontos
+    acct: umgezogen nach
     cancel: Umleitung abbrechen
-    cancel_explanation: Das Abbrechen der Umleitung wird dein aktuelles Konto erneut aktivieren, aber keine Folgenden, die auf dieses Konto verschoben wurden, zurückholen.
+    cancel_explanation: Das Abbrechen der Umleitung wird dein aktuelles Konto erneut aktivieren, aber keine Follower, die auf dieses Konto verschoben wurden, zurückholen.
     cancelled_msg: Die Umleitung wurde erfolgreich abgebrochen.
     errors:
       already_moved: ist das gleiche Konto, zu dem du bereits umgezogen bist
@@ -1227,7 +1248,7 @@ de:
       not_found: kann nicht gefunden werden
       on_cooldown: Die Abklingzeit läuft gerade
     followers_count: Anzahl der Follower zum Zeitpunkt der Migration des Accounts
-    incoming_migrations: Ziehe von einem anderen Konto um
+    incoming_migrations: Von einem anderen Konto umziehen
     incoming_migrations_html: Um von einem anderen Konto zu diesem zu wechseln, musst du zuerst <a href="%{path}">einen Kontoalias</a> erstellen.
     moved_msg: Dein altes Profil wird jetzt zum neuen Account %{acct} weitergeleitet und deine Follower werden übertragen.
     not_redirecting: Dein Konto wird derzeit nicht auf ein anderes Konto weitergeleitet.
@@ -1249,9 +1270,9 @@ de:
   moderation:
     title: Moderation
   move_handler:
-    carry_blocks_over_text: Dieses Benutzerkonto ist von %{acct} umgezogen, welches du blockiert hast.
-    carry_mutes_over_text: Das Profil wurde von %{acct} übertragen – und dieses hattest du stummgeschaltet.
-    copy_account_note_text: 'Dieser Benutzer ist von %{acct} umgezogen, hier sind deine letzten Notizen zu diesem Benutzer:'
+    carry_blocks_over_text: Dieses Konto ist von %{acct}, das du blockiert hast, umgezogen.
+    carry_mutes_over_text: Dieses Konto ist von %{acct}, das du stummgeschaltet hast, umgezogen.
+    copy_account_note_text: 'Dieses Konto ist von %{acct} umgezogen. Hier deine damals verfassten Notizen zum Profil:'
   navigation:
     toggle_menu: Menü ein-/ausblenden
   notification_mailer:
@@ -1303,8 +1324,8 @@ de:
           thousand: K
           trillion: T
   otp_authentication:
-    code_hint: Gib den von deiner Authentifizierungs-App generierten Code ein, um deine Anmeldung zu bestätigen
-    description_html: Wenn du die <strong>Zwei-Faktor-Authentisierung</strong> (2FA) mit einer Authentifizierungs-App deines Smartphones aktivierst, benötigst du neben dem regulären Passwort zusätzlich auch den zeitbasierten Code der 2FA-App, um dich einloggen zu können.
+    code_hint: Gib den Code ein, den deine 2FA- bzw. TOTP-App generiert hat, um den Vorgang zu bestätigen
+    description_html: Wenn du die <strong>Zwei-Faktor-Authentisierung</strong> (2FA) mit einer Authentifizierungs-App deines Smartphones aktivierst, benötigst du neben dem regulären Passwort zusätzlich auch den zeitbasierten Code der 2FA-App, um dich anmelden zu können.
     enable: Aktivieren
     instructions_html: "<strong>Scanne diesen QR-Code mit einer TOTP-App (wie dem Google Authenticator)</strong>. Die 2FA-App generiert dann zeitbasierte Codes, die du beim Login zusätzlich zum regulären Passwort eingeben musst."
     manual_instructions: Wenn du den QR-Code nicht einscannen kannst, sondern die Zahlenfolge manuell eingeben musst, ist hier der geheime Token für deine 2FA-App.
@@ -1340,7 +1361,7 @@ de:
   relationships:
     activity: Kontoaktivität
     dormant: Inaktiv
-    follow_selected_followers: Ausgewählte Follower folgen
+    follow_selected_followers: Ausgewählten Followern folgen
     followers: Follower
     following: Folge ich
     invited: Eingeladen
@@ -1352,7 +1373,7 @@ de:
     relationship: Beziehung
     remove_selected_domains: Entferne alle Follower von den ausgewählten Domains
     remove_selected_followers: Entferne ausgewählte Follower
-    remove_selected_follows: Entfolge ausgewählten Benutzer*innen
+    remove_selected_follows: Ausgewählten Benutzer*innen entfolgen
     status: Kontostatus
   remote_follow:
     missing_resource: Die erforderliche Weiterleitungs-URL für dein Konto konnte nicht gefunden werden
@@ -1391,7 +1412,7 @@ de:
       weibo: Weibo
     current_session: Aktuelle Sitzung
     description: "%{browser} auf %{platform}"
-    explanation: Dies sind die Webbrowser, die derzeit in deinem Mastodon-Konto eingeloggt sind.
+    explanation: Dies sind die Webbrowser, die derzeit mit deinem Mastodon-Konto verbunden sind.
     ip: IP-Adresse
     platforms:
       adobe_air: Adobe Air
@@ -1414,23 +1435,23 @@ de:
     account: Konto
     account_settings: Kontoeinstellungen
     aliases: Kontoaliase
-    appearance: Erscheinungsbild
-    authorized_apps: Autorisierte Anwendungen
+    appearance: Design
+    authorized_apps: Genehmigte Apps
     back: Zurück zu Mastodon
     delete: Konto löschen
     development: Entwicklung
     edit_profile: Profil bearbeiten
-    export: Export
+    export: Exportieren
     featured_tags: Empfohlene Hashtags
-    import: Import
-    import_and_export: Import und Export
+    import: Importieren
+    import_and_export: Importieren und exportieren
     migrate: Konto-Umzug
     notifications: Benachrichtigungen
     preferences: Einstellungen
     profile: Profil
     relationships: Folge ich und Follower
     statuses_cleanup: Automatische Löschung
-    strikes: Strikes
+    strikes: Moderieren von Verstößen
     two_factor_authentication: Zwei-Faktor-Authentisierung (2FA)
     webauthn_authentication: Sicherheitsschlüssel
   statuses:
@@ -1447,7 +1468,7 @@ de:
         other: "%{count} Videos"
     boosted_from_html: Geteilt von %{acct_link}
     content_warning: 'Inhaltswarnung: %{warning}'
-    default_language: Wie die Oberflächensprache
+    default_language: Wie die Sprache des Webinterface
     disallowed_hashtags:
       one: 'enthält einen verbotenen Hashtag: %{tags}'
       other: 'enthält verbotene Hashtags: %{tags}'
@@ -1457,7 +1478,7 @@ de:
     open_in_web: Im Web öffnen
     over_character_limit: Zeichenlimit von %{max} überschritten
     pin_errors:
-      direct: Beiträge, die nur für erwähnte Benutzer sichtbar sind, können nicht angepinnt werden
+      direct: Beiträge, die nur für erwähnte Profile sichtbar sind, können nicht angeheftet werden
       limit: Du hast bereits die maximale Anzahl an Beiträgen angeheftet
       ownership: Du kannst nur eigene Beiträge anheften
       reblog: Du kannst keine geteilten Beiträge anheften
@@ -1473,7 +1494,7 @@ de:
     show_newer: Neuere anzeigen
     show_older: Ältere anzeigen
     show_thread: Thread anzeigen
-    sign_in_to_participate: Melde dich an, um an der Konversation teilzuhaben
+    sign_in_to_participate: Melde dich an, um an der Unterhaltung teilzunehmen
     title: '%{name}: "%{quote}"'
     visibilities:
       direct: Direktnachricht
@@ -1515,16 +1536,16 @@ de:
       '7889238': 3 Monate
     min_age_label: Altersgrenze
     min_favs: Behalte Beiträge, die häufiger favorisiert wurden als ...
-    min_favs_hint: Lösche keine deiner Beiträge, die häufiger als diese Anzahl favorisiert worden sind. Lass das Feld leer, um alle Beiträge unabhängig der Anzahl der Favoriten zu löschen
+    min_favs_hint: Löscht keine deiner Beiträge, die mindestens diese Anzahl an Favoriten erhalten haben. Lass das Feld leer, um Beiträge unabhängig von ihrer Anzahl an Favoriten zu löschen
     min_reblogs: Behalte Beiträge, die häufiger geteilt wurden als ...
-    min_reblogs_hint: Lösche keine deiner Beiträge, die mehr als diese Anzahl geteilt wurden. Lasse das Feld leer, um alle Beiträge unabhängig der Anzahl der geteilten Beiträge zu löschen
+    min_reblogs_hint: Löscht keine deiner Beiträge, die mindestens so oft geteilt wurden. Lass das Feld leer, um Beiträge unabhängig von der Anzahl der geteilten Beiträge zu löschen
   stream_entries:
     pinned: Angehefteter Beitrag
     reblogged: teilte
     sensitive_content: Inhaltswarnung
   strikes:
     errors:
-      too_late: Es ist zu spät, um gegen diese Verwarnung Einspruch zu erheben
+      too_late: Es ist zu spät, um gegen diesen Verstoß Einspruch zu erheben
   tags:
     does_not_match_previous_name: entspricht nicht dem vorherigen Namen
   themes:
@@ -1554,22 +1575,22 @@ de:
   user_mailer:
     appeal_approved:
       action: Gehe zu deinem Konto
-      explanation: Der Einspruch gegen dem Strike vom %{strike_date}, den du am %{appeal_date} eingereicht hast, wurde genehmigt. Dein Konto ist wieder in gutem Zustand.
+      explanation: Der Einspruch gegen deinen Verstoß vom %{strike_date}, den du am %{appeal_date} eingereicht hast, wurde genehmigt. Dein Konto ist wieder in gutem Zustand.
       subject: Dein Einspruch vom %{date} wurde angenommen
       title: Einspruch angenommen
     appeal_rejected:
-      explanation: Der Einspruch gegen dem Strike vom %{strike_date}, den du am %{appeal_date} eingereicht hast, wurde abgelehnt.
+      explanation: Der Einspruch gegen deinen Verstoß vom %{strike_date}, den du am %{appeal_date} eingereicht hast, wurde abgelehnt.
       subject: Dein Einspruch vom %{date} wurde abgelehnt
       title: Einspruch abgelehnt
     backup_ready:
-      explanation: Du hast ein vollständiges Backup von deinem Mastodon-Konto angefragt. Es kann jetzt heruntergeladen werden!
-      subject: Dein persönliches Archiv ist bereit zum Download
-      title: Archiv-Download
+      explanation: Du hast eine vollständige Sicherung von deinem Mastodon-Konto angefragt. Es kann jetzt heruntergeladen werden!
+      subject: Dein persönliches Archiv ist bereit zum Herunterladen
+      title: Archivmitnahme
     suspicious_sign_in:
       change_password: dein Passwort zu ändern
       details: 'Hier sind die Details des Versuchs:'
       explanation: Wir haben eine Anmeldung zu deinem Konto von einer neuen IP-Adresse festgestellt.
-      further_actions_html: Wenn du das nicht warst, empfehlen wir dir schnellstmöglich, %{action} und die Zwei-Faktor-Authentisierung (2FA) für deinen Account zu aktivieren, um dein Konto abzusichern.
+      further_actions_html: Wenn du das nicht warst, empfehlen wir dir schnellstmöglich, %{action} und die Zwei-Faktor-Authentifizierung (2FA) für dein Konto zu aktivieren, um es abzusichern.
       subject: Es wurde auf dein Konto von einer neuen IP-Adresse zugegriffen
       title: Eine neue Anmeldung
     warning:
@@ -1577,12 +1598,12 @@ de:
       appeal_description: Wenn du glaubst, dass es sich um einen Fehler handelt, kannst du einen Einspruch an die Administration von %{instance} senden.
       categories:
         spam: Spam
-        violation: Inhalt verstößt gegen die folgenden Community-Richtlinien
+        violation: Inhalt verstößt gegen die folgenden Gemeinschaftsrichtlinien
       explanation:
-        delete_statuses: Einige deiner Beiträge wurden als Verstoß gegen eine oder mehrere Communityrichtlinien erkannt und von den Moderator_innen von %{instance} entfernt.
-        disable: Du kannst dein Konto nicht mehr verwenden, aber dein Profil und andere Daten bleiben unversehrt. Du kannst ein Backup deiner Daten anfordern, die Kontoeinstellungen ändern oder dein Konto löschen.
-        mark_statuses_as_sensitive: Ein oder mehrere Deiner Beiträge wurden von den Moderator*innen der Instanz %{instance} mit einer Inhaltswarnung (NSFW) versehen. Das bedeutet, dass Besucher*innen diese Medien in den Beiträgen zunächst antippen müssen, um die Vorschau anzuzeigen. Beim Verfassen der nächsten Beiträge kannst du auch selbst eine Inhaltswarnung für hochgeladene Medien festlegen.
-        sensitive: Von nun an werden alle deine hochgeladenen Mediendateien als sensibel markiert und hinter einer Warnung versteckt.
+        delete_statuses: Einige deiner Beiträge wurden als Verstoß gegen eine oder mehrere Gemeinschaftsrichtlinien erkannt und von den Moderator*innen von %{instance} entfernt.
+        disable: Du kannst dein Konto nicht mehr verwenden, aber dein Profil und andere Daten bleiben unversehrt. Du kannst eine Sicherung deiner Daten anfordern, die Kontoeinstellungen ändern oder dein Konto löschen.
+        mark_statuses_as_sensitive: Ein oder mehrere deiner Beiträge wurden von den Moderator*innen der Instanz %{instance} mit einer Inhaltswarnung versehen. Das bedeutet, dass Besucher*innen diese Medien in den Beiträgen zunächst antippen müssen, um die Vorschau anzuzeigen. Beim Verfassen der nächsten Beiträge kannst du auch selbst eine Inhaltswarnung für hochgeladene Medien festlegen.
+        sensitive: Von nun an werden alle deine hochgeladenen Mediendateien mit einer Inhaltswarnung versehen und hinter einer Warnung versteckt.
         silence: Solange dein Konto limitiert ist, können nur die Leute, die dir bereits folgen, deine Beiträge auf dem Server sehen, und es könnte sein, dass du von verschiedenen öffentlichen Listungen ausgeschlossen wirst. Andererseits können andere dir manuell folgen.
         suspend: Du kannst dein Konto nicht mehr verwenden, und dein Profil und andere Daten sind nicht mehr verfügbar. Du kannst dich immer noch anmelden, um ein Backup deiner Daten anzufordern, bis die Daten innerhalb von 30 Tagen vollständig gelöscht wurden. Allerdings werden wir einige Daten speichern, um zu verhindern, dass du die Sperrung umgehst.
       reason: 'Grund:'
@@ -1590,34 +1611,34 @@ de:
       subject:
         delete_statuses: Deine Beiträge auf %{acct} wurden entfernt
         disable: Dein Konto %{acct} wurde eingefroren
-        mark_statuses_as_sensitive: Die Beiträge deines Profils %{acct} wurden mit einer Inhaltswarnung (NSFW) versehen
+        mark_statuses_as_sensitive: Deine Beiträge von %{acct} wurden mit einer Inhaltswarnung versehen
         none: Warnung für %{acct}
-        sensitive: Die Beiträge deines Profils %{acct} werden künftig mit einer Inhaltswarnung (NSFW) versehen
-        silence: Dein Konto %{acct} wurde limitiert
+        sensitive: Deine Beiträge von %{acct} werden künftig mit einer Inhaltswarnung versehen
+        silence: Dein Konto %{acct} wurde stummgeschaltet
         suspend: Dein Konto %{acct} wurde gesperrt
       title:
         delete_statuses: Beiträge entfernt
         disable: Konto eingefroren
-        mark_statuses_as_sensitive: Mit einer Inhaltswarnung (NSFW) versehene Beiträge
+        mark_statuses_as_sensitive: Mit einer Inhaltswarnung versehene Beiträge
         none: Warnung
-        sensitive: Profil mit einer Inhaltswarnung (NSFW) versehen
-        silence: Konto limitiert
+        sensitive: Konto mit einer Inhaltswarnung versehen
+        silence: Konto stummgeschaltet
         suspend: Konto gesperrt
     welcome:
       edit_profile_action: Profil einrichten
-      edit_profile_step: Du kannst dein Profil anpassen, indem du einen Avatar oder ein Titelbild hochlädst, deinen Anzeigenamen änderst und viel mehr. Du kannst optional einstellen, ob du Accounts, die dir folgen wollen, akzeptieren musst, bevor sie dies können.
+      edit_profile_step: Du kannst dein Profil anpassen, indem du ein Profilbild hochlädst, deinen Anzeigenamen änderst und vieles mehr. Du kannst dich dafür entscheiden, neue Follower zu überprüfen, bevor sie dir folgen dürfen.
       explanation: Hier sind ein paar Tipps, um loszulegen
       final_action: Fang an zu posten
       final_step: 'Fang jetzt an zu posten! Selbst ohne Follower werden deine öffentlichen Beiträge von anderen gesehen, zum Beispiel in der lokalen Timeline oder über die Hashtags. Möglicherweise möchtest du dich allen mit dem Hashtag #neuhier vorstellen.'
-      full_handle: Dein vollständiger Benutzername
+      full_handle: Dein vollständiger Profilname
       full_handle_hint: Dies ist, was du deinen Freunden sagen kannst, damit sie dich anschreiben oder dir von einem anderen Server folgen können.
       subject: Willkommen bei Mastodon
       title: Willkommen an Bord, %{name}!
   users:
     follow_limit_reached: Du kannst nicht mehr als %{limit} Leuten folgen
     invalid_otp_token: Ungültiger Code der Zwei-Faktor-Authentisierung (2FA)
-    otp_lost_help_html: Wenn Du beides nicht mehr weißt, melde Dich bei uns unter der E-Mailadresse %{email}
-    seamless_external_login: Du bist angemeldet über einen Drittanbieter-Dienst, weswegen Passwort- und E-Maileinstellungen nicht verfügbar sind.
+    otp_lost_help_html: Wenn du beides nicht mehr weißt, melde dich bitte bei uns unter der E-Mail-Adresse %{email}
+    seamless_external_login: Du bist über einen externen Dienst angemeldet, daher sind Passwort- und E-Mail-Einstellungen nicht verfügbar.
     signed_in_as: 'Angemeldet als:'
   verification:
     explanation_html: 'Du kannst <strong>bestätigen, dass die Links in deinen Profil-Metadaten dir gehören</strong>. Dafür muss die verlinkte Website einen Link zurück auf dein Mastodon-Profil enthalten. Dieser Link <strong>muss</strong> ein <code>rel="me"</code>-Attribut enthalten. Der Linktext ist dabei egal. Hier ist ein Beispiel:'
diff --git a/config/locales/devise.an.yml b/config/locales/devise.an.yml
new file mode 100644
index 000000000..f179f915d
--- /dev/null
+++ b/config/locales/devise.an.yml
@@ -0,0 +1,115 @@
+---
+an:
+  devise:
+    confirmations:
+      confirmed: La suya adreza de correu electronico ha estau confirmada correctament.
+      send_instructions: Recibirás un correu electronico con instruccions pa confirmar la tuya adreza de correu electronico en uns menutos. Per favor, compreba la tuya carpeta de spam si no recibiés este correu electronico.
+      send_paranoid_instructions: Si la suya adreza de correu electronico existe en a nuestra base de datos, recibirá un correu electronico con instruccions sobre cómo confirmar la suya adreza de correu en pocos menutos.
+    failure:
+      already_authenticated: Vusté ya ye rechistrau.
+      inactive: La suya cuenta no ha estau activada encara.
+      invalid: "%{authentication_keys} u clau invalida."
+      last_attempt: Tiene un intento mas antes que la tuya cuenta sía blocada.
+      locked: La tuya cuenta ye blocada.
+      not_found_in_database: Incorrecto %{authentication_keys} u clau.
+      pending: La suya cuenta encara se troba baixo revisión.
+      timeout: La suya sesión ha expirau. Per favor inicie sesión de nuevo pa continar.
+      unauthenticated: Ameneste iniciar sesión u rechistrar-se antes de continar.
+      unconfirmed: Ha de confirmar la suya adreza de correu electronico antes de continar.
+    mailer:
+      confirmation_instructions:
+        action: Verifica la tuya adreza de correu electronico
+        action_with_app: Confirmar y tornar ta %{app}
+        explanation: Has creyau una cuenta en %{host} con esta adreza de correu electronico. Yes a un solo clic d'activar-lo. Si no estiés tu, per favor ignora este correu electronico.
+        explanation_when_pending: Has solicitau una invitación a %{host} con esta adreza de correu electronico. Una vegada que confirmes la tuya adreza de correu electronico, revisaremos la tuya solicitut. Puetz iniciar sesión pa cambiar los tuyos datos u eliminar la tuya cuenta, pero no puetz acceder ta la mayoría d'as funcions dica que la tuya cuenta sía aprebada. Si la suya solicitut ye refusada, los suyos datos serán eliminaus, per lo que no será necesaria garra acción adicional per la suya parte. Si no estiés tu, per favor ignora este correu electronico.
+        extra_html: Per favor, revisa <a href="%{terms_path}">las reglas d'o servidor</a> y <a href="%{policy_path}">los nuestros termins de servicio</a>.
+        subject: 'Mastodon: Instruccions de confirmación pa %{instance}'
+        title: Verificar adreza de correu electronico
+      email_changed:
+        explanation: 'Lo correu electronico pa la suya cuenta esta estando cambiada a:'
+        extra: Si vusté no ha cambiau lo suyo correu electronico, ye probable que belún haiga aconseguiu acceso a la suya cuenta. Per favor cambie la suya clau immediatament u contacte a l'administrador d'a instancia si vusté no puede iniciar sesión.
+        subject: 'Mastodon: Correu electronico cambiau'
+        title: Nueva adreza de correu electronico
+      password_change:
+        explanation: La clau d'a suya cuenta a estau cambiada.
+        extra: Si vusté no a cambiau la suya clau. ye probable que belún a aconseguiu acceso a la suya cuenta. Per favor cambie la suya clau immediatament u contacte a l'administrador d'a instancia si vusté esta blocau d'a suya cuenta.
+        subject: 'Mastodon: Clau cambiada'
+        title: Clau cambiada
+      reconfirmation_instructions:
+        explanation: Confirme la nueva adreza pa cambiar la suya coreo electronico.
+        extra: Si no iniciés este cambio, per favor ignora este correu. Esta adreza de correu pa la cuenta de Mastodon no cambiará dica que accedas a lo vinculo alto.
+        subject: 'Mastodon: Confirme correu electronico pa %{instance}'
+        title: Verifique adreza de correu electronico
+      reset_password_instructions:
+        action: Cambiar clau
+        explanation: Solicités una nueva clau pa la tuya cuenta.
+        extra: Si no solicités esto, per favor ignora este correu. La tuya clau no cambiará dica que la tuya accedas a lo vinculo alto y creyes una nueva.
+        subject: 'Mastodon: Instruccions pa reiniciar clau'
+        title: Reiniciar clau
+      two_factor_disabled:
+        explanation: L'autenticación de dos factors pa la tuya cuenta ha estau deshabilitada. Agora puetz connectar-te nomás usando l'adreza de correu electronico y la clau.
+        subject: 'Mastodon: L''autenticación de dos factors ye deshabilitada'
+        title: 2FA desactivada
+      two_factor_enabled:
+        explanation: L'autenticación de dos factors pa la tuya cuenta ha estau habilitada. Se requiere un token chenerau per l'aplicación TOTP emparellada pa ingresar.
+        subject: 'Mastodon: L''autenticación de dos factors ye habilitada'
+        title: 2FA activada
+      two_factor_recovery_codes_changed:
+        explanation: Los codigos de recuperación previos han estau invalidaus y se cheneroron codigos nuevos.
+        subject: 'Mastodon: Los codigos de recuperación de dos factors estioron regenerados'
+        title: Codigos de recuperación 2FA cambiaus
+      unlock_instructions:
+        subject: 'Mastodon: Instruccions pa desblocar'
+      webauthn_credential:
+        added:
+          explanation: La siguient clau de seguranza ha estau anyadida a la suya cuenta
+          subject: 'Mastodon: Nueva clau de seguranza'
+          title: S'ha anyadiu una nueva clau de seguranza
+        deleted:
+          explanation: La siguient clau de seguranza ha estau eliminada d'a tuya cuenta
+          subject: 'Mastodon: Clau de seguranza eliminada'
+          title: Una d'as tuyas claus de seguranza ha estau eliminada
+      webauthn_disabled:
+        explanation: L'autenticación con claus de seguranza ha estau deshabilitada pa la tuya cuenta. Agora l'inicio de sesión nomás ye posible utilizando lo token chenerau per l'aplicación TOTP emparellada.
+        subject: 'Mastodon: Autenticación con claus de seguranza deshabilitada'
+        title: Claus de seguranza deshabilitadas
+      webauthn_enabled:
+        explanation: L'autenticación con clau de seguranza ha estau habilitada pa la tuya cuenta. Agora la tuya clau de seguranza puede estar utilizada pa iniciar sesión.
+        subject: 'Mastodon: Autenticación de clau de seguranza habilitada'
+        title: Claus de seguranza habilitadas
+    omniauth_callbacks:
+      failure: No se te podió autenticar dende %{kind} perque “%{reason}”.
+      success: Autenticau correctament dende la cuenta de %{kind}.
+    passwords:
+      no_token: No puetz acceder ta esta pachina si no viens dende un correu electronico de restablimiento de clau. Si viens dende un correu electronico de restablimiento de clau, per favor asegura-te d'utilizar la URL completa proporcionada.
+      send_instructions: Si la tuya adreza de correu electronico existe en a nuestra base de datos, recibirás un vinclo de recuperación de clau en a tuya adreza de correu electronico en pocos menutos. Per favor, compreba la tuya carpeta de correu no deseyau si no recibes dito correu electronico.
+      send_paranoid_instructions: Si la tuya adreza de correu electronico existe en a nuestra base de datos, recibirás un vinclo de recuperación de clau en a tuya adreza de correu electronico en pocos menutos. Per favor, compreba la tuya carpeta de correu no deseyau si no recibes dito correu electronico.
+      updated: La tuya clau ha estau cambiada con exito. Has iniciau sesión.
+      updated_not_active: La tuya clau s'ha cambiau con exito.
+    registrations:
+      destroyed: Dica unatra! La tuya cuenta ha estau cancelada con exito. Asperamos veyer-te de nuevo luego.
+      signed_up: Bienveniu! T'has rechistrau correctament.
+      signed_up_but_inactive: T'has rechistrau con exito. Manimenos, no s'ha puesto iniciar sesión perque la tuya cuenta encara no ye activada.
+      signed_up_but_locked: T'has rechistrau con exito. Manimenos, no s'ha puesto iniciar sesión perque la tuya cuenta ye blocada.
+      signed_up_but_pending: Un mensache con un vinclo de confirmación ha estau ninviau a la tuya adreza de correu electronico. Dimpués de fer clic en o vinclo, revisaremos la tuya solicitut. Serás notificau si s'apreba.
+      signed_up_but_unconfirmed: Un mensache con un vinclo de confirmación ha estau ninviau a la tuya adreza de correu electronico. Per favor, sigue lo vinclo pa activar la tuya cuenta. Per favor, compreba la tuya carpeta de correu no deseyau si no recibes dito correu electronico.
+      update_needs_confirmation: Has actualizau la tuya cuenta con exito, pero amenestemos verificar la tuya nueva adreza de correu electronico. Per favor, compreba lo tuyo correu electronico y sigue lo vinclo de confirmación pa confirmar la tuya nueva adreza de correu electronico. Per favor, compreba la tuya carpeta de correu no deseyau si no recibes dito correu electronico.
+      updated: La tuya cuenta s'ha actualizau con exito.
+    sessions:
+      already_signed_out: Sesión zarrada con exito.
+      signed_in: Sesión iniciada con exito.
+      signed_out: Sesión zarrada con exito.
+    unlocks:
+      send_instructions: En uns menutos recibirás un correu electronico con instruccions pa desblocar la tuya cuenta. Per favor, compreba la tuya carpeta de correu no deseyau si no recibes dito correu electronico.
+      send_paranoid_instructions: Si la tuya cuenta existe, en uns menutos recibirás un correu electronico con instruccions pa desblocar-la. Per favor, revisa la tuya carpeta de correu no deseyau si no recibes dito correu electronico.
+      unlocked: La tuya cuenta ha estau desblocada con exito. Per favor, inicia sesión pa continar.
+  errors:
+    messages:
+      already_confirmed: ya yera confirmada, per favor intenta iniciar sesión
+      confirmation_period_expired: ameneste confirmar-se dentro de %{period}, per favor, solicita una nueva
+      expired: ha caducau, per favor solicita una nueva
+      not_found: no trobau
+      not_locked: no yera blocada
+      not_saved:
+        one: '1 error impidió que este %{resource} s''alzase:'
+        other: "%{count} errors impidioron que este %{resource} s'alzase:"
diff --git a/config/locales/devise.ar.yml b/config/locales/devise.ar.yml
index d8cfdbd42..7b8820771 100644
--- a/config/locales/devise.ar.yml
+++ b/config/locales/devise.ar.yml
@@ -22,17 +22,17 @@ ar:
         action_with_app: تأكيد ثم العودة إلى %{app}
         explanation: لقد قمت بإنشاء حساب على %{host} بواسطة عنوان البريد الإلكتروني الحالي. إنك على بعد خطوات قليلة من تفعليه. إن لم تكن من طلب ذلك، يرجى ألّا تولي اهتماما بهذه الرسالة.
         explanation_when_pending: لقد تقدمت بطلب دعوة إلى %{host} باستخدام عنوان البريد الإلكتروني هذا، بمجرد تأكيد عنوان البريد الإلكتروني الخاص بك، سنقوم بمراجعة تطبيقك. يمكنك تسجيل الدخول لتغيير التفاصيل الخاصة بك أو حذف حسابك، ولكن لا يمكنك الوصول إلى معظم الوظائف حتى تتم الموافقة على حسابك. إذا تم رفض طلبك، سيتم إزالة بياناتك، لذلك لن يكون هناك أي إجراء آخر مطلوب منك. إذا لم يكن هذا أنت، يرجى تجاهل هذا البريد الإلكتروني.
-        extra_html: ندعوك إلى الإطلاع على <a href="%{terms_path}">القواعد الخاصة بمثيل الخادوم هذا</a> and <a href="%{policy_path}">و شروط الخدمة الخاصة بنا</a>.
-        subject: 'ماستدون: تعليمات التأكيد لمثيل الخادوم %{instance}'
+        extra_html: ندعوك إلى الإطلاع على <a href="%{terms_path}">القواعد الخاصة</a> بمثيل الخادوم هذا و <a href="%{policy_path}">شروط الخدمة</a> الخاصة بنا.
+        subject: 'ماستدون: تعليمات التأكيد لمثيل الخادم %{instance}'
         title: للتحقق من عنوان البريد الإلكتروني
       email_changed:
         explanation: 'لقد تم تغيير عنوان البريد الإلكتروني الخاص بحسابك إلى:'
-        extra: إن لم تقم شخصيًا بتعديل عنوان بريدك الإلكتروني ، ذلك يعني أنّ شخصا آخر قد نَفِذَ إلى حسابك. فالرجاء قم بتعديل كلمتك السرية في الحال أو قم بالإتصال بمدير مثيل الخادوم إن كنت غير قادر على استعمال حسابك.
+        extra: إن لم تقم شخصيًا بتعديل عنوان بريدك الإلكتروني ، ذلك يعني أنّ شخصا آخر قد نَفِذَ إلى حسابك. فالرجاء قم بتعديل كلمتك السرية في الحال أو قم بالإتصال بمدير مثيل الخادم إن كنت غير قادر على استعمال حسابك.
         subject: 'ماستدون: تم استبدال عنوان بريدك الإلكتروني'
         title: عنوان البريد الإلكتروني الجديد
       password_change:
         explanation: تم تغيير كلمة السر الخاصة بحسابك.
-        extra: إن لم تقم شخصيًا بتعديل كلمتك السرية، ذلك يعني أنّ شخصا آخر قد سيطر على حسابك. فالرجاء قم بتعديل كلمتك السرية في الحال أو قم بالاتصال بمدير مثيل الخادوم إن كنت غير قادر على استعمال حسابك.
+        extra: إن لم تقم شخصيًا بتعديل كلمتك السرية، ذلك يعني أنّ شخصا آخر قد سيطر على حسابك. فالرجاء قم بتعديل كلمتك السرية في الحال أو قم بالاتصال بمدير مثيل الخادم إن كنت غير قادر على استعمال حسابك.
         subject: 'ماستدون: تم تغيير كلمة المرور'
         title: تم تغيير كلمة السر
       reconfirmation_instructions:
diff --git a/config/locales/devise.ast.yml b/config/locales/devise.ast.yml
index a0bebf98d..b007f4ae0 100644
--- a/config/locales/devise.ast.yml
+++ b/config/locales/devise.ast.yml
@@ -2,13 +2,13 @@
 ast:
   devise:
     confirmations:
-      confirmed: La direición de corréu confirmóse correutamente.
-      send_instructions: Nunos minutos, vas recibir un corréu coles instrucciones pa cómo confirmar la direición de corréu. Comprueba la carpeta Puxarra si nun lu recibiesti.
-      send_paranoid_instructions: Si la direición de corréu esiste na nuesa base de datos, nunos minutos vas recibir un corréu coles instrucciones pa cómo confirmala. Comprueba la carpeta Puxarra si nun lu recibiesti.
+      confirmed: La direición de corréu electrónicu confirmóse correutamente.
+      send_instructions: Nunos minutos vas recibir un mensaxe coles instrucciones pa saber cómo confirmar la direición de corréu electrónicu. Revisa la carpeta Puxarra si nun recibiesti esti mensaxe.
+      send_paranoid_instructions: Si la direición de corréu electrónicu esiste na nuesa base de datos, nunos minutos vas recibir un mensaxe coles instrucciones pa saber cómo confirmala. Revisa la carpeta Puxarra si nun recibiesti esti mensaxe.
     failure:
       already_authenticated: Xá aniciesti la sesión.
-      inactive: Entá nun s'activó la cuenta.
-      last_attempt: Tienes un intentu más enantes de bloquiar la cuenta.
+      inactive: La cuenta entá nun s'activó.
+      last_attempt: Quédate un intentu más enantes de bloquiar la cuenta.
       locked: La cuenta ta bloquiada.
       pending: La cuenta sigue en revisión.
       timeout: La sesión caducó. Volvi aniciala pa siguir.
@@ -16,50 +16,84 @@ ast:
       unconfirmed: Tienes de confirmar la direición de corréu electrónicu enantes de siguir.
     mailer:
       confirmation_instructions:
-        explanation: Creesti una cuenta en %{host} con esta direición de corréu. Tas a un calcu d'activala. Si nun fuisti tu, inora esti corréu.
-        extra_html: Revisa tamién <a href="%{terms_path}">les regles del sirvidor</a> y <a href="%{policy_path}">los nuesos términos del serviciu</a>.
+        explanation: Creesti una cuenta en %{host} con esta direición de corréu electrónicu ya tas a un calcu d'activala. Si nun fixesti esta aición, inora esti mensaxe.
+        explanation_when_pending: Solicitesti una invitación a %{host} con esta direición de corréu electrónicu. Namás que confirmes la direición de corréu electrónicu, vamos revisar la solicitú. Entrín ya non, pues aniciar la sesión pa camudar los detalles o desaniciar la cuenta, mas nun pues acceder a la mayoría de funciones hasta que la cuenta nun tea aprobada. Si se refuga la solicitú, nun ye necesario que faigas nada más o si, per otra parte, tu nun fixesti esta aición, inora esti mensaxe.
+        extra_html: Revisa tamién <a href="%{terms_path}">les regles del sirvidor</a> ya <a href="%{policy_path}">los nuesos términos del serviciu</a>.
+        subject: 'Mastodon: instrucciones de confirmación de «%{instance}»'
       email_changed:
-        explanation: 'La direición de corréu de la cuenta camudó a:'
-        subject: 'Mastodón: Camudó la direición de corréu'
-        title: Direición nueva de corréu
+        explanation: 'La direición de corréu electrónicu de la cuenta camudó a:'
+        extra: Si nun camudesti la direición de corréu electrónicu, ye probable que daquién accediere a la cuenta. Camuda la contraseña agora mesmo o ponte en contautu cola alministración del sirvidor si nun yes a acceder a la cuenta.
+        subject: 'Mastodón: la direición de corréu electrónicu camudó'
+        title: Direición de corréu electrónicu nueva
       password_change:
-        explanation: Camudó la contraseña de la cuenta.
+        explanation: La contraseña de la cuenta camudó.
         extra: Si nun camudesti la contraseña, ye probable que daquién accediere a la cuenta. Camuda la contraseña agora mesmo o ponte en contautu cola alministración del sirvidor si nun yes a acceder a la cuenta.
-        subject: 'Mastodon: La contraseña camudó'
+        subject: 'Mastodon: la contraseña camudó'
+      reconfirmation_instructions:
+        explanation: Confirma la direición nueva pa camudar la direición de corréu electrónicu.
+        extra: Si tu nun aniciesti esti cambéu, inora esti mensaxe. La direición de corréu electrónicu de la cuenta de Mastodon nun va camudar hasta que nun accedas al enllaz d'arriba.
+        subject: 'Mastodon: confirmación de la direición de corréu electrónicu de «%{instance}»'
+        title: Verificar la direición de corréu electrónicu
       reset_password_instructions:
-        explanation: Solicitesti una contraseña nueva pa la cuenta.
-        extra: Si nun solicitesti esto, inora esti corréu. La contraseña nun va camudar hasta que nun accedas al enllaz d'enriba y crees una nueva.
-        subject: 'Mastodon: Instrucciones pa reafitar la contraseña'
+        action: Camudar la contraseña
+        explanation: Solicitesti una contraseña nueva pa la to cuenta.
+        extra: Si nun solicitesti esta aición, inora esti mensaxe. La contraseña nun va camudar hasta que nun accedas al enllaz d'arriba ya crees una.
+        subject: 'Mastodon: instrucciones pa camudar la contraseña'
+        title: Cambéu de la contaseña
       two_factor_disabled:
+        explanation: Desactivóse l'autenticación en dos pasos na cuenta. Agora ye posible aniciar la sesión cola direición de corréu electrónicu ya la contraseña.
         subject: 'Mastodon: desactivóse l''autenticación en dos pasos'
+        title: Autenticación de dos pasos activada
       two_factor_enabled:
+        explanation: Activóse l'autenticación en dos pasos na cuenta. Agora los pases que xenere l'aplicación TOTP empareyada son obligatorios p'aniciar la sesión.
         subject: 'Mastodon: activóse l''autenticación en dos pasos'
+        title: Autenticación de dos pasos desactivada
       two_factor_recovery_codes_changed:
-        subject: 'Mastodon: Rexeneráronse los códigos de l''autenticación en dos pasos'
+        explanation: Invalidáronse los códigos de recuperación anteriores ya xeneráronse otros nuevos.
+        subject: 'Mastodon: volvieron xenerase los códigos de recuperación de l''autenticación en dos pasos'
       unlock_instructions:
-        subject: 'Mastodon: Instrucciones de desbloquéu'
+        subject: 'Mastodon: instrucciones de desbloquéu'
+      webauthn_credential:
+        added:
+          explanation: Amestóse la llave de seguranza siguiente a la cuenta
+          subject: 'Mastodon: llave de seguranza nueva'
+          title: Amestóse una llave de seguranza nueva
+        deleted:
+          title: Desanicióse una de les to llaves de seguranza
+      webauthn_disabled:
+        explanation: Desactivóse l'autenticación con llaves de seguranza na cuenta. Agora namás ye posible aniciar la sesión col pase xeneráu pola aplicación TOTP empareyada.
+        subject: 'Mastodon: desactivóse l''autenticación con llaves de seguranza'
+        title: Llaves de seguranza desactivaes
+      webauthn_enabled:
+        explanation: Activóse l'autenticación con llaves de seguranza na cuenta. Agora pues usar la llave p'aniciar la sesión.
+        subject: 'Mastodon: activóse l''autenticación con llaves de seguranza'
+        title: Llaves de seguranza activaes
     passwords:
-      send_instructions: Si la direición de corréu esiste na base de datos, nunos minutos vas recibir un enllaz pa recuperar la contraseña a esi corréu. Comprueba la carpeta Puxarra si nun lu recibiesti.
-      send_paranoid_instructions: Si la direición de corréu esiste na base de datos, nunos minutos vas recibir un enllaz pa recuperar la contraseña a esi corréu. Comprueba la carpeta Puxarra si nun lu recibiesti.
-      updated_not_active: La contraseña camudó con correutamente.
+      send_instructions: Si la direición de corréu electrónicu esiste na nuesa base de datos, nunos minutos vas recibir un enllaz pa recuperar la contraseña. Revisa la carpeta Puxarra si nun recibiesti esti mensaxe.
+      send_paranoid_instructions: Si la direición de corréu electrónicu esiste na nuesa base de datos, nunos minutos vas recibir un enllaz pa recuperar la contraseña. Revisa la carpeta Puxarra si nun recibiesti esti mensaxe.
+      updated: La contraseña camudó correutamente. Xá aniciesti la sesión.
+      updated_not_active: La contraseña camudó correutamente.
     registrations:
+      destroyed: "¡Ta llueu! La cuenta anulóse correutamente. Esperamos volver vete pronto."
       signed_up: "¡Afáyate! Rexistréstite correutamente."
       signed_up_but_inactive: Rexistréstite correutamente. Por embargu, nun se pudo aniciar la sesión porque la cuenta entá nun s'activó.
       signed_up_but_locked: Rexistréstite correutamente. Por embargu, nun se pudo aniciar la sesión porque la cuenta ta bloquiada.
-      signed_up_but_unconfirmed: Unvióse un mensaxe de confirmación a la direición de corréu. Sigui l'enllaz p'activar la cuenta. Comprueba la carpeta Puxarra si nun recibiesti esti corréu.
+      signed_up_but_pending: Unvióse un mensaxe a la direición de corréu electrónicu que contién un enllaz de confirmación. Darréu de calcar nel enllaz, vamos revisar la solicitú ya si s'aprueba, avisámoste.
+      signed_up_but_unconfirmed: Unvióse un mensaxe de confirmación a la to direición de corréu electrónicu. Sigui l'enllaz p'activar la cuenta ya revisa la carpeta Puxarra si nun recibiesti esti mensaxe.
+      update_needs_confirmation: Anovesti la cuenta correutamente, mas tenemos de verificar la direición de corréu electrónicu nueva. Revisa'l to corréu electrónicu ya sigui l'enllaz de confirmación pa confirmar esta direición. Si nun recibiesti'l mensaxe, revisa la carpeta Puxarra.
       updated: La cuenta anovóse correutamente.
     sessions:
       already_signed_out: Zarresti la sesión correutamente.
       signed_in: Aniciesti la sesión correutamente.
       signed_out: Zarresti la sesión correutamente.
     unlocks:
-      send_instructions: Nunos minutos vas recibir un corréu coles instrucciones pa cómo desbloquiar la cuenta. Comprueba la carpeta Puxarra si nun lu recibiesti.
-      send_paranoid_instructions: Si esiste la cuenta, nun momentu vas recibir un corréu coles instrucciones pa cómo desbloquiala. Comprueba la carpeta Puxarra si nun recibiesti esti corréu.
+      send_instructions: Nunos minutos vas recibir un mensaxe coles instrucciones pa saber cómo desbloquiar la cuenta. Revisa la carpeta Puxarra si nun recibiesti esti mensaxe.
+      send_paranoid_instructions: Si esiste la cuenta, nun momentu vas recibir un mensaxe coles instrucciones pa saber cómo desbloquiala. Revisa la carpeta Puxarra si nun recibiesti esti mensaxe.
       unlocked: La cuenta desbloquióse correutamente. Anicia la sesión pa siguir.
   errors:
     messages:
-      already_confirmed: yá se confirmó, volvi aniciar sesión
+      already_confirmed: xá se confirmó, prueba a aniciar la sesión
       not_found: nun s'alcontró
       not_saved:
-        one: '1 fallu torgó que %{resource} se guardare:'
-        other: "%{count} fallos torgaron que %{resource} se guardaren:"
+        one: '1 error torgó que «%{resource}» se guardare:'
+        other: "%{count} errores torgaron que «%{resource}» se guardaren:"
diff --git a/config/locales/devise.be.yml b/config/locales/devise.be.yml
new file mode 100644
index 000000000..d9872b516
--- /dev/null
+++ b/config/locales/devise.be.yml
@@ -0,0 +1,117 @@
+---
+be:
+  devise:
+    confirmations:
+      confirmed: Адрас вашай электроннай пошты паспяхова пацверджаны.
+      send_instructions: Цягам некалькіх хвілін вы атрымаеце ліст з інструкцыямі, каб пацвердзіць вашую электронную пошту. Калі ласка, зазірніце ў папку са спамам, калі не знойдзеце ліст.
+      send_paranoid_instructions: Калі адрас вашай электроннай пошты існуе ў нашай базе дадзеных, цягам некалькіх хвілін вы атрымаеце ліст з інструкцыямі, каб пацвердзіць вашую электронную пошту. Калі ласка, зазірніце ў папку са спамам, калі не знойдзеце ліст.
+    failure:
+      already_authenticated: Вы ўжо ўвайшлі.
+      inactive: Ваш уліковы запіс яшчэ не актываваны.
+      invalid: Няправільны %{authentication_keys} або пароль.
+      last_attempt: У вас ёсць яшчэ адна спроба, перш чым ваш рахунак будзе заблакаваны
+      locked: Ваш уліковы запіс заблакіраваны.
+      not_found_in_database: Няправільны %{authentication_keys} або пароль.
+      pending: Ваш уліковы запіс яшчэ разглядаецца.
+      timeout: Ваш сеанс скончыўся. Каб працягнуць, увайдзіце яшчэ раз.
+      unauthenticated: Вам патрэбна зайсьці альбо зарэгістравацца, каб працягнуць
+      unconfirmed: Вы павінны пацвердзіць свой адрас электроннай пошты, перш чым працягнуць
+    mailer:
+      confirmation_instructions:
+        action: Пацвердзіце адрас электроннай пошты
+        action_with_app: Пацвердзіць і вярнуцца да %{app}
+        explanation: Вы стварылі ўліковы запіс на %{host} з гэтым адрасам электроннай пошты. Вам спатрэбіцца ўсяго адзін клік, каб пацвердзіць яго. Калі гэта былі не вы, то проста праігнаруйце гэты ліст.
+        explanation_when_pending: Вы падалі заяўку на запрашэнне на %{host} з гэтым адрасам электроннай пошты. Як толькі вы пацвердзіце свой адрас электроннай пошты, мы разгледзім вашу заяўку. Вы можаце ўвайсці, каб змяніць свае дадзеныя або выдаліць свой уліковы запіс, але вы не можаце атрымаць доступ да большасці функцый, пакуль ваш уліковы запіс не будзе зацверджаны. Калі ваша заяўка будзе адхілена, вашы даныя будуць выдалены, таму ад вас не спатрэбіцца ніякіх дадатковых дзеянняў. Калі гэта былі не вы, ігнаруйце гэты ліст
+        extra_html: Таксама азнаёмцеся з <a href="%{terms_path}">правіламі сервера</a> і <a href="%{policy_path}">нашымі ўмовамі абслугоўвання</a>.
+        subject: 'Mastodon: Інструкцыі па пацвярджэнні для %{instance}'
+        title: Праверце адрас электроннай пошты
+      email_changed:
+        explanation: Адрас электроннай пошты для вашага ўліковага запісу будзе зменены на
+        extra: Калі вы не змянялі сваю электронную пошту, хутчэй за ўсё, нехта атрымаў доступ да вашага ўліковага запісу. Калі ласка, неадкладна змяніце свой пароль або звярніцеся да адміністратара сервера, калі вы заблакаваны з вашага ўліковага запісу
+        subject: 'Mastodon: адрас электроннай пошты зменены'
+        title: Новы адрас электроннай пошты
+      password_change:
+        explanation: Пароль вашага акаўнту быў зменены.
+        extra: Калі вы не змянялі свой пароль, верагодна, нехта атрымаў доступ да вашага ўліковага запісу. Калі ласка, неадкладна змяніце свой пароль або звярніцеся да адміністратара сервера, калі вы заблакаваны з вашага ўліковага запісу
+        subject: 'Mastodon: пароль зменены'
+        title: Пароль зменены
+      reconfirmation_instructions:
+        explanation: Пацвердзіце, каб змяніць адрас вашай электроннай пошты.
+        extra: Калі гэтыя змены не былі зроблены вамі, ігнаруйце гэты ліст. Адрас электроннай пошты для акаўнту Mastodon не будзе зменены, пакуль вы не пяройдзеце па спасылцы вышэй.
+        subject: 'Mastodon: пацвердзіце электронную пошту для %{instance}'
+        title: Пацвердзіце адрас электроннай пошты
+      reset_password_instructions:
+        action: Змяніць пароль
+        explanation: Запыт новага пароля для вашага акаўнту.
+        extra: Калі вы не рабілі такога запыту, калі ласка, ігнаруйце гэты ліст. Ваш пароль не будзе зменены, пакуль вы не пяройдзеце па спасылцы вышэй і не створыце новы.
+        subject: 'Mastodon: Інструкцыі па скіданню пароля'
+        title: Скіданне пароля
+      two_factor_disabled:
+        explanation: Двухфактарная аўтэнтыфікацыя на вашым акаўнце была адключана. Цяпер для ўваходу патрэбны толькі электронная пошта і пароль.
+        subject: 'Mastodon: двухфактарная аўтэнтыфікацыя адключана'
+        title: двухэтапнае спраўджанне адключана
+      two_factor_enabled:
+        explanation: Двухфактарная аўтэнтыфікацыя на вашым акаўнце была ўключана. Цяпер для ўваходу ў сістэму патрэбны токен, згенераваны даданай TOTP праграмай.
+        subject: 'Mastodon: двухфактарная аўтэнтыфікацыя ўключана'
+        title: двухэтапнае спраўджанне уключана
+      two_factor_recovery_codes_changed:
+        explanation: Папярэднія коды аднаўлення былі ануляваны і створаны новыя.
+        subject: 'Mastodon: створаны новыя коды аднаўлення'
+        title: 2FA коды аднаўлення былі зменены
+      unlock_instructions:
+        subject: 'Mastodon: інструкцыя па разблакаванні'
+      webauthn_credential:
+        added:
+          explanation: Наступны ключ бяспекі быў дададзены ў ваш уліковы запіс
+          subject: 'Mastodon: новы ключ бяспекі'
+          title: Быў дададзены новы ключ бяспекі
+        deleted:
+          explanation: Наступны ключ бяспекі быў выдалены з вашага ўліковага запісу
+          subject: 'Mastodon: ключ бяспекі выдалены'
+          title: Адзін з вашых ключоў бяспекі быў выдалены
+      webauthn_disabled:
+        explanation: Аўтэнтыфікацыя з дапамогай ключоў бяспекі была адключана для вашага ўліковага запісу. Уваход цяпер магчымы толькі з токенам, згенераваным спалучаным TOTP прыкладаннем.
+        subject: 'Mastodon: Аўтэнтыфікацыя з дапамогай ключоў бяспекі адключана'
+        title: Ключы бяспекі адключаны
+      webauthn_enabled:
+        explanation: Аўтэнтыфікацыя праз ключ бяспекі была ўключана для вашага ўліковага запісу. Цяпер вы можаце выкарыстоўваць ваш ключ бяспекі для ўваходу.
+        subject: 'Mastodon: Аўтэнтыфікацыя праз ключ бяспекі была ўключана'
+        title: Ключы бяспекі ўключаны
+    omniauth_callbacks:
+      failure: Немагчыма аўтэнтыфікаваць вас з %{kind}, таму што “%{reason}”.
+      success: Паспяховая аўтэнтыфікацыя з %{kind} уліковага запісу.
+    passwords:
+      no_token: Вы не можаце атрымаць доступ да гэтай старонкі не з ліста аднаўлення пароля. Калі вы ўсе ж такі перайшлі па спасылцы ў лісце аднаўлення пароля, упэўніцеся, што яна поўная.
+      send_instructions: Калі ваш электроны адрас існуе ў нашай базе дадзеных, вы атрымаеце спасылку для аднаўлення пароля на свой электроны адрас праз пару хвілін. Калі ласка, праверце вашу тэчку са спамам, калі вы не атрымалі такі ліст.
+      send_paranoid_instructions: Калі ваш электроны адрас існуе ў нашай базе дадзеных, вы атрымаеце спасылку для аднаўлення пароля на свой электроны адрас праз пару хвілін. Калі ласка, праверце вашу тэчку са спамам, калі вы не атрымалі такі ліст.
+      updated: Ваш пароль быў паспяхова зменены. Вы ўвайшлі ў сістэму.
+      updated_not_active: Ваш пароль быў паспяхова зменены.
+    registrations:
+      destroyed: Пакуль! Ваш уліковы запіс быў паспяхова выдалены. Мы спадзяваемся хутка ўбачыць вас зноў.
+      signed_up: Вітаем! Вы былі паспяхова зарэгістраваны.
+      signed_up_but_inactive: Вы паспяхова зарэгістраваліся. Аднак, мы не змаглі вас аўтарызаваць, таму што ваш уліковы запіс пакуль што не актывізаваны.
+      signed_up_but_locked: Вы паспяхова зарэгістраваліся. Аднак, мы не змаглі вас аўтарызаваць, таму што ваш уліковы запіс заблакаваны.
+      signed_up_but_pending: Ліст са спасылкай для пацверджання быў высланы на вашу электронную пошту. Пасля таго, як вы націсніце на спасылку, мы разгледзім вашу заяўку. Калі яна будзе ўхвалена, вы будзеце праінфармаваны.
+      signed_up_but_unconfirmed: Ліст са спасылкай для пацверджання быў высланы на вашу электронную пошту. Калі ласка, перайдзіце па спасылцы для актывацыі вашага ўліковага запісу. Праверце вашу тэчку са спамам, калі вы не атрымалі такі ліст.
+      update_needs_confirmation: Вы паспяхова абнавілі свой уліковы запіс, аднак, нам неабходна пацвердзіць ваш новы адрас электроннай пошты. Калі ласка, праверце вашу пошту і перайдзіце па спасылцы для пацверджання вашага новага адраса электроннай пошты. Праверце тэчку са спамам, калі вы не атрымалі такі ліст.
+      updated: Ваш уліковы запіс быў паспяхова абноўлены.
+    sessions:
+      already_signed_out: Выхад паспяховы.
+      signed_in: Уваход паспяховы.
+      signed_out: Выхад паспяховы.
+    unlocks:
+      send_instructions: Вы атрымаеце ліст з інструкцыямі па разблакаванні вашага ўліковага запісу цягам некалькіх хвілін. Праверце тэчку са спамам, калі вы не атрымалі такі ліст.
+      send_paranoid_instructions: Калі ваш уліковы запіс існуе, вы атрымаеце ліст з інструкцыямі па яго разблакаванні цягам некалькіх хвілін. Праверце тэчку са спамам, калі вы не атрымалі такі ліст.
+      unlocked: Ваш уліковы запіс быў паспяхова разблакаваны. Калі ласка, увайдзіце, каб працягнуць
+  errors:
+    messages:
+      already_confirmed: ужо пацверджана, паспрабуйце ўвайсці
+      confirmation_period_expired: трэба пацвердзіць на працягу %{period}, запытайце новы
+      expired: скончыўся, запытайце новы
+      not_found: Не знойдзена
+      not_locked: Не быў заблакаваны
+      not_saved:
+        few: "%{count} памылкі перашкаджаюць захаваць гэты %{resource}:"
+        many: "%{count} памылак не даюць захаваць гэты %{resource}:"
+        one: '1 памылка не дае захаваць гэты %{resource}:'
+        other: "%{count} памылак перашкаджаюць захаваць гэты %{resource}:"
diff --git a/config/locales/devise.bg.yml b/config/locales/devise.bg.yml
index 515afa037..45e11ccd6 100644
--- a/config/locales/devise.bg.yml
+++ b/config/locales/devise.bg.yml
@@ -6,7 +6,7 @@ bg:
       send_instructions: Ще получите е-писмо с указания как да потвърдите адреса на имейла си за няколко минути. Проверете си папката за спам, ако не сте получили това е-писмо.
       send_paranoid_instructions: Ако адресът на имейл ви съществува в базата ни данни, ще получите е-писмо с указания как да потвърдите адреса на имейла си за няколко минути. Проверете си папката за спам, ако не сте получили това е-писмо.
     failure:
-      already_authenticated: Вече си вътре в профила си.
+      already_authenticated: Вече сте влезли.
       inactive: Акаунтът ви още не е задействан.
       invalid: Невалиден %{authentication_keys} или парола.
       last_attempt: Разполагате с още един опит преди акаунтът ви да се заключи.
@@ -15,16 +15,16 @@ bg:
       pending: Вашият акаунт все още е в процес на проверка.
       timeout: Сесията ви изтече. Влезте пак, за да продължите.
       unauthenticated: Преди да продължите, трябва да влезете или да се регистрирате.
-      unconfirmed: Преди да продължите, трябва да потвърдиш адреса на имейла си.
+      unconfirmed: Преди да продължите, трябва да потвърдите имейл адреса си.
     mailer:
       confirmation_instructions:
-        action: Потвърдете имейл адреса
+        action: Потвърдете своя имейл адрес
         action_with_app: Потвърдете и се върнете към %{app}
         explanation: Създали сте акаунт на %{host} с този имейл адрес. Само на едно щракване разстояние сте от активирането му. Ако това не сте били вие, моля, игнорирайте този имейл.
         explanation_when_pending: Кандидатствахте за покана до %{host} с този имейл адрес. След като потвърдите своя имейл адрес, ние ще разгледаме вашето заявление. Можете да влезете, за да промените данните си или да изтриете акаунта си, но нямате достъп до повечето функции, докато акаунтът ви не бъде одобрен. Ако вашето заявление бъде отхвърлено, вашите данни ще бъдат премахнати, така че няма да се изискват допълнителни действия от вас. Ако това не сте били вие, моля, игнорирайте този имейл.
         extra_html: Моля, проверете <a href="%{terms_path}">правилата на сървъра</a> и <a href="%{policy_path}">нашите условия за обслужване</a>.
         subject: 'Mastodon: Указания за потвърждаване за %{instance}'
-        title: Потвърдете адреса на имейла
+        title: Потвърдете своя имейл адрес
       email_changed:
         explanation: 'Имейл адресът на вашия акаунт се променя на:'
         extra: Ако не сте сменили имейла си, вероятно някой е получил достъп до вашия акаунт. Моля, сменете паролата си незабавно или се свържете с администратора на сървъра, ако сте блокирани от акаунта си.
@@ -37,25 +37,25 @@ bg:
         title: Паролата е променена
       reconfirmation_instructions:
         explanation: Потвърдете новия адрес, за да промените имейла си.
-        extra: Ако тази промяна не е инициирана от вас, моля, игнорирайте този имейл. Имейл адресът за акаунта на Mastodon няма да се промени, докато не влезете във връзката по-горе.
+        extra: Ако тази промяна не е инициирана от вас, моля, игнорирайте този имейл. Имейл адресът за акаунта на Mastodon няма да се промени, докато не влезете в линка по-горе.
         subject: 'Mastodon: Потвърдете имейла за %{instance}'
-        title: Потвърдете адреса на имейла
+        title: Потвърдете своя имейл адрес
       reset_password_instructions:
         action: Промяна на парола
         explanation: Поискахте нова парола за акаунта си.
-        extra: Ако не сте поискали това, моля, игнорирайте този имейл. Паролата ви няма да се промени, докато не влезете във връзката по-горе и не създадете нова.
+        extra: Ако не сте поискали това, моля, игнорирайте този имейл. Паролата ви няма да се промени, докато не влезете в линка по-горе и не създадете нова.
         subject: 'Mastodon: Указания за задаване на нова парола'
         title: Нулиране на парола
       two_factor_disabled:
         explanation: Двуфакторното удостоверяване за вашия акаунт е деактивирано. Влизането вече е възможно, като се използват само имейл адрес и парола.
         subject: 'Mastodon: Двуфакторното удостоверяване е деактивирано'
-        title: Двуфакторното изключено
+        title: 2FA деактивирано
       two_factor_enabled:
-        explanation: За вашия акаунт е активирано двуфакторно удостоверяване. За влизане ще е необходим ключ, генериран от сдвоеното приложение TOTP.
+        explanation: За вашия акаунт е активирано двуфакторно удостоверяване. За влизане ще е необходим ключ, генериран от сдвоеното приложение за TOTP.
         subject: 'Mastodon: Двуфакторното удостоверяване е активирано'
-        title: Двуфакторно удостоверяване включено
+        title: 2FA активирано
       two_factor_recovery_codes_changed:
-        explanation: Предишните кодове за възстановяване са обезсилени и се генерират нови.
+        explanation: Предишните кодове за възстановяване са анулирани и и се генерират нови.
         subject: 'Mastodon: Възстановени са двуфакторни кодове за възстановяване'
         title: 2FA кодове за възстановяване са променени
       unlock_instructions:
@@ -70,7 +70,7 @@ bg:
           subject: 'Mastodon: Ключът за сигурност е изтрит'
           title: Един от вашите ключове за сигурност е изтрит
       webauthn_disabled:
-        explanation: Удостоверяването с ключове за сигурност е деактивирано за вашия акаунт. Влизането вече е възможно, използвайки само ключа, генериран от сдвоеното приложение TOTP.
+        explanation: Удостоверяването с ключове за сигурност е деактивирано за вашия акаунт. Влизането вече е възможно, използвайки само ключа, генериран от сдвоеното приложение за TOTP.
         subject: 'Mastodon: Удостоверяването с ключове за сигурност е деактивирано'
         title: Ключовете за сигурност са деактивирани
       webauthn_enabled:
@@ -82,18 +82,18 @@ bg:
       success: Успешно упълномощаване чрез %{kind} профил.
     passwords:
       no_token: Може да достъпваш тази страница само от имейл за промяна на паролата. Ако тази страница е отворена от такъв имейл, увери се, че използваш целия URL-адрес, който сме ти изпратили.
-      send_instructions: Ще получиш писмо с инструкции как да промениш паролата си до няколко минути.
-      send_paranoid_instructions: Ако твоят имейл адрес съществува в базата ни, ще получиш там инструкции за промяна на своята парола.
+      send_instructions: Ако вашият имейл адрес съществува в нашата база данни, ще получите линк за възстановяване на парола на същия адрес до няколко минути. Моля, проверете спам папката си, ако не сте получили този имейл.
+      send_paranoid_instructions: Ако вашият имейл адрес съществува в нашата база данни, ще получите линк за възстановяване на парола на същия адрес до няколко минути. Моля, проверете спам папката си, ако не сте получили този имейл.
       updated: Паролата ти беше променена успешно. Влизането в профила е успешно.
-      updated_not_active: Паролата ти беше променена успешно.
+      updated_not_active: Паролата ви беше променена успешно.
     registrations:
       destroyed: Довиждане! Вашият акаунт беше успешно изтрит. Надяваме се скоро да ви видим пак.
       signed_up: Добре дошли! Успешно се регистрирахте.
-      signed_up_but_inactive: Регистрирацията ти е успешна. Въпреки това, не можеш да влезеш в профила си, защото той все още не е потвърден.
-      signed_up_but_locked: Регистрирацията ти е успешна. Въпреки това, не можеш да влезеш в профила си, защото той е заключен.
-      signed_up_but_pending: На вашия имейл адрес е изпратено съобщение с връзка за потвърждение. След като щракнете върху връзката, ние ще прегледаме вашето заявление. Ще бъдете уведомени, ако то е одобрено.
-      signed_up_but_unconfirmed: Писмо с връзка за потвърждаване на профила ти беше изпратено на твоя имейл адрес. Моля, отвори връзката, за да активираш своя профил.
-      update_needs_confirmation: Профилът ти е успешно променен, но ние трябва да проверим твоя нов имейл адрес. Моля, провери пощата си и отвори връзката за потвърждаване на новия адрес.
+      signed_up_but_inactive: Регистрирахте се успешно. Въпреки това, не можете да влезете, тъй като акаунтът ви все още не е активиран.
+      signed_up_but_locked: Регистрирахте се успешно. Въпреки това, не можете да влезете, тъй като акаунтът ви е заключен.
+      signed_up_but_pending: На вашия имейл адрес е изпратено съобщение с връзка за потвърждение. След като щракнете върху линка, ние ще прегледаме вашето заявление. Ще бъдете уведомени, ако то е одобрено.
+      signed_up_but_unconfirmed: Писмо с връзка за потвърждаване профила ви беше изпратено на вашия имейл адрес. Моля, последвайте линка, за да активирате своя профил.
+      update_needs_confirmation: Профилът ви е успешно променен, но ние трябва да проверим вашия нов имейл адрес. Моля, проверете пощата си и отворете линка за потвърждаване на новия адрес.
       updated: Профилът ти е успешно променен.
     sessions:
       already_signed_out: Успешно излизане от профила.
diff --git a/config/locales/devise.br.yml b/config/locales/devise.br.yml
index 86c726811..4a16157f8 100644
--- a/config/locales/devise.br.yml
+++ b/config/locales/devise.br.yml
@@ -88,7 +88,7 @@ br:
       updated_not_active: Kemmet eo bet ho ker-tremen ent reizh.
     registrations:
       destroyed: Kenavo! Ho kont a zo bet nullet gant berzh. Emichañs e viot adwelet tuchant.
-      signed_up: Donemat ! Kevreet oc'h.
+      signed_up: Donemat ! Enskrivet oc'h.
       signed_up_but_inactive: Enskrivet oc'h bet gant berzh. N'omp ket evit anavezadenniñ ac'hanoc'h alatao, rak ho kont n'eo ket aotreet c'hoazh.
       signed_up_but_locked: Enskrivet oc'h bet gant berzh. N'omp ket evit anavezadenniñ ac'hanoc'h alatao, rak ho kont a zo prennet.
       signed_up_but_pending: Ur c'hemennad gant ul lec'hienn kadarnaat a zo bet kaset d'ho chomlec'h-postel. Pa vo kliket al lec'hienn ganeoc'h e vo gwiriet hoc'h arload ganeomp. Ur gemennadenn a vo kaset deoc'h hag-eñ eo erbedet ho kont.
diff --git a/config/locales/devise.bs.yml b/config/locales/devise.bs.yml
new file mode 100644
index 000000000..e9e174462
--- /dev/null
+++ b/config/locales/devise.bs.yml
@@ -0,0 +1 @@
+bs:
diff --git a/config/locales/devise.ca.yml b/config/locales/devise.ca.yml
index e15ff7677..3e7745cd0 100644
--- a/config/locales/devise.ca.yml
+++ b/config/locales/devise.ca.yml
@@ -2,11 +2,11 @@
 ca:
   devise:
     confirmations:
-      confirmed: La teva adreça de correu electrònic s'ha confirmat correctament.
-      send_instructions: "En pocs minuts, rebràs un correu electrònic amb instruccions sobre com confirmar l'adreça de correu. \nSi us plau, verifica la teva carpeta de correu brossa si no l'has rebut."
+      confirmed: La teva adreça de correu-e s'ha confirmat correctament.
+      send_instructions: "En pocs minuts rebràs un correu-e amb instruccions sobre com confirmar l'adreça de correu. \nSi us plau, verifica la carpeta de la brossa si no l'has rebut."
       send_paranoid_instructions: |-
-        Si l'adreça de correu electrònic ja existeix a la nostra base de dades, rebràs un correu electrònic amb instruccions sobre com confirmar-la.
-        Si us plau, verifica la teva carpeta de correu brossa si no has rebut el correu.
+        Si l'adreça de correu-e ja existeix a la nostra base de dades rebràs un correu amb instruccions sobre com confirmar-la.
+        Si us plau, verifica la carpeta de la brossa si no l'has rebut.
     failure:
       already_authenticated: Ja estàs registrat.
       inactive: El teu compte encara no s'ha activat.
@@ -15,7 +15,7 @@ ca:
       locked: El compte s'ha bloquejat.
       not_found_in_database: "%{authentication_keys} o la contrasenya no són vàlids."
       pending: El teu compte encara està en revisió.
-      timeout: La sessió ha expirat. Torna a iniciar la sessió per continuar.
+      timeout: La sessió ha expirat. Torna a iniciar la sessió per a continuar.
       unauthenticated: Cal iniciar sessió o registrar-se abans de continuar.
       unconfirmed: Has de confirmar l'adreça de correu electrònic abans de continuar.
     mailer:
@@ -53,7 +53,7 @@ ca:
         subject: 'Mastodon: autenticació de doble factor desactivada'
         title: AF2 desactivat
       two_factor_enabled:
-        explanation: L'autenticació de doble factor s'ha habilitat per al teu compte. Per iniciar la sessió, es requerirà un token generat per l'aplicació TOTP que hagis emparellat.
+        explanation: L'autenticació de doble factor s'ha habilitat per al teu compte. Per a iniciar la sessió, es requerirà un token generat per l'aplicació TOTP que hagis emparellat.
         subject: 'Mastodon: autenticació de doble factor activada'
         title: AF2 activat
       two_factor_recovery_codes_changed:
@@ -76,7 +76,7 @@ ca:
         subject: 'Mastodon: s''ha desactivat l''autenticació amb claus de seguretat'
         title: Claus de seguretat desactivades
       webauthn_enabled:
-        explanation: S'ha activat l'autenticació amb claus de seguretat. Ja pots usar la teva clau de seguretat per iniciar sessió.
+        explanation: S'ha activat l'autenticació amb claus de seguretat. Ja pots usar la teva clau de seguretat per a iniciar sessió.
         subject: 'Mastodon: autenticació amb clau de seguretat activada'
         title: Claus de seguretat activades
     omniauth_callbacks:
@@ -92,7 +92,7 @@ ca:
       destroyed: Adéu! el compte s'ha cancel·lat amb èxit. Desitgem veure't de nou ben aviat.
       signed_up: Benvingut! T'has registrat amb èxit.
       signed_up_but_inactive: T´has registrat amb èxit. No obstant, no podem iniciar la teva sessió perquè el teu compte encara no s'ha activat.
-      signed_up_but_locked: T´has registrat amb èxit. No obstant, no podem iniciar la teva sessió perquè el teu compte està bloquejat.
+      signed_up_but_locked: T'has registrat amb èxit. Això no obstant, no podem iniciar la sessió perquè el teu compte està blocat.
       signed_up_but_pending: S'ha enviat un missatge amb un enllaç de confirmació a la teva adreça de correu electrònic. Després que hagis fet clic a l'enllaç, revisarem la sol·licitud. Se't notificarà si s'aprova.
       signed_up_but_unconfirmed: S'ha enviat per correu electrònic un missatge amb un enllaç de confirmació. Fes clic a l'enllaç per a activar el compte. Si us plau verifica la teva carpeta de correu brossa si no reps aquest correu.
       update_needs_confirmation: Has actualitzat el teu compte amb èxit, però necessitem verificar la teva nova adreça de correu. Si us plau comprova el correu i segueixi l'enllaç per confirmar la nova adreça de correu. Si us plau verifica la teva carpeta de correu brossa si no reps aquest correu.
@@ -107,7 +107,7 @@ ca:
       unlocked: El compte s'ha desbloquejat correctament. Inicia sessió per a continuar.
   errors:
     messages:
-      already_confirmed: ja està confirmat. Intenta d'iniciar sessió
+      already_confirmed: ja està confirmat. Intenta iniciar sessió
       confirmation_period_expired: cal fer la confirmació dins de %{period}, si us plau sol·licita-ho de nou
       expired: ha expirat, si us plau demana'n una altra
       not_found: no s'ha trobat
diff --git a/config/locales/devise.cy.yml b/config/locales/devise.cy.yml
index e5366f8cd..44c09153f 100644
--- a/config/locales/devise.cy.yml
+++ b/config/locales/devise.cy.yml
@@ -2,11 +2,11 @@
 cy:
   devise:
     confirmations:
-      confirmed: Mae eich cyfeiriad e-bost wedi ei gadarnhau yn llwyddiannus.
-      send_instructions: Byddwch yn derbyn e-bost a chyfarwyddiadau am sut i gadarnhau eich cyfeiriad e-bost mewn rhai munudau. Os na dderbynioch chi'r e-bost hwn, edrychwch yn eich ffolder sbam os gwelwch yn dda.
-      send_paranoid_instructions: Os yw eich cyfeiriad e-bost yn bodoli yn ein bas data, byddwch yn derbyn e-bost a chyfarwyddiadau am sut i gadarnhau eich cyfeiriad ebost mewn rhai munudau. Os na dderbynioch chi'r e-bost hwn, edrychwch yn eich ffolder sbam os gwelwch yn dda.
+      confirmed: Mae eich cyfeiriad e-bost wedi'i gadarnhau'n llwyddiannus.
+      send_instructions: Byddwch yn derbyn e-bost a chyfarwyddiadau am sut i gadarnhau eich cyfeiriad e-bost mewn rhai munudau. Os nad ydych wedi derbyn yr e-bost hwn, edrychwch yn eich ffolder sbam, os gwelwch yn dda.
+      send_paranoid_instructions: Os yw eich cyfeiriad e-bost yn bodoli yn ein cronfa ddata, byddwch yn derbyn e-bost gyda chyfarwyddiadau ar sut i gadarnhau eich cyfeiriad e-bost mewn ychydig funudau. Gwiriwch eich ffolder sbam os na dderbynioch yr e-bost hwn.
     failure:
-      already_authenticated: Yr ydych wedi mewngofnodi yn barod.
+      already_authenticated: Rydych chi eisoes wedi mewngofnodi.
       inactive: Nid yw eich cyfrif yn weithredol eto.
       invalid: "%{authentication_keys} neu gyfrinair annilys."
       last_attempt: Mae gennych un cyfle arall cyn i'ch cyfrif gael ei gloi.
@@ -20,35 +20,35 @@ cy:
       confirmation_instructions:
         action: Gwiriwch eich cyfeiriad e-bost
         action_with_app: Cadarnhau a dychwelyd i %{app}
-        explanation: Yr ydych wedi creu cyfrif ar %{host} gyda'r cyfrif e-bost hwn. Dim ond un clic sydd angen i'w wneud yn weithredol. Os nad chi oedd hyn, anwybyddwch yr e-bost hwn os gwelwch yn dda.
-        explanation_when_pending: Rydych wedi gwneud cais am wahoddiad i %{host} gyda'r ebost hyn. Unwaith rydych wedi cadarnhau eich ebost, byddem yn adolygu eich cais. Ni fyddwch yn gallu mewngofnodi tan yr amser hono. Os caiff eich cais ei wrthod, felly nid oes angen unrhyw gweithred pellach o chi. Os nad oeddech wedi gwneud y cais hyn, anwybyddu'r ebost hon, os gwelwch yn dda.
-        extra_html: Gwnewch yn siŵr i edrych ar <a href="%{terms_path}">reolau'r achos</a> a <a href="%{policy_path}">ein telerau gwasanaeth</a>.
-        subject: 'Mastodon: Canllawiau cadarnhau i %{instance}'
+        explanation: Rydych chi wedi creu cyfrif ar %{host} gyda'r cyfeiriad e-bost hwn. Rydych chi un clic i ffwrdd o'i hagor. Os nad chi oedd hwn, anwybyddwch yr e-bost hwn.
+        explanation_when_pending: Gwnaethoch gais am wahoddiad i %{host} gyda'r cyfeiriad e-bost hwn. Unwaith y byddwch yn cadarnhau eich cyfeiriad e-bost, byddwn yn adolygu eich cais. Gallwch fewngofnodi i newid eich manylion neu ddileu eich cyfrif, ond ni allwch gael mynediad i'r rhan fwyaf o'r swyddogaethau nes bod eich cyfrif wedi'i gymeradwyo. Os caiff eich cais ei wrthod, bydd eich data yn cael ei ddileu, felly ni fydd angen unrhyw gamau pellach gennych. Os nad chi oedd hwn, anwybyddwch yr e-bost hwn.
+        extra_html: Edrychwch hefyd ar <a href="%{terms_path}">reolau'r gweinydd</a> <a href="%{policy_path}">a'n telerau gwasanaeth</a> .
+        subject: 'Mastodon: Cyfarwyddiadau cadarnhau ar gyfer %{instance}'
         title: Gwirio cyfeiriad e-bost
       email_changed:
         explanation: 'Mae''r cyfeiriad e-bost ar gyfer eich cyfrif yn cael ei newid i:'
-        extra: Os na wnaethoch chi newid eich e-bost, mae'n debygol fod rhywun wedi cael mynediad i'ch cyfrif. Newidwch eich cyfrinair yn syth os gwelwch yn dda neu cysylltwch a gweinydd yr achos os ydych wedi'ch cloi allan o'ch cyfrif.
-        subject: 'Mastodon: Newidwyd e-bost'
+        extra: Os nad ydych wedi newid eich e-bost, mae'n debygol fod rhywun wedi mewngofnodi i'ch cyfrif. Newidiwch eich cyfrinair cyn gynted â phosib neu gysylltwch â'r gweinyddwyr os ydych wedi cael eich cloi allan o'ch cyfrif.
+        subject: 'Mastodon: E-bost wedi''i newid'
         title: Cyfeiriad e-bost newydd
       password_change:
         explanation: Newidwyd cyfrinair eich cyfrif.
-        extra: Os na wnaethoch chi newid eich e-bost, mae'n debygol fod rhywun wedi cael mynediad i'ch cyfrif. Newidwch eich cyfrinair yn syth os gwelwch yn dda neu cysylltwch a gweinydd yr achos os ydych wedi'ch cloi allan o'ch cyfrif.
-        subject: 'Mastodon: Newidwyd Cyfrinair'
+        extra: Os nad ydych wedi newid eich cyfrinair, mae'n debygol fod rhywun wedi mewngofnodi i'ch cyfrif. Newidiwch eich cyfrinair cyn gynted â phosib neu gysylltwch â'r gweinyddwyr os ydych wedi cael eich cloi allan o'ch cyfrif.
+        subject: 'Mastodon: Cyfrinair wedi''i newid'
         title: Newidwyd cyfrinair
       reconfirmation_instructions:
-        explanation: Cadarnhewch y cyferiad newydd i newid eich e-bost.
-        extra: Os nad chi wnaeth y newid hwn, anwybyddwch yr e-bost hwn os gwelwch yn dda. Ni fydd y cyfeiriad e-bost ar gyfer y cyfrif Mastodon yn newid nes eich bod yn mynd at y ddolen uchod.
-        subject: 'Mastodon: Cadarnhewch e-bost i %{instance}'
+        explanation: Cadarnhewch y cyfeiriad newydd i newid eich e-bost.
+        extra: Os na chychwynnwyd y newid hwn gennych chi, anwybyddwch yr e-bost hwn. Ni fydd cyfeiriad e-bost y cyfrif Mastodon yn newid nes i chi gael mynediad i'r ddolen uchod.
+        subject: 'Mastodon: Cadarnhau e-bost ar gyfer %{instance}'
         title: Gwirio cyfeiriad e-bost
       reset_password_instructions:
         action: Newid cyfrinair
-        explanation: Gofynnoch am gyfrinair newydd i'ch cyfrif.
-        extra: Os na wnaethoch gais am hyn, anwybyddwch yr e-bost hwn os gwelwch yn dda. Ni fydd eich cyfrinair yn newid nes i chi fynd at y ddolen uchod a chreu un newydd.
+        explanation: Fe wnaethoch chi ofyn am gyfrinair newydd ar gyfer eich cyfrif.
+        extra: Os na wnaethoch ofyn am hyn, anwybyddwch yr e-bost hwn. Ni fydd eich cyfrinair yn newid nes i chi gyrchu'r ddolen uchod a chreu un newydd.
         subject: 'Mastodon: Ailosod cyfarwyddiadau cyfrinair'
         title: Ailosod cyfrinair
       two_factor_disabled:
-        explanation: Mae dilysu dau ffactor ar gyfer eich cyfrif wedi'i anablu. Mae mewngofnodi bellach yn bosibl gan ddefnyddio cyfeiriad e-bost a chyfrinair yn unig.
-        subject: 'Mastodon: Dilysu dau ffactor yn anabl'
+        explanation: Mae dilysiad dau ffactor ar gyfer eich cyfrif wedi'i analluogi. Mae modd mewngofnodi nawr gan ddefnyddio cyfeiriad e-bost a chyfrinair yn unig.
+        subject: 'Mastodon: mae dilysu dau ffactor wedi''i alluogi'
         title: Dilysu dau ffactor yn anabl
       two_factor_enabled:
         explanation: Mae dilysu dau ffactor wedi'i alluogi ar gyfer eich cyfrif. Bydd angen tocyn a gynhyrchir gan yr ap TOTP pâr i fewngofnodi.
@@ -60,22 +60,39 @@ cy:
         title: Newidiodd codau adfer 2FA
       unlock_instructions:
         subject: 'Mastodon: Cyfarwyddiadau datgloi'
+      webauthn_credential:
+        added:
+          explanation: Mae'r allwedd ddiogelwch ganlynol wedi'i hychwanegu at eich cyfrif
+          subject: 'Mastodon: Allwedd ddiogelwch newydd'
+          title: Mae allwedd ddiogelwch newydd wedi'i hychwanegu
+        deleted:
+          explanation: Mae'r allwedd ddiogelwch ganlynol wedi'i dileu o'ch cyfrif
+          subject: 'Mastodon: Allwedd ddiogelwch wedi''i dileu'
+          title: Mae un o'ch allweddi diogelwch wedi'i ddileu
+      webauthn_disabled:
+        explanation: Mae dilysu gydag allweddi diogelwch wedi'i analluogi ar gyfer eich cyfrif. Mae mewngofnodi bellach yn bosibl gan ddefnyddio'r tocyn a gynhyrchir gan yr ap TOTP pâr yn unig.
+        subject: 'Mastodon: Dilysiad gydag allweddi diogelwch wedi''i analluogi'
+        title: Allweddi diogelwch wedi'u hanalluogi
+      webauthn_enabled:
+        explanation: Mae dilysiad allwedd diogelwch wedi'i alluogi ar gyfer eich cyfrif. Gellir defnyddio'ch allwedd ddiogelwch nawr ar gyfer mewngofnodi.
+        subject: 'Mastodon: Dilysiad allwedd diogelwch wedi''i alluogi'
+        title: Allweddi diogelwch wedi'u galluogi
     omniauth_callbacks:
       failure: Methu eich dilysu o %{kind} oherwydd "%{reason}".
       success: Dilyswyd yn llwyddiannus o gyfrif %{kind}.
     passwords:
       no_token: Nid oes modd cael mynediad i'r dudalen hon heb ddod drwy e-bost ailosod cyfrinair. Os ydych yn dod o e-bost ailosod cyfrinair, gwnewch yn siŵr y defnyddioch chi'r URL a ddarparwyd yn ei gyfanrwydd.
-      send_instructions: Os yw eich cyfeiriad e-bost yn bresennol yn ein bas data, mi fyddwch yn derbyn dolen yn eich blwch e-bost ymhen cwpl o funudau. Os nad ydych yn derbyn yr e-bost hwn, edrychwch yn eich ffolder spam os gwelwch yn dda.
-      send_paranoid_instructions: Os yw eich cyfeiriad e-bost yn bresennol yn ein bas data, mi fyddwch yn derbyn dolen yn eich blwch e-bost ymhen cwpl o funudau. Os nad ydych yn derbyn yr e-bost hwn, edrychwch yn eich ffolder spam os gwelwch yn dda.
-      updated: Mae eich cyfrinair wedi ei newid yn llwyddiannus. Yr ydych wedi mewngofnodi.
+      send_instructions: Os yw eich cyfeiriad e-bost yn bodoli yn ein cronfa ddata, byddwch yn derbyn dolen adfer cyfrinair yn eich cyfeiriad e-bost mewn ychydig funudau. Gwiriwch eich ffolder sbam os na dderbynioch yr e-bost hwn.
+      send_paranoid_instructions: Os yw eich cyfeiriad e-bost yn bodoli yn ein cronfa ddata, byddwch yn derbyn dolen adfer cyfrinair yn eich cyfeiriad e-bost mewn ychydig funudau. Gwiriwch eich ffolder sbam os na dderbynioch yr e-bost hwn.
+      updated: Mae eich cyfrinair wedi'i newid yn llwyddiannus. Rydych chi bellach wedi mewngofnodi.
       updated_not_active: Mae eich cyfrinair wedi ei newid yn llwyddiannus.
     registrations:
-      destroyed: Hwyl fawr! Mae eich cyfrif wedi ei ganslo'n llwyddiannus. Gobeithiwn eich gweld chi eto'n fuan.
+      destroyed: Hwyl fawr! Mae eich cyfrif wedi ei ddiddymu'n llwyddiannus. Gobeithiwn eich gweld chi eto'n fuan.
       signed_up: Croeso! Rydych wedi cofrestru'n llwyddiannus.
-      signed_up_but_inactive: Yr ydych wedi cofrestru'n llwyddiannus. Fodd bynnag, ni allwn eich mewngofnodi achos nid yw eich cyfrif wedi ei actifadu eto.
-      signed_up_but_locked: Yr ydych wedi cofrestru'n llwyddiannus. Fodd bynnag, ni allwn eich mewngofnodi achos fod eich cyfrif wedi ei gloi.
-      signed_up_but_pending: Mae neges a'ch cysylltiad cadarnhau wedi cael ei hanfon i'ch ebost. Ar ôl i chi ei glicio, byddem yn adolygu eich cais. Byddwch yn derbyn hysbysiad os caiff ei gymeradwyo.
-      signed_up_but_unconfirmed: Mae neges gyda dolen cadarnhau wedi ei anfon i'ch cyfeiriad e-bost. Dilynwch y ddolen er mwyn actifadu eich cyfrif. Edrychwch yn eich ffolder sbam os na dderbynioch chi'r e-bost hwn os gwelwch yn dda.
+      signed_up_but_inactive: Yr ydych wedi cofrestru'n llwyddiannus. Fodd bynnag, ni allwn eich mewngofnodi achos nid yw eich cyfrif wedi ei hagor eto.
+      signed_up_but_locked: Rydych chi wedi cofrestru'n llwyddiannus. Fodd bynnag, ni allem eich mewngofnodi oherwydd bod eich cyfrif wedi'i gloi.
+      signed_up_but_pending: Mae neges gyda dolen cadarnhau wedi'i hanfon i'ch cyfeiriad e-bost. Ar ôl i chi glicio ar y ddolen, byddwn yn adolygu eich cais. Byddwch yn cael gwybod os caiff ei gymeradwyo.
+      signed_up_but_unconfirmed: Mae neges gyda dolen cadarnhau wedi ei anfon i'ch cyfeiriad e-bost. Dilynwch y ddolen er mwyn agor eich cyfrif. Edrychwch yn eich ffolder sbam os na dderbynioch chi'r e-bost hwn, os gwelwch yn dda.
       update_needs_confirmation: Rydych wedi diweddaru eich cyfrif yn llwyddiannus, ond mae angen i ni wirio'ch cyfeiriad e-bost newydd. Edrychwch ar eich e-byst a dilynwch y ddolen gadarnhau er mwyn cadarnhau eich cyfeiriad e-bost newydd. Edrychwch ar eich ffolder sbam os na dderbynioch chi yr e-bost hwn.
       updated: Mae eich cyfrif wedi ei ddiweddaru yn llwyddiannus.
     sessions:
@@ -84,19 +101,19 @@ cy:
       signed_out: Allgofnodwyd yn llwyddiannus.
     unlocks:
       send_instructions: Mi fyddwch yn derbyn e-bost a chyfarwyddiadau ynghylch sut i ddatgloi eich cyfrif ymhen cwpl o funudau. Edrychwch yn eich ffolder sbam os na dderbynioch chi'r e-bost hwn os gwelwch yn dda.
-      send_paranoid_instructions: Os yw eich cyfrif yn bodoli, mi fyddwch yn derbyn e-bost a cyfarwyddiadau o sut i ddatgloi eich cyfrif ymhen cwpl o funudau. Edrychwch yn eich ffolder sbam os na dderbynioch chi'r e-bost hwn os gwelwch yn dda.
+      send_paranoid_instructions: Os yw eich cyfrif yn bodoli, mi fyddwch yn derbyn e-bost a cyfarwyddiadau o sut i ddatgloi eich cyfrif ymhen cwpl o funudau. Edrychwch yn eich ffolder sbam os na dderbynioch chi'r e-bost hwn, os gwelwch yn dda.
       unlocked: Mae eich cyfrif wedi ei ddatgloi'n llwyddiannus. Mewngofnodwch i barhau.
   errors:
     messages:
-      already_confirmed: wedi ei gadarnhau yn barod, ymgeisiwch fewngofnodi
-      confirmation_period_expired: angen ei gadarnhau o fewn %{period}, gwnewch gais am un newydd os gwelwch yn dda
-      expired: wedi dod i ben, gwnewch gais am un newydd os gwelwch yn dda
+      already_confirmed: wedi'i gadarnhau eisoes, ceisiwch fewngofnodi
+      confirmation_period_expired: angen ei gadarnhau o fewn %{period}, gwnewch gais am un newydd, os gwelwch yn dda
+      expired: wedi dod i ben, gwnewch gais am un newydd, os gwelwch yn dda
       not_found: heb ei ganfod
       not_locked: heb ei gloi
       not_saved:
-        few: 'Gwaharddwyd yr %{resource} rhag cael ei arbed oherwydd %{count} gwall:'
-        many: 'Gwaharddwyd yr %{resource} rhag cael ei arbed oherwydd %{count} gwall:'
-        one: 'Gwaharddwyd yr %{resource} rhag cael ei arbed oherwydd 1 gwall:'
-        other: 'Gwaharddwyd yr %{resource} rhag cael ei arbed oherwydd %{count} gwall:'
-        two: 'Gwaharddwyd yr %{resource} rhag cael ei arbed oherwydd %{count} gwall:'
-        zero: 'Gwaharddwyd yr %{resource} rhag cael ei arbed oherwydd %{count} gwall:'
+        few: 'Gwaharddwyd yr %{resource} rhag cael ei gadw oherwydd %{count} gwall:'
+        many: 'Gwaharddwyd yr %{resource} rhag cael ei gadw oherwydd %{count} gwall:'
+        one: 'Gwaharddwyd yr %{resource} rhag cael ei gadw oherwydd 1 gwall:'
+        other: 'Gwaharddwyd yr %{resource} rhag cael ei gadw oherwydd %{count} gwall:'
+        two: 'Gwaharddwyd yr %{resource} rhag cael ei gadw oherwydd %{count} gwall:'
+        zero: 'Gwaharddwyd yr %{resource} rhag cael ei gadw oherwydd %{count} o wallau:'
diff --git a/config/locales/devise.de.yml b/config/locales/devise.de.yml
index 680b58330..41af24bd8 100644
--- a/config/locales/devise.de.yml
+++ b/config/locales/devise.de.yml
@@ -84,17 +84,17 @@ de:
       no_token: Du kannst diese Seite nur über den Link aus der E-Mail zum Passwort-Zurücksetzen aufrufen. Wenn du einen solchen Link aufgerufen hast, stelle bitte sicher, dass du die vollständige Adresse aufrufst.
       send_instructions: Du erhältst in wenigen Minuten eine E-Mail. Darin wird erklärt, wie du dein Passwort zurücksetzen kannst.
       send_paranoid_instructions: Falls deine E-Mail-Adresse in unserer Datenbank hinterlegt ist, erhältst du in wenigen Minuten eine E-Mail. Darin wird erklärt, wie du dein Passwort zurücksetzen kannst.
-      updated: Dein Passwort wurde geändert. Du bist jetzt angemeldet.
-      updated_not_active: Dein Passwort wurde geändert.
+      updated: Ihr Passwort wurde erfolgreich geändert. Du bist jetzt angemeldet.
+      updated_not_active: Dein Passwort wurde erfolgreich geändert.
     registrations:
       destroyed: Dein Konto wurde gelöscht.
       signed_up: Willkommen! Du hast dich erfolgreich registriert.
-      signed_up_but_inactive: Du hast dich erfolgreich registriert. Wir konnten dich noch nicht anmelden, da dein Konto inaktiv ist.
-      signed_up_but_locked: Du hast dich erfolgreich registriert. Wir konnten dich noch nicht anmelden, da dein Konto gesperrt ist.
+      signed_up_but_inactive: Du hast dich erfolgreich registriert. Allerdings ist dein Konto noch nicht aktiviert und du kannst dich daher noch nicht anmelden.
+      signed_up_but_locked: Du hast dich erfolgreich registriert. Allerdings ist dein Konto gesperrt und du kannst dich daher nicht anmelden.
       signed_up_but_pending: Eine Nachricht mit einem Bestätigungslink wurde an dich per E-Mail geschickt. Nachdem du diesen Link angeklickt hast, werden wir deine Anfrage überprüfen. Du wirst benachrichtigt werden, falls die Anfrage angenommen wurde.
       signed_up_but_unconfirmed: Du hast dich erfolgreich registriert. Wir konnten dich noch nicht anmelden, da dein Konto noch nicht bestätigt ist. Du erhältst in Kürze eine E-Mail. Darin wird erklärt, wie du dein Konto freischalten kannst.
       update_needs_confirmation: Deine Daten wurden aktualisiert, aber du musst deine neue E-Mail-Adresse bestätigen. Du erhältst in wenigen Minuten eine E-Mail. Darin ist erklärt, wie du die Änderung deiner E-Mail-Adresse abschließen kannst.
-      updated: Deine Daten wurden aktualisiert.
+      updated: Ihr Konto wurde erfolgreich aktualisiert.
     sessions:
       already_signed_out: Erfolgreich abgemeldet.
       signed_in: Erfolgreich angemeldet.
diff --git a/config/locales/devise.et.yml b/config/locales/devise.et.yml
index 6772443b0..302b532ce 100644
--- a/config/locales/devise.et.yml
+++ b/config/locales/devise.et.yml
@@ -3,15 +3,15 @@ et:
   devise:
     confirmations:
       confirmed: Teie e-postiaadress on edukalt kinnitatud.
-      send_instructions: Te saate paari minuti pärast e-kirja juhistega, kuidas oma e-posti aadressit kinnitada. Palun kontrollige oma rämpsposti kausta juhul, kui Te ei saanud seda e-kirja.
-      send_paranoid_instructions: Kui Teie e-postiaadress eksisteerib meie andmebaasis, saate paari minuti pärast e-kirja juhistega, kuidas oma e-posti aadressit kinnitada. Palun kontrollige oma rämpsposti kausta juhul, kui Te ei saanud seda e-kirja.
+      send_instructions: Te saate paari minuti pärast e-kirja juhistega, kuidas oma e-posti aadressit kinnitada. Palun kontrollige oma rämpsposti kausta juhul, kui te ei saanud seda e-kirja.
+      send_paranoid_instructions: Kui teie e-postiaadress eksisteerib meie andmebaasis, saate paari minuti pärast e-kirja juhistega, kuidas oma e-posti aadressit kinnitada. Palun kontrollige oma rämpsposti kausta juhul, kui te ei saanud seda e-kirja.
     failure:
       already_authenticated: Te olete juba sisse loginud.
       inactive: Teie konto pole veel aktiveeritud.
-      invalid: Valed %{authentication_keys} või parool.
+      invalid: Valed %{authentication_keys} või salasõna.
       last_attempt: Teil on veel üks katse kuni teie konto on lukustatud.
       locked: Teie konto on lukustatud.
-      not_found_in_database: Valed %{authentication_keys} või parool.
+      not_found_in_database: Valed %{authentication_keys} või salasõna.
       pending: Teie konto on siiani läbivaatlusel.
       timeout: Teie sessioon on aegunud. Jätkamiseks palun sisenege uuesti.
       unauthenticated: Te peate sisenema või looma konto enne jätkamist.
@@ -20,77 +20,94 @@ et:
       confirmation_instructions:
         action: Kinnita e-postiaadress
         action_with_app: Kinnita ja naase %{app}
-        explanation: Te olete loonud konto %{host}'il selle e-postiaadressiga. Te olete ühe kliki kaugusel selle aktiveerimisest. Kui see polnud Teie, palun eirake seda kirja.
-        explanation_when_pending: Te esitasite soovi liituda %{host}-iga selle e-postiaadressiga. Siis, kui Te kinnitate oma e-posti aadressi, vaatame me Teie soovi üle. Te ei saa siseneda kuni selleni. Kui teie soov on tagasi lükatud, Teie andmed kustutatakse ning Te ei pea rohkem midagi tegema. Kui see ei olnud Teie, palun eirake seda kirja.
-        extra_html: Palun tutvu <a href="%{terms_path}">meie serveri reeglitega</a> ning <a href="%{policy_path}">meie kasutustingimustega</a>.
-        subject: 'Mastodon: %{instance} Kinnitamisjuhised'
+        explanation: Te olete loonud %{host} konto selle e-postiaadressiga. Te olete ühe kliki kaugusel selle aktiveerimisest. Kui see polnud teie, palun eirake seda kirja.
+        explanation_when_pending: Te esitasite taotluse liituda %{host} kasutajaks selle e-postiaadressiga. Siis, kui te kinnitate oma e-posti aadressi, vaatame me teie taotluse üle. Võite logida sisse, et oma andmeid muuta või konto kustutada, aga te ei saa ligi enamustele tegevustele enne, kui teie kontole on luba antud. Kui teie taotlus tagasi lükatakse, kustutatakse teie andmed, seega pole mingit järgevat tegevust teie poolt vaja. Kui see polnud teie, siis palun eirake seda kirja.
+        extra_html: Palun tutvuge <a href="%{terms_path}">meie serveri reeglitega</a> ning <a href="%{policy_path}">meie kasutustingimustega</a>.
+        subject: 'Mastodon: %{instance} kinnitamisjuhised'
         title: Kinnita e-postiaadress
       email_changed:
         explanation: 'Teie konto e-postiaadress muudetakse:'
-        extra: Kui Te ei muutnud oma e-posti, on tõenäoline, et kellelgi on ligipääs Teie kontole. Palun muutke oma salasõna koheselt või võtke ühendust oma serveri administraatoriga, kui olete oma kontost välja lukustatud.
-        subject: 'Mastodon: E-post muudetud'
+        extra: Kui te ei muutnud oma e-posti, on tõenäoline, et kellelgi on ligipääs teie kontole. Palun muutke oma salasõna koheselt või võtke ühendust oma serveri administraatoriga, kui olete oma kontost välja lukustatud.
+        subject: 'Mastodon: e-post muudetud'
         title: Uus e-postiaadress
       password_change:
-        explanation: Teie konto parool on muudetud.
-        extra: Kui Te ei muutnud oma salasõna, on tõenäoline, et kellelgi on ligipääs Teie kontole. Palun muutke oma salasõna koheselt või võtke ühendust oma serveri administraatoriga, kui olete oma kontost välja lukustatud.
-        subject: 'Mastodon: Salasõna muudetud'
+        explanation: Konto salasõna on vahetatud.
+        extra: Kui Te ei muutnud oma salasõna, on tõenäoline, et keegi on teie kontole ligi pääsenud. Palun muutke viivitamata oma salasõna või võtke ühendust serveri haldajaga, kui oma kontole ligi ei pääse.
+        subject: 'Mastodon: salasõna muudetud'
         title: Salasõna muudetud
       reconfirmation_instructions:
-        explanation: Kinnita oma uus aadress, et muuta oma e-posti.
-        extra: Kui see muudatus pole Teie poolt alustatud, palun eirake seda kirja. E-postiaadress sellele Mastodoni kontole ei muutu, kuni Te vajutate üleval asuvale lingile.
-        subject: 'Mastodon: Kinnitake e-post - %{instance}'
+        explanation: Kinnitage oma uus aadress, et muuta oma e-posti aadressi.
+        extra: Kui see muudatus pole teie poolt alustatud, palun eirake seda kirja. E-postiaadress sellele Mastodoni kontole ei muutu, kuni te vajutate üleval asuvale lingile.
+        subject: 'Mastodon: kinnitake e-postiaadress %{instance} jaoks'
         title: Kinnita e-postiaadress
       reset_password_instructions:
-        action: Muuda salasõna
-        explanation: Te taotlesite oma kontole uut salasõna.
-        extra: Kui Te ei soovinud seda, palun eirake seda kirja. Teie salasõna ei muutu, kuni Te vajutate üleval olevale lingile ning loote uue.
-        subject: 'Mastodon: Salasõna lähtestamisjuhendid'
+        action: Salasõna muutmine
+        explanation: Kontole on küsitud uut salasõna.
+        extra: Kui see tuleb üllatusena, võib seda kirja eirata. Salasõna ei muutu enne ülaoleva lingi külastamist ja uue salasõna määramist.
+        subject: 'Mastodon: salasõna lähtestamisjuhendid'
         title: Salasõna lähtestamine
       two_factor_disabled:
-        explanation: Kaheastmeline autentimine on teie konto jaoks välja lülitatud. Sisselogimine on nüüd ainult võimalik kasutades e-postiaadressit ja salasõna.
-        subject: 'Mastodon: Kaheastmeline autentimine välja lülitatud'
-        title: 2FA väljas
+        explanation: Kontol on kahe-etapine autentimine välja lülitatud. Sisenemine on võimalik ainult kasutades e-postiaadressi ja salasõna.
+        subject: 'Mastodon: Kahe-etapine autentimine välja lülitatud'
+        title: 2FA keelatud
       two_factor_enabled:
-        explanation: Kaheastmeline autentimine on Teie kontole sisse lülitatud. Teie TOTP rakenduse poolt loodud võtit läheb vaja igal sisselogimisel.
-        subject: 'Mastodon: Kaheastmeline autentimine sisse lülitatud'
-        title: 2FA sees
+        explanation: Kontol on sisse lülitatud kahe-etapine autentimine. Sisenemiseks on vajalik ühekordne aeguv võti TOTP-rakenduse poolt.
+        subject: 'Mastodon: Kahe-etapine autentimine sisse lülitatud'
+        title: 2FA lubatud
       two_factor_recovery_codes_changed:
-        explanation: Eelmised taastuskoodid on kehtetuks tehtud ning uued loodud.
-        subject: 'Mastodon: Kaheastmelise autentimise taastuskoodid taasloodud'
-        title: 2FA taastuskoodid muudetud
+        explanation: Eelmised taastekoodid on nüüd kehtetud ning loodud uued.
+        subject: 'Mastodon: Kahe-etapise autentimise taastuskoodid taasloodud'
+        title: 2FA taastekoodid muudetud
       unlock_instructions:
         subject: 'Mastodon: Lahti lukustamis juhendid'
+      webauthn_credential:
+        added:
+          explanation: Järgnev turvavõti on lisatud teie kontole
+          subject: 'Mastodon: uus turvavõti'
+          title: Uus turvavõti on lisatud
+        deleted:
+          explanation: Järgnev turvavõti on teie kontolt kustutatud
+          subject: 'Mastodon: turvavõti kustutatud'
+          title: Üks teie turvavõtmetest on kustutatud
+      webauthn_disabled:
+        explanation: Autentimine turvavõtmetega on teie kontol välja lülitatud. Sisse logimine on nüüd võimalik ainult kasutades TOTP rakenduse poolt tekitatud võtmega.
+        subject: 'Mastodon: autentimine turvavõtmega on välja lülitatud'
+        title: Turvavõtmed on välja lülitatud
+      webauthn_enabled:
+        explanation: Turvavõtme autentimine on teie kontol nüüd sisse lülitatud. Teie turvavõtit saab nüüd kasutada sisse logimiseks.
+        subject: 'Mastodon: turvavõtme autentimine sisse lülitatud'
+        title: Turvavõtmed on sisse lülitatud
     omniauth_callbacks:
-      failure: Ei saanud Teid tuvastada %{kind} kaudu, kuna "%{reason}".
+      failure: Ei saanud teid tuvastada %{kind} kaudu, kuna "%{reason}".
       success: Tuvastamine %{kind} konto järgi õnnestus.
     passwords:
-      no_token: Te ei saa sellele leheküljele ligi ilma tulemata salasõna lähtestamis e-kirjast. Kui Te tulete salasõna lähtestamis e-kirjast, palun olge kindel, et kasutasite tervet Teile antud URL-i.
-      send_instructions: Kui Teie e-postiaadress eksisteerib meie andmebaasis, saate paari minuti pärast e-kirja juhistega, kuidas oma salasõna taastada. Palun kontrollige oma rämpsposti kausta juhul, kui Te ei saanud seda e-kirja.
-      send_paranoid_instructions: Kui Teie e-postiaadress eksisteerib meie andmebaasis, saate paari minuti pärast e-kirja juhistega, kuidas oma salasõna taastada. Palun kontrollige oma rämpsposti kausta juhul, kui Te ei saanud seda e-kirja.
+      no_token: Te ei saa sellele leheküljele ligi ilma tulemata salasõna lähtestamis e-kirjast. Kui te tulete salasõna lähtestamise e-kirjast, palun olge kindel, et kasutasite tervet teile antud URLi.
+      send_instructions: Kui teie e-postiaadress eksisteerib meie andmebaasis, saate paari minuti pärast e-kirja juhistega, kuidas oma salasõna taastada. Palun kontrollige oma rämpsposti kausta juhul, kui te ei saanud seda e-kirja.
+      send_paranoid_instructions: Kui teie e-postiaadress eksisteerib meie andmebaasis, saate paari minuti pärast e-kirja juhistega, kuidas oma salasõna taastada. Palun kontrollige oma rämpsposti kausta juhul, kui te ei saanud seda e-kirja.
       updated: Teie salasõna muutmine õnnestus. Te olete nüüd sisse loginud.
       updated_not_active: Teie salasõna muutmine õnnestus.
     registrations:
-      destroyed: Nägemist! Teie konto sulgemine õnnestus. Me loodame Teid varsti taas näha.
+      destroyed: Nägemist! Teie konto sulgemine õnnestus. Me loodame teid varsti taas näha.
       signed_up: Tere tulemast! Teie konto loomine õnnestus.
-      signed_up_but_inactive: Teie konto loodi edukalt, kuid me ei saanud Teid sisse logida, kuna teie konto pole veel aktiveeritud.
-      signed_up_but_locked: Teie konto loodi edukalt, kuid me ei saanud Teid sisse logida, kuna teie konto on lukustatud.
-      signed_up_but_pending: Kiri kinnituslingiga saadeti Teie e-postile. Pärast seda, kui te vajutate lingile, vaatame me Teie taotluse üle. Teid teavitatakse, kui see on vastu võetud.
-      signed_up_but_unconfirmed: Kiri kinnituslingiga saadeti Teie e-postile. Palun järgige linki, et aktiveerida oma konto. Palun kontrollige oma rämpsposti, kui Te ei saanud seda e-kirja.
-      update_needs_confirmation: Teie konto uuendamine õnnestus, kuid me peame Teie e-postiaadressit kinnitama. Palun kontrollige oma e-posti ning järgige linki, et kinnitada oma e-postiaadress. Palun kontrollige oma rämpsposti, kui Te ei saanud seda e-kirja.
+      signed_up_but_inactive: Teie konto loodi edukalt, kuid me ei saanud teid sisse logida, kuna teie konto pole veel aktiveeritud.
+      signed_up_but_locked: Teie konto loodi edukalt, kuid me ei saanud teid sisse logida, kuna teie konto on lukustatud.
+      signed_up_but_pending: Kiri kinnituslingiga saadeti teie e-postile. Pärast seda, kui te vajutate lingile, vaatame me teie taotluse üle. Teid teavitatakse, kui see on vastu võetud.
+      signed_up_but_unconfirmed: Kiri kinnituslingiga saadeti teie e-postile. Palun järgige linki, et aktiveerida oma konto. Palun kontrollige oma rämpsposti, kui te ei saanud seda e-kirja.
+      update_needs_confirmation: Teie konto uuendamine õnnestus, kuid me peame teie e-postiaadressit kinnitama. Palun kontrollige oma e-posti ning järgige linki, et kinnitada oma e-postiaadress. Palun kontrollige oma rämpsposti, kui te ei saanud seda e-kirja.
       updated: Teie konto uuendamine õnnestus.
     sessions:
       already_signed_out: Väljumine õnnestus.
       signed_in: Sisenemine õnnestus.
       signed_out: Väljumine õnnestus.
     unlocks:
-      send_instructions: Te saate paari minuti pärast e-kirja juhistega, kuidas oma konto lukust lahti teha. Palun kontrollige oma rämpsposti kausta juhul, kui Te ei saanud seda e-kirja.
-      send_paranoid_instructions: Kui Teie konto eksisteerib, saate Te paari minuti pärast e-kirja juhistega, kuidas see lukust lahti teha. Palun kontrollige oma rämpsposti kausta juhul, kui Te ei saanud seda e-kirja.
-      unlocked: Teie konto lukust lahti võtmine õnnestus. Jätkamiseks, palun logige sisse.
+      send_instructions: Te saate paari minuti pärast e-kirja juhistega, kuidas oma konto lukust lahti teha. Palun kontrollige oma rämpsposti kausta juhul, kui te ei saanud seda e-kirja.
+      send_paranoid_instructions: Kui teie konto eksisteerib, saate te paari minuti pärast e-kirja juhistega, kuidas see lukust lahti teha. Palun kontrollige oma rämpsposti kausta juhul, kui te ei saanud seda e-kirja.
+      unlocked: Teie konto lukust lahti võtmine õnnestus. Jätkamiseks palun logige sisse.
   errors:
     messages:
       already_confirmed: oli juba kinnitatud, palun proovige sisse logida
-      confirmation_period_expired: peab olema kinnitatud ajavahemikus %{period} - palun taotlege uus
-      expired: on aegunud, palun taotlege uus
+      confirmation_period_expired: peab olema kinnitatud ajavahemikus %{period}, palun taotlege uuesti
+      expired: on aegunud, palun taotlege uuesti
       not_found: ei leitud
       not_locked: ei olnud lukustatud
       not_saved:
diff --git a/config/locales/devise.fi.yml b/config/locales/devise.fi.yml
index 03dce9bcd..606be8d47 100644
--- a/config/locales/devise.fi.yml
+++ b/config/locales/devise.fi.yml
@@ -23,7 +23,7 @@ fi:
         explanation: Olet luonut tilin palvelimelle %{host} käyttäen tätä sähköpostiosoitetta. Aktivoi tili yhdellä klikkauksella. Jos et luonut tiliä itse, voit jättää tämän viestin huomiotta.
         explanation_when_pending: Teit hakemuksen kutsusta palvelimelle %{host} tällä sähköpostiosoitteella. Kun olet vahvistanut sähköpostiosoitteesi, tarkistamme hakemuksesi. Voit kirjautua sisään muuttaaksesi hakemuksen sisältöä tai poistaaksesi tilin, mutta et voi käyttää suurinta osaa toiminnallisuudesta ennen kuin hakemuksesi on hyväksytty. Jos hakemuksesi hylätään, tietosi poistetaan eikä sinulta tarvita enempää toimia. Jos sinä et tehnyt hakemusta, voit jättää tämän viestin huomiotta.
         extra_html: Katso myös <a href="%{terms_path}">palvelimen säännöt</a> ja <a href="%{policy_path}">käyttöehdot</a>.
-        subject: 'Mastodon: Vahvistusohjeet palvelimelle %{instance}'
+        subject: 'Mastodon: Vahvistusohjeet instanssille %{instance}'
         title: Vahvista sähköpostiosoitteesi
       email_changed:
         explanation: 'Tilin sähköpostiosoitteeksi vaihdetaan:'
@@ -38,7 +38,7 @@ fi:
       reconfirmation_instructions:
         explanation: Vahvista uusi sähköpostiosoite, niin muutos astuu voimaan.
         extra: Jos et tehnyt muutosta itse, voit jättää tämän viestin huomiotta. Mastodon-tilin sähköpostiosoitetta ei vaihdeta, ennen kuin klikkaat yllä olevaa linkkiä.
-        subject: 'Mastodon: Vahvista sähköpostiosoite - %{instance}'
+        subject: 'Mastodon: Vahvista sähköpostiosoite instanssille %{instance}'
         title: Vahvista sähköpostiosoite
       reset_password_instructions:
         action: Vaihda salasana
diff --git a/config/locales/devise.fo.yml b/config/locales/devise.fo.yml
new file mode 100644
index 000000000..35fa0954f
--- /dev/null
+++ b/config/locales/devise.fo.yml
@@ -0,0 +1,115 @@
+---
+fo:
+  devise:
+    confirmations:
+      confirmed: Tín teldupostadressa er blivin vátta.
+      send_instructions: Innanfyri fáar minuttir fer tú at fáa ein teldupost við vegleiðing til hvussu tú staðfestir tína teldupostadressu. Vinarliga leita í tínum spamfaldara um tú ikki móttekur hendan teldupostin.
+      send_paranoid_instructions: Um tín teldupostaddresa longu er í dátugrunninum, fær tú er um fáa minuttir ein teldupost, við frágreiðing um, hvussu hendan kann váttast. Kanna tín Spam faldara, um tú ikki sær henda.
+    failure:
+      already_authenticated: Tú ert longu innskrivað/ur.
+      inactive: Kontan hjá tær er ikki virkin enn.
+      invalid: Skeivt %{authentication_keys} ella loyniorð.
+      last_attempt: Tú kanst royna einaferð afturat áðrenn kontan verður stongd.
+      locked: Kontan hjá tær er læst.
+      not_found_in_database: Ogyldigur %{authentication_keys} ella loyniorð.
+      pending: Kontan hjá tær verður kannað enn.
+      timeout: Tín innritan er útgingin. Innrita av nýggjum, fyri at hada fram.
+      unauthenticated: Tú mást skriva teg inn aftur fyri at halda fram.
+      unconfirmed: Tú skal staðfesta tína teldupostasressu fyri at halda áfram.
+    mailer:
+      confirmation_instructions:
+        action: Vátta teldupostadressuna
+        action_with_app: Staðfest og far aftur til %{app}
+        explanation: Tú hevur stovnað eina kontu hjá %{host} við hesari teldupostadressuni og tú ert eitt klikk frá at virkja hana. Um tað ikki vart tú, vinarliga sí burtur frá hesum teldupostinum.
+        explanation_when_pending: Tú hevur fingið innbjóðing tkl %{host}, við teldupostaddressu. Tá tú hevur vátta tín tína teldupostaddressu, verður umsóknin viðgjørd. Tú kann innrita og broyta ymsar stillingar, men flestu funkur kunnu ikki broytast, fyrr enn kontan er góðkend. Um kontan ikki verður góðkend, verða allar dátur um teg slettaðar. Um umsóknin ikki kom frá tær, skal tú síggja burtur frá teldupostinum.
+        extra_html: Kanna eisini <a href="%{terms_path}">reglurnar fyri henda ambætaran</a> og <a href="%{policy_path}">okkara nýtslu treytir</a>.
+        subject: 'Mastodon: Góðkenningartreytir fyri %{instance}'
+        title: Vátta teldupostadressuna
+      email_changed:
+        explanation: 'Telupostaddressan ryri kontina verður broytt til:'
+        extra: Um tú ikki hevur skift teldupostin, er sannlíkt at onkur annar hevur fingið atgongd til tína kontu. Vinarliga skift loyniorðið beinanvegin. Set teg í samband við fyrisitaran, um tú ikki sleppur inn á tína kontu.
+        subject: 'Mastodon: Teldupostur broyttur'
+        title: Nýggjur eldupostur
+      password_change:
+        explanation: Loyniorðið til kontoina hjá tær er broytt.
+        extra: Um tú ikki hevur skift loyniorðið, er sannlíkt at onkur annar hevur fingið atgongd til tína kontu. Vinarliga skift loyniorðið beinanvegin. Um tú ikki sleppur inn á tína kontu, hav samband við fyrisitarin.
+        subject: 'Mastodon: Loyniorð broytt'
+        title: Loyniorðið er broytt
+      reconfirmation_instructions:
+        explanation: Vátta nýggja bústaðin fyri at broyta teldupostin.
+        extra: Um henda broytingin ikki kemur frá tær, so skal tú ignorera hetta teldubrævið. Telduposturin til Mastodon kontuna verður ikki broytt, uttan so at tú fylgir leinkinum omanfyri.
+        subject: 'Mastodon: Vátta teldupost fyri %{instance}'
+        title: Vátta teldupostadressu
+      reset_password_instructions:
+        action: Broyt loyniorð
+        explanation: Tú hevur biðið um eitt nýtt loyniorð til kontoina.
+        extra: Um tú ikki hevur umbiðið hetta, so skalt tú ikki gera nakað. Loyniorðið verður bert broytt, um tú brúkar leinkið omanfyri og gert eitt nýtt.
+        subject: 'Mastodon: Vegleiðing at skifta loyniorð'
+        title: Skift loyniorð
+      two_factor_disabled:
+        explanation: Tvey-faktor samgildi (2FA) fyri tína kontu er gjørt óvirkið. Nú er møguligt at rita inn við einans at nýta teldupost og loyniorð.
+        subject: 'Mastodon: Váttan í tveimum stigum er gjørd óvirkin'
+        title: 2FA óvirkið
+      two_factor_enabled:
+        explanation: Váttan í tveimum stigum er gjørd virkin fyri tína kontu. Eitt merki framleitt av paraðu TOTP appini verður framyvir kravt fyri at rita inn.
+        subject: 'Mastodon: Váttan í tveimum stigum er virkin'
+        title: 2FA virkið
+      two_factor_recovery_codes_changed:
+        explanation: Undanfarnu endurskapanarkodurnar eru ógildaðar og nýggjar eru framleiddar.
+        subject: 'Mastodon: Endurskapanarkodurnar til váttan í tveimum stigum eru framleiddar umaftur'
+        title: 2FA endurskapanarkodur eru broyttar
+      unlock_instructions:
+        subject: 'Mastodon: Vegleiðing í at læsa upp'
+      webauthn_credential:
+        added:
+          explanation: Hesir trygdarlyklarnir eru lagdir afturat kontu tínari
+          subject: 'Mastodon: Nýggjur trygdarlykil'
+          title: Nýggjur trygdarlykil er gjørdur
+        deleted:
+          explanation: Hesin trygdarlyklin er strikaður av kontu tíni
+          subject: 'Mastodon: Trygdarlykilin strikaður'
+          title: Ein av trygdarlyklunum hjá tær er strikaður
+      webauthn_disabled:
+        explanation: Váttan við trygdarlyklum er gjørd óvirkin fyri tína kontu. Nú ber til at rita inn einans við teknum, sum eru framleidd av paraðu TOTP appini.
+        subject: 'Mastodon: Váttan við trygdarlyklum er gjørd óvirkin'
+        title: Trygdarlyklar óvirknir
+      webauthn_enabled:
+        explanation: Váttan við trygdarlyklum er gjørd virkin á tínari kontu. Nú kann tín trygdarlykil nýtast at rita inn við.
+        subject: 'Mastodon: Váttan við trygdarlykli gjørd virkin'
+        title: Trygdarlyklar gjørdir virknir
+    omniauth_callbacks:
+      failure: Tað bar ikki til at vátta teg frá %{kind} av tí at “%{reason}”.
+      success: Váttan eydnaðist frá %{kind} kontu.
+    passwords:
+      no_token: Tú hevur ikki atgongd til hesa síðuna, uttan so at tú kemur frá einum teldubrævi at nullstilla loyniorð. Kemur tú frá einum tílíkum teldubrævi, vinarliga eftirkanna, at tú brúkti allan URLin.
+      send_instructions: Finst telduposturin hjá tær í okkara dátugrunni, so fer tú at móttaka eitt teldubræv við einum leinki at endurvinna loyniorðið um nakrar minuttir. Vinarliga eftirkanna mappuna við ruskposti, um tú ikki móttók teldubrævið.
+      send_paranoid_instructions: Finst telduposturin hjá tær í okkara dátugrunni, so fer tú at móttaka eitt teldubræv við einum leinki at endurvinna loyniorðið um nakrar minuttir. Vinarliga eftirkanna mappuna við ruskposti, um tú ikki móttók teldubrævið.
+      updated: Loyniorðið er broytt og tú er innritað/ur.
+      updated_not_active: Loyniorðið er broytt.
+    registrations:
+      destroyed: Farvæl! Konta tín er gjørd óvirkin. Vit vóna at síggja teg aftur skjótt.
+      signed_up: Vælkomin! Tú er nú tilmeldað/ur.
+      signed_up_but_inactive: Tú er tilmeldað/ur. Vit kunnu tó ikki rita teg inn, tí konta tín er ikki gjørd virkin enn.
+      signed_up_but_locked: Tú er tilmeldað/ur. Vit kunnu tó ikki rita teg inn, tí konta tín er læst.
+      signed_up_but_pending: Eini boð við einum váttanarleinki er send til teldupoststaðin hjá tær. Tá tú hevur klikt á leinkið, so fara vit at eftirkanna umsókn tína. Tú fær boð, um hon verður játtað.
+      signed_up_but_unconfirmed: Eini boð við einum váttanarleinki eru send til teldupoststaðin hjá tær. Vinarliga fylg leinkinum fyri at gera kontu tína virkna. Vinarliga eftirkanna mappuna við ruskposti, um tú ikki móttók teldupostin.
+      update_needs_confirmation: Tað eydnaðist tær at dagføra kontuna, men tað er neyðugt at vátta nýggja teldupoststaðin hjá tær. Vinarliga kanna teldupostin hjá tær og fylg váttanarleinkinum at vátta nýggja teldupostin. Vinarliga kanna mappuna við ruskposti, um tú ikki móttók teldubrævið.
+      updated: Tað eydnaðist at dagføra kontu tína.
+    sessions:
+      already_signed_out: Útritan eydnaðist.
+      signed_in: Innritan eydnaðist.
+      signed_out: Útritan eydnaðist.
+    unlocks:
+      send_instructions: Um nakrar minuttir móttekur tú eitt teldubræv við vegleiðing í at læsa kontu tína upp. Vinarliga eftirkanna mappuna við ruskposti, um tú ikki móttók teldubrævið.
+      send_paranoid_instructions: Um konta tín finst, móttekur tú um nakrar minuttir eitt teldubræv við vegleiðing í at læsa kontu tína upp. Vinarliga eftirkanna mappuna við ruskposti, um tú ikki móttók teldubrævið.
+      unlocked: Tað eydnaðist at læsa kontu tína upp. Vinarliga rita inn fyri at halda fram.
+  errors:
+    messages:
+      already_confirmed: var longu váttað, vinarliga royn at innrita
+      confirmation_period_expired: má váttast innan %{period}, vinarliga bið um eina nýggja
+      expired: er útgingin, vinarliga bið um eina nýggja
+      not_found: ikki funnið
+      not_locked: var ikki læst
+      not_saved:
+        one: '1 feilur forðaði hesum %{resource} í at vera goymd:'
+        other: "%{count} feilir forðaðu hesum %{resource} í at vera goymd:"
diff --git a/config/locales/devise.fr-QC.yml b/config/locales/devise.fr-QC.yml
new file mode 100644
index 000000000..5a7e1cd9e
--- /dev/null
+++ b/config/locales/devise.fr-QC.yml
@@ -0,0 +1,115 @@
+---
+fr-QC:
+  devise:
+    confirmations:
+      confirmed: Votre adresse de courriel a été validée.
+      send_instructions: Vous allez recevoir par courriel les instructions nécessaires à la confirmation de votre compte dans quelques minutes. Veuillez, dans le cas où vous ne recevriez pas ce message, vérifier votre dossier d’indésirables.
+      send_paranoid_instructions: Si votre adresse électronique existe dans notre base de données, vous allez bientôt recevoir un courriel contenant les instructions de confirmation de votre compte. Veuillez, dans le cas où vous ne recevriez pas ce message, vérifier votre dossier d’indésirables.
+    failure:
+      already_authenticated: Vous êtes déjà connecté⋅e.
+      inactive: Votre compte n’est pas encore activé.
+      invalid: "%{authentication_keys} ou mot de passe invalide."
+      last_attempt: Vous avez droit à une dernière tentative avant que votre compte ne soit verrouillé.
+      locked: Votre compte est verrouillé.
+      not_found_in_database: "%{authentication_keys} ou mot de passe invalide."
+      pending: Votre compte est toujours en cours d'approbation.
+      timeout: Votre session a expiré. Veuillez vous reconnecter pour continuer.
+      unauthenticated: Vous devez vous connecter ou vous inscrire pour continuer.
+      unconfirmed: Vous devez valider votre adresse courriel pour continuer.
+    mailer:
+      confirmation_instructions:
+        action: Vérifier l’adresse courriel
+        action_with_app: Confirmer et retourner à %{app}
+        explanation: Vous avez créé un compte sur %{host} avec cette adresse courriel. Vous êtes à un clic de l’activer. Si ce n’était pas vous, veuillez ignorer ce courriel.
+        explanation_when_pending: Vous avez demandé à vous inscrire à %{host} avec cette adresse de courriel. Une fois que vous aurez confirmé cette adresse, nous étudierons votre demande. Vous ne pourrez pas vous connecter d’ici-là. Si votre demande est refusée, vos données seront supprimées du serveur, aucune action supplémentaire de votre part n’est donc requise. Si vous n’êtes pas à l’origine de cette demande, veuillez ignorer ce message.
+        extra_html: Merci de consultez également <a href="%{terms_path}">les règles du serveur</a> et <a href="%{policy_path}">nos conditions d’utilisation</a>.
+        subject: 'Mastodon : Merci de confirmer votre inscription sur %{instance}'
+        title: Vérifiez l’adresse courriel
+      email_changed:
+        explanation: 'L’adresse courriel de votre compte est en cours de modification pour devenir :'
+        extra: Si vous n’avez pas changé votre adresse courriel, il est probable que quelqu’un ait eu accès à votre compte. Veuillez changer votre mot de passe immédiatement ou contacter l’administrateur·rice du serveur si vous êtes bloqué·e hors de votre compte.
+        subject: 'Mastodon : Courriel modifié'
+        title: Nouvelle adresse courriel
+      password_change:
+        explanation: Le mot de passe de votre compte a été changé.
+        extra: Si vous n’avez pas changé votre mot de passe, il est probable que quelqu’un ait eu accès à votre compte. Veuillez changer votre mot de passe immédiatement ou contacter l’administrateur·rice du serveur si vous êtes bloqué·e hors de votre compte.
+        subject: 'Mastodon : Votre mot de passe a été modifié avec succès'
+        title: Mot de passe modifié
+      reconfirmation_instructions:
+        explanation: Confirmez la nouvelle adresse pour changer votre courriel.
+        extra: Si ce changement n’a pas été initié par vous, veuillez ignorer ce courriel. L’adresse courriel du compte Mastodon ne changera pas tant que vous n’aurez pas cliqué sur le lien ci-dessus.
+        subject: 'Mastodon : Confirmez l’adresse courriel pour %{instance}'
+        title: Vérifier l’adresse courriel
+      reset_password_instructions:
+        action: Modifier le mot de passe
+        explanation: Vous avez demandé un nouveau mot de passe pour votre compte.
+        extra: Si vous ne l’avez pas demandé, veuillez ignorer ce courriel. Votre mot de passe ne changera pas tant que vous n’aurez pas cliqué sur le lien ci-dessus et que vous n’en aurez pas créé un nouveau.
+        subject: 'Mastodon : Instructions pour changer votre mot de passe'
+        title: Réinitialisation du mot de passe
+      two_factor_disabled:
+        explanation: L'authentification à deux facteurs pour votre compte a été désactivée. La connexion est maintenant possible en utilisant uniquement l'adresse courriel et le mot de passe.
+        subject: 'Mastodon : authentification à deux facteurs désactivée'
+        title: 2FA désactivée
+      two_factor_enabled:
+        explanation: L'authentification à deux facteurs a été activée pour votre compte. Un jeton généré par l'application appairée TOTP sera nécessaire pour vous connecter.
+        subject: 'Mastodon : authentification à deux facteurs activée'
+        title: A2F activée
+      two_factor_recovery_codes_changed:
+        explanation: Les codes de récupération précédents ont été invalidés et de nouveaux ont été générés.
+        subject: 'Mastodon : codes de récupération à deux facteurs régénérés'
+        title: Codes de récupération 2FA modifiés
+      unlock_instructions:
+        subject: 'Mastodon : Instructions pour déverrouiller votre compte'
+      webauthn_credential:
+        added:
+          explanation: La clé de sécurité suivante a été ajoutée à votre compte
+          subject: 'Mastodon: Nouvelle clé de sécurité'
+          title: Une nouvelle clé de sécurité a été ajoutée
+        deleted:
+          explanation: La clé de sécurité suivante a été supprimée de votre compte
+          subject: 'Mastodon: Clé de sécurité supprimée'
+          title: Une de vos clés de sécurité a été supprimée
+      webauthn_disabled:
+        explanation: L'authentification avec les clés de sécurité a été désactivée pour votre compte. La connexion est maintenant possible en utilisant uniquement le jeton généré par l'application TOTP appairée.
+        subject: 'Mastodon: Authentification avec clés de sécurité désactivée'
+        title: Clés de sécurité désactivées
+      webauthn_enabled:
+        explanation: L'authentification par clé de sécurité a été activée pour votre compte. Votre clé de sécurité peut maintenant être utilisée pour vous connecter.
+        subject: 'Mastodon: Authentification de la clé de sécurité activée'
+        title: Clés de sécurité activées
+    omniauth_callbacks:
+      failure: 'Nous n’avons pas pu vous authentifier via %{kind} : ''%{reason}''.'
+      success: Authentifié avec succès via %{kind}.
+    passwords:
+      no_token: Vous ne pouvez accéder à cette page sans passer par un courriel de réinitialisation de mot de passe. Si vous êtes passé⋅e par un courriel de ce type, assurez-vous d’utiliser l’URL complète.
+      send_instructions: Vous allez recevoir les instructions de réinitialisation du mot de passe dans quelques instants. Veuillez, dans le cas où vous ne recevriez pas ce message, vérifier votre dossier d’indésirables.
+      send_paranoid_instructions: Si votre adresse électronique existe dans notre base de données, vous allez recevoir un lien de réinitialisation par courriel. Veuillez, dans le cas où vous ne recevriez pas ce message, vérifier votre dossier d’indésirables.
+      updated: Votre mot de passe a été modifié avec succès, vous êtes maintenant connecté.
+      updated_not_active: Votre mot de passe a été modifié avec succès.
+    registrations:
+      destroyed: Au revoir ! Votre compte a été supprimé avec succès. Nous espérons vous revoir bientôt.
+      signed_up: Bienvenue ! Vous êtes connecté.
+      signed_up_but_inactive: Vous êtes bien enregistré·e. Vous ne pouvez cependant pas vous connecter car votre compte n’est pas encore activé.
+      signed_up_but_locked: Vous êtes bien enregistré·e. Vous ne pouvez cependant pas vous connecter car votre compte est verrouillé.
+      signed_up_but_pending: Un message avec un lien de confirmation a été envoyé à votre adresse courriel. Après avoir cliqué sur le lien, nous examinerons votre demande. Vous serez informé·e si elle a été approuvée.
+      signed_up_but_unconfirmed: Un message contenant un lien de confirmation a été envoyé à votre adresse courriel. Ouvrez ce lien pour activer votre compte. Veuillez vérifier votre dossier d'indésirables si vous ne recevez pas le courriel.
+      update_needs_confirmation: Votre compte a bien été mis à jour, mais nous devons vérifier votre nouvelle adresse courriel. Merci de vérifier vos courriels et de cliquer sur le lien de confirmation pour finaliser la validation de votre nouvelle adresse. Si vous n'avez pas reçu le courriel, vérifiez votre dossier de spams.
+      updated: Votre compte a été modifié avec succès.
+    sessions:
+      already_signed_out: Déconnecté·e avec succès.
+      signed_in: Connecté·e.
+      signed_out: Déconnecté·e.
+    unlocks:
+      send_instructions: Vous allez recevoir les instructions nécessaires au déverrouillage de votre compte dans quelques instants. Veuillez, dans le cas où vous ne recevriez pas ce message, vérifier votre dossier d’indésirables.
+      send_paranoid_instructions: Si votre compte existe, vous allez bientôt recevoir un courriel contenant les instructions pour le déverrouiller. Veuillez, dans le cas où vous ne recevriez pas ce message, vérifier votre dossier d’indésirables.
+      unlocked: Votre compte a été déverrouillé avec succès, vous êtes maintenant connecté.
+  errors:
+    messages:
+      already_confirmed: a déjà été validée, veuillez essayer de vous connecter
+      confirmation_period_expired: à confirmer dans les %{period}, merci de faire une nouvelle demande
+      expired: a expiré, merci d’en faire une nouvelle demande
+      not_found: n’a pas été trouvé
+      not_locked: n’était pas verrouillé
+      not_saved:
+        one: 'Une erreur a empêché ce·tte %{resource} d’être sauvegardé·e :'
+        other: "%{count} erreurs ont empêché %{resource} d’être sauvegardé⋅e :"
diff --git a/config/locales/devise.fr.yml b/config/locales/devise.fr.yml
index b5cee9d2a..1047fae0b 100644
--- a/config/locales/devise.fr.yml
+++ b/config/locales/devise.fr.yml
@@ -57,7 +57,7 @@ fr:
       two_factor_recovery_codes_changed:
         explanation: Les codes de récupération précédents ont été invalidés et de nouveaux ont été générés.
         subject: 'Mastodon : codes de récupération à deux facteurs régénérés'
-        title: Codes de récupération 2FA modifiés
+        title: Codes de récupération A2F modifiés
       unlock_instructions:
         subject: 'Mastodon : Instructions pour déverrouiller votre compte'
       webauthn_credential:
diff --git a/config/locales/devise.fy.yml b/config/locales/devise.fy.yml
index 240493636..9cdc97dd7 100644
--- a/config/locales/devise.fy.yml
+++ b/config/locales/devise.fy.yml
@@ -22,5 +22,13 @@ fy:
         action_with_app: Befêstigje en nei %{app} tebekgean
         explanation: Do hast in account op %{host} oanmakke en mei ien klik kinsto dizze aktivearje. Wannear’tsto dit account net oanmakke hast, meisto dit e-mailberjocht negearje.
         explanation_when_pending: Do fregest mei dit e-mailadres in útnûging oan foar %{host}. Neidatsto dyn e-mailadres befêstige hast, beoardielje wy dyn oanfraach. Do kinst oant dan noch net oanmelde. Wannear’t dyn oanfraach ôfwêzen wurdt, wurde dyn gegevens fuortsmiten en hoechsto dêrnei fierder neat mear te dwaan. Wannear’tsto dit net wiest, kinsto dit e-mailberjocht negearje.
+        extra_html: |-
+          128 / 5.000
+          Kontrolearje ek <a href="%{terms_path}">de regels fan de server</a> en <a href="%{policy_path}">ús tsjinstbetingsten</a>.
+        subject: 'Mastodon: Befêstiging ynstruksjes foar %{instance}'
+        title: E-mailadres neigean
+      email_changed:
+        explanation: 'It e-mailadres foar jo akkount wurdt feroare yn:'
+        extra: As jo ​​jo mailadres net wizige hawwe, is it wierskynlik dat immen tagong hat ta jo akkount. Wizigje asjebleaft jo wachtwurd daliks of nim kontakt op mei de server-admin as jo útsletten binne fan jo akkount.
     passwords:
       updated_not_active: Jo wachtwurd is mei sukses feroare.
diff --git a/config/locales/devise.ms.yml b/config/locales/devise.ms.yml
index 2925688a0..f0f6274f5 100644
--- a/config/locales/devise.ms.yml
+++ b/config/locales/devise.ms.yml
@@ -1 +1,53 @@
+---
 ms:
+  devise:
+    confirmations:
+      confirmed: Alamat e-mel anda telah berjaya disahkan.
+      send_instructions: Anda akan menerima e-mel dengan arahan untuk mengesahkan alamat e-mel anda dalam beberapa minit lagi. Sila semak folder spam anda jika tidak menerima e-mel ini.
+      send_paranoid_instructions: Jika e-mel anda wujud dalam database kami, anda akan menerima e-mel dengan arahan untuk mengesahkan alamat e-mel anda dalam beberapa minit lagi. Sila semak folder spam anda jika tidak menerima e-mel ini.
+    failure:
+      already_authenticated: Anda sudah daftar masuk.
+      inactive: Akaun anda belum diaktifkan.
+      invalid: "%{authentication_keys} atau kata laluan tidak sah."
+      pending: Akaun anda masih dalam semakan.
+      unauthenticated: Anda perlu daftar masuk atau mendaftar sebelum meneruskan.
+      unconfirmed: Anda perlu menyesahkan alamat e-mel anda sebelum meneruskan.
+    mailer:
+      confirmation_instructions:
+        action: Sahkan alamat e-mel
+        explanation: Anda telah mencipta akaun pada %{host} dengan alamat e-mel ini. Anda satu klik sahaja daripada mengaktifkannya. Jika anda tidak mencipta akaun tersebut, sila abaikan e-mel ini.
+        title: Sahkan alamat e-mel
+      email_changed:
+        explanation: 'Alamat e-mel untuk akaun anda sedang diubah kepada:'
+        subject: 'Mastodon: E-mel ditukar'
+        title: Alamat e-mel baru
+      password_change:
+        explanation: Kata laluan untuk akaun anda telah ditukar.
+        subject: 'Mastodon: Kata laluan diubah'
+        title: Kata laluan ditukar
+      reconfirmation_instructions:
+        explanation: Sahkan alamat baru untuk menukarkan e-mel anda.
+        title: Sahkan alamat e-mel
+      reset_password_instructions:
+        action: Tukar kata laluan
+        explanation: Anda meminta kata laluan baru untuk akaun anda.
+        title: Set semula kata laluan
+      two_factor_disabled:
+        title: 2FA dinyahaktifkan
+      two_factor_enabled:
+        title: 2FA diaktifkan
+    passwords:
+      updated: Kata laluan anda telah berjaya ditukar. Anda telah didaftar masuk.
+      updated_not_active: Kata laluan anda telah berjaya ditukar.
+    registrations:
+      destroyed: Selamat tinggal! Akaun anda telah berjaya dibatalkan. Kami harap berjumpa lagi.
+      signed_up: Selamat datang! Anda telah berjaya mendaftar.
+      signed_up_but_inactive: Anda telah berjaya mendaftar. Namun, kami tidak dapat mendaftar masuk anda kerana akaun anda belum diaktifkan.
+    sessions:
+      already_signed_out: Daftar keluar berjaya.
+      signed_in: Daftar masuk berjaya.
+      signed_out: Daftar keluar berjaya.
+  errors:
+    messages:
+      already_confirmed: sudah disahkan, sila cuba mendaftar masuk
+      not_found: tidak dijumpai
diff --git a/config/locales/devise.sco.yml b/config/locales/devise.sco.yml
new file mode 100644
index 000000000..f5a449d97
--- /dev/null
+++ b/config/locales/devise.sco.yml
@@ -0,0 +1,115 @@
+---
+sco:
+  devise:
+    confirmations:
+      confirmed: Yer email address haes been successfully confirmt.
+      send_instructions: Ye'll get a email tellin ye hou tae confirm yer email address in a wee minute. Please tak a luik in yer mince folder if ye didnae get this email.
+      send_paranoid_instructions: Gin yer email address exists in wir database, ye'll get a email tellin ye hou tae mak siccar yer email address in a wee minute. Please check yer mince folder if ye didnae get this email.
+    failure:
+      already_authenticated: Ye'r signed in awriddy.
+      inactive: Yer accoont isnae activatit yit.
+      invalid: No a valid %{authentication_keys} or passwird.
+      last_attempt: Ye'v juist the ae mair attempt afore yer accoont is snibbed.
+      locked: Yer accoont is snibbed.
+      not_found_in_database: No a valid %{authentication_keys} or passwird.
+      pending: Yer accoont is stull gettin luiked at the noo.
+      timeout: Yer session is expirit. Please sign in again fit tae gae forret.
+      unauthenticated: Ye'r needin tae sign in or sign up afore gaein forret.
+      unconfirmed: Ye hae tae confirm yer email address afore gaun forret.
+    mailer:
+      confirmation_instructions:
+        action: Verify yer email address
+        action_with_app: Mak siccar an return tae %{app}
+        explanation: Ye'v makkit a accoont on %{host} wi this email address. Ye'r ae click awa fae activatin it. If this wisnae yersel, please dinnae bother aboot this email.
+        explanation_when_pending: Ye applied fir a invite tae %{host} wi this email address. Ance ye mak siccar yer email address, we wull luik ower yer application. Ye kin log in tae chynge yer details or fir tae delete yer accoont, but ye cannae uise maist o the functions tae yer accoont is appruived. Gin yer application isnae taen on yer data wull get deletit, sae nae mair action wull be needit fae ye. Gin this wisnae yersel, please dinnae bother aboot this email.
+        extra_html: Please tak a deek at <a href="%{terms_path}">the rules o the server tae</a> an <a href="%{policy_path}">oor terms o service</a>.
+        subject: 'Mastodon: Confirmation instructions fir %{instance}'
+        title: Verify yer email address
+      email_changed:
+        explanation: 'The email address fir yer accoont is gettin chynged tae:'
+        extra: Gin ye didnae chynge yer email, it's mibbie the case thit somebody haes got access tae yer accoont. Please chynge yer passwird richt noo or get in touch wi the server admin if ye'r snibbed oot yer accoont.
+        subject: 'Mastodon: Email chynged'
+        title: New email address
+      password_change:
+        explanation: The passwird fir yer accoont haes been chynged.
+        extra: Gin ye didnae chynge yer passwird, it's mibbie the case thit somebody haes got access tae yer accoont. Please chynge yer passwird richt noo or get in touch wi the server admin if ye'r snibbed oot yer accoont.
+        subject: 'Mastodon: Passwird chynged'
+        title: Passwird chynged
+      reconfirmation_instructions:
+        explanation: Mak siccar the new address fir tae chynge yer email.
+        extra: Gin this chynge wisnae stertit bi yersel, please dingie this email. The email address fir the Mastodon accoont wullnae chynge tae ye chap the link abuin.
+        subject: 'Mastodon: Mak siccar email fir %{instance}'
+        title: Mak siccar email address
+      reset_password_instructions:
+        action: Chynge passwird
+        explanation: Ye speirt fir a new passwird fir yer accoont.
+        extra: Gin ye didnae speir fir this, please dingie this email. Yer passwird wullnae chynge tae ye chap the link abuin an mak a new ane.
+        subject: 'Mastodon: Reset passwird instructions'
+        title: Passwird reset
+      two_factor_disabled:
+        explanation: Twa factor authentication fir yer accoont haes been turnt aff. Login is noo possible uisin ainly a email address an passwird.
+        subject: 'Mastodon: Twa-factor authentication turnt aff'
+        title: 2FA turnt aff
+      two_factor_enabled:
+        explanation: Twa-factor authentication haes been turnt on fir yer accoont. A token gien bi the pairt TOTP app wull be needit fir login.
+        subject: 'Mastodon: Twa-factor authentication turnt on'
+        title: 2FA turnt on
+      two_factor_recovery_codes_changed:
+        explanation: The last recovery codes hae been pit in the bucket an new anes makkit.
+        subject: 'Mastodon: Twa-factor recovery codes re-jigged'
+        title: 2FA recovery codes chynged
+      unlock_instructions:
+        subject: 'Mastodon: Unsnib instructions'
+      webauthn_credential:
+        added:
+          explanation: The follaein security key haes been addit tae yer accoont
+          subject: 'Mastodon: New security key'
+          title: A new security key haes been addit
+        deleted:
+          explanation: The follaein security key haes been deletit fae yer accoont
+          subject: 'Mastodon: Security key deletit'
+          title: Ane o yer security keys haes been deletit
+      webauthn_disabled:
+        explanation: Authentication wi security keys haes been turnt aff on yer accoont. Login is noo possible uisin ainly the token generatit bi the pairt TOTP app.
+        subject: 'Mastodon: Authentication wi security keys turnt aff'
+        title: Security keys turnt aff
+      webauthn_enabled:
+        explanation: Security key authentication haes been turnt on fir yer accoont. Yer security key kin noo be uised fir login.
+        subject: 'Mastodon: Security key authentication turnt on'
+        title: Security keys turnt on
+    omniauth_callbacks:
+      failure: Cuidnae authenticate ye fae %{kind} acause “%{reason}”.
+      success: Successfully authenticatit fae %{kind} accoont.
+    passwords:
+      no_token: Ye cannae access this page athoot comin in fae a passwird reset email. Gin ye dae come fae a passwird reset email, please mak siccar ye uised the hail URL sent ye.
+      send_instructions: Gin yer email address exists in wir database, ye'll get a passwird recovery link in yer email in a wee minute. Please check yer mince folder if ye didnae get this email.
+      send_paranoid_instructions: Gin yer email address exists in wir database, ye'll get a passwird recovery link in yer email in a wee minute. Please check yer mince folder if ye didnae get this email.
+      updated: Yer passwird haes been chynged successfully. Ye'r noo signed in.
+      updated_not_active: Yer passwird haes been chynged successfully.
+    registrations:
+      destroyed: Cheerio! Yer accoont haes been successfully shut doon. We howp fir tae see ye again suin.
+      signed_up: Hullo! Ye'v signed up successfully.
+      signed_up_but_inactive: Ye'v signed up successfully. Hou an iver, we cuidnae sign ye in acause yer accoont isnae activatit yit.
+      signed_up_but_locked: Ye'v signed up successfully. Hou an iver, we cuidnae sign ye in acause yer accoont is snibbed.
+      signed_up_but_pending: A email wi a confirmation link haes been sent tae yer email address. Efter ye chap on the link, we'll luik ower yer application. Ye'll be sent a note gin it's approved.
+      signed_up_but_unconfirmed: A message wi a confirmation link haes been sent tae yer email address. Please follae the link fir tae activate yer accoont. Please check yer mince folder if ye didnae get this email.
+      update_needs_confirmation: Ye updatit yer accoont successfully, but we need tae verify yer new email address. Please tak a deek at yer email an follae the confirm link fir tae confirm yer new email address. Please tak a deek at yer mince folder if ye didnae get this email.
+      updated: Yer accoont haes been updatit successfully.
+    sessions:
+      already_signed_out: Signed oot successfully.
+      signed_in: Signed in successfully.
+      signed_out: Signed oot successfully.
+    unlocks:
+      send_instructions: Ye'll get a email wi instructions fir hou tae unsnib yer accoont in a wee minute. Please tak a deek at yer mince folder if ye didnae get this email.
+      send_paranoid_instructions: Gin yer accoont exists, ye'll get a email wi instructions fir hou tae unsnib it in a wee minute. Please tak a deek at yer mince folder if ye didnae get this email.
+      unlocked: Yer accoont haes been unsnibbed successfully. Please sign in fir tae gae forret.
+  errors:
+    messages:
+      already_confirmed: wis awriddy confirmt, please try signing in
+      confirmation_period_expired: needs tae be confirmt athin %{period}, please request a new ane
+      expired: haes expirt, please request a new ane
+      not_found: no fun
+      not_locked: wisnae snibbed
+      not_saved:
+        one: '1 error prohibitit this %{resource} fae bein saved:'
+        other: "%{count} errors prohibitit this %{resource} fae bein saved:"
diff --git a/config/locales/devise.sr-Latn.yml b/config/locales/devise.sr-Latn.yml
index c2c5f7c76..836f83a9a 100644
--- a/config/locales/devise.sr-Latn.yml
+++ b/config/locales/devise.sr-Latn.yml
@@ -11,19 +11,72 @@ sr-Latn:
       invalid: Neispravan %{authentication_keys} ili lozinka.
       last_attempt: Imate još jedan pokušaj pre nego što Vaš nalog bude zaključan.
       locked: Vaš nalog je zaključan.
-      not_found_in_database: Neispravan %{authentication_keys} ili lozinka.
+      not_found_in_database: Neispravna %{authentication_keys} ili lozinka.
+      pending: Vaš račun je još uvek u pregledu.
       timeout: Vreme trajanja Vaše sesije je isteklo. Za nastavak prijavite se ponovo.
       unauthenticated: Za nastavak se morate prijaviti ili registrovati.
       unconfirmed: Pre nastavka morate potvrditi svoj nalog.
     mailer:
       confirmation_instructions:
+        action: Potvrdite adresu e-pošte
+        action_with_app: Potvrdi i vrati se na %{app}
+        explanation: Napravili ste nalog na %{host} sa adresom ove e-pošte. Na jedan klik ste udaljeni od aktiviranja. Ako ovo niste vi, molimo ignorišite ovu e-poštu.
+        explanation_when_pending: Prijavili ste se za poziv %{host} sa ovim imejlom. Kada potvrdite svoj imejl, pregledaćemo vašu prijavu. Možete se prijaviti da biste promenili detalje ili izbrisali nalog, ali ne možete pristupiti većini funkcija dok vam nalog ne bude odobren. Ako vaša prijava bude odbijena, vaši podaci će biti uklonjeni, tako da od vas neće biti potrebne dalje radnje. Ako ovo niste bili vi, zanemarite ovaj imejl.
+        extra_html: Molimo da takođe proverite <a href="%{terms_path}"> pravila ove instance i <a href="%{policy_path}"> naše uslove korišćenja.
         subject: 'Mastodont: Uputstvo za potvrdu korisničkog naloga na instanci %{instance}'
+        title: Potvrdite adresu e-pošte
+      email_changed:
+        explanation: 'Adresa ove e-pošte za vaš nalog će biti promenjena u:'
+        extra: Ako niste promenili vašu e-poštu, sasvim je moguće da je neko drugi dobio pristup vašem nalogu. Molimo promenite lozinku odmah ili kontaktirajte administratora instance ako ste zaključani izvan vašeg naloga.
+        subject: 'Mastodon: E-pošta promenjena'
+        title: Nova adresa e-pošte
       password_change:
+        explanation: Lozinka vašeg naloga je promenjena.
+        extra: Ako niste promenili vašu e-poštu, sasvim je moguće da je neko drugi dobio pristup vašem nalogu. Molimo promenite lozinku odmah ili kontaktirajte administratora instance ako ste zaključani izvan vašeg naloga.
         subject: 'Mastodont: Lozinka promenjena'
+        title: Lozinka promenjena
+      reconfirmation_instructions:
+        explanation: Potvrdite novu adresu da biste promenili e-poštu.
+        extra: Ako ova promena nije inicirana sa vaše strane, molimo ignorišite ovu e-poštu. Adresa e-pošta za ovaj Mastodon nalog neće biti promenjena dok ne pristupite poveznici/linku iznad.
+        subject: 'Mastodon: Potvrdite e-poštu za %{instance}'
+        title: Potvrdite adresu e-pošte
       reset_password_instructions:
+        action: Lozinka promenjena
+        explanation: Zatražili ste novu lozinku za vaš nalog.
+        extra: Ako niste zatražili ovo, molimo ignorišite ovu e-poštu. Vaša lozinka neće biti promenjena dok ne pristupite poveznici/vezi iznad i ne napravite novu.
         subject: 'Mastodont: Uputstvo za resetovanje lozinke'
+        title: Lozinka resetovana
+      two_factor_disabled:
+        explanation: Dvofaktorska autentifikacija za vaš nalog je onemogućena. Prijava je sada moguća samo pomoću imejla i lozinke.
+        subject: 'Mastodon: Dvofaktorska autentifikacija je onemogućena'
+        title: 2FA isključena
+      two_factor_enabled:
+        explanation: Dvofaktorska autentifikacija je omogućena za vaš nalog. Za prijavu će biti potreban token koji generiše uparena TOTP aplikacija.
+        subject: 'Mastodon: Dvofaktorska autentifikacija je omogućena'
+        title: 2FA uključena
+      two_factor_recovery_codes_changed:
+        explanation: Prethodni kodovi za oporavak su poništeni i generisani su novi.
+        subject: 'Mastodon: Ponovo su generisani kodovi za oporavak'
+        title: 2FA kodovi oporavka promenjeni
       unlock_instructions:
         subject: 'Mastodont: Uputstvo za otključavanje korisničkog naloga'
+      webauthn_credential:
+        added:
+          explanation: Sledeći bezbednosni ključ je dodat na vaš nalog
+          subject: 'Mastodon: Novi sigurnosni ključ'
+          title: Dodan je novi bezbednosni ključ
+        deleted:
+          explanation: Sledeći bezbednosni ključ je uklonjen iz vašeg naloga
+          subject: 'Mastodon: Sigurnosni ključ je izbrisan'
+          title: Jedan od vaših bezbednosnih ključeva je izbrisan
+      webauthn_disabled:
+        explanation: Autentifikacija pomoću bezbednosnih ključeva je onemogućena za vaš nalog. Prijava je sada moguća samo pomoću tokena koji generiše uparena TOTP aplikacija.
+        subject: 'Mastodon: Autentifikacija sa sigurnosnim ključevima onemogućena'
+        title: Sigurnosni ključevi su onemogućeni
+      webauthn_enabled:
+        explanation: Autentifikacija sa bezbednosnim ključem je omogućena za vaš nalog. Vaš sigurnosni ključ se sada može koristiti za prijavljivanje.
+        subject: 'Mastodon: Omogućena autentifikacija sa bezbednim ključem'
+        title: Sigurnosni ključevi su omogućeni
     omniauth_callbacks:
       failure: Nismo u mogućnosti autorizovati Vas sa %{kind} nalogom zbog "%{reason}".
       success: Uspešna autorizacija sa %{kind} naloga.
@@ -38,6 +91,7 @@ sr-Latn:
       signed_up: Dobrodošli! Uspešno ste se registrovali.
       signed_up_but_inactive: Uspešno ste se registrovali. Nažalost ne možete se prijaviti zato što Vaš nalog još nije aktiviran.
       signed_up_but_locked: Uspešno ste se registrovali. Nažalost ne možete se prijaviti zato što je Vaš nalog zaključan.
+      signed_up_but_pending: Na vaš imejl poslata je poruka sa vezom za potvrdu. Nakon što kliknete na vezu, pregledaćemo vašu prijavu. Bićete obavešteni ako bude odobreno.
       signed_up_but_unconfirmed: Poruka za potvrdu Vašeg naloga je poslata na Vašu imejl adresu. Kliknite na vezu u imejlu da potvrdite svoj nalog. Molimo proverite i spam fasciklu ako niste primili poruku.
       update_needs_confirmation: Uspešno ste ažurirali svoj nalog, ali treba da potvrdimo novu adresu Vaše e-pošte. Molimo Vas da proverite e-poštu i pratite link za potvrdu nove adrese Vaše e-pošte.
       updated: Vaš nalog je uspešno ažuriran.
diff --git a/config/locales/devise.sr.yml b/config/locales/devise.sr.yml
index 9739ee21d..12c5869c6 100644
--- a/config/locales/devise.sr.yml
+++ b/config/locales/devise.sr.yml
@@ -11,7 +11,7 @@ sr:
       invalid: Неисправан %{authentication_keys} или лозинка.
       last_attempt: Имате још један покушај пре него што Ваш налог буде закључан.
       locked: Ваш налог је закључан.
-      not_found_in_database: Неисправан %{authentication_keys} или лозинка.
+      not_found_in_database: Неисправна %{authentication_keys} или лозинка.
       pending: Ваш рачун је још увек у прегледу.
       timeout: Време трајања Ваше сесије је истекло. За наставак пријавите се поново.
       unauthenticated: За наставак се морате пријавити или регистровати.
diff --git a/config/locales/devise.th.yml b/config/locales/devise.th.yml
index e46500796..6717019a0 100644
--- a/config/locales/devise.th.yml
+++ b/config/locales/devise.th.yml
@@ -37,7 +37,7 @@ th:
         title: เปลี่ยนรหัสผ่านแล้ว
       reconfirmation_instructions:
         explanation: ยืนยันที่อยู่ใหม่เพื่อเปลี่ยนอีเมลของคุณ
-        extra: หากการเปลี่ยนแปลงนี้ไม่ได้ทำโดยคุณ โปรดเพิกเฉยต่ออีเมลนี้ ที่อยู่อีเมลสำหรับบัญชี Mastodon จะไม่เปลี่ยนแปลงจนกว่าคุณจะเข้าถึงลิงก์ด้านบน
+        extra: หากการเปลี่ยนแปลงนี้ไม่ได้เริ่มต้นโดยคุณ โปรดเพิกเฉยต่ออีเมลนี้ ที่อยู่อีเมลสำหรับบัญชี Mastodon จะไม่เปลี่ยนแปลงจนกว่าคุณจะเข้าถึงลิงก์ด้านบน
         subject: 'Mastodon: ยืนยันอีเมลสำหรับ %{instance}'
         title: ยืนยันที่อยู่อีเมล
       reset_password_instructions:
@@ -89,8 +89,8 @@ th:
     registrations:
       destroyed: ลาก่อน! ยกเลิกบัญชีของคุณสำเร็จ เราหวังว่าจะได้พบคุณอีกในเร็ว ๆ นี้
       signed_up: ยินดีต้อนรับ! คุณได้ลงทะเบียนสำเร็จ
-      signed_up_but_inactive: คุณได้ลงทะเบียนสำเร็จ อย่างไรก็ตามเราไม่สามารถลงชื่อคุณเข้าได้เนื่องจากยังไม่ได้เปิดใช้งานบัญชีของคุณ
-      signed_up_but_locked: คุณได้ลงทะเบียนสำเร็จ อย่างไรก็ตามเราไม่สามารถลงชื่อคุณเข้าได้เนื่องจากมีการล็อคบัญชีของคุณอยู่
+      signed_up_but_inactive: คุณได้ลงทะเบียนสำเร็จ อย่างไรก็ตาม เราไม่สามารถลงชื่อคุณเข้าได้เนื่องจากยังไม่ได้เปิดใช้งานบัญชีของคุณ
+      signed_up_but_locked: คุณได้ลงทะเบียนสำเร็จ อย่างไรก็ตาม เราไม่สามารถลงชื่อคุณเข้าได้เนื่องจากมีการล็อคบัญชีของคุณอยู่
       signed_up_but_pending: ส่งข้อความพร้อมลิงก์ยืนยันไปยังที่อยู่อีเมลของคุณแล้ว หลังจากคุณคลิกลิงก์ เราจะตรวจทานใบสมัครของคุณ คุณจะได้รับการแจ้งเตือนหากมีการอนุมัติใบสมัคร
       signed_up_but_unconfirmed: ส่งข้อความพร้อมลิงก์ยืนยันไปยังที่อยู่อีเมลของคุณแล้ว โปรดไปตามลิงก์เพื่อเปิดใช้งานบัญชีของคุณ โปรดตรวจสอบโฟลเดอร์สแปมของคุณหากคุณไม่ได้รับอีเมลนี้
       update_needs_confirmation: คุณได้อัปเดตบัญชีของคุณสำเร็จ แต่เราจำเป็นต้องยืนยันที่อยู่อีเมลใหม่ของคุณ โปรดตรวจสอบอีเมลของคุณแล้วไปตามลิงก์ยืนยันเพื่อยืนยันที่อยู่อีเมลใหม่ของคุณ โปรดตรวจสอบโฟลเดอร์สแปมของคุณหากคุณไม่ได้รับอีเมลนี้
diff --git a/config/locales/devise.uk.yml b/config/locales/devise.uk.yml
index 4450a4e26..50e592a96 100644
--- a/config/locales/devise.uk.yml
+++ b/config/locales/devise.uk.yml
@@ -20,7 +20,7 @@ uk:
       confirmation_instructions:
         action: Підтвердити адресу електронної пошти
         action_with_app: Підтвердити та повернутися до %{app}
-        explanation: Ви створили обліковий запис на %{host} з цією адресою електронної пошти, і зараз на відстані одного кліку від його активації. Якщо це були не ви, проігноруйте цього листа, будь ласка.
+        explanation: Ви створили обліковий запис на %{host} з цією адресою електронної пошти, і зараз на відстані одного натиску від його активації. Якщо це були не ви, проігноруйте цього листа.
         explanation_when_pending: Ви подали заявку на запрошення до %{host} з цією адресою електронної пошти. Після підтвердження адреси ми розглянемо вашу заявку. Ви можете увійти, щоб змінити ваші дані або видалити свій обліковий запис, але Ви не зможете отримати доступ до більшості функцій, поки Ваш обліковий запис не буде схвалено. Якщо вашу заявку буде відхилено, ваші дані будуть видалені, тож вам не потрібно буде нічого робити. Якщо це були не ви, просто проігноруйте цей лист.
         extra_html: Також перегляньте <a href="%{terms_path}">правила сервера</a> та <a href="%{policy_path}">умови користування</a>.
         subject: 'Mastodon: Інструкції для підтвердження %{instance}'
diff --git a/config/locales/devise.zh-CN.yml b/config/locales/devise.zh-CN.yml
index e2f7bafd1..c752ceed8 100644
--- a/config/locales/devise.zh-CN.yml
+++ b/config/locales/devise.zh-CN.yml
@@ -7,10 +7,10 @@ zh-CN:
       send_paranoid_instructions: 如果你的电子邮箱地址存在于我们的数据库中,你将在几分钟内收到一封邮件,指导你如何验证电子邮箱地址。如果你没有收到这封邮件,请检查你的垃圾邮件文件夹。
     failure:
       already_authenticated: 你已登录。
-      inactive: 你还没有激活帐户。
+      inactive: 你还没有激活账户。
       invalid: "%{authentication_keys} 无效或密码错误。"
-      last_attempt: 你只有最后一次尝试机会,若未通过,帐号将被锁定。
-      locked: 你的帐户已被锁定。
+      last_attempt: 你只有最后一次尝试机会,若未通过,账号将被锁定。
+      locked: 你的账户已被锁定。
       not_found_in_database: "%{authentication_keys}或密码错误。"
       pending: 你的账号仍在审核中。
       timeout: 你的会话已过期。请重新登录再继续操作。
@@ -20,29 +20,29 @@ zh-CN:
       confirmation_instructions:
         action: 验证电子邮件地址
         action_with_app: 确认并返回%{app}
-        explanation: 你在 %{host} 上使用此电子邮箱地址创建了一个帐号。点击下面的链接即可激活帐号。如果你没有创建帐号,请忽略此邮件。
+        explanation: 你在 %{host} 上使用此电子邮箱地址创建了一个账号。点击下面的链接即可激活账号。如果你没有创建账号,请忽略此邮件。
         explanation_when_pending: 你用这个电子邮件申请了在 %{host} 注册。在确认电子邮件地址之后,我们会审核你的申请。在此之前,你不能登录。如果你的申请被驳回,你的数据会被移除,因此你无需再采取任何行动。如果申请人不是你,请忽略这封邮件。
         extra_html: 请记得阅读<a href="%{terms_path}">本实例的相关规定</a>和<a href="%{policy_path}">我们的使用条款</a>。
         subject: Mastodon:来自 %{instance} 的确认指引
         title: 验证电子邮件地址
       email_changed:
         explanation: 你的账号的电子邮箱地址将变更为:
-        extra: 如果你并没有请求更改你的电子邮件地址,则他人很有可能已经入侵你的帐户。请立即更改你的密码;如果你已经无法访问你的帐户,请联系服务器管理员请求协助。
+        extra: 如果你并没有请求更改你的电子邮件地址,则他人很有可能已经入侵你的账户。请立即更改你的密码,或者,如果你已经无法访问你的账户,请联系服务器管理员请求协助。
         subject: Mastodon:电子邮件地址已被更改
         title: 新电子邮件地址
       password_change:
-        explanation: 你的帐户密码已更改。
+        explanation: 你的账户密码已更改。
         extra: 如果你并没有申请更改密码,那似乎有人已经入侵你的帐户。请立即更改你的密码;如果你已经无法访问你的帐户,请联系服务器的管理员获取帮助。
         subject: Mastodon:密码已被更改
         title: 密码已被重置
       reconfirmation_instructions:
         explanation: 点击下面的链接来确认你的新电子邮件地址。
-        extra: 如果你并没有请求本次变更,请忽略此邮件。Mastodon 帐户的电子邮件地址只有在你点击上面的链接后才会更改。
+        extra: 如果你并没有请求本次更改,请忽略此邮件。Mastodon 账户的电子邮件地址只有在你点击上面的链接后才会更改。
         subject: Mastodon:确认 %{instance} 电子邮件地址
         title: 验证电子邮件地址
       reset_password_instructions:
         action: 更改密码
-        explanation: 点击下面的链接来更改帐户的密码。
+        explanation: 点击下面的链接来更改账户的密码。
         extra: 如果你并没有请求本次变更,请忽略此邮件。你的密码只有在你点击上面的链接并输入新密码后才会更改。
         subject: Mastodon:重置密码信息
         title: 重置密码
@@ -59,7 +59,7 @@ zh-CN:
         subject: Mastodon:重新生成双重认证的恢复码
         title: 双重认证的恢复码已更改
       unlock_instructions:
-        subject: Mastodon:帐户解锁信息
+        subject: Mastodon:账户解锁信息
       webauthn_credential:
         added:
           explanation: 以下安全密钥已添加到你的帐户
@@ -87,22 +87,22 @@ zh-CN:
       updated: 你的密码已成功修改,现在你已登录。
       updated_not_active: 你的密码已成功修改。
     registrations:
-      destroyed: 再见!你的帐户已成功注销。我们希望很快可以再见到你。
+      destroyed: 再见!你的账户已成功注销。我们希望很快可以再见到你。
       signed_up: 欢迎!你已成功注册。
       signed_up_but_inactive: 你已成功注册,但我们无法让你登录,因为你的账户还没有激活。
       signed_up_but_locked: 你已成功注册,但我们无法让你登录,因为你的账户已被锁定。
       signed_up_but_pending: 一条带有确认链接的邮件已经发送到你的电子邮件地址。在你点击该链接后,我们将会审查你的申请。如果申请被批准,你将收到通知。
-      signed_up_but_unconfirmed: 一封带有确认链接的邮件已经发送至你的邮箱,请点击邮件中的链接以激活你的帐户。如果没有,请检查你的垃圾邮件。
+      signed_up_but_unconfirmed: 一封带有确认链接的邮件已经发送至你的邮箱,请点击邮件中的链接以激活你的账户。如果没有,请检查你的垃圾邮件。
       update_needs_confirmation: 账号信息更新成功,但我们需要验证你的新电子邮件地址,请点击邮件中的链接以确认。如果没有收到邮件,请检查你的垃圾邮箱。
-      updated: 帐户资料更新成功。
+      updated: 账户资料更新成功。
     sessions:
       already_signed_out: 已成功登出。
       signed_in: 已成功登录。
       signed_out: 已成功登出。
     unlocks:
-      send_instructions: 几分钟后,你将收到一封解锁帐户的邮件。如果没有,请检查你的垃圾邮箱。
+      send_instructions: 几分钟后,你将收到一封解锁账户的邮件。如果没有,请检查你的垃圾邮箱。
       send_paranoid_instructions: 如果你的账号存在,你将会在几分钟内收到一封指引你如何解锁账号的邮件。如果你没有收到这封邮件,请检查你邮箱的垃圾箱。
-      unlocked: 你的帐户已成功解锁。登录以继续。
+      unlocked: 你的账户已成功解锁。登录以继续。
   errors:
     messages:
       already_confirmed: 已经成功确认,请尝试登录
diff --git a/config/locales/doorkeeper.af.yml b/config/locales/doorkeeper.af.yml
index ec1eda8bd..c2aab2646 100644
--- a/config/locales/doorkeeper.af.yml
+++ b/config/locales/doorkeeper.af.yml
@@ -3,19 +3,19 @@ af:
   activerecord:
     attributes:
       doorkeeper/application:
-        name: Toepassing naam
+        name: Toepassingnaam
         redirect_uri: Herlei URI
         scopes: Bestekke
-        website: Toepassing webtuiste
+        website: Toepassingwebtuiste
     errors:
       models:
         doorkeeper/application:
           attributes:
             redirect_uri:
-              fragment_present: kan nie 'n vragment bevat nie.
-              invalid_uri: moet 'n geldige URI wees.
-              relative_uri: moet 'n absolute URI wees.
-              secured_uri: moet 'n HTTPS/SSL URI wees.
+              fragment_present: kan nie ’n fragment bevat nie.
+              invalid_uri: moet ’n geldige URI wees.
+              relative_uri: moet ’n absolute URI wees.
+              secured_uri: moet ’n HTTPS/SSL URI wees.
   doorkeeper:
     applications:
       buttons:
@@ -32,11 +32,11 @@ af:
         error: Oeps! Hersien jou vorm vir moontlike foute
       help:
         native_redirect_uri: Gebruik %{native_redirect_uri} vir plaaslike toetse
-        redirect_uri: Gebruik een lyn per URI
-        scopes: Verdeel omvang-grense met spasies. Los dit leeg om verstek omvange te gebruik.
+        redirect_uri: Gebruik een reël per URI
+        scopes: Verdeel omvanggrense met spasies. Laat dit leeg om verstekomvange te gebruik.
       index:
         application: Toepassing
-        callback_url: Terugroep URL
+        callback_url: Terugroep-URL
         delete: Wis uit
         empty: Jy het geen toepassings nie.
         name: Naam
@@ -47,24 +47,24 @@ af:
       new:
         title: Nuwe toepassing
       show:
-        actions: Aksies
-        application_id: Kliënt sleutel
-        callback_urls: Terugroep URL'e
+        actions: Handelinge
+        application_id: Kliëntsleutel
+        callback_urls: Terugroep-URL'e
         scopes: Omvange
-        secret: Kliënt geheim
+        secret: Kliëntgeheim
         title: 'Toepassing: %{name}'
     authorizations:
       buttons:
         authorize: Magtig
         deny: Weier
       error:
-        title: "'n Fout het plaasgevind"
+        title: "’n Fout het ingesluip"
       new:
-        prompt_html: "%{client_name} wil toegang hê tot jou rekening. Dit is a derde party toepassing. <strong>Indien jy dit nie vertrou nie, moet dit nie bemagtig word nie.</strong>"
-        review_permissions: Hersien toestemming
+        prompt_html: "%{client_name} wil toegang hê tot jou rekening. Dit is ’n derdepartytoepassing. <strong>Moet dit nie toelaat as jy dit nie vertrou nie.</strong>"
+        review_permissions: Hersien toestemmings
         title: Benodig magtiging
       show:
-        title: Kopieër hierdie magtigings kode en plaas dit in die toepassing.
+        title: Kopieer hierdie magtigingskode en plak dit in die toepassing.
     authorized_applications:
       buttons:
         revoke: Herroep
@@ -72,16 +72,16 @@ af:
         revoke: Is jy seker?
       index:
         authorized_at: Bemagtig op %{date}
-        description_html: Hierdie is toepassings wat deur middel van die API toegang tot jou rekening kan verkry. As daar enige toepassings is wat jy nie herken nie, of 'n toepassing is wat wangedra, kan die bemagtiging herroep word.
+        description_html: Hierdie toepassings kan deur middel van die API tot jou rekening toegang verkry. As jy van hierdie toepassings nie herken nie, of by ’n toepassing wangedrag bespeur, kan jy dit verdere toegang tot jou rekening weier.
         last_used_at: Laas gebruik op %{date}
-        never_used: Noot gebruik nie
-        scopes: Magtiging
+        never_used: Nooit gebruik nie
+        scopes: Magtigings
         superapp: Intern
         title: Jou gemagtigde toepassings
     errors:
       messages:
-        access_denied: Die hulpbron eienaar of magtigingsbediener het die aansoek afgekeur.
-        credential_flow_not_configured: Hulpbron Eienaar Wagwoord Geloofsbrewe vloei het gefaal omdat Doorkeeper.configure.resource_owner_from_credentials nie opgestel is nie.
+        access_denied: Die hulpbroneienaar of magtigingsbediener het die aansoek afgekeur.
+        credential_flow_not_configured: Magtigingsbewysvloei van die hulpbroneienaar het gefaal omdat Doorkeeper.configure.resource_owner_from_credentials nie opgestel is nie.
     flash:
       applications:
         create:
@@ -89,33 +89,33 @@ af:
         destroy:
           notice: Toepassing uitgewis.
         update:
-          notice: Toepassing opdateer.
+          notice: Toepassing bygewerk.
       authorized_applications:
         destroy:
           notice: Toepassing herroep.
     grouped_scopes:
       access:
-        read: Slegs-lees toegang
-        read/write: Lees en skryf toegang
-        write: Slegs-skryf toegang
+        read: Slegs leestoegang
+        read/write: Lees-en-skryf-toegang
+        write: Slegs skryftoegang
       title:
         accounts: Rekeninge
         admin/accounts: Administrasie van rekeninge
         admin/all: Alle administratiewe funksies
         admin/reports: Administrasie van rapporteringe
         all: Alles
-        blocks: Blokkeringe
+        blocks: Blokkerings
         bookmarks: Boekmerke
         conversations: Gesprekke
-        crypto: End-tot-end enkripsie
+        crypto: End-tot-end-enkripsie
         favourites: Gunstelinge
         filters: Filters
-        follow: Verhoudinge
+        follow: Verhoudings
         lists: Lyste
-        media: Media aanhegsels
-        mutes: Dempinge
+        media: Media-aanhegsels
+        mutes: Uitdowings
         notifications: Kennisgewings
-        push: Stoot kennisgewings
+        push: Stootkennisgewings
         reports: Rapporteringe
         search: Soek
         statuses: Plasings
@@ -123,42 +123,42 @@ af:
       admin:
         nav:
           applications: Toepassings
-          oauth2_provider: OAuth2 Verskaffer
+          oauth2_provider: OAuth2-verskaffer
       application:
-        title: Benodig OAuth bemagtiging
+        title: Benodig OAuth-bemagtiging
     scopes:
       admin:read: lees alle data op die bediener
-      admin:read:accounts: lees sensitiewe inligting vanaf alle rekeninge
+      admin:read:accounts: lees sensitiewe inligting van alle rekeninge
       admin:read:reports: lees sensitiewe inligting van alle verslae end aangeklaagde rekeninge
       admin:write: verander alle data op die bediener
-      admin:write:accounts: voer modereer aksies uit op rekeninge
-      admin:write:reports: voer modereer aksies uit op verslae
-      crypto: gebruik end-tot-end enkripsie
-      follow: verander rekening verhoudinge
+      admin:write:accounts: modereer rekeninge
+      admin:write:reports: modereer verslae
+      crypto: gebruik end-tot-end-enkripsie
+      follow: verander rekeningverhoudings
       push: ontvang jou stootkennisgewings
-      read: lees die data van al jou rekeninge
-      read:accounts: sien rekening inligting
-      read:blocks: sien blokeringe
+      read: lees al jou rekeningdata
+      read:accounts: sien rekeninginligting
+      read:blocks: sien jou blokkerings
       read:bookmarks: sien jou boekmerke
       read:favourites: sien jou gunstelinge
       read:filters: sien jou filters
       read:lists: sien jou lyste
-      read:mutes: sien jou stilmake
+      read:mutes: sien jou uitdowings
       read:notifications: sien jou kennisgewinge
-      read:reports: sien jou rapporteringe
+      read:reports: sien jou rapporterings
       read:search: soek namens jou
       read:statuses: sien alle plasings
-      write: verander alle data van jou rekening
-      write:accounts: verander jou profiel
-      write:blocks: blokeer rekeninge en domeine
-      write:bookmarks: boekmerk plasings
-      write:conversations: demp en wis gesprekke uit
-      write:favourites: merk gunsteling plasings
+      write: pas al jou rekeningdata aan
+      write:accounts: pas jou profiel aan
+      write:blocks: blokkeer rekeninge en domeine
+      write:bookmarks: laat ’n boekmerk by plasings
+      write:conversations: doof en wis gesprekke uit
+      write:favourites: merk gunstelingplasings
       write:filters: skep filters
       write:follows: volg mense
       write:lists: skep lyste
-      write:media: laai meda lêers op
-      write:mutes: demp mense en gesprekke
-      write:notifications: maak jou kennisgewings skoon
+      write:media: laai medalêers op
+      write:mutes: doof mense en gesprekke uit
+      write:notifications: verwyder jou kennisgewings
       write:reports: rapporteer ander mense
       write:statuses: publiseer plasings
diff --git a/config/locales/doorkeeper.an.yml b/config/locales/doorkeeper.an.yml
new file mode 100644
index 000000000..d3dd67158
--- /dev/null
+++ b/config/locales/doorkeeper.an.yml
@@ -0,0 +1,185 @@
+---
+an:
+  activerecord:
+    attributes:
+      doorkeeper/application:
+        name: Nombre d'aplicación
+        redirect_uri: URI atura redirección
+        scopes: Ambitos
+        website: Puesto web
+    errors:
+      models:
+        doorkeeper/application:
+          attributes:
+            redirect_uri:
+              fragment_present: no puede contener un fragmento.
+              invalid_uri: ha d'estar un URI valido.
+              relative_uri: ha d'estar una URI absoluta.
+              secured_uri: ha d'estar un URI HTTPS/SSL.
+  doorkeeper:
+    applications:
+      buttons:
+        authorize: Autorizar
+        cancel: Cancelar
+        destroy: Destruyir
+        edit: Editar
+        submit: Ninviar
+      confirmations:
+        destroy: Ye seguro?
+      edit:
+        title: Editar aplicación
+      form:
+        error: Uuups! Comprebe lo suyo formulario
+      help:
+        native_redirect_uri: Utilice %{native_redirect_uri} pa prebas locals
+        redirect_uri: Utilice una linia per URI
+        scopes: Desepare los ambitos con espacios. Lo deixe en blanco pa fer servir los ambitos per defecto.
+      index:
+        application: Aplicación
+        callback_url: URL de callback
+        delete: Eliminar
+        empty: No tiens aplicacions.
+        name: Nombre
+        new: Nueva aplicación
+        scopes: Ambitos
+        show: Amostrar
+        title: Las suyas aplicacions
+      new:
+        title: Nueva aplicación
+      show:
+        actions: Accions
+        application_id: ID de l'aplicación
+        callback_urls: URLs de callback
+        scopes: Ambitos
+        secret: Secreto
+        title: 'Aplicación: %{name}'
+    authorizations:
+      buttons:
+        authorize: Autorizar
+        deny: Desautorizar
+      error:
+        title: Ha ocurriu una error
+      new:
+        prompt_html: "%{client_name} deseya permiso pa acceder ta la tuya cuenta. Ye una aplicación de tercers. <strong>Si no confías en ella, no habrías d'autorizar-la.</strong>"
+        review_permissions: Revisar permisos
+        title: Se requiere autorización
+      show:
+        title: Copia este codigo d'autorización y apega-lo en l'aplicación.
+    authorized_applications:
+      buttons:
+        revoke: Revocar
+      confirmations:
+        revoke: Ye seguro?
+      index:
+        authorized_at: Autorizau lo %{date}
+        description_html: Estas son aplicacions que pueden acceder ta la tuya cuenta usando la API. Si i hai aplicacions que no se reconoixen aquí, u una aplicación no funciona correctament, puetz revocar lo suyo acceso.
+        last_used_at: Zaguer uso lo %{date}
+        never_used: Nunca usau
+        scopes: Permisos
+        superapp: Interno
+        title: Las suyas aplicacions autorizadas
+    errors:
+      messages:
+        access_denied: Lo propietario d'o recurso u servidor d'autorización denegó la petición.
+        credential_flow_not_configured: Las credencials de clau d'o propietario d'o recurso falló a causa que Doorkeeper.configure.resource_owner_from_credentials ye sin configurar.
+        invalid_client: L'autentificación d'o client falló debiu u a que ye un client desconoixiu u no ye incluyius l'autentificación d'o client u lo metodo d'autentificación no ye confirmau.
+        invalid_grant: La concesión d'autorización ofrida ye invalida, venció, se revocó, no coincide con a URI de redirección utilizada en a petición d'autorización, u estió emitida pa unatro client.
+        invalid_redirect_uri: La URI de redirección incluyida no ye valida.
+        invalid_request:
+          missing_param: 'Falta este parametro requeriu: %{value}.'
+          request_not_authorized: La solicitut ha d'estar autorizada. I hai un parametro requeriu pa autorizar la solicitut que falta u no ye valido.
+          unknown: Falta un parametro requeriu en a solicitut, u esta incluye una valor no admitida de parametro, u bien ye mal formulada.
+        invalid_resource_owner: Las credencials proporcionadas d'o propietario d'o recurso no son validas, u lo propietario d'o recurso no puede estar trobau
+        invalid_scope: L'ambito pediu ye invalido, desconoixiu u erronio.
+        invalid_token:
+          expired: Lo autentificador d'acceso expiró
+          revoked: Lo autentificador d'acceso estió revocado
+          unknown: Lo autentificador d'acceso ye invalido
+        resource_owner_authenticator_not_configured: Lo propietario d'o recurso falló a causa que Doorkeeper.configure.resource_owner_authenticator ye sin configurar.
+        server_error: Lo servidor de l'autorización entontró una condición inasperada que le impidió complir con a solicitut.
+        temporarily_unavailable: Lo servidor de l'autorización ye actualment incapaz de maniar la petición a causa d'una sobrecarga temporal u un treballo de mantenimiento d'o servidor.
+        unauthorized_client: Lo client no ye autorizau a realizar esta petición utilizando este metodo.
+        unsupported_grant_type: Lo tipo de concesión d'autorización no ye suportau per lo servidor d'autorización.
+        unsupported_response_type: Lo servidor d'autorización no suporta este tipo de respuesta.
+    flash:
+      applications:
+        create:
+          notice: Aplicación creyada.
+        destroy:
+          notice: Aplicación eliminada.
+        update:
+          notice: Aplicación actualizada.
+      authorized_applications:
+        destroy:
+          notice: Aplicación revocada.
+    grouped_scopes:
+      access:
+        read: Acceso de solo lectura
+        read/write: Acceso de lectura y escritura
+        write: Acceso de nomás escritura
+      title:
+        accounts: Cuentas
+        admin/accounts: Administración de cuentas
+        admin/all: Totas las funcions administrativas
+        admin/reports: Administración d'informes
+        all: Tot
+        blocks: Bloqueyos
+        bookmarks: Marcadors
+        conversations: Conversacions
+        crypto: Zifrau de cabo a cabo
+        favourites: Favoritos
+        filters: Filtros
+        follow: Relacions
+        follows: Seguius
+        lists: Listas
+        media: Adjuntos multimedia
+        mutes: Silenciaus
+        notifications: Notificacions
+        push: Notificacions push
+        reports: Informes
+        search: Buscar
+        statuses: Publicacions
+    layouts:
+      admin:
+        nav:
+          applications: Aplicacions
+          oauth2_provider: Furnidor OAuth2
+      application:
+        title: OAuth autorización requerida
+    scopes:
+      admin:read: leyer totz los datos en o servidor
+      admin:read:accounts: leyer información sensible de totas las cuentas
+      admin:read:reports: leyer información sensible de totz los informes y cuentas denunciadas
+      admin:write: modificar totz los datos en o servidor
+      admin:write:accounts: realizar accions de moderación en cuentas
+      admin:write:reports: realizar accions de moderación en informes
+      crypto: usar zifrau de cabo a extremo
+      follow: seguir, blocar, desblocar y deixar de seguir cuentas
+      push: recibir las tuyas notificacions push
+      read: leyer los datos d'a tuya cuenta
+      read:accounts: veyer información de cuentas
+      read:blocks: veyer a quí has blocau
+      read:bookmarks: veyer los tuyos marcadors
+      read:favourites: veyer los tuyos favoritos
+      read:filters: veyer los tuyos filtros
+      read:follows: veyer a quí sigues
+      read:lists: veyer las tuyas listas
+      read:mutes: veyer a quí has silenciau
+      read:notifications: veyer las tuyas notificacions
+      read:reports: veyer las tuyas informes
+      read:search: buscar en o suyo nombre
+      read:statuses: veyer totz los estaus
+      write: publicar en o tuyo nombre
+      write:accounts: modifica lo tuyo perfil
+      write:blocks: blocar cuentas y dominios
+      write:bookmarks: alzar estaus como marcadors
+      write:conversations: silenciar y eliminar conversacions
+      write:favourites: publicacions favoritas
+      write:filters: creyar filtros
+      write:follows: seguir usuarios
+      write:lists: creyar listas
+      write:media: puyar fichers multimedia
+      write:mutes: silenciar usuarios y conversacions
+      write:notifications: limpia las tuyas notificacions
+      write:reports: denunciar a atras personas
+      write:statuses: publicar estaus
diff --git a/config/locales/doorkeeper.ar.yml b/config/locales/doorkeeper.ar.yml
index 9019b0fd9..137ee3eae 100644
--- a/config/locales/doorkeeper.ar.yml
+++ b/config/locales/doorkeeper.ar.yml
@@ -96,7 +96,7 @@ ar:
           revoked: تم إبطال رمز المصادقة
           unknown: رمز المصادقة غير صالح
         resource_owner_authenticator_not_configured: لقد أخفقت عملية البحث عن صاحب المَورِد لغياب الضبط في Doorkeeper.configure.resource_owner_authenticator.
-        server_error: لقد صادفَ خادوم التصريحات ظروفا غير مواتية، الأمر الذي مَنَعه مِن مواصلة دراسة الطلب.
+        server_error: حدث خلل غير متوقع في الخادم مما تسبب في فشل معالجة الطلب.
         temporarily_unavailable: تعذر على خادم التفويض معالجة الطلب و ذلك بسبب زيادة مؤقتة في التحميل أو عملية صيانة مبرمجة على الخادم.
         unauthorized_client: لا يصرح للعميل بتنفيذ هذا الطلب باستخدام هذه الطريقة.
         unsupported_grant_type: هذا النوع من منح التصريح غير معتمد في خادم الترخيص.
@@ -135,7 +135,7 @@ ar:
         media: الوسائط المرفقة
         mutes: تم كتمها
         notifications: الإشعارات
-        push: الإخطارات المدفوعة
+        push: الإشعارات
         reports: الشكاوى
         search: البحث
         statuses: المنشورات
diff --git a/config/locales/doorkeeper.ast.yml b/config/locales/doorkeeper.ast.yml
index c65a26bd5..13f46ce85 100644
--- a/config/locales/doorkeeper.ast.yml
+++ b/config/locales/doorkeeper.ast.yml
@@ -25,7 +25,7 @@ ast:
       confirmations:
         destroy: "¿De xuru?"
       form:
-        error: "¡Meca! Comprueba los fallos posibles del formulariu"
+        error: "¡Meca! Revisa los errores posibles del formulariu"
       help:
         native_redirect_uri: Usa %{native_redirect_uri} pa pruebes llocales
         redirect_uri: Usa una llinia per URI
@@ -38,14 +38,18 @@ ast:
         title: Aplicación nueva
       show:
         actions: Aiciones
+        application_id: Clave del veceru
         scopes: Ámbitos
+        secret: Secretu del veceru
         title: 'Aplicación: %{name}'
     authorizations:
       buttons:
         authorize: Autorizar
         deny: Negar
       error:
-        title: Asocedió un fallu
+        title: Prodúxose un error
+      new:
+        prompt_html: "%{client_name}, que ye una aplicación de terceros, quier tener accesu a la cuenta. <strong>Si nun t'enfotes nella, nun habríes autorizala.</strong>"
       show:
         title: Copia esti códigu d'autorización y apiégalu na aplicación.
     authorized_applications:
@@ -54,21 +58,33 @@ ast:
       confirmations:
         revoke: "¿De xuru?"
       index:
+        description_html: Estes son les aplicaciones que puen acceder a la cuenta cola API. Si equí hai aplicaciones que nun conoces o hai dalguna aplicación que nun funciona correutamente, pues revocar el so accesu.
+        never_used: Enxamás s'usó
         scopes: Permisos
         title: Les aplicaciones qu'autoricesti
     errors:
       messages:
-        access_denied: El dueñu del recursu o'l sirvidor d'autorización ñegó la solicitú.
+        access_denied: El propietariu del recursu o'l sirvidor d'autorización negó la solicitú.
         invalid_token:
           expired: Caducó'l pase d'accesu
           revoked: Revocóse'l pase d'accesu
           unknown: El pase d'accesu nun ye válidu
-        server_error: El sirvidor d'autorizaciones alcontró una condición inesperada qu'evitó que cumpliera la solicitú.
+        server_error: El sirvidor d'autorización atopó una condición inesperada qu'evitó que cumpliera la solicitú.
         temporarily_unavailable: Anguaño'l sirvidor d'autorizaciones nun ye a remanar la solicitú pola mor d'una sobrecarga temporal o caltenimientu del sirvidor.
-        unauthorized_client: El veceru nun ta autorizáu pa facer esta solicitú usando esti métodu.
+        unauthorized_client: El veceru nun ta autorizáu pa facer esta solicitú con esti métodu.
         unsupported_response_type: El sirvidor d'autorización nun ye compatible con esti tipu de respuesta.
     grouped_scopes:
+      access:
+        read: Accesu de namás llectura
+        read/write: Accesu de llectura ya escritura
+        write: Accesu de namás escritura
       title:
+        accounts: Cuentes
+        admin/all: Toles funciones alministratives
+        conversations: Conversaciones
+        crypto: Cifráu de puntu a puntu
+        filters: Peñeres
+        follow: Rellaciones
         notifications: Avisos
     layouts:
       admin:
@@ -76,32 +92,36 @@ ast:
           applications: Aplicaciones
           oauth2_provider: Fornidor d'OAuth2
     scopes:
-      admin:read: lleer tolos datos del sirvidor
-      admin:read:accounts: lleer la información sensible de toles cuentes
-      admin:read:reports: lleer la información sensible de tolos informes y cuentes informaes
-      admin:write: modificar tolos datos del sirvidor
-      read: lleer tolos datos de la to cuenta
-      read:accounts: ver información de cuentes
-      read:blocks: ver quién bloquies
-      read:bookmarks: ver los tos marcadores
+      admin:read: llee tolos datos del sirvidor
+      admin:read:accounts: llee la información sensible de toles cuentes
+      admin:read:reports: llee la información sensible de tolos informes y cuentes informaes
+      admin:write: modifica tolos datos del sirvidor
+      crypto: usa'l cifráu de puntu a puntu
+      follow: modifica les rellaciones de les cuentes
+      push: receición d'avisos push
+      read: llee tolos datos de les cuentes
+      read:accounts: mira la información de les cuentes
+      read:blocks: mira les cuentes bloquiaes
+      read:bookmarks: mira los marcadores
       read:favourites: ver los tos favoritos
-      read:filters: ver les tos peñeres
-      read:follows: ver quién sigues
-      read:lists: ver les tos llistes
+      read:filters: mira les peñeres
+      read:follows: mira quién sigues
+      read:lists: mira les llistes
       read:mutes: ver quién silencies
-      read:notifications: ver los tos avisos
-      read:reports: ver los tos informes
-      read:statuses: ver tolos estaos
-      write: modificar los datos de la to cuenta
-      write:accounts: modificar el to perfil
-      write:blocks: bloquiar cuentes y dominios
+      read:notifications: mira los avisos
+      read:reports: mira los informes
+      read:search: busca nel to nome
+      read:statuses: mira tolos artículos
+      write: modifica los datos de les cuentes
+      write:accounts: modifica los perfiles
+      write:blocks: bloquia cuentes y dominios
       write:bookmarks: amestar estaos a Marcadores
-      write:favourites: marcar estaos como favoritos
-      write:filters: crear peñeres
-      write:follows: siguir a xente
-      write:lists: crear llistes
-      write:media: xubir ficheros multimedia
-      write:mutes: silenciar xente y conversaciones
-      write:notifications: llimpiar los tos avisos
-      write:reports: informar d'otres persones
-      write:statuses: espublizar estaos
+      write:favourites: artículos favoritos
+      write:filters: crea peñeres
+      write:follows: sigue a perfiles
+      write:lists: crea llistes
+      write:media: xube ficheros multimedia
+      write:mutes: desactiva los avisos de perfiles y de conversaciones
+      write:notifications: borra los avisos
+      write:reports: informa d'otres perfiles
+      write:statuses: espubliza artículos
diff --git a/config/locales/doorkeeper.be.yml b/config/locales/doorkeeper.be.yml
new file mode 100644
index 000000000..c14e7518b
--- /dev/null
+++ b/config/locales/doorkeeper.be.yml
@@ -0,0 +1,185 @@
+---
+be:
+  activerecord:
+    attributes:
+      doorkeeper/application:
+        name: Назва праграмы
+        redirect_uri: URI перанакіравання
+        scopes: Сферы ўжывання.
+        website: Вэб-сайт праграмы
+    errors:
+      models:
+        doorkeeper/application:
+          attributes:
+            redirect_uri:
+              fragment_present: не можа ўтрымліваць фрагмент
+              invalid_uri: павінен быць сапраўдным URI
+              relative_uri: павінен быць абсалютным URI.
+              secured_uri: павінен быць HTTPS/SSL URI.
+  doorkeeper:
+    applications:
+      buttons:
+        authorize: Аўтарызавацца
+        cancel: Скасаваць
+        destroy: Знішчыць
+        edit: Рэдагаваць
+        submit: Адправіць
+      confirmations:
+        destroy: Вы ўпэўнены?
+      edit:
+        title: Рэдагаваць праграму
+      form:
+        error: Вой! Праверце вашу форму на магчымыя памылкі
+      help:
+        native_redirect_uri: Карыстайце %{native_redirect_uri} для лакальных тэстаў
+        redirect_uri: Выкарыстоўвайце адзін радок для кожнай спасылкі
+        scopes: Падзяліце вобласці абмежаванняў прабеламі. Пакіньце поле пустым, каб выкарыстоўваць дыяпазоны па змаўчанні.
+      index:
+        application: Праграма
+        callback_url: URL зваротнага выкліку
+        delete: Выдаліць
+        empty: У вас няма праграм.
+        name: Назва
+        new: Новая праграма
+        scopes: Межы агляду
+        show: Паказаць
+        title: Вашы праграмы
+      new:
+        title: Новая праграма
+      show:
+        actions: Дзеянні
+        application_id: Ключ кліента
+        callback_urls: URL зваротных выклікаў
+        scopes: Дазволы
+        secret: Кліенцкая таямніца
+        title: 'Праграма: %{name}'
+    authorizations:
+      buttons:
+        authorize: Аўтарызавацца
+        deny: Адмовіць
+      error:
+        title: Узнікла памылка
+      new:
+        prompt_html: "%{client_name} хацеў бы атрымаць дазвол для доступу да вашага акаунта. Гэта вонкавае прыкладанне. <strong> Не давайце дазволу на гэта, калі вы не давяраеце гэтаму прыкладанню. </strong>"
+        review_permissions: Прагледзець дазволы
+        title: Патрабуецца аўтарызацыя
+      show:
+        title: Скапіруйце гэты код аўтарызацыі і ўстаўце яго ў праграму.
+    authorized_applications:
+      buttons:
+        revoke: Адклікаць
+      confirmations:
+        revoke: Вы ўпэўнены?
+      index:
+        authorized_at: Аўтарызавана %{date}
+        description_html: Гэта прыкладанні якія могуць мець доступ да вашага акаунта з дапамогай API. Калі вы бачыце тут прыкладанні, якія вы не пазнаеце, або прыкладанне блага сябе паводзіць вы можаце прыбраць ягонны доступ.
+        last_used_at: Апошні раз скарыстана %{date}
+        never_used: Не выкарыстоўвалася
+        scopes: Дазволы
+        superapp: Унутраны
+        title: Вашы аўтарызаваныя праграмы
+    errors:
+      messages:
+        access_denied: Уласнік рэсурсу або сервер аўтарызацыі адхіліў ваш запыт.
+        credential_flow_not_configured: Resource Owner Password Credentials flow не прайшоў з-за таго, што ўласцівасць Doorkeeper.configure.resource_owner_from_credentials была не вызначана.
+        invalid_client: Збой аўтэнтыфікацыі кліента з-за невядомага кліента, адсутнасці аўтэнтыфікацыі кліента або метаду аўтэнтыфікацыі, які не падтрымліваецца.
+        invalid_grant: Прадастаўлены дазвол на аўтарызацыю несапраўдны, пратэрмінованы, быў адкліканы, не адпавядае URI перанакіравання, які выкарыстоўваецца ў запыце аўтарызацыі або быў выдадзены іншаму кліенту.
+        invalid_redirect_uri: Прадстаўлены URI перанакіравання не сапраўдны.
+        invalid_request:
+          missing_param: 'Адсутнічае абавязковы параметр: %{value}.'
+          request_not_authorized: Запыт павінен быць аўтарызаваны. Абавязковы параметр для запыту аўтарызацыі адсутнічае або несапраўдны.
+          unknown: У запыце адсутнічае абавязковы параметр, уключае значэнне параметра, якое не падтрымліваецца, альбо ён сфарміраваны іншым няправільным чынам.
+        invalid_resource_owner: Прадастаўленыя ўліковыя дадзеныя ўладальніка рэсурсу несапраўдныя або немагчыма знайсці ўладальніка рэсурсу
+        invalid_scope: Запытаная обласць абмежаванняў несапраўдная, невядомая альбо няправільная.
+        invalid_token:
+          expired: Тэрмін дзеяння токена доступу скончыўся
+          revoked: Токен доступу быў адкліканы
+          unknown: Токен доступу з'яўляецца несапраўдным
+        resource_owner_authenticator_not_configured: Пошук уладальніка рэсурсу не прайшоў з-за таго, што ўласцівасць Doorkeeper.configure.resource_owner_authenticator была не вызначына.
+        server_error: Сервер аўтарызацыі сутыкнуўся з непрадбачанай умоваю, якая не дазваляе выканаць запыт.
+        temporarily_unavailable: Сервер аўтарызацыі зараз не можа апрацаваць запыт з-за часовага перагрузу або прафілактычных работ на серверы.
+        unauthorized_client: Кліент не аўтарызаваны, каб выканаць такі запыт выкарыстоўваючы гэты метад.
+        unsupported_grant_type: Тып аўтарызацыі не падтрымліваецца серверам аўтарызацыі.
+        unsupported_response_type: Сервер аўтарызацыі не падтрымлівае такі тып адказу.
+    flash:
+      applications:
+        create:
+          notice: Праграма створана.
+        destroy:
+          notice: Праграма выдалена.
+        update:
+          notice: Праграма абноўлена.
+      authorized_applications:
+        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: Скаргі
+        search: Пошук
+        statuses: Допісы
+    layouts:
+      admin:
+        nav:
+          applications: Праграмы
+          oauth2_provider: OAuth2 правайдар
+      application:
+        title: Неабходна OAuth аўтарызацыя
+    scopes:
+      admin:read: чытаць усе дадзеныя на гэтым серверы
+      admin:read:accounts: бачыць канфідэнцыйную інфармацыю ўсіх акаўнтаў
+      admin:read:reports: чытаць далікатную інфармацыю са скарг і ўліковых запісаў, на якія пададзена скарга
+      admin:write: змяняць усе дадзеныя на гэтым серверы
+      admin:write:accounts: мадэраваць уліковыя запісы
+      admin:write:reports: мадэраваць скаргі
+      crypto: выкарыстоўваць скразное шыфраванне
+      follow: змяняць зносіны ўліковага запісу
+      push: атрымліваць push-апавяшчэнні
+      read: чытаць усе дадзеныя свайго ўліковага запісу
+      read:accounts: бачыць інфармацыю аб уліковых запісах
+      read:blocks: бачыць свае блакіроўкі
+      read:bookmarks: бачыць свае закладкі
+      read:favourites: бачыць свае выбранае
+      read:filters: бачыць свае фільтры
+      read:follows: бачыць свае падпіскі
+      read:lists: бачыць свае спіскі
+      read:mutes: праглядзець спіс ігнараваных
+      read:notifications: глядзець вашы абвяшчэннi
+      read:reports: паглядзець вашыя скаргі
+      read:search: шукаць ад вашага імя
+      read:statuses: бачыць усе допісы
+      write: абнавіць усе дадзеныя свайго ўліковага запісу
+      write:accounts: змяніць ваш профіль
+      write:blocks: блакіраваць уліковыя запісы і дамены
+      write:bookmarks: захаваныя допісы
+      write:conversations: ігнараваць і выдаліць размовы
+      write:favourites: упадабаныя допісы
+      write:filters: ствараць фільтры
+      write:follows: падпісвайцеся на людзей
+      write:lists: стварыць спiсы
+      write:media: запампаваць медыя-файлы
+      write:mutes: заглушыць людзей ды размовы
+      write:notifications: ачысціць вашы абвяшчэнні
+      write:reports: паскардзіцца на іншых людзей
+      write:statuses: апублікаваць запісы
diff --git a/config/locales/doorkeeper.br.yml b/config/locales/doorkeeper.br.yml
index 810e96d8b..0a81e03bb 100644
--- a/config/locales/doorkeeper.br.yml
+++ b/config/locales/doorkeeper.br.yml
@@ -5,6 +5,7 @@ br:
       doorkeeper/application:
         name: Anv an arload
         redirect_uri: Dazkas URI
+        scopes: Dougoù
         website: Lec'hienn an arload
     errors:
       models:
@@ -19,7 +20,7 @@ br:
         authorize: Aotren
         cancel: Nullañ
         destroy: Distrujañ
-        edit: Aozañ
+        edit: Kemmañ
         submit: Kas
       confirmations:
         destroy: Ha sur oc'h ?
@@ -37,6 +38,7 @@ br:
         empty: Arloadoù ebet ganeoc'h.
         name: Anv
         new: Arload nevez
+        scopes: Dougoù
         show: Diskouez
         title: Hoc'h arloadoù
       new:
@@ -45,6 +47,7 @@ br:
         actions: Obererezhioù
         application_id: Alc'hwez an arval
         callback_urls: URLoù adc'halv
+        scopes: Dougoù
         title: 'Arload : %{name}'
     authorizations:
       buttons:
@@ -93,6 +96,15 @@ br:
       authorized_applications:
         destroy:
           notice: Skarzhet eo bet an arload.
+    grouped_scopes:
+      title:
+        blocks: Re stanket
+        bookmarks: Sinedoù
+        filters: Siloù
+        lists: Listennoù
+        mutes: Kuzhet
+        search: Klask
+        statuses: Toudoù
     layouts:
       admin:
         nav:
diff --git a/config/locales/doorkeeper.bs.yml b/config/locales/doorkeeper.bs.yml
new file mode 100644
index 000000000..e9e174462
--- /dev/null
+++ b/config/locales/doorkeeper.bs.yml
@@ -0,0 +1 @@
+bs:
diff --git a/config/locales/doorkeeper.ca.yml b/config/locales/doorkeeper.ca.yml
index 203388823..4bf83bed3 100644
--- a/config/locales/doorkeeper.ca.yml
+++ b/config/locales/doorkeeper.ca.yml
@@ -33,7 +33,7 @@ ca:
       help:
         native_redirect_uri: Usa %{native_redirect_uri} per a proves locals
         redirect_uri: Usa una línia per URI
-        scopes: Separa els àmbits amb espais. Deixa-ho en blanc per usar els àmbits per defecte.
+        scopes: Separa els àmbits amb espais. Deixa-ho en blanc per a usar els àmbits per defecte.
       index:
         application: Aplicació
         callback_url: URL de retorn
@@ -73,7 +73,7 @@ ca:
       index:
         authorized_at: Autoritzada el %{date}
         description_html: Aquestes són les aplicacions que poden accedir al teu compte usant l'API. Si hi ha aplicacions que no reconeixes o hi ha una aplicació que no funciona bé, pots revocar-ne l'accés.
-        last_used_at: Usada per últim cop el %{date}
+        last_used_at: Usada per última vegada el %{date}
         never_used: No s'ha usat mai
         scopes: Permisos
         superapp: Interna
@@ -148,8 +148,8 @@ ca:
         title: Autorització OAuth requerida
     scopes:
       admin:read: llegir totes les dades en el servidor
-      admin:read:accounts: llegir l'informació sensible de tots els comptes
-      admin:read:reports: llegir l'informació sensible de tots els informes i comptes reportats
+      admin:read:accounts: llegir informació confidencial de tots els comptes
+      admin:read:reports: llegir informació confidencial de tots els informes i comptes reportats
       admin:write: modificar totes les dades en el servidor
       admin:write:accounts: fer l'acció de moderació en els comptes
       admin:write:reports: fer l'acció de moderació en els informes
diff --git a/config/locales/doorkeeper.cy.yml b/config/locales/doorkeeper.cy.yml
index 85aaccea6..609826f51 100644
--- a/config/locales/doorkeeper.cy.yml
+++ b/config/locales/doorkeeper.cy.yml
@@ -5,14 +5,14 @@ cy:
       doorkeeper/application:
         name: Enw rhaglen
         redirect_uri: Ailgyfeirio URI
-        scopes: Rhinweddau
-        website: Gwefan cais
+        scopes: Cwmpasau
+        website: Gwefan rhaglen
     errors:
       models:
         doorkeeper/application:
           attributes:
             redirect_uri:
-              fragment_present: ni all gynnwys dernyn.
+              fragment_present: ni all gynnwys darn.
               invalid_uri: rhaid iddo fod yn URI cyfredol.
               relative_uri: rhaid iddo fod yn URI absoliwt.
               secured_uri: rhaid iddo fod yn URI HTTPS/SSL.
@@ -25,33 +25,33 @@ cy:
         edit: Golygu
         submit: Cyflwyno
       confirmations:
-        destroy: Ydych chi'n sicr?
+        destroy: Ydych chi'n siŵr?
       edit:
-        title: Golygwch y rhaglen
+        title: Golygu'r rhaglen
       form:
         error: Wps! Gwiriwch eich ffurflen am gamgymeriadau posib
       help:
         native_redirect_uri: Defnyddiwch %{native_redirect_uri} ar gyfer profion lleol
         redirect_uri: Defnyddiwch un llinell i bob URI
-        scopes: Gwahanwch rinweddau gyda gofodau. Gadewch yn wag i ddefnyddio y rhinweddau rhagosodiedig.
+        scopes: Gwahanwch gwmpasau gyda gofodau. Gadewch yn wag i ddefnyddio'r cwmpasau rhagosodedig.
       index:
         application: Rhaglen
         callback_url: URL galw-nôl
         delete: Dileu
-        empty: Nid oes gennych unrhyw ceisiadau.
+        empty: Nid oes gennych unrhyw raglenni.
         name: Enw
         new: Rhaglen newydd
-        scopes: Rhinweddau
-        show: Dangoswch
+        scopes: Cwmpasau
+        show: Dangos
         title: Eich rhaglenni
       new:
         title: Rhaglen newydd
       show:
         actions: Gweithredoedd
         application_id: Allwedd cleient
-        callback_urls: URLau galw-nôl
-        scopes: Rhinweddau
-        secret: Cyfrinach Cleient
+        callback_urls: URLau adalw
+        scopes: Cwmpasau
+        secret: Cyfrinach cleient
         title: 'Rhaglen: %{name}'
     authorizations:
       buttons:
@@ -60,26 +60,37 @@ cy:
       error:
         title: Mae rhywbeth wedi mynd o'i le
       new:
+        prompt_html: Hoffai %{client_name} gael caniatâd i gael mynediad i'ch cyfrif. Mae'n gais trydydd parti. <strong>Os nad ydych yn ymddiried ynddo, yna peidiwch a'i awdurdodi.</strong>
+        review_permissions: Adolygu caniatâd
         title: Angen awdurdodi
       show:
-        title: Copiwch y côd awdurdodi a gludiwch i'r rhaglen.
+        title: Copïwch y cod awdurdodi a'i ludio i'r rhaglen.
     authorized_applications:
       buttons:
-        revoke: Diddymu
+        revoke: Dirymu
       confirmations:
-        revoke: Ydych chi'n sicr?
+        revoke: Ydych chi'n siŵr?
       index:
+        authorized_at: Wedi'i awdurdodi ar %{date}
+        description_html: Mae'r rhain yn raglenni sy'n gallu cael mynediad i'ch cyfrif gan ddefnyddio'r API. Os oes yna rhaglenni nad ydych chi'n eu hadnabod yma, neu os yw rhaglen yn camymddwyn, gallwch chi ddiddymu ei fynediad.
+        last_used_at: Defnyddiwyd ddiwethaf ar %{date}
+        never_used: Erioed wedi'i ddefnyddio
         scopes: Caniatâd
+        superapp: Mewnol
         title: Eich rhaglenni awdurdodedig
     errors:
       messages:
         access_denied: Mae perchennog yr adnodd neu'r gweinydd awdurdodi wedi atal y cais.
         credential_flow_not_configured: Llif meini prawf cyfrinair perchennog yr adnodd wedi methu achos fod Doorkeeper.configure.resource_owner_from_credentials heb ei ffurfweddu.
-        invalid_client: Methwyd dilysu cleient oherwydd cleient anhysbys, methiant i gynnwys dilysu cleient, neu defnydd o ddull dilysu nid yw'n cael ei gefnodi.
-        invalid_grant: Mae'r grant dilysu a ddarparwyd yn annilys, wedi dod i ben, wedi'i wrthod, ddim yn cyfateb a'r URI ailgyferio a ddefnyddiwyd yn y cais dilysu, neu wedi ei ddarparu i gleient arall.
-        invalid_redirect_uri: Nid yw'r uri ailgyfeirio cynnwysiedig yn gyfredol.
+        invalid_client: Methodd dilysu cleient oherwydd cleient anhysbys, dim dilysiad cleient wedi'i gynnwys, neu ddull dilysu heb ei gefnogi.
+        invalid_grant: Mae'r grant awdurdodi ar yr amod yn annilys, wedi dod i ben, wedi'i ddiddymu, nid yw'n cyfateb i'r URI ailgyfeirio a ddefnyddiwyd yn y cais am awdurdodiad, neu wedi'i roi i gleient arall.
+        invalid_redirect_uri: Nid yw'r uri ailgyfeirio a gynhwysir yn ddilys.
+        invalid_request:
+          missing_param: 'Paramedr gofynnol ar goll: %{value}.'
+          request_not_authorized: Mae angen awdurdodi'r cais. Mae'r paramedr gofynnol ar gyfer awdurdodi cais ar goll neu'n annilys.
+          unknown: Mae'r cais yn brin o baramedr gofynnol, yn cynnwys gwerth paramedr heb ei gefnogi, neu wedi ei gamffurfio fel arall.
         invalid_resource_owner: Nid yw meini prawf perchennog yr adnodd yn ddilys, neu ni ellir canfod perchennog yr adnodd
-        invalid_scope: Mae'r sgôp a geisiwyd amdano yn annilys, anhysbys, neu'n gamffurfiedig.
+        invalid_scope: Mae'r cwmpas y gofynnwyd amdano yn annilys, yn anhysbys neu wedi'i gamffurfio.
         invalid_token:
           expired: Daeth y tocyn mynediad i ben
           revoked: Gwrthodwyd y tocyn mynediad
@@ -88,12 +99,12 @@ cy:
         server_error: Daeth y gweinydd awdurdodi ar draws gyflwr annisgwyl wnaeth ei atal rhag cyflawni'r cais.
         temporarily_unavailable: Nid yw'r gweinydd awdurdodi yn gallu gweithredu y cais hwn ar hyn o bryd oherwydd gorlwytho dros dro neu gwaith cynnal a chadw ar y gweinydd hwn.
         unauthorized_client: Nid yw'r cleient wedi ei awdurdodi i berfformio'r cais hwn yn defnyddio'r dull hwn.
-        unsupported_grant_type: Nid yw'r math o ganiatad awdurdodi yma'n cael ei gefnogi gan y gweinydd awdurdodi.
+        unsupported_grant_type: Nid yw'r math o ganiatâd awdurdodi yma'n cael ei gefnogi gan y gweinydd awdurdodi.
         unsupported_response_type: Nid yw'r gweinydd awdurdodi yn cefnogi y math yma o ymateb.
     flash:
       applications:
         create:
-          notice: Crewyd y rhaglen.
+          notice: Crëwyd y rhaglen.
         destroy:
           notice: Dilëwyd y rhaglen.
         update:
@@ -102,11 +113,32 @@ cy:
         destroy:
           notice: Diddymwyd y cais.
     grouped_scopes:
+      access:
+        read: Mynediad darllen yn unig
+        read/write: Mynediad darllen ac ysgrifennu
+        write: Mynediad ysgrifennu yn unig
       title:
         accounts: Cyfrifon
-        bookmarks: Tudalnodau
+        admin/accounts: Gweinyddu cyfrifon
+        admin/all: Pob swyddogaeth weinyddol
+        admin/reports: Gweinyddu adroddiadau
+        all: Popeth
+        blocks: Blociau
+        bookmarks: Nodau Tudalen
+        conversations: Sgyrsiau
+        crypto: Amgryptio o ben i ben
+        favourites: Ffefrynnau
         filters: Hidlyddion
+        follow: Perthnasau
+        follows: Yn dilyn
+        lists: Rhestrau
+        media: Atodiadau cyfryngau
+        mutes: Anwybyddiadau
+        notifications: Hysbysiadau
+        push: Hysbysiadau gwthiadwy
+        reports: Adroddiadau
         search: Chwilio
+        statuses: Postiadau
     layouts:
       admin:
         nav:
@@ -115,37 +147,39 @@ cy:
       application:
         title: Mae awdurdodiad OAuth yn ofynnol
     scopes:
-      admin:read: darllenwch yr holl ddata ar y serfiwr
-      admin:read:accounts: darllen gwybodaeth sensitif o'r holl gyfrifon
-      admin:read:reports: darllen gwybodaeth sensitif am bob adroddiad a chyfrifon yr adroddir amdanynt
-      admin:write: addasu pob data ar y serfiwr
+      admin:read: darllen yr holl ddata ar y gweinydd
+      admin:read:accounts: darllen gwybodaeth sensitif o bob cyfrif
+      admin:read:reports: darllen gwybodaeth sensitif o'r holl adroddiadau a'r cyfrifon a adroddwyd
+      admin:write: addasu'r holl ddata ar y gweinydd
       admin:write:accounts: cyflawni camau cymedroli ar gyfrifon
       admin:write:reports: cyflawni camau cymedroli ar adroddiadau
+      crypto: defnyddio amgryptio ben i ben
       follow: addasu perthnasau cyfrif
       push: derbyn eich hysbysiadau gwthiadwy
       read: darllen holl ddata eich cyfrif
       read:accounts: gweld gwybodaeth y cyfrif
       read:blocks: gweld eich blociau
-      read:bookmarks: gweld eich tudalnodau
+      read:bookmarks: gweld eich nodau tudalen
       read:favourites: gweld eich ffefrynnau
       read:filters: gweld eich hidlwyr
       read:follows: gweld eich dilynwyr
       read:lists: gweld eich rhestrau
-      read:mutes: gweld y rheini wedi'i tewi
+      read:mutes: gweld eich anwybyddiadau
       read:notifications: gweld eich hysbysiadau
       read:reports: gweld eich adroddiadau
-      read:search: edrych ar eich rhan
-      read:statuses: gweld pob statws
-      write: addasu holl ddata eich cyfri
+      read:search: chwilio ar eich rhan
+      read:statuses: gweld pob postiad
+      write: addasu holl ddata eich cyfrif
       write:accounts: addasu eich proffil
       write:blocks: blocio cyfrifon a parthau
-      write:bookmarks: statwsau tudalnod
-      write:favourites: hoff dŵtiau
+      write:bookmarks: gosod nod tudalen postiadau
+      write:conversations: anwybyddu a dileu sgyrsiau
+      write:favourites: hoff bostiadau
       write:filters: creu hidlwyr
       write:follows: dilyn pobl
       write:lists: creu rhestrau
-      write:media: uwchlwytho ffeiliau cyfryngau
-      write:mutes: tawelu pobl a sgyrsiau
+      write:media: llwytho ffeiliau cyfryngau
+      write:mutes: anwybyddu pobl a sgyrsiau
       write:notifications: clirio eich hysbysiadau
       write:reports: adrodd pobl eraill
-      write:statuses: cyhoeddi tŵt
+      write:statuses: cyhoeddi postiadau
diff --git a/config/locales/doorkeeper.de.yml b/config/locales/doorkeeper.de.yml
index ac12cff21..0e7ca2d55 100644
--- a/config/locales/doorkeeper.de.yml
+++ b/config/locales/doorkeeper.de.yml
@@ -77,7 +77,7 @@ de:
         never_used: Nie verwendet
         scopes: Berechtigungen
         superapp: Intern
-        title: Deine autorisierten Anwendungen
+        title: Deine genehmigten Apps
     errors:
       messages:
         access_denied: Die Anfrage wurde durch Benutzer_in oder Autorisierungs-Server verweigert.
@@ -125,7 +125,7 @@ de:
         all: Alles
         blocks: Blocks
         bookmarks: Lesezeichen
-        conversations: Konversationen
+        conversations: Unterhaltungen
         crypto: Ende-zu-Ende-Verschlüsselung
         favourites: Favoriten
         filters: Filter
@@ -179,7 +179,7 @@ de:
       write:follows: Leuten folgen
       write:lists: Listen erstellen
       write:media: Mediendateien hochladen
-      write:mutes: Leute und Konversationen stummschalten
+      write:mutes: Profile und Unterhaltungen stummschalten
       write:notifications: deine Benachrichtigungen leeren
       write:reports: andere Leute melden
       write:statuses: Beiträge veröffentlichen
diff --git a/config/locales/doorkeeper.eo.yml b/config/locales/doorkeeper.eo.yml
index e239da785..b0bbeaec0 100644
--- a/config/locales/doorkeeper.eo.yml
+++ b/config/locales/doorkeeper.eo.yml
@@ -60,6 +60,7 @@ eo:
       error:
         title: Eraro okazis
       new:
+        prompt_html: "%{client_name} volas permeso por aliri vian konton. <strong>Se vi ne konfidu ĝin, ne rajtigu ĝin.</strong>"
         review_permissions: Revizu permesojn
         title: Rajtigo bezonata
       show:
@@ -70,6 +71,9 @@ eo:
       confirmations:
         revoke: Ĉu vi certas?
       index:
+        authorized_at: Rajtigitas je %{date}
+        description_html: Ĉi tioj estas programaroj kiu povas aliri vian konton per API.
+        last_used_at: Laste uzita je %{date}
         never_used: Neniam uzata
         scopes: Permesoj
         superapp: Interna
@@ -109,18 +113,29 @@ eo:
         destroy:
           notice: Aplikaĵo malrajtigita.
     grouped_scopes:
+      access:
+        read: Legnura aliro
+        read/write: Lega kaj skriba aliro
+        write: Skribnura aliro
       title:
         accounts: Kontoj
+        admin/accounts: Administro de kontoj
+        admin/all: Ĉiuj administraj funkcioj
+        admin/reports: Administro de raportoj
         all: Ĉio
         blocks: Blokita
         bookmarks: Legosignoj
         conversations: Konversacioj
+        crypto: Fin-al-fina ĉifrado
         favourites: Preferaĵoj
         filters: Filtriloj
+        follow: Rilatoj
         follows: Sekvas
         lists: Listoj
+        media: Aŭdovidaj aldonaĵoj
         mutes: Silentigitaj
         notifications: Sciigoj
+        push: Puŝsciigoj
         reports: Raportoj
         search: Serĉi
         statuses: Afiŝoj
@@ -138,6 +153,7 @@ eo:
       admin:write: modifi ĉiujn datumojn en la servilo
       admin:write:accounts: plenumi agojn de kontrolo sur kontoj
       admin:write:reports: plenumi agojn de kontrolo sur signaloj
+      crypto: uzi fin-al-finan ĉifradon
       follow: ŝanĝi rilatojn al aliaj kontoj
       push: ricevi viajn puŝ-sciigojn
       read: legi ĉiujn datumojn de via konto
@@ -157,6 +173,7 @@ eo:
       write:accounts: ŝanĝi vian profilon
       write:blocks: bloki kontojn kaj domajnojn
       write:bookmarks: aldoni mesaĝojn al la legosignoj
+      write:conversations: mallautigi kaj forigi babiladojn
       write:favourites: stelumi mesaĝojn
       write:filters: krei filtrilojn
       write:follows: sekvi homojn
diff --git a/config/locales/doorkeeper.et.yml b/config/locales/doorkeeper.et.yml
index a04a5dde3..26210e037 100644
--- a/config/locales/doorkeeper.et.yml
+++ b/config/locales/doorkeeper.et.yml
@@ -60,6 +60,7 @@ et:
       error:
         title: Ilmnes viga
       new:
+        review_permissions: Lubade ülevaade
         title: Autoriseerimine vajalik
       show:
         title: Kopeeri see autoriseerimisvõti ja kleebi see rakendusse.
@@ -69,6 +70,11 @@ et:
       confirmations:
         revoke: Olete kindel?
       index:
+        authorized_at: Autoriseeritud %{date}
+        last_used_at: Viimati kasutatud %{date}
+        never_used: Pole kasutatud
+        scopes: Õigused
+        superapp: Sisemine
         title: Autoriseeritud rakendused
     errors:
       messages:
@@ -100,6 +106,33 @@ et:
       authorized_applications:
         destroy:
           notice: Rakendus tagasi lükatud.
+    grouped_scopes:
+      access:
+        read: Vaid lugemisõigus
+        read/write: Lugemis- ja kirjutusõigus
+        write: Vaid kirjutusõigus
+      title:
+        accounts: Kontod
+        admin/accounts: Kontode haldus
+        admin/all: Kõik haldusfunktsioonid
+        admin/reports: Raportite haldus
+        all: Kõik
+        blocks: Keelud
+        bookmarks: Järjehoidjad
+        conversations: Vestlused
+        crypto: Otspunktkrüpteerimine
+        favourites: Lemmikud
+        filters: Filtrid
+        follow: Seosed
+        follows: Jälgimised
+        lists: Nimistud
+        media: Lisatud meedia
+        mutes: Vaigistused
+        notifications: Teavitused
+        push: Tõuketeated
+        reports: Teavitused
+        search: Otsing
+        statuses: Postitused
     layouts:
       admin:
         nav:
@@ -114,6 +147,7 @@ et:
       admin:write: muuta kõiki andmeid serveril
       admin:write:accounts: teostada moderaatori tegevusi kontodel
       admin:write:reports: teostada moderaatori tegevusi teavitustel
+      crypto: kasuta otspunktkrüpeerimist
       follow: muuta kontode suhteid
       push: saada Teie teateid
       read: lugeda kogu Teie konto andmeid
@@ -133,6 +167,7 @@ et:
       write:accounts: redigeerida Teie profiili
       write:blocks: blokeerida kontosid ja domeene
       write:bookmarks: lisada staatusele järjehoidjaid
+      write:conversations: vaigista ja kustuta vestlused
       write:favourites: lisada staatuseid lemmikuks
       write:filters: luua filtreid
       write:follows: jälgida inimesi
diff --git a/config/locales/doorkeeper.fo.yml b/config/locales/doorkeeper.fo.yml
new file mode 100644
index 000000000..d915ead3d
--- /dev/null
+++ b/config/locales/doorkeeper.fo.yml
@@ -0,0 +1,185 @@
+---
+fo:
+  activerecord:
+    attributes:
+      doorkeeper/application:
+        name: Navnið á forritinum
+        redirect_uri: URL víðarisending
+        scopes: Karmar
+        website: Netsíðan hjá forritinum
+    errors:
+      models:
+        doorkeeper/application:
+          attributes:
+            redirect_uri:
+              fragment_present: kann ikki innihalda eitt petti.
+              invalid_uri: má vera eiitt gildugt URL.
+              relative_uri: má vera eitt treytaleyst URL.
+              secured_uri: má vera eitt HTTPS/SSL URI.
+  doorkeeper:
+    applications:
+      buttons:
+        authorize: Heimila
+        cancel: Angra
+        destroy: Oyðilegg
+        edit: Rætta
+        submit: Send avstað
+      confirmations:
+        destroy: Ert tú vís/ur?
+      edit:
+        title: Broyt forrit
+      form:
+        error: Ups! Kanna frymilin fyri møguligar feilir
+      help:
+        native_redirect_uri: Nýt %{native_redirect_uri} til lokalar nároyndir
+        redirect_uri: Nýt eina linju fyri hvørt URI
+        scopes: Atskil valmøguleikarnar við millumrúmum. Um standard vælmøguleikar verða valdir, lat so millumrúm verða í.
+      index:
+        application: Skipan
+        callback_url: Afturkallingar URL
+        delete: Strika
+        empty: T´´u hevur onga skipan.
+        name: Navn
+        new: Nýggj skipan
+        scopes: Møguleikar
+        show: Vís
+        title: Tínar skipanir
+      new:
+        title: Nýggj skipan
+      show:
+        actions: Skipan
+        application_id: Kunda lykil
+        callback_urls: Afturkallingar URL'ir
+        scopes: Møguleikar
+        secret: Kunda loyndir
+        title: 'Skipan: %{name}'
+    authorizations:
+      buttons:
+        authorize: Heimila
+        deny: Nokta
+      error:
+        title: Ein feilur er íkomin
+      new:
+        prompt_html: "%{client_name} kundi hugsa sær atgongd til tína kontu. Tað er ein triðjaparts-nýtsluskipan. <strong>Tú skal ikki geva henni hesa heimld, um tú ikki hevur álit á henni.</strong>"
+        review_permissions: Eftirkanna rættindi
+        title: Váttan kravd
+      show:
+        title: Kopiera hesa váttanarkodu og líma hana í nýtsluskipanini.
+    authorized_applications:
+      buttons:
+        revoke: Tak aftur
+      confirmations:
+        revoke: Ert tú vís/ur?
+      index:
+        authorized_at: Váttað tann %{date}
+        description_html: Hetta eru nýtsluskipaninar, sum hava atgongd til tína kontu umvegis API'ið. Tú kanst taka loyvið aftur, um tað eru nýtsluskipanir, ið tú ikki kennir aftur ella sum ikki skikka sær, sum tær eiga.
+        last_used_at: Seinast brúkt tann %{date}
+        never_used: Ongantíð brúkt/ur
+        scopes: Loyvi
+        superapp: Innanhýsis
+        title: Tínar váttaðu nýtsluskipanir
+    errors:
+      messages:
+        access_denied: Tilfarseigarin ella váttanarambætarin noktaðu umbønina.
+        credential_flow_not_configured: Resource Owner Password Credentials floymurin eydnaðist ikki. Orsøkin var, at Doorkeeper.configure.resource_owner_from_credentials var ikki sett upp.
+        invalid_client: Viðskiftaraváttan miseydnaðist. Orsøkin var ein ókendur viðskiftari, at eingin viðskiftaraváttan var við ella at váttanarmannagongdin er ókend.
+        invalid_grant: Veitta váttanarheimildin er antin ógildug, útgingin, tikin aftur, samsvarar ikki við endursendingar-URI'ið, sum bleiv brúkt í váttanarumbønini ella var flýggjað øðrum viðskiftara.
+        invalid_redirect_uri: Endursendingar-URI'ið, sum var viðheft, er ógyldugt.
+        invalid_request:
+          missing_param: 'Manglandi kravdur parametur: %{value}.'
+          request_not_authorized: Umbønin má váttast. Kravdi parameturin fyri váttanarumbønina manglar ella er ógyldugur.
+          unknown: Umbønin manglar ein kravdan parametur, inniheldur eitt óstuðlað parametur-virði ella hevur skeivt skap.
+        invalid_resource_owner: Veitta tilfarseigaraváttanin er ógyldug ella ber ikki til at finna tilfarseigaran
+        invalid_scope: Umbidna vavið er ógyldugt, ókent ella hevur skeivt skap.
+        invalid_token:
+          expired: Atgongdarfrámerkið er útgingið
+          revoked: Atgongdarfrámerkið varð tikið aftur
+          unknown: Atgongdarfrámerkið er ógyldugt
+        resource_owner_authenticator_not_configured: Av tí at Doorkeeper.configure.resource_owner_authenticator ikki var sett upp, bar ikki til at finna tilfarseigaran.
+        server_error: Váttnarambætarin rendi seg í eina óvæntaða støðu, sum forðaði honum í at fullføra umbønina.
+        temporarily_unavailable: Váttanarambætarain er í løtuni ikki førur fyri at handfara umbønina vegna bráðfeingis ovbyrjan ella ambætaraviðlíkahald.
+        unauthorized_client: Viðskiftarin hevur ikki rættindi at útføra hesa umbønina við hesi mannagongdini.
+        unsupported_grant_type: Váttanarloyvisslagið er ikki stuðlað av váttanarambætaranum.
+        unsupported_response_type: Váttanarambætarin stuðlar ikki hesum slagnum av svari.
+    flash:
+      applications:
+        create:
+          notice: Nýtsluskipan stovnað.
+        destroy:
+          notice: Nýtsluskipan strikað.
+        update:
+          notice: Nýtsluskipan dagførd.
+      authorized_applications:
+        destroy:
+          notice: Nýtsluskipan tikin aftur.
+    grouped_scopes:
+      access:
+        read: Lesi-rættindir
+        read/write: Lesi- og skrivi-rættindir
+        write: Skrivi-rættindir
+      title:
+        accounts: Kontur
+        admin/accounts: Umsiting av kontum
+        admin/all: Allar umsitingarligar funktiónir
+        admin/reports: Umsiting av meldingum
+        all: Alt
+        blocks: Blokeringar
+        bookmarks: Bókamerki
+        conversations: Samrøður
+        crypto: Enda-til-enda bronglan
+        favourites: Yndispostar
+        filters: Filtur
+        follow: Sambond
+        follows: Fylgir
+        lists: Listar
+        media: Viðfestir miðlar
+        mutes: Doyvir
+        notifications: Fráboðanir
+        push: Skumpifráboðanir
+        reports: Meldingar
+        search: Leita
+        statuses: Uppsløg
+    layouts:
+      admin:
+        nav:
+          applications: Nýtsluskipanir
+          oauth2_provider: OAuth2 veitari
+      application:
+        title: OAuth váttan kravd
+    scopes:
+      admin:read: les allar dátur á ambætaranum
+      admin:read:accounts: les viðkvæmar upplýsingar úr øllum kontum
+      admin:read:reports: les viðkvæmar upplýsingar um allar meldingar og meldaðar kontur
+      admin:write: broyta allar dátur á ambætaranum
+      admin:write:accounts: útinna kjakleiðsluatgerðir á kontum
+      admin:write:reports: útinna kjakleiðsluatgerðir á meldingum
+      crypto: brúka enda-til-enda bronglan
+      follow: broyta viðurskifti millum kontur
+      push: móttaka tínar skumpifráboðanir
+      read: lesa allar dátur í tíni kontu
+      read:accounts: vís kontuupplýsingar
+      read:blocks: síggja tínar blokeringar
+      read:bookmarks: síggja tíni bókamerki
+      read:favourites: síggja tínar yndispostar
+      read:filters: síggja tíni filtur
+      read:follows: síggja hvørji tú fylgir
+      read:lists: síggja tínar listar
+      read:mutes: síggja tínar doyvingar
+      read:notifications: síggja tínar fráboðanir
+      read:reports: síggja tínar meldingar
+      read:search: leita vegna teg
+      read:statuses: síggja allar postar
+      write: broyta allar dátur í tínari kontu
+      write:accounts: broyt vangamyndina
+      write:blocks: blokera kontur og domenir
+      write:bookmarks: bókamerkja postar
+      write:conversations: doyva og strika samrøður
+      write:favourites: yndismerkja postar
+      write:filters: gera filtur
+      write:follows: fylgja fólki
+      write:lists: gera listar
+      write:media: leggja miðlafílur upp
+      write:mutes: doyva fólk og samrøður
+      write:notifications: nullstilla tínar fráboðanir
+      write:reports: melda onnur fólk
+      write:statuses: útgeva postar
diff --git a/config/locales/doorkeeper.fr-QC.yml b/config/locales/doorkeeper.fr-QC.yml
new file mode 100644
index 000000000..794a2c939
--- /dev/null
+++ b/config/locales/doorkeeper.fr-QC.yml
@@ -0,0 +1,185 @@
+---
+fr-QC:
+  activerecord:
+    attributes:
+      doorkeeper/application:
+        name: Nom
+        redirect_uri: L’URL de redirection
+        scopes: Étendues
+        website: Site web de l’application
+    errors:
+      models:
+        doorkeeper/application:
+          attributes:
+            redirect_uri:
+              fragment_present: ne peut contenir un fragment.
+              invalid_uri: doit être une URL valide.
+              relative_uri: doit être une URL absolue.
+              secured_uri: doit être une URL HTTP/SSL.
+  doorkeeper:
+    applications:
+      buttons:
+        authorize: Autoriser
+        cancel: Annuler
+        destroy: Détruire
+        edit: Modifier
+        submit: Envoyer
+      confirmations:
+        destroy: Voulez-vous vraiment faire ça ?
+      edit:
+        title: Modifier l’application
+      form:
+        error: Oups ! Vérifier votre formulaire pour des erreurs possibles
+      help:
+        native_redirect_uri: Utiliser %{native_redirect_uri} pour les tests locaux
+        redirect_uri: Utiliser une ligne par URL
+        scopes: Séparer les permissions avec des espaces. Laisser vide pour utiliser les portées par défaut.
+      index:
+        application: Application
+        callback_url: URL de retour d’appel
+        delete: Supprimer
+        empty: Vous n’avez pas d’application.
+        name: Nom
+        new: Nouvelle application
+        scopes: Permissions
+        show: Voir
+        title: Vos applications
+      new:
+        title: Nouvelle application
+      show:
+        actions: Actions
+        application_id: ID de l’application
+        callback_urls: URL du retour d’appel
+        scopes: Permissions
+        secret: Secret
+        title: 'Application : %{name}'
+    authorizations:
+      buttons:
+        authorize: Autoriser
+        deny: Refuser
+      error:
+        title: Une erreur est survenue
+      new:
+        prompt_html: "%{client_name} souhaite accéder à votre compte. Il s'agit d'une application tierce. <strong>Vous ne devriez pas l'y autoriser si vous ne lui faites pas confiance.</strong>"
+        review_permissions: Examiner les autorisations
+        title: Autorisation requise
+      show:
+        title: Copiez ce code d’autorisation et collez-le dans l’application.
+    authorized_applications:
+      buttons:
+        revoke: Révoquer
+      confirmations:
+        revoke: Voulez-vous vraiment faire ça ?
+      index:
+        authorized_at: Autorisée le %{date}
+        description_html: Ces applications peuvent accéder à votre compte via l'API. Si vous voyez ici des applications que vous ne reconnaissez pas ou qui ne fonctionnent pas normalement, vous pouvez en révoquer les accès.
+        last_used_at: Dernière utilisation le %{date}
+        never_used: Jamais utilisée
+        scopes: Autorisations
+        superapp: Interne
+        title: Vos applications autorisées
+    errors:
+      messages:
+        access_denied: Le propriétaire de la ressource ou le serveur d’autorisation a refusé la requête.
+        credential_flow_not_configured: Le flux des identifiants du mot de passe du propriétaire de la ressource a échoué car Doorkeeper.configure.resource_owner_from_credentials n’est pas configuré.
+        invalid_client: L’authentification du client a échoué à cause d’un client inconnu, d’aucune authentification de client incluse ou d’une méthode d’authentification non prise en charge.
+        invalid_grant: L’autorisation accordée est invalide, expirée, annulée, ne concorde pas avec l’URL de redirection utilisée dans la requête d’autorisation, ou a été délivrée à un autre client.
+        invalid_redirect_uri: L’URL de redirection n’est pas valide.
+        invalid_request:
+          missing_param: 'Paramètre requis manquant: %{value}.'
+          request_not_authorized: La requête doit être autorisée. Le paramètre requis pour l'autorisation de la requête est manquant ou non valide.
+          unknown: La requête omet un paramètre requis, inclut une valeur de paramètre non prise en charge ou est autrement mal formée.
+        invalid_resource_owner: Les identifiants fournis par le propriétaire de la ressource ne sont pas valides ou le propriétaire de la ressource ne peut être trouvé
+        invalid_scope: La permission demandée est invalide, inconnue ou mal formée.
+        invalid_token:
+          expired: Le jeton d’accès a expiré
+          revoked: Le jeton d’accès a été révoqué
+          unknown: Le jeton d’accès n’est pas valide
+        resource_owner_authenticator_not_configured: La recherche du propriétaire de la ressource a échoué car Doorkeeper.configure.resource_owner_authenticator n’est pas configuré.
+        server_error: Le serveur d’autorisation a rencontré une condition inattendue l’empêchant de faire aboutir la requête.
+        temporarily_unavailable: Le serveur d’autorisation est actuellement incapable de traiter la requête à cause d’une surcharge ou d’une maintenance temporaire du serveur.
+        unauthorized_client: Le client n’est pas autorisé à effectuer cette requête à l’aide de cette méthode.
+        unsupported_grant_type: Le type de consentement d’autorisation n’est pas pris en charge par le serveur d’autorisation.
+        unsupported_response_type: Le serveur d’autorisation ne prend pas en charge ce type de réponse.
+    flash:
+      applications:
+        create:
+          notice: Application créée.
+        destroy:
+          notice: Application supprimée.
+        update:
+          notice: Application mise à jour.
+      authorized_applications:
+        destroy:
+          notice: Application révoquée.
+    grouped_scopes:
+      access:
+        read: Accès en lecture seule
+        read/write: Accès en lecture et écriture
+        write: Accès en écriture seule
+      title:
+        accounts: Comptes
+        admin/accounts: Gestion des comptes
+        admin/all: Toutes les fonctionnalités d'administration
+        admin/reports: Gestion des rapports
+        all: Tout
+        blocks: Bloqués
+        bookmarks: Marque-pages
+        conversations: Conversations
+        crypto: Chiffrement de bout-en-bout
+        favourites: Favoris
+        filters: Filtres
+        follow: Relations
+        follows: Abonnements
+        lists: Listes
+        media: Fichiers médias
+        mutes: Masqués
+        notifications: Notifications
+        push: Notifications push
+        reports: Signalements
+        search: Recherche
+        statuses: Messages
+    layouts:
+      admin:
+        nav:
+          applications: Applications
+          oauth2_provider: Fournisseur OAuth2
+      application:
+        title: Autorisation OAuth requise
+    scopes:
+      admin:read: lire toutes les données du serveur
+      admin:read:accounts: lire les informations sensibles de tous les comptes
+      admin:read:reports: lire les informations sensibles de tous les signalements et des comptes signalés
+      admin:write: modifier toutes les données sur le serveur
+      admin:write:accounts: effectuer des actions de modération sur les comptes
+      admin:write:reports: effectuer des actions de modération sur les signalements
+      crypto: utiliser le chiffrement de bout-en-bout
+      follow: modifier les relations du compte
+      push: recevoir vos notifications poussées
+      read: lire toutes les données de votre compte
+      read:accounts: voir les informations des comptes
+      read:blocks: voir vos blocages
+      read:bookmarks: voir vos marque-pages
+      read:favourites: voir vos favoris
+      read:filters: voir vos filtres
+      read:follows: voir vos abonnements
+      read:lists: voir vos listes
+      read:mutes: voir vos masquages
+      read:notifications: voir vos notifications
+      read:reports: voir vos signalements
+      read:search: rechercher en votre nom
+      read:statuses: voir tous les messages
+      write: modifier toutes les données de votre compte
+      write:accounts: modifier votre profil
+      write:blocks: bloquer des comptes et des domaines
+      write:bookmarks: mettre des messages en marque-pages
+      write:conversations: masquer et effacer les conversations
+      write:favourites: mettre des messages en favori
+      write:filters: créer des filtres
+      write:follows: suivre des personnes
+      write:lists: créer des listes
+      write:media: téléverser des fichiers média
+      write:mutes: masquer des comptes et des conversations
+      write:notifications: effacer vos notifications
+      write:reports: signaler d’autres personnes
+      write:statuses: publier des messages
diff --git a/config/locales/doorkeeper.ga.yml b/config/locales/doorkeeper.ga.yml
index 73ff9d0fc..6245e14aa 100644
--- a/config/locales/doorkeeper.ga.yml
+++ b/config/locales/doorkeeper.ga.yml
@@ -36,7 +36,9 @@ ga:
         all: Gach Rud
         bookmarks: Leabharmharcanna
         conversations: Comhráite
-        favourites: Roghanna
+        favourites: Toghanna
+        filters: Scagairí
+        follows: Cuntais leanta
         lists: Liostaí
         notifications: Fógraí
         statuses: Postálacha
diff --git a/config/locales/doorkeeper.gl.yml b/config/locales/doorkeeper.gl.yml
index d61928030..de4efd121 100644
--- a/config/locales/doorkeeper.gl.yml
+++ b/config/locales/doorkeeper.gl.yml
@@ -60,7 +60,7 @@ gl:
       error:
         title: Algo fallou
       new:
-        prompt_html: "%{client_name} solicita permiso para acceder á túa conta. É unha aplicación de terceiros. <strong>Se non confías nela, non deberías autorizala.</strong>"
+        prompt_html: "%{client_name} gostaría acceder á túa conta. É unha aplicación de terceiros. <strong>Se non confías nela, non deberías autorizala.</strong>"
         review_permissions: Revisar permisos
         title: Autorización necesaria
       show:
@@ -72,7 +72,7 @@ gl:
         revoke: Estás segura?
       index:
         authorized_at: Autorizada o %{date}
-        description_html: Estas aplicacións poden acceder á túa conta usando a API. Se ves publicacións que non recoñeces, ou hai comportamentos non consentidos dalgunha delas, podes revogar o acceso.
+        description_html: Estas aplicacións poden acceder á túa conta usando a API. Se ves aplicacións que non recoñeces, ou hai comportamentos non consentidos dalgunha delas, podes revogar o acceso.
         last_used_at: Último acceso o %{date}
         never_used: Nunca utilizado
         scopes: Permisos
diff --git a/config/locales/doorkeeper.ko.yml b/config/locales/doorkeeper.ko.yml
index 3526bab0e..66668a70a 100644
--- a/config/locales/doorkeeper.ko.yml
+++ b/config/locales/doorkeeper.ko.yml
@@ -3,39 +3,39 @@ ko:
   activerecord:
     attributes:
       doorkeeper/application:
-        name: 애플리케이션 이름
-        redirect_uri: 리디렉션 URI
+        name: 어플리케이션 이름
+        redirect_uri: 리다이렉트 URI
         scopes: 범위
-        website: 애플리케이션 웹사이트
+        website: 어플리케이션 웹사이트
     errors:
       models:
         doorkeeper/application:
           attributes:
             redirect_uri:
               fragment_present: fragment를 포함할 수 없습니다
-              invalid_uri: 올바른 URI여야 합니다.
-              relative_uri: 절대경로 URI여야 합니다
-              secured_uri: HTTPS/SSL URI여야 합니다.
+              invalid_uri: 올바른 URI 이어야 합니다.
+              relative_uri: 절대경로 URI 이어야 합니다
+              secured_uri: " HTTPS/SSL URI 이어야 합니다."
   doorkeeper:
     applications:
       buttons:
         authorize: 승인
         cancel: 취소
         destroy: 제거
-        edit: 수정
+        edit: 편집
         submit: 제출
       confirmations:
-        destroy: 확실합니까?
+        destroy: 정말로 실행하시겠습니까?
       edit:
-        title: 애플리케이션 수정
+        title: 어플리케이션 수정
       form:
-        error: 이런! 에러를 확인하세요
+        error: 이런! 오류를 확인하세요
       help:
-        native_redirect_uri: "%{native_redirect_uri}를 이용해 로컬 테스트를 할 수 있습니다"
-        redirect_uri: 한 줄에 하나의 URI를 작성하세요
+        native_redirect_uri: "%{native_redirect_uri} 을/를 이용해 로컬 테스트를 할 수 있습니다"
+        redirect_uri: 한 줄에 하나의 URI 를 작성하세요
         scopes: 스페이스로 범위를 구분하세요. 빈 칸으로 놔두면 기본 범위를 사용합니다.
       index:
-        application: 애플리케이션
+        application: 어플리케이션
         callback_url: 콜백 URL
         delete: 삭제
         empty: 어플리케이션이 없습니다.
@@ -159,7 +159,7 @@ ko:
       read: 계정의 모든 데이터를 읽기
       read:accounts: 계정의 정보를 보기
       read:blocks: 차단을 보기
-      read:bookmarks: 내 보관함 보기
+      read:bookmarks: 내 북마크 보기
       read:favourites: 관심글을 보기
       read:filters: 필터를 보기
       read:follows: 팔로우를 보기
@@ -172,7 +172,7 @@ ko:
       write: 계정 정보 수정
       write:accounts: 프로필 수정
       write:blocks: 계정이나 도메인 차단
-      write:bookmarks: 게시글을 보관함에 넣기
+      write:bookmarks: 게시물을 북마크에 넣기
       write:conversations: 뮤트와 대화 삭제
       write:favourites: 관심글 지정
       write:filters: 필터 만들기
diff --git a/config/locales/doorkeeper.ku.yml b/config/locales/doorkeeper.ku.yml
index fdc1c0da4..b04e86d88 100644
--- a/config/locales/doorkeeper.ku.yml
+++ b/config/locales/doorkeeper.ku.yml
@@ -13,9 +13,9 @@ ku:
           attributes:
             redirect_uri:
               fragment_present: perçe tê de tinne.
-              invalid_uri: ger ev URL derbasdar be.
-              relative_uri: teqez URl'yek hebe.
-              secured_uri: ger HTTPS/SSL URl hebe.
+              invalid_uri: divê girêdaneke derbasdar be.
+              relative_uri: divê girêdanake teqezî be.
+              secured_uri: divê girêdaneke HTTPS/SSL be.
   doorkeeper:
     applications:
       buttons:
@@ -32,11 +32,11 @@ ku:
         error: Wey li min! kontrol bikeku form çewtî tê de tune
       help:
         native_redirect_uri: Bo testên herêmî %{native_redirect_uri} bi kar bîne
-        redirect_uri: Serê URl de rêzek bikarbînin
+        redirect_uri: Yek rêz bi kar bîne bo her girêdan
         scopes: Berfirehî bi valahîyan re veqetîne. Bo bikaranîna berfirehî ya standard vala bihêle.
       index:
         application: Sepan
-        callback_url: URl ya vegeriyayî
+        callback_url: Girêdana banga vegerê
         delete: Jê bibe
         empty: Qet sepanê te tinne.
         name: Nav
@@ -49,7 +49,7 @@ ku:
       show:
         actions: Çalakî
         application_id: Kilîdê rajegir
-        callback_urls: URlyên vegeriyayî
+        callback_urls: Girêdanên banga vegerê
         scopes: Berfirehî
         secret: Rajegirî veşartî
         title: 'Sepan: %{name}'
@@ -93,8 +93,8 @@ ku:
         invalid_scope: Berfirehiya tê xwestin nederbasdare, nenas e, an jî xelet e.
         invalid_token:
           expired: Dema nîşana gihîştinê qediya
-          revoked: Nîşana gihîştin hatibû pûçkirin
-          unknown: Nîşana gihîştinê derbasdar e
+          revoked: Nîşana gihîştin hatibû têkbirin
+          unknown: Nîşana gihîştinê ne derbasdar e
         resource_owner_authenticator_not_configured: Xwedîyê çavkanîyê, ji ber ku nehatîye sazkirin bi ser neket di Doorkeeper.configure.resource_owner_authenticator de.
         server_error: Rajekarê rastandinê bi şertek nediyar re rûbirû ma ku nehişt ku ew daxwazê ​​bicîh bîne.
         temporarily_unavailable: Mafê rajekarê hetta demekî ji ber zêde barkirinê an jî lê nihêrîna rajekarê daxwaz bi cîh nay.
@@ -171,7 +171,7 @@ ku:
       read:statuses: hemû şandiyan bibîne
       write: hemû daneyên ajimêra xwe biguherîne
       write:accounts: profîla xwe biguherîne
-      write:blocks: hemû ajimêr û navperan asteng bike
+      write:blocks: ajimêr û navperan asteng bike
       write:bookmarks: şandiyan di şûnpelê de tomar bike
       write:conversations: bêdengkirin û jêbirina axaftinan
       write:favourites: şandiyên bijarte
diff --git a/config/locales/doorkeeper.ms.yml b/config/locales/doorkeeper.ms.yml
index 2925688a0..87c1078c1 100644
--- a/config/locales/doorkeeper.ms.yml
+++ b/config/locales/doorkeeper.ms.yml
@@ -1 +1,54 @@
+---
 ms:
+  activerecord:
+    attributes:
+      doorkeeper/application:
+        name: Nama aplikasi
+  doorkeeper:
+    applications:
+      buttons:
+        cancel: Batal
+        edit: Sunting
+        submit: Hantar
+      confirmations:
+        destroy: Anda pasti?
+      index:
+        delete: Padam
+        name: Nama
+        show: Paparkan
+    authorized_applications:
+      index:
+        superapp: Dalaman
+    flash:
+      applications:
+        create:
+          notice: Aplikasi dicipta.
+        destroy:
+          notice: Aplikasi dipadamkan.
+        update:
+          notice: Aplikasi dikemaskini.
+    grouped_scopes:
+      title:
+        accounts: Akaun
+        admin/accounts: Pengurusan akaun
+        admin/all: Semua fungsi pengurusan
+        admin/reports: Pengurusan laporan
+        all: Semua
+        conversations: Perbualan
+        follow: Hubungan
+        follows: Ikutan
+        media: Lampiran media
+        notifications: Pemberitahuan
+        push: Pemberitahuan segera
+        reports: Laporan
+        search: Cari
+        statuses: Hantaran
+    scopes:
+      admin:read: baca semua data pada pelayan
+      admin:read:accounts: baca maklumat sensitif untuk semua akaun
+      admin:read:reports: baca maklumat sensitif untuk semua laporan dan akaun-akaun yang dilaporkan
+      admin:write: mengubah semua data pada pelayan
+      read:statuses: lihat semua hantaran
+      write:bookmarks: menandabuku hantaran
+      write:favourites: hantaran kegemaran
+      write:statuses: terbitkan hantaran
diff --git a/config/locales/doorkeeper.no.yml b/config/locales/doorkeeper.no.yml
index 7ba1baf7a..99faff5c7 100644
--- a/config/locales/doorkeeper.no.yml
+++ b/config/locales/doorkeeper.no.yml
@@ -148,8 +148,8 @@
         title: OAuth-autorisering påkrevet
     scopes:
       admin:read: lese alle data på tjeneren
-      admin:read:accounts: lese sensitiv informasjon for alle kontoer
-      admin:read:reports: lese sensitiv informasjon for alle rapporter og rapporterte kontoer
+      admin:read:accounts: lese sensitive opplysninger for alle kontoer
+      admin:read:reports: lese sensitive opplysninger for alle rapporter og rapporterte kontoer
       admin:write: modifisere alle data på tjeneren
       admin:write:accounts: utføre moderatorhandlinger på kontoer
       admin:write:reports: utføre moderatorhandlinger på rapporter
@@ -160,7 +160,7 @@
       read:accounts: se informasjon om kontoer
       read:blocks: se blokkeringene dine
       read:bookmarks: se bokmerkene dine
-      read:favourites: se dine likinger
+      read:favourites: se favorittene dine
       read:filters: se filtrene dine
       read:follows: se hvem du følger
       read:lists: se listene dine
@@ -174,7 +174,7 @@
       write:blocks: blokkere kontoer og domener
       write:bookmarks: bokmerke innlegg
       write:conversations: dempe og slette samtaler
-      write:favourites: like innlegg
+      write:favourites: favorittmarker innlegg
       write:filters: opprette filtre
       write:follows: følge personer
       write:lists: opprette lister
diff --git a/config/locales/doorkeeper.pt-BR.yml b/config/locales/doorkeeper.pt-BR.yml
index 905dff0e6..d097b954d 100644
--- a/config/locales/doorkeeper.pt-BR.yml
+++ b/config/locales/doorkeeper.pt-BR.yml
@@ -121,7 +121,7 @@ pt-BR:
         accounts: Contas
         admin/accounts: Administração de contas
         admin/all: Todas as funções administrativas
-        admin/reports: Administração de relatórios
+        admin/reports: Controle de denúncias
         all: Tudo
         blocks: Bloqueios
         bookmarks: Salvos
diff --git a/config/locales/doorkeeper.sco.yml b/config/locales/doorkeeper.sco.yml
new file mode 100644
index 000000000..cfd4577f5
--- /dev/null
+++ b/config/locales/doorkeeper.sco.yml
@@ -0,0 +1,185 @@
+---
+sco:
+  activerecord:
+    attributes:
+      doorkeeper/application:
+        name: Application nemm
+        redirect_uri: Redireck URI
+        scopes: Scopes
+        website: Application wabsteid
+    errors:
+      models:
+        doorkeeper/application:
+          attributes:
+            redirect_uri:
+              fragment_present: cannae contain a fragment.
+              invalid_uri: haes tae be a valid URI.
+              relative_uri: haes tae be an absolute URI.
+              secured_uri: haes tae be a HTTPS/SSL URI.
+  doorkeeper:
+    applications:
+      buttons:
+        authorize: Alloo
+        cancel: Cancel
+        destroy: Destroy
+        edit: Edit
+        submit: Pit in
+      confirmations:
+        destroy: Ye sure?
+      edit:
+        title: Edit application
+      form:
+        error: Ooft! Check yer form fir possible mistaks
+      help:
+        native_redirect_uri: Uise %{native_redirect_uri} fir local tests
+        redirect_uri: Uise ae line per URI
+        scopes: Separate scopes wi spaces. Lea blank fir tae uise the default scopes.
+      index:
+        application: Application
+        callback_url: Cawback URL
+        delete: Delete
+        empty: Ye'v nae applications.
+        name: Nemm
+        new: New application
+        scopes: Scopes
+        show: Shaw
+        title: Yer applications
+      new:
+        title: New application
+      show:
+        actions: Actions
+        application_id: Client key
+        callback_urls: Cawback URLs
+        scopes: Scopes
+        secret: Client secret
+        title: 'Application: %{name}'
+    authorizations:
+      buttons:
+        authorize: Authorize
+        deny: Deny
+      error:
+        title: A error haes occurrt
+      new:
+        prompt_html: "%{client_name} wad like permission fir tae access yer accoont. It is a third-party application. <strong>Gin ye dinnae trust it, then ye shuidnae authorize it.</strong>"
+        review_permissions: Luik ower permissions
+        title: Authorization requirt
+      show:
+        title: Copy this authorization code an paste it in tae the application.
+    authorized_applications:
+      buttons:
+        revoke: Tak awa
+      confirmations:
+        revoke: Ye sure?
+      index:
+        authorized_at: Authorized on %{date}
+        description_html: This is the applications thit kin access yer accoont uisin the API. Gin there applications thit ye dinnae recognize here, or a application isnae behavinnricht, ye kin tak awa its access.
+        last_used_at: Last uised on %{date}
+        never_used: Never uised
+        scopes: Permissions
+        superapp: Internal
+        title: Yer authorized applications
+    errors:
+      messages:
+        access_denied: The resoorce ainer or authorization server denied the request.
+        credential_flow_not_configured: Resoorce Ainer Passwird Credentials flow failed doon tae Doorkeeper.configure.resource_owner_from_credentials no bein configurt.
+        invalid_client: Client authentication failed doon tae unkent client, nae client authentication includit, or unsupportit authentication method.
+        invalid_grant: The provided authorization grant isnae valid, expirit, revokt, disnae match the redirection URI uised in the authorization request, or wis issued tae anither client.
+        invalid_redirect_uri: The redirect uri includit isnae valid.
+        invalid_request:
+          missing_param: 'Missing requirit parameter: %{value}.'
+          request_not_authorized: Request need fir tae be authorized. Requirit parameter fir authorizin request is missin or invalid.
+          unknown: The request is missin a requirit parameter, includes a unsupportit parameter value, or is itherwise malformt.
+        invalid_resource_owner: The providit resoorce ainer credentials urnae valid, or resoorce ainer cannae be fun
+        invalid_scope: The requestit scope isnae valid, unkent, or malformt.
+        invalid_token:
+          expired: The access token expirit
+          revoked: The access token wis revokt
+          unknown: The access token isnae valid
+        resource_owner_authenticator_not_configured: Resoorce Ainer fin failt doon tae Doorkeeper.configure.resource_owner_authenticator bein unconfigurt.
+        server_error: The authorization server encoontert a unexpectit condition thit preventit it fae fulfillin the request.
+        temporarily_unavailable: The authorization server currently isnae able tae haunnle the request doon tae a temporary owerloadin or maintenance o the server.
+        unauthorized_client: The client isnae authorized fir tae perform this request uisin this method.
+        unsupported_grant_type: The authorization grant type isnae supportit bi the authorization server.
+        unsupported_response_type: The authorization server disnae support this response type.
+    flash:
+      applications:
+        create:
+          notice: Application makkit.
+        destroy:
+          notice: Application deletit.
+        update:
+          notice: Application updatit.
+      authorized_applications:
+        destroy:
+          notice: Application revokit.
+    grouped_scopes:
+      access:
+        read: Read-ainly access
+        read/write: Read an write access
+        write: Write-ainly access
+      title:
+        accounts: Accoonts
+        admin/accounts: Administration o accoonts
+        admin/all: Aw administrative functions
+        admin/reports: Administration o clypes
+        all: Awthin
+        blocks: Dingies
+        bookmarks: Buikmairks
+        conversations: Conversations
+        crypto: En-tae-en encryption
+        favourites: Favourites
+        filters: Filters
+        follow: Relationships
+        follows: Follaes
+        lists: Lists
+        media: Media attachments
+        mutes: Wheeshts
+        notifications: Notes
+        push: Push notes
+        reports: Clypes
+        search: Seirch
+        statuses: Posts
+    layouts:
+      admin:
+        nav:
+          applications: Applications
+          oauth2_provider: OAuth2 Provider
+      application:
+        title: OAuth authorization requirit
+    scopes:
+      admin:read: read aw data on the server
+      admin:read:accounts: read sensitive information fae aw accoonts
+      admin:read:reports: read sensitive information fae aw clyped an clyped on accoonts
+      admin:write: modify aw data on the server
+      admin:write:accounts: perform moderation actions on accoonts
+      admin:write:reports: perform moderation actions on clypes
+      crypto: uise en-tae-en encryption
+      follow: modify accoont relationships
+      push: get yer push notifications
+      read: read aw yer accoont's data
+      read:accounts: see accoonts information
+      read:blocks: see yer dingies
+      read:bookmarks: see yer buikmairks
+      read:favourites: see yer favourites
+      read:filters: see yer filters
+      read:follows: see yer follaes
+      read:lists: see yer lists
+      read:mutes: see yet wheeshts
+      read:notifications: see yer notes
+      read:reports: see yer clypes
+      read:search: seirch on yer behauf
+      read:statuses: see aw posts
+      write: modify aw yer accoont's data
+      write:accounts: modify yer profile
+      write:blocks: dingie accoonts an domains
+      write:bookmarks: buikmairk posts
+      write:conversations: wheesht an delete conversations
+      write:favourites: favourite posts
+      write:filters: mak filters
+      write:follows: follae fowk
+      write:lists: mak lists
+      write:media: upload media files
+      write:mutes: wheesht fowk an conversations
+      write:notifications: claer yer notes
+      write:reports: clype on ither fowk
+      write:statuses: publish posts
diff --git a/config/locales/doorkeeper.sr-Latn.yml b/config/locales/doorkeeper.sr-Latn.yml
index f30e2a6ca..568e53d59 100644
--- a/config/locales/doorkeeper.sr-Latn.yml
+++ b/config/locales/doorkeeper.sr-Latn.yml
@@ -38,6 +38,7 @@ sr-Latn:
         application: Aplikacija
         callback_url: Adresa za povratni poziv
         delete: Obriši
+        empty: Nemate aplikacija.
         name: Ime
         new: Nova aplikacija
         scopes: Opsezi važenja
@@ -59,6 +60,8 @@ sr-Latn:
       error:
         title: Dogodila se greška
       new:
+        prompt_html: "%{client_name} želi dozvolu za pristup tvom nalogu. U pitanju je aplikacija treće strane. <strong>Ako smatraš da nije pouzdana, ne bi trebalo da je ovlastiš.</strong>"
+        review_permissions: Pregledaj dozvole
         title: Potrebna autorizacija
       show:
         title: Kopirajte ovaj autorizacioni kod i nalepite ga u aplikaciju.
@@ -68,6 +71,12 @@ sr-Latn:
       confirmations:
         revoke: Da li ste sigurni?
       index:
+        authorized_at: Autorizovano dana %{date}
+        description_html: Ovo su aplikacije koje mogu da pristupe tvom nalogu pomoću API-ja. Ako ovde postoje aplikacije koje ne prepoznaješ ili se neka aplikacija ne ponaša dobro, možeš opozvati njeno pravo pristupa.
+        last_used_at: Poslednji put korišćeno dana %{date}
+        never_used: Nikada nije korišćeno
+        scopes: Dozvole
+        superapp: Interno
         title: Vaše autorizovane aplikacije
     errors:
       messages:
@@ -76,6 +85,10 @@ sr-Latn:
         invalid_client: Klijentska identifikacija nije uspela zbog nepoznatog klijenta, zato što klijent nije uključio identifikaciju ili zato što je iskorišćen nepodržani identifikacioni metod.
         invalid_grant: Zadata identifikaciona dozvola je neispravna, istekla, opozvana, ne poklapa se sa adresom preusmeravanja ili je izdata nekog drugom klijentu.
         invalid_redirect_uri: Uključena adresa preusmeravanja nije ispravna.
+        invalid_request:
+          missing_param: 'Nedostaje obavezni parametar: %{value}.'
+          request_not_authorized: Zahtev mora biti autorizovan. Obavezni parametar za autorizaciju zahteva nedostaje ili je nevažeći.
+          unknown: Obavezni parametar u zahtevu nedostaje, u zahtevu se nalazi nepodržana vrednost parametra ili je parametar na neki drugi način pogrešno formiran.
         invalid_resource_owner: Zadati kredencijali vlasnika resursa nisu ispravni ili vlasnik resursa ne može biti nađen
         invalid_scope: Zahtevani opseg važenja nije ispravan, nepoznat je ili je na neki drugi način pogrešan.
         invalid_token:
@@ -99,6 +112,33 @@ sr-Latn:
       authorized_applications:
         destroy:
           notice: Aplikacija opozvana.
+    grouped_scopes:
+      access:
+        read: Pristup samo za čitanje
+        read/write: Pristup za čitanje i pisanje
+        write: Pristup samo za pisanje
+      title:
+        accounts: Nalozi
+        admin/accounts: Administracija naloga
+        admin/all: Sve funkcije administracije
+        admin/reports: Administracija prijava
+        all: Sve
+        blocks: Blokirani
+        bookmarks: Obeleživači
+        conversations: Razgovori
+        crypto: End-to-end enkripcija
+        favourites: Omiljeni
+        filters: Filteri
+        follow: Veze
+        follows: Praćeni
+        lists: Liste
+        media: Multimedijalni prilozi
+        mutes: Utišani
+        notifications: Obaveštenja
+        push: Prosleđena obaveštenja
+        reports: Prijave
+        search: Pretraga
+        statuses: Objave
     layouts:
       admin:
         nav:
@@ -107,6 +147,39 @@ sr-Latn:
       application:
         title: OAuth autorizacija potrebna
     scopes:
+      admin:read: čitanje svih podataka na serveru
+      admin:read:accounts: čitanje osetljivih podataka za sve naloge
+      admin:read:reports: čitanje osetljivih podataka svih izveštaja i prijavljenih naloga
+      admin:write: menjanje svih podataka na serveru
+      admin:write:accounts: vršenje moderatorskih aktivnosti nad nalozima
+      admin:write:reports: vršenje moderatorskih aktivnosti nad izveštajima
+      crypto: korišćenje end-to-end enkripcije
       follow: prati, blokira, odblokira i otprati naloge
+      push: primanje prosleđenih obaveštenja
       read: čita podatke Vašeg naloga
+      read:accounts: pogledaj informacije o nalozima
+      read:blocks: pogledaj svoje blokirane
+      read:bookmarks: pogledaj svoje obeleživače
+      read:favourites: pogledaj svoje omiljene
+      read:filters: pogledaj svoje filtere
+      read:follows: pogledaj koga pratiš
+      read:lists: pogledaj svoje liste
+      read:mutes: pogledaj svoje utišane
+      read:notifications: pogledaj svoja obaveštenja
+      read:reports: pogledaj svoje prijave
+      read:search: pretraži u svoje ime
+      read:statuses: pogledaj sve objave
       write: objavljuje statuse u Vaše ime
+      write:accounts: izmeni svoj profil
+      write:blocks: blokiraj naloge i domene
+      write:bookmarks: obeleži objave
+      write:conversations: utišaj i obriši razgovore
+      write:favourites: omiljene objave
+      write:filters: kreiraj filtere
+      write:follows: prati korisnike
+      write:lists: kreiraj liste
+      write:media: otpremi medijske datoteke
+      write:mutes: utišaj korinsike i razgovore
+      write:notifications: obriši svoja obaveštenja
+      write:reports: prijavi druge korisnike
+      write:statuses: objavi objave
diff --git a/config/locales/doorkeeper.sr.yml b/config/locales/doorkeeper.sr.yml
index 74c79227b..805332051 100644
--- a/config/locales/doorkeeper.sr.yml
+++ b/config/locales/doorkeeper.sr.yml
@@ -38,6 +38,7 @@ sr:
         application: Апликација
         callback_url: Адреса за повратни позив
         delete: Обриши
+        empty: Немате апликација.
         name: Име
         new: Нова апликација
         scopes: Опсези важења
@@ -59,6 +60,8 @@ sr:
       error:
         title: Догодила се грешка
       new:
+        prompt_html: "%{client_name} жели дозволу за приступ твом налогу. У питању је апликација треће стране. <strong>Ако сматраш да није поуздана, не би требало да је овластиш.</strong>"
+        review_permissions: Прегледај дозволе
         title: Потребна ауторизација
       show:
         title: Копирајте овај ауторизациони код и налепите га у апликацију.
@@ -68,6 +71,12 @@ sr:
       confirmations:
         revoke: Да ли сте сигурни?
       index:
+        authorized_at: Ауторизовано дана %{date}
+        description_html: Ово су апликације које могу да приступе твом налогу помоћу АПИ-ја. Ако овде постоје апликације које не препознајеш или се нека апликација не понаша добро, можеш опозвати њено право приступа.
+        last_used_at: Последњи пут коришћено дана %{date}
+        never_used: Никада није коришћено
+        scopes: Дозволе
+        superapp: Интерно
         title: Ваше ауторизоване апликације
     errors:
       messages:
@@ -76,6 +85,10 @@ sr:
         invalid_client: Клијентска идентификација није успела због непознатог клијента, зато што клијент није укључио идентификацију или зато што је искоришћен неподржани идентификациони метод.
         invalid_grant: Задата идентификациона дозвола је неисправна, истекла, опозвана, не поклапа се са адресом преусмеравања или је издата неког другом клијенту.
         invalid_redirect_uri: Укључена адреса преусмеравања није исправна.
+        invalid_request:
+          missing_param: 'Недостаје обавезни параметар: %{value}.'
+          request_not_authorized: Захтев мора бити ауторизован. Обавезни параметар за ауторизацију захтева недостаје или је неважећи.
+          unknown: Обавезни параметар у захтеву недостаје, у захтеву се налази неподржана вредност параметра или је параметар на неки други начин погрешно формиран.
         invalid_resource_owner: Задати креденцијали власника ресурса нису исправни или власник ресурса не може бити нађен
         invalid_scope: Захтевани опсег важења није исправан, непознат је или је на неки други начин погрешан.
         invalid_token:
@@ -99,6 +112,33 @@ sr:
       authorized_applications:
         destroy:
           notice: Апликација опозвана.
+    grouped_scopes:
+      access:
+        read: Приступ само за читање
+        read/write: Приступ за читање и писање
+        write: Приступ само за писање
+      title:
+        accounts: Налози
+        admin/accounts: Администрација налога
+        admin/all: Све функције администрације
+        admin/reports: Администрација пријава
+        all: Све
+        blocks: Блокирани
+        bookmarks: Обележивачи
+        conversations: Разговори
+        crypto: End-to-end енкрипција
+        favourites: Омиљени
+        filters: Филтери
+        follow: Везе
+        follows: Праћени
+        lists: Листе
+        media: Мултимедијални прилози
+        mutes: Утишани
+        notifications: Обавештења
+        push: Прослеђена обавештења
+        reports: Пријаве
+        search: Претрага
+        statuses: Објаве
     layouts:
       admin:
         nav:
@@ -107,6 +147,39 @@ sr:
       application:
         title: OAuth ауторизација потребна
     scopes:
+      admin:read: читање свих података на серверу
+      admin:read:accounts: читање осетљивих података за све налоге
+      admin:read:reports: читање осетљивих података свих извештаја и пријављених налога
+      admin:write: мењање свих података на серверу
+      admin:write:accounts: вршење модераторских активности над налозима
+      admin:write:reports: вршење модераторских активности над извештајима
+      crypto: коришћење end-to-end енкрипције
       follow: прати, блокира, одблокира и отпрати налоге
+      push: примање прослеђених обавештења
       read: чита податке Вашег налога
+      read:accounts: погледај информације о налозима
+      read:blocks: погледај своје блокиране
+      read:bookmarks: погледај своје обележиваче
+      read:favourites: погледај своје омиљене
+      read:filters: погледај своје филтере
+      read:follows: погледај кога пратиш
+      read:lists: погледај своје листе
+      read:mutes: погледај своје утишане
+      read:notifications: погледај своја обавештења
+      read:reports: погледај своје пријаве
+      read:search: претражи у своје име
+      read:statuses: погледај све објаве
       write: објављује статусе у Ваше име
+      write:accounts: измени свој профил
+      write:blocks: блокирај налоге и домене
+      write:bookmarks: обележи објаве
+      write:conversations: утишај и обриши разговоре
+      write:favourites: омиљене објаве
+      write:filters: креирај филтере
+      write:follows: прати кориснике
+      write:lists: креирај листе
+      write:media: отпреми медијске датотеке
+      write:mutes: утишај коринсике и разговоре
+      write:notifications: обриши своја обавештења
+      write:reports: пријави друге кориснике
+      write:statuses: објави објаве
diff --git a/config/locales/doorkeeper.uk.yml b/config/locales/doorkeeper.uk.yml
index 504361081..4d433185c 100644
--- a/config/locales/doorkeeper.uk.yml
+++ b/config/locales/doorkeeper.uk.yml
@@ -173,13 +173,13 @@ uk:
       write:accounts: змінювати ваш профіль
       write:blocks: блокувати облікові записи і домени
       write:bookmarks: додавати дописи до закладок
-      write:conversations: нехтувати й видалити бесіди
+      write:conversations: приховати й видалити бесіди
       write:favourites: вподобані дописи
       write:filters: створювати фільтри
       write:follows: підписуйтесь на людей
       write:lists: створювайте списки
       write:media: завантажити медіафайли
-      write:mutes: нехтувати людей або бесіди
+      write:mutes: приховувати людей або бесіди
       write:notifications: очищувати Ваші сповіщення
       write:reports: надіслати скаргу про людей
       write:statuses: публікувати дописи
diff --git a/config/locales/doorkeeper.zh-CN.yml b/config/locales/doorkeeper.zh-CN.yml
index b4d680185..2ce18fe44 100644
--- a/config/locales/doorkeeper.zh-CN.yml
+++ b/config/locales/doorkeeper.zh-CN.yml
@@ -121,10 +121,10 @@ zh-CN:
         accounts: 账号
         admin/accounts: 账号管理
         admin/all: 所有管理功能
-        admin/reports: 管理报表
+        admin/reports: 举报管理
         all: 所有
         blocks: 屏蔽
-        bookmarks: 收藏
+        bookmarks: 书签
         conversations: 会话
         crypto: 端到端加密
         favourites: 喜欢
@@ -136,7 +136,7 @@ zh-CN:
         mutes: 已被隐藏的
         notifications: 通知
         push: 推送通知
-        reports: 报告
+        reports: 举报
         search: 搜索
         statuses: 嘟文
     layouts:
@@ -155,8 +155,8 @@ zh-CN:
       admin:write:reports: 对举报执行管理操作
       crypto: 使用端到端加密
       follow: 关注或屏蔽用户
-      push: 接收你的帐户的推送通知
-      read: 读取你的帐户数据
+      push: 接收你的账户的推送通知
+      read: 读取你的账户数据
       read:accounts: 查看账号信息
       read:blocks: 查看你的屏蔽列表
       read:bookmarks: 查看你的书签
diff --git a/config/locales/doorkeeper.zh-HK.yml b/config/locales/doorkeeper.zh-HK.yml
index 30610ef09..0bd60c08e 100644
--- a/config/locales/doorkeeper.zh-HK.yml
+++ b/config/locales/doorkeeper.zh-HK.yml
@@ -60,6 +60,8 @@ zh-HK:
       error:
         title: 發生錯誤
       new:
+        prompt_html: "%{client_name} 想得到存取你帳號的權限。這是一個第三方應用程式。<strong>如果你不信任它,請勿授權。</strong>"
+        review_permissions: 檢視權限
         title: 需要用戶授權
       show:
         title: 請把這個授權碼複製到應用程式中。
@@ -69,6 +71,12 @@ zh-HK:
       confirmations:
         revoke: 是否確定要取消授權?
       index:
+        authorized_at: 於 %{date} 授權
+        description_html: 這些應用程式能透過 API 存取你的帳號。如果有你不認識的應用程式,或程式行為不當,你可以在此撤銷其存取權限。
+        last_used_at: 最後使用於 %{date}
+        never_used: 從未使用
+        scopes: 權限
+        superapp: 內部
         title: 已獲你授權的程用程式
     errors:
       messages:
@@ -104,6 +112,33 @@ zh-HK:
       authorized_applications:
         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: 推送通知
+        reports: 檢舉報告
+        search: 搜尋
+        statuses: 帖文
     layouts:
       admin:
         nav:
@@ -118,6 +153,7 @@ zh-HK:
       admin:write: 修改伺服器的所有資料
       admin:write:accounts: 對帳號進行仲裁管理動作
       admin:write:reports: 對回報進行仲裁管理動作
+      crypto: 使用端到端加密
       follow: 修改帳號的對外聯繫
       push: 接收你的帳號的推送通知
       read: 閱讀你帳號的所有資料
@@ -137,6 +173,7 @@ zh-HK:
       write:accounts: 修改你的個人檔案
       write:blocks: 封鎖帳號及域名
       write:bookmarks: 把文章加入最愛
+      write:conversations: 靜音及刪除對話
       write:favourites: 喜歡的文章
       write:filters: 建立過濾條件
       write:follows: 關注其他人
diff --git a/config/locales/el.yml b/config/locales/el.yml
index 20d74a6a4..3b8f3c74f 100644
--- a/config/locales/el.yml
+++ b/config/locales/el.yml
@@ -200,7 +200,21 @@ el:
         update_status: Ενημέρωση Κατάστασης
       actions:
         approve_user_html: "%{name} εγκρίθηκε εγγραφή από %{target}"
+        destroy_email_domain_block_html: Ο/Η %{name} ξεμπλόκαρε το email domain %{target}
         destroy_instance_html: Ο/Η %{name} εκκαθάρισε τον τομέα %{target}
+        destroy_ip_block_html: Ο/Η %{name} διέγραψε τον κανόνα για την IP %{target}
+        destroy_status_html: Ο/Η %{name} αφαίρεσε την ανάρτηση του/της %{target}
+        destroy_unavailable_domain_html: Ο/Η %{name} ξανάρχισε να τροφοδοτεί το domain %{target}
+        destroy_user_role_html: Ο/Η %{name} διέγραψε τον ρόλο του %{target}
+        disable_2fa_user_html: Ο/Η %{name} απενεργοποίησε το two factor requirement για τον χρήστη %{target}
+        disable_custom_emoji_html: Ο/Η %{name} απενεργοποίησε το emoji %{target}
+        disable_sign_in_token_auth_user_html: Ο/Η %{name} απενεργοποίησε την πιστοποίηση e-mail token του %{target}
+        disable_user_html: Ο/Η %{name} απενεργοποίησε τη σύνδεση για τον χρήστη %{target}
+        enable_custom_emoji_html: Ο/Η %{name} ενεργοποίησε το emoji %{target}
+        enable_sign_in_token_auth_user_html: Ο/Η %{name} ενεργοποίησε την πιστοποίηση e-mail token του %{target}
+        enable_user_html: Ο/Η %{name} ενεργοποίησε τη σύνδεση για τον χρήστη %{target}
+        memorialize_account_html: O/H %{name} μετέτρεψε τον λογαριασμό του %{target} σε σελίδα μνήμης
+        promote_user_html: Ο/Η %{name} προβίβασε το χρήστη %{target}
         reject_user_html: "%{name} απορρίφθηκε εγγραφή από %{target}"
         unblock_email_account_html: "%{name} ξεμπλόκαρε τη διεύθυνση ηλεκτρονικού ταχυδρομείου του %{target}"
       deleted_account: διαγραμμένος λογαριασμός
@@ -269,6 +283,8 @@ el:
       add_new: Έγκριση τομέα
       created_msg: Ο τομέας εγκρίθηκε με επιτυχία
       destroyed_msg: Ο τομέας δεν είναι πια εγκεκριμένος
+      export: Εξαγωγή
+      import: Εισαγωγή
       undo: Αφαίρεση έγκρισης
     domain_blocks:
       add_new: Προσθήκη νέου
@@ -278,13 +294,14 @@ el:
       edit: Διαχείρηση αποκλεισμένου τομέα
       existing_domain_block: Έχετε ήδη επιβάλει αυστηρότερα όρια στο %{name}.
       existing_domain_block_html: Έχεις ήδη επιβάλλει αυστηρότερους περιορισμούς στο %{name}, πρώτα θα πρέπει να τους <a href="%{unblock_url}">αναιρέσεις</a>.
+      export: Εξαγωγή
+      import: Εισαγωγή
       new:
         create: Δημιουργία αποκλεισμού
         hint: Ο αποκλεισμός τομέα δεν θα αποτρέψει νέες καταχωρίσεις λογαριασμών στην βάση δεδομένων, αλλά θα εφαρμόσει αναδρομικά και αυτόματα συγκεκριμένες πολιτικές μεσολάβησης σε αυτούς τους λογαριασμούς.
         severity:
-          desc_html: Η <strong>αποσιώπηση</strong> θα κάνει αόρατες τις δημοσιεύσεις ενός λογαριασμού σε όσους δεν τον ακολουθούν. Η <strong>αναστολή</strong> θα αφαιρέσει όλο το περιεχόμενο, τα πολυμέσα και τα στοιχεία προφίλ ενός λογαριασμού. Χρησιμοποίησε το <strong>κανένα</strong> αν θέλεις απλά να απορρίψεις τα αρχεία πολυμέσων.
           noop: Κανένα
-          silence: Σίγαση
+          silence: Περιορισμός
           suspend: Αναστολή
         title: Αποκλεισμός νέου τομέα
       private_comment: Ιδιωτικό σχόλιο
@@ -312,6 +329,10 @@ el:
         create: Πρόσθεση τομέα
         title: Νέα εγγραφή email στη μαύρη λίστα
       title: Μαύρη λίστα email
+    export_domain_allows:
+      no_file: Δεν επιλέχθηκε αρχείο
+    export_domain_blocks:
+      no_file: Δεν επιλέχθηκε αρχείο
     follow_recommendations:
       status: Κατάσταση
     instances:
@@ -567,6 +588,7 @@ el:
     warning: Μεγάλη προσοχή με αυτά τα στοιχεία. Μην τα μοιραστείς ποτέ με κανέναν!
     your_token: Το διακριτικό πρόσβασής σου (access token)
   auth:
+    apply_for_account: Ζητήστε έναν λογαριασμό
     change_password: Συνθηματικό
     delete_account: Διαγραφή λογαριασμού
     delete_account_html: Αν θέλεις να διαγράψεις το λογαριασμό σου, μπορείς <a href="%{path}">να συνεχίσεις εδώ</a>. Θα σου ζητηθεί επιβεβαίωση.
@@ -746,6 +768,7 @@ el:
     invalid_markup: 'περιέχει λάθος μορφοποίηση HTML: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Μη έγκυρο αρχείο CSV. Σφάλμα: %{error}'
       over_rows_processing_limit: περιέχει περισσότερες από %{count} γραμμές
     modes:
       merge: Συγχώνευση
diff --git a/config/locales/en.yml b/config/locales/en.yml
index 679e356b4..1cc53dca4 100644
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -373,6 +373,8 @@ en:
       add_new: Allow federation with domain
       created_msg: Domain has been successfully allowed for federation
       destroyed_msg: Domain has been disallowed from federation
+      export: Export
+      import: Import
       undo: Disallow federation with domain
     domain_blocks:
       add_new: Add new domain block
@@ -382,15 +384,19 @@ en:
       edit: Edit domain block
       existing_domain_block: You have already imposed stricter limits on %{name}.
       existing_domain_block_html: You have already imposed stricter limits on %{name}, you need to <a href="%{unblock_url}">unblock it</a> first.
+      export: Export
+      import: Import
       new:
         create: Create block
         hint: The domain block will not prevent creation of account entries in the database, but will retroactively and automatically apply specific moderation methods on those accounts.
         severity:
-          desc_html: "<strong>Silence</strong> will make the account's posts invisible to anyone who isn't following them. <strong>Suspend</strong> will remove all of the account's content, media, and profile data. Use <strong>None</strong> if you just want to reject media files."
+          desc_html: "<strong>Limit</strong> will make posts from accounts at this domain invisible to anyone who isn't following them. <strong>Suspend</strong> will remove all content, media, and profile data for this domain's accounts from your server. Use <strong>None</strong> if you just want to reject media files."
           noop: None
-          silence: Silence
+          silence: Limit
           suspend: Suspend
         title: New domain block
+      no_domain_block_selected: No domain blocks were changed as none were selected
+      not_permitted: You are not permitted to perform this action
       obfuscate: Obfuscate domain name
       obfuscate_hint: Partially obfuscate the domain name in the list if advertising the list of domain limitations is enabled
       private_comment: Private comment
@@ -422,6 +428,20 @@ en:
       resolved_dns_records_hint_html: The domain name resolves to the following MX domains, which are ultimately responsible for accepting e-mail. Blocking an MX domain will block sign-ups from any e-mail address which uses the same MX domain, even if the visible domain name is different. <strong>Be careful not to block major e-mail providers.</strong>
       resolved_through_html: Resolved through %{domain}
       title: Blocked e-mail domains
+    export_domain_allows:
+      new:
+        title: Import domain allows
+      no_file: No file selected
+    export_domain_blocks:
+      import:
+        description_html: You are about to import a list of domain blocks. Please review this list very carefully, especially if you have not authored this list yourself.
+        existing_relationships_warning: Existing follow relationships
+        private_comment_description_html: 'To help you track where imported blocks come from, imported blocks will be created with the following private comment: <q>%{comment}</q>'
+        private_comment_template: Imported from %{source} on %{date}
+        title: Import domain blocks
+      new:
+        title: Import domain blocks
+      no_file: No file selected
     follow_recommendations:
       description_html: "<strong>Follow recommendations help new users quickly find interesting content</strong>. When a user has not interacted with others enough to form personalized follow recommendations, these accounts are recommended instead. They are re-calculated on a daily basis from a mix of accounts with the highest recent engagements and highest local follower counts for a given language."
       language: For language
@@ -914,7 +934,7 @@ en:
     warning: Be very careful with this data. Never share it with anyone!
     your_token: Your access token
   auth:
-    apply_for_account: Get on waitlist
+    apply_for_account: Request an account
     change_password: Password
     delete_account: Delete account
     delete_account_html: If you wish to delete your account, you can <a href="%{path}">proceed here</a>. You will be asked for confirmation.
@@ -1159,6 +1179,7 @@ en:
     invalid_markup: 'contains invalid HTML markup: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Invalid CSV file. Error: %{error}'
       over_rows_processing_limit: contains more than %{count} rows
     modes:
       merge: Merge
diff --git a/config/locales/eo.yml b/config/locales/eo.yml
index 5c890ffda..d603a6b3f 100644
--- a/config/locales/eo.yml
+++ b/config/locales/eo.yml
@@ -1,7 +1,7 @@
 ---
 eo:
   about:
-    about_mastodon_html: 'Mastodon estas socia retejo de la estonteco: sen reklamo, sen kompania gvato, etika dezajno kaj malcentraligo! Vi regu viajn datumojn kun Mastodon!'
+    about_mastodon_html: 'La socia reto de la estonteco: sen reklamo, sen firmaa superrigardo, etika fasonado kaj malcentrigo! Regu viajn datumojn per Mastodon!'
     contact_missing: Ne elektita
     contact_unavailable: Ne disponebla
     hosted_on: "%{domain} estas nodo de Mastodon"
@@ -12,7 +12,7 @@ eo:
       one: Sekvanto
       other: Sekvantoj
     following: Sekvatoj
-    instance_actor_flash: Ĉi tiu konto estas virtuala agento uzata por reprezenti la servilon mem kaj neniu individua uzanto. Ĝi estas uzata por celoj de la federaĵo kaj devas ne esti suspendita.
+    instance_actor_flash: Ĉi tiu konto estas virtuala agento uzata por reprezenti la servilon mem kaj neniun individuan uzanton. Ĝi estas uzata por federaciaj celoj kaj ĝi devas ne esti suspendita.
     last_active: laste aktiva
     link_verified_on: Proprieto de ĉi tiu ligilo estis kontrolita je %{date}
     nothing_here: Estas nenio ĉi tie!
@@ -28,12 +28,12 @@ eo:
       title: Plenumi kontrolan agon al %{acct}
     account_moderation_notes:
       create: Lasi noton
-      created_msg: Noto de mederigado estis sukcese kreita!
+      created_msg: Noto de moderigado sukcese kreita!
       destroyed_msg: Noto de moderigado sukcese detruita!
     accounts:
       add_email_domain_block: Bloki retadresan domajnon
       approve: Aprobi
-      approved_msg: Sukcese aprobis aliĝilon de %{username}
+      approved_msg: Sukcese aprobis aliĝ-peton de %{username}
       are_you_sure: Ĉu vi certas?
       avatar: Profilbildo
       by_domain: Domajno
@@ -57,16 +57,16 @@ eo:
       deleted: Forigita
       demote: Degradi
       destroyed_msg: Datumoj de %{username} nun enviciĝis por esti forigita baldaǔ
-      disable: Frostigi
+      disable: Malebligi
       disable_sign_in_token_auth: Malŝalti retpoŝtan ĵetonan aŭtentigon
       disable_two_factor_authentication: Malŝalti 2FA-n
-      disabled: Frostigita
+      disabled: Malebligita
       display_name: Montrata nomo
       domain: Domajno
       edit: Redakti
       email: Retpoŝto
       email_status: Stato de retpoŝto
-      enable: Malfrostigi
+      enable: Ebligi
       enable_sign_in_token_auth: Ŝalti retpoŝtan ĵetonan aŭtentigon
       enabled: Ebligita
       enabled_msg: Sukcese malfrostigis konton de %{username}
@@ -84,9 +84,10 @@ eo:
         remote: Foraj
         title: Loko
       login_status: Ensaluta stato
-      media_attachments: Aŭdovidaj aldonaĵoj
+      media_attachments: Ligitaj aŭdovidaĵoj
       memorialize: Ŝanĝi al memoro
       memorialized: Memorita
+      memorialized_msg: Sukcese ŝanĝis %{username} al memorkonto
       moderation:
         active: Aktivaj
         all: Ĉio
@@ -112,10 +113,13 @@ eo:
       public: Publika
       push_subscription_expires: Eksvalidiĝo de la abono al PuSH
       redownload: Aktualigi profilon
+      redownloaded_msg: Sukcese refreŝis profilon de %{username} de origino
       reject: Malakcepti
-      remove_avatar: Forigi la rolfiguron
+      rejected_msg: Sukcese malaprobis aliĝ-peton de %{username}
+      remove_avatar: Forigi profilbildon
       remove_header: Forigi kapan bildon
-      removed_avatar_msg: La bildo de la rolfiguro de %{username} estas sukcese forigita
+      removed_avatar_msg: La profilbildo de %{username} estas sukcese forigita
+      removed_header_msg: Sukcese forigis kapbildon de %{username}
       resend_confirmation:
         already_confirmed: Ĉi tiu uzanto jam estas konfirmita
         send: Resendi konfirman retpoŝton
@@ -135,15 +139,16 @@ eo:
       shared_inbox_url: URL de kunhavigita leterkesto
       show:
         created_reports: Faritaj raportoj
-        targeted_reports: Raporitaj de alia
-      silence: Mutigita
+        targeted_reports: Raporitaj de aliaj
+      silence: Limigi
       silenced: Silentigita
       statuses: Afiŝoj
       strikes: Antaǔaj admonoj
       subscribe: Aboni
       suspend: Haltigu
       suspended: Suspendita
-      suspension_reversible_hint_html: La konto estas suspendita, kaj la datumoj estos komplete forgitaj en la %{date}. Ĝis tiam, la konto povas esti restaŭrita sen malutila efiko. Se vi deziras tuj forigi ĉiujn datumojn de la konto, vi povas fari ĉi-sube.
+      suspension_irreversible: La datumoj de ĉi tiu konto neinverseble forigitas.
+      suspension_reversible_hint_html: La konto estas suspendita, kaj la datumoj estos komplete forigitaj je %{date}. Ĝis tiam, la konto povas esti malsuspendita sen flankefiko. Se vi deziras tuj forigi ĉiujn datumojn de la konto, vi povas fari tion sube.
       title: Kontoj
       unblock_email: Malbloki retpoŝtadresojn
       unblocked_email_msg: Sukcese malblokis la retpoŝtadreson de %{username}
@@ -151,8 +156,9 @@ eo:
       undo_sensitized: Malfari sentema
       undo_silenced: Malfari kaŝon
       undo_suspension: Malfari haltigon
+      unsilenced_msg: Sukcese senlimigis la konton de %{username}
       unsubscribe: Malaboni
-      unsuspended_msg: La konto de %{username} estas sukcese reaktivigita
+      unsuspended_msg: La konto de %{username} estas sukcese malsuspendita
       username: Uzantnomo
       view_domain: Vidi la resumon de la domajno
       warn: Averti
@@ -166,7 +172,7 @@ eo:
         change_email_user: Ŝanĝi retpoŝton de uzanto
         change_role_user: Ŝanĝi Rolon de Uzanton
         confirm_user: Konfirmi uzanton
-        create_account_warning: Krei Averton
+        create_account_warning: Krei averton
         create_announcement: Krei Anoncon
         create_canonical_email_block: Krei Blokadon de Retpoŝto
         create_custom_emoji: Krei Propran Emoĝion
@@ -174,6 +180,7 @@ eo:
         create_domain_block: Krei Blokadon De Domajno
         create_email_domain_block: Krei Blokadon De Retpoŝta Domajno
         create_ip_block: Krei IP-regulon
+        create_unavailable_domain: Krei nehaveblan domajnon
         create_user_role: Krei Rolon
         demote_user: Malpromocii Uzanton
         destroy_announcement: Forigi Anoncon
@@ -182,22 +189,23 @@ eo:
         destroy_domain_allow: Forigi Domajnan Permeson
         destroy_domain_block: Forigi blokadon de domajno
         destroy_email_domain_block: Forigi blokadon de retpoŝta domajno
+        destroy_instance: Forigi domajnon
         destroy_ip_block: Forigi IP-regulon
         destroy_status: Forigi mesaĝon
         destroy_unavailable_domain: Forigi Nehaveblan Domajnon
         destroy_user_role: Detrui Rolon
-        disable_2fa_user: Malaktivigi 2FA-n
-        disable_custom_emoji: Malaktivigi la proprajn emoĝiojn
+        disable_2fa_user: Malebligi 2FA
+        disable_custom_emoji: Malebligi proprajn emoĝiojn
         disable_sign_in_token_auth_user: Malaktivigi Retpoŝtan Ĵetonon por Uzanto
         disable_user: Malaktivigi la uzanton
         enable_custom_emoji: Ebligi Propran Emoĝion
-        enable_sign_in_token_auth_user: Aktivigi la aŭtentigon de peco per retpoŝto por la uzanto
+        enable_sign_in_token_auth_user: Ebligi retpoŝtan ĵetonan aŭtentigon por la uzanto
         enable_user: Ebligi uzanton
         memorialize_account: Memorigu Konton
         promote_user: Promocii Uzanton
         reject_appeal: Malaprobi Apelacion
         reject_user: Malakcepti Uzanton
-        remove_avatar_user: Forigi la rolfiguron
+        remove_avatar_user: Forigi la profilbildon
         reopen_report: Remalfermi signalon
         resend_user: Resendi konfirman retmesaĝon
         reset_password_user: Restarigi pasvorton
@@ -209,7 +217,7 @@ eo:
         unblock_email_account: Malbloki retpoŝtadreson
         unsensitive_account: Malmarku la amaskomunikilojn en via konto kiel sentemaj
         unsilence_account: Malsilentigi konton
-        unsuspend_account: Reaktivigi la konton
+        unsuspend_account: Malsuspendi la konton
         update_announcement: Ĝisdatigi anoncon
         update_custom_emoji: Ĝisdatigi proprajn emoĝiojn
         update_domain_block: Ĝigdatigi domajnan blokadon
@@ -217,41 +225,64 @@ eo:
         update_status: Ĝisdatigi staton
         update_user_role: Ĝisdatigi Rolon
       actions:
+        approve_appeal_html: "%{name} aprobis kontroldecidapelacion de %{target}"
         approve_user_html: "%{name} aprobis registriĝon de %{target}"
         assigned_to_self_report_html: "%{name} asignis signalon %{target} al si mem"
         change_email_user_html: "%{name} ŝanĝis retadreson de uzanto %{target}"
+        change_role_user_html: "%{name} ŝanĝis rolon de %{target}"
         confirm_user_html: "%{name} konfirmis retadreson de uzanto %{target}"
         create_account_warning_html: "%{name} sendis averton al %{target}"
         create_announcement_html: "%{name} kreis novan anoncon %{target}"
+        create_canonical_email_block_html: "%{name} blokis retpoŝtadreson per krado %{target}"
         create_custom_emoji_html: "%{name} alŝutis novan emoĝion %{target}"
         create_domain_allow_html: "%{name} aldonis domajnon %{target} al la blanka listo"
         create_domain_block_html: "%{name} blokis domajnon %{target}"
         create_email_domain_block_html: "%{name} blokis retpoŝtan domajnon %{target}"
         create_ip_block_html: "%{name} kreis regulon por IP %{target}"
+        create_unavailable_domain_html: "%{name} ĉesis sendon al domajno %{target}"
         create_user_role_html: "%{name} kreis rolon de %{target}"
         demote_user_html: "%{name} degradis uzanton %{target}"
         destroy_announcement_html: "%{name} forigis anoncon %{target}"
+        destroy_canonical_email_block_html: "%{name} malblokis retpoŝtadreson per krado %{target}"
         destroy_custom_emoji_html: "%{name} forigis emoĝion %{target}"
         destroy_domain_allow_html: "%{name} forigis domajnon %{target} el la blanka listo"
         destroy_domain_block_html: "%{name} malblokis domajnon %{target}"
         destroy_email_domain_block_html: "%{name} malblokis retpoŝtan domajnon %{target}"
+        destroy_instance_html: "%{name} forigis domajnon %{target}"
         destroy_ip_block_html: "%{name} forigis regulon por IP %{target}"
         destroy_status_html: "%{name} forigis mesaĝojn de %{target}"
+        destroy_unavailable_domain_html: "%{name} daurigis sendon al domajno %{target}"
         destroy_user_role_html: "%{name} forigis rolon de %{target}"
-        disable_2fa_user_html: "%{name} malaktivigis la postulon de la dufaktora aŭtentigo por la uzanto %{target}"
-        disable_custom_emoji_html: "%{name} neebligis la emoĝion %{target}"
-        disable_user_html: "%{name} neebligis la saluton de la uzanto %{target}"
+        disable_2fa_user_html: "%{name} malebligis dufaktoran aŭtentigon por uzanto %{target}"
+        disable_custom_emoji_html: "%{name} malebligis emoĝion %{target}"
+        disable_sign_in_token_auth_user_html: "%{name} malebligis retpoŝtoĵetonautentigon por %{target}"
+        disable_user_html: "%{name} malebligis ensaluton por uzanto %{target}"
         enable_custom_emoji_html: "%{name} ebligis emoĝion %{target}"
+        enable_sign_in_token_auth_user_html: "%{name} ebligis retpoŝtoĵetonautentigon por %{target}"
         enable_user_html: "%{name} ebligis ensaluton por uzanto %{target}"
         memorialize_account_html: "%{name} ŝanĝis la konton de %{target} al memora paĝo"
         promote_user_html: "%{name} plirangigis uzanton %{target}"
+        reject_appeal_html: "%{name} malakceptis kontroldecidapelacion de %{target}"
         reject_user_html: "%{name} malakceptis registriĝon de %{target}"
-        remove_avatar_user_html: "%{name} forigis la rolfiguron de %{target}"
+        remove_avatar_user_html: "%{name} forigis profilbildon de %{target}"
         reopen_report_html: "%{name} remalfermis signalon %{target}"
         resend_user_html: "%{name} resendis konfirman retmesaĝon por %{target}"
+        reset_password_user_html: "%{name} restarigis pasvorton de usanto %{target}"
+        resolve_report_html: "%{name} solvis raporton %{target}"
+        sensitive_account_html: "%{name} markis audovidaĵojn de %{target} kiel sentemaj"
+        silence_account_html: "%{name} limigis la konton de %{target}"
         suspend_account_html: "%{name} suspendis la konton de %{target}"
-        unsuspend_account_html: "%{name} reaktivigis la konton de %{target}"
+        unassigned_report_html: "%{name} malasignis raporton %{target}"
+        unblock_email_account_html: "%{name} malblokis retpoŝtoadreson de %{target}"
+        unsensitive_account_html: "%{name} malmarkis audovidaĵojn de %{target} kiel sentemaj"
+        unsilence_account_html: "%{name} malfaris limon de konto de %{target}"
+        unsuspend_account_html: "%{name} malsuspendis la konton de %{target}"
         update_announcement_html: "%{name} ĝisdatigis anoncon %{target}"
+        update_custom_emoji_html: "%{name} ĝisdatigis emoĝion %{target}"
+        update_domain_block_html: "%{name} ĝisdatigis domajnblokon por %{target}"
+        update_ip_block_html: "%{name} ŝanĝis regulon por IP %{target}"
+        update_status_html: "%{name} ĝisdatigis mesaĝon de %{target}"
+        update_user_role_html: "%{name} ŝanĝis rolon %{target}"
       deleted_account: forigita konto
       empty: Neniu protokolo trovita.
       filter_by_action: Filtri per ago
@@ -284,17 +315,19 @@ eo:
       created_msg: Emoĝio sukcese kreita!
       delete: Forigi
       destroyed_msg: Emoĝio sukcese forigita!
-      disable: Neebligi
-      disabled: Neebligita
-      disabled_msg: La emoĝio sukcese neebligita
+      disable: Malebligi
+      disabled: Malebligita
+      disabled_msg: Emoĝio sukcese malebligita
       emoji: Emoĝio
-      enable: Enŝalti
+      enable: Ebligi
       enabled: Ebligita
       enabled_msg: Tiu emoĝio estis sukcese ebligita
+      image_hint: PNG aŭ GIF malpli granda ol %{size}
       list: Listo
       listed: Listigita
       new:
         title: Aldoni novan propran emoĝion
+      no_emoji_selected: Neniuj emoĝioj ŝanĝitas ĉar nenio elektitas
       not_permitted: Vi ne rajtas plenumi ĉi tiun agon
       overwrite: Anstataŭigi
       shortcode: Mallonga kodo
@@ -309,12 +342,21 @@ eo:
     dashboard:
       active_users: aktivaj uzantoj
       interactions: interago
-      media_storage: Memorilo de aŭdovidaĵoj
+      media_storage: Konservo de aŭdovidaĵoj
       new_users: novaj uzantoj
       opened_reports: raportoj malfermitaj
+      pending_appeals_html:
+        one: "<strong>%{count}</strong> restanta apelacio"
+        other: "<strong>%{count}</strong> restantaj aplecioj"
+      pending_reports_html:
+        one: "<strong>%{count}</strong> restanta raporto"
+        other: "<strong>%{count}</strong> restantaj raportoj"
       pending_tags_html:
         one: "<strong>%{count}</strong> pritraktota kradvorto"
         other: "<strong>%{count}</strong> pritraktotaj kradvortoj"
+      pending_users_html:
+        one: "<strong>%{count}</strong> restanta uzanto"
+        other: "<strong>%{count}</strong> restantaj uzantoj"
       resolved_reports: raportoj solvitaj
       software: Programo
       sources: Fontoj de konto-kreado
@@ -331,6 +373,8 @@ eo:
       add_new: Aldoni domajnon al la blanka listo
       created_msg: Domajno estis sukcese aldonita al la blanka listo
       destroyed_msg: Domajno estis forigita el la blanka listo
+      export: Eksporti
+      import: Importi
       undo: Forigi el la blanka listo
     domain_blocks:
       add_new: Aldoni novan blokadon de domajno
@@ -338,20 +382,28 @@ eo:
       destroyed_msg: Domajna blokado malfarita
       domain: Domajno
       edit: Redakti domajna blokado
+      existing_domain_block: Vi jam metis pli striktajn limojn al %{name}.
       existing_domain_block_html: Vi jam trudis pli striktajn limojn al %{name}, vi devas <a href="%{unblock_url}">malbloki ĝin</a> unue.
+      export: Eksporti
+      import: Importi
       new:
         create: Krei blokadon
         hint: La domajna blokado ne evitigos kreadon de novaj kontoj en la datumbazo, sed aplikos specifajn kontrolajn agojn sur ĉi tiujn kontojn aŭtomate kaj retroaktive.
         severity:
-          desc_html: "<strong>Kaŝi</strong> igos la mesaĝojn de la konto nevideblaj al tiuj, kiuj ne sekvas tiun. <strong>Haltigi</strong> forigos ĉiujn enhavojn, aŭdovidaĵojn kaj datumojn de la konto. Uzu <strong>Nenio</strong> se vi simple volas malakcepti aŭdovidaĵojn."
+          desc_html: "<strong>Limigi</strong> kaŝos la afiŝojn de kontoj ĉe ĉi tiu domajno al tiuj, kiuj ne sekvas tiujn. <strong>Haltigi</strong> forigos ĉiujn enhavojn, aŭdovidaĵojn kaj datumojn de la konto. Uzu <strong>Nenio</strong> se vi simple volas malakcepti aŭdovidaĵojn."
           noop: Nenio
-          silence: Mutigi
+          silence: Limigi
           suspend: Suspendi
         title: Nova domajna blokado
+      no_domain_block_selected: Neniuj domajnblokoj ŝanĝitas ĉar nenio elektitas
+      not_permitted: Vi ne rajtas fari ĉi tiun agon
       obfuscate: Malklara domajna nomo
+      obfuscate_hint: Parte kaŝi la domajnnomo en la listo se ĝia reklamo ebligitas
       private_comment: Privata komento
+      private_comment_hint: Komento pri ĉi tiu domajnlimo por interna uzo de kontrolantoj.
       public_comment: Publika komento
-      reject_media: Malakcepti la aŭdovidajn dosierojn
+      public_comment_hint: Komento pri ĉi tiu domajnlimo por publiko, se ĝia reklamo ebligitas.
+      reject_media: Malakcepti aŭdovidajn dosierojn
       reject_media_hint: Forigas aŭdovidaĵojn loke konservitajn kaj rifuzas alŝuti ajnan estonte. Ne koncernas haltigojn
       reject_reports: Malakcepti signalojn
       reject_reports_hint: Ignori ĉiujn signalojn el tiu domajno. Ne koncernas haltigojn
@@ -359,21 +411,51 @@ eo:
       view: Vidi domajna blokado
     email_domain_blocks:
       add_new: Aldoni novan
+      attempts_over_week:
+        one: "%{count} provo ekde lasta semajno"
+        other: "%{count} registroprovoj ekde lasta semajno"
       created_msg: Retadreso sukcese aldonita al la nigra listo
       delete: Forigi
+      dns:
+        types:
+          mx: MX-rekordo
       domain: Domajno
       new:
         create: Aldoni domajnon
+        resolve: Solvi domajnon
         title: Nova blokado de retadresa domajno
+      no_email_domain_block_selected: Neniuj retpoŝtoadresodomajnblokoj ŝanĝitas ĉar nenio elektitas
+      resolved_dns_records_hint_html: La domajnnomo referencas al la MX-domajnoj kiuj akceptas retpoŝton. <strong>Ne bloku grandajn retpoŝtoservilojn.</strong>
+      resolved_through_html: Solvis tra %{domain}
       title: Nigra listo de retadresaj domajnoj
+    export_domain_allows:
+      new:
+        title: Importi domajnpermesojn
+      no_file: Neniu dosiero elektita
+    export_domain_blocks:
+      import:
+        description_html: Vi importos liston de domajnblokoj.
+        existing_relationships_warning: Ekzistantaj sekvorilatoj
+        private_comment_description_html: 'Por helpi vin, importitaj blokoj kreitas kun la privata komento: <q>%{comment}</q>'
+        private_comment_template: Importita de %{source} je %{date}
+        title: Importi domajnblokojn
+      new:
+        title: Importi domajnblokojn
+      no_file: Neniu dosiero elektita
     follow_recommendations:
+      description_html: "<strong>Sekvorekomendoj helpi novajn uzantojn rapide trovi interesa enhavo</strong>. Ili rekalkulitas ĉiutage lau interagoj kaj sekvantokvantoj."
       language: Por la lingvo
       status: Stato
       suppress: Subpremita sekvu rekomendojn
       suppressed: Subpremita
       title: Rekomendoj de sekvado
+      unsuppress: Regajni sekvorekomendon
     instances:
       availability:
+        description_html:
+          one: Se sendo la domajno malsukcesis por <strong>%{count} dio</strong>, ne estas sendprovo plu escepte <em>de</em> la dojmano.
+          other: Se sendo la domajno malsukcesis por <strong>%{count} dioj</strong>, ne estas sendprovo plu escepte <em>de</em> la dojmano.
+        failure_threshold_reached: Malsukceslimo atingitas je %{date}.
         failures_recorded:
           one: Malsukcesa provo dum %{count} tago.
           other: Malsukcesa provo dum %{count} apartaj tagoj.
@@ -384,10 +466,12 @@ eo:
       back_to_limited: Limigita
       back_to_warning: Averta
       by_domain: Domajno
+      confirm_purge: Ĉu vi certas ke vi volas porĉiame forigi datumojn de ĉi tiun domajno?
       content_policies:
         comment: Interna noto
+        description_html: Vi povas difini enhavopolitikojn al la ĉiuj kontoj.
         policies:
-          reject_media: Malakcepti la aŭdovidaĵojn
+          reject_media: Malakcepti aŭdovidaĵojn
           reject_reports: Malakcepti raportojn
           silence: Kaŝu
           suspend: Suspendi
@@ -400,7 +484,7 @@ eo:
         instance_followers_measure: niaj sekvantoj tie
         instance_follows_measure: iliaj sekvantoj ĉi tie
         instance_languages_dimension: Ĉefaj lingvoj
-        instance_media_attachments_measure: stokitaj aŭdovidaj aldonaĵoj
+        instance_media_attachments_measure: konservitaj ligitaj aŭdovidaĵoj
         instance_reports_measure: raportoj pri ili
         instance_statuses_measure: konservitaj afiŝoj
       delivery:
@@ -411,6 +495,9 @@ eo:
         stop: Halti liveradon
         unavailable: Nedisponebla
       delivery_available: Liverado disponeblas
+      delivery_error_days: Sendoerardioj
+      delivery_error_hint: Se sendo ne estas ebla por %{count} dioj, ĝi automate markotas kiel nesendebla.
+      destroyed_msg: Datumo de %{domain} nun vicitas por baldaua forigo.
       empty: Neniuj domajnoj trovitaj.
       known_accounts:
         one: "%{count} konata konto"
@@ -422,12 +509,14 @@ eo:
       private_comment: Privata komento
       public_comment: Publika komento
       purge: Purigu
+      purge_description_html: Se vi kredas ke ĉi tiuj domajno estas malreta, vi povas forigi ĉiujn kontorekordojn.
       title: Federacio
       total_blocked_by_us: Blokitaj de ni
       total_followed_by_them: Sekvataj de ili
       total_followed_by_us: Sekvataj de ni
       total_reported: Signaloj pri ili
       total_storage: Aŭdovidaj kunsendaĵoj
+      totals_time_period_hint_html: Sumo montritas malsupre inkluzivas datumo ekde komenco.
     invites:
       deactivate_all: Malaktivigi ĉion
       filter:
@@ -457,15 +546,16 @@ eo:
       add_new: Aldoni novan ripetilon
       delete: Forigi
       description_html: "<strong>Fratara ripetilo</strong> estas survoja servilo, kiu interŝanĝas grandan kvanton de publikaj mesaĝoj inter serviloj, kiuj abonas kaj publikigas al ĝi. <strong>Ĝi povas helpi etajn kaj mezgrandajn servilojn malkovri enhavon de la fediverse</strong>, kio normale postulus al lokaj uzantoj mane sekvi homojn de foraj serviloj."
-      disable: Neebligi
-      disabled: Neebligita
-      enable: Enŝalti
+      disable: Malebligi
+      disabled: Malebligita
+      enable: Ebligi
       enable_hint: Post ebligo, via servilo abonos ĉiujn publikajn mesaĝojn de tiu ripetilo, kaj komencos sendi publikajn mesaĝojn de la servilo al ĝi.
       enabled: Ebligita
       inbox_url: URL de la ripetilo
       pending: Atendante aprobon de la ripetilo
       save_and_enable: Konservi kaj ebligi
       setup: Agordi konekton al ripetilo
+      signatures_not_enabled: Ripetiloj ne ĝuste funkcias dum sekura reĝimo au limigita federacio reĝimo ebligitas
       status: Stato
       title: Ripetiloj
     report_notes:
@@ -480,15 +570,23 @@ eo:
       action_log: Kontrola protokolo
       action_taken_by: Ago farita de
       actions:
-        other_description_html: Vidu pli da elektebloj por kontroli la agadon de la konto kaj personecigi la komunikadon kun la konto pri kiu raporto.
+        delete_description_html: Raportitaj mesaĝoj forigotas kaj admono rekorditas.
+        mark_as_sensitive_description_html: La audovidaĵo en la raportita mesaĝo markotas kiel sentema kaj admono rekorditas.
+        other_description_html: Vidu pli da ebloj por regi la sintenon de la konto kaj por personigi la komunikadon kun la raportita konto.
+        resolve_description_html: Nenio okazotas al la raportita konto kaj la raporto fermotas.
+        silence_description_html: La profilo estas videbla nur de persono kiu jam sekvis au serĉis.
+        suspend_description_html: La profilo kaj ĉiuj ĝiaj enhavoj fariĝos nealirebla kaj ĝi fine forigotas.
+      actions_description_html: Decidu kiu ago por solvi ĉi tiuj raporto. <strong>Spamo</strong> kategorio elektitas.
       add_to_report: Aldoni pli al raporto
       are_you_sure: Ĉu vi certas?
       assign_to_self: Asigni al mi
       assigned: Asignita kontrolanto
       by_target_domain: Domajno de la signalita konto
       category: Kategorio
+      category_description_html: La kialo pri ĉi tiuj konto kaj enhavo raportitaj sendotas al la raportita konto
       comment:
         none: Nenio
+      comment_description_html: 'Por doni pli da informo, %{name} skribis:'
       created_at: Signalita
       delete_and_resolve: Forigi afiŝojn
       forwarded: Plusendita
@@ -504,6 +602,8 @@ eo:
         delete: Forigi
         placeholder: Priskribu faritajn agojn, aŭ ajnan novan informon pri tiu signalo…
         title: Notoj
+      notes_description_html: Vidi kaj lasi notojn por aliaj kontrolantoj kaj estonta vi
+      quick_actions_description_html: 'Agu au movu malsupre por vidi raportitajn enhavojn:'
       remote_user_placeholder: la ekstera uzanto de %{instance}
       reopen: Remalfermi signalon
       report: 'Signalo #%{id}'
@@ -514,6 +614,7 @@ eo:
       skip_to_actions: Salti al agoj
       status: Mesaĝoj
       statuses: Raportita enhavo
+      statuses_description_html: Sentema enhavo referencitas kun la raportita konto
       target_origin: Origino de raportita konto
       title: Signaloj
       unassign: Malasigni
@@ -527,12 +628,14 @@ eo:
         other: "%{count} uzantoj"
       categories:
         administration: Administrado
+        devops: Programado kaj Operaciado
         invites: Invitoj
         moderation: Kontrolado
         special: Specialaj
       delete: Forigi
+      description_html: Per <strong>uzantoroloj</strong>, vi povas personecigi funkciojn kaj areon de Mastodon.
       edit: Redakti rolon de '%{name}'
-      everyone: Implicitaj permesoj
+      everyone: Defaŭltaj permesoj
       everyone_full_description_html: Jen la <strong>baza rolo</strong>, kiu afektas <strong>ĉiujn uzantojn</strong>, eĉ tiuj sen atribuata rolo. Ĉiuj aliaj roloj heredas permesojn de ĝi.
       permissions_count:
         one: "%{count} permeso"
@@ -540,50 +643,102 @@ eo:
       privileges:
         administrator: Administranto
         administrator_description: Uzantoj kun ĉi tiu permeso preterpasos ĉiun permeson
-        delete_user_data: Forviŝi la datumojn de la uzanto
+        delete_user_data: Forigi la datumojn de la uzanto
+        delete_user_data_description: Permesi uzantojn forigi datumo de alia uzanto sen atendo
         invite_users: Inviti Uzantojn
+        invite_users_description: Permesi uzantoj inviti novajn personojn al la servilo
         manage_announcements: Administri Anoncojn
         manage_announcements_description: Permesas uzantojn administri anoncojn ĉe la servilo
         manage_appeals: Administri Apelaciojn
         manage_appeals_description: Rajtigas al uzantoj kontroli apelaciojn kontraǔ kontrolaj agoj
         manage_blocks: Administri Blokojn
+        manage_blocks_description: Permesi uzantojn bloki retpoŝtoservilojn kaj IP-adresojn
+        manage_custom_emojis: Administri propajn emoĝiojn
+        manage_custom_emojis_description: Permesi uzantojn administri propajn emoĝiojn ĉe la servilo
         manage_federation: Administri Federacion
         manage_federation_description: Permesas al uzantoj bloki aǔ permesi federacion kun aliaj domajnoj, kaj regi liveradon
         manage_invites: Administri Invitojn
+        manage_invites_description: Permesi uzantojn vidi kaj malaktivigi invitligilojn
+        manage_reports: Administri raportojn
+        manage_reports_description: Permesi uzantojn kontroli raportojn kaj administri ilin
         manage_roles: Administri Rolojn
+        manage_roles_description: Permesi uzantojn administri kaj asigni rolojn kiuj estas malaltaj ol ilia
         manage_rules: Administri Regulojn
+        manage_rules_description: Permesi uzantojn ŝanĝi servilregulojn
+        manage_settings: Administri opciojn
+        manage_settings_description: Permesi uzantojn ŝanĝi retejoopciojn
+        manage_taxonomies: Administri kategoriarojn
+        manage_taxonomies_description: Permesi uzantojn kontroli popularan enhavon kaj ĝisdatigi kradvortopciojn
+        manage_user_access: Administri uzantoaliron
+        manage_user_access_description: Permesi uzantojn malebligi autentiko kaj retpoŝtodetalo de aliaj uzantoj
+        manage_users: Administri uzantojn
+        manage_users_description: Permesi uzantaojn vidi detalojn de aliaj uzantoj kaj administri ilin
+        manage_webhooks: Administri rethokojn
+        manage_webhooks_description: Permesi uzantojn komenci rethokojn por administraj eventoj
+        view_audit_log: Vidi protokolon
+        view_audit_log_description: Permesi uzantojn vidi historion de administraj agoj ĉe la servilo
+        view_dashboard: Vidi kontrolpanelon
+        view_dashboard_description: Permesi uzantojn aliri la kontrolpanelon kaj diversajn mezurarojn
+        view_devops: Programado kaj Operaciado
+        view_devops_description: Permesi uzantojn aliri Sidekiq kaj pgHero-kontrolpanelojn
       title: Roloj
     rules:
       add_new: Aldoni regulon
       delete: Forigi
+      description_html: Kvankam plej da personoj pretendas legi kaj asenti servkondiĉoj, personoj kutime ne komplete legi. <strong>Uzu mallonga kaj simpla listo.</strong>.
       edit: Redakti la regulon
+      empty: Neniuj servilregulojn definitas ĝis nun.
       title: Reguloj de la servilo
     settings:
       about:
+        manage_rules: Administri servilregulojn
+        preamble: Donu specifan informon pri kiel la servilo operaciitas, administras kaj financitas.
+        rules_hint: Havas apartan areon por regulojn kiujn via uzantoj devus sekvi.
         title: Pri
       appearance:
+        preamble: Personecigi retinterfaco de Mastodon.
         title: Apero
+      branding:
+        preamble: Via markeco de servilo malsamigas ĝin de aliaj servilojn en la reto. Do, la informo devus esti simpla kaj mallonga.
+        title: Markeco
+      content_retention:
+        preamble: Regi kiel uzantogenerita enhavo konservitis en Mastodon.
+        title: Enhavkonservo
       discovery:
+        follow_recommendations: Sekvorekomendoj
+        preamble: Interesa enhavo estas grava por novaj uzantoj kiuj eble ne konas ajn iun.
+        profile_directory: Profilujo
+        public_timelines: Publikaj templinioj
         title: Eltrovado
+        trends: Tendencoj
       domain_blocks:
         all: Al ciuj
         disabled: Al neniu
         users: Al salutintaj lokaj uzantoj
+      registrations:
+        preamble: Regi kiu povas krei konton ĉe via servilo.
+        title: Registriĝoj
       registrations_mode:
         modes:
           approved: Bezonas aprobi por aliĝi
           none: Neniu povas aliĝi
           open: Iu povas aliĝi
+      title: Agordoj de la servilo
     site_uploads:
       delete: Forigi elŝutitan dosieron
       destroyed_msg: Reteja alŝuto sukcese forigita!
     statuses:
       account: Skribanto
+      application: Aplikaĵo
       back_to_account: Reveni al konta paĝo
+      back_to_report: Reveni al raportpaĝo
       batch:
         remove_from_report: Forigi de raporto
         report: Raporti
       deleted: Forigita
+      favourites: Stelumoj
+      history: Versia historio
+      in_reply_to: Respondas al
       language: Lingvo
       media:
         title: Aŭdovidaĵoj
@@ -601,6 +756,10 @@ eo:
       actions:
         delete_statuses: "%{name} forigis afiŝojn de %{target}"
         disable: "%{name} frostigis la konton de %{target}"
+        mark_statuses_as_sensitive: "%{name} markis mesaĝojn de %{target} kiel sentemaj"
+        none: "%{name} sendis averton al %{target}"
+        sensitive: "%{name} markis konton de %{target} kiel sentema"
+        silence: "%{name} limigis la konton de %{target}"
         suspend: "%{name} suspendis la konton de %{target}"
       appeal_approved: Apelaciita
       appeal_pending: Apelacio pritraktiĝos
@@ -609,9 +768,14 @@ eo:
         message_html: Estas pritraktataj datumbazaj migradoj. Bonvolu ekzekuti ilin por certigi, ke la apliko kondutas kiel atendite
       elasticsearch_running_check:
         message_html: Ne eblas konekti Elasticsearch. Bonvolu kontroli ke ĝi funkcias, aǔ malŝaltu plentekstan serĉon
+      elasticsearch_version_check:
+        message_html: 'Nekongrua Elasticsearch-versio: %{value}'
+        version_comparison: Elasticsearch %{running_version} instalitas sed %{required_version} bezonitas
       rules_check:
         action: Administri servilajn regulojn
         message_html: Vi ne difinis iujn servilajn regulojn.
+      sidekiq_process_check:
+        message_html: Neniu Sidekiq-procezo por la %{value} vico
     tags:
       review: La statuso de la recenzo
       updated_msg: Kradvorto agordoj ĝisdatigis sukcese
@@ -621,48 +785,103 @@ eo:
       approved: Aprobita
       disallow: Malpermesi
       links:
-        allow: Permesi la ligilon
-        disallow: Malpermesi la ligilon
+        allow: Permesi ligilon
+        allow_provider: Permesi publikiganto
+        description_html: Ĉioj estas ligiloj kiuj nun diskonitajs multe de kontoj kiujn via servilo vidas. Ligiloj ne montritas publike se vi ne aprobis la publikiganton.
+        disallow: Malpermesi ligilon
+        disallow_provider: Malpermesi publikiganton
+        no_link_selected: Neniuj ligiloj ŝanĝitas ĉar nenio elektitas
+        publishers:
+          no_publisher_selected: Neniu publikigantoj estis ŝanĝita ĉar neniu estis elektita
+        shared_by_over_week:
+          one: Diskonita de 1 persono ekde lasta semajno
+          other: Diskonita de %{count} personoj ekde lasta semajno
         title: Tendencantaj ligiloj
+        usage_comparison: Diskonita %{today}-foje hodiau, sed estas %{yesterday} hierau
+      only_allowed: Nur permesitas
       pending_review: Atendante revizion
+      preview_card_providers:
+        allowed: Ligiloj de ĉi tiu publikiganto povas populariĝi
+        description_html: Ĉioj estas domajnoj kiuj havas ligiloj kiuj ofte diskonitas ĉe via servilo. Via aprobo inkluzivas subdomajnojn.
+        rejected: Ligiloj de ĉi tiu publikiganto ne populariĝos
+        title: Publikigantoj
+      rejected: Malakceptita
       statuses:
-        allow: Permesi la afiŝon
-        allow_account: Permesi la aŭtoron
-        disallow: Malpermesi la afiŝon
-        disallow_account: Malpermesi la aŭtoron
+        allow: Permesi afiŝon
+        allow_account: Permesi aŭtoron
+        description_html: Oni multe diskonigas kaj stelumas ĉi tiujn mesaĝojn nuntempe laŭ via servilo. Tio povas helpi novajn kaj revenantajn uzantojn trovi pli da homoj por sekvi. Mesaĝo estas montrita publike nur se vi aprobis la aŭtoron kaj se la aŭtoro aprobis ke ties konto estu proponita al aliaj. Vi ankaŭ povas permesi aŭ malakcepti specifajn mesaĝojn.
+        disallow: Malpermesi afiŝon
+        disallow_account: Malpermesi aŭtoron
+        no_status_selected: Neniuj popularaj mesaĝoj ŝanĝitas ĉar nenio elektitas
+        not_discoverable: Autoro ne volonte estas malkovrebla
         shared_by:
-          one: Kundividita kaj aldonita al la preferaĵoj unufoje
-          other: Kundividita kaj aldonita al la preferaĵoj %{friendly_count}-foje
+          one: Diskonigita kaj stelumita unufoje
+          other: Diskonigita kaj stelumita %{friendly_count}-foje
         title: Tendencantaj afiŝoj
       tags:
+        current_score: Nuna puento %{score}
         dashboard:
           tag_accounts_measure: unikaj uzoj
+          tag_languages_dimension: Ĉefaj lingvoj
           tag_servers_dimension: Ĉefaj serviloj
           tag_servers_measure: malsamaj serviloj
+          tag_uses_measure: uzkvanto
+        description_html: Ĉioj estas kradvortoj kiuj nun aperas kun multe mesaĝoj kiujn via servilo vidas. Kradvortoj ne montritas publike se vi ne aprobis ilin.
+        listable: Povas sugestitis
+        no_tag_selected: Neniuj etikedoj ŝanĝitas ĉar nenio elektitas
+        not_listable: Ne sugestotas
+        not_trendable: Ne aperos en tendencoj
         not_usable: Ne povas esti uzata
+        peaked_on_and_decaying: Maksimumo estas je %{date}, nun ĝi malpliiĝas
         title: Tendencantaj kradvortoj
+        trendable: Povas aperi en tendencoj
         trending_rank: 'Populara #%{rank}'
         usable: Povas esti uzata
+        usage_comparison: Uzita %{today}-foje hodiau, sed estas %{yesterday} hierau
+        used_by_over_week:
+          one: Uzita de 1 persono ekde lasta semajno
+          other: Uzita de %{count} personoj ekde lasta semajno
       title: Tendencoj
       trending: Popularaĵoj
     warning_presets:
       add_new: Aldoni novan
-      delete: Forviŝi
-      edit_preset: Redakti la antaŭagordojn de averto
+      delete: Forigi
+      edit_preset: Redakti avertan antaŭagordon
+      empty: Vi ne definis ajn avertantauopciojn ĝis nun.
       title: Administri avertajn antaŭagordojn
     webhooks:
+      add_new: Aldoni finpunkton
       delete: Forigi
+      description_html: "<strong>Rethoko</strong> ebligas Mastodon sendi <strong>realtempan sciigon</strong> pri kelkaj eventoj al la via sia programaro por <strong>automata ekigi</strong>."
       disable: Neebligi
       disabled: Neebligita
       edit: Redakti finpunkton
+      empty: Vi ne havas ajn fiksitaj rethokfinpunktojn ĝis nun.
       enable: Ŝalti
       enabled: Aktiva
+      enabled_events:
+        one: 1 ŝaltita evento
+        other: "%{count} ŝaltitaj eventoj"
       events: Eventoj
+      new: Nova rethoko
+      rotate_secret: Movi sekreton
+      secret: Signosekreto
+      status: Stato
+      title: Rethokoj
+      webhook: Rethoko
   admin_mailer:
     new_appeal:
       actions:
+        delete_statuses: por forigi iliajn mesaĝojn
         disable: por frostigi ties konton
-        suspend: por suspendi iliajn kontojn
+        mark_statuses_as_sensitive: por marki iliajn mesaĝojn kiel sentemaj
+        none: averto
+        sensitive: por marki ilian konton kiel sentema
+        silence: por limigi ilian konton
+        suspend: por suspendi ties konton
+      body: "%{target} apelacias kontroldecido de %{action_taken_by} de %{date}, kiu estas %{type}. Ĝi skribis:"
+      next_steps: Vi povas aprobi apelacion por malfari kontroldecidon au ignori.
+      subject: "%{username} apelacias kontroldecidon ĉe %{instance}"
     new_pending_account:
       body: La detaloj de la nova konto estas sube. Vi povas aprobi aŭ Malakcepti ĉi kandidatiĝo.
       subject: Nova konto atendas por recenzo en %{instance} (%{username})
@@ -671,15 +890,22 @@ eo:
       body_remote: Iu de %{domain} signalis %{target}
       subject: Nova signalo por %{instance} (#%{id})
     new_trends:
+      body: 'La eroj bezonas kontrolon antau ol ili povas montritas publike:'
       new_trending_links:
         title: Tendencantaj ligiloj
+      new_trending_statuses:
+        title: Popularaĝaj mesaĝoj
       new_trending_tags:
+        no_approved_tags: Nun ne havas aprobitajn popularajn kradvortojn.
+        requirements: Ajn ĉi tiu eroj povas superi la %{rank}an kradvorton kiu estas %{lowest_tag_name} kun %{lowest_tag_score} puentoj.
         title: Tendencantaj kradvortoj
+      subject: Novaj popularaĵoj bezonas kontrolitis ĉe %{instance}
   aliases:
     add_new: Krei alinomon
     created_msg: Kreis novan alinomon sukcese. Vi povas inici la transloki el la malnovan konton nun.
     deleted_msg: Forigis la alinomon sukcese. Transloki el tiu konto al ĉi tiu ne plu eblos.
     empty: Vi havas neniun kaŝnomon.
+    hint_html: Se vi volas translokiĝi de alia konto al ĉi tie, kreu alinomon. Ĝi estas <strong>sekura kaj inversebla</strong>. <strong>Ĝi komencitas de malnova konto</strong>.
     remove: Malligili alinomon
   appearance:
     advanced_web_interface: Altnivela retpaĝa interfaco
@@ -708,17 +934,19 @@ eo:
     warning: Estu tre atenta kun ĉi tiu datumo. Neniam diskonigu ĝin al iu ajn!
     your_token: Via alira ĵetono
   auth:
+    apply_for_account: Peti konton
     change_password: Pasvorto
     delete_account: Forigi konton
     delete_account_html: Se vi deziras forigi vian konton, vi povas <a href="%{path}">fari tion ĉi tie</a>. Vi bezonos konfirmi vian peton.
     description:
       prefix_invited_by_user: "@%{name} invitigi vin aligiĝi ĉi tiu servilo de Mastodon!"
       prefix_sign_up: Registriĝu ĉe Mastodon hodiaŭ!
-      suffix: Kun konto, vi povos sekvi aliajn homojn, skribi afiŝojn kaj interŝanĝi mesaĝojn kun la uzantoj de iu ajn Mastodon'a servilo kaj multe pli!
+      suffix: Per konto, vi povos sekvi aliajn homojn, afiŝi kaj interŝanĝi mesaĝojn kun uzantoj de ajna Mastodona servilo kaj multe pli!
     didnt_get_confirmation: Ĉu vi ne ricevis la instrukciojn por konfirmi?
     dont_have_your_security_key: Ne havas vi vian sekurecan ŝlosilon?
     forgot_password: Pasvorto forgesita?
     invalid_reset_password_token: Ĵetono por restarigi pasvorton nevalida aŭ eksvalida. Bonvolu peti novan.
+    link_to_otp: Enigu 2-faktorkodo de via telefono au regajnkodo
     link_to_webauth: Uzi vian sekurecan ŝlosilon
     log_in_with: Ensaluti per
     login: Ensaluti
@@ -726,19 +954,33 @@ eo:
     migrate_account: Movi al alia konto
     migrate_account_html: Se vi deziras alidirekti ĉi tiun konton al alia, vi povas <a href="%{path}">agordi ĝin ĉi tie</a>.
     or_log_in_with: Aŭ ensaluti per
+    privacy_policy_agreement_html: Mi legis kaj konsentis pri <a href="%{privacy_policy_path}" target="_blank">privatpolitiko</a>
     providers:
       cas: CAS
       saml: SAML
     register: Krei konton
     registration_closed: "%{instance} ne estas akcepti nova uzantojn"
     resend_confirmation: Resendi la instrukciojn por konfirmi
-    reset_password: Restarigi pasvorton
+    reset_password: Ŝanĝi pasvorton
+    rules:
+      preamble: Ĉi tioj fiksitas kaj devigitas de kontrolantoj de %{domain}.
+      title: Bazaj reguloj.
     security: Sekureco
     set_new_password: Elekti novan pasvorton
     setup:
+      email_below_hint_html: Se malsupra retpoŝtoadreso estas neĝusta, vi povas ŝanĝi ĉi tie kaj ricevi novan konfirmretpoŝton.
+      email_settings_hint_html: La konfirmretpoŝto senditas al %{email}.
       title: Agordi
+    sign_up:
+      preamble: Per konto ĉe ĉi tiu Mastodon-servilo, vi povas sekvi ajn personojn en la reto.
+      title: Ni pretigu vin ĉe %{domain}.
     status:
       account_status: Statuso de la konto
+      confirming: Retpoŝtokonfirmo bezonas kompletigitis.
+      functional: Via konto estas tute funkcia.
+      pending: Via apliko ankarou bezonas kontrolon de nia teamo. Vi ricevos retpoŝto malantau ol aprobo.
+      redirecting_to: Via konto estas neaktiva ĉar ĝi nun alidirektas al %{acct}.
+      view_strikes: Vidi antauaj admonoj kontra via konto
     too_fast: Formularo sendita tro rapide, klopodu denove.
     use_security_key: Uzi sekurecan ŝlosilon
   authorize_follow:
@@ -755,6 +997,7 @@ eo:
     title: Sekvi %{acct}
   challenge:
     confirm: Daŭrigi
+    hint_html: "<strong>Konsileto:</strong> Ni ne demandos pri via pasvorto ĝis 1 horo."
     invalid_password: Nevalida pasvorto
     prompt: Konfirmi pasvorton por daŭrigi
   crypto:
@@ -786,23 +1029,53 @@ eo:
     proceed: Forigi konton
     success_msg: Via konto estis sukcese forigita
     warning:
+      before: 'Antau ol dauri, legu ĉi tiujn notojn zorgeme:'
+      caches: Enhavo kiu kaŝmemorigitas de aliaj serviloj eble restas
+      data_removal: Viaj mesaĝoj kaj aliaj datumoj permanente forigotas
       email_change_html: Vi povas <a href="%{path}">ŝanĝi vian retadreson</a> sen forigi vian konton
+      email_contact_html: Se ĝi ankorau ne venas, vi povas retpoŝti al <a href="mailto:%{email}">%{email}</a> por ricevi helpon
+      email_reconfirmation_html: Se vi ne ricevas la konfirmretpoŝton, vi povas <a href="%{path}">denove peti</a>
+      irreversible: Vi ne povas regajni au reaktivigi vian konton
       more_details_html: Por pli da detaloj, vidi la <a href="%{terms_path}">privatecan politikon</a>.
       username_available: Via uzantnomo iĝos denove disponebla
       username_unavailable: Via uzantnomo restos nedisponebla
   disputes:
     strikes:
+      action_taken: Agito
+      appeal: Apelacii
+      appeal_approved: Ĉi tiu admono sukcese apelaciitas kaj ne estas valida plu
+      appeal_rejected: La apelacio malakceptitas
+      appeal_submitted_at: Apelacio senditas
+      appealed_msg: Via apelacio senditas. Vi eble sciigitas.
+      appeals:
+        submit: Sendi apelacion
+      approve_appeal: Aprobi apelacion
+      associated_report: Rilata raporto
       created_at: Datita
+      description_html: Ĉioj estas agoj kaj vartoj kontra via konto de %{instance}.
+      recipient: Senditas por
+      reject_appeal: Malakcepti apelacion
+      status: 'Afiŝo #%{id}'
+      status_removed: Mesaĝo jam forigitas de sistemo
+      title: "%{action} de %{date}"
       title_actions:
         delete_statuses: Forigo de afiŝo
+        disable: Frostigi konton
+        mark_statuses_as_sensitive: Marki mesaĝojn kiel sentemaj
         none: Averto
+        sensitive: Marki konton kiel sentema
+        silence: Limo de konto
+        suspend: Suspendi konton
+      your_appeal_approved: Via apelacio aprobitas
+      your_appeal_pending: Vi sendis apelacion
+      your_appeal_rejected: Via apelacio malakceptitas
   domain_validator:
     invalid_domain: ne estas valida domajna nomo
   errors:
-    '400': The request you submitted was invalid or malformed.
+    '400': La peto kiun vi sendis estas nevalida au malformas.
     '403': Vi ne havas la rajton por vidi ĉi tiun paĝon.
     '404': La paĝo ke kiun vi serĉas ne ekzistas ĉi tie.
-    '406': This page is not available in the requested format.
+    '406': Ĉi tiu paĝo ne estas disponebla kun petita formato.
     '410': La paĝo, kiun vi serĉas, ne plu ekzistas ĉi tie.
     '422':
       content: Sekureca konfirmo malsukcesa. Ĉu vi blokas kuketojn?
@@ -811,7 +1084,7 @@ eo:
     '500':
       content: Ni bedaŭras, io malsukcesis niaflanke.
       title: Ĉi tiu paĝo ne estas ĝusta
-    '503': The page could not be served due to a temporary server failure.
+    '503': La paĝo ne povas montritis pro malpermanenta servilmalfunkcio.
     noscript_html: |-
       Por uzi la retan aplikaĵon de Mastodon, bonvolu ebligi JavaScript. Alimaniere, provu unu el la
       <a href="%{apps_path}">operaciumaj aplikaĵoj</a> por Mastodon por via platformo.
@@ -848,32 +1121,58 @@ eo:
     edit:
       add_keyword: Aldoni ĉefvorton
       keywords: Ĉefvortoj
+      statuses: Individuaj mesaĝoj
+      statuses_hint_html: Ĉi tiu filtrilo kongruas kelkajn mesaĝojn. <a href="%{path}">Kontrolu mesaĝojn de la filtrilo</a>.
       title: Ŝanĝi filtrilojn
     errors:
+      deprecated_api_multiple_keywords: Ĉi tiuj parametroj ne povas ŝanĝitis de ĉi tiu programaro. Uzu pli novan programaron.
       invalid_context: Neniu aŭ nevalida kunteksto donita
     index:
       contexts: Filtriloj en %{contexts}
       delete: Forigi
       empty: Vi havas neniun filtrilon.
-      expires_in: Eksvalidiĝi en %{distance}
+      expires_in: Eksvalidiĝas en %{distance}
       expires_on: Eksvalidiĝi je %{date}
       keywords:
         one: "%{count} ĉefvorto"
         other: "%{count} ĉefvortoj"
+      statuses:
+        one: "%{count} afiŝo"
+        other: "%{count} afiŝoj"
+      statuses_long:
+        one: "%{count} mesaĝo kaŝita"
+        other: "%{count} mesaĝoj kaŝita"
       title: Filtriloj
     new:
       save: Konservi novan filtrilon
       title: Aldoni novan filtrilon
+    statuses:
+      back_to_filter: Reveni al filtrilo
+      batch:
+        remove: Forigi de filtrilo
+      index:
+        hint: Ĉi tiu filtrilo kongruas kelkaj mesaĝoj sendepende de aliaj kriterioj.
+        title: Filtritaj mesaĝoj
   footer:
     trending_now: Nunaj furoraĵoj
   generic:
     all: Ĉio
+    all_items_on_page_selected_html:
+      one: "<strong>%{count}</strong> ero ĉe ĉi tiu paĝo elektitas."
+      other: "<strong>%{count}</strong> eroj ĉe ĉi tiu paĝo elektitas."
+    all_matching_items_selected_html:
+      one: "<strong>%{count}</strong> ero kiu kongruas vian serĉon elektitas."
+      other: "<strong>%{count}</strong> eroj kiuj kongruas vian serĉon elektitas."
     changes_saved_msg: Ŝanĝoj sukcese konservitaj!
     copy: Kopii
     delete: Forigi
+    deselect: Malelekti ĉiujn
     none: Neniu
     order_by: Ordigi de
     save_changes: Konservi ŝanĝojn
+    select_all_matching_items:
+      one: Elekti %{count} ero kiu kongruas vian serĉon.
+      other: Elekti ĉiuj %{count} eroj kiu kongruas vian serĉon.
     today: hodiaŭ
     validation_errors:
       one: Io mise okazis! Bonvolu konsulti la suban erar-raporton
@@ -881,6 +1180,9 @@ eo:
   html_validator:
     invalid_markup: 'havas nevalidan HTML-markadon: %{error}'
   imports:
+    errors:
+      invalid_csv_file: Nevalida CSV-dosiero. %{error}
+      over_rows_processing_limit: enhavas pli ol %{count} vicoj
     modes:
       merge: Kunigi
       merge_long: Konservi ekzistajn registrojn kaj aldoni novajn
@@ -912,7 +1214,7 @@ eo:
       one: 1 uzo
       other: "%{count} uzoj"
     max_uses_prompt: Neniu limo
-    prompt: Generi kaj kundividi ligilojn kun aliaj personoj por doni aliron al ĉi tiu servilo
+    prompt: Krei kaj diskonigi ligilojn al aliaj por doni aliron al ĉi tiu servilo
     table:
       expires_at: Eksvalidiĝas je
       uses: Uzoj
@@ -922,17 +1224,24 @@ eo:
       limit: Vi atingis la maksimuman kvanton de listoj
   login_activities:
     authentication_methods:
+      otp: 2-faktora autentigprogramaro
       password: pasvorto
       sign_in_token: retpoŝta sekureca kodo
       webauthn: sekurecaj ŝlosiloj
+    description_html: Se vi vidas nerekonitan agon, eble ŝanĝu vian pasvorton.
+    empty: Neniu autentighistorio disponebla
+    failed_sign_in_html: Malsukcese ensalutprovo per %{method} de %{ip} (%{browser})
+    successful_sign_in_html: Sukcese ensaluto per %{method} de %{ip} (%{browser})
     title: Aŭtentiga historio
   media_attachments:
     validations:
       images_and_video: Aldoni videon al mesaĝo, kiu jam havas bildojn ne eblas
+      not_ready: Ne povas aldoni dosieron kiu ne finas procezitis.
       too_many: Aldoni pli ol 4 dosierojn ne eblas
   migrations:
     acct: Movigita al
     cancel: Nuligi alidirekton
+    cancel_explanation: Nuligi la alidirekton reaktivigos vian nunan konton sed ne regajnas sekvantojn.
     cancelled_msg: Sukcese forigis la alidirekton.
     errors:
       already_moved: estas la saman konton vi jam translokiĝis al
@@ -943,20 +1252,35 @@ eo:
     followers_count: Sekvantoj en la momento de moviĝo
     incoming_migrations: Moviĝi el alia konto
     incoming_migrations_html: Por moviĝi el alia konto al ĉi tiu, vi unue devas <a href="%{path}">krei kromnomo de konto</a>.
+    moved_msg: Vua konto nun alidirektas al %{acct} kaj via sekvantoj translokigitas.
+    not_redirecting: Via konto ne alidirektas al ajn alia konto nun.
+    on_cooldown: Vi lastatempe translokigis vian konton. Ĝi estos disponebla malantau ol %{count} dioj.
     past_migrations: Pasintaj translokaj
     proceed_with_move: Translokigi sekvantoj
     redirected_msg: Via konto nun alidirektas al %{acct}.
     redirecting_to: Via konto alidirektas al %{acct}.
     set_redirect: Agordi alidirekton
     warning:
+      backreference_required: La nova konto devas unue fiksitis antaureferenci al ĉi tio
+      before: 'Antau ol dauri, legu ĉi tiujn notojn zorgeme:'
+      cooldown: Malantau ol translokigo, havas atenddauro kiam vi ne povas translokigi denove
+      disabled_account: Via nuna konto ne estos tute uzebla poste.
+      followers: Ĉi tiu ago translokigos ĉi tiujn sekvantojn de la nuna konto al la nova konto
       only_redirect_html: Alie, vi povas <a href="%{path}">nur aldoni alidirekton en via profilo</a>.
       other_data: Neniu alia datumo estos movita aŭtomate
+      redirect: Via nuna profilo de konto ĝisdatigotas kun alidirektoavizo
   moderation:
     title: Moderigado
+  move_handler:
+    carry_blocks_over_text: Ĉi tiu uzanto translokis de %{acct} kiun vi blokis.
+    carry_mutes_over_text: Ĉi tiu uzanto translokis de %{acct} kiun vi silentigis.
+    copy_account_note_text: 'Ĉi tiu uzanto translokis de %{acct}, ĉi tio estas viaj antauaj notoj pri ĝi:'
   navigation:
     toggle_menu: Baskuli menuon
   notification_mailer:
     admin:
+      report:
+        subject: "%{name} sendis raporton"
       sign_up:
         subject: "%{name} registriĝis"
     favourite:
@@ -977,10 +1301,12 @@ eo:
       body: "%{name} menciis vin en:"
       subject: "%{name} menciis vin"
       title: Nova mencio
+    poll:
+      subject: Enketo de %{name} finitas
     reblog:
-      body: 'Via mesaĝo estas suprenigita de %{name}:'
-      subject: "%{name} suprenigis vian mesaĝon"
-      title: Nova suprenigo
+      body: "%{name} diskonigis vian mesaĝon:"
+      subject: "%{name} diskonigis vian mesaĝon"
+      title: Nova diskonigo
     status:
       subject: "%{name} ĵus afiŝita"
     update:
@@ -1001,16 +1327,17 @@ eo:
           trillion: Dn
   otp_authentication:
     code_hint: Enmetu la kodon kreitan de via aŭtentiga aplikaĵo por konfirmi
-    enable: Enŝalti
+    description_html: Se vi ebligas <strong>dufaktoran aŭtentigon</strong> per autentilprogramaro, ensaluto bezonas vi havi vian telefonon.
+    enable: Ebligi
     instructions_html: "<strong>Skanu ĉi tiun QR-kodon per Google Authenticator aŭ per simila aplikaĵo en via poŝtelefono</strong>. De tiam, la aplikaĵo kreos nombrojn, kiujn vi devos enmeti."
     manual_instructions: 'Se vi ne povas skani la QR-kodon kaj bezonas enmeti ĝin mane, jen la tut-teksta sekreto:'
     setup: Agordi
     wrong_code: La enmetita kodo estis nevalida! Ĉu la servila tempo kaj la aparata tempo ĝustas?
   pagination:
     newer: Pli nova
-    next: Antaŭen
+    next: Sekva
     older: Malpli nova
-    prev: Malantaŭen
+    prev: Antaŭa
     truncate: "&hellip;"
   polls:
     errors:
@@ -1025,8 +1352,10 @@ eo:
       too_many_options: ne povas enhavi pli da %{max} proponoj
   preferences:
     other: Aliaj aferoj
-    posting_defaults: Implicitaj agordoj de afiŝado
+    posting_defaults: Afiŝaj defaŭltoj
     public_timelines: Publikaj templinioj
+  privacy_policy:
+    title: Privateca politiko
   reactions:
     errors:
       limit_reached: Limito de malsamaj reagoj atinginta
@@ -1050,9 +1379,13 @@ eo:
     status: Statuso de la konto
   remote_follow:
     missing_resource: La bezonata URL de plusendado por via konto ne estis trovita
+  reports:
+    errors:
+      invalid_rules: ne referencas validajn regulojn
   rss:
     content_warning: 'Averto pri enhavo:'
     descriptions:
+      account: Publikaj mesaĝoj de @%{acct}
       tag: 'Publikaj afiŝoj pri #%{hashtag}'
   scheduled_statuses:
     over_daily_limit: Vi transpasis la limigon al %{limit} samtage planitaj mesaĝoj
@@ -1092,13 +1425,14 @@ eo:
       ios: iOS
       linux: Linux
       mac: Mac
-      other: nekonata substrato
+      other: nekonata platformo
       windows: Windows
       windows_mobile: Windows Mobile
       windows_phone: Windows Phone
     revoke: Malvalidigi
     revoke_success: Seanco sukcese malvalidigita
     title: Seancoj
+    view_authentication_history: Vidi autentighistorion de via konto
   settings:
     account: Konto
     account_settings: Agordoj de konto
@@ -1112,12 +1446,14 @@ eo:
     export: Eksporti datumojn
     featured_tags: Elstarigitaj kradvortoj
     import: Importi
-    import_and_export: Enporti kaj elporti
+    import_and_export: Importi kaj eksporti
     migrate: Konta migrado
     notifications: Sciigoj
     preferences: Preferoj
     profile: Profilo
     relationships: Sekvatoj kaj sekvantoj
+    statuses_cleanup: Automata mesaĝforigo
+    strikes: Kontroladmonoj
     two_factor_authentication: Dufaktora aŭtentigo
     webauthn_authentication: Sekurecaj ŝlosiloj
   statuses:
@@ -1132,19 +1468,22 @@ eo:
       video:
         one: "%{count} video"
         other: "%{count} videoj"
-    boosted_from_html: Suprenigita de %{acct_link}
-    content_warning: 'Averto de la enhavo: %{warning}'
-    default_language: Same kiel lingvo de la fasado
+    boosted_from_html: Diskonigita de %{acct_link}
+    content_warning: 'Averto pri enhavo: %{warning}'
+    default_language: Sama lingvo kiel tiu de la interfaco
     disallowed_hashtags:
       one: 'enhavas malpermesitan kradvorton: %{tags}'
       other: 'enhavis malpermesitan kradvorton: %{tags}'
     edited_at_html: Redaktis je %{date}
+    errors:
+      in_reply_not_found: Mesaĝo kiun vi provas respondi ŝajnas ne ekzisti.
     open_in_web: Malfermi retumile
     over_character_limit: limo de %{max} signoj transpasita
     pin_errors:
+      direct: Mesaĝoj kiu videbla nun al la uzantoj ne povas alpinglitis
       limit: Vi jam atingis la maksimuman nombron de alpinglitaj mesaĝoj
       ownership: Mesaĝo de iu alia ne povas esti alpinglita
-      reblog: Suprenigo ne povas esti alpinglita
+      reblog: Diskonigo ne povas esti alpinglita
     poll:
       total_people:
         one: "%{count} persono"
@@ -1169,14 +1508,25 @@ eo:
       unlisted_long: Ĉiuj povas vidi, sed nelistigita en publikaj templinioj
   statuses_cleanup:
     enabled: Aŭtomate forigi malnovajn postojn
+    enabled_hint: Automate forigi viajn mesaĝojn kiam ili atingas la aĝlimon kaj havas escepton
     exceptions: Esceptoj
-    ignore_favs: Ignori la preferaĵojn
-    ignore_reblogs: Ignori la suprenigojn
+    explanation: Forigi mesaĝojn estas rimeda ago, do ĉi tio malrapide sekve faratas kiam la servilo ne estas okupita.
+    ignore_favs: Ignori stelumojn
+    ignore_reblogs: Ignori diskonigojn
+    interaction_exceptions: Esceptoj lau interagoj
+    interaction_exceptions_explanation: Sciu ke estas neniu garantio ke mesaĝo estos forigita se ĝi iras sub la limo de diskonigoj aŭ stelumoj post atingi ĝin.
     keep_direct: Konservi rektajn mesaĝojn
     keep_direct_hint: Ne forigos viajn rektajn mesagôjn
-    keep_media: Konservi la mesaĝojn kun aŭdovidaj aldonaĵoj
-    keep_media_hint: Ne forviŝi la mesaĝojn kiuj enhavas aŭdovidajn aldonaĵojn
-    keep_self_fav_hint: Ne forviŝi viajn proprajn afiŝojn, se vi aldonis ilin al viaj preferaĵoj
+    keep_media: Konservi mesaĝojn kun aŭdovidaj aldonaĵoj
+    keep_media_hint: Ne forigi mesaĝojn kiuj enhavas aŭdovidajn aldonaĵojn
+    keep_pinned: Konservi alpinglitajn mesaĝojn
+    keep_pinned_hint: Ne forigi viajn ajn alpinglitajn mesaĝojn
+    keep_polls: Konservi enketojn
+    keep_polls_hint: Ne forigi viajn ajn enketojn
+    keep_self_bookmark: Konservi mesaĝojn kiun vi legsignis
+    keep_self_bookmark_hint: Ne forigi viajn siajn mesaĝojn se vi legsignis ilin
+    keep_self_fav: Konservi mesaĝojn kiujn vi stelumis
+    keep_self_fav_hint: Ne forigi proprajn mesaĝojn se vi stelumis ilin
     min_age:
       '1209600': 2 semajnoj
       '15778476': 6 monatoj
@@ -1186,16 +1536,24 @@ eo:
       '604800': 1 semajno
       '63113904': 2 jaroj
       '7889238': 3 monatoj
+    min_age_label: Aĝlimo
+    min_favs: Konservi mesaĝojn stelumitajn almenaŭ
+    min_favs_hint: Ne forigas mesaĝojn de vi kiuj ricevis almenaŭ tiom da stelumoj. Lasu malplena por forigi mesaĝojn sendepende de la nombro de stelumoj
+    min_reblogs: Konservi diskonitajn mesaĝojn almenau
+    min_reblogs_hint: Ne forigi ajn viajn mesaĝojn kiu diskonitas almenau ĉifoje
   stream_entries:
     pinned: Alpinglita
-    reblogged: suprenigita
+    reblogged: diskonigita
     sensitive_content: Tikla enhavo
+  strikes:
+    errors:
+      too_late: Estas tro malfrua por apelacii ĉi tiun admonon
   tags:
     does_not_match_previous_name: ne kongruas kun la antaŭa nomo
   themes:
     contrast: Mastodon (Forta kontrasto)
-    default: Mastodon (Malluma)
-    mastodon-light: Mastodon (Luma)
+    default: Mastodon (Malhela)
+    mastodon-light: Mastodon (Hela)
   time:
     formats:
       default: "%Y.%b.%d, %H:%M"
@@ -1203,14 +1561,15 @@ eo:
       time: "%H:%M"
   two_factor_authentication:
     add: Aldoni
-    disable: Malaktivigi 2FA-n
-    disabled_success: Du-faktora aŭtentigo sukcese malaktivigita
+    disable: Malebligi 2FA-n
+    disabled_success: Dufaktora aŭtentigo sukcese malebligita
     edit: Redakti
     enabled: Dufaktora aŭtentigo ebligita
     enabled_success: Dufaktora aŭtentigo sukcese ebligita
     generate_recovery_codes: Krei realirajn kodojn
     lost_recovery_codes: Realiraj kodoj permesas rehavi aliron al via konto se vi perdis vian telefonon. Se vi perdis viajn realirajn kodojn, vi povas rekrei ilin ĉi tie. Viaj malnovaj realiraj kodoj iĝos eksvalidaj.
     methods: Metodoj de dufaktora aŭtentigo
+    otp: Aŭtentigprogramaro
     recovery_codes: Realiraj kodoj
     recovery_codes_regenerated: Realiraj kodoj sukcese rekreitaj
     recovery_instructions_html: Se vi perdas aliron al via telefono, vi povas uzi unu el la subaj realiraj kodoj por rehavi aliron al via konto. <strong>Konservu realirajn kodojn sekure</strong>. Ekzemple, vi povas printi ilin kaj konservi ilin kun aliaj gravaj dokumentoj.
@@ -1218,8 +1577,11 @@ eo:
   user_mailer:
     appeal_approved:
       action: Iri al via konto
+      explanation: La apelacio de la admono kontra via konto je %{strike_date} pri sendodato %{appeal_date} aprobitas.
+      subject: Via apelacio de %{date} aprobitas
       title: Apelacio estis aprobita
     appeal_rejected:
+      explanation: La apelacio je %{strike_date} pri dato %{appeal_date} malakceptitas.
       subject: Via apelacio de %{date} estis malaprobita
       title: Apelacio estis malaprobita
     backup_ready:
@@ -1228,22 +1590,45 @@ eo:
       title: Arkiva elŝuto
     suspicious_sign_in:
       change_password: ŝanĝi vian pasvorton
+      details: 'Detaloj pri ensaluto:'
+      explanation: Ni detektas ensaluton al via konto de nova IP-adreso.
+      further_actions_html: Se ne estas vi, ni rekomendas ke vi %{action} tuj por sekurigi vian konton.
+      subject: Via konto aliritas de nova IP-adreso
+      title: Nova ensaluto
     warning:
+      appeal: Sendi apelacion
+      appeal_description: Se vi pensas ke ĉi tio estas eraro, vi povas sendi apelacion al la teamo de %{instance}.
       categories:
         spam: Spamo
+        violation: Enhavo malsekvas la komunumgvidilojn
+      explanation:
+        delete_statuses: Kelkaj viaj mesaĝoj trovitas malsekvi komunumgvidilojn kaj forigitas de kontrolantoj de %{instance}.
+        disable: Vi ne povas uzi vian konton plu sed via profilo kaj alia datumo restas bone.
+        mark_statuses_as_sensitive: Kelkaj viaj mesaĝoj markitas kiel sentemaj de kontrolantoj de %{instance}. Vi povas marki mem kiam mesaĝi dum la estonteco.
+        sensitive: Malantau ol nun, ĉiuj viaj alŝutitaj audovidaĵoj markitas kiel sentemaj kaj kaŝitas.
+        silence: Vi ankorau povas uzi vian konton sed nur personoj kiu jam sekvis vin vidos viaj mesaĝoj ĉe ĉi tiu servilo.
+        suspend: Vi ne povas uzi vian konton plu, kaj via profilo kaj aliaj datumoj ne estas disponeblaj plu.
       reason: 'Kialo:'
+      statuses: 'Mesaĝoj ripetitaj:'
       subject:
+        delete_statuses: Viaj mesaĝoj ĉe %{acct} forigitas
         disable: Via konto %{acct} estas frostigita
+        mark_statuses_as_sensitive: Viaj mesaĝoj ĉe %{acct} markitas kiel sentemaj
         none: Averto por %{acct}
-        silence: Via konto %{acct} estas limigita
+        sensitive: Viaj mesaĝoj ĉe %{acct} markitas kiel sentemaj malantau ol nun
+        silence: Oni limigis vian konton %{acct}
         suspend: Via konto %{acct} estas suspendita
       title:
+        delete_statuses: Afiŝoj forigitaj
         disable: Konto frostigita
+        mark_statuses_as_sensitive: Mesaĝoj markitaj kiel sentemaj
         none: Averto
+        sensitive: Konto markita kiel sentema
         silence: Konto limigita
         suspend: Konto suspendita
     welcome:
       edit_profile_action: Agordi profilon
+      edit_profile_step: Vi povas personecigi vian profilon per alŝuti profilbildon, ŝangi vian montronomo kaj pli.
       explanation: Jen kelkaj konsiloj por helpi vin komenci
       final_action: Ekmesaĝi
       final_step: 'Ekmesaĝu! Eĉ sen sekvantoj, viaj publikaj mesaĝoj povas esti vidataj de aliaj, ekzemple en la loka templinio aŭ per kradvortoj. Eble vi ŝatus prezenti vin per la kradvorto #introductions / #konigo.'
@@ -1263,10 +1648,17 @@ eo:
   webauthn_credentials:
     add: Aldoni novan sekurecan ŝlosilon
     create:
+      error: Havas problemon kiam aldoni vian sekurecŝlosilon.
       success: Via sekureca ŝlosilo estis sukcese aldonita.
     delete: Forigi
     delete_confirmation: Ĉu vi certas, ke vi volas forigi ĉi tiun sekurecan ŝlosilon?
+    description_html: Se vi ebligas <strong>sekurecŝlosilautentigo</strong>, ensaluto bezonas vin uzi tiojn.
     destroy:
+      error: Havas problemo kiam forigi vian sekurecŝlosilon.
       success: Via sekureca ŝlosilo estis sukcese forigita.
     invalid_credential: Nevalida sekureca ŝlosilo
+    nickname_hint: Enigu alinomon de via nova sekurecŝlosilo
+    not_enabled: Vu ne ebligas WebAuthn ĝis nun
+    not_supported: Ĉi tiu legilo ne povas uzi sekurecŝlosilojn
+    otp_required: Por uzi sekurecŝlosilojn, ebligu 2-faktoran autentigon unue.
     registered_on: Registrigita je %{date}
diff --git a/config/locales/es-AR.yml b/config/locales/es-AR.yml
index e0def87ca..0a322d112 100644
--- a/config/locales/es-AR.yml
+++ b/config/locales/es-AR.yml
@@ -373,6 +373,8 @@ es-AR:
       add_new: Permitir federación con el dominio
       created_msg: El dominio fue exitosamente permitido para la federación
       destroyed_msg: El dominio no fue permitido para la federación
+      export: Exportar
+      import: Importar
       undo: No permitir federación con el dominio
     domain_blocks:
       add_new: Agregar nuevo bloqueo de dominio
@@ -382,15 +384,19 @@ es-AR:
       edit: Editar bloqueo de dominio
       existing_domain_block: Ya impusiste límites más estrictos a %{name}.
       existing_domain_block_html: Ya le aplicaste límites más estrictos a %{name}, por lo que primero necesitás <a href="%{unblock_url}">desbloquearlo</a>.
+      export: Exportar
+      import: Importar
       new:
         create: Crear bloqueo
         hint: El bloqueo de dominio no va a prevenir la creación de mensajes de cuenta en la base de datos, pero se aplicarán métodos específicos de moderación en esas cuentas, retroactiva y automáticamente.
         severity:
-          desc_html: "<strong>Silenciar</strong> hará que los mensajes de la cuenta sean invisibles a quienes no estén siguiendo esa cuenta. <strong>Suspender</strong> quitará todo el contenido, archivos de medio y datos de perfil de la cuenta. Usá <strong>Ninguno</strong> si simplemente querés rechazar archivos de medios."
+          desc_html: "<strong>Limitar</strong> hará que los mensajes de cuentas en este dominio sean invisibles a quienes no las estén siguiendo. <strong>Suspender</strong> quitará todo el contenido, archivos de medio y datos de perfil de cuentas en este dominio de tu servidor. Usá <strong>Ninguno</strong> si simplemente querés rechazar archivos de medios."
           noop: Ninguno
-          silence: Silenciar
+          silence: Limitar
           suspend: Suspender
         title: Nuevo bloqueo de dominio
+      no_domain_block_selected: No se cambiaron bloques de dominio, ya que ninguno fue seleccionado
+      not_permitted: No tenés permiso para realizar esta acción
       obfuscate: Obfuscar nombre de dominio
       obfuscate_hint: Obfusca parcialmente el nombre de dominio en la lista, si el anuncio de la lista de limitaciones de dominio está habilitado
       private_comment: Comentario privado
@@ -422,6 +428,20 @@ es-AR:
       resolved_dns_records_hint_html: El nombre de dominio resuelve los siguientes dominios MX, los cuales son responsables en última instancia de aceptar el correo electrónico. Bloquear un dominio MX bloqueará los registros de cualquier dirección de correo electrónico que utilice el mismo dominio MX, incluso si el nombre de dominio visible es diferente. <strong>Tené cuidado de no bloquear los principales proveedores de correo electrónico.</strong>
       resolved_through_html: Resuelto a través de %{domain}
       title: Dominios bloqueados de correo electrónico
+    export_domain_allows:
+      new:
+        title: Importar permisos de dominio
+      no_file: No hay ningún archivo seleccionado
+    export_domain_blocks:
+      import:
+        description_html: Estás a punto de importar una lista de bloques de dominio. Por favor, revisá esta lista con mucho cuidado, especialmente si no creaste esta lista vos mismo.
+        existing_relationships_warning: Relaciones de seguimientos existentes
+        private_comment_description_html: 'Para ayudarte a rastrear de dónde vienen los bloques importados, se crearán los mismos con el siguiente comentario privado: <q>%{comment}</q>'
+        private_comment_template: Importado desde %{source} el %{date}
+        title: Importar bloques de dominio
+      new:
+        title: Importar bloques de dominio
+      no_file: No hay ningún archivo seleccionado
     follow_recommendations:
       description_html: "<strong>Las recomendaciones de cuentas para seguir ayudan a los nuevos usuarios a encontrar rápidamente contenido interesante</strong>. Cuando un usuario no ha interactuado con otros lo suficiente como para formar recomendaciones personalizadas de seguimiento, se recomiendan estas cuentas, en su lugar. Se recalculan diariamente a partir de una mezcla de cuentas con las interacciones más recientes y el mayor número de seguidores para un idioma determinado."
       language: Por idioma
@@ -914,7 +934,7 @@ es-AR:
     warning: Ojo con estos datos. ¡Nunca los compartas con nadie!
     your_token: Tu clave de acceso
   auth:
-    apply_for_account: Entrar en la lista de espera
+    apply_for_account: Solicitar una cuenta
     change_password: Contraseña
     delete_account: Eliminar cuenta
     delete_account_html: Si querés eliminar tu cuenta, podés <a href="%{path}">seguir por acá</a>. Se te va a pedir una confirmación.
@@ -1159,6 +1179,7 @@ es-AR:
     invalid_markup: 'contiene markup HTML no válido: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Archivo CSV no válido. Error: %{error}'
       over_rows_processing_limit: contiene más de %{count} filas
     modes:
       merge: Combinar
diff --git a/config/locales/es-MX.yml b/config/locales/es-MX.yml
index ab0d9be1d..51e361e2c 100644
--- a/config/locales/es-MX.yml
+++ b/config/locales/es-MX.yml
@@ -38,17 +38,17 @@ es-MX:
       avatar: Foto de perfil
       by_domain: Dominio
       change_email:
-        changed_msg: "¡Email cambiado con éxito!"
+        changed_msg: Correo cambiado exitosamente!
         current_email: Correo electrónico actual
         label: Cambiar el correo electrónico
         new_email: Nuevo correo electrónico
         submit: Cambiar el correo electrónico
         title: Cambiar el correo electrónico de %{username}
       change_role:
-        changed_msg: "¡Rol cambiado con éxito!"
-        label: Cambiar rol
+        changed_msg: Rol cambiado exitosamente!
+        label: Cambiar de rol
         no_role: Sin rol
-        title: Cambiar rol para %{username}
+        title: Cambiar el rol para %{username}
       confirm: Confirmar
       confirmed: Confirmado
       confirming: Confirmando
@@ -100,11 +100,11 @@ es-MX:
       most_recent_ip: IP más reciente
       no_account_selected: Ninguna cuenta se cambió como ninguna fue seleccionada
       no_limits_imposed: Sin límites impuestos
-      no_role_assigned: Ningún rol asignado
+      no_role_assigned: Sin rol asignado
       not_subscribed: No se está suscrito
       pending: Revisión pendiente
       perform_full_suspension: Suspender
-      previous_strikes: Amonestaciones anteriores
+      previous_strikes: Amonestaciones previas
       previous_strikes_description_html:
         one: Esta cuenta tiene <strong>una</strong> amonestación.
         other: Esta cuenta tiene <strong>%{count}</strong> amonestaciones.
@@ -151,7 +151,7 @@ es-MX:
       suspension_reversible_hint_html: La cuenta ha sido suspendida y los datos se eliminarán completamente el %{date}. Hasta entonces, la cuenta puede ser restaurada sin ningún efecto perjudicial. Si desea eliminar todos los datos de la cuenta inmediatamente, puede hacerlo a continuación.
       title: Cuentas
       unblock_email: Desbloquear dirección de correo
-      unblocked_email_msg: Se ha desbloqueado correctamente la dirección de correo de %{username}
+      unblocked_email_msg: Desbloqueo exitoso de la dirección de correo de %{username}
       unconfirmed_email: Correo electrónico sin confirmar
       undo_sensitized: Desmarcar como sensible
       undo_silenced: Des-silenciar
@@ -166,25 +166,25 @@ es-MX:
       whitelisted: Añadido a la lista blanca
     action_logs:
       action_types:
-        approve_appeal: Aprobar Apelación
+        approve_appeal: Aprobar apelación
         approve_user: Aprobar Usuario
         assigned_to_self_report: Asignar Reporte
         change_email_user: Cambiar Correo Electrónico del Usuario
-        change_role_user: Cambiar Rol de Usuario
+        change_role_user: Cambiar rol del usuario
         confirm_user: Confirmar Usuario
         create_account_warning: Crear Advertencia
         create_announcement: Crear Anuncio
-        create_canonical_email_block: Crear Bloqueo de Correo Electrónico
+        create_canonical_email_block: Crear Bloque de E-mail
         create_custom_emoji: Crear Emoji Personalizado
         create_domain_allow: Crear Permiso de Dominio
         create_domain_block: Crear Bloqueo de Dominio
         create_email_domain_block: Crear Bloqueo de Dominio de Correo Electrónico
         create_ip_block: Crear regla IP
         create_unavailable_domain: Crear Dominio No Disponible
-        create_user_role: Crear Rol
+        create_user_role: Crear rol
         demote_user: Degradar Usuario
         destroy_announcement: Eliminar Anuncio
-        destroy_canonical_email_block: Eliminar Bloqueo de Correo Electrónico
+        destroy_canonical_email_block: Eliminar Bloque de E-mail
         destroy_custom_emoji: Eliminar Emoji Personalizado
         destroy_domain_allow: Eliminar Permiso de Dominio
         destroy_domain_block: Eliminar Bloqueo de Dominio
@@ -196,7 +196,7 @@ es-MX:
         destroy_user_role: Destruir Rol
         disable_2fa_user: Deshabilitar 2FA
         disable_custom_emoji: Deshabilitar Emoji Personalizado
-        disable_sign_in_token_auth_user: Deshabilitar la Autenticación por Token de Correo Electrónico para el Usuario
+        disable_sign_in_token_auth_user: Desactivar la autenticación de token de correo electrónico para el usuario
         disable_user: Deshabilitar Usuario
         enable_custom_emoji: Habilitar Emoji Personalizado
         enable_sign_in_token_auth_user: Habilitar la Autenticación por Token de Correo Electrónico para el Usuario
@@ -373,6 +373,8 @@ es-MX:
       add_new: Añadir dominio a la lista blanca
       created_msg: Dominio añadido a la lista blanca con éxito
       destroyed_msg: Dominio quitado de la lista blanca con éxito
+      export: Exportar
+      import: Importar
       undo: Quitar de la lista blanca
     domain_blocks:
       add_new: Añadir nuevo
@@ -382,15 +384,19 @@ es-MX:
       edit: Editar nuevo dominio bloqueado
       existing_domain_block: Ya ha impuesto límites más estrictos a %{name}.
       existing_domain_block_html: Ya ha impuesto límites más estrictos a %{name}, necesita <a href="%{unblock_url}">desbloquearlo primero</a>.
+      export: Exportar
+      import: Importar
       new:
         create: Crear bloque
         hint: El bloque de dominio no prevendrá la creación de entradas de cuenta en la base de datos, pero aplicará retroactiva y automáticamente métodos de moderación específica en dichas cuentas.
         severity:
-          desc_html: "<strong>Silenciar</strong> hará los posts de la cuenta invisibles a cualquiera que no lo esté siguiendo. <strong>Suspender</strong> eliminará todo el contenido, media, y datos del perfil. Usa <strong>Ninguno</strong> si solo quieres rechazar archivos multimedia."
+          desc_html: "<strong>Limitar</strong> hará que las publicaciones de las cuentas de ese dominio sean invisibles para cualquiera que no las esté siguiendo. <strong>Suspender</strong> eliminará todo el contenido, archivos multimedia, y datos del perfil. Usa <strong>Ninguno</strong> si solo quieres rechazar archivos multimedia."
           noop: Ninguno
-          silence: Silenciar
+          silence: Limitar
           suspend: Suspender
         title: Nuevo bloque de dominio
+      no_domain_block_selected: No se cambió ningún bloqueo de dominio ya que ninguno fue seleccionado
+      not_permitted: No tienes permiso para realizar esta acción
       obfuscate: Ocultar nombre de dominio
       obfuscate_hint: Oculta parcialmente el nombre de dominio en la lista si mostrar la lista de limitaciones de dominio está habilitado
       private_comment: Comentario privado
@@ -422,6 +428,20 @@ es-MX:
       resolved_dns_records_hint_html: El nombre de dominio resuelve los siguientes dominios MX, los cuales son responsables en última instancia de aceptar el correo electrónico. Bloquear un dominio MX bloqueará los registros de cualquier dirección de correo electrónico que utilice el mismo dominio MX, incluso si el nombre de dominio visible es diferente. <strong>Tenga cuidado de no bloquear los principales proveedores de correo electrónico.</strong>
       resolved_through_html: Resuelto a través de %{domain}
       title: Lista negra de correo
+    export_domain_allows:
+      new:
+        title: Importar dominios permitidos
+      no_file: Ningún archivo seleccionado
+    export_domain_blocks:
+      import:
+        description_html: Estás a punto de importar una lista de bloqueos de dominio. Por favor, revisa esta lista con mucho cuidado, especialmente si no has creado esta lista tú mismo.
+        existing_relationships_warning: Relaciones de seguimiento existentes
+        private_comment_description_html: 'Para ayudarle a rastrear de dónde proceden los bloqueos importados, los bloqueos importados se crearán con el siguiente comentario privado: <q>%{comment}</q>'
+        private_comment_template: Importado desde %{source} el %{date}
+        title: Importar bloqueos de dominio
+      new:
+        title: Importar bloqueos de dominio
+      no_file: Ningún archivo seleccionado
     follow_recommendations:
       description_html: "<strong>Las recomendaciones de cuentas ayudan a los nuevos usuarios a encontrar rápidamente contenido interesante</strong>. Cuando un usuario no ha interactuado con otros lo suficiente como para suscitar recomendaciones personalizadas de cuentas a las que seguir, en su lugar se le recomiendan estas cuentas. Se recalculan diariamente a partir de una mezcla de cuentas con el mayor número de interacciones recientes y con el mayor número de seguidores locales con un idioma determinado."
       language: Para el idioma
@@ -608,6 +628,7 @@ es-MX:
         other: "%{count} usuarios"
       categories:
         administration: Administración
+        devops: DevOps
         invites: Invitaciones
         moderation: Moderación
         special: Especial
@@ -658,6 +679,7 @@ es-MX:
         view_audit_log_description: Permite a los usuarios ver un historial de acciones administrativas en el servidor
         view_dashboard: Ver Panel de Control
         view_dashboard_description: Permite a los usuarios acceder al panel de control y varias métricas
+        view_devops: DevOps
         view_devops_description: Permite a los usuarios acceder a los paneles de control Sidekiq y pgHero
       title: Roles
     rules:
@@ -912,7 +934,7 @@ es-MX:
     warning: Ten mucho cuidado con estos datos. ¡No los compartas con nadie!
     your_token: Tu token de acceso
   auth:
-    apply_for_account: Entrar en la lista de espera
+    apply_for_account: Solicitar una cuenta
     change_password: Contraseña
     delete_account: Borrar cuenta
     delete_account_html: Si desea eliminar su cuenta, puede <a href="%{path}">proceder aquí</a>. Será pedido de una confirmación.
@@ -1157,6 +1179,7 @@ es-MX:
     invalid_markup: 'contiene código HTML no válido: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Archivo CSV no válido. Error: %{error}'
       over_rows_processing_limit: contiene más de %{count} filas
     modes:
       merge: Unir
@@ -1371,6 +1394,7 @@ es-MX:
     browser: Navegador
     browsers:
       alipay: Alipay
+      blackberry: BlackBerry
       chrome: Chrome
       edge: Microsoft Edge
       electron: Electron
@@ -1384,6 +1408,7 @@ es-MX:
       phantom_js: PhantomJS
       qq: Navegador QQ
       safari: Safari
+      uc_browser: Navegador UC
       weibo: Weibo
     current_session: Sesión actual
     description: "%{browser} en %{platform}"
@@ -1392,6 +1417,8 @@ es-MX:
     platforms:
       adobe_air: Adobe Air
       android: Android
+      blackberry: BlackBerry
+      chrome_os: ChromeOS
       firefox_os: Firefox OS
       ios: iOS
       linux: GNU Linux
diff --git a/config/locales/es.yml b/config/locales/es.yml
index 94478df9b..622560210 100644
--- a/config/locales/es.yml
+++ b/config/locales/es.yml
@@ -373,24 +373,30 @@ es:
       add_new: Añadir dominio a la lista blanca
       created_msg: Dominio añadido a la lista blanca con éxito
       destroyed_msg: Dominio quitado de la lista blanca con éxito
+      export: Exportar
+      import: Importar
       undo: Quitar de la lista blanca
     domain_blocks:
       add_new: Añadir nuevo
-      created_msg: El bloque de dominio está siendo procesado
-      destroyed_msg: El bloque de dominio se deshizo
+      created_msg: El bloqueo del dominio está siendo procesado
+      destroyed_msg: El bloqueo del dominio se deshizo
       domain: Dominio
-      edit: Editar nuevo dominio bloqueado
+      edit: Editar bloqueo de dominio
       existing_domain_block: Ya impusiste límites más estrictos a %{name}.
       existing_domain_block_html: Ya ha impuesto límites más estrictos a %{name}, necesita <a href="%{unblock_url}">desbloquearlo primero</a>.
+      export: Exportar
+      import: Importar
       new:
-        create: Crear bloque
-        hint: El bloque de dominio no prevendrá la creación de entradas de cuenta en la base de datos, pero aplicará retroactiva y automáticamente métodos de moderación específica en dichas cuentas.
+        create: Crear bloqueo
+        hint: El bloqueo de dominio no prevendrá la creación de entradas de cuenta en la base de datos, pero aplicará retroactiva y automáticamente métodos de moderación específica en dichas cuentas.
         severity:
-          desc_html: "<strong>Silenciar</strong> hará los posts de la cuenta invisibles a cualquiera que no lo esté siguiendo. <strong>Suspender</strong> eliminará todo el contenido, media, y datos del perfil. Usa <strong>Ninguno</strong> si solo quieres rechazar archivos multimedia."
+          desc_html: "<strong>Limitar</strong> hará que las publicaciones de las cuentas de ese dominio sean invisibles para cualquiera que no las esté siguiendo. <strong>Suspender</strong> eliminará todo el contenido, archivos multimedia, y datos del perfil. Usa <strong>Ninguno</strong> si solo quieres rechazar archivos multimedia."
           noop: Ninguno
-          silence: Silenciar
+          silence: Limitar
           suspend: Suspender
-        title: Nuevo bloque de dominio
+        title: Nuevo bloqueo de dominio
+      no_domain_block_selected: No se cambió ningún bloqueo de dominio ya que ninguno fue seleccionado
+      not_permitted: No tienes permiso para realizar esta acción
       obfuscate: Ocultar nombre de dominio
       obfuscate_hint: Oculta parcialmente el nombre de dominio en la lista si mostrar la lista de limitaciones de dominio está habilitado
       private_comment: Comentario privado
@@ -422,6 +428,20 @@ es:
       resolved_dns_records_hint_html: El nombre de dominio resuelve los siguientes dominios MX, los cuales son responsables en última instancia de aceptar el correo electrónico. Bloquear un dominio MX bloqueará los registros de cualquier dirección de correo electrónico que utilice el mismo dominio MX, incluso si el nombre de dominio visible es diferente. <strong>Tenga cuidado de no bloquear los principales proveedores de correo electrónico.</strong>
       resolved_through_html: Resuelto a través de %{domain}
       title: Lista negra de correo
+    export_domain_allows:
+      new:
+        title: Importar dominios permitidos
+      no_file: Ningún archivo seleccionado
+    export_domain_blocks:
+      import:
+        description_html: Estás a punto de importar una lista de bloqueos de dominio. Por favor, revisa esta lista con mucho cuidado, especialmente si no has creado esta lista tú mismo.
+        existing_relationships_warning: Relaciones de seguimiento existentes
+        private_comment_description_html: 'Para ayudarle a rastrear de dónde proceden los bloqueos importados, los bloqueos importados se crearán con el siguiente comentario privado: <q>%{comment}</q>'
+        private_comment_template: Importado desde %{source} el %{date}
+        title: Importar bloqueos de dominio
+      new:
+        title: Importar bloqueos de dominio
+      no_file: Ningún archivo seleccionado
     follow_recommendations:
       description_html: "<strong>Las recomendaciones de cuentas ayudan a los nuevos usuarios a encontrar rápidamente contenido interesante</strong>. Cuando un usuario no ha interactuado con otros lo suficiente como para suscitar recomendaciones personalizadas de cuentas a las que seguir, en su lugar se le recomiendan estas cuentas. Se recalculan diariamente a partir de una mezcla de cuentas con el mayor número de interacciones recientes y con el mayor número de seguidores locales con un idioma determinado."
       language: Para el idioma
@@ -608,6 +628,7 @@ es:
         other: "%{count} usuarios"
       categories:
         administration: Administración
+        devops: DevOps
         invites: Invitaciones
         moderation: Moderación
         special: Especial
@@ -658,6 +679,7 @@ es:
         view_audit_log_description: Permite a los usuarios ver un historial de acciones administrativas en el servidor
         view_dashboard: Ver Panel de Control
         view_dashboard_description: Permite a los usuarios acceder al panel de control y varias métricas
+        view_devops: DevOps
         view_devops_description: Permite a los usuarios acceder a los paneles de control Sidekiq y pgHero
       title: Roles
     rules:
@@ -912,7 +934,7 @@ es:
     warning: Ten mucho cuidado con estos datos. ¡No los compartas con nadie!
     your_token: Tu token de acceso
   auth:
-    apply_for_account: Entrar en la lista de espera
+    apply_for_account: Solicitar una cuenta
     change_password: Contraseña
     delete_account: Borrar cuenta
     delete_account_html: Si desea eliminar su cuenta, puede <a href="%{path}">proceder aquí</a>. Será pedido de una confirmación.
@@ -1157,6 +1179,7 @@ es:
     invalid_markup: 'contiene código HTML no válido: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Archivo CSV no válido. Error: %{error}'
       over_rows_processing_limit: contiene más de %{count} filas
     modes:
       merge: Unir
@@ -1371,6 +1394,7 @@ es:
     browser: Navegador
     browsers:
       alipay: Alipay
+      blackberry: BlackBerry
       chrome: Chrome
       edge: Microsoft Edge
       electron: Electron
@@ -1384,6 +1408,7 @@ es:
       phantom_js: PhantomJS
       qq: Navegador QQ
       safari: Safari
+      uc_browser: Navegador UC
       weibo: Weibo
     current_session: Sesión actual
     description: "%{browser} en %{platform}"
@@ -1392,6 +1417,8 @@ es:
     platforms:
       adobe_air: Adobe Air
       android: Android
+      blackberry: BlackBerry
+      chrome_os: ChromeOS
       firefox_os: Firefox OS
       ios: iOS
       linux: GNU Linux
diff --git a/config/locales/et.yml b/config/locales/et.yml
index 10f7b67ca..abd1bdd71 100644
--- a/config/locales/et.yml
+++ b/config/locales/et.yml
@@ -5,17 +5,19 @@ et:
     contact_missing: Määramata
     contact_unavailable: Pole saadaval
     hosted_on: Mastodon majutatud %{domain}-is
+    title: Teave
   accounts:
     follow: Jälgi
     followers:
       one: Jälgija
       other: Jälgijaid
     following: Jälgib
+    instance_actor_flash: See on virtuaalne konto esindamaks serverit ennast ja mitte ühtegi kasutajad. Seda kasutatakse föderatsiooni eesmärgil ja seda ei tohi kustutada.
     last_active: viimati aktiivne
     link_verified_on: Selle lingi autorsust kontrolliti %{date}
     nothing_here: Siin pole midagi!
     pin_errors:
-      following: Te peate juba olema selle kasutaja jälgija, keda te heaks kiidate
+      following: Te peate juba olema selle kasutaja jälgija, keda te soovitate
     posts:
       one: Postitus
       other: Postitused
@@ -31,35 +33,50 @@ et:
     accounts:
       add_email_domain_block: Keela e-posti domeen
       approve: Kinnita
+      approved_msg: Kasutaja %{username} liitumisavaldus rahuldatud
       are_you_sure: Olete kindel?
       avatar: Profiilipilt
       by_domain: Domeen
       change_email:
+        changed_msg: E-postiaadress vahetatud!
         current_email: Praegune e-postiaadress
         label: Muuda e-posti aadressi
         new_email: Uus е-posti aadress
         submit: Muuda e-posti aadressi
         title: Muuda e-postiaadressi kasutajale %{username}
+      change_role:
+        changed_msg: Roll on muudetud!
+        label: Muuda rolli
+        no_role: Roll puudub
+        title: "%{username} rolli muutmine"
       confirm: Kinnita
       confirmed: Kinnitatud
       confirming: Kinnitamine
+      custom: Kohandatud
+      delete: Kustuta andmed
       deleted: Kustutatud
       demote: Alanda
+      destroyed_msg: "%{username} andmed on nüüd lõpliku kustutamise ootel"
       disable: Keela
+      disable_sign_in_token_auth: Keela e-posti võtmetega autentimine
       disable_two_factor_authentication: Keela 2FA
       disabled: Keelatud
       display_name: Kuvanimi
       domain: Domeen
-      edit: Redigeeri
+      edit: Muuda
       email: E-post
       email_status: E-posti staatus
       enable: Luba
+      enable_sign_in_token_auth: Luba e-posti võtmetega autentimine
       enabled: Lubatud
+      enabled_msg: Kasutaja %{username} konto taastatud
       followers: Jälgijad
       follows: Jälgib
       header: Päis
       inbox_url: Sisendkausta URL
+      invite_request_text: Põhjendused liitumiseks
       invited_by: Kutsuja
+      ip: IP
       joined: Liitus
       location:
         all: Kõik
@@ -68,39 +85,57 @@ et:
         title: Asukoht
       login_status: Sisselogimise olek
       media_attachments: Lisatud meedia
-      memorialize: Tee memoriaaliks
+      memorialize: Igaveseks lahkunud
+      memorialized: Igaveselt lahkunuks märgitud
+      memorialized_msg: "%{username} on märgitud igavaselt lahkunuks"
       moderation:
         active: Aktiivne
         all: Kõik
         pending: Ootel
-        suspended: Peatatud
+        silenced: Vaigistatud
+        suspended: Kustutatud
         title: Moderatsioon
       moderation_notes: Moderatsiooniteated
       most_recent_activity: Kõige hiljutisem aktiivsus
       most_recent_ip: Kõige hiljutisem IP
       no_account_selected: Mitte ühtegi kontot muudeti sest midagi polnud valitud
       no_limits_imposed: Mitte ühtegi limiiti kehtestatud
+      no_role_assigned: Ühtegi rolli pole määratud
       not_subscribed: Ei ole tellitud
       pending: Ootab ülevaatamist
-      perform_full_suspension: Peata
+      perform_full_suspension: Kustuta
+      previous_strikes: Eelnevad juhtumid
+      previous_strikes_description_html:
+        one: Sel kontol on <strong>üks</strong> juhtum.
+        other: Sel kontol on <strong>%{count}</strong> juhtumit.
       promote: Edenda
       protocol: Protokoll
       public: Avalik
       push_subscription_expires: PuSH tellimus aegub
       redownload: Värskenda profiili
+      redownloaded_msg: "%{username} kasutajakonto algallikast värskendatud"
       reject: Hülga
+      rejected_msg: "%{username} liitumisavaldus tagasi lükatud"
       remove_avatar: Kustuta profiilipilt
       remove_header: Kustuta päis
+      removed_avatar_msg: "%{username} tunnuspilt eemaldatud"
+      removed_header_msg: "%{username} päisepilt eemaldatud"
       resend_confirmation:
         already_confirmed: See kasutaja on juba kinnitatud
         send: Saada kinnituskiri uuesti
         success: Kinnituskiri saadetud edukalt!
       reset: Lähtesta
-      reset_password: Lähtesta salasõna
+      reset_password: Salasõna lähtestamine
       resubscribe: Telli taas
+      role: Roll
       search: Otsi
       search_same_email_domain: Muud kasutajad sama e-posti domeeniga
       search_same_ip: Teised kasutajad, kellel on sama IP
+      security_measures:
+        only_password: Ainult salasõna
+        password_and_2fa: Salasõna ja 2-etapine autentimine (2FA)
+      sensitive: Tundlik sisu
+      sensitized: Märgitud kui tundlik sisu
       shared_inbox_url: Jagatud sisendkausta URL
       show:
         created_reports: Loodud teated
@@ -108,54 +143,115 @@ et:
       silence: Vaigista
       silenced: Vaigistatud
       statuses: Staatuseid
+      strikes: Eelnevad juhtumid
       subscribe: Telli
-      suspended: Peatatud
+      suspend: Kustuta
+      suspended: Kustuta
+      suspension_irreversible: Selle konto andmed on taastamatult kustutatud. Konto taastamisel on see taas kasutatav, aga eelmisi andmeid pole võimalik taastada.
+      suspension_reversible_hint_html: Konto on lukustatud ja andmed kustutatakse täielikult %{date}. Seni on võimalik kontot täielikult taastada. Soovi korral on võimalik allpool kõik konto andmed kustutada koheselt.
       title: Kontod
+      unblock_email: Luba e-postiaadress
+      unblocked_email_msg: Kasutaja %{username} e-postiaadress lubatud
       unconfirmed_email: Kinnitamata e-post
+      undo_sensitized: Eemalda tundliku sisu märge
       undo_silenced: Võta vaigistus tagasi
       undo_suspension: Võta peatamine tagasi
+      unsilenced_msg: Konto %{username} piirangud emaldatud
       unsubscribe: Tühista tellimus
+      unsuspended_msg: Kasutaja %{username} konto taastatud
       username: Kasutajanimi
+      view_domain: Vaata domeeni kokkuvõtet
       warn: Hoiata
       web: Veeb
       whitelisted: Lubatud
     action_logs:
       action_types:
+        approve_appeal: Rahulda vaidlustus
+        approve_user: Kinnita kasutaja
         assigned_to_self_report: Määras Teavituse
         change_email_user: Kasutaja muutis e-postiaadressit
+        change_role_user: Muuda kasutaja rolli
         confirm_user: Kasutaja kinnitatud
         create_account_warning: Lisas hoiatuse
         create_announcement: Lisas teadaande
+        create_canonical_email_block: E-posti blokeeringu lisamine
         create_custom_emoji: Lisas kohandatud emotikoni
         create_domain_allow: Lisas lubatud domeeni
         create_domain_block: Lisas domeeniblokeeringu
         create_email_domain_block: Lisas e-posti domeeni blokeeringu
+        create_ip_block: IP-reegli lisamine
+        create_unavailable_domain: Kättesaamatu domeeni lisamine
+        create_user_role: Loo roll
         demote_user: Alandas kasutaja
         destroy_announcement: Eemaldas teadaande
+        destroy_canonical_email_block: E-posti blokeeringu kustutamine
         destroy_custom_emoji: Eemaldas kohandatud emotikoni
         destroy_domain_allow: Eemaldas lubatud domeeni
         destroy_domain_block: Eemaldas domeeniblokeeringu
         destroy_email_domain_block: Eemaldas e-posti domeeni blokeeringu
+        destroy_instance: Domeeni kustutamine
+        destroy_ip_block: IP-reegli kustutamine
         destroy_status: Eemaldas staatuse
-        disable_2fa_user: Keelas 2FA
+        destroy_unavailable_domain: Kättesaamatu domeeni kustutamine
+        destroy_user_role: Rolli kustutamine
+        disable_2fa_user: Keela 2FA
         disable_custom_emoji: Keelas kohandatud emotikoni
+        disable_sign_in_token_auth_user: E-posti võtmega autentimise keelamine
         disable_user: Keelas kasutaja
         enable_custom_emoji: Lubas kohandatud emotikoni
+        enable_sign_in_token_auth_user: E-posti võtmega autentimise lubamine
         enable_user: Lubas kasutaja
-        memorialize_account: Tegi kontole memoriaali
+        memorialize_account: Igaveselt lahkunuks märkimine
         promote_user: Edendas kasutaja
+        reject_appeal: Lükka vaidlustus tagasi
+        reject_user: Kasutaja tagasilükkamine
         remove_avatar_user: Kustutas profiilipildi
         reopen_report: Taasavas teavituse
-        reset_password_user: Lähtestas salasõna
+        resend_user: Saada kinnituskiri uuesti
+        reset_password_user: Salasõna lähtestamine
         resolve_report: Lahendas teadaande
+        sensitive_account: Tundliku sisuga konto
         silence_account: Vaigistas konto
-        suspend_account: Peatas konto
+        suspend_account: Konto kustutamine
         unassigned_report: Määras teavituse maha
+        unblock_email_account: Luba e-postiaadress
+        unsensitive_account: Pole tundliku sisuga konto
         unsilence_account: Konto vaigistus eemaldati
-        unsuspend_account: Konto peatamine lõpetati
+        unsuspend_account: Konto taastamine
         update_announcement: Uuenda teadaannet
         update_custom_emoji: Uuendas kohandatud emotikoni
+        update_domain_block: Uuenda domeenipiirangut
+        update_ip_block: IP-reegli uuendamine
         update_status: Uuendas staatust
+        update_user_role: Uuenda rolli
+      actions:
+        approve_appeal_html: "%{name} kiitis heaks modereerimise otsuse vaidlustuse %{target} poolt"
+        approve_user_html: "%{name} kiitis heaks registreerimise %{target} poolt"
+        create_canonical_email_block_html: "%{name} keelas e-postiaadressi räsiga %{target}"
+        create_domain_block_html: "%{name} keelas domeeni %{target}"
+        create_email_domain_block_html: "%{name} keelas e-posti domeeni %{target}"
+        create_ip_block_html: "%{name} lõi IP-aadressile %{target} reegli"
+        demote_user_html: "%{name} alandas kasutajat %{target}"
+        destroy_canonical_email_block_html: "%{name} lubas e-postiaaadressi räsiga %{target}"
+        destroy_domain_block_html: "%{name} lubas domeeni %{target}"
+        destroy_email_domain_block_html: "%{name} lubas e-posti domeeni %{target}"
+        destroy_ip_block_html: "%{name} kustutas IP-aadressi %{target} reegli"
+        disable_2fa_user_html: "%{name} eemaldas kasutaja %{target} kahe etapise nõude"
+        disable_custom_emoji_html: "%{name} keelas emotikooni %{target}"
+        disable_sign_in_token_auth_user_html: "%{name} keelas kasutajal %{target} e-posti võtmega autentida"
+        enable_custom_emoji_html: "%{name} lubas emotikooni %{target}"
+        enable_sign_in_token_auth_user_html: "%{name} lubas kasutajal %{target} e-posti võtmega autentida"
+        memorialize_account_html: "%{name} märkis %{target} igaveselt lahkunuks"
+        promote_user_html: "%{name} ülendas kasutajat %{target}"
+        reset_password_user_html: "%{name} lähtestas %{target} salasõna"
+        sensitive_account_html: "%{name} märkis %{target} meedia kui tundlik sisu"
+        suspend_account_html: "%{name} kustutas %{target} konto"
+        unblock_email_account_html: "%{name} lubas %{target} e-postiaadressi"
+        unsensitive_account_html: "%{name} eemaldas %{target} meedia tundliku sisu märke"
+        unsuspend_account_html: "%{name} taastas %{target} konto"
+        update_domain_block_html: "%{name} uuendas domeeni %{target} keeldu"
+        update_ip_block_html: "%{name} muutis IP-aadressi %{target} reeglit"
+      deleted_account: kustutatud konto
       empty: Logisi ei leitud.
       filter_by_action: Filtreeri tegevuse järgi
       filter_by_user: Filtreeri kasutaja järgi
@@ -169,10 +265,12 @@ et:
       new:
         create: Loo teadaanne
         title: Uus teadaanne
+      publish: Avalda
       published_msg: Teadaande avaldamine õnnestus!
       scheduled_for: Kavandatud ajaks %{time}
       scheduled_msg: Teadaanne kavandatud avaldamiseks!
       title: Teadaanded
+      unpublish: Tühista avaldamine
       unpublished_msg: Teadaande eemaldamine avalikkusest õnnestus!
       updated_msg: Teadaande uuendamine õnnestus!
     custom_emojis:
@@ -192,6 +290,7 @@ et:
       enable: Luba
       enabled: Lubatud
       enabled_msg: Selle emotikoni lubamine õnnestus
+      image_hint: PNG või GIF suurusega kuni %{size}
       list: Loend
       listed: Nimekirjastatud
       new:
@@ -208,33 +307,53 @@ et:
       updated_msg: Emotikoni uuendamine õnnestus!
       upload: Lae üles
     dashboard:
+      active_users: aktiivsed kasutajad
+      interactions: interaktsioonid
+      new_users: uued kasutajad
+      pending_appeals_html:
+        one: "<strong>%{count}</strong> ootel vaidlustus"
+        other: "<strong>%{count}</strong> ootel vaidlustust"
+      pending_tags_html:
+        one: "<strong>%{count}</strong> ootel silt"
+        other: "<strong>%{count}</strong> ootel silti"
       software: Tarkvara
       space: Kettakasutus
       title: Töölaud
+      website: Veebileht
+    disputes:
+      appeals:
+        empty: Vaidlustusi pole.
+        title: Vaidlustused
     domain_allows:
       add_new: Luba domeen
       created_msg: Domeeni lubamine õnnestus
       destroyed_msg: Domeen eemaldati lubatute nimekirjast
+      export: Eksport
+      import: Import
       undo: Eemalda lubatute nimekirjast
     domain_blocks:
       add_new: Lisa uus domeeniblokeering
       created_msg: Domeeni blokeeringut töödeldakse
       destroyed_msg: Domeeniblokeering on tagasi võetud
       domain: Domeen
-      edit: Redigeeri domeeniblokeeringut
+      edit: Muuda domeeniblokeeringut
+      existing_domain_block: Kasutajale %{name} on juba karmimad piirangud kehtestatud.
       existing_domain_block_html: Te olete juba lisanud domeenile %{name} piiranguid, palun <a href="%{unblock_url}">eemaldage blokeering</a> enne jätkamist.
+      export: Eksport
+      import: Import
       new:
         create: Loo blokeering
         hint: Domeeniblokeering ei takista kontode lisamist andmebaasi, aga lisab nendele kontodele tagasiulatuvalt ja automaatselt erinevaid moderatsioonimeetodeid.
         severity:
-          desc_html: |-
-            <strong>Vaigista</strong> teeb konto postitused nähtamatuks kõigile, kes teda ei jälgi.
-            <strong>Peata</strong> eemaldab kogu konto sisu, meedia ja profiiliandmed.
-            <strong>Ei midagi</strong> kui Te soovite lihtsalt keelata meediafailid.
+          desc_html: "<strong>Piira</strong> muudab domeeni kasutajate postitused mittejälgijatele nähtamatuks.<strong>Kustuta</strong> eemaldab serverist kõik selle domeeni kontode sisu, meedia ja kasutajaandmed. <strong>Ei midagi</strong> lihtsalt lükkab meediafailid tagasi."
           noop: Ei midagi
-          silence: Vaigista
-          suspend: Peata
+          silence: Piira
+          suspend: Kustuta
         title: Uus domeeniblokeering
+      no_domain_block_selected: Ühtegi domeeni keeldu ei muudetud, kuna midagi polnud valitud
+      not_permitted: Puudub õigus seda teha
+      obfuscate: Domeeninime varjamine
+      obfuscate_hint: Varja osaliselt domeeni nimi nimekirjas, kui domeenipiirangute nimistu avaldamine on sisse lülitatud
       private_comment: Privaatne kommentaar
       private_comment_hint: Kommenteeri selle domeeni limiteerimise kohta moderaatoritele.
       public_comment: Avalik kommentaar
@@ -247,15 +366,52 @@ et:
       view: Vaata domeeniblokeeringut
     email_domain_blocks:
       add_new: Lisa uus
+      attempts_over_week:
+        one: "%{count} katse viimase nädala kestel"
+        other: "%{count} liitumiskatset viimase nädala kestel"
       created_msg: E-posti aadressi keelunimekirja lisamine õnnestus
       delete: Kustuta
+      dns:
+        types:
+          mx: MX-kirje
       domain: Domeen
       new:
         create: Lisa domeen
+        resolve: Domeeni lahendamine
         title: Uus e-posti keelunimekirja sisend
+      no_email_domain_block_selected: Ühtegi e-posti domeeni keeldu ei muudetud, kuna midagi polnud valitud
+      resolved_dns_records_hint_html: Domeeninimi lahendub järgnevateks MX-domeenideks, mis vastutavad e-kirjade vastuvõtmise eest. MX-domeeni blokeerimine blokeerib liitumistaotlused kõigilt e-postiaadressidelt, mis kasutavad sama MX-domeeni, kuigi kasutatav domeeninimi on erinev. <strong>Ole tähelepanelik, et mitte blokeerida suuremaid e-postiteenuse pakkujaid.</strong>
+      resolved_through_html: Lahendatud %{domain} kaudu
       title: E-posti keelunimekiri
+    export_domain_allows:
+      no_file: Faili pole valitud
+    export_domain_blocks:
+      import:
+        description_html: Oled importimas domeenide keelde. Vaata see nimekiri hoolega läbi, eriti, kui pole seda ise koostanud.
+        existing_relationships_warning: Olemasolevad jälgimissuhted
+        private_comment_description_html: 'Pidamaks järge, kust imporditud keelud pärinevad, luuakse need järneva privaatse kommentaariga: <q>%{comment}</q>'
+        private_comment_template: Imporditud allikast %{source} kuupäeval %{date}
+        title: Domeenikeeldude import
+      new:
+        title: Domeenikeeldude import
+      no_file: Faili pole valitud
+    follow_recommendations:
+      language: Keel
+      status: Staatus
     instances:
+      availability:
+        title: Saadavus
+      back_to_all: Kõik
+      back_to_warning: Hoiatus
       by_domain: Domeen
+      content_policies:
+        policies:
+          suspend: Kustuta
+      dashboard:
+        instance_languages_dimension: Top keeled
+      delivery:
+        all: Kõik
+        unavailable: Pole saadaval
       delivery_available: Üleandmine on saadaval
       moderation:
         all: Kõik
@@ -263,6 +419,7 @@ et:
         title: Moderatsioon
       private_comment: Privaatne kommentaar
       public_comment: Avalik kommentaar
+      purge: Kustuta
       title: Föderatsioon
       total_blocked_by_us: Meie poolt blokeeritud
       total_followed_by_them: Nende poolt jälgitud
@@ -275,7 +432,23 @@ et:
         all: Kõik
         available: Saadaval
         expired: Aegunud
+        title: Filter
       title: Kutsed
+    ip_blocks:
+      add_new: Loo reegel
+      created_msg: IP-aadressi põhine reegel lisatud
+      delete: Kustuta
+      expires_in:
+        '1209600': 2 nädalat
+        '15778476': 6 kuud
+        '2629746': 1 kuu
+        '31556952': 1 aasta
+        '86400': 1 päev
+        '94670856': 3 aastat
+      new:
+        title: Uue IP-reegli lisamine
+      no_ip_block_selected: Ühtegi IP-reeglit ei muudetud, kuna midagi polnud valitud
+      title: IP-reeglid
     relationships:
       title: "%{acct}-i suhted"
     relays:
@@ -302,34 +475,117 @@ et:
         notes:
           one: "%{count} märkus"
           other: "%{count} märkust"
+      action_log: Auditilogi
       action_taken_by: Meetmeid kasutanud
+      actions:
+        delete_description_html: Raporteeritud postitused kustutatakse ja juhtum talletatakse hoiatusena tulevaste eksimuste ärahoidmiseks.
+        mark_as_sensitive_description_html: Raporteeritud meedia märgitakse kui tundlik sisu ja juhtum talletatakse hoiatusena tulevaste eksimuste ärahoidmiseks.
+        resolve_description_html: Raporteeritud konto suhtes ei võeta midagi ette, juhtumit ei registreerita ja raport suletakse.
+        suspend_description_html: Konto ja kogu sisu muutub lõpliku kustutamiseni kättesaamatuks. Kontoga suhtlemine pole võimalik. Tagasivõetav 30 päeva jooksul.
+      actions_description_html: Otsustus, mida raporti lahendamiseks ette võtta. Karistava tegevuse korral saadetakse e-postiga teade, välja arvatud kategooria <strong>rämpspost</strong> puhul.
       are_you_sure: Olete kindel?
       assign_to_self: Määra mulle
       assigned: Määratud moderaator
       by_target_domain: Teavitatud konto domeen
+      category: Kategooria
       comment:
         none: Pole
       created_at: Teavitatud
+      forwarded: Edastatud
       mark_as_resolved: Märgi lahendatuks
+      mark_as_sensitive: Märgi kui tundlik sisu
       mark_as_unresolved: Märgi lahendamata
+      no_one_assigned: Eikeegi
       notes:
         create: Lisa märkus
         create_and_resolve: Lahenda märkusega
         create_and_unresolve: Taasava märkusega
         delete: Kustuta
         placeholder: Kirjelda, mis on ette võetud või muid seotud uuendusi...
+        title: Märkmed
+      quick_actions_description_html: 'Võimalus teha kiire otsus või näha raporteeritud sisu allpool:'
       reopen: Taasava teavitus
       report: 'Teavitus #%{id}'
       reported_account: Teavitatud kontost
       reported_by: Teavitatud
       resolved: Lahendatud
       resolved_msg: Teavituse lahendamine õnnestus!
+      skip_to_actions: Otsuste juurde
       status: Staatus
       title: Teavitused
       unassign: Eemalda määramine
       unresolved: Lahendamata
       updated_at: Uuendatud
+      view_profile: Vaata profiili
+    roles:
+      add_new: Lisa roll
+      assigned_users:
+        one: "%{count} kasutaja"
+        other: "%{count} kasutajat"
+      categories:
+        devops: DevOps
+        moderation: Modereerimine
+      delete: Kustuta
+      permissions_count:
+        one: "%{count} õigus"
+        other: "%{count} õigused"
+      privileges:
+        administrator: Administraator
+        delete_user_data: Kustuta kasutaja andmed
+        delete_user_data_description: Lubab kasutajatel kustutada teiste kasutajate andmeid viiteta
+        invite_users: Kutsu kasutajaid
+        invite_users_description: Lubab kasutajatel serverisse uusi inimesi kutsuda
+        manage_announcements: Halda teadaandeid
+        manage_announcements_description: Lubab kasutajatel hallata serveri teadaandeid
+        manage_appeals: Vaidlustuste haldamine
+        manage_appeals_description: Lubab kasutajail läbi vaadata modereerimisotsuste vaidlustusi
+        manage_blocks: Keeldude haldamine
+        manage_blocks_description: Lubab kasutajatel keelata e-postiteenuse pakkujaid ja IP-aadresse
+        manage_custom_emojis: Halda isetehtud emotikone
+        manage_custom_emojis_description: Lubab kasutajatel hallata serveris isetehtud emotikone
+        manage_federation: Halda föderatsiooni
+        manage_federation_description: Lubab kasutajail keelata või lubada föderatsioone teiste domeenidega ja hallata ühenduvust
+        manage_invites: Halda kutseid
+        manage_invites_description: Lubab kasutajatel kutseid lehitseda ja sulgeda
+        manage_reports: Halda raporteid
+        manage_reports_description: Lubab kasutajail läbi vaadata ja viia läbi modereerimisotsuseid
+        manage_roles: Rollide haldamine
+        manage_roles_description: Lubab kasutajatel hallata ja määrata endast madalamaid rolle
+        manage_rules: Reeglite haldamine
+        manage_rules_description: Lubab kasutajatel muuta serveri reegleid
+        manage_settings: Halda sätteid
+        manage_settings_description: Lubab kasutajatel muute lehekülje sätteid
+        manage_taxonomies: Halda taksonoomiaid
+        manage_taxonomies_description: Luba kasutajatel populaarset sisu üle vaadata ning uuendada siltide sätteid
+        manage_user_access: Halda kasutaja ligipääsu
+        manage_user_access_description: Lubab kasutajail eemaldada teiste kahe-etapise autentimise nõude, muuta nende e-postiaadresse ja lähtestada salasõnu
+        manage_users: Kasutajate haldamine
+        manage_users_description: Lubab kasutajail näha teiste kasutajate detailandmeid ja teha modereerimisotsuseid
+        manage_webhooks: Halda webhook'e
+        manage_webhooks_description: Lubab kasutajatel administratiivseteks sündmusteks webhook'e seadistada
+        view_audit_log_description: Lubab kasutajail näha serveri administratiivsete otsuste ajalugu
+        view_devops: DevOps
+      title: Rollid
+    rules:
+      add_new: Lisa reegel
+      delete: Kustuta
+      edit: Reegli muutmine
+      title: Serveri reeglid
     settings:
+      about:
+        title: Teave
+      appearance:
+        title: Välimus
+      branding:
+        title: Märgistus
+      content_retention:
+        preamble: Juhi kuidas kasutajate loodud sisu Mastodon'is talletatakse.
+        title: Sisu talletamine
+      discovery:
+        follow_recommendations: Jälgi soovitusi
+        profile_directory: Kasutajate kataloog
+        title: Avastus
+        trends: Trendid
       domain_blocks:
         all: Kõigile
         disabled: Mitte kellelegi
@@ -343,23 +599,68 @@ et:
       delete: Kustuta üleslaetud fail
       destroyed_msg: Üleslaetud fail edukalt kustutatud!
     statuses:
+      account: Autor
+      application: Rakendus
       back_to_account: Tagasi konto lehele
       deleted: Kustutatud
+      favourites: Lemmikud
+      in_reply_to: Vastusena
+      language: Keel
       media:
         title: Meedia
+      metadata: Metaandmed
       no_status_selected: Mitte ühtegi staatust muudeti sest midagi polnud valitud
+      open: Ava postitus
       title: Konto staatused
+      visibility: Nähtavus
       with_media: Meediaga
+    strikes:
+      actions:
+        mark_statuses_as_sensitive: "%{name} märkis %{target} postitused tundlikena"
+        sensitive: "%{name} märkis %{target} konto kui tundlik sisu"
+        suspend: "%{name} kustutas %{target} konto"
+      appeal_approved: Vaidlustatud
+      appeal_pending: Vaidlustus on ootel
+    system_checks:
+      elasticsearch_running_check:
+        message_html: Elasticsearch ei vasta. Kontrolli, kas see töötab või keela täistekstiotsing
+      elasticsearch_version_check:
+        message_html: 'Elasticsearch versioon ei sobi: %{value}'
+        version_comparison: Elasticsearch %{running_version} töötab, aga nõutud on %{required_version}
     tags:
       review: Staatuse ülevaade
       updated_msg: Sildi sätted edukalt uuendatud
     title: Administreerimine
+    trends:
+      allow: Luba
+      approved: Kinnitatud
+      pending_review: Ootab ülevaatust
+      tags:
+        description_html: Need sildid ilmuvad praegu paljudes postitutes mida su server näeb. See võib aidata su kasutajatel leida seda millest kõige rohkem parajasti räägitakse. Ühtegi silti ei näidata avalikult, enne nende heaks kiitmist.
+        title: Trendikad sildid
+        usable: Kasutatav
+      title: Trendid
     warning_presets:
       add_new: Lisa uus
       delete: Kustuta
       edit_preset: Redigeeri hoiatuse eelseadistust
       title: Halda hoiatuste eelseadistusi
+    webhooks:
+      delete: Kustuta
+      disable: Keela
+      disabled: Keelatud
+      enable: Luba
+      enabled: Aktiivne
+      events: Sündmused
+      status: Staatus
   admin_mailer:
+    new_appeal:
+      actions:
+        mark_statuses_as_sensitive: et märkida postitused kui tundlik sisu
+        none: hoiatus
+        sensitive: et märkida konto kui tundlik sisu
+        suspend: et konto kustutada
+      body: "%{target} vaidlustab %{action_taken_by} modereerimisotsuse kuupäevaga %{date}: %{type}. Põhjendus:"
     new_pending_account:
       body: Uue konto üksikasjad on allpool. Te saate vastu võtta või tagasi lükata seda taotlust.
       subject: Uus konto valmis ülevaatluseks serveril %{instance} (%{username})
@@ -367,6 +668,11 @@ et:
       body: "%{reporter} teavitas kasutajast %{target}"
       body_remote: Keegi domeenist %{domain} teavitas kasutajast %{target}
       subject: Uus teavitus %{instance}-ile (#%{id})
+    new_trends:
+      new_trending_tags:
+        no_approved_tags: Hetkel ei ole ühtegi heaks kiidetud populaarset silti.
+        requirements: 'Need on siltide kandidaadid mille hulgast ükskõik milline võib järjekorras mööda jõuda #%{rank} kohal olevast heaks kiidetud sildist. See on hetkel #%{lowest_tag_name} mille seis on %{lowest_tag_score}.'
+        title: Trendikad sildid
   aliases:
     add_new: Loo teine nimi
     created_msg: Teine nimi on edukalt loodud. Te saate nüüd alustada kolimist vanalt kontolt.
@@ -375,8 +681,8 @@ et:
     hint_html: Kui Te soovite kolida teiselt kontolt praegusele kontole, saate Te siin luua teise nime, mis on kohustuslik, enne kui saate kolida jälgijaid vanalt kontolt praegusele. See tegevus on iseenesest <strong>kahjutu ja taastatav</strong>. <strong>Konto ületoomine alustatakse vanalt kontolt</strong>.
     remove: Eemalda teine nimi
   appearance:
-    advanced_web_interface: Arenenud veebiliides
-    advanced_web_interface_hint: 'Kui soovite kasutada terve ekraani laiust, lubab arenenud veebiliides seadistada mitut erinevat veergu, et näha nii palju informatsiooni samal ajal kui võimalik: Kodu, teavitused, föderatsiooni ajajoon ning mis iganes arv nimekirju ja silte.'
+    advanced_web_interface: Kohandatud veebiliides
+    advanced_web_interface_hint: 'Kui soovite kasutada terve ekraani laiust, lubab kohandatud veebiliides seadistada mitut erinevat veergu, et näha nii palju informatsiooni samal ajal, kui võimalik: Kodu, teavitused, föderatsiooni ajajoon ning mis iganes arv nimekirju ja silte.'
     animations_and_accessibility: Animatsioonid ja ligipääs
     confirmation_dialogs: Kinnitusdialoogid
     discovery: Avastus
@@ -387,6 +693,7 @@ et:
     toot_layout: Tuututuse kujundus
   application_mailer:
     notification_preferences: Muuda e-kirjade eelistusi
+    salutation: "%{name}!"
     settings: 'Muuda e-kirjade eelistusi: %{link}'
     view: 'Vaade:'
     view_profile: Vaata profiili
@@ -407,28 +714,41 @@ et:
       prefix_sign_up: Loo Mastodoni konto juba täna!
       suffix: Kasutajakontoga saate jälgida inimesi, postitada uudiseid ning teha kirjavahetust üks kõik millisest Mastodoni serverist kasutajatega ja muud!
     didnt_get_confirmation: Ei saanud kinnituse juhendeid?
-    forgot_password: Unustasid oma salasõna?
+    forgot_password: Salasõna ununenud?
     invalid_reset_password_token: Salasõna lähtestusvõti on vale või aegunud. Palun taotle uus.
+    link_to_otp: Kahe-etapine kood telefonist või taastekood
     login: Logi sisse
     logout: Logi välja
     migrate_account: Koli teisele kasutajale
     migrate_account_html: Kui Te soovite seda kontot ümber viia teisele, <a href="%{path}">saate teha seda siit</a>.
     or_log_in_with: Või logi sisse koos
+    privacy_policy_agreement_html: Olen lugenud ja nõustun <a href="%{privacy_policy_path}" target="_blank">privaatsuspoliitikaga</a>
+    providers:
+      cas: CAS
+      saml: SAML
     register: Loo konto
     registration_closed: "%{instance} ei võta vastu uusi liikmeid"
     resend_confirmation: Saada kinnitusjuhendid uuesti
-    reset_password: Lähtesta salasõna
+    reset_password: Salasõna lähtestamine
+    rules:
+      preamble: Neist kinnipidamist jälgivad %{domain} moderaatorid.
+      title: Mõned põhireeglid.
     security: Turvalisus
-    set_new_password: Määra uus salasõna
+    set_new_password: Uue salasõna määramine
     setup:
       email_below_hint_html: Kui allolev e-posti aadress on vale, saate Te muuta seda siin ning Teile saadetakse uus kinnituskiri.
       email_settings_hint_html: Kinnituskiri saadeti e-posti aadressile %{email}. Kui see aadress pole õige, saate Te muuta seda oma konto sätetest.
       title: Seadistamine
+    sign_up:
+      preamble: Kontoga selles Mastodoni serveris on võimalik jälgida ükskõik keda võrgustikus, olenemata nende konto asukohast.
+      title: Konto andmed serveris %{domain}.
     status:
       account_status: Konto olek
       confirming: Ootan e-posti kinnitust.
       pending: Teie taotlus ootab ülevaadet meie personali poolt. See võib võtta mõnda aega. Kui Teie taotlus on vastu võetud, saadetakse Teile e-kiri.
       redirecting_to: Teie konto ei ole aktiivne, kuna hetkel suunatakse ümber kasutajale %{acct}.
+      view_strikes: Vaata enda eelnevaid juhtumeid
+    too_fast: Vorm esitatud liiga kiirelt, proovi uuesti.
   authorize_follow:
     already_following: Te juba jälgite seda kontot
     already_requested: Te juba saatsite jälgimistaotluse sellele kontole
@@ -443,9 +763,9 @@ et:
     title: Jälgi %{acct}
   challenge:
     confirm: Jätka
-    hint_html: "<strong>Nõuanne:</strong> Me ei küsi Teilt uuesti salasõna järgmise tunni jooksul."
+    hint_html: "<strong>Nõuanne:</strong> Me ei küsi salasõna uuesti järgmise tunni jooksul."
     invalid_password: Vigane salasõna
-    prompt: Jätkamiseks kinnitage salasõna
+    prompt: Jätkamiseks salasõna veelkord
   crypto:
     errors:
       invalid_key: ei ole õige Ed25519 ega Curve25519 võti
@@ -453,6 +773,7 @@ et:
   date:
     formats:
       default: "%d. %b %Y"
+      with_month_name: "%d. %B %Y"
   datetime:
     distance_in_words:
       about_x_hours: "%{count}t"
@@ -460,13 +781,16 @@ et:
       about_x_years: "%{count}a"
       almost_x_years: "%{count}a"
       half_a_minute: Just praegu
+      less_than_x_minutes: "%{count}m"
       less_than_x_seconds: Just praegu
       over_x_years: "%{count}a"
       x_days: "%{count}p"
+      x_minutes: "%{count}m"
       x_months: "%{count}k"
+      x_seconds: "%{count}s"
   deletes:
     challenge_not_passed: Informatsioon, mida sisestasite, oli vale
-    confirm_password: Sisesta oma praegune salasõna, et kinnitada oma identiteet
+    confirm_password: Praegune salasõna isikusamasuse kinnitamiseks
     confirm_username: Sisestage oma kasutajanimi protseduuri kinnitamiseks
     proceed: Kustuta konto
     success_msg: Konto kustutamine õnnestus
@@ -481,10 +805,32 @@ et:
       more_details_html: Rohkemate detailide jaoks palun lugege <a href="%{terms_path}">privaatsuspoliitikat</a>.
       username_available: Teie kasutajanimi muutub uuesti kasutatavaks
       username_unavailable: Teie kasutajanimi jääb mitte kasutatavaks
+  disputes:
+    strikes:
+      action_taken: Tulemus
+      appeal: Vaidlustus
+      appeal_approved: Selle juhtumi vaidlustus on rahuldatud ja pole enam kehtiv
+      appeal_submitted_at: Vaidlustus esitatud
+      appealed_msg: Vaidlustus esitatud. Selle rahuldamisel saabub teadaanne.
+      appeals:
+        submit: Esita vaidlustus
+      approve_appeal: Rahulda vaidlustus
+      created_at: Kuupäev
+      description_html: See on käesoleva konto hoiatuste ja tegevuste ajalugu, mis on %{instance} haldajate poolt ette võetud.
+      reject_appeal: Lükka vaidlustus tagasi
+      status: 'Postitus #%{id}'
+      title: "%{action} kuupäevaga %{date}"
+      title_actions:
+        mark_statuses_as_sensitive: Postituste tundlikena märkimine
+        none: Hoiatus
+        sensitive: Konto tundlikuna märkimine
+        suspend: Konto kustutamine
+      your_appeal_approved: Teie vaidlustus on rahuldatud
+      your_appeal_pending: Vaidlustus on esitatud
   domain_validator:
     invalid_domain: ei ole sobiv domeeni nimi
   errors:
-    '400': Toiming oli vale või valesti vormindatud.
+    '400': Esitatud päring oli vigane või valesti vormindatud.
     '403': Sul puudub õigus seda lehte vaadata.
     '404': Soovitud lehte ei leitud.
     '406': See lehekülg ei ole soovitavas formaadis saadaval.
@@ -510,6 +856,8 @@ et:
       request: Taotle oma arhiivi
       size: Suurus
     blocks: Teie blokeerite
+    bookmarks: Järjehoidjad
+    csv: CSV
     domain_blocks: Domeeni blokeeringud
     lists: Nimistud
     mutes: Teie vaigistate
@@ -518,7 +866,7 @@ et:
     add_new: Lisa uus
     errors:
       limit: Olete jõudnud maksimum lubatud siltide arvuni
-    hint_html: "<strong>Mis on esile toodud sildid?</strong> Need sildid näidatakse nähtavalt Teie avalikul profiilil ning nad aitavad inimestel leida postitusi, millel on antud sildid. Nad on hea viis kuidas näiteks hoida järge loovtöödel või pikaajalistel projektidel."
+    hint_html: "<strong>Mis on esile toodud sildid?</strong> Need sildid näidatakse nähtavalt Teie avalikul profiilil ning nad aitavad inimestel leida postitusi, millel on antud sildid. Nad on hea viis, kuidas näiteks hoida järge loovtöödel või pikaajalistel projektidel."
   filters:
     contexts:
       account: Profiilid
@@ -527,24 +875,33 @@ et:
       public: Avalikud ajajooned
       thread: Vestlused
     edit:
+      keywords: Märksõnad
       title: Muuda filtrit
     errors:
       invalid_context: Puudulik või vale kontekst
     index:
       delete: Kustuta
       empty: Teil pole filtreid.
-      title: Filterid
+      title: Filtrid
     new:
       title: Lisa uus filter
   footer:
     trending_now: Praegu trendikad
   generic:
     all: Kõik
+    all_matching_items_selected_html:
+      one: "<strong>%{count}</strong> otsinguvaste valitud."
+      other: Kõik <strong>%{count}</strong> otsinguvastet valitud.
     changes_saved_msg: Muudatuste salvestamine õnnestus!
     copy: Kopeeri
     delete: Kustuta
+    none: Puudub
     order_by: Järjesta
     save_changes: Salvesta muudatused
+    select_all_matching_items:
+      one: Vali %{count} otsinguvaste.
+      other: Vali kõik %{count} otsinguvastet.
+    today: täna
     validation_errors:
       one: Midagi pole ikka õigesti! Palun vaadake allolev veateade üle
       other: Midagi pole ikka õigesti! Palun vaadake all olevad %{count} veateadet üle
@@ -560,6 +917,7 @@ et:
     success: Teie andmete üleslaadimine õnnestus ning neid töödeldakse
     types:
       blocking: Blokeeringute nimekiri
+      bookmarks: Järjehoidjad
       domain_blocking: Domeeniblokeeringute nimekiri
       following: Jälgimiste nimekiri
       muting: Vaigistuse nimekiri
@@ -589,6 +947,11 @@ et:
   lists:
     errors:
       limit: Olete jõudnud maksimum lubatud nimekirjade arvuni
+  login_activities:
+    authentication_methods:
+      otp: kahe-etapise autentimise rakendus
+      password: salasõna
+    description_html: Kui paistab tundmatauid tegevusi, tuleks vahetada salasõna ja aktiveerida kahe-etapine autentimine.
   media_attachments:
     validations:
       images_and_video: Ei saa lisada video staatusele, millel on juba pildid
@@ -627,7 +990,14 @@ et:
       redirect: Teie praegune konto eemaldatakse otsingutulemustest ning profiilile lisatakse ümbersuunamise märguanne
   moderation:
     title: Moderatsioon
+  move_handler:
+    carry_blocks_over_text: See kasutaja kolis kontolt %{acct}, mis oli keelatud.
   notification_mailer:
+    admin:
+      report:
+        subject: "%{name} esitas raporti"
+      sign_up:
+        subject: "%{name} liitus"
     favourite:
       body: "%{name} lisas Teie staatuse lemmikutesse:"
       subject: "%{name} märkis su staatuse lemmikuks"
@@ -647,9 +1017,9 @@ et:
       subject: "%{name} mainis Teid"
       title: Uus mainimine
     reblog:
-      body: "%{name} upitas Teie staatust:"
-      subject: "%{name} upitas su staatust"
-      title: Uus upitus
+      body: "%{name} jagas postitust:"
+      subject: "%{name} jagas postitust"
+      title: Uus jagamine
   notifications:
     email_events: E-posti teadete sündmused
     email_events_hint: 'Valige sündmused, millest soovite teavitusi:'
@@ -657,14 +1027,20 @@ et:
   number:
     human:
       decimal_units:
+        format: "%n%u"
         units:
           thousand: T
           trillion: Tr
+  otp_authentication:
+    description_html: Kui aktiveerda <strong>kahe-etapine autentimine</strong> autentimisrakenduse abil, on sisselogimiseks tarvis telefoni, mis loob sisenemiseks võtmeid.
+    enable: Luba
+    setup: Seadista
   pagination:
     newer: Uuemad
     next: Järgmine
     older: Vanemad
     prev: Eelm
+    truncate: "&hellip;"
   polls:
     errors:
       already_voted: Olete siin juba hääletanud
@@ -702,6 +1078,9 @@ et:
     status: Konto olek
   remote_follow:
     missing_resource: Ei suutnud leida vajalikku suunamise URLi Teie konto jaoks
+  rss:
+    descriptions:
+      tag: 'Avalikud postitused sildiga #%{hashtag}'
   scheduled_statuses:
     over_daily_limit: Te olete jõudnud maksimum lubatud ajastatud tuututuste arvuni %{limit} selle päeva kohta
     over_total_limit: Te olete jõudnud maksimum lubatud ajastatud tuututuste arvuni %{limit}
@@ -710,13 +1089,40 @@ et:
     activity: Viimane aktiivsus
     browser: Veebilehitseja
     browsers:
+      alipay: Alipay
+      blackberry: Blackberry
+      chrome: Chrome
+      edge: Microsoft Edge
+      electron: Electron
+      firefox: Firefox
       generic: Tundmatu veebilehitseja
+      ie: Internet Explorer
+      micro_messenger: MicroMessenger
+      nokia: Nokia S40 Ovi Browser
+      opera: Opera
+      otter: Otter
+      phantom_js: PhantomJS
+      qq: QQ Browser
+      safari: Safari
+      uc_browser: UC Browser
+      weibo: Weibo
     current_session: Praegune seanss
     description: "%{browser} platvormil %{platform}"
     explanation: Need on praegused veebilehitsejad, mis on sisse logitud Teie Mastodoni kontosse.
+    ip: IP
     platforms:
+      adobe_air: Adobe Air
+      android: Android
+      blackberry: Blackberry
+      chrome_os: ChromeOS
+      firefox_os: Firefox OS
+      ios: iOS
+      linux: Linux
       mac: Mac
       other: tundmatu platvorm
+      windows: Windows
+      windows_mobile: Windows Mobile
+      windows_phone: Windows Phone
     revoke: Tühista
     revoke_success: Seanssi tühistamine õnnestus
     title: Seanssid
@@ -739,14 +1145,19 @@ et:
     preferences: Eelistused
     profile: Profiil
     relationships: Jälgitud ja jälgijad
-    two_factor_authentication: Kahesammuline autentimine
+    statuses_cleanup: Automaatne kustutamine
+    strikes: Modereerimisjuhtumid
+    two_factor_authentication: Kahe-etapine autentimine
   statuses:
     attached:
       description: 'Manused: %{attached}'
       image:
         one: "%{count} pilt"
         other: "%{count} pilti"
-    boosted_from_html: Upitatud %{acct_link}
+      video:
+        one: "%{count} video"
+        other: "%{count} videot"
+    boosted_from_html: "%{acct_link} jagamine"
     content_warning: 'Sisu hoiatus: %{warning}'
     disallowed_hashtags:
       one: 'sisaldab ebasobivat silti: %{tags}'
@@ -756,9 +1167,10 @@ et:
     open_in_web: Ava veebis
     over_character_limit: tähtmärkide limiit %{max} ületatud
     pin_errors:
-      limit: Te olete juba maksimum arvu lubatud tuututusi kinnitanud
-      ownership: Kellegi teise tuututust ei saa kinnitada
-      reblog: Upitust ei saa kinnitada
+      direct: Ei saa kinnitada postitusi, mis on nähtavad vaid mainitud kasutajatele
+      limit: Maksimaalne arv postitusi on juba kinnitatud
+      ownership: Kellegi teise postitust ei saa kinnitada
+      reblog: Jagamist ei saa kinnitada
     poll:
       total_people:
         one: "%{count} inimene"
@@ -771,16 +1183,36 @@ et:
     show_thread: Kuva lõim
     sign_in_to_participate: Logi sisse, et liituda vestlusega
     visibilities:
+      direct: Otsene
       private: Ainult jälgijatele
       private_long: Näita ainult jälgijatele
       public: Avalik
       public_long: Kõik saavad näha
       unlisted: Kirjendamata
       unlisted_long: Kõik saavad näha, aga ei ole saadaval avalikes ajajoontes
+  statuses_cleanup:
+    enabled: Vanade postituste automaatne kustutamine
+    enabled_hint: Kustutab automaatselt postitused, mis ületavad määratud ajalimiiti, välja arvatud allpool toodud erandite puhul
+    exceptions: Erandid
+    keep_pinned: Säilita kinnitatud postitused
+    keep_pinned_hint: Ei kustuta ühtegi kinnitatud postitust
+    min_age:
+      '1209600': 2 nädalat
+      '15778476': 6 kuud
+      '2629746': 1 kuu
+      '31556952': 1 aasta
+      '5259492': 2 kuud
+      '604800': 1 nädal
+      '63113904': 2 aastat
+      '7889238': 3 kuud
+    min_age_label: Ajalimiit
   stream_entries:
-    pinned: Kinnitatud tuut
-    reblogged: upitatud
+    pinned: Kinnitatud postitus
+    reblogged: jagatud
     sensitive_content: Tundlik sisu
+  strikes:
+    errors:
+      too_late: On hilja seda juhtumit vaidlustada
   tags:
     does_not_match_previous_name: ei ühti eelmise nimega
   themes:
@@ -791,45 +1223,76 @@ et:
     formats:
       default: "%d. %B, %Y. aastal, kell %H:%M"
       month: "%B %Y"
+      time: "%H:%M"
   two_factor_authentication:
-    disable: Lülita välja
-    enabled: Kaheastmeline autentimine on sisse lülitatud
-    enabled_success: Kaheastmeline autentimine on edukalt sisse lülitatud
-    generate_recovery_codes: Loo taastuskoodid
-    lost_recovery_codes: Taastuskoodide abil on Teil võimalik sisse logida kontosse, kui Te kaotate oma telefoni. Kui Te kaotate oma taastuskoodid, saate need uuesti luua siin. Teie vanad taastuskoodid tehakse kehtetuks.
-    recovery_codes: Tagavara taastuskoodid
-    recovery_codes_regenerated: Taastuskoodid edukalt taasloodud
-    recovery_instructions_html: Kui Te juhtute kunagi kaotama oma telefoni, saate kasutada ühte allpool olevatest taastuskoodidest, et saada ligipääsu oma kontole. <strong>Hoidke taastuskoodid turvaliselt</strong>. Näiteks võite Te need välja printida ning hoida need koos teiste tähtsate dokumentidega.
+    add: Lisa
+    disable: Keela 2FA
+    disabled_success: Kahe-etapine autentimine keelatud
+    edit: Muuda
+    enabled: Kahe-etapine autentimine on lubatud
+    enabled_success: Kahe-etapine autentimine lubatud
+    generate_recovery_codes: Loo taastekoodid
+    lost_recovery_codes: Taastekoodide abil on võimalik telefoni kaotsimineku puhul kontole siseneda. Taastekoodide puudumisel saab need siin luua. Eelnevad taasetkoodid kaotavad kehtivuse.
+    methods: Kahe-etapised meetodid
+    otp: Autentimisrakendus
+    recovery_codes: Taastekoodide varundamine
+    recovery_codes_regenerated: Taastekoodid edukalt taasloodud
+    recovery_instructions_html: Kui telefon peaks kaotsi minema, on võimalik kontole sisenemisel kasutada ühte järgnevatest taastekoodidest. <strong>Hoia taastekoode turvaliselt</strong>. Näiteks võib neid prindituna hoida koos teiste tähtsate dokumentidega.
+    webauthn: Turvavõtmed
   user_mailer:
     backup_ready:
       explanation: Te taotlesite varukoopia oma Mastodoni kontost. See on nüüd valmis allalaadimiseks!
       subject: Teie arhiiv on allalaadimiseks valmis
       title: Arhiivi väljavõte
+    suspicious_sign_in:
+      change_password: muuta oma salasõna
+      details: 'Sisenemise üksikasjad:'
+      explanation: Täheldasime kontole sisenemise uuelt IP-aadressilt.
+      further_actions_html: Kui see tuleb üllatusena, soovitame viivitamata %{action} ja lülitada konto turvamiseks sisse kahe-etapine autentimine.
+      subject: Kontole sisenemine uuelt IP-aadressilt
+      title: Uus sisenemine
     warning:
+      appeal: Vaidlustuse esitamine
+      appeal_description: Kui see võib olla eksitus, on võimalik %{instance} haldajatele esitada vaidlustus.
+      categories:
+        spam: Rämpspost
+      explanation:
+        mark_statuses_as_sensitive: Mõned postitused märgiti %{instance} moderaatorite poolt kui tundlik sisu. See tähendab, et meedia eelvaadet vaikimisi ei kuvata. Edaspidi postitades on soovitatav seesugune meedia märkida kui tundlik sisu.
+        sensitive: Praegusest alates saab kogu Su üleslaetav meedia tundliku sisu märke ja selle eelvaadet ei kuvata enne hoiatust.
+        suspend: Konto kasutamine pole enam võimalik ja profiil ja muud andmed pole enam kättesaadavad. Sisenemine on võimalik andmetest varukoopia saamiseks kuni nende lõpliku kustutamiseni 30 päeva pärast, ent säiltame mõned põhiandmed kustutamisest mööda hiilimise vältimiseks.
+      reason: 'Põhjus:'
       subject:
         disable: Teie konto %{acct} on lukustatud
+        mark_statuses_as_sensitive: Konto %{acct} postitused on märgitud kui tundlik sisu
         none: Hoiatus kasutajale %{acct}
+        sensitive: Konto %{acct} postitused on nüüdsest märgitud kui tundlik sisu
         silence: Teie kontole %{acct} on kehtestatud limiidid
-        suspend: Teie konto %{acct} on peatatud
+        suspend: Teie konto %{acct} on kustutatud
       title:
         disable: Konto lukustatud
+        mark_statuses_as_sensitive: Postitused märgitud kui tundlik sisu
         none: Hoiatus
+        sensitive: Konto märgitud kui tundlik sisu
         silence: Konto limiteeritud
-        suspend: Konto peatatud
+        suspend: Konto kustutatud
     welcome:
       edit_profile_action: Sea üles profiil
       explanation: Siin on mõned nõuanded, mis aitavad sul alustada
       final_action: Alusa postitamist
+      final_step: 'Alusta postitamist! Isegi ilma jälgijateta näevad teised Teie avalikke postitusi, näiteks kohalikul ajajoonel ning siltide kaudu. Te võite ennast tutvustada kasutades silti #tutvustus.'
       full_handle: Teie täisnimi
       full_handle_hint: See on mida oma sõpradega jagada, et nad saaksid Teile sõnumeid saata ning Teid jälgida teiselt serverilt.
       subject: Tere tulemast Mastodoni
       title: Tere tulemast pardale, %{name}!
   users:
     follow_limit_reached: Te ei saa jälgida rohkem kui %{limit} inimest
-    invalid_otp_token: Vale kaheastmelise autentimise kood
+    invalid_otp_token: Vale kahe-etapine võti
     otp_lost_help_html: Kui Te kaotasite ligipääsu mõlemale, saate võtta ühendust %{email}-iga
-    seamless_external_login: Te olete sisse loginud läbi väljaspool asuva teenusega, niiet salasõna ja e-posti sätted pole saadaval.
+    seamless_external_login: Läbi välise teenuse sisse logides pole salasõna ja e-posti sätted saadaval.
     signed_in_as: 'Sisse logitud kasutajana:'
   verification:
-    explanation_html: 'Te saate <strong>kinnitada ennast oma linkide omanikena oma profiili metaandmetes</strong>. Et seda teha, peab Teie lingitud veebilehel olema link tagasi Teie Mastodoni profiilile. Tagasi saatval lingil <strong>peab</strong> olema <code>rel="me"</code> atribuut. Tekstisisu lingil ei loe. Siin on üks näide:'
+    explanation_html: 'Te saate <strong>kinnitada ennast oma profiili veebiviidete omanikena</strong>. Et seda teha, peab Teie viidatud veebilehel olema link tagasi Teie Mastodoni profiilile. Tagasi saatval lingil <strong>peab</strong> olema <code>rel="me"</code> atribuut. Tekstisisu lingil ei loe. Siin on üks näide:'
     verification: Kinnitamine
+  webauthn_credentials:
+    delete: Kustuta
+    otp_required: Turvavõtmete kasutamiseks tuleb eelnevalt sisse lülitada kahe-etapine autentimine.
diff --git a/config/locales/eu.yml b/config/locales/eu.yml
index 11dcec2bc..02a8390cd 100644
--- a/config/locales/eu.yml
+++ b/config/locales/eu.yml
@@ -373,6 +373,8 @@ eu:
       add_new: Sartu domeinua zerrenda zurian
       created_msg: Domeinua ongi sartu da zerrenda zurian
       destroyed_msg: Domeinua zerrenda zuritik kendu da
+      export: Esportatu
+      import: Inportatu
       undo: Kendu zerrenda zuritik
     domain_blocks:
       add_new: Gehitu domeinuaren blokeo berria
@@ -382,11 +384,12 @@ eu:
       edit: Editatu domeinu-blokeoa
       existing_domain_block: Aurretik muga zorrotzagoak ezarriak dituzu %{name} domeinuan.
       existing_domain_block_html: '%{name} domeinuan muga zorrotzagoak ezarri dituzu jada, aurretik <a href="%{unblock_url}">desblokeatu</a> beharko duzu.'
+      export: Esportatu
+      import: Inportatu
       new:
         create: Sortu blokeoa
         hint: Domeinuaren blokeoak ez du eragotziko kontuen sarrerak sortzea datu-basean, baina automatikoki ezarriko zaizkie moderazio metodo bereziak iraganeko mezuetan ere.
         severity:
-          desc_html: "<strong>Isilarazi</strong>-k kontuko bidalketak jarraitzaileek besterik ez ikustea eragingo du. <strong>Kanporatu</strong>-k kontuaren edukia, multimedia eta profileko datuak ezabatuko ditu. <strong>Bat ere ez</strong> nahi duzun guztia multimedia fitxategiak ukatzea bada."
           noop: Bat ere ez
           silence: Isilarazi
           suspend: Kanporatu
@@ -422,6 +425,10 @@ eu:
       resolved_dns_records_hint_html: Domeinu-izena ondorengo MX domeinuetara ebazten da, zeinek eposta onartzeko ardura duten. MX domeinu bat blokeatzeak MX domeinu hori erabiltzen duen edozein helbide elektronikotatik izena-ematea blokeatzen du, baita ikusgai dagoen domeinu-izena beste bat bada ere. <strong>Kontuz ibili eposta hornitzaile nagusiak blokeatu gabe.</strong>
       resolved_through_html: "%{domain} domeinuaren bidez ebatzia"
       title: E-mail zerrenda beltza
+    export_domain_allows:
+      no_file: Ez da fitxategirik hautatu
+    export_domain_blocks:
+      no_file: Ez da fitxategirik hautatu
     follow_recommendations:
       description_html: "<strong>Jarraitzeko gomendioek erabiltzaile berriei eduki interesgarria azkar aurkitzen laguntzen diete</strong>. Erabiltzaile batek jarraitzeko gomendio pertsonalizatuak jasotzeko adina interakzio izan ez duenean, kontu hauek gomendatzen zaizkio. Egunero birkalkulatzen dira hizkuntza bakoitzerako, azken aldian parte-hartze handiena izan duten eta jarraitzaile lokal gehien dituzten kontuak nahasiz."
       language: Hizkuntza
@@ -914,7 +921,6 @@ eu:
     warning: Kontuz datu hauekin, ez partekatu inoiz inorekin!
     your_token: Zure sarbide token-a
   auth:
-    apply_for_account: Jarri itxarote-zerrendan
     change_password: Pasahitza
     delete_account: Ezabatu kontua
     delete_account_html: Kontua ezabatu nahi baduzu, <a href="%{path}">jarraitu hemen</a>. Berrestea eskatuko zaizu.
diff --git a/config/locales/fa.yml b/config/locales/fa.yml
index 9601162de..6a91068de 100644
--- a/config/locales/fa.yml
+++ b/config/locales/fa.yml
@@ -351,6 +351,8 @@ fa:
       add_new: مجاز کردن دامنه
       created_msg: دامنه با موفقیت مجاز شد
       destroyed_msg: دامنه از فهرست مجاز برداشته شد
+      export: برون‌ریزی
+      import: درون‌ریزی
       undo: برداشتن از فهرست مجاز
     domain_blocks:
       add_new: افزودن مسدودسازی دامین تازه
@@ -359,13 +361,13 @@ fa:
       domain: دامنه
       edit: ویرایش مسدودسازی دامنه
       existing_domain_block_html: شما پیش‌تر محدودیت‌های سخت‌تری روی %{name} اعمال کرده‌اید، و باید نخست <a href="%{unblock_url}">مسدودسازی را لغو کنید</a>.
+      export: برون‌ریزی
+      import: درون‌ریزی
       new:
         create: مسدودسازی
         hint: مسدودسازی دامنه جلوی ایجاد ورودی‌های حساب در پایگاه داده را نمی‌گیرد، بلکه به طور خودکار روش‌های مدیریتی را روی فعالیت‌های فعلی و گذشتهٔ آن حساب‌ها اعمال می‌کند.
         severity:
-          desc_html: "<strong>خموشاندن</strong> نوشته‌های حساب را برای هر فرد غیرپیگیر، نامرئی می‌کند.<strong>تعلیق</strong> همهٔ محتوا، رسانه‌ها، و داده‌های نمایهٔ حساب را پاک می‌کند. اگر فقط می‌خواهید جلوی رسانه‌ها را بگیرید <strong>هیچ</strong> را برگزینید."
           noop: هیچ
-          silence: خموشاندن
           suspend: تعلیق
         title: مسدودسازی دامین تازه
       obfuscate: مبهم‌سازی نام دامنهٔ
@@ -1183,7 +1185,7 @@ fa:
       direct: فرسته‌هایی که فقط برای کاربران اشاره شده نمایانند نمی‌توانند سنجاق شوند
       limit: از این بیشتر نمی‌شود نوشته‌های ثابت داشت
       ownership: نوشته‌های دیگران را نمی‌توان ثابت کرد
-      reblog: تقویت را نمی‌توان سنجاق کرد
+      reblog: تقویت نمی‌تواند سنجاق شود
     poll:
       total_people:
         one: "%{count} نفر"
diff --git a/config/locales/fi.yml b/config/locales/fi.yml
index 3a72387e2..a6588e8ad 100644
--- a/config/locales/fi.yml
+++ b/config/locales/fi.yml
@@ -373,6 +373,8 @@ fi:
       add_new: Salli liitto verkkotunnuksella
       created_msg: Verkkotunnus on onnistuneesti sallittu federaatiolle
       destroyed_msg: Verkkotunnus on estetty federaatiossa
+      export: Vie
+      import: Tuo
       undo: Estä liitto verkkotunnukselle
     domain_blocks:
       add_new: Lisää uusi
@@ -382,15 +384,19 @@ fi:
       edit: Muokkaa verkkotunnuksen estoa
       existing_domain_block: Olet jo asettanut tiukemmat rajoitukset %{name}.
       existing_domain_block_html: Olet jo asettanut %{name} tiukemmat rajat ja sinun täytyy <a href="%{unblock_url}">poistaa se</a> ensin.
+      export: Vie
+      import: Tuo
       new:
         create: Luo esto
         hint: Verkkotunnuksen esto ei estä tilien luomista ja lisäämistä tietokantaan, mutta se soveltaa näihin tileihin automaattisesti määrättyjä moderointitoimia tilin luomisen jälkeen.
         severity:
-          desc_html: "<strong>Hiljennys</strong> estää tilin julkaisuja näkymästä muille kuin tilin seuraajille. <strong>Jäähy</strong> poistaa tilin kaiken sisällön, median ja profiilitiedot. Jos haluat vain hylätä mediatiedostot, valitse <strong>Ei mitään</strong>."
+          desc_html: "<strong>Rajoita</strong> -valinta piilottaa tämän verkkoalueen tilien julkaisut heiltä, jotka eivät seuraa kyseisiä tilejä. <strong>Lopeta</strong> poistaa kaiken sisällön, median ja profiilien tiedot tämän verkkotunnuksen tileiltä palvelimellasi. Käytä valintaa <strong>Ei mitään</strong>, jos haluat vain estää mediatiedostojen julkaisemisen."
           noop: Ei mitään
-          silence: Hiljennys
+          silence: Rajoita
           suspend: Jäähy
         title: Uusi verkkotunnuksen esto
+      no_domain_block_selected: Verkkoalue-estoihin ei tehty muutoksia, koska valintoja ei tehty
+      not_permitted: Nykyiset käyttöoikeutesi eivät kata tätä toimintoa
       obfuscate: Peitä verkkotunnuksen nimi
       obfuscate_hint: Peitä verkkotunnus osittain luettelossa, jos verkkotunnuksen rajoitusten luettelo on käytössä
       private_comment: Yksityinen kommentti
@@ -422,6 +428,20 @@ fi:
       resolved_dns_records_hint_html: Verkkotunnuksen nimi määräytyy seuraaviin MX-verkkotunnuksiin, jotka ovat viime kädessä vastuussa sähköpostin vastaanottamisesta. MX-verkkotunnuksen estäminen estää kirjautumisen mistä tahansa sähköpostiosoitteesta, joka käyttää samaa MX-verkkotunnusta, vaikka näkyvä verkkotunnuksen nimi olisikin erilainen. <strong>Varo estämästä suuria sähköpostin palveluntarjoajia.</strong>
       resolved_through_html: Ratkaistu %{domain} kautta
       title: Sähköpostiestolista
+    export_domain_allows:
+      new:
+        title: Tuo sallitut verkkoalueet
+      no_file: Yhtäkään tiedostoa ei ole valittu
+    export_domain_blocks:
+      import:
+        description_html: Olet tuomassa järjestelmään luetteloa verkkoalue-estoista. Tarkista luettelo huolella – etenkin, ellet ole itse tehnyt listausta.
+        existing_relationships_warning: Olemassa olevat seuraussuhteet
+        private_comment_description_html: 'Tuodun estolistan alkuperän selvillä pitämiseksi, lisätään tietojen yhteyteen seuraava yksityinen kommentti: <q>%{comment}</q>'
+        private_comment_template: Tuotu lähteestä %{source}, pvm %{date}
+        title: Tuo luettelo verkkoalue-estoista
+      new:
+        title: Tuo luettelo verkkoalue-estoista
+      no_file: Yhtäkään tiedostoa ei ole valittu
     follow_recommendations:
       description_html: "<strong>Suositusten noudattaminen auttaa uusia käyttäjiä löytämään nopeasti mielenkiintoista sisältöä.</strong>. Jos käyttäjä ei ole ollut vuorovaikutuksessa tarpeeksi muiden kanssa luodakseen henkilökohtaisia seuraajia, näitä muita tilejä suositellaan sen sijaan. Ne lasketaan uudelleen päivittäin yhdistelmästä tilejä, joilla on korkein viimeaikainen käyttö ja korkein paikallinen seuraajien määrä tietyllä kielellä."
       language: Kielelle
@@ -584,7 +604,7 @@ fi:
         title: Merkinnät
       notes_description_html: Tarkastele ja jätä merkintöjä muille valvojille ja itsellesi tulevaisuuteen
       quick_actions_description_html: 'Suorita nopea toiminto tai vieritä alas nähdäksesi raportoitu sisältö:'
-      remote_user_placeholder: etäkäyttäjä paikasta %{instance}
+      remote_user_placeholder: etäkäyttäjä instanssista %{instance}
       reopen: Avaa raportti uudestaan
       report: Raportti nro %{id}
       reported_account: Raportoitu tili
@@ -861,10 +881,10 @@ fi:
         suspend: keskeyttää heidän tilinsä
       body: "%{target} on valittanut valvojan päätöksestä %{action_taken_by} aika %{date}, joka oli %{type}. He kirjoittivat:"
       next_steps: Voit hyväksyä vetoomuksen ja kumota päätöksen tai jättää sen huomiotta.
-      subject: "%{username} valittaa valvojan päätöksestä, joka koskee %{instance}"
+      subject: "%{username} valittaa valvojan päätöksestä, joka koskee instanssia %{instance}"
     new_pending_account:
       body: Uuden tilin tiedot ovat alla. Voit hyväksyä tai hylätä tämän hakemuksen.
-      subject: Uusi tili tarkastettavana %{instance} (%{username})
+      subject: Uusi tili tarkastettavana instanssissa %{instance} (%{username})
     new_report:
       body: "%{reporter} on raportoinut kohteen %{target}"
       body_remote: Joku osoitteesta %{domain} on raportoinut kohteen %{target}
@@ -879,7 +899,7 @@ fi:
         no_approved_tags: Tällä hetkellä ei ole hyväksyttyjä trendikkäitä hashtageja.
         requirements: 'Mikä tahansa näistä ehdokkaista voisi ylittää #%{rank} hyväksytyn trendikkään hashtagin, joka on tällä hetkellä #%{lowest_tag_name} arvosanalla %{lowest_tag_score}.'
         title: Suositut hashtagit
-      subject: Uusia trendejä tarkistettavaksi %{instance}
+      subject: Uusia trendejä tarkistettavaksi instanssissa %{instance}
   aliases:
     add_new: Luo alias
     created_msg: Uusi alias luotiin onnistuneesti. Voit nyt aloittaa siirron vanhasta tilistä.
@@ -914,7 +934,7 @@ fi:
     warning: Säilytä tietoa hyvin. Älä milloinkaan jaa sitä muille!
     your_token: Pääsytunnus
   auth:
-    apply_for_account: Tule jonotuslistalle
+    apply_for_account: Pyydä tiliä
     change_password: Salasana
     delete_account: Poista tili
     delete_account_html: Jos haluat poistaa tilisi, <a href="%{path}">paina tästä</a>. Poisto on vahvistettava.
@@ -1032,7 +1052,7 @@ fi:
       approve_appeal: Hyväksy valitus
       associated_report: Liittyvä raportti
       created_at: Päivätty
-      description_html: Nämä ovat tiliäsi koskevia toimia ja varoituksia, jotka %{instance} henkilökunta on lähettänyt sinulle.
+      description_html: Nämä ovat tiliäsi koskevia toimia ja varoituksia, jotka instanssin %{instance} henkilökunta on lähettänyt sinulle.
       recipient: Osoitettu
       reject_appeal: Hylkää valitus
       status: 'Viesti #%{id}'
@@ -1159,6 +1179,7 @@ fi:
     invalid_markup: 'sisältää virheellisen HTML-merkinnän: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Epäkelpo CSV-tiedosto. Virhe: %{error}'
       over_rows_processing_limit: sisältää yli %{count} riviä
     modes:
       merge: Yhdistä
@@ -1574,14 +1595,14 @@ fi:
       title: Uusi kirjautuminen
     warning:
       appeal: Lähetä valitus
-      appeal_description: Jos uskot, että tämä on virhe, voit hakea muutosta henkilökunnalta %{instance}.
+      appeal_description: Jos uskot, että tämä on virhe, voit hakea muutosta instanssin %{instance} henkilökunnalta.
       categories:
         spam: Roskaposti
         violation: Sisältö rikkoo seuraavia yhteisön sääntöjä
       explanation:
-        delete_statuses: Joitakin viesteistäsi on havaittu rikkovan yhtä tai useampaa yhteisön sääntöä ja %{instance} valvojat ovat poistaneet ne.
+        delete_statuses: Joitakin viesteistäsi on havaittu rikkovan yhtä tai useampaa yhteisön sääntöä ja instanssin %{instance} valvojat ovat poistaneet ne.
         disable: Et voi enää käyttää tiliäsi, mutta profiilisi ja muut tiedot pysyvät muuttumattomina. Voit pyytää varmuuskopiota tiedoistasi, vaihtaa tilin asetuksia tai poistaa tilisi.
-        mark_statuses_as_sensitive: Valvojat %{instance} ovat merkinneet osan julkaisuistasi arkaluonteisiksi. Tämä tarkoittaa sitä, että ihmisten täytyy napauttaa viestiä ennen kuin esikatselu näytetään. Voit merkitä median itse arkaluonteiseksi kun julkaiset tulevaisuudessa.
+        mark_statuses_as_sensitive: Instanssin %{instance} valvojat ovat merkinneet osan julkaisuistasi arkaluonteisiksi. Tämä tarkoittaa sitä, että ihmisten täytyy napauttaa viestiä ennen kuin esikatselu näytetään. Voit merkitä median itse arkaluonteiseksi kun julkaiset tulevaisuudessa.
         sensitive: Tästä lähtien kaikki ladatut mediatiedostot merkitään arkaluonteisiksi ja piilotetaan napsautusvaroituksen taakse.
         silence: Voit edelleen käyttää tiliäsi, mutta vain sinua jo seuraavat ihmiset näkevät viestisi tällä palvelimella ja sinut voidaan sulkea pois erilaisista hakuominaisuuksista. Toiset voivat kuitenkin edelleen seurata sinua manuaalisesti.
         suspend: Et voi enää käyttää tiliäsi ja profiilisi ja muut tiedot eivät ole enää käytettävissä. Voit silti kirjautua sisään pyytääksesi varmuuskopiota tiedoistasi, kunnes tiedot on poistettu kokonaan noin 30 päivän kuluttua. Säilytämme joitakin perustietoja, jotka estävät sinua kiertämästä keskeyttämistä.
@@ -1620,7 +1641,7 @@ fi:
     seamless_external_login: Olet kirjautunut ulkoisen palvelun kautta, joten salasana- ja sähköpostiasetukset eivät ole käytettävissä.
     signed_in_as: 'Kirjautunut henkilönä:'
   verification:
-    explanation_html: 'Voit <strong>vahvistaa itsesi profiilisi metatietojen linkkien omistajaksi.</strong>. Tätä varten linkitetyn verkkosivuston on sisällettävä linkki takaisin Mastodon -profiiliisi. Palauttavalla linkillä <strong>täytyy</strong> olla <code>rel="minä"</code> tuntomerkki. Linkin tekstisisällöllä ei ole väliä. Tässä on esimerkki:'
+    explanation_html: 'Voit <strong>vahvistaa itsesi profiilisi metatietojen linkkien omistajaksi.</strong>. Tätä varten linkitetyn verkkosivuston on sisällettävä linkki takaisin Mastodon -profiiliisi. Palauttavalla linkillä <strong>täytyy</strong> olla <code>rel="me"</code> tuntomerkki. Linkin tekstisisällöllä ei ole väliä. Tässä on esimerkki:'
     verification: Vahvistus
   webauthn_credentials:
     add: Lisää uusi suojausavain
diff --git a/config/locales/fo.yml b/config/locales/fo.yml
new file mode 100644
index 000000000..0dd71ed4f
--- /dev/null
+++ b/config/locales/fo.yml
@@ -0,0 +1,671 @@
+---
+fo:
+  about:
+    about_mastodon_html: 'Framtíðar sosiali miðilin: ongar lýsingar, eingin stórfyritøku-yvirvøka, etiskt snið og desentralisering! Eig tínar dátur við Mastodon!'
+    contact_missing: Ikki sett
+    contact_unavailable: Ikki tøk/ur
+    hosted_on: Mastodon hýst á %{domain}
+    title: Um
+  accounts:
+    follow: Fylg
+    followers:
+      one: Fylgjari
+      other: Fylgjarar
+    following: Fylgir
+    instance_actor_flash: Hendan kontan er ein tykisligur aktørur, sum verður brúktur til at umboða ambætaran sjálvan og ikki nakran ávísan brúkara. Hon verður brúkt til sameind endamál og eigur ikki at vera tikin úr gildi.
+    last_active: virkin seinast
+    link_verified_on: Eigaraskapur av hesum leinki var eftirkannaður tann %{date}
+    nothing_here: Her er einki!
+    pin_errors:
+      following: Tú mást fylgja persóninum, sum tú ynskir at viðurkenna, framman undan
+    posts:
+      one: Uppslag
+      other: Uppsløg
+    posts_tab_heading: Uppsløg
+  admin:
+    account_actions:
+      action: Frem atgerð
+      title: Frem umsjónaratgerð á %{acct}
+    account_moderation_notes:
+      create: Skriva umsjónarviðmerking
+      created_msg: Umsjónarviðmerking stovnað!
+      destroyed_msg: Umsjónarviðmerking strikað!
+    accounts:
+      add_email_domain_block: Blokera teldupostanavnaøki
+      approve: Vátta
+      approved_msg: Góðkent tilmeldingarumbøn hjá %{username}
+      are_you_sure: Ert tú vís/ur?
+      avatar: Eftirgjørdur skapningur
+      by_domain: Økisnavn
+      change_email:
+        changed_msg: Teldupostur broyttur!
+        current_email: Núverandi teldupostur
+        label: Broyt teldupost
+        new_email: Nýggjur teldupostur
+        submit: Broyt teldupost
+        title: Broyt teldupostin hjá %{username}
+      change_role:
+        changed_msg: Leiklutur broyttur!
+        label: Broyt leiklut
+        no_role: Eingin leiklutur
+        title: Broyt leiklut hjá %{username}
+      confirm: Vátta
+      confirmed: Váttað
+      confirming: Váttar
+      custom: Tillaga
+      delete: Strika dátur
+      deleted: Strikað
+      demote: Lækka í tign
+      destroyed_msg: Dáturnar hjá %{username} eru nú settar í bíðirøð at blíva strikaðar sum skjótast
+      disable: Fryst
+      disable_sign_in_token_auth: Ger váttan við teldupostateknum óvirkna
+      disable_two_factor_authentication: Ger 2FA óvirkið
+      disabled: Fryst
+      display_name: Vís navn
+      domain: Økisnavn
+      edit: Rætta
+      email: Teldupostur
+      email_status: Teldupostastøða
+      enable: Tiðna
+      enable_sign_in_token_auth: Ger váttan við teldupostateknum virkna
+      enabled: Í gildi
+      enabled_msg: Tiðnaði kontuna hjá %{username}
+      followers: Fylgjarar
+      follows: Fylgir
+      header: Høvd
+      inbox_url: Innbakka-URL'ur
+      invite_request_text: Tilmeldingarorsakir
+      invited_by: Bjóðað av
+      ip: IP
+      joined: Tilmeldað/ur
+      location:
+        all: Alt
+        local: Lokalar
+        remote: Fjarar
+        title: Staður
+      login_status: Innritanarstøða
+      media_attachments: Viðfestir miðlar
+      memorialize: Broyt til minniskontu
+      memorialized: Gjørd til minniskontu
+      memorialized_msg: Gjørt %{username} til eina minniskontu
+      moderation:
+        active: Virkin
+        all: Allar
+        pending: Í bíðistøðu
+        silenced: Avmarkað
+        suspended: Avbrotin
+        title: Umsjón
+      moderation_notes: Umsjónarviðmerkingar
+      most_recent_activity: Feskasta virksemi
+      most_recent_ip: Feskasta IP
+      no_account_selected: Ongar kontur vóru broyttar, tí ongar vóru valdar
+      no_limits_imposed: Ongar avmarkingar álagdar
+      no_role_assigned: Eingin leiklutur tillutaður
+      not_subscribed: Ikki haldari
+      pending: Bíðar eftir viðgerð
+      perform_full_suspension: Avbrót
+      previous_strikes: Eldri meldingar
+      previous_strikes_description_html:
+        one: Hendan kontan hevur <strong>eina</strong> melding.
+        other: Hendan kontan hevur <strong>%{count}</strong> meldingar.
+      promote: Stimbra
+      protocol: Samskiftisháttur
+      public: Alment
+      push_subscription_expires: PuSH-hald gongur út
+      redownload: Endurnýggja vanga
+      redownloaded_msg: Tín vangamynd %{username}'s er nú endurnýggja
+      reject: Nokta
+      rejected_msg: Tað eydnaðist, at avvísa umsóknina frá %{username}'s um innskriving
+      remove_avatar: Sletta avatar
+      remove_header: Sletta headera
+      removed_avatar_msg: Slettaði avatar myndina hjá %{username}
+      removed_header_msg: Slettaði header myndina hjá %{username}
+      resend_confirmation:
+        already_confirmed: Hesi brúkarin er longu váttaður
+        send: Endursend váttanar teldupost
+        success: Váttanar teldupostur trygt sendur!
+      reset: Endurset
+      reset_password: Endurstilla loyniorð
+      resubscribe: Tegna teg umaftur
+      role: Leiklutur
+      search: Leita
+      search_same_email_domain: Aðrir brúkarir eru við sama teldupost domaini
+      search_same_ip: Aðrir brúkarar við somu IP
+      security_measures:
+        only_password: Bara loyniorð
+        password_and_2fa: Loyniorð og 2FA
+      sensitive: Tvinga-følsemi
+      sensitized: Frámerkt sum viðkvamt
+      shared_inbox_url: Deil postkassa URL
+      show:
+        created_reports: Frágreiðing gjørd
+        targeted_reports: Meldað av øðrum
+      silence: Mark
+      silenced: Avmarkað
+      statuses: Uppsløg
+      strikes: Eldri fráboðanir
+      subscribe: Tekna hald
+      suspend: Fyribils ikki í gyldi
+      suspended: Ikki í gyldi
+      suspension_irreversible: Dáturnar á hesu kontu er endaliga sletttaðar. Tú kann endurstovna kontuna, men dáturnar fáast ikki aftur.
+      suspension_reversible_hint_html: Kontan er gjørd óvirkin og dáturnar verða endaliga strikaðar tann %{date}. Inntil tá kann kontan endurskapast uttan fylgjur. Ynskir tú at strika allar dátur hjá kontuni beinan vegin, so kanst tú gera tað niðanfyri.
+      title: Kontur
+      unblock_email: Strika blokering av telduposti
+      unblocked_email_msg: Blokeringin av teldupostinum hjá %{username} varð strikað
+      unconfirmed_email: Óváttaður teldupostur
+      undo_sensitized: Angra tvingað viðbrekni
+      undo_silenced: Strika markið
+      undo_suspension: Angra ógildi
+      unsilenced_msg: Avmarkingin av kontuni hjá %{username} var strikað
+      unsubscribe: Strika hald
+      unsuspended_msg: Kontan hjá %{username} varð gjørd virkin aftur
+      username: Brúkaranavn
+      view_domain: Vís samandrátt fyri navnaøki
+      warn: Ávara
+      web: Vev
+      whitelisted: Loyvd at sameina
+    action_logs:
+      action_types:
+        approve_appeal: Góðkenn kæru
+        approve_user: Góðkenn brúkara
+        assigned_to_self_report: Tilluta melding
+        change_email_user: Broyt teldupost fyri brúkara
+        change_role_user: Broyt leiklut hjá brúkara
+        confirm_user: Vátta brúkara
+        create_account_warning: Stovna ávaring
+        create_announcement: Stovna kunngerð
+        create_canonical_email_block: Stovna teldupostblokering
+        create_custom_emoji: Stovna serligt kenslutekn
+        create_domain_allow: Stovna navnaøkjaloyvi
+        create_domain_block: Stovna navnaøkjablokering
+        create_email_domain_block: Stovna teldupostanavnaøkjablokering
+        create_ip_block: Stovna IP reglu
+        create_unavailable_domain: Stovna navnaøki, sum ikki er tøkt
+        create_user_role: Stovna leiklut
+        demote_user: Lækka brúkara í tign
+        destroy_announcement: Strika kunngerð
+        destroy_canonical_email_block: Strika teldupostblokering
+        destroy_custom_emoji: Strika serligt kenslutekn
+        destroy_domain_allow: Strika navnaøkjaloyvi
+        destroy_domain_block: Strika navnaøkjablokering
+        destroy_email_domain_block: Strika teldupostanavnaøkjablokering
+        destroy_instance: Reinsa navnaøki
+        destroy_ip_block: Strika IP reglu
+        destroy_status: Strika post
+        destroy_unavailable_domain: Strika navnaøki, sum ikki er tøkt
+        destroy_user_role: Bein burtur leiklut
+        disable_2fa_user: Ger 2FA óvirkið
+        disable_custom_emoji: Ger serligt kenslutekn óvirkið
+        disable_sign_in_token_auth_user: Ger váttan við teldupostateknum óvirkna fyri brúkara
+        disable_user: Ger brúkara óvirknan
+        enable_custom_emoji: Ger serligt kenslutekn virkið
+        enable_sign_in_token_auth_user: Ger váttan við teldupostateknum virkna fyri brúkara
+        enable_user: Ger brúkara virknan
+        memorialize_account: Minnst til Konto
+        promote_user: Vís fram Brúkara
+        reject_appeal: Avvís mótmali
+        reject_user: Avvís Brúkara
+        remove_avatar_user: Sletta Avatar
+        reopen_report: Lat upp aftur Frágreiðing
+        resend_user: Endursent Váttanar Teldupost
+        reset_password_user: Endurset Loyniorð
+        resolve_report: Loys trupulleikar í Frágreiðing
+        sensitive_account: Tvinga viðkvæmis Konto
+        silence_account: Avmarka Konto
+        suspend_account: Fyribils ógilda kontu
+        unassigned_report: Sletta tildeilda Frágreiðing
+        unblock_email_account: Sletta foring av telduposti
+        unsensitive_account: Ógilda Tvungna-Viðkvæmis kontu
+        unsilence_account: Ógilda Avmarkaða Kontu
+        unsuspend_account: Fyribils ógilda kontu
+        update_announcement: Dagfør Fráboðan
+        update_custom_emoji: Dagfør Sergjørt Kenslutekn
+        update_domain_block: Dagfør Domain forðing
+        update_ip_block: Dagfør IP reglur
+        update_status: Dagfør Uppslag
+        update_user_role: Dagfør Leiklut
+      actions:
+        approve_appeal_html: "%{name} góðkendi umsjónaráheitan frá %{target}"
+        approve_user_html: "%{name} góðtók umsókn frá %{target}"
+        assigned_to_self_report_html: "%{name} tillutaði frágreiðing %{target} til sín sjálvs"
+        change_email_user_html: "%{name} broytti teldupost addressuna hjá %{target}"
+        change_role_user_html: "%{name} broytti leiklutin hjá %{target}"
+        confirm_user_html: "%{name} góðtók teldupost addressuna hjá %{target}"
+        create_account_warning_html: "%{name} sendi eina ávarðing til %{target}"
+        create_announcement_html: "%{name} stovnaði eina fráboðan %{target}"
+        create_canonical_email_block_html: "%{name} forðaði telduposti við hash'inum %{target}"
+        create_custom_emoji_html: "%{name} legði upp nýtt kenslutekn %{target}"
+        create_domain_allow_html: "%{name} loyv sameining við domainið %{target}"
+        create_domain_block_html: "%{name} blokeraði navnaøkið %{target}"
+        create_email_domain_block_html: "%{name} blokeraði teldupostanavnaøkið %{target}"
+        create_ip_block_html: "%{name} gjørdi reglu fyri IP %{target}"
+        create_unavailable_domain_html: "%{name} steðgaði veiting til navnaøkið %{target}"
+        create_user_role_html: "%{name} stovnaði %{target} leiklutin"
+        demote_user_html: "%{name} lækkaði tignina hjá brúkaranum %{target}"
+        destroy_announcement_html: "%{name} strikaðar fráboðanir %{target}"
+        destroy_canonical_email_block_html: "%{name} strikaði blokeringina av teldupostin við hashkodu %{target}"
+        destroy_custom_emoji_html: "%{name} strikaði kensluteknið %{target}"
+        destroy_domain_allow_html: "%{name} havnaði sameining við navnaøkið %{target}"
+        destroy_domain_block_html: "%{name} strikaði blokering av navnaøkinum %{target}"
+        destroy_email_domain_block_html: "%{name} leysgivi teldupostanavnaøkið %{target}"
+        destroy_instance_html: "%{name} reinsaði navnaøkið %{target}"
+        destroy_ip_block_html: "%{name} slettaðar reglur fyri IP %{target}"
+        destroy_status_html: "%{name} slettaði upplegg hjá %{target}"
+        destroy_unavailable_domain_html: "%{name} tók upp aftir veiting til navnaøkið %{target}"
+        destroy_user_role_html: "%{name} slettaði leiklutin hjá %{target}"
+        disable_2fa_user_html: "%{name} slepti kravið um váttan í tveimum stigum fyri brúkaran %{target}"
+        disable_custom_emoji_html: "%{name} gjørdi kensluteknið %{target} óvirkið"
+        disable_sign_in_token_auth_user_html: "%{name} gjørdi váttan við teldupostteknum óvirkna fyri %{target}"
+        disable_user_html: "%{name} gjørdi innritan hjá brúkaranum %{target} óvirkna"
+        enable_custom_emoji_html: "%{name} gjørdi kensluteknið %{target} virkið"
+        enable_sign_in_token_auth_user_html: "%{name} gjørdi váttan við teldupostteknum virkna fyri %{target}"
+        enable_user_html: "%{name} gjørdi innritan virkna fyri brúkaran %{target}"
+        memorialize_account_html: "%{name} broytti kontuna hjá %{target} til eina minnissíðu"
+        promote_user_html: "%{name} flutti brúkaran %{target} fram"
+        reject_appeal_html: "%{name} avvísti umsjónaráheitan frá %{target}"
+        reject_user_html: "%{name} avvísti skráseting hjá %{target}"
+        remove_avatar_user_html: "%{name} strikaði eftirgjørda skapningin hjá %{target}"
+        reopen_report_html: "%{name} lat uppaftur meldingina %{target}"
+        resend_user_html: "%{name} endursendi váttanarteldubrævið fyri %{target}"
+        reset_password_user_html: "%{name} setti loyniorðið hjá brúkaranum %{target} av nýggjum"
+        resolve_report_html: "%{name} avgreiddi meldingina %{target}"
+        sensitive_account_html: "%{name} hevur merkt media hjá %{target} sum viðkvæmt"
+        silence_account_html: "%{name} hevur avmarkað rættindini á kontuni %{target}"
+        suspend_account_html: "%{name} gjørdi kontuna hjá %{target} óvirkna"
+        unassigned_report_html: "%{name} tók aftur tillutanina av meldingini %{target}"
+        unblock_email_account_html: "%{name} hevur læst teldubrævabústaðin hjá %{target} upp"
+        unsensitive_account_html: "%{name} strikaði viðkvæmis-merkingina av miðlafíluni %{target}"
+        unsilence_account_html: "%{name} strikaði avmarkingina av kontuni hjá %{target}"
+        unsuspend_account_html: "%{name} gjørdi kontuna hjá %{target} virkna aftur"
+        update_announcement_html: "%{name} dagførdi kunngerðina %{target}"
+        update_custom_emoji_html: "%{name} dagførdi kensluteknið %{target}"
+        update_domain_block_html: "%{name} dagførdi navnaøkisblokeringina hjá %{target}"
+        update_ip_block_html: "%{name} broytti IP-reglurnar %{target}"
+        update_status_html: "%{name} dagførdi postin hjá %{target}"
+        update_user_role_html: "%{name} broyttir %{target} leiklutir"
+      deleted_account: strikað konta
+      empty: Eingir loggar funnir.
+      filter_by_action: Filtrera eftir atgerð
+      filter_by_user: Filtrera eftir brúkara
+      title: Skoðanarloggur
+    announcements:
+      destroyed_msg: Kunngerð strikað!
+      edit:
+        title: Rætta kunngerð
+      empty: Ongar kunngerðir funnar.
+      live: Beinleiðis
+      new:
+        create: Stovna kunngerð
+        title: Nýggj kunngerð
+      publish: Legg út
+      published_msg: Kunngerð útgivin!
+      scheduled_for: Sett á skrá %{time}
+      scheduled_msg: Útgáva av kunngerð tíðarásett!
+      title: Kunngerðir
+      unpublish: Tak útgávu aftur
+      unpublished_msg: Kunngerð tikin aftur!
+      updated_msg: Kunngerð dagførd!
+    custom_emojis:
+      assign_category: Tilluta bólk
+      by_domain: Økisnavn
+      copied_msg: Havi gjørt lokalt avrit av kenslutekninum
+      copy: Avrita
+      copy_failed_msg: Tað bar ikki til at gera lokalt avrit av hasum kenslutekninum
+      create_new_category: Stovna nýggja flokking
+      created_msg: Kenslutekn stovnað!
+      delete: Strika
+      destroyed_msg: Kenslutekn strikað!
+      disable: Ógilda
+      disabled: Ógildað
+      disabled_msg: Kenslutekn gjørt óvirkið
+      emoji: Kenslutekn
+      enable: Set í gildi
+      enabled: Í gildi
+      enabled_msg: Kenslutekn gjørt virkið
+      image_hint: PNG ella GIF upp til %{size}
+      list: Listi
+      listed: Listað
+      new:
+        title: Legg sergjørt kenslutekn afturat
+      no_emoji_selected: Eingi kenslutekn vóru broytt, tí eingi vóru vald
+      not_permitted: Tú hevur ikki loyvi at gera hetta
+      overwrite: Skriva omaná
+      shortcode: Stuttkoda
+      shortcode_hint: Minst 2 tekn. Bara tøl, vanligir stavir og botnstrikur
+      title: Sergjørd kenslutekn
+      uncategorized: Ikki flokkað
+      unlist: Tak av listanum
+      unlisted: Ikki listað
+      update_failed_msg: Fekk ikki dagført hatta kensluteknið
+      updated_msg: Kenslutekn dagført!
+      upload: Legg upp
+    dashboard:
+      active_users: virknir brúkarar
+      interactions: sín ámillum ávirkanir
+      media_storage: Miðlagoymsla
+      new_users: nýggir brúkarar
+      opened_reports: meldingar latnar upp
+      pending_appeals_html:
+        one: "<strong>%{count}</strong> kæra bíðar"
+        other: "<strong>%{count}</strong> kærur bíða"
+      pending_reports_html:
+        one: "<strong>%{count}</strong> melding bíðar"
+        other: "<strong>%{count}</strong> meldingar bíða"
+      pending_tags_html:
+        one: "<strong>%{count}</strong> frámerki bíðar"
+        other: "<strong>%{count}</strong> frámerki bíða"
+      pending_users_html:
+        one: "<strong>%{count}</strong> brúkari bíðar"
+        other: "<strong>%{count}</strong> brúkarar bíða"
+      resolved_reports: meldingar avgreiddar
+      software: Ritbúnaður
+      sources: Tilmeldingarkeldur
+      space: Goymsla brúkt
+      title: Yvirlitsskíggi
+      top_languages: Mest virknu mál
+      top_servers: Mest virknu ambætarar
+      website: Vevstað
+    disputes:
+      appeals:
+        empty: Ongar kærur funnar.
+        title: Kærur
+    domain_allows:
+      add_new: Loyv sameining við navnaøki
+      created_msg: Sameining er nú loyvd fyri navnaøkið
+      destroyed_msg: Loyvi hjá navnaøki at sameinast er noktað
+      export: Flyt út
+      import: Flyt inn
+      undo: Nokta sameining við navnaøki
+    domain_blocks:
+      add_new: Legg nýggja navnaøkisblokering afturat
+      created_msg: Navnaøkisblokering verður nú viðgjørd
+      destroyed_msg: Navnaøkisblokering er nú gjørd óvirkin
+      domain: Økisnavn
+      edit: Rætta navnaøkisblokering
+      existing_domain_block: Tú hevur longu ásett stangari avmarkingar á %{name}.
+      existing_domain_block_html: Tú hevur longu ásett strangari avmarkingar á %{name}, tú mást <a href="%{unblock_url}">strika blokeringina</a> fyrst.
+      export: Flyt út
+      import: Flyt inn
+      new:
+        create: Stovna blokering
+        hint: Navnaøkjablokeringin forðar ikki stovnan av kontum í dátugrunninum, men fer afturlítandi og sjálvvirkandi at gera ávísar umsjónarmannagongdir á hesar kontur virknar.
+        severity:
+          desc_html: "<strong>Avvmarka</strong> ger soleiðis, at postar frá kontum í hesum navnaøki verða ósjónligur fyri øll, sum ikki fylgja kontunum beinleiðis.\n<strong>Banna</strong> strikar alt innihald, allar miðlar og allar vangadátur fyri kontur hjá hesum navnaøkinum frá tínum ambætara. Brúka \n<strong>Einki</strong> um tú einans vil avvísa miðlafílum."
+          noop: Ongar
+          silence: Mark
+          suspend: Banna
+        title: Nýggj navnaøkisblokering
+      no_domain_block_selected: Ongar navnaøkjablokeringar vóru broyttar, tí ongar vóru valdar
+      not_permitted: Tú hevur ikki rættindi at gera hetta
+      obfuscate: Grugga navnaøki
+      obfuscate_hint: Grugga navnaøkið lutvíst í listanum, um kunngerð av listum við navnaøkisavmarkingum er gjørd virkin
+      private_comment: Privat viðmerking
+      private_comment_hint: Viðmerking um hesa navnaøkjaavmarking til innanhýsis nýtslu hjá umsjónarfólkunum.
+      public_comment: Sjónlig viðmerking
+      public_comment_hint: Viðmerk hesa navnaøkisavmarkingina fyri almenninginum, um kunngerð av listum við navnaøkisavmarkingum er gjørd virkin.
+      reject_media: Avvís miðlafílur
+      reject_media_hint: Burturbeinir miðlafílur, sum eru goymdar lokalt, og noktar at taka niður fílur frameftir. Óviðkomandi fyri banningar
+      reject_reports: Avvís meldingar
+      reject_reports_hint: Ikki leggja lag í meldingar, sum koma frá hesum navnaøkinum. Óviðkomandi fyri banningar
+      undo: Strika navnaøkisblokering
+      view: Vís navnaøkisblokering
+    email_domain_blocks:
+      add_new: Stovna
+      attempts_over_week:
+        one: "%{count} roynd seinastu vikuna"
+        other: "%{count} tilmeldingarroyndir seinastu vikuna"
+      created_msg: Teldupostanavnaøkið blokerað
+      delete: Strika
+      dns:
+        types:
+          mx: MX postur
+      domain: Navnaøki
+      new:
+        create: Stovna nýtt økisnavn
+        resolve: Loys navnaøki
+        title: Blokera nýtt teldupostanavnaøki
+      no_email_domain_block_selected: Ongar teldupostanavnaøkisblokeringar vóru broyttar, tí ongar vóru valdar
+      resolved_dns_records_hint_html: Navnaøkið verður loyst til hesi MX navnaøki, sum í síðsta enda hava ábyrgdina av at móttaka teldupost. At blokera eitt MX navnaøki fer at blokera tilmeldingar frá einum og hvørjum teldupoststaði, sum brúkar sama MX navnaøki, sjálvt um sjónliga navnaøkið er eitt annað. <strong>Ansa eftir ikki at blokera stórar veitarar av telduposti</strong>
+      resolved_through_html: Loyst gjøgnum %{domain}
+      title: Blokeraði teldupostanavnaøki
+    export_domain_allows:
+      new:
+        title: Innflyt navnaøkjaloyvi
+      no_file: Eingin fíla vald
+    export_domain_blocks:
+      import:
+        description_html: Tú er í holt við at innflyta ein lista av navnaøkjablokeringum. Vinarliga eftirkanna listan gjølla, serliga um tú ikki hevur gjørt listan sjálv/ur.
+        existing_relationships_warning: Verandi fylgjarasambond
+        private_comment_description_html: Fyri at hjálpa tær at fylgja við í, hvaðani innfluttir blokkar koma, verða innfluttu blokkarnir stovnaðir við hesi privatu viðmerkingini:<q>%{comment}</q>
+        private_comment_template: Innflutt frá %{source} tann %{date}
+        title: Innflyt navnaøkjablokeringar
+      new:
+        title: Innflyt navnaøkjablokeringar
+      no_file: Eingin fíla vald
+    follow_recommendations:
+      description_html: "<strong>Viðmæli at fylgja hjálpa nýggjum brúkarum til skjótt at finna áhugavert innihald</strong>. Tá ein brúkari ikki hevur havt samband við aðrar brúkarar til at gera persónlig tilmæli, so verða hesar kontur viðmæltar í staðin. Konturnar verða roknaðar av nýggjum dagliga frá einari blanding av kontum við flestu hugbindingum og flestu lokalu fylgjarum fyri eitt givið mál."
+      language: Fyri mál
+      status: Status
+      suppress: Avmarka tilmæli at fylgja
+      suppressed: Steðgað
+      title: Tilmæli at fylgja
+      unsuppress: Endurskapa tilmæli at fylgja
+    instances:
+      availability:
+        description_html:
+          one: Um veiting til navnaøkið ikki riggar í <strong>%{count} dag</strong>, so verða ongar royndir at veita gjørdar, uttan so, at ein veiting <em>frá</em> navnaøkinum er móttikin.
+          other: Um veiting til navnaøkið ikki riggar <strong>%{count} ymiskar dagar</strong>, so verða ongar royndir at veita gjørdar, uttan so, at ein veiting <em>frá</em> navnaøkinum er móttikin.
+        failure_threshold_reached: Mesta tal av brekum nátt %{date}.
+        failures_recorded:
+          one: Miseydnaðar royndir í %{count} dag.
+          other: Miseydnaðar royndir í %{count} ymiskar dagar.
+        no_failures_recorded: Eingi brek skrásett.
+        title: Tøki
+        warning: Seinasta royndin at fáa samband við ambætaran eydnaðist ikki
+      back_to_all: Øll
+      back_to_limited: Avmarkaði
+      back_to_warning: Ávaring
+      by_domain: Økisnavn
+      confirm_purge: Er tað tilætlað, at dátur frá hesum navnaøkinum skulu strikast med alla?
+      content_policies:
+        comment: Innanhýsis viðmerking
+        description_html: Tú kanst áseta innihaldspolitikkir, sum verða áløgd øllum kontum frá hesum navnaøkinum og øllum tess undirnavnaøkjum.
+        policies:
+          reject_media: Vraka miðil
+          reject_reports: Vraka meldingar
+          silence: Mark
+          suspend: Banna
+        policy: Reglur
+        reason: Almenn grundgeving
+        title: Reglur fyri innihaldi
+      dashboard:
+        instance_accounts_dimension: Kontur við flestum fylgjarum
+        instance_accounts_measure: goymdar kontur
+        instance_followers_measure: okkara fylgjarar har
+        instance_follows_measure: teirra fylgjarar her
+        instance_languages_dimension: Mest nýtt mál
+        instance_media_attachments_measure: goymd miðlaviðfesti
+        instance_reports_measure: meldingar um tey
+        instance_statuses_measure: goymdir postar
+      delivery:
+        all: Øll
+        clear: Reinsa veitingarvillur
+        failing: Miseydnast
+        restart: Byrja veiting av nýggjum
+        stop: Støðga veiting
+        unavailable: Ikki tøkt
+      delivery_available: Levering er møgulig
+      delivery_error_days: Dagar við veitingarvillum
+      delivery_error_hint: Er veiting ikki møgulig í %{count} dagar, so verða tey sjálvvirkandi merkt sum ikki møgulig at veita.
+      destroyed_msg: Dátur frá %{domain} eru nú settar í bíðirøð til beinan vegin at blíva strikaðar.
+      moderation:
+        all: Allir
+        limited: Avmarkaðir
+    invites:
+      filter:
+        all: Alt
+        expired: Útgingið
+        title: Filtur
+    ip_blocks:
+      add_new: Stovna reglu
+      delete: Strika
+      expires_in:
+        '1209600': 2 vikur
+        '15778476': 6 mánaðir
+        '2629746': 1 mánaði
+        '31556952': 1 ár
+        '86400': 1 dag
+        '94670856': 3 ár
+      new:
+        title: Stovna nýggja IP reglu
+    relays:
+      delete: Strika
+      enable: Set í gildi
+    report_notes:
+      today_at: Í dag kl. %{time}
+    reports:
+      assigned: Tilnevnt umsjónarfólk
+      created_at: Meldað
+      delete_and_resolve: Strika postar
+      forwarded: Víðarisent
+      forwarded_to: Víðarisent til %{domain}
+      mark_as_resolved: Marka sum loyst
+      mark_as_sensitive: Merkt sum viðkvæmt
+      mark_as_unresolved: Marka sum óloyst
+      no_one_assigned: Eingin
+      notes:
+        create_and_resolve: Marka sum loyst og ger viðmerking
+        create_and_unresolve: Lat upp aftur við viðmerking
+        delete: Strika
+        title: Viðmerkingar
+      resolved: Loyst
+      unresolved: Óloyst
+      updated_at: Dagført
+      view_profile: Vís vangamynd
+    roles:
+      categories:
+        devops: DevOps
+        moderation: Umsjón
+        special: Serstakt
+      delete: Strika
+      privileges:
+        administrator: Umsitari
+        delete_user_data: Sletta brúkaraupplýsingar
+        manage_appeals: Umsit kærur
+        manage_user_access_description: Loyvir brúkarum at gera 'váttan í tveimum stigum' (2FA) hjá øðrum brúkarum óvirkna, at broyta teirra teldupost og at nullstilla teirra loyniorð
+    rules:
+      add_new: Ger nýggja reglu
+      delete: Strika
+      edit: Broyt reglur
+    settings:
+      domain_blocks:
+        all: Til øll
+        disabled: Til ongan
+    statuses:
+      account: Høvundi
+    title: Umsiting
+    trends:
+      allow: Loyv
+      approved: Váttað
+      disallow: Tak loyvi aftur
+      links:
+        allow: Loyv leinki
+    warning_presets:
+      delete: Strika
+    webhooks:
+      delete: Strika
+  application_mailer:
+    salutation: "%{name}"
+  auth:
+    change_password: Loyniorð
+    delete_account: Strika kontu
+    forgot_password: Hevur tú gloymt loyniorðið?
+    link_to_otp: Skriva eina tvey-stigs kodu frá telefonini ella eina kodu til endurgerð
+    log_in_with: Innrita við
+    login: Innrita
+    logout: Rita út
+    or_log_in_with: Ella innrita við
+  authorize_follow:
+    follow: Fylg
+  challenge:
+    confirm: Hald á
+  deletes:
+    proceed: Strika kontu
+  disputes:
+    strikes:
+      title_actions:
+        none: Ávaring
+  domain_validator:
+    invalid_domain: er ikki eitt loyvt økisnavn
+  errors:
+    '400': The request you submitted was invalid or malformed.
+    '403': You don't have permission to view this page.
+    '404': The page you are looking for isn't here.
+    '406': This page is not available in the requested format.
+    '410': The page you were looking for doesn't exist here anymore.
+    '422': 
+    '429': Too many requests
+    '500': 
+    '503': The page could not be served due to a temporary server failure.
+  exports:
+    archive_takeout:
+      date: Dagfesting
+      size: Stødd
+    lists: Listar
+  filters:
+    index:
+      delete: Strika
+  footer:
+    trending_now: Rák beint nú
+  generic:
+    all: Alt
+    copy: Avrita
+    delete: Strika
+    none: Einki
+    save_changes: Goym broytingar
+  imports:
+    errors:
+      invalid_csv_file: 'Ógildug CSV-fíla. Error: %{error}'
+  invites:
+    expired: Útgingið
+    expires_in:
+      '1800': 30 minuttir
+      '21600': 6 tímar
+      '3600': 1 tími
+      '43200': 12 tímar
+      '604800': 1 vika
+      '86400': 1 dag
+    expires_in_prompt: Ongantíð
+    table:
+      expires_at: Rennir út
+  login_activities:
+    authentication_methods:
+      otp: app til váttan í tveimum stigum
+      password: loyniorð
+    description_html: Sært tú virksemi, sum tú ikki kennir aftur, so eigur tú at umhugsa at broyta loyniorðið ella at gera váttan í tveimum stigum virkna.
+  moderation:
+    title: Umsjón
+  otp_authentication:
+    description_html: Ger tú <strong>váttan í tveimum stigum</strong> virkna við eini váttanar-app, so er neyðugt at hava telefonina tøka, tá tú skal rita inn, tí appin ger tekin til tín at lesa inn.
+  settings:
+    two_factor_authentication: Váttan í tveimum stigum
+  two_factor_authentication:
+    disabled_success: Váttan í tveimum stigum gjørd óvirkin
+    enabled: Váttan í tveimum stigum gjørd virkin
+    enabled_success: Váttan í tveimum stigum gjørd virkin
+    methods: Mannagongdir fyri váttan í tveimum stigum
+  user_mailer:
+    suspicious_sign_in:
+      further_actions_html: Var hetta ikki tú, so mæla vit til, at tú %{action} beinan vegin og at tú ger váttan í tveimum stigum virkna fyri at konta tín kann vera trygg.
+    warning:
+      reason: 'Grund:'
+      title:
+        none: Ávaring
+        sensitive: Konto frámerkt sum viðvkæmur
+        silence: Kontoin er avmarkað
+  users:
+    invalid_otp_token: Ógyldug tvey-stigs koda
+  webauthn_credentials:
+    delete: Strika
+    otp_required: Fyri at brúka trygdarlyklar er neyðugt at gera váttan í tveimum stigum virkna fyrst.
+    registered_on: Skrásett %{date}
diff --git a/config/locales/fr-QC.yml b/config/locales/fr-QC.yml
new file mode 100644
index 000000000..91b496212
--- /dev/null
+++ b/config/locales/fr-QC.yml
@@ -0,0 +1,1639 @@
+---
+fr-QC:
+  about:
+    about_mastodon_html: 'Le réseau social de l''avenir : pas de publicité, pas de surveillance institutionnelle, conception éthique et décentralisation ! Gardez le contrôle de vos données avec Mastodon !'
+    contact_missing: Non défini
+    contact_unavailable: Non disponible
+    hosted_on: Serveur Mastodon hébergé sur %{domain}
+    title: À propos
+  accounts:
+    follow: Suivre
+    followers:
+      one: Abonné·e
+      other: Abonné·e·s
+    following: Abonnements
+    instance_actor_flash: Ce compte est un acteur virtuel utilisé pour représenter le serveur lui-même et non un utilisateur individuel. Il est utilisé à des fins de fédération et ne doit pas être suspendu.
+    last_active: dernière activité
+    link_verified_on: La propriété de ce lien a été vérifiée le %{date}
+    nothing_here: Rien à voir ici !
+    pin_errors:
+      following: Vous devez être déjà abonné·e à la personne que vous désirez recommander
+    posts:
+      one: Message
+      other: Messages
+    posts_tab_heading: Messages
+  admin:
+    account_actions:
+      action: Effectuer l'action
+      title: Effectuer une action de modération sur %{acct}
+    account_moderation_notes:
+      create: Laisser une remarque
+      created_msg: Note de modération créée avec succès !
+      destroyed_msg: Note de modération supprimée avec succès !
+    accounts:
+      add_email_domain_block: Bloquer ce domaine de courriel
+      approve: Approuver
+      approved_msg: La demande d’inscription de %{username} a été approuvée avec succès
+      are_you_sure: Voulez-vous vraiment faire ça ?
+      avatar: Avatar
+      by_domain: Domaine
+      change_email:
+        changed_msg: Courriel modifié avec succès !
+        current_email: Courriel actuel
+        label: Modifier le courriel
+        new_email: Nouveau courriel
+        submit: Modifier le courriel
+        title: Modifier le courriel pour %{username}
+      change_role:
+        changed_msg: Rôle modifié avec succès !
+        label: Modifier le rôle
+        no_role: Aucun rôle
+        title: Modifier le rôle de %{username}
+      confirm: Confirmer
+      confirmed: Confirmé
+      confirming: Confirmation
+      custom: Personnalisé
+      delete: Supprimer les données
+      deleted: Supprimé
+      demote: Rétrograder
+      destroyed_msg: Les données de %{username} sont maintenant en file d’attente pour être supprimées imminemment
+      disable: Geler
+      disable_sign_in_token_auth: Désactiver l'authentification basée sur les jetons envoyés par courriel
+      disable_two_factor_authentication: Désactiver l’authentification à deux facteurs
+      disabled: Gelé
+      display_name: Nom affiché
+      domain: Domaine
+      edit: Éditer
+      email: Courriel
+      email_status: État du courriel
+      enable: Dégeler
+      enable_sign_in_token_auth: Activer l'authentification basée sur les jetons envoyés par courriel
+      enabled: Activé
+      enabled_msg: Le compte de %{username} a été dégelé avec succès
+      followers: Abonné·e·s
+      follows: Abonnements
+      header: Entête
+      inbox_url: URL d’entrée
+      invite_request_text: Raisons de l’adhésion
+      invited_by: Invité par
+      ip: Adresse IP
+      joined: Inscrit·e depuis
+      location:
+        all: Tous
+        local: Local
+        remote: Distant
+        title: Situation
+      login_status: Statut de connexion
+      media_attachments: Fichiers médias
+      memorialize: Ériger en mémorial
+      memorialized: Compte érigé en mémorial
+      memorialized_msg: Transformation réussie de %{username} en un compte mémorial
+      moderation:
+        active: Actifs
+        all: Tous
+        pending: En cours de traitement
+        silenced: Limité
+        suspended: Suspendus
+        title: Modération
+      moderation_notes: Notes de modération
+      most_recent_activity: Dernière activité
+      most_recent_ip: Adresse IP la plus récente
+      no_account_selected: Aucun compte n’a été modifié, car aucun n’a été sélectionné
+      no_limits_imposed: Aucune limite imposée
+      no_role_assigned: Aucun rôle assigné
+      not_subscribed: Non abonné
+      pending: En attente d’approbation
+      perform_full_suspension: Suspendre
+      previous_strikes: Sanctions précédentes
+      previous_strikes_description_html:
+        one: Ce compte a reçu <strong>%{count}</strong> sanction.
+        other: Ce compte a reçu <strong>%{count}</strong> sanctions.
+      promote: Promouvoir
+      protocol: Protocole
+      public: Publique
+      push_subscription_expires: Expiration de l’abonnement PuSH
+      redownload: Rafraîchir le profil
+      redownloaded_msg: Le profil de %{username} a été actualisé avec succès depuis l’origine
+      reject: Rejeter
+      rejected_msg: La demande d’inscription de %{username} a été rejetée avec succès
+      remove_avatar: Supprimer l’avatar
+      remove_header: Supprimer l’entête
+      removed_avatar_msg: L’avatar de %{username} a été supprimé avec succès
+      removed_header_msg: L’image d’en-tête de %{username} a été supprimée avec succès
+      resend_confirmation:
+        already_confirmed: Cet·te utilisateur·rice est déjà confirmé·e
+        send: Renvoyer un courriel de confirmation
+        success: Courriel de confirmation envoyé avec succès !
+      reset: Réinitialiser
+      reset_password: Réinitialiser le mot de passe
+      resubscribe: Se réabonner
+      role: Rôle
+      search: Rechercher
+      search_same_email_domain: Autres utilisateurs·trices avec le même domaine de courriel
+      search_same_ip: Autres utilisateur·rice·s avec la même IP
+      security_measures:
+        only_password: Mot de passe uniquement
+        password_and_2fa: Mot de passe et 2FA
+      sensitive: Sensible
+      sensitized: marqué comme sensible
+      shared_inbox_url: URL de la boite de réception partagée
+      show:
+        created_reports: Signalements faits
+        targeted_reports: Signalés par d’autres
+      silence: Limiter
+      silenced: Limité
+      statuses: Messages
+      strikes: Punitions précédentes
+      subscribe: S’abonner
+      suspend: Suspendre
+      suspended: Suspendu
+      suspension_irreversible: Les données de ce compte ont été irréversiblement supprimées. Vous pouvez annuler la suspension du compte pour le rendre utilisable, mais il ne récupérera aucune donnée qu’il avait auparavant.
+      suspension_reversible_hint_html: Le compte a été suspendu et les données seront complètement supprimées le %{date}. D’ici là, le compte peut être restauré sans aucun effet néfaste. Si vous souhaitez supprimer toutes les données du compte immédiatement, vous pouvez le faire ci-dessous.
+      title: Comptes
+      unblock_email: Débloquer l'adresse courriel
+      unblocked_email_msg: L'adresse courriel de %{username} a été débloquée avec succès
+      unconfirmed_email: Courriel non confirmé
+      undo_sensitized: Annuler sensible
+      undo_silenced: Annuler la limitation
+      undo_suspension: Annuler la suspension
+      unsilenced_msg: La limitation du compte de %{username} a été annulée avec succès
+      unsubscribe: Se désabonner
+      unsuspended_msg: Le compte de %{username} a été réactivé avec succès
+      username: Nom d’utilisateur·ice
+      view_domain: Voir le résumé du domaine
+      warn: Avertissement
+      web: Web
+      whitelisted: Sur liste blanche
+    action_logs:
+      action_types:
+        approve_appeal: Approuver l'appel
+        approve_user: Approuver l’utilisateur
+        assigned_to_self_report: Affecter le signalement
+        change_email_user: Modifier le courriel pour ce compte
+        change_role_user: Changer le rôle de l’utilisateur·rice
+        confirm_user: Confirmer l’utilisateur
+        create_account_warning: Créer une alerte
+        create_announcement: Créer une annonce
+        create_canonical_email_block: Créer un blocage de domaine de courriel
+        create_custom_emoji: Créer des émojis personnalisés
+        create_domain_allow: Créer un domaine autorisé
+        create_domain_block: Créer un blocage de domaine
+        create_email_domain_block: Créer un blocage de domaine de courriel
+        create_ip_block: Créer une règle IP
+        create_unavailable_domain: Créer un domaine indisponible
+        create_user_role: Créer le rôle
+        demote_user: Rétrograder l’utilisateur·ice
+        destroy_announcement: Supprimer l’annonce
+        destroy_canonical_email_block: Supprimer le blocage de domaine de courriel
+        destroy_custom_emoji: Supprimer des émojis personnalisés
+        destroy_domain_allow: Supprimer le domaine autorisé
+        destroy_domain_block: Supprimer le blocage de domaine
+        destroy_email_domain_block: Supprimer le blocage de domaine de courriel
+        destroy_instance: Purge du domaine
+        destroy_ip_block: Supprimer la règle IP
+        destroy_status: Supprimer le message
+        destroy_unavailable_domain: Supprimer le domaine indisponible
+        destroy_user_role: Détruire le rôle
+        disable_2fa_user: Désactiver l’A2F
+        disable_custom_emoji: Désactiver les émojis personnalisés
+        disable_sign_in_token_auth_user: Désactiver l'authentification basée sur les jetons envoyés par courriel pour l'utilisateur·rice
+        disable_user: Désactiver le compte
+        enable_custom_emoji: Activer les émojis personnalisées
+        enable_sign_in_token_auth_user: Activer l'authentification basée sur les jetons envoyés par courriel pour l'utilisateur·rice
+        enable_user: Activer l’utilisateur
+        memorialize_account: Ériger en mémorial
+        promote_user: Promouvoir l’utilisateur
+        reject_appeal: Rejeter l'appel
+        reject_user: Rejeter l’utilisateur
+        remove_avatar_user: Supprimer l’avatar
+        reopen_report: Rouvrir le signalement
+        resend_user: Renvoyer l'e-mail de confirmation
+        reset_password_user: Réinitialiser le mot de passe
+        resolve_report: Résoudre le signalement
+        sensitive_account: Marquer les médias de votre compte comme sensibles
+        silence_account: Limiter le compte
+        suspend_account: Suspendre le compte
+        unassigned_report: Ne plus assigner le signalement
+        unblock_email_account: Débloquer l'adresse courriel
+        unsensitive_account: Ne pas marquer les médias de votre compte comme sensibles
+        unsilence_account: Annuler la limitation du compte
+        unsuspend_account: Annuler la suspension du compte
+        update_announcement: Modifier l’annonce
+        update_custom_emoji: Mettre à jour les émojis personnalisés
+        update_domain_block: Mettre à jour le blocage de domaine
+        update_ip_block: Mettre à jour la règle IP
+        update_status: Mettre à jour le message
+        update_user_role: Mettre à jour le rôle
+      actions:
+        approve_appeal_html: "%{name} a approuvé l'appel de la décision de modération émis par %{target}"
+        approve_user_html: "%{name} a approuvé l’inscription de %{target}"
+        assigned_to_self_report_html: "%{name} s’est assigné·e le signalement de %{target}"
+        change_email_user_html: "%{name} a modifié l'adresse de courriel de l'utilisateur·rice %{target}"
+        change_role_user_html: "%{name} a changé le rôle de %{target}"
+        confirm_user_html: "%{name} a confirmé l'adresse courriel de l'utilisateur %{target}"
+        create_account_warning_html: "%{name} a envoyé un avertissement à %{target}"
+        create_announcement_html: "%{name} a créé une nouvelle annonce %{target}"
+        create_canonical_email_block_html: "%{name} a bloqué l’e-mail avec le hachage %{target}"
+        create_custom_emoji_html: "%{name} a téléversé un nouvel émoji %{target}"
+        create_domain_allow_html: "%{name} a autorisé la fédération avec le domaine %{target}"
+        create_domain_block_html: "%{name} a bloqué le domaine %{target}"
+        create_email_domain_block_html: "%{name} a bloqué de domaine de courriel %{target}"
+        create_ip_block_html: "%{name} a créé une règle pour l'IP %{target}"
+        create_unavailable_domain_html: "%{name} a arrêté la livraison vers le domaine %{target}"
+        create_user_role_html: "%{name} a créé le rôle %{target}"
+        demote_user_html: "%{name} a rétrogradé l'utilisateur·rice %{target}"
+        destroy_announcement_html: "%{name} a supprimé l'annonce %{target}"
+        destroy_canonical_email_block_html: "%{name} a débloqué l'email avec le hash %{target}"
+        destroy_custom_emoji_html: "%{name} a supprimé l'émoji %{target}"
+        destroy_domain_allow_html: "%{name} a rejeté la fédération avec le domaine %{target}"
+        destroy_domain_block_html: "%{name} a débloqué le domaine %{target}"
+        destroy_email_domain_block_html: "%{name} a débloqué le domaine de courriel %{target}"
+        destroy_instance_html: "%{name} a purgé le domaine %{target}"
+        destroy_ip_block_html: "%{name} a supprimé la règle pour l'IP %{target}"
+        destroy_status_html: "%{name} a supprimé le message de %{target}"
+        destroy_unavailable_domain_html: "%{name} a repris la livraison au domaine %{target}"
+        destroy_user_role_html: "%{name} a supprimé le rôle %{target}"
+        disable_2fa_user_html: "%{name} a désactivé l'authentification à deux facteurs pour l'utilisateur·rice %{target}"
+        disable_custom_emoji_html: "%{name} a désactivé l'émoji %{target}"
+        disable_sign_in_token_auth_user_html: "%{name} a désactivé l'authentification basée sur les jetons envoyés par courriel pour %{target}"
+        disable_user_html: "%{name} a désactivé la connexion de l'utilisateur·rice %{target}"
+        enable_custom_emoji_html: "%{name} a activé l'émoji %{target}"
+        enable_sign_in_token_auth_user_html: "%{name} a activé l'authentification basée sur les jetons envoyés par courriel pour %{target}"
+        enable_user_html: "%{name} a activé la connexion de l'utilisateur·rice %{target}"
+        memorialize_account_html: "%{name} a converti le compte de %{target} en un mémorial"
+        promote_user_html: "%{name} a promu l'utilisateur·rice %{target}"
+        reject_appeal_html: "%{name} a rejeté l'appel de la décision de modération émis par %{target}"
+        reject_user_html: "%{name} a rejeté l’inscription de %{target}"
+        remove_avatar_user_html: "%{name} a supprimé l'avatar de %{target}"
+        reopen_report_html: "%{name} a rouvert le signalement %{target}"
+        resend_user_html: "%{name} a renvoyé l'e-mail de confirmation pour %{target}"
+        reset_password_user_html: "%{name} a réinitialisé le mot de passe de l'utilisateur·rice %{target}"
+        resolve_report_html: "%{name} a résolu le signalement %{target}"
+        sensitive_account_html: "%{name} a marqué le média de %{target} comme sensible"
+        silence_account_html: "%{name} a limité le compte de %{target}"
+        suspend_account_html: "%{name} a suspendu le compte de %{target}"
+        unassigned_report_html: "%{name} a désassigné le signalement %{target}"
+        unblock_email_account_html: "%{name} a débloqué l'adresse courriel de %{target}"
+        unsensitive_account_html: "%{name} a enlevé le marquage comme sensible du média de %{target}"
+        unsilence_account_html: "%{name} a annulé la limitation du compte de %{target}"
+        unsuspend_account_html: "%{name} a réactivé le compte de %{target}"
+        update_announcement_html: "%{name} a mis à jour l'annonce %{target}"
+        update_custom_emoji_html: "%{name} a mis à jour l'émoji %{target}"
+        update_domain_block_html: "%{name} a mis à jour le blocage de domaine pour %{target}"
+        update_ip_block_html: "%{name} a modifié la règle pour l'IP %{target}"
+        update_status_html: "%{name} a mis à jour le message de %{target}"
+        update_user_role_html: "%{name} a changé le rôle %{target}"
+      deleted_account: compte supprimé
+      empty: Aucun journal trouvé.
+      filter_by_action: Filtrer par action
+      filter_by_user: Filtrer par utilisateur·ice
+      title: Journal d’audit
+    announcements:
+      destroyed_msg: Annonce supprimée avec succès !
+      edit:
+        title: Modifier l’annonce
+      empty: Aucune annonce trouvée.
+      live: En direct
+      new:
+        create: Créer une annonce
+        title: Nouvelle annonce
+      publish: Publier
+      published_msg: Annonce publiée avec succès !
+      scheduled_for: Planifiée pour %{time}
+      scheduled_msg: Annonce planifiée pour publication !
+      title: Annonces
+      unpublish: Retirer l'annonce
+      unpublished_msg: L’annonce a été dépubliée avec succès !
+      updated_msg: L’annonce a été mise à jour avec succès !
+    custom_emojis:
+      assign_category: Attribuer une catégorie
+      by_domain: Domaine
+      copied_msg: Copie locale de l’émoji créée avec succès
+      copy: Copier
+      copy_failed_msg: Impossible de faire une copie locale de cet émoji
+      create_new_category: Créer une nouvelle catégorie
+      created_msg: Émoji créé avec succès !
+      delete: Supprimer
+      destroyed_msg: Émoji supprimé avec succès !
+      disable: Désactiver
+      disabled: Désactivé
+      disabled_msg: Émoji désactivé avec succès
+      emoji: Émoji
+      enable: Activer
+      enabled: Activé
+      enabled_msg: Émoji activé avec succès
+      image_hint: PNG ou GIF de moins de %{size}
+      list: Lister
+      listed: Listé
+      new:
+        title: Ajouter un nouvel émoji personnalisé
+      no_emoji_selected: Aucun émoji n’a été modifié, car aucun n’a été sélectionné
+      not_permitted: Vous n’êtes pas autorisé à effectuer cette action
+      overwrite: Écraser
+      shortcode: Raccourci
+      shortcode_hint: Au moins deux caractères, seulement des caractères alphanumériques ou des tirets bas
+      title: Émojis personnalisés
+      uncategorized: Non catégorisé
+      unlist: Délister
+      unlisted: Délisté
+      update_failed_msg: Cet émoji n'a pas pu être mis à jour
+      updated_msg: Émoji mis à jour avec succès !
+      upload: Téléverser
+    dashboard:
+      active_users: utilisateurs actifs
+      interactions: interactions
+      media_storage: Stockage des médias
+      new_users: nouveaux utilisateurs
+      opened_reports: rapports ouverts
+      pending_appeals_html:
+        one: "<strong>%{count}</strong> appel en attente"
+        other: "<strong>%{count}</strong> appels en attente"
+      pending_reports_html:
+        one: "<strong>%{count}</strong> rapport en attente"
+        other: "<strong>%{count}</strong> rapports en attente"
+      pending_tags_html:
+        one: "<strong>%{count}</strong> hashtag en attente"
+        other: "<strong>%{count}</strong> hashtags en attente"
+      pending_users_html:
+        one: "<strong>%{count}</strong> utilisateur·rice en attente"
+        other: "<strong>%{count}</strong> utilisateur·rice·s en attente"
+      resolved_reports: rapports résolus
+      software: Logiciel
+      sources: Sources d'inscription
+      space: Espace utilisé
+      title: Tableau de bord
+      top_languages: Langues les plus actives
+      top_servers: Serveurs les plus actifs
+      website: Site Web
+    disputes:
+      appeals:
+        empty: Aucun appel trouvé.
+        title: Appels
+    domain_allows:
+      add_new: Mettre le domaine sur liste sur blanche
+      created_msg: Ce domaine a été ajouté à la liste blanche avec succès
+      destroyed_msg: Le domaine a été supprimé de la liste blanche
+      undo: Supprimer de la liste blanche
+    domain_blocks:
+      add_new: Bloquer un nouveau domaine
+      created_msg: Le blocage de domaine est désormais activé
+      destroyed_msg: Le blocage de domaine a été désactivé
+      domain: Domaine
+      edit: Modifier le blocage de domaine
+      existing_domain_block: Vous avez déjà imposé des limites plus strictes à %{name}.
+      existing_domain_block_html: Vous avez déjà imposé des limites plus strictes à %{name}, vous devez d’abord le/la <a href="%{unblock_url}">débloquer</a>.
+      new:
+        create: Créer le blocage
+        hint: Le blocage de domaine n’empêchera pas la création de comptes dans la base de données, mais il appliquera automatiquement et rétrospectivement des méthodes de modération spécifiques sur ces comptes.
+        severity:
+          noop: Aucune
+          suspend: Suspendre
+        title: Nouveau blocage de domaine
+      not_permitted: Vous n’êtes pas autorisé à effectuer cette action
+      obfuscate: Obfusquer le nom de domaine
+      obfuscate_hint: Obfusquer partiellement le nom de domaine dans la liste si la publication de la liste des limitations de domaine est activée
+      private_comment: Commentaire privé
+      private_comment_hint: Commentaire sur cette limitation de domaine pour informer en interne les modérateurs.
+      public_comment: Commentaire public
+      public_comment_hint: Commentaire sur cette limitation de domaine pour le grand public, si l'affichage public de la liste des limitations de domaine est activé.
+      reject_media: Rejeter les fichiers média
+      reject_media_hint: Supprime localement les fichiers média stockés et refuse d’en télécharger ultérieurement. Ne concerne pas les suspensions
+      reject_reports: Rejeter les signalements
+      reject_reports_hint: Ignorez tous les signalements provenant de ce domaine. Ne concerne pas les suspensions
+      undo: Annuler le blocage de domaine
+      view: Afficher les blocages de domaines
+    email_domain_blocks:
+      add_new: Ajouter
+      attempts_over_week:
+        one: "%{count} tentative au cours de la dernière semaine"
+        other: "%{count} tentatives au cours de la dernière semaine"
+      created_msg: Le blocage de domaine de courriel est désormais activé
+      delete: Supprimer
+      dns:
+        types:
+          mx: Enregistrement MX
+      domain: Domaine
+      new:
+        create: Créer le blocage
+        resolve: Résoudre le domaine
+        title: Nouveau blocage de domaine de courriel
+      no_email_domain_block_selected: Aucun blocage de domaine de courriel n'a été modifié car aucun n'a été sélectionné
+      resolved_dns_records_hint_html: Le nom de domaine est relié aux domaines MX suivants, qui ont la responsabilité ultime d'accepter les courriels. Bloquer un domaine MX empêchera les inscriptions à partir de toute adresse courriel utilisant le même domaine MX, même si le nom de domaine affiché est différent. <strong> Veillez à ne pas bloquer les fournisseurs de messagerie d'envergure.</strong>
+      resolved_through_html: Résolu par %{domain}
+      title: Blocage de domaines de courriel
+    follow_recommendations:
+      description_html: "<strong>Les recommandations d'abonnement aident les nouvelles personnes à trouver rapidement du contenu intéressant</strong>. Si un·e utilisateur·rice n'a pas assez interagi avec les autres pour avoir des recommandations personnalisées, ces comptes sont alors recommandés. La sélection est mise à jour quotidiennement depuis un mélange de comptes ayant le plus d'interactions récentes et le plus grand nombre d'abonné·e·s locaux pour une langue donnée."
+      language: Pour la langue
+      status: État
+      suppress: Supprimer les recommandations d'abonnement
+      suppressed: Supprimée
+      title: Recommandations d'abonnement
+      unsuppress: Rétablir les recommandations d'abonnement
+    instances:
+      availability:
+        description_html:
+          one: Si la livraison au domaine échoue pendant <strong>%{count} jour</strong>, aucune autre tentative de livraison ne sera faite à moins qu'une livraison <em>depuis</em> le domaine ne soit reçue.
+          other: Si la livraison au domaine échoue pendant <strong>%{count} jours différents</strong>, aucune autre tentative de livraison ne sera faite à moins qu'une livraison <em>depuis</em> le domaine ne soit reçue.
+        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
+      by_domain: Domaine
+      confirm_purge: Êtes-vous sûr de vouloir supprimer définitivement les données de ce domaine ?
+      content_policies:
+        comment: Note interne
+        description_html: Vous pouvez définir des politiques de contenu qui seront appliquées à tous les comptes de ce domaine et à tous ses sous-domaines.
+        policies:
+          reject_media: Rejeter les médias
+          reject_reports: Rejeter les signalements
+          silence: Limiter
+          suspend: Suspendre
+        policy: Règlement
+        reason: Raison publique
+        title: Politiques de contenu
+      dashboard:
+        instance_accounts_dimension: Comptes les plus suivis
+        instance_accounts_measure: comptes stockés
+        instance_followers_measure: nos abonné⋅e⋅s là-bas
+        instance_follows_measure: leurs abonné⋅e⋅s ici
+        instance_languages_dimension: Langues les plus utilisées
+        instance_media_attachments_measure: fichiers médias stockés
+        instance_reports_measure: signalements mentionnant l'instance
+        instance_statuses_measure: messages stockés
+      delivery:
+        all: Tout
+        clear: Effacer les erreurs de livraison
+        failing: Échouant
+        restart: Redémarrer la livraison
+        stop: Arrêter la livraison
+        unavailable: Indisponible
+      delivery_available: Livraison disponible
+      delivery_error_days: Jours d'erreur de livraison
+      delivery_error_hint: Si la livraison n'est pas possible pendant %{count} jours, elle sera automatiquement marquée comme non livrable.
+      destroyed_msg: Les données de %{domain} sont maintenant en file d'attente pour une suppression imminente.
+      empty: Aucun domaine trouvé.
+      known_accounts:
+        one: "%{count} compte connu"
+        other: "%{count} comptes connus"
+      moderation:
+        all: Tout
+        limited: Limité
+        title: Modération
+      private_comment: Commentaire privé
+      public_comment: Commentaire public
+      purge: Purge
+      purge_description_html: Si vous pensez que ce domaine est définitivement hors service, vous pouvez supprimer de votre espace de stockage toutes les traces des comptes de ce domaine et les données associées. Cela peut prendre du temps.
+      title: Fédération
+      total_blocked_by_us: Bloqués par nous
+      total_followed_by_them: Suivi par eux
+      total_followed_by_us: Suivi par nous
+      total_reported: Signalements à leur sujet
+      total_storage: Attachements de média
+      totals_time_period_hint_html: Les totaux affichés ci-dessous incluent des données sans limite de temps.
+    invites:
+      deactivate_all: Tout désactiver
+      filter:
+        all: Tout
+        available: Disponible
+        expired: Expiré
+        title: Filtre
+      title: Invitations
+    ip_blocks:
+      add_new: Créer une règle
+      created_msg: Nouvelle règle IP ajoutée avec succès
+      delete: Supprimer
+      expires_in:
+        '1209600': 2 semaines
+        '15778476': 6 mois
+        '2629746': 1 mois
+        '31556952': 1 an
+        '86400': 1 jour
+        '94670856': 3 ans
+      new:
+        title: Créer une nouvelle règle IP
+      no_ip_block_selected: Aucune règle IP n’a été modifiée car aucune n’a été sélectionnée
+      title: Règles IP
+    relationships:
+      title: Relations de %{acct}
+    relays:
+      add_new: Ajouter un nouveau relais
+      delete: Supprimer
+      description_html: Un <strong>relai de fédération</strong> est un serveur intermédiaire qui échange de grandes quantités de messages publics entre les serveurs qui s’inscrivent et ceux qui publient dessus. <strong>Il peut aider les petits et moyens serveurs à découvrir du contenu sur le fediverse</strong>, ce qui normalement nécessiterait que leurs membres suivent des gens inscrits sur d’autres serveurs.
+      disable: Désactiver
+      disabled: Désactivé
+      enable: Activer
+      enable_hint: Une fois activé, votre serveur souscrira à tous les messages publics de ce relais et y enverra ses propres messages publics.
+      enabled: Activé
+      inbox_url: URL du relais
+      pending: En attente de l’approbation du relai
+      save_and_enable: Sauvegarder et activer
+      setup: Paramétrer une connexion de relais
+      signatures_not_enabled: Les relais ne fonctionneront pas correctement lorsque le mode sécurisé ou le mode liste blanche est activé
+      status: Statut
+      title: Relais
+    report_notes:
+      created_msg: Note de signalement créée avec succès !
+      destroyed_msg: Note de signalement effacée avec succès !
+      today_at: Aujourd'hui à %{time}
+    reports:
+      account:
+        notes:
+          one: "%{count} note"
+          other: "%{count} notes"
+      action_log: Journal d’audit
+      action_taken_by: Intervention de
+      actions:
+        delete_description_html: Les messages signalés seront supprimés et une sanction sera enregistrée pour vous aider à prendre les mesures appropriées en cas d'infractions futures par le même compte.
+        mark_as_sensitive_description_html: Les médias des messages signalés seront marqués comme sensibles et une sanction sera enregistrée pour vous aider à prendre les mesures appropriées en cas d'infractions futures par le même compte.
+        other_description_html: Voir plus d'options pour contrôler le comportement du compte et personnaliser la communication vers le compte signalé.
+        resolve_description_html: Aucune mesure ne sera prise contre le compte signalé, aucune sanction ne sera enregistrée et le sigalement sera clôturé.
+        silence_description_html: Le profil ne sera visible que pour ceux qui le suivent déjà ou le consultent manuellement, ce qui limite considérablement sa portée. Peut toujours être restauré.
+        suspend_description_html: Le profil et tout son contenu deviendront inaccessibles jusqu'à ce qu'il soit éventuellement supprimé. Interagir avec le compte sera impossible. Réversible dans les 30 jours.
+      actions_description_html: Décidez des mesures à prendre pour résoudre ce signalement. Si vous prenez des mesures punitives contre le compte signalé, une notification sera envoyée par e-mail, sauf si la catégorie <strong>Spam</strong> est sélectionnée.
+      add_to_report: Ajouter davantage au rapport
+      are_you_sure: Voulez-vous vraiment faire ça ?
+      assign_to_self: Me l’assigner
+      assigned: Modérateur assigné
+      by_target_domain: Domaine du compte signalé
+      category: Catégorie
+      category_description_html: La raison pour laquelle ce compte et/ou ce contenu a été signalé sera citée dans la communication avec le compte signalé
+      comment:
+        none: Aucun
+      comment_description_html: 'Pour fournir plus d''informations, %{name} a écrit :'
+      created_at: Signalé
+      delete_and_resolve: Supprimer les messages
+      forwarded: Transféré
+      forwarded_to: Transféré à %{domain}
+      mark_as_resolved: Marquer comme résolu
+      mark_as_sensitive: Marquer comme sensible
+      mark_as_unresolved: Marquer comme non-résolu
+      no_one_assigned: Personne
+      notes:
+        create: Ajouter une note
+        create_and_resolve: Résoudre avec une note
+        create_and_unresolve: Ré-ouvrir avec une note
+        delete: Supprimer
+        placeholder: Décrivez quelles actions ont été prises, ou toute autre mise à jour…
+        title: Remarques
+      notes_description_html: Voir et laisser des notes aux autres modérateurs et à votre futur moi-même
+      quick_actions_description_html: 'Faites une action rapide ou faites défiler vers le bas pour voir le contenu signalé :'
+      remote_user_placeholder: l'utilisateur·rice distant·e de %{instance}
+      reopen: Ré-ouvrir le signalement
+      report: 'Signalement #%{id}'
+      reported_account: Compte signalé
+      reported_by: Signalé par
+      resolved: Résolus
+      resolved_msg: Signalement résolu avec succès !
+      skip_to_actions: Passer aux actions
+      status: Statut
+      statuses: Contenu signalé
+      statuses_description_html: Le contenu offensant sera cité dans la communication avec le compte signalé
+      target_origin: Origine du compte signalé
+      title: Signalements
+      unassign: Dés-assigner
+      unresolved: Non résolus
+      updated_at: Mis à jour
+      view_profile: Voir le profil
+    roles:
+      add_new: Ajouter un rôle
+      assigned_users:
+        one: "%{count} utilisateur·rice"
+        other: "%{count} utilisateur·rice·s"
+      categories:
+        administration: Administration
+        devops: DevOps
+        invites: Invitations
+        moderation: Modération
+        special: Spécial
+      delete: Supprimer
+      description_html: Les <strong>rôles utilisateur</strong> vous permettent de personnaliser les fonctions et les zones de Mastodon auxquelles vos utilisateur⋅rice⋅s peuvent accéder.
+      edit: Modifier le rôle '%{name}'
+      everyone: Autorisations par défaut
+      everyone_full_description_html: Ceci est le <strong>rôle de base</strong> qui impacte <strong>tou⋅te⋅s les utilisateur⋅rice⋅s</strong>, même celleux sans rôle assigné. Tous les autres rôles héritent des autorisations de celui-ci.
+      permissions_count:
+        one: "%{count} autorisation"
+        other: "%{count} autorisations"
+      privileges:
+        administrator: Administrateur·rice
+        administrator_description: Les utilisateur⋅rice⋅s ayant cette autorisation pourront contourner toutes les autorisations
+        delete_user_data: Supprimer les données de l'utilisateur⋅rice
+        delete_user_data_description: Permet aux utilisateur⋅rice⋅s de supprimer sans délai les données des autres utilisateur⋅rice⋅s
+        invite_users: Inviter des utilisateur⋅rice⋅s
+        invite_users_description: Permet aux utilisateur⋅rice⋅s d'inviter de nouvelles personnes sur le serveur
+        manage_announcements: Gérer les annonces
+        manage_announcements_description: Permet aux utilisateur⋅rice⋅s de gérer les annonces sur le serveur
+        manage_appeals: Gérer les contestations
+        manage_appeals_description: Permet aux utilisateur⋅rice⋅s d'examiner les appels contre les actions de modération
+        manage_blocks: Gérer les blocages
+        manage_blocks_description: Permet aux utilisateur⋅rice⋅s de bloquer des fournisseurs de courriel et des adresses IP
+        manage_custom_emojis: Gérer les émojis personnalisés
+        manage_custom_emojis_description: Permet aux utilisateur⋅rice⋅s de gérer les émoticônes personnalisées sur le serveur
+        manage_federation: Gérer de la féderation
+        manage_federation_description: Permet aux utilisateur⋅rice⋅s de bloquer ou d'autoriser la fédération avec d'autres domaines, et de contrôler la capacité de livraison
+        manage_invites: Gérer les invitations
+        manage_invites_description: Permet aux utilisateur⋅rice⋅s de parcourir et de désactiver les liens d'invitation
+        manage_reports: Gérer les rapports
+        manage_reports_description: Permet aux utilisateur⋅rice⋅s d'examiner les signalements et d'effectuer des actions de modération en conséquence
+        manage_roles: Gérer les rôles
+        manage_roles_description: Permet aux utilisateur⋅rice⋅s de gérer et d'assigner des rôles inférieurs au leur
+        manage_rules: Gérer les règles
+        manage_rules_description: Permet aux utilisateur·rice·s de modifier les règles du serveur
+        manage_settings: Gérer les paramètres
+        manage_settings_description: Permet aux utilisateur·rice·s de modifier les paramètres du site
+        manage_taxonomies: Gérer les taxonomies
+        manage_taxonomies_description: Permet aux utilisateur⋅rice⋅s d'examiner les contenus tendance et de mettre à jour les paramètres des hashtags
+        manage_user_access: Gérer l'accès utilisateur
+        manage_user_access_description: Permet aux utilisateur⋅rice⋅s de désactiver l'authentification à deux facteurs, de modifier l'adresse courriel et de réinitialiser le mot de passe des autres utilisateur⋅rice⋅s
+        manage_users: Gérer les utilisateur·rice·s
+        manage_users_description: Permet aux utilisateur⋅rice⋅s de voir les détails des autres utilisateur⋅rice⋅s et d'effectuer des actions de modération en conséquence
+        manage_webhooks: Gérer les points d’ancrage web
+        manage_webhooks_description: Permet aux utilisateur⋅rice⋅s de configurer des webhooks pour des événements d'administration
+        view_audit_log: Afficher le journal d'audit
+        view_audit_log_description: Permet aux utilisateur⋅rice⋅s de voir l'historique des opérations d'administration sur le serveur
+        view_dashboard: Voir le tableau de bord
+        view_dashboard_description: Permet aux utilisateur⋅rice⋅s d'accéder au tableau de bord et à diverses statistiques
+        view_devops: DevOps
+        view_devops_description: Permet aux utilisateur⋅rice⋅s d'accéder aux tableaux de bord Sidekiq et pgHero
+      title: Rôles
+    rules:
+      add_new: Ajouter une règle
+      delete: Supprimer
+      description_html: Bien que la plupart des gens prétende avoir lu les conditions d'utilisation avant de les accepter, généralement les utilisateur·rice·s ne les lisent vraiment que lorsque un problème apparaît. <strong>Pour faciliter la visualisation des règles de votre serveur en un seul coup d’œil, présentez-les sous la forme d'une liste à puces !</strong> Essayez de garder chacune des règles simple et concise, mais faites attention à ne pas non plus les diviser en de trop nombreux éléments distincts.
+      edit: Modifier la règle
+      empty: Aucune règle de serveur n'a été définie pour l'instant.
+      title: Règles du serveur
+    settings:
+      about:
+        manage_rules: Gérer les règles du serveur
+        preamble: Fournissez des informations détaillées sur le fonctionnement, la modération et le financement du serveur.
+        rules_hint: Il y a un espace dédié pour les règles auxquelles vos utilisateurs sont invités à adhérer.
+        title: À propos
+      appearance:
+        preamble: Personnaliser l'interface web de Mastodon.
+        title: Apparence
+      branding:
+        preamble: L'image de marque de votre serveur la différencie des autres serveurs du réseau. Ces informations peuvent être affichées dans nombre d'environnements, tels que l'interface web de Mastodon, les applications natives, dans les aperçus de liens sur d'autres sites Web et dans les applications de messagerie, etc. C'est pourquoi il est préférable de garder ces informations claires, courtes et concises.
+        title: Thème
+      content_retention:
+        preamble: Contrôle comment le contenu créé par les utilisateurs est enregistré et stocké dans Mastodon.
+        title: Rétention du contenu
+      discovery:
+        follow_recommendations: Suivre les recommandations
+        preamble: Faire apparaître un contenu intéressant est essentiel pour interagir avec de nouveaux utilisateurs qui ne connaissent peut-être personne sur Mastodonte. Contrôlez le fonctionnement des différentes fonctionnalités de découverte sur votre serveur.
+        profile_directory: Annuaire des profils
+        public_timelines: Fils publics
+        title: Découverte
+        trends: Tendances
+      domain_blocks:
+        all: À tout le monde
+        disabled: À personne
+        users: Aux utilisateur·rice·s connecté·e·s localement
+      registrations:
+        preamble: Affecte qui peut créer un compte sur votre serveur.
+        title: Inscriptions
+      registrations_mode:
+        modes:
+          approved: Approbation requise pour s’inscrire
+          none: Personne ne peut s’inscrire
+          open: N’importe qui peut s’inscrire
+      title: Paramètres du serveur
+    site_uploads:
+      delete: Supprimer le fichier téléversé
+      destroyed_msg: Téléversement sur le site supprimé avec succès !
+    statuses:
+      account: Auteur·rice
+      application: Application
+      back_to_account: Retour à la page du compte
+      back_to_report: Retour à la page du rapport
+      batch:
+        remove_from_report: Retirer du rapport
+        report: Signalement
+      deleted: Supprimé
+      favourites: Favoris
+      history: Historique de version
+      in_reply_to: Répondre à
+      language: Langue
+      media:
+        title: Médias
+      metadata: Metadonnés
+      no_status_selected: Aucun message n’a été modifié car aucun n’a été sélectionné
+      open: Ouvrir le message
+      original_status: Message original
+      reblogs: Partages
+      status_changed: Publication modifiée
+      title: Messages du compte
+      trending: Tendances
+      visibility: Visibilité
+      with_media: Avec médias
+    strikes:
+      actions:
+        delete_statuses: "%{name} a supprimé les messages de %{target}"
+        disable: "%{name} a gelé le compte de %{target}"
+        mark_statuses_as_sensitive: "%{name} a marqué le message de %{target} comme sensible"
+        none: "%{name} a envoyé un avertissement à %{target}"
+        sensitive: "%{name} a marqué le compte de %{target} comme sensible"
+        silence: "%{name} a limité le compte de %{target}"
+        suspend: "%{name} a suspendu le compte de %{target}"
+      appeal_approved: Appel soumis
+      appeal_pending: Appel en attente
+    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.
+      sidekiq_process_check:
+        message_html: Aucun processus Sidekiq en cours d'exécution pour la/les file(s) d'attente %{value}. Veuillez vérifier votre configuration de Sidekiq
+    tags:
+      review: État du traitement
+      updated_msg: Paramètres du hashtag mis à jour avec succès
+    title: Administration
+    trends:
+      allow: Autoriser
+      approved: Approuvé
+      disallow: Interdire
+      links:
+        allow: Autoriser le lien
+        allow_provider: Autoriser l'éditeur
+        description_html: Ces liens sont actuellement énormément partagés par des comptes dont votre serveur voit les messages. Cela peut aider vos utilisateur⋅rice⋅s à découvrir ce qu'il se passe dans le monde. Aucun lien n'est publiquement affiché tant que vous n'avez pas approuvé le compte qui le publie. Vous pouvez également autoriser ou rejeter les liens individuellement.
+        disallow: Interdire le lien
+        disallow_provider: Interdire l'éditeur
+        no_link_selected: Aucun lien n'a été changé car aucun n'a été sélectionné
+        publishers:
+          no_publisher_selected: Aucun compte publicateur n'a été changé car aucun n'a été sélectionné
+        shared_by_over_week:
+          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
+      only_allowed: Autorisées seulement
+      pending_review: En attente de révision
+      preview_card_providers:
+        allowed: Les liens de cet éditeur peuvent être tendance
+        description_html: Voici les domaines depuis lesquels des liens sont souvent partagés sur votre serveur. Les liens n'apparaîtront pas publiquement dans les tendances à moins que le domaine du lien ne soit approuvé. Votre approbation (ou votre rejet) s'étend aux sous-domaines.
+        rejected: Les liens de cet éditeur ne seront pas considérés tendance
+        title: Éditeurs
+      rejected: Rejeté
+      statuses:
+        allow: Autoriser le message
+        allow_account: Autoriser l'auteur·rice
+        description_html: Voici les messages dont votre serveur a connaissance qui sont beaucoup partagés et mis en favoris en ce moment. Cela peut aider vos utilisateur⋅rice⋅s, néophytes comme aguerri⋅e⋅s, à trouver plus de comptes à suivre. Aucun message n'est publiquement affiché tant que vous n'en avez pas approuvé l'auteur⋅rice, et seulement si icellui permet que son compte soit suggéré aux autres. Vous pouvez également autoriser ou rejeter les messages individuellement.
+        disallow: Proscrire le message
+        disallow_account: Proscrire l'auteur·rice
+        no_status_selected: Aucune publication en tendance n'a été changée car aucune n'a été sélectionnée
+        not_discoverable: L'auteur⋅rice n'a pas choisi de pouvoir être découvert⋅e
+        shared_by:
+          one: Partagé ou ajouté aux favoris une fois
+          other: Partagé et ajouté aux favoris %{friendly_count} fois
+        title: Messages tendance
+      tags:
+        current_score: Score actuel %{score}
+        dashboard:
+          tag_accounts_measure: utilisations uniques
+          tag_languages_dimension: Langues principales
+          tag_servers_dimension: Meilleurs serveurs
+          tag_servers_measure: différents serveurs
+          tag_uses_measure: utilisations totales
+        description_html: Ces hashtags apparaissent actuellement dans de nombreux messages que votre serveur voit. Cela peut aider vos utilisateur⋅rice⋅s à découvrir les sujets dont les gens parlent le plus en ce moment. Aucun hashtag n'est publiquement affiché tant que vous ne l'avez pas approuvé.
+        listable: Peut être suggéré
+        no_tag_selected: Aucun tag n'a été changé car aucun n'a été sélectionné
+        not_listable: Ne sera pas suggéré
+        not_trendable: N'apparaîtra pas sous les tendances
+        not_usable: Ne peut être utilisé
+        peaked_on_and_decaying: A atteint son maximum le %{date}, maintenant en déclin
+        title: Hashtags tendance
+        trendable: Peut apparaître sous les tendances
+        trending_rank: 'Tendance #%{rank}'
+        usable: Peut être utilisé
+        usage_comparison: Utilisé %{today} fois aujourd'hui, comparé à %{yesterday} hier
+        used_by_over_week:
+          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
+      trending: Tendances
+    warning_presets:
+      add_new: Ajouter un nouveau
+      delete: Supprimer
+      edit_preset: Éditer les avertissements prédéfinis
+      empty: Vous n'avez pas encore créé de paramètres prédéfinis pour les avertissements.
+      title: Gérer les avertissements prédéfinis
+    webhooks:
+      add_new: Ajouter un point de terminaison
+      delete: Supprimer
+      description_html: Un <strong>point d'ancrage web</strong> permet à Mastodon d'envoyer des <strong>notifications en temps réel</strong> concernant des événements sélectionnés vers votre propre application, afin que celle-ci puisse <strong>déclencher automatiquement des réactions</strong>.
+      disable: Désactiver
+      disabled: Désactivé
+      edit: Modifier le point de terminaison
+      empty: Pour l'instant, vous n'avez configuré aucun lien d'ancrage web pour point de terminaison.
+      enable: Activer
+      enabled: Actif
+      enabled_events:
+        one: 1 événement activé
+        other: "%{count} événements activés"
+      events: Événements
+      new: Nouveau point d’ancrage web
+      rotate_secret: Effectuer une rotation du secret
+      secret: Jeton de connexion
+      status: État
+      title: Points d’ancrage web
+      webhook: Point d’ancrage web
+  admin_mailer:
+    new_appeal:
+      actions:
+        delete_statuses: effacer les messages
+        disable: geler le compte
+        mark_statuses_as_sensitive: marquer les messages comme sensibles
+        none: un avertissement
+        sensitive: marquer le compte comme sensible
+        silence: limiter le compte
+        suspend: suspendre le compte
+      body: "%{target} fait appel de la décision de modération émise par %{action_taken_by} le %{date} et qui était : %{type}. Cette personne a écrit :"
+      next_steps: Vous pouvez approuver l'appel pour annuler la décision de modération, ou l'ignorer.
+      subject: "%{username} fait appel d'une décision de modération sur %{instance}"
+    new_pending_account:
+      body: Les détails du nouveau compte se trouvent ci-dessous. Vous pouvez approuver ou rejeter cette demande.
+      subject: Nouveau compte à examiner sur %{instance} (%{username})
+    new_report:
+      body: "%{reporter} a signalé %{target}"
+      body_remote: Quelqu’un de %{domain} a signalé %{target}
+      subject: Nouveau signalement sur %{instance} (#%{id})
+    new_trends:
+      body: 'Les éléments suivants doivent être approuvés avant de pouvoir être affichés publiquement :'
+      new_trending_links:
+        title: Liens tendance
+      new_trending_statuses:
+        title: Messages tendance
+      new_trending_tags:
+        no_approved_tags: Il n'y a pas de hashtag tendance approuvé actuellement.
+        requirements: 'N''importe quel élément de la sélection pourrait surpasser le hashtag tendance approuvé n°%{rank}, qui est actuellement #%{lowest_tag_name} avec un résultat de %{lowest_tag_score}.'
+        title: Hashtags tendance
+      subject: Nouvelles tendances à examiner sur %{instance}
+  aliases:
+    add_new: Créer un alias
+    created_msg: Un nouvel alias a été créé avec succès. Vous pouvez maintenant déménager depuis l'ancien compte.
+    deleted_msg: Alias supprimé avec succès. Le déménagement de ce compte vers celui-ci ne sera plus possible.
+    empty: Vous n’avez pas d’alias.
+    hint_html: Si vous voulez déménager d’un autre compte vers celui-ci, vous pouvez créer ici un alias, qui est nécessaire avant de pouvoir migrer les abonné·e·s de l’ancien compte vers celui-ci. Cette action en soi est <strong>inoffensive et réversible</strong>. <strong>La migration du compte est initiée à partir de l’ancien compte</strong>.
+    remove: Détacher l'alias
+  appearance:
+    advanced_web_interface: Interface web avancée
+    advanced_web_interface_hint: 'Si vous voulez utiliser toute la largeur de votre écran, l’interface web avancée vous permet de configurer plusieurs colonnes différentes pour voir autant d’informations que vous le souhaitez en même temps : Accueil, notifications, fil public fédéré, un nombre illimité de listes et hashtags.'
+    animations_and_accessibility: Animations et accessibilité
+    confirmation_dialogs: Dialogues de confirmation
+    discovery: Découverte
+    localization:
+      body: Mastodon est traduit par des volontaires.
+      guide_link: https://fr.crowdin.com/project/mastodon
+      guide_link_text: Tout le monde peut y contribuer.
+    sensitive_content: Contenu sensible
+    toot_layout: Agencement des messages
+  application_mailer:
+    notification_preferences: Modifier les préférences de courriel
+    salutation: "%{name},"
+    settings: 'Changer les préférences courriel : %{link}'
+    view: 'Voir :'
+    view_profile: Voir le profil
+    view_status: Afficher le message
+  applications:
+    created: Application créée avec succès
+    destroyed: Application supprimée avec succès
+    regenerate_token: Régénérer le jeton d’accès
+    token_regenerated: Jeton d’accès régénéré avec succès
+    warning: Soyez prudent·e avec ces données. Ne les partagez pas !
+    your_token: Votre jeton d’accès
+  auth:
+    change_password: Mot de passe
+    delete_account: Supprimer le compte
+    delete_account_html: Si vous désirez supprimer votre compte, vous pouvez <a href="%{path}">cliquer ici</a>. Il vous sera demandé de confirmer cette action.
+    description:
+      prefix_invited_by_user: "@%{name} vous invite à rejoindre ce serveur Mastodon !"
+      prefix_sign_up: Inscrivez-vous aujourd’hui sur Mastodon !
+      suffix: Avec un compte, vous pourrez suivre des gens, publier des statuts et échanger des messages avec les utilisateur·rice·s de n'importe quel serveur Mastodon et bien plus !
+    didnt_get_confirmation: Vous n’avez pas reçu les consignes de confirmation ?
+    dont_have_your_security_key: Vous n'avez pas votre clé de sécurité?
+    forgot_password: Mot de passe oublié ?
+    invalid_reset_password_token: Le lien de réinitialisation du mot de passe est invalide ou a expiré. Merci de réessayer.
+    link_to_otp: Entrez un code à deux facteurs de votre téléphone ou un code de récupération
+    link_to_webauth: Utilisez votre appareil de clé de sécurité
+    log_in_with: Se connecter via
+    login: Se connecter
+    logout: Se déconnecter
+    migrate_account: Déménager vers un compte différent
+    migrate_account_html: Si vous voulez rediriger ce compte vers un autre, vous pouvez le <a href="%{path}">configurer ici</a>.
+    or_log_in_with: Ou authentifiez-vous avec
+    privacy_policy_agreement_html: J’ai lu et j’accepte la <a href="%{privacy_policy_path}" target="_blank">politique de confidentialité</a>
+    providers:
+      cas: CAS
+      saml: SAML
+    register: S’inscrire
+    registration_closed: "%{instance} a désactivé les inscriptions"
+    resend_confirmation: Envoyer à nouveau les consignes de confirmation
+    reset_password: Réinitialiser le mot de passe
+    rules:
+      preamble: Celles-ci sont définies et appliqués par les modérateurs de %{domain}.
+      title: Quelques règles de base.
+    security: Sécurité
+    set_new_password: Définir le nouveau mot de passe
+    setup:
+      email_below_hint_html: Si l’adresse de courriel ci-dessous est incorrecte, vous pouvez la modifier ici et recevoir un nouveau courriel de confirmation.
+      email_settings_hint_html: Le courriel de confirmation a été envoyé à %{email}. Si cette adresse de courriel n’est pas correcte, vous pouvez la modifier dans les paramètres du compte.
+      title: Configuration
+    sign_up:
+      preamble: Avec un compte sur ce serveur Mastodon, vous serez en mesure de suivre toute autre personne sur le réseau, quel que soit l’endroit où son compte est hébergé.
+      title: Mettons les choses en place pour %{domain}.
+    status:
+      account_status: État du compte
+      confirming: En attente de la confirmation par courriel à compléter.
+      functional: Votre compte est entièrement opérationnel.
+      pending: Votre demande est en attente d'examen par notre personnel. Cela peut prendre un certain temps. Vous recevrez un courriel si votre demande est approuvée.
+      redirecting_to: Votre compte est inactif car il est actuellement redirigé vers %{acct}.
+      view_strikes: Voir les sanctions précédemment appliquées à votre compte
+    too_fast: Formulaire envoyé trop rapidement, veuillez réessayer.
+    use_security_key: Utiliser la clé de sécurité
+  authorize_follow:
+    already_following: Vous suivez déjà ce compte
+    already_requested: Vous avez déjà envoyé une demande d’abonnement à ce compte
+    error: Malheureusement, une erreur s'est produite lors de la recherche du compte distant
+    follow: Suivre
+    follow_request: 'Vous avez demandé à suivre :'
+    following: 'Youpi ! Vous suivez maintenant  :'
+    post_follow:
+      close: Ou bien, vous pouvez fermer cette fenêtre.
+      return: Afficher le profil de l’utilisateur·ice
+      web: Retour à l’interface web
+    title: Suivre %{acct}
+  challenge:
+    confirm: Continuer
+    hint_html: "<strong>Astuce :</strong> Nous ne vous demanderons plus votre mot de passe pour la prochaine heure."
+    invalid_password: Mot de passe invalide
+    prompt: Confirmez votre mot de passe pour continuer
+  crypto:
+    errors:
+      invalid_key: n’est pas une clé Ed25519 ou Curve25519 valide
+      invalid_signature: n’est pas une signature Ed25519 valide
+  date:
+    formats:
+      default: "%d %b %Y"
+      with_month_name: "%d %B %Y"
+  datetime:
+    distance_in_words:
+      about_x_hours: "%{count} h"
+      about_x_months: "%{count} mois"
+      about_x_years: "%{count} an(s)"
+      almost_x_years: "%{count} an(s)"
+      half_a_minute: À l’instant
+      less_than_x_minutes: "%{count} min"
+      less_than_x_seconds: À l’instant
+      over_x_years: "%{count}an(s)"
+      x_days: "%{count} j"
+      x_minutes: "%{count} min"
+      x_months: "%{count} mois"
+      x_seconds: "%{count} s"
+  deletes:
+    challenge_not_passed: Les renseignements que vous avez entrés n'étaient pas exacts
+    confirm_password: Entrez votre mot de passe actuel pour vérifier votre identité
+    confirm_username: Entrez votre nom d'utilisateur pour confirmer la procédure
+    proceed: Supprimer le compte
+    success_msg: Votre compte a été supprimé avec succès
+    warning:
+      before: 'Veuillez lire attentivement ces notes avant de continuer :'
+      caches: Le contenu mis en cache par d'autres serveurs peut persister
+      data_removal: Vos messages et autres données seront définitivement supprimés
+      email_change_html: Vous pouvez <a href="%{path}">modifier votre adresse courriel</a> sans supprimer votre compte
+      email_contact_html: S'il n'arrive toujours pas, vous pouvez envoyer un courriel à <a href="mailto:%{email}">%{email}</a> pour demander de l'aide
+      email_reconfirmation_html: Si vous ne recevez pas le courriel de confirmation, vous pouvez le <a href="%{path}">demander à nouveau</a>
+      irreversible: Vous ne pourrez pas restaurer ou réactiver votre compte
+      more_details_html: Pour plus de détails, voir la <a href="%{terms_path}">politique de confidentialité</a>.
+      username_available: Votre nom d’utilisateur·rice sera à nouveau disponible
+      username_unavailable: Votre nom d’utilisateur·rice restera indisponible
+  disputes:
+    strikes:
+      action_taken: Mesure prise
+      appeal: Faire appel
+      appeal_approved: Cette sanction a été annulée en appel et n'est plus valide
+      appeal_rejected: L'appel a été rejeté
+      appeal_submitted_at: Appel soumis le
+      appealed_msg: Votre demande d'appel a été soumise. Si elle est approuvée, vous en serez informé·e.
+      appeals:
+        submit: Faire appel
+      approve_appeal: Approuver l’appel
+      associated_report: Rapport associé
+      created_at: En date du
+      description_html: Ce sont les mesures prises contre votre compte et les avertissements qui vous ont été envoyés par les responsables de %{instance}.
+      recipient: Adressé à
+      reject_appeal: Rejeter l’appel
+      status: 'Message #%{id}'
+      status_removed: Message déjà supprimé du système
+      title: "%{action} du %{date}"
+      title_actions:
+        delete_statuses: Suppression de message
+        disable: Gel du compte
+        mark_statuses_as_sensitive: Marquage des messages comme sensibles
+        none: Avertissement
+        sensitive: Marquage du compte comme sensible
+        silence: Limitation du compte
+        suspend: Suspension de compte
+      your_appeal_approved: Votre appel a été approuvé
+      your_appeal_pending: Vous avez soumis un appel
+      your_appeal_rejected: Votre appel a été rejeté
+  domain_validator:
+    invalid_domain: n’est pas un nom de domaine valide
+  errors:
+    '400': La demande que vous avez soumise est invalide ou mal formée.
+    '403': Vous n’avez pas accès à cette page.
+    '404': La page que vous recherchez n’existe pas.
+    '406': Cette page n'est pas disponible au format demandé.
+    '410': La page que vous recherchez n’existe plus.
+    '422':
+      content: Vérification de sécurité échouée. Bloquez-vous les cookies ?
+      title: Vérification de sécurité échouée
+    '429': Trop de requêtes émises dans un délai donné
+    '500':
+      content: Nous sommes désolé·e·s, mais quelque chose s’est mal passé de notre côté.
+      title: Cette page n’est pas correcte
+    '503': La page n'a pas pu être servie en raison d'une défaillance temporaire du serveur.
+    noscript_html: Pour utiliser Mastodon, veuillez activer JavaScript. Sinon, essayez l’une des <a href="%{apps_path}">applications natives</a> pour Mastodon pour votre plate-forme.
+  existing_username_validator:
+    not_found: impossible de trouver un·e utilisateur·ice local·e de ce nom
+    not_found_multiple: n’a pas trouvé %{usernames}
+  exports:
+    archive_takeout:
+      date: Date
+      download: Télécharger votre archive
+      hint_html: Vous pouvez demander une archive de vos <strong>messages et médias téléversés</strong>. Les données exportées seront au format ActivityPub, lisible par tout logiciel compatible. Vous pouvez demander une archive tous les 7 jours.
+      in_progress: Création de votre archive…
+      request: Demandez vos archives
+      size: Taille
+    blocks: Vous bloquez
+    bookmarks: Marque-pages
+    csv: CSV
+    domain_blocks: Blocages de domaine
+    lists: Listes
+    mutes: Vous masquez
+    storage: Médias stockés
+  featured_tags:
+    add_new: Ajouter un nouveau hashtag
+    errors:
+      limit: Vous avez déjà mis en avant le nombre maximum de hashtags
+    hint_html: "<strong>Que sont les hashtags mis en avant ?</strong> Ils sont affichés en évidence sur votre profil public et permettent aux gens de parcourir vos messages publics qui utilisent ces hashtags. Ils sont un excellent outil pour garder la trace d’activités créatrices ou de projets de long terme."
+  filters:
+    contexts:
+      account: Profils
+      home: Accueil et listes
+      notifications: Notifications
+      public: Fils publics
+      thread: Discussions
+    edit:
+      add_keyword: Ajouter un mot-clé
+      keywords: Mots-clés
+      statuses: Publications individuelles
+      statuses_hint_html: Ce filtre s'applique à la sélection de messages individuels, qu'ils correspondent ou non aux mots-clés ci-dessous. <a href="%{path}">Revoir ou supprimer des messages du filtre</a>.
+      title: Éditer le filtre
+    errors:
+      deprecated_api_multiple_keywords: Ces paramètres ne peuvent pas être modifiés depuis cette application, car ils s'appliquent à plus d'un filtre de mot-clé. Utilisez une application plus récente ou l'interface web.
+      invalid_context: Contexte invalide ou insuffisant
+    index:
+      contexts: Filtres dans %{contexts}
+      delete: Supprimer
+      empty: Vous n'avez aucun filtre.
+      expires_in: Expire dans %{distance}
+      expires_on: Expire le %{date}
+      keywords:
+        one: "%{count} mot-clé"
+        other: "%{count} mots-clés"
+      statuses:
+        one: "%{count} message"
+        other: "%{count} messages"
+      statuses_long:
+        one: "%{count} publication individuelle cachée"
+        other: "%{count} publications individuelles cachées"
+      title: Filtres
+    new:
+      save: Enregistrer le nouveau filtre
+      title: Ajouter un nouveau filtre
+    statuses:
+      back_to_filter: Retour au filtre
+      batch:
+        remove: Retirer du filtre
+      index:
+        hint: Ce filtre s'applique à la sélection de messages individuels, indépendamment d'autres critères. Vous pouvez ajouter plus de messages à ce filtre à partir de l'interface Web.
+        title: Messages filtrés
+  footer:
+    trending_now: Tendance en ce moment
+  generic:
+    all: Tous
+    all_items_on_page_selected_html:
+      one: "<strong>%{count}</strong> élément de cette page est sélectionné."
+      other: L'ensemble des <strong>%{count}</strong> éléments de cette page est sélectionné.
+    all_matching_items_selected_html:
+      one: "<strong>%{count}</strong> élément correspondant à votre recherche est sélectionné."
+      other: L'ensemble des <strong>%{count}</strong> éléments correspondant à votre recherche est sélectionné.
+    changes_saved_msg: Les modifications ont été enregistrées avec succès !
+    copy: Copier
+    delete: Supprimer
+    deselect: Tout déselectionner
+    none: Aucun
+    order_by: Classer par
+    save_changes: Enregistrer les modifications
+    select_all_matching_items:
+      one: Sélectionnez %{count} élément correspondant à votre recherche.
+      other: Sélectionnez tous l'ensemble des %{count} éléments correspondant à votre recherche.
+    today: aujourd’hui
+    validation_errors:
+      one: Quelque chose ne va pas ! Veuillez vérifiez l’erreur ci-dessous
+      other: Certaines choses ne vont pas ! Veuillez vérifier les %{count} erreurs ci-dessous
+  html_validator:
+    invalid_markup: 'contient un balisage HTML invalide: %{error}'
+  imports:
+    errors:
+      over_rows_processing_limit: contient plus de %{count} lignes
+    modes:
+      merge: Fusionner
+      merge_long: Garder les enregistrements existants et ajouter les nouveaux
+      overwrite: Écraser
+      overwrite_long: Remplacer les enregistrements actuels par les nouveaux
+    preface: Vous pouvez importer certaines données que vous avez exporté d’un autre serveur, comme une liste des personnes que vous suivez ou bloquez sur votre compte.
+    success: Vos données ont été importées avec succès et seront traitées en temps et en heure
+    types:
+      blocking: Liste de comptes bloqués
+      bookmarks: Marque-pages
+      domain_blocking: Liste des serveurs bloqués
+      following: Liste d’utilisateur·rice·s suivi·e·s
+      muting: Liste d’utilisateur·rice·s que vous masquez
+    upload: Importer
+  invites:
+    delete: Désactiver
+    expired: Expiré
+    expires_in:
+      '1800': 30 minutes
+      '21600': 6 heures
+      '3600': 1 heure
+      '43200': 12 heures
+      '604800': 1 semaine
+      '86400': 1 jour
+    expires_in_prompt: Jamais
+    generate: Générer un lien d'invitation
+    invited_by: 'Vous avez été invité·e par :'
+    max_uses:
+      one: 1 utilisation
+      other: "%{count} utilisations"
+    max_uses_prompt: Pas de limite
+    prompt: Générer des liens et les partager avec d'autres personnes pour leur donner accès à ce serveur
+    table:
+      expires_at: Expire
+      uses: Utilisations
+    title: Inviter des gens
+  lists:
+    errors:
+      limit: Vous avez atteint le nombre maximum de listes
+  login_activities:
+    authentication_methods:
+      otp: application d'authentification à deux facteurs
+      password: mot de passe
+      sign_in_token: code de sécurité par courriel
+      webauthn: clés de sécurité
+    description_html: Si vous voyez une activité que vous ne reconnaissez pas, envisagez de changer votre mot de passe et d'activer l'authentification à deux facteurs.
+    empty: Aucun historique d'authentification disponible
+    failed_sign_in_html: Tentative de connexion échouée avec %{method} de %{ip} (%{browser})
+    successful_sign_in_html: Connexion réussie avec %{method} de %{ip} (%{browser})
+    title: Historique d'authentification
+  media_attachments:
+    validations:
+      images_and_video: Impossible de joindre une vidéo à un message contenant déjà des images
+      not_ready: Impossible de joindre les fichiers en cours de traitement. Réessayez dans un instant !
+      too_many: Impossible de joindre plus de 4 fichiers
+  migrations:
+    acct: A déménagé vers
+    cancel: Annuler la redirection
+    cancel_explanation: Annuler la redirection réactivera votre compte actuel, mais ne rapportera pas les abonné·e·s qui ont été déplacé·e·s sur ce compte.
+    cancelled_msg: Suppression de la redirection réussie.
+    errors:
+      already_moved: est le même compte que vous avez déjà déplacé vers
+      missing_also_known_as: ne référence pas ce compte en retour
+      move_to_self: ne peut pas être le compte actuel
+      not_found: n'a pas été trouvé
+      on_cooldown: Vous êtes soumis·e à un temps de rechargement
+    followers_count: Abonné·e·s au moment du déménagement
+    incoming_migrations: Déplacement depuis un compte différent
+    incoming_migrations_html: Pour déménager d'un autre compte à celui-ci, vous devez d'abord <a href="%{path}">créer un alias de compte</a>.
+    moved_msg: Votre compte est maintenant redirigé vers %{acct} et vos abonné·e·s sont en train d'être déplacé·e·s.
+    not_redirecting: Votre compte n'est pas redirigé vers un autre compte actuellement.
+    on_cooldown: Vous avez récemment migré votre compte. Cette fonction sera à nouveau disponible dans %{count} jours.
+    past_migrations: Migrations passées
+    proceed_with_move: Migrer les abonné·e·s
+    redirected_msg: Votre compte est maintenant redirigé vers %{acct}.
+    redirecting_to: Votre compte est redirigé vers %{acct}.
+    set_redirect: Définir la redirection
+    warning:
+      backreference_required: Le nouveau compte doit d'abord être configuré pour faire référence à celui-ci en définissant un alias
+      before: 'Avant de procéder, veuillez lire attentivement ces notes :'
+      cooldown: Après le déménagement, il y a une période d’attente pendant laquelle vous ne pourrez pas redéménager
+      disabled_account: Votre compte actuel ne sera pas entièrement utilisable par la suite. Cependant, vous aurez accès à l'exportation de données et à la réactivation.
+      followers: Cette action va déménager tou·te·s les abonné·e·s du compte actuel vers le nouveau compte
+      only_redirect_html: Alternativement, vous pouvez <a href="%{path}">seulement appliquer une redirection sur votre profil</a>.
+      other_data: Aucune autre donnée ne sera déplacée automatiquement
+      redirect: Le profil de votre compte actuel sera mis à jour avec un avis de redirection et sera exclu des recherches
+  moderation:
+    title: Modération
+  move_handler:
+    carry_blocks_over_text: Cet utilisateur que vous aviez bloqué est parti de %{acct}.
+    carry_mutes_over_text: Cet utilisateur que vous aviez masqué est parti de %{acct}.
+    copy_account_note_text: 'Cet·te utilisateur·rice est parti·e de %{acct}, voici vos notes précédentes à son sujet :'
+  navigation:
+    toggle_menu: Basculer l'affichage du menu
+  notification_mailer:
+    admin:
+      report:
+        subject: "%{name} a soumis un signalement"
+      sign_up:
+        subject: "%{name} s'est inscrit·e"
+    favourite:
+      body: "%{name} a ajouté votre message à ses favoris :"
+      subject: "%{name} a ajouté votre message à ses favoris"
+      title: Nouveau favori
+    follow:
+      body: "%{name} vous suit !"
+      subject: "%{name} vous suit"
+      title: Nouvel·le abonné·e
+    follow_request:
+      action: Gérer les demandes d’abonnement
+      body: "%{name} a demandé à vous suivre"
+      subject: 'Abonné·e en attente : %{name}'
+      title: Nouvelle demande d’abonnement
+    mention:
+      action: Répondre
+      body: "%{name} vous a mentionné⋅e dans :"
+      subject: "%{name} vous a mentionné·e"
+      title: Nouvelle mention
+    poll:
+      subject: Un sondage de %{name} est terminé
+    reblog:
+      body: 'Votre message été partagé par %{name} :'
+      subject: "%{name} a partagé votre message"
+      title: Nouveau partage
+    status:
+      subject: "%{name} vient de publier"
+    update:
+      subject: "%{name} a modifié un message"
+  notifications:
+    email_events: Événements pour les notifications par courriel
+    email_events_hint: 'Sélectionnez les événements pour lesquels vous souhaitez recevoir des notifications :'
+    other_settings: Autres paramètres de notifications
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: G
+          million: M
+          quadrillion: P
+          thousand: K
+          trillion: T
+  otp_authentication:
+    code_hint: Entrez le code généré par votre application d'authentification pour confirmer
+    description_html: Si vous activez <strong>l’authentification à deux facteurs</strong> en utilisant une application d'authentification, votre connexion vous imposera d'être en possession de votre téléphone, ce qui génèrera des jetons que vous devrez saisir.
+    enable: Activer
+    instructions_html: "<strong>Scannez ce code QR dans Google Authenticator ou une application TOTP similaire sur votre téléphone</strong>. À partir de maintenant, cette application générera des jetons que vous devrez entrer lorsque vous vous connecterez."
+    manual_instructions: 'Si vous ne pouvez pas scanner le QR code et que vous devez le saisir manuellement, voici le texte secret en brut :'
+    setup: Mise en place
+    wrong_code: Le code saisi est invalide. L'heure du serveur et l'heure de l'appareil sont-ils corrects ?
+  pagination:
+    newer: Plus récent
+    next: Suivant
+    older: Plus ancien
+    prev: Précédent
+    truncate: "&hellip;"
+  polls:
+    errors:
+      already_voted: Vous avez déjà voté sur ce sondage
+      duplicate_options: contient des doublons
+      duration_too_long: est trop loin dans le futur
+      duration_too_short: est trop tôt
+      expired: Ce sondage est déjà terminé
+      invalid_choice: L'option de vote choisie n'existe pas
+      over_character_limit: ne peuvent être plus long que %{max} caractères chacun
+      too_few_options: doit avoir plus qu’une proposition
+      too_many_options: ne peut contenir plus de %{max} propositions
+  preferences:
+    other: Autre
+    posting_defaults: Paramètres de publication par défaut
+    public_timelines: Fils publics
+  privacy_policy:
+    title: Politique de confidentialité
+  reactions:
+    errors:
+      limit_reached: Limite de réactions différentes atteinte
+      unrecognized_emoji: n’est pas un émoji reconnu
+  relationships:
+    activity: Activité du compte
+    dormant: Dormant
+    follow_selected_followers: Suivre les abonné·e·s sélectionné·e·s
+    followers: Abonné·e
+    following: Abonnement
+    invited: Invité·e
+    last_active: Dernière activité
+    most_recent: Plus récent
+    moved: Déménagé
+    mutual: Mutuel
+    primary: Primaire
+    relationship: Relation
+    remove_selected_domains: Supprimer tou·te·s les abonné·e·s des domaines sélectionnés
+    remove_selected_followers: Supprimer les abonné·e·s sélectionné·e·s
+    remove_selected_follows: Ne plus suivre les comptes sélectionnés
+    status: État du compte
+  remote_follow:
+    missing_resource: L’URL de redirection requise pour votre compte n’a pas pu être trouvée
+  reports:
+    errors:
+      invalid_rules: ne fait pas référence à des règles valides
+  rss:
+    content_warning: 'Avertissement de contenu :'
+    descriptions:
+      account: Messages publics de @%{acct}
+      tag: 'Messages publics taggés #%{hashtag}'
+  scheduled_statuses:
+    over_daily_limit: Vous avez dépassé la limite de %{limit} messages planifiés par jour
+    over_total_limit: Vous avez dépassé la limite de %{limit} messages planifiés
+    too_soon: La date planifiée doit être dans le futur
+  sessions:
+    activity: Dernière activité
+    browser: Navigateur
+    browsers:
+      alipay: Alipay
+      blackberry: BlackBerry
+      chrome: Chrome
+      edge: Microsoft Edge
+      electron: Electron
+      firefox: Firefox
+      generic: Navigateur inconnu
+      ie: Internet Explorer
+      micro_messenger: MicroMessenger
+      nokia: Nokia S40 Ovi Browser
+      opera: Opera
+      otter: Otter
+      phantom_js: PhantomJS
+      qq: QQ Browser
+      safari: Safari
+      uc_browser: UC Browser
+      weibo: Weibo
+    current_session: Session courante
+    description: "%{browser} sur %{platform}"
+    explanation: Ceci est la liste des navigateurs actuellement connectés à votre compte Mastodon.
+    ip: Adresse IP
+    platforms:
+      adobe_air: Adobe Air
+      android: Android
+      blackberry: BlackBerry
+      chrome_os: ChromeOS
+      firefox_os: Firefox OS
+      ios: iOS
+      linux: Linux
+      mac: Mac
+      other: système inconnu
+      windows: Windows
+      windows_mobile: Windows Mobile
+      windows_phone: Windows Phone
+    revoke: Révoquer
+    revoke_success: Session révoquée avec succès
+    title: Sessions
+    view_authentication_history: Voir l'historique d'authentification de votre compte
+  settings:
+    account: Compte
+    account_settings: Paramètres du compte
+    aliases: Alias du compte
+    appearance: Apparence
+    authorized_apps: Applications autorisées
+    back: Retour vers Mastodon
+    delete: Suppression du compte
+    development: Développement
+    edit_profile: Modifier le profil
+    export: Export de données
+    featured_tags: Hashtags mis en avant
+    import: Import de données
+    import_and_export: Import et export
+    migrate: Migration de compte
+    notifications: Notifications
+    preferences: Préférences
+    profile: Profil
+    relationships: Abonnements et abonné·e·s
+    statuses_cleanup: Suppression automatique de messages
+    strikes: Sanctions de modération
+    two_factor_authentication: Identification à deux facteurs
+    webauthn_authentication: Clés de sécurité
+  statuses:
+    attached:
+      audio:
+        one: "%{count} audio"
+        other: "%{count} audio"
+      description: 'Attaché : %{attached}'
+      image:
+        one: "%{count} image"
+        other: "%{count} images"
+      video:
+        one: "%{count} vidéo"
+        other: "%{count} vidéos"
+    boosted_from_html: Partagé depuis %{acct_link}
+    content_warning: 'Avertissement sur le contenu : %{warning}'
+    default_language: Même langue que celle de l’interface
+    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
+    over_character_limit: limite de %{max} caractères dépassée
+    pin_errors:
+      direct: Les messages qui ne sont visibles que pour les utilisateur·rice·s mentionné·e·s ne peuvent pas être épinglés
+      limit: Vous avez déjà épinglé le nombre maximum de messages
+      ownership: Vous ne pouvez pas épingler un message ne vous appartenant pas
+      reblog: Un partage ne peut pas être épinglé
+    poll:
+      total_people:
+        one: "%{count} personne"
+        other: "%{count} personnes"
+      total_votes:
+        one: "%{count} vote"
+        other: "%{count} votes"
+      vote: Voter
+    show_more: Déplier
+    show_newer: Plus récents
+    show_older: Plus anciens
+    show_thread: Afficher le fil de discussion
+    sign_in_to_participate: Inscrivez-vous pour prendre part à la conversation
+    title: "%{name} : « %{quote} »"
+    visibilities:
+      direct: Direct
+      private: Abonné⋅e⋅s uniquement
+      private_long: Afficher seulement à vos vos abonné·e·s
+      public: Publique
+      public_long: Tout le monde peut voir vos messages
+      unlisted: Public sans être affiché sur le fil public
+      unlisted_long: Tout le monde peut voir vos messages mais ils ne seront pas listés sur les fils publics
+  statuses_cleanup:
+    enabled: Supprimer automatiquement vos anciens messages
+    enabled_hint: Supprime automatiquement vos messages une fois qu'ils ont atteint un seuil d'ancienneté défini, à moins qu'ils ne correspondent à l'une des exceptions ci-dessous
+    exceptions: Exceptions
+    explanation: Parce que la suppression de messages est une opération lourde, cela se fait lentement au fil du temps lorsque le serveur n'est pas autrement occupé. Pour cette raison, vos messages peuvent être supprimés un peu plus tard que le seuil d'ancienneté défini.
+    ignore_favs: Ignorer les favoris
+    ignore_reblogs: Ignorer les partages
+    interaction_exceptions: Exceptions basées sur les interactions
+    interaction_exceptions_explanation: Notez qu'il n'est pas garanti que les messages soient supprimés s'ils passent sous le seuil des favoris ou des partages une fois qu'ils les ont dépassés.
+    keep_direct: Conserver les messages directs
+    keep_direct_hint: Ne supprime aucun de vos messages directs
+    keep_media: Conserver les messages avec des fichiers médias joints
+    keep_media_hint: Ne supprime pas les messages contenant des fichiers médias joints
+    keep_pinned: Conserver les messages épinglés
+    keep_pinned_hint: Ne supprime aucun de vos messages épinglés
+    keep_polls: Conserver les sondages
+    keep_polls_hint: Ne supprime aucun de vos sondages
+    keep_self_bookmark: Conserver les messages que vous avez mis en marque-page
+    keep_self_bookmark_hint: Ne supprime pas vos propres messages si vous les avez ajoutés aux marque-pages
+    keep_self_fav: Conserver les messages que vous avez mis dans vos favoris
+    keep_self_fav_hint: Ne supprime pas vos propres messages si vous les avez ajoutés à vos favoris
+    min_age:
+      '1209600': 2 semaines
+      '15778476': 6 mois
+      '2629746': 1 mois
+      '31556952': 1 an
+      '5259492': 2 mois
+      '604800': 1 semaine
+      '63113904': 2 ans
+      '7889238': 3 mois
+    min_age_label: Seuil d'ancienneté
+    min_favs: Conserver les messages mis en favoris au moins
+    min_favs_hint: Ne supprime aucun de vos messages qui ont reçu au moins ce nombre de favoris. Laisser vide pour supprimer les messages quel que soit leur nombre de favoris
+    min_reblogs: Conserver les messages partagés au moins
+    min_reblogs_hint: Ne supprime aucun de vos messages qui ont été partagés au moins ce nombre de fois. Laisser vide pour supprimer les messages indépendamment de leur nombre de partages
+  stream_entries:
+    pinned: Message épinglé
+    reblogged: a partagé
+    sensitive_content: Contenu sensible
+  strikes:
+    errors:
+      too_late: Il est trop tard pour faire appel à cette sanction
+  tags:
+    does_not_match_previous_name: ne correspond pas au nom précédent
+  themes:
+    contrast: Mastodon (Contraste élevé)
+    default: Mastodon (Sombre)
+    mastodon-light: Mastodon (Clair)
+  time:
+    formats:
+      default: "%d %b %Y, %H:%M"
+      month: "%b %Y"
+      time: "%H:%M"
+  two_factor_authentication:
+    add: Ajouter
+    disable: Désactiver
+    disabled_success: L'authentification à deux facteurs a été désactivée avec succès
+    edit: Modifier
+    enabled: L’authentification à deux facteurs est activée
+    enabled_success: Identification à deux facteurs activée avec succès
+    generate_recovery_codes: Générer les codes de récupération
+    lost_recovery_codes: Les codes de récupération vous permettent de retrouver les accès à votre compte si vous perdez votre téléphone. Si vous perdez vos codes de récupération, vous pouvez les générer à nouveau ici. Vos anciens codes de récupération seront invalidés.
+    methods: Méthodes à deux facteurs
+    otp: Application d'authentification
+    recovery_codes: Codes de récupération
+    recovery_codes_regenerated: Codes de récupération régénérés avec succès
+    recovery_instructions_html: Si vous perdez l’accès à votre téléphone, vous pouvez utiliser un des codes de récupération ci-dessous pour retrouver l’accès à votre compte. <strong>Conservez les codes de récupération en sécurité</strong>. Par exemple, en les imprimant et en les stockant avec vos autres documents importants.
+    webauthn: Clés de sécurité
+  user_mailer:
+    appeal_approved:
+      action: Aller à votre compte
+      explanation: L'appel de la sanction contre votre compte mise en place le %{strike_date} que vous avez soumis le %{appeal_date} a été approuvé. Votre compte est de nouveau en règle.
+      subject: Votre appel du %{date} a été approuvé
+      title: Appel approuvé
+    appeal_rejected:
+      explanation: L'appel de la sanction contre votre compte mise en place le %{strike_date} que vous avez soumis le %{appeal_date} a été rejeté.
+      subject: Votre appel du %{date} a été rejeté
+      title: Appel rejeté
+    backup_ready:
+      explanation: Vous avez demandé une sauvegarde complète de votre compte Mastodon. Elle est maintenant prête à être téléchargée !
+      subject: Votre archive est prête à être téléchargée
+      title: Récupération de l’archive
+    suspicious_sign_in:
+      change_password: changer votre mot de passe
+      details: 'Voici les détails de la connexion :'
+      explanation: Nous avons détecté une connexion à votre compte à partir d’une nouvelle adresse IP.
+      further_actions_html: Si ce n’était pas vous, nous vous recommandons de %{action} immédiatement et d’activer l’authentification à deux facteurs afin de garder votre compte sécurisé.
+      subject: Votre compte a été accédé à partir d'une nouvelle adresse IP
+      title: Une nouvelle connexion
+    warning:
+      appeal: Faire appel
+      appeal_description: Si vous pensez qu'il s'agit d'une erreur, vous pouvez faire appel auprès de l'équipe de %{instance}.
+      categories:
+        spam: Indésirable
+        violation: Le contenu enfreint les directives de la communauté suivantes
+      explanation:
+        delete_statuses: Il a été constaté que certains de vos messages enfreignent une ou plusieurs directives de la communauté. Par conséquent, ils ont été supprimés par l'équipe de modération de %{instance}.
+        disable: Vous ne pouvez plus utiliser votre compte, mais votre profil et d'autres données restent intacts. Vous pouvez demander une sauvegarde de vos données, modifier les paramètres de votre compte ou supprimer votre compte.
+        mark_statuses_as_sensitive: Certains de vos messages ont été marqués comme sensibles par l'équipe de modération de %{instance}. Cela signifie qu'il faudra cliquer sur le média pour pouvoir en afficher un aperçu. Vous pouvez marquer les médias comme sensibles vous-même lorsque vous posterez à l'avenir.
+        sensitive: Désormais, tous vos fichiers multimédias téléchargés seront marqués comme sensibles et cachés derrière un avertissement à cliquer.
+        silence: Vous pouvez toujours utiliser votre compte, mais seules les personnes qui vous suivent déjà verront vos messages sur ce serveur, et vous pourriez être exclu de diverses fonctions de découverte. Cependant, d'autres personnes peuvent toujours vous suivre manuellement.
+        suspend: Vous ne pouvez plus utiliser votre compte, votre profil et vos autres données ne sont plus accessibles. Vous pouvez toujours vous connecter pour demander une sauvegarde de vos données jusqu'à leur suppression complète dans environ 30 jours, mais nous conserverons certaines données de base pour vous empêcher d'échapper à la suspension.
+      reason: 'Motif :'
+      statuses: 'Messages cités :'
+      subject:
+        delete_statuses: Vos messages sur %{acct} ont été supprimés
+        disable: Votre compte %{acct} a été gelé
+        mark_statuses_as_sensitive: Vos messages sur %{acct} ont été marqués comme sensibles
+        none: Avertissement pour %{acct}
+        sensitive: Vos messages sur %{acct} seront désormais marqués comme sensibles
+        silence: Votre compte %{acct} a été limité
+        suspend: Votre compte %{acct} a été suspendu
+      title:
+        delete_statuses: Messages supprimés
+        disable: Compte gelé
+        mark_statuses_as_sensitive: Messages marqués comme sensibles
+        none: Avertissement
+        sensitive: Compte marqué comme sensible
+        silence: Compte limité
+        suspend: Compte suspendu
+    welcome:
+      edit_profile_action: Configuration du profil
+      edit_profile_step: Vous pouvez personnaliser votre profil en téléchargeant une photo de profil, en changant votre nom d'utilisateur, etc. Vous pouvez opter pour le passage en revue de chaque nouvelle demande d'abonnement à chaque fois qu'un utilisateur essaie de s'abonner à votre compte.
+      explanation: Voici quelques conseils pour vous aider à démarrer
+      final_action: Commencez à publier
+      final_step: 'Commencez à publier ! Même si vous n''avez pas encore d''abonnés, vos publications sont publiques et sont accessibles par les autres, par exemple grâce à la zone horaire locale ou par les hashtags. Vous pouvez vous présenter sur le hashtag #introductions.'
+      full_handle: Votre identifiant complet
+      full_handle_hint: C’est ce que vous diriez à vos ami·e·s pour leur permettre de vous envoyer un message ou vous suivre à partir d’un autre serveur.
+      subject: Bienvenue sur Mastodon
+      title: Bienvenue à bord, %{name} !
+  users:
+    follow_limit_reached: Vous ne pouvez pas suivre plus de %{limit} personnes
+    invalid_otp_token: Le code d’authentification à deux facteurs est invalide
+    otp_lost_help_html: Si vous perdez accès aux deux, vous pouvez contacter %{email}
+    seamless_external_login: Vous êtes connecté via un service externe, donc les paramètres concernant le mot de passe et le courriel ne sont pas disponibles.
+    signed_in_as: 'Connecté·e en tant que :'
+  verification:
+    explanation_html: 'Vous pouvez <strong>vous vérifier en tant que propriétaire des liens dans les métadonnées de votre profil</strong>. Pour cela, le site web lié doit contenir un lien vers votre profil Mastodon. Le lien de retour <strong>doit</strong> avoir un attribut <code>rel="me"</code> . Le texte du lien n’a pas d’importance. Voici un exemple :'
+    verification: Vérification
+  webauthn_credentials:
+    add: Ajouter une nouvelle clé de sécurité
+    create:
+      error: Il y a eu un problème en ajoutant votre clé de sécurité. Veuillez réessayer.
+      success: Votre clé de sécurité a été ajoutée avec succès.
+    delete: Supprimer
+    delete_confirmation: Êtes-vous sûr de vouloir supprimer cette clé de sécurité ?
+    description_html: Si vous activez l' <strong>authentification de la clé de sécurité</strong>, la connexion vous demandera d'utiliser l'une de vos clés de sécurité.
+    destroy:
+      error: Il y a eu un problème en supprimant votre clé de sécurité. Veuillez réessayer.
+      success: Votre clé de sécurité a été supprimée avec succès.
+    invalid_credential: Clé de sécurité invalide
+    nickname_hint: Entrez le surnom de votre nouvelle clé de sécurité
+    not_enabled: Vous n'avez pas encore activé WebAuthn
+    not_supported: Ce navigateur ne prend pas en charge les clés de sécurité
+    otp_required: Pour utiliser les clés de sécurité, veuillez d'abord activer l'authentification à deux facteurs.
+    registered_on: Inscrit le %{date}
diff --git a/config/locales/fr.yml b/config/locales/fr.yml
index 191e14deb..b24603db9 100644
--- a/config/locales/fr.yml
+++ b/config/locales/fr.yml
@@ -133,7 +133,7 @@ fr:
       search_same_ip: Autres utilisateur·rice·s avec la même IP
       security_measures:
         only_password: Mot de passe uniquement
-        password_and_2fa: Mot de passe et 2FA
+        password_and_2fa: Mot de passe et A2F
       sensitive: Sensible
       sensitized: marqué comme sensible
       shared_inbox_url: URL de la boite de réception partagée
@@ -373,6 +373,8 @@ fr:
       add_new: Mettre le domaine sur liste sur blanche
       created_msg: Ce domaine a été ajouté à la liste blanche avec succès
       destroyed_msg: Le domaine a été supprimé de la liste blanche
+      export: Exporter
+      import: Importer
       undo: Supprimer de la liste blanche
     domain_blocks:
       add_new: Bloquer un nouveau domaine
@@ -382,15 +384,19 @@ fr:
       edit: Modifier le blocage de domaine
       existing_domain_block: Vous avez déjà imposé des limites plus strictes à %{name}.
       existing_domain_block_html: Vous avez déjà imposé des limites plus strictes à %{name}, vous devez d’abord le/la <a href="%{unblock_url}">débloquer</a>.
+      export: Exporter
+      import: Importer
       new:
         create: Créer le blocage
         hint: Le blocage de domaine n’empêchera pas la création de comptes dans la base de données, mais il appliquera automatiquement et rétrospectivement des méthodes de modération spécifiques sur ces comptes.
         severity:
-          desc_html: "<strong>Masquer</strong> rendra les messages des comptes concernés invisibles à ceux qui ne les suivent pas. <strong>Suspendre</strong> supprimera tout le contenu des comptes concernés, les médias, et les données du profil. Utilisez <strong>Aucune</strong> si vous voulez simplement rejeter les fichiers multimédia."
+          desc_html: "<strong>Limiter</strong> rendra les messages des comptes de ce domaine invisibles à ceux qui ne les suivent pas. <strong>Suspendre</strong> supprimera tout le contenu, les médias, et données de profile pour les comptes de ce domaine de votre serveur. Utilisez <strong>Aucun</strong> si vous voulez simplement rejeter les fichiers multimédia."
           noop: Aucune
-          silence: Masqué
+          silence: Limiter
           suspend: Suspendre
         title: Nouveau blocage de domaine
+      no_domain_block_selected: Aucun blocage de domaine n'a été modifié car aucun n'a été sélectionné
+      not_permitted: Vous n’êtes pas autorisé à effectuer cette action
       obfuscate: Obfusquer le nom de domaine
       obfuscate_hint: Obfusquer partiellement le nom de domaine dans la liste si la publication de la liste des limitations de domaine est activée
       private_comment: Commentaire privé
@@ -422,6 +428,20 @@ fr:
       resolved_dns_records_hint_html: Le nom de domaine est relié aux domaines MX suivants, qui ont la responsabilité ultime d'accepter les courriels. Bloquer un domaine MX empêchera les inscriptions à partir de toute adresse courriel utilisant le même domaine MX, même si le nom de domaine affiché est différent. <strong> Veillez à ne pas bloquer les fournisseurs de messagerie d'envergure.</strong>
       resolved_through_html: Résolu par %{domain}
       title: Blocage de domaines de courriel
+    export_domain_allows:
+      new:
+        title: Autoriser l'importation de domaine
+      no_file: Aucun fichier sélectionné
+    export_domain_blocks:
+      import:
+        description_html: Vous êtes sur le point d'importer une liste de blocs de domaine. Veuillez examiner cette liste très attentivement, spécialement si vous n'êtes pas l'auteur de cette liste.
+        existing_relationships_warning: Relations de suivi existantes
+        private_comment_description_html: 'Pour vous aider à suivre d''où viennent les blocs importés, des blocs importés seront créés avec le commentaire privé suivant : <q>%{comment}</q>'
+        private_comment_template: Importé depuis %{source} le %{date}
+        title: Importer des blocs de domaine
+      new:
+        title: Importer des blocs de domaine
+      no_file: Aucun fichier sélectionné
     follow_recommendations:
       description_html: "<strong>Les recommandations d'abonnement aident les nouvelles personnes à trouver rapidement du contenu intéressant</strong>. Si un·e utilisateur·rice n'a pas assez interagi avec les autres pour avoir des recommandations personnalisées, ces comptes sont alors recommandés. La sélection est mise à jour quotidiennement depuis un mélange de comptes ayant le plus d'interactions récentes et le plus grand nombre d'abonné·e·s locaux pour une langue donnée."
       language: Pour la langue
@@ -914,7 +934,7 @@ fr:
     warning: Soyez prudent·e avec ces données. Ne les partagez pas !
     your_token: Votre jeton d’accès
   auth:
-    apply_for_account: S’inscrire sur la liste d’attente
+    apply_for_account: Demander un compte
     change_password: Mot de passe
     delete_account: Supprimer le compte
     delete_account_html: Si vous désirez supprimer votre compte, vous pouvez <a href="%{path}">cliquer ici</a>. Il vous sera demandé de confirmer cette action.
@@ -1159,6 +1179,7 @@ fr:
     invalid_markup: 'contient un balisage HTML invalide: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Fichier CSV non valide. Erreur : %{error}'
       over_rows_processing_limit: contient plus de %{count} lignes
     modes:
       merge: Fusionner
@@ -1171,8 +1192,8 @@ fr:
       blocking: Liste de comptes bloqués
       bookmarks: Marque-pages
       domain_blocking: Liste des serveurs bloqués
-      following: Liste d’utilisateur·rice·s suivi·e·s
-      muting: Liste d’utilisateur·rice·s que vous masquez
+      following: Liste de comptes suivis
+      muting: Liste de comptes que vous masquez
     upload: Importer
   invites:
     delete: Désactiver
@@ -1431,7 +1452,7 @@ fr:
     relationships: Abonnements et abonné·e·s
     statuses_cleanup: Suppression automatique de messages
     strikes: Sanctions de modération
-    two_factor_authentication: Identification à deux facteurs
+    two_factor_authentication: Authentification à deux facteurs
     webauthn_authentication: Clés de sécurité
   statuses:
     attached:
@@ -1538,7 +1559,7 @@ fr:
       time: "%H:%M"
   two_factor_authentication:
     add: Ajouter
-    disable: Désactiver
+    disable: Désactiver l’A2F
     disabled_success: L'authentification à deux facteurs a été désactivée avec succès
     edit: Modifier
     enabled: L’authentification à deux facteurs est activée
diff --git a/config/locales/ga.yml b/config/locales/ga.yml
index 9df952ef1..90a1323a3 100644
--- a/config/locales/ga.yml
+++ b/config/locales/ga.yml
@@ -64,6 +64,9 @@ ga:
         all: Uile
         local: Áitiúil
         remote: Cian
+      memorialize: Déan cuntas chuimhneacháin de
+      memorialized: Cuntas chuimhneacháin
+      previous_strikes: Cionta roimhe seo
       promote: Ardaigh
       protocol: Prótacal
       public: Poiblí
@@ -119,13 +122,12 @@ ga:
       website: Suíomh Gréasáin
     domain_blocks:
       domain: Fearann
-      new:
-        severity:
-          silence: Ciúnaigh
     email_domain_blocks:
       delete: Scrios
     follow_recommendations:
       status: Stádas
+      title: Moltaí leanúna
+      unsuppress: Aischuir moladh leanúna
     instances:
       back_to_all: Uile
       back_to_warning: Rabhadh
@@ -138,6 +140,7 @@ ga:
         all: Uile
       purge: Glan
       title: Cónascadh
+      total_followed_by_us: Á leanúint againn
     invites:
       filter:
         all: Uile
@@ -174,11 +177,16 @@ ga:
         delete_user_data: Scrios Sonraí Úsáideora
     rules:
       delete: Scrios
+    settings:
+      appearance:
+        title: Cuma
     site_uploads:
       delete: Scrios comhad uaslódáilte
     statuses:
       account: Údar
+      back_to_account: Ar ais go leathanach cuntais
       deleted: Scriosta
+      favourites: Toghanna
       language: Teanga
       media:
         title: Meáin
@@ -213,7 +221,13 @@ ga:
         none: rabhadh
   auth:
     delete_account: Scrios cuntas
+    logout: Logáil Amach
     too_fast: Cuireadh an fhoirm isteach róthapa, triail arís.
+  authorize_follow:
+    follow: Lean
+    post_follow:
+      return: Taispeáin próifíl an úsáideora
+    title: Lean %{acct}
   deletes:
     proceed: Scrios cuntas
   disputes:
@@ -240,19 +254,46 @@ ga:
       thread: Comhráite
     index:
       delete: Scrios
+      title: Scagairí
   generic:
     delete: Scrios
   notification_mailer:
     admin:
       report:
         subject: Chuir %{name} tuairisc isteach
+    follow:
+      body: Tá %{name} do do leanúint anois!
+      subject: Tá %{name} do do leanúint anois
+      title: Leantóirí nua
+    reblog:
+      subject: Mhol %{name} do phostáil
+      title: Moladh nua
+  relationships:
+    follow_selected_followers: Lean leantóirí roghnaithe
+    followers: Leantóirí
+    following: Ag leanúint
+    remove_selected_followers: Bain leantóirí roghnaithe
+    remove_selected_follows: Dí-lean úsáideoirí roghnaithe
   rss:
     content_warning: 'Rabhadh ábhair:'
+  settings:
+    account: Cuntas
+    appearance: Cuma
+    back: Ar ais go Mastodon
+    development: Forbairt
+    edit_profile: Cuir an phróifíl in eagar
+    profile: Próifíl
   statuses:
+    boosted_from_html: Molta ó %{acct_link}
     content_warning: 'Rabhadh ábhair: %{warning}'
     show_more: Taispeáin níos mó
     show_newer: Taispeáin níos nuaí
     show_thread: Taispeáin snáithe
+    visibilities:
+      private: Leantóirí amháin
+      private_long: Taispeáin do leantóirí amháin
+  statuses_cleanup:
+    ignore_favs: Tabhair neamhaird ar toghanna
   user_mailer:
     warning:
       appeal: Cuir achomharc isteach
diff --git a/config/locales/gd.yml b/config/locales/gd.yml
index 24dc6e7ca..6d2ee464a 100644
--- a/config/locales/gd.yml
+++ b/config/locales/gd.yml
@@ -387,6 +387,8 @@ gd:
       add_new: Ceadaich co-nasgadh le àrainn
       created_msg: Chaidh an àrainn a cheadachadh a chùm co-nasgaidh
       destroyed_msg: Chan eil co-nasgadh leis an àrainn seo ceadaichte tuilleadh
+      export: Às-phortadh
+      import: Ion-phortadh
       undo: Na ceadaich co-nasgadh leis an àrainn
     domain_blocks:
       add_new: Cuir bacadh àrainne ùr ris
@@ -396,15 +398,18 @@ gd:
       edit: Deasaich bacadh na h-àrainne
       existing_domain_block: Chuir thu cuingeachaidhean nas teinne air %{name} mu thràth.
       existing_domain_block_html: Chuir thu cuingeachadh nas teinne air %{name} mu thràth, feumaidh tu a <a href="%{unblock_url}">dì-bhacadh</a> an toiseach.
+      export: Às-phortadh
+      import: Ion-phortadh
       new:
         create: Cruthaich bacadh
         hint: Cha chuir bacadh na h-àrainne crìoch air cruthachadh chunntasan san stòr-dàta ach cuiridh e dòighean maorsainneachd sònraichte an sàs gu fèin-obrachail air a h-uile dàta a tha aig na cunntasan ud.
         severity:
-          desc_html: Falaichidh am <strong>mùchadh</strong> postaichean a’ chunntais do dhuine sam bith nach eil ’ga leantainn. Bheir an <strong>cur à rèim</strong> air falbh gach susbaint, meadhan is dàta pròifil a’ chunntais. Tagh <strong>Chan eil gin</strong> mur eil thu ach airson faidhlichean meadhain a dhiùltadh.
           noop: Chan eil gin
-          silence: Mùch
+          silence: Cuingich
           suspend: Cuir à rèim
         title: Bacadh àrainne ùr
+      no_domain_block_selected: Cha deach bacadh àrainn sam bith atharrachadh o nach deach gin dhiubh a thaghadh
+      not_permitted: Chan fhaod thu seo a dhèanamh
       obfuscate: Doilleirich ainm na h-àrainne
       obfuscate_hint: Doilleirich pàirt de dh’ainm na h-àrainne air an liosta ma tha foillseachadh liosta nan cuingeachaidhean àrainne an comas
       private_comment: Beachd prìobhaideach
@@ -438,6 +443,14 @@ gd:
       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
+    export_domain_allows:
+      no_file: Cha deach faidhle a thaghadh
+    export_domain_blocks:
+      import:
+        title: Ion-phortaich bacaidhean àrainne
+      new:
+        title: Ion-phortaich bacaidhean àrainne
+      no_file: Cha deach faidhle a thaghadh
     follow_recommendations:
       description_html: "<strong>Cuidichidh molaidhean leantainn an luchd-cleachdaidh ùr ach an lorg iad susbaint inntinneach gu luath</strong>. Mur an do ghabh cleachdaiche conaltradh gu leòr le càch airson molaidhean leantainn gnàthaichte fhaighinn, mholamaid na cunntasan seo ’nan àite. Thèid an àireamhachadh às ùr gach latha, stèidhichte air na cunntasan air an robh an conaltradh as trice ’s an luchd-leantainn ionadail as motha sa chànan."
       language: Dhan chànan
@@ -634,6 +647,7 @@ gd:
         two: "%{count} chleachdaiche"
       categories:
         administration: Rianachd
+        devops: DevOps
         invites: Cuiridhean
         moderation: Maorsainneachd
         special: Sònraichte
@@ -650,7 +664,7 @@ gd:
       privileges:
         administrator: Rianaire
         administrator_description: Chan eil cuingeachadh sam bith air na cleachdaichean aig bheil an cead seo
-        delete_user_data: Sguab às dàta a’ chleachdaiche
+        delete_user_data: Sguabadh às dàta cleachdaiche
         delete_user_data_description: Leigidh seo le cleachdaichean dàta chleachdaichean eile a sguabadh às gun dàil
         invite_users: Thoir cuireadh do chleachdaichean
         invite_users_description: Leigidh seo le cleachdaichean cuireadh dhan fhrithealaiche a chur gu daoine eile
@@ -686,6 +700,7 @@ gd:
         view_audit_log_description: Leigidh seo le cleachdaichean coimhead air eachdraidh gnìomhan na rianachd air an fhrithealaiche
         view_dashboard: Coimhead air an deas-bhòrd
         view_dashboard_description: Leigidh seo le cleachdaichean an deas-bhòrd agus meatrachdan inntrigeadh
+        view_devops: DevOps
         view_devops_description: Leigidh seo le cleachdaichean na deas-bhùird aig Sidekiq is pgHero inntrigeadh
       title: Dreuchdan
     rules:
@@ -948,7 +963,7 @@ gd:
     warning: Bi glè chùramach leis an dàta seo. Na co-roinn le duine sam bith e!
     your_token: An tòcan inntrigidh agad
   auth:
-    apply_for_account: Faigh air an liosta-fheitheimh
+    apply_for_account: Iarr cunntas
     change_password: Facal-faire
     delete_account: Sguab às an cunntas
     delete_account_html: Nam bu mhiann leat an cunntas agad a sguabadh às, <a href="%{path}">nì thu an-seo e</a>. Thèid dearbhadh iarraidh ort.
@@ -1207,6 +1222,7 @@ gd:
     invalid_markup: 'tha HTML markup mì-dhligheach ann: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Faidhle CSV mì-dhligheach. Mearachd: %{error}'
       over_rows_processing_limit: tha còrr is %{count} ràgh(an) ann
     modes:
       merge: Co-aonaich
@@ -1423,6 +1439,7 @@ gd:
     browser: Brabhsair
     browsers:
       alipay: Alipay
+      blackberry: BlackBerry
       chrome: Chrome
       edge: Microsoft Edge
       electron: Electron
@@ -1436,6 +1453,7 @@ gd:
       phantom_js: PhantomJS
       qq: QQ Browser
       safari: Safari
+      uc_browser: UC Browser
       weibo: Weibo
     current_session: An seisean làithreach
     description: "%{browser} air %{platform}"
@@ -1444,6 +1462,8 @@ gd:
     platforms:
       adobe_air: Adobe Air
       android: Android
+      blackberry: BlackBerry
+      chrome_os: ChromeOS
       firefox_os: Firefox OS
       ios: iOS
       linux: Linux
diff --git a/config/locales/gl.yml b/config/locales/gl.yml
index cb15fc513..18b61cd17 100644
--- a/config/locales/gl.yml
+++ b/config/locales/gl.yml
@@ -373,6 +373,8 @@ gl:
       add_new: Engadir dominio á listaxe branca
       created_msg: Engadeu o dominio a lista branca
       destroyed_msg: Quitou o dominio da lista branca
+      export: Exportar
+      import: Importar
       undo: Eliminar da listaxe branca
     domain_blocks:
       add_new: Engadir novo bloqueo de dominio
@@ -382,15 +384,19 @@ gl:
       edit: Editar bloqueo de dominio
       existing_domain_block: Xa tes establecidas restricións maiores para %{name}.
       existing_domain_block_html: Xa impuxeches límites máis estrictos a %{name}, precisas <a href="%{unblock_url}">desbloquealo</a> primeiro.
+      export: Exportar
+      import: Importar
       new:
         create: Crear bloqueo
         hint: O bloqueo do dominio non previrá a creación de entradas de contas na base de datos, pero aplicará de xeito retroactivo e automático regras específicas de moderación sobre esas contas.
         severity:
-          desc_html: "<strong>Silenciar</strong> fará invisíbeis as mensaxes das contas para calquera que non os siga. <strong>Suspender</strong> eliminará todo o contido das contas, ficheiros multimedia, e datos de perfil. Emprega a opción de <strong>Ningún</strong> se só queres rexeitar ficheiros multimedia."
+          desc_html: Ao <strong>Limitar</strong> farás que as publicacións de contas deste dominio sexan invisibles para calquera que non as siga. Ao <strong>Suspender</strong> eliminarás do teu servidor todo o contido, multimedia, e datos de perfil para as contas deste dominio. Utiliza <strong>Nada</strong> se simplemente queres rexeitar ficheiros multimedia.
           noop: Ningún
-          silence: Silenciar
+          silence: Limitar
           suspend: Suspender
         title: Novo bloqueo de dominio
+      no_domain_block_selected: Non se cambiou ningún bloqueo de dominio porque non se seleccionou ningún
+      not_permitted: Non podes realizar esta acción
       obfuscate: Ofuscar o nome de dominio
       obfuscate_hint: Ofuscar parcialmente o nome do dominio na lista se está activada a publicación da lista de limitacións de dominio
       private_comment: Comentario privado
@@ -422,6 +428,20 @@ gl:
       resolved_dns_records_hint_html: O nome de dominio resolve os seguintes rexistros MX, que son os últimos responsables da aceptación de emails. Bloqueando un dominio MX rexeitarás calquera enderezo de email que use este dominio MX, incluso se o nome de dominio visible é outro. <strong>Ten coidado de non bloquear os principais provedores.</strong>
       resolved_through_html: Resolto a través de %{domain}
       title: Listaxe negra de email
+    export_domain_allows:
+      new:
+        title: Importar dominios permitidos
+      no_file: Ningún ficheiro seleccionado
+    export_domain_blocks:
+      import:
+        description_html: Vas importar unha lista de dominios a bloquear. Comproba a lista con atención, especialmente se non creaches ti mesma a lista.
+        existing_relationships_warning: Relacións de seguimento existentes
+        private_comment_description_html: 'Para axudarche a lembrar de onde veñen os bloqueos importados, imos crealos engadindo o seguinte comentario privado: <q>%{comment}</q>'
+        private_comment_template: Importada desde %{source} o %{date}
+        title: Importar bloqueos de dominio
+      new:
+        title: Importar bloqueos de dominio
+      no_file: Ningún ficheiro seleccionado
     follow_recommendations:
       description_html: "<strong>As recomendacións de seguimento son útiles para que as novas usuarias atopen contidos interesantes</strong>. Cando unha usuaria aínda non interactuou con outras para obter recomendacións de seguimento, estas contas serán recomendadas. Variarán a diario xa que se escollen en base ao maior número de interaccións e ao contador local de seguimentos para un idioma dado."
       language: Para o idioma
@@ -525,7 +545,7 @@ gl:
     relays:
       add_new: Engadir un novo repetidor
       delete: Eliminar
-      description_html: Un <strong>repetidor da federación</strong> é un servidor intermedio que intercambia grandes volumes de publicacións públicas entre servidores que se suscriban e publiquen nel. <strong>Pode axudar a servidores pequenos e medios a descubrir contido no fediverso</strong>, o que de outro xeito precisaría que as usuarias locais seguisen a outra xente en servidores remotos.
+      description_html: Un <strong>repetidor da federación</strong> é un servidor intermedio que intercambia grandes volumes de publicacións públicas entre servidores que se suscriban e publiquen nel. <strong>Pode axudar a servidores pequenos e medios a descubrir contido no fediverso</strong>, o que doutro xeito precisaría que as usuarias locais seguisen a outra xente en servidores remotos.
       disable: Desactivar
       disabled: Desactivado
       enable: Activar
@@ -608,6 +628,7 @@ gl:
         other: "%{count} usuarias"
       categories:
         administration: Administración
+        devops: DevOps
         invites: Convites
         moderation: Moderación
         special: Especial
@@ -658,6 +679,7 @@ gl:
         view_audit_log_description: Permite ver o historial de accións administrativas no servidor
         view_dashboard: Ver Taboleiro
         view_dashboard_description: Permite acceder ao taboleiro e varias métricas do servidor
+        view_devops: DevOps
         view_devops_description: Permite acceder aos taboleiros Sidekiq e phHero
       title: Roles
     rules:
@@ -677,7 +699,7 @@ gl:
         preamble: Personalizar a interface web de Mastodon.
         title: Aparencia
       branding:
-        preamble: A personalización do teu servidor diferénciao doutros servidores da rede. A información podería mostrarse en diversos entornos, como a interface web de Mastodon, aplicacións nativas, vista previa das ligazóns noutras webs e apps de mensaxería, e similares. Debido a esto é recomendable que a información sexa clara, curta e concisa.
+        preamble: A personalización do teu servidor diferénciao doutros servidores da rede. A información podería mostrarse en diversos entornos, como a interface web de Mastodon, aplicacións nativas, vista previa das ligazóns noutras webs e apps de mensaxería, e similares. Debido a isto é recomendable que a información sexa clara, curta e concisa.
         title: Personalización
       content_retention:
         preamble: Controla como se gardan en Mastodon os contidos creados polas usuarias.
@@ -912,7 +934,7 @@ gl:
     warning: Ten moito tino con estos datos. Non os compartas nunca con ninguén!
     your_token: O seu testemuño de acceso
   auth:
-    apply_for_account: Solicita o acceso
+    apply_for_account: Solicita unha conta
     change_password: Contrasinal
     delete_account: Eliminar conta
     delete_account_html: Se queres eliminar a túa conta, podes <a href="%{path}">facelo aquí</a>. Deberás confirmar a acción.
@@ -930,7 +952,7 @@ gl:
     login: Acceder
     logout: Pechar sesión
     migrate_account: Mover a unha conta diferente
-    migrate_account_html: Se queres redirixir esta conta hacia outra diferente, pode <a href="%{path}">configuralo aquí</a>.
+    migrate_account_html: Se queres redirixir esta conta hacia outra diferente, podes <a href="%{path}">facelo aquí</a>.
     or_log_in_with: Ou accede con
     privacy_policy_agreement_html: Lin e acepto a <a href="%{privacy_policy_path}" target="_blank">política de privacidade</a>
     providers:
@@ -1071,9 +1093,9 @@ gl:
     archive_takeout:
       date: Data
       download: Descargue o seu ficheiro
-      hint_html: Pode solicitar un ficheiro coas <strong>súas publicacións e ficheiros de medios</strong>. Os datos estarán en formato ActivityPub e son compatibles con calquera software que o siga. Podes solicitar un ficheiro cada 7 días.
+      hint_html: Podes solicitar un ficheiro coas <strong>túas publicacións e ficheiros multimedia</strong>. Os datos estarán en formato ActivityPub e son compatibles con calquera software que o siga. Podes solicitar un ficheiro cada 7 días.
       in_progress: Xerando o seu ficheiro...
-      request: Solicite o ficheiro
+      request: Solicita o ficheiro
       size: Tamaño
     blocks: Bloqueadas
     bookmarks: Marcadores
@@ -1127,7 +1149,7 @@ gl:
       batch:
         remove: Eliminar do filtro
       index:
-        hint: Este filtro aplícase para seleccionar publicacións individuais independentemente de outros criterios. Podes engadir máis publicacións a este filtro desde a interface web.
+        hint: Este filtro aplícase para seleccionar publicacións individuais independentemente doutros criterios. Podes engadir máis publicacións a este filtro desde a interface web.
         title: Publicacións filtradas
   footer:
     trending_now: Tendencia agora
@@ -1157,13 +1179,14 @@ gl:
     invalid_markup: 'contén cancelos HTML non válidas: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Ficheiro CSV non válido. Erro: %{error}'
       over_rows_processing_limit: contén máis de %{count} filas
     modes:
       merge: Fusionar
       merge_long: Manter os rexistros actuais e engadir novos
       overwrite: Sobreescribir
       overwrite_long: Sustituír rexistros actuais cos novos
-    preface: Pode importar os datos que exportou de outro servidor, tales como a lista de usuarias que está a seguir ou bloquear.
+    preface: Podes importar os datos que exportaches doutro servidor, tales como a lista de usuarias que estás a seguir ou bloquear.
     success: Os teus datos foron correctamente subidos e serán procesados ao momento
     types:
       blocking: Lista de bloqueo
@@ -1371,6 +1394,7 @@ gl:
     browser: Navegador
     browsers:
       alipay: Alipay
+      blackberry: Blackberry
       chrome: Chrome
       edge: Microsoft Edge
       electron: Electron
@@ -1384,6 +1408,7 @@ gl:
       phantom_js: PhantomJS
       qq: Navegador QQ
       safari: Safari
+      uc_browser: Navegador QQ
       weibo: Weibo
     current_session: Sesión actual
     description: "%{browser} en %{platform}"
@@ -1392,6 +1417,8 @@ gl:
     platforms:
       adobe_air: Adobe Air
       android: Android
+      blackberry: Blackberry
+      chrome_os: ChromeOS
       firefox_os: Firefox OS
       ios: iOS
       linux: Linux
diff --git a/config/locales/he.yml b/config/locales/he.yml
index bc51c21ac..981f31685 100644
--- a/config/locales/he.yml
+++ b/config/locales/he.yml
@@ -49,30 +49,30 @@ he:
         submit: שלחי בקשה לשינוי דוא"ל
         title: שינוי כתובת דוא"ל עבור המשתמש.ת %{username}
       change_role:
-        changed_msg: תפקיד שונה בהצלחה !
-        label: שנה תפקיד
+        changed_msg: התפקיד שונה בהצלחה!
+        label: שינוי תפקיד
         no_role: ללא תפקיד
-        title: שינוי תפקיד  עבור המשתמש.ת %{username}
+        title: שינוי תפקיד עבור %{username}
       confirm: אישור
       confirmed: אושר
-      confirming: המאשר
+      confirming: בתהליך אישור
       custom: התאמה אישית
-      delete: מחיקת חשבון
+      delete: מחיקת נתונים
       deleted: מחוקים
       demote: הורדה בדרגה
       destroyed_msg: הנתונים של %{username} נכנסו לתור המחיקה וצפויים להימחק באופן מיידי
-      disable: לחסום
-      disable_sign_in_token_auth: השעיית הזדהות באמצעות אסימון בדוא"ל של משתמש
-      disable_two_factor_authentication: ביטול הזדהות דו-שלבית
-      disabled: נחסם
-      display_name: שם לתצוגה
+      disable: הקפאה
+      disable_sign_in_token_auth: ביטול הזדהות באמצעות אסימון דוא״ל
+      disable_two_factor_authentication: ביטול הזדהות דו־שלבית
+      disabled: מוקפא
+      display_name: שם תצוגה
       domain: תחום
       edit: עריכה
-      email: דוא"ל
-      email_status: סטטוס דוא"ל
-      enable: לאפשר
-      enable_sign_in_token_auth: הפעלת אסימון הזדהות בדוא"ל של משתמש
-      enabled: מאופשר
+      email: דוא״ל
+      email_status: מצב דוא״ל
+      enable: להפשיר
+      enable_sign_in_token_auth: הפעלת אסימון הזדהות בדוא״ל
+      enabled: מופעל
       enabled_msg: ביטול השעית החשבון של %{username} בוצע בהצלחה
       followers: עוקבים
       follows: נעקבים
@@ -148,7 +148,7 @@ he:
         targeted_reports: דיווחים נגד חשבון זה
       silence: השתקה
       silenced: מוגבלים
-      statuses: הודעות
+      statuses: חצרוצים
       strikes: עבירות קודמות
       subscribe: הרשמה
       suspend: השעייה
@@ -387,6 +387,8 @@ he:
       add_new: אפשר מַאֲחָד (פדרציה) עם שם המתחם
       created_msg: הדומיין אופשר לפדרציה בהצלחה
       destroyed_msg: הדומיין לא אופשר לפדרציה
+      export: ייצוא
+      import: ייבוא
       undo: אסור מַאֲחָד (פדרציה) עם שם המתחם
     domain_blocks:
       add_new: הוספת חדש
@@ -396,15 +398,19 @@ he:
       edit: עריכת חסימת שם מתחם
       existing_domain_block: כבר החלת הגבלות מחמירות יותר על %{name}
       existing_domain_block_html: כבר הפעלת הגבלות חמורות יותר על %{name}, עליך ראשית <a href="%{unblock_url}">להסיר מעליו/ה את החסימה</a>.
+      export: ייצוא
+      import: ייבוא
       new:
         create: יצירת חסימה
         hint: חסימת השרת לא תמנע יצירת רישומי חשבון במסד הנתונים, אבל תבצע פעולות ניהול קהילה מסוימות על חשבונות אלו אוטומטית ורטרואקטיבית.
         severity:
-          desc_html: "<strong>השתקה</strong> תחביא הודעות מחשבון זה לכל מי שלא עוקב אחריו. <strong>השעייה</strong> תסיר מהשרת את כל התוכן, מדיה ותכונות הפרופיל שמקושרות לחשבון זה. <strong>כלום</strong> כדי לחסום קבצי מדיה בלבד."
+          desc_html: "<strong>הגבלה</strong> תחביא חצרוצים מחשבון זה לכל מי שלא עוקב אחריו. <strong>השעייה</strong> תסיר מהשרת את כל התוכן, מדיה ותכונות הפרופיל שמקושרות לחשבון זה. <strong>כלום</strong> כדי לחסום קבצי מדיה בלבד."
           noop: ללא
-          silence: השתקה
+          silence: הגבלה
           suspend: השעייה
         title: חסימת שרת חדשה
+      no_domain_block_selected: לא השתנה כלום ברשימת חסימות השרתים מכיוון שאף אחד מהם לא נבחר
+      not_permitted: איך לך הרשאה כדי לבצע פעולה זו
       obfuscate: לערפל את שם הדומיין
       obfuscate_hint: לערפל באופן חלקי את שם הדומיין ברשימה אם פרסום רשימת ההגבלות על דומיינים מאופשר
       private_comment: הערה פרטית
@@ -438,6 +444,20 @@ he:
       resolved_dns_records_hint_html: שם הדומיין מוביל לדומייניי ה-MX הבאים, שהם בסופו של דבר אחראיים לקבלת דוא"ל. חסימת דומיין MX תוביל לחסימת הרשמות מכל כתובת דוא"ל שעושה שימוש בדומיין MX זה, אפילו אם הדומיין הגלוי שונה. <strong>יש להמנע מלחסום ספקי דוא"ל מובילים.</strong>
       resolved_through_html: נמצא דרך %{domain}
       title: דומייניי דוא"ל חסומים
+    export_domain_allows:
+      new:
+        title: יבוא רשימת שרתים מאושרים
+      no_file: אף קובץ לא נבחר
+    export_domain_blocks:
+      import:
+        description_html: הנכם עומדים ליבא רשימת חסימות. אנא וודאו היטב שאתם יודעים מה הרשימה כוללת, במיוחד אם לא יצרתם אותה בעצמכם.
+        existing_relationships_warning: קשרי עקיבה קיימים
+        private_comment_description_html: 'כדי לסייע במעקב מאיכן הגיעו חסימות, חסימות מיובאות ילוו בהערה פרטית זו: <q>%{comment}</q>'
+        private_comment_template: יובא מתוך %{source} בתאריך %{date}
+        title: יבוא רשימת שרתים חסומים
+      new:
+        title: יבוא רשימת שרתים חסומים
+      no_file: לא נבחר קובץ
     follow_recommendations:
       description_html: "<strong>עקבו אחר ההמלצות על מנת לעזור למשתמשים חדשים למצוא תוכן מעניין</strong>. במידה ומשתמש לא תקשר מספיק עם משתמשים אחרים כדי ליצור המלצות מעקב, חשבונות אלה יומלצו במקום. הם מחושבים מחדש על בסיסי יומיומי מתערובת של החשבונות הפעילים ביותר עם החשבונות הנעקבים ביותר עבור שפה נתונה."
       language: עבור שפה
@@ -616,7 +636,7 @@ he:
       resolved: פתור
       resolved_msg: הדו"ח נפתר בהצלחה!
       skip_to_actions: דלג/י לפעולות
-      status: הודעה
+      status: מצב
       statuses: התוכן עליו דווח
       statuses_description_html: התוכן הפוגע יצוטט בתקשורת עם החשבון המדווח
       target_origin: מקור החשבון המדווח
@@ -707,7 +727,7 @@ he:
         preamble: התאמה מיוחדת של מנשק המשתמש של מסטודון.
         title: מראה
       branding:
-        preamble: המיתוג של השרת שלך מבדל אותו משרתים אחרים ברשת. המידע יכול להיות מוצג בסביבות שונות כגון מנשק הווב של מסטודון, יישומים מרומיים, בצפיה מקדימה של קישור או בתוך יישומוני הודעות וכולי. מסיבה זו מומלץ לשמור על המידע ברור, קצר וממצה.
+        preamble: המיתוג של השרת שלך מבדל אותו משרתים אחרים ברשת. המידע יכול להיות מוצג בסביבות שונות כגון מנשק הווב של מסטודון, יישומים מקומיים, בצפיה מקדימה של קישור או בתוך יישומוני הודעות וכולי. מסיבה זו מומלץ לשמור על המידע ברור, קצר וממצה.
         title: מיתוג
       content_retention:
         preamble: שליטה על דרך אחסון תוכן המשתמשים במסטודון.
@@ -950,14 +970,14 @@ he:
     warning: זהירות רבה נדרשת עם מידע זה. אין לחלוק אותו אף פעם עם אף אחד!
     your_token: אסימון הגישה שלך
   auth:
-    apply_for_account: להכנס לרשימת המתנה
+    apply_for_account: הגשת בקשה לחשבון
     change_password: סיסמה
     delete_account: מחיקת חשבון
     delete_account_html: אם ברצונך למחוק את החשבון, ניתן <a href="%{path}">להמשיך כאן</a>. תתבקש/י לספק אישור נוסף.
     description:
       prefix_invited_by_user: "@%{name} רוצה שתצטרף לשרת זה במסטודון!"
       prefix_sign_up: הרשם/י למסטודון היום!
-      suffix: כבעל/ת חשבון, תוכל/י לעקוב אחרי אנשים, לפרסם עדכונים ולהחליף מסרים עם משתמשים מכל שרת מסטודון ועוד!
+      suffix: כבעל/ת חשבון, תוכל/י לעקוב אחרי אנשים, לפרסם עדכונים ולהחליף חצרוצים עם משתמשים מכל שרת מסטודון ועוד!
     didnt_get_confirmation: לא התקבלו הוראות אימות?
     dont_have_your_security_key: אין לך מפתח אבטחה?
     forgot_password: הנשתכחה סיסמתך?
@@ -970,7 +990,7 @@ he:
     migrate_account: מעבר לחשבון אחר
     migrate_account_html: אם ברצונך להכווין את החשבון לעבר חשבון אחר, ניתן <a href="%{path}">להגדיר זאת כאן</a>.
     or_log_in_with: או התחבר באמצעות
-    privacy_policy_agreement_html: קארתי והסכמתי ל<a href="%{privacy_policy_path}" target="_blank">מדיניות הפרטיות</a>
+    privacy_policy_agreement_html: קראתי והסכמתי ל<a href="%{privacy_policy_path}" target="_blank">מדיניות הפרטיות</a>
     providers:
       cas: CAS
       saml: SAML
@@ -989,7 +1009,7 @@ he:
       title: הגדרות
     sign_up:
       preamble: כיוון שמסטודון מבוזרת, תוכל/י להשתמש בחשבון שלך משרתי מסטודון או רשתות תואמות אחרות אם אין לך חשבון על שרת זה.
-      title: הבא נקים לך את השרת בכתובת %{domain}.
+      title: הבה ניצור לך חשבון בשרת %{domain}.
     status:
       account_status: מצב חשבון
       confirming: ממתין שדוא"ל האישור יושלם.
@@ -1177,6 +1197,11 @@ he:
     trending_now: נושאים חמים
   generic:
     all: הכל
+    all_matching_items_selected_html:
+      many: נבחרו <strong>%{count}</strong> פריטים שתאמו לחיפוש בעמוד זה.
+      one: נבחר פריט <strong>%{count}</strong> שתאם לחיפוש בעמוד זה.
+      other: נבחרו <strong>%{count}</strong> פריטים שתאמו לחיפוש בעמוד זה.
+      two: נבחרו <strong>%{count}</strong> פריטים שתאמו לחיפוש בעמוד זה.
     changes_saved_msg: השינויים נשמרו בהצלחה!
     copy: להעתיק
     delete: למחוק
@@ -1194,6 +1219,7 @@ he:
     invalid_markup: 'מכיל קוד HTML לא תקין: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'קובץ CSV שבור. שגיאה: %{error}'
       over_rows_processing_limit: מכיל יותר מ-%{count} עמודות
     modes:
       merge: מיזוג
@@ -1540,7 +1566,7 @@ he:
     ignore_favs: התעלם ממחובבים
     ignore_reblogs: התעלם מהדהודים
     interaction_exceptions: החרגות מבוססות אינטראקציות
-    interaction_exceptions_explanation: שים.י לב שאין עֲרֻבָּה למחיקת הודעות אם הן יורדות מתחת לסף החיבובים או ההדהודים לאחר הסריקה הראשונית.
+    interaction_exceptions_explanation: כדאי לשים לב שאין ערובה למחיקת הודעות אם הן יורדות מתחת לסף החיבובים או ההדהודים לאחר הסריקה הראשונית.
     keep_direct: שמירת הודעות ישירות
     keep_direct_hint: לא מוחק אך אחת מההודעות הישירות שלך
     keep_media: שמור הודעות עם מדיה
@@ -1656,8 +1682,8 @@ he:
       edit_profile_action: הגדרת פרופיל
       edit_profile_step: תוכל.י להתאים אישית את הפרופיל באמצעות העלאת יצגן (אוואטר), כותרת, שינוי כינוי ועוד. אם תרצה.י לסקור את עוקביך/ייך החדשים לפני שתרשה.י להם לעקוב אחריך/ייך.
       explanation: הנה כמה טיפים לעזור לך להתחיל
-      final_action: התחל/ילי לפרסם הודעות
-      final_step: 'התחל/ילי לפרסם הודעות! אפילו ללא עוקבים ייתכן שההודעות הפומביות שלך יראו ע"י אחרים, למשל בציר הזמן המקומי או בתגיות הקבצה (האשתגים). כדאי להציג את עצמך תחת התגית #introductions או #היכרות.'
+      final_action: התחל/ילי לחצרץ
+      final_step: 'התחל/ילי לחצצר! אפילו ללא עוקבים ייתכן שהחצרוצים הפומביים שלך יראו ע"י אחרים, למשל בציר הזמן המקומי או בתגיות הקבצה (האשתגים). כדאי להציג את עצמך תחת התגית #introductions או #היכרות'
       full_handle: שם המשתמש המלא שלך
       full_handle_hint: זה מה שתאמר.י לחברייך כדי שיוכלו לשלוח לך הודעה או לעקוב אחרייך ממופע אחר.
       subject: ברוכים הבאים למסטודון
diff --git a/config/locales/hu.yml b/config/locales/hu.yml
index 529d4dadf..8e1eb7f15 100644
--- a/config/locales/hu.yml
+++ b/config/locales/hu.yml
@@ -373,6 +373,8 @@ hu:
       add_new: Domain engedélyezése
       created_msg: A domain rákerült az engedélyező-listára
       destroyed_msg: A domain lekerült az engedélyező-listáról
+      export: Exportálás
+      import: Importálás
       undo: Eltávolítás az engedélyező-listáról
     domain_blocks:
       add_new: Új tiltott domain hozzáadása
@@ -382,15 +384,19 @@ hu:
       edit: Domain tiltás szerkesztése
       existing_domain_block: 'Már szigorúbb korlátozások vonatkoznak a következőre: %{name}.'
       existing_domain_block_html: A %{name} domainen már szorosabb korlátokat állítottál be, először <a href="%{unblock_url}">oldd fel a tiltást</a>.
+      export: Exportálás
+      import: Importálás
       new:
         create: Tiltás létrehozása
         hint: A domain tiltása nem gátolja meg az új fiókok hozzáadását az abatbázishoz, de visszamenőlegesen és automatikusan aktivál bizonyos moderációs szabályokat ezen fiókok esetében.
         severity:
-          desc_html: A <strong>Némítás</strong> elrejti az adott felhasználó bejegyzéseit mindenki elől, aki nem követi őt. A <strong>Felfüggesztés</strong> eltávolítja az adott felhasználó által létrehozott minden tartalmat, ide értve a médiafájlokat és a fiókadatokat is. Válaszd az <strong>Egyik sem</strong> opciót, ha csupán a médiafájlokat szeretnéd elutasítani.
+          desc_html: A <strong>Korlátozás</strong> elrejti a domain fiókjaitól származó bejegyzéseket azok elől, akik nem követik őket. A <strong>Felfüggesztés</strong> eltávolítja a domain fiókjaitól származó összes tartalmat, médiafájlt és profiladatot. Használd a <strong>Nincs </strong> lehetőséget, ha csak a médiafájlokat akarod elutasítani.
           noop: Egyik sem
-          silence: Némítás
+          silence: Korlátozás
           suspend: Felfüggesztés
         title: Új domain tiltása
+      no_domain_block_selected: Nem változott meg egy domain tiltás sem, mert semmi sem volt kiválasztva
+      not_permitted: Nem vagy jogosult a művelet végrehajtására
       obfuscate: Domain név álcázása
       obfuscate_hint: Részlegesen álcázza a domain nevet a listában, ha a domain korlátozások listájának közzététele engedélyezett
       private_comment: Privát megjegyzés
@@ -422,6 +428,20 @@ hu:
       resolved_dns_records_hint_html: A domain név a következő MX domain-ekre oldódik fel, melyek valójában fogadják az e-mailt. Az MX domain letiltása minden olyan feliratkozást tiltani fog, melyben az e-mailcím ugyanazt az MX domaint használja, még akkor is, ha a látható domain név más. <strong>Légy óvatos, hogy ne tilts le nagy e-mail szolgáltatókat.</strong>
       resolved_through_html: Feloldva %{domain}-n keresztül
       title: Tiltott e-mail domainek
+    export_domain_allows:
+      new:
+        title: Domain engedélyezések importálása
+      no_file: Nincs fájl kiválasztva
+    export_domain_blocks:
+      import:
+        description_html: Domain tiltások listájának importálására készülsz. Nézd át alaposan, különösen ha nem te állítottad össze ezt a listát.
+        existing_relationships_warning: Létező követési kapcsolatok
+        private_comment_description_html: 'Az importált tiltások forrásának könnyebb követése érdekében, az importált tiltások a következő privát megjegyzéssel lesznek létrehozva: <q>%{comment}</q>'
+        private_comment_template: 'Innen importálva: %{source}, ekkor: %{date}'
+        title: Domain tiltások importálása
+      new:
+        title: Domain tiltások importálása
+      no_file: Nincs fájl kiválasztva
     follow_recommendations:
       description_html: "<strong>A követési ajánlatok segítik az új felhasználókat az érdekes tartalmak gyors megtalálásában</strong>. Ha egy felhasználó még nem érintkezett eleget másokkal ahhoz, hogy személyre szabott ajánlatokat kapjon, ezeket a fiókokat ajánljuk helyette. Ezeket naponta újraszámítjuk a nemrég legtöbb embert foglalkoztató, illetve legtöbb helyi követővel rendelkező fiókok alapján."
       language: Ezen a nyelven
@@ -608,6 +628,7 @@ hu:
         other: "%{count} felhasználó"
       categories:
         administration: Adminisztráció
+        devops: DevOps
         invites: Meghívások
         moderation: Moderáció
         special: Speciális
@@ -658,6 +679,7 @@ hu:
         view_audit_log_description: Lehetővé teszi, hogy a felhasználó megtekintse a kiszolgáló adminisztratív eseményeinek történetét
         view_dashboard: Irányítópult megtekintése
         view_dashboard_description: Lehetővé teszi, hogy a felhasználó elérje az irányítópultot és vele számos metrikát
+        view_devops: DevOps
         view_devops_description: Lehetővé teszi, hogy a felhasználó elérje a Sidekiq és pgHero irányítópultjait
       title: Szerepek
     rules:
@@ -912,7 +934,7 @@ hu:
     warning: Ez érzékeny adat. Soha ne oszd meg másokkal!
     your_token: Hozzáférési kulcsod
   auth:
-    apply_for_account: Felkerülés a várólistára
+    apply_for_account: Fiók kérése
     change_password: Jelszó
     delete_account: Felhasználói fiók törlése
     delete_account_html: Felhasználói fiókod törléséhez <a href="%{path}">kattints ide</a>. A rendszer újbóli megerősítést fog kérni.
@@ -1157,6 +1179,7 @@ hu:
     invalid_markup: 'hibás HTML leíró: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Érvénytelen CSV-fájl. Hiba: %{error}'
       over_rows_processing_limit: több mint %{count} sort tartalmaz
     modes:
       merge: Összefésülés
@@ -1371,6 +1394,7 @@ hu:
     browser: Böngésző
     browsers:
       alipay: Alipay
+      blackberry: BlackBerry
       chrome: Chrome
       edge: Microsoft Edge
       electron: Electron
@@ -1384,6 +1408,7 @@ hu:
       phantom_js: PhantomJS
       qq: QQ Browser
       safari: Safari
+      uc_browser: UC Browser
       weibo: Weibo
     current_session: Jelenlegi munkamenet
     description: "%{browser} az alábbi platformon: %{platform}"
@@ -1392,6 +1417,8 @@ hu:
     platforms:
       adobe_air: Adobe Air
       android: Android
+      blackberry: BlackBerry
+      chrome_os: ChromeOS
       firefox_os: Firefox OS
       ios: iOS
       linux: Linux
diff --git a/config/locales/hy.yml b/config/locales/hy.yml
index e854fb44a..ca2598b14 100644
--- a/config/locales/hy.yml
+++ b/config/locales/hy.yml
@@ -259,7 +259,6 @@ hy:
         create: Ստեղծել արգելափակում
         severity:
           noop: Ոչ մի
-          silence: Լուռ
           suspend: Կասեցում
         title: Նոր տիրոյթի արգելափակում
       private_comment: Փակ մեկնաբանութիւն
diff --git a/config/locales/id.yml b/config/locales/id.yml
index 95660e16d..a6965cdbd 100644
--- a/config/locales/id.yml
+++ b/config/locales/id.yml
@@ -36,14 +36,14 @@ id:
       avatar: Avatar
       by_domain: Domian
       change_email:
-        changed_msg: כתובת דוא"ל שונתה בהצלחה !
+        changed_msg: Email berhasil diubah!
         current_email: Email saat ini
         label: Ganti email
         new_email: Email baru
         submit: Ganti email
         title: Ganti email untuk %{username}
       change_role:
-        changed_msg: תפקיד שונה בהצלחה !
+        changed_msg: Peran berhasil diubah!
         label: Ubah peran
         no_role: Tidak ada peran
         title: Ganti peran untuk %{username}
@@ -366,6 +366,8 @@ id:
       add_new: Daftar putihkan domain
       created_msg: Domain berhasil masuk daftar putih
       destroyed_msg: Domain dihapus dari daftar putih
+      export: Ekspor
+      import: Impor
       undo: Hapus dari daftar putih
     domain_blocks:
       add_new: Tambah
@@ -375,15 +377,19 @@ id:
       edit: Edit blok domain
       existing_domain_block: Anda sudah menerapkan batasan ketat terhadap %{name}.
       existing_domain_block_html: Anda telah menerapkan batasan yang lebih ketat pada %{name}, Anda harus <a href="%{unblock_url}">membuka blokirnya</a> lebih dulu.
+      export: Ekspor
+      import: Impor
       new:
         create: Buat pemblokiran
         hint: Pemblokiran domain tidak akan menghentikan pembuatan akun dalam database, tapi kami akan memberikan moderasi otomatis pada akun-akun tersebut.
         severity:
-          desc_html: "<strong>Pendiaman</strong> akan membuat semua postingan tidak dapat dilihat oleh semua orang yang tidak mengikutinya. <strong>Suspen</strong> akan menghapus semua konten, media, dan profil dari akun yang bersangkutan."
+          desc_html: "<strong>Batas</strong> akan membuat postingan dari akun yang ada di domain ini terlihat oleh siapa saja yang tidak mengikuti mereka. <strong>Tangguhkan</strong> akan menghapus semua konten, media, dan data profil dari akun domain server Anda. Gunakan <strong>Catatan</strong> jika Anda ingin menolak berkas media."
           noop: Tidak ada
-          silence: Pendiaman
+          silence: Batas
           suspend: Suspen
         title: Pemblokiran domain baru
+      no_domain_block_selected: Tidak ada blok domain yang diubah karena tidak ada yang dipilih
+      not_permitted: Anda tidak diperbolehkan untuk melakukan aksi ini
       obfuscate: Nama domain kabur
       obfuscate_hint: Mengaburkan nama domain sebagian di daftar jika pengiklanan batasan daftar domain diaktifkan
       private_comment: Komentar pribadi
@@ -414,6 +420,20 @@ id:
       resolved_dns_records_hint_html: Pembaruan nama domain mengikuti domain MX, yang bertanggung jawab menerima email. Memblokir domain MX akan memblokir pendaftaran dari alamat email apapun yang menggunakan domain MX sama, meskipun nama domainnya beda. <strong>Hati-hati untuk tidak memblokir layanan email besar.</strong>
       resolved_through_html: Diperbarui melalui %{domain}
       title: Domain email terblokir
+    export_domain_allows:
+      new:
+        title: Impor izin domain
+      no_file: Tidak ada file dipilih
+    export_domain_blocks:
+      import:
+        description_html: Anda akan mengimpor daftar blok domain. Harap tinjau daftar ini dengan sangat hati-hati, terutama jika Anda sendiri tidak menulis daftar ini.
+        existing_relationships_warning: Hubungan tindak lanjut yang ada
+        private_comment_description_html: 'Untuk membantu Anda melacak asal blok yang diimpor, blok yang diimpor akan dibuat dengan komentar pribadi berikut: <q>%{comment}</q>'
+        private_comment_template: Diimpor dari %{source} pada %{date}
+        title: Impor blok domain
+      new:
+        title: Impor blok domain
+      no_file: Tidak ada file dipilih
     follow_recommendations:
       description_html: <strong>"Rekomendasi untuk diikuti" membantu pengguna baru untuk secara cepat menemukan konten yang menarik</strong>. Ketika pengguna belum cukup berinteraksi dengan lainnya sehingga belum memunculkan rekomendasi, akun-akun ini akan direkomendasikan. Mereka dihitung ulang secara harian dari campuran akun-akun dengan keterlibatan tertinggi baru-baru ini dan jumlah pengikut lokal tertinggi untuk bahasa tertentu.
       language: Untuk bahasa
@@ -595,6 +615,7 @@ id:
         other: "%{count} pengguna"
       categories:
         administration: Administrasi
+        devops: DevOps
         invites: Undangan
         moderation: Moderasi
         special: Khusus
@@ -644,6 +665,7 @@ id:
         view_audit_log_description: Memungkinkan pengguna untuk melihat riwayat tindakan administratif di server
         view_dashboard: Lihat Dasbor
         view_dashboard_description: Memungkinkan pengguna untuk mengakses dasbor dan berbagai metrik
+        view_devops: DevOps
         view_devops_description: Memungkinkan pengguna untuk mengakses dasbor Sidekiq dan pgHero
       title: Peran
     rules:
@@ -894,7 +916,7 @@ id:
     warning: Hati-hati dengan data ini. Jangan bagikan kepada siapapun!
     your_token: Token akses Anda
   auth:
-    apply_for_account: Masuk ke daftar tunggu
+    apply_for_account: Permintaan akun
     change_password: Kata sandi
     delete_account: Hapus akun
     delete_account_html: Jika Anda ingin menghapus akun Anda, Anda dapat <a href="%{path}">memproses ini</a>. Anda akan dikonfirmasi.
@@ -1132,6 +1154,7 @@ id:
     invalid_markup: 'berisi markup HTML yang tidak valid: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Berkas CVS tidak sah. Kesalahan: %{error}'
       over_rows_processing_limit: berisi lebih dari %{count} baris
     modes:
       merge: Gabung
@@ -1345,6 +1368,7 @@ id:
     browser: Peramban
     browsers:
       alipay: Alipay
+      blackberry: BlackBerry
       chrome: Chrome
       edge: Microsoft Edge
       electron: Electron
@@ -1358,6 +1382,7 @@ id:
       phantom_js: PhantomJS
       qq: QQ Browser
       safari: Safari
+      uc_browser: UC Browser
       weibo: Weibo
     current_session: Sesi sekarang
     description: "%{browser} di %{platform}"
@@ -1366,6 +1391,8 @@ id:
     platforms:
       adobe_air: Adobe Air
       android: Android
+      blackberry: BlackBerry
+      chrome_os: ChromeOS
       firefox_os: Firefox OS
       ios: iOS
       linux: Linux
diff --git a/config/locales/io.yml b/config/locales/io.yml
index f8d233475..7dc54986e 100644
--- a/config/locales/io.yml
+++ b/config/locales/io.yml
@@ -383,9 +383,7 @@ io:
         create: Kreez obstrukto
         hint: Domenobstrukto ne preventos kreo di kontrekordaji en datumaturo, ma retroaktive e automate aplikos partikulara jermetodi a ta konti.
         severity:
-          desc_html: "<strong>Silence</strong> will make the account's posts invisible to anyone who isn't following them. <strong>Suspend</strong> will remove all of the account's content, media, and profile data."
           noop: Nulo
-          silence: Silencigez
           suspend: Restriktez
         title: Nova domenobstrukto
       obfuscate: Nedicernebligez domennomo
@@ -896,7 +894,6 @@ io:
     warning: Sorgemez per ca informi. Ne partigez kun irgu!
     your_token: Vua acesficho
   auth:
-    apply_for_account: Esez sur vartlisto
     change_password: Pasvorto
     delete_account: Efacez konto
     delete_account_html: Se vu volas efacar vua konto, vu povas <a href="%{path}">irar hike</a>. Vu demandesos konfirmar.
diff --git a/config/locales/is.yml b/config/locales/is.yml
index 3aa43ac22..cb6a3e260 100644
--- a/config/locales/is.yml
+++ b/config/locales/is.yml
@@ -373,6 +373,8 @@ is:
       add_new: Setja lén á lista yfir leyft
       created_msg: Það tókst að setja lénið á lista yfir leyft
       destroyed_msg: Lénið hefur verið fjarlægt af lista yfir leyft
+      export: Flytja út
+      import: Flytja inn
       undo: Fjarlægja af lista yfir leyft
     domain_blocks:
       add_new: Bæta við nýrri útilokun á léni
@@ -382,15 +384,19 @@ is:
       edit: Breyta útilokun léns
       existing_domain_block: Þú hefur þegar gert kröfu um strangari takmörk fyrir %{name}.
       existing_domain_block_html: Þú ert þegar búin/n að setja strangari takmörk á %{name}, þú þarft fyrst að <a href="%{unblock_url}">aflétta útilokun</a> á því.
+      export: Flytja út
+      import: Flytja inn
       new:
         create: Búa til útilokun
         hint: Útilokun lénsins mun ekki koma í veg fyrir gerð aðgangsfærslna í gagnagrunninum, en mun afturvirkt og sjálfvirkt beita sérstökum umsjónaraðferðum á þessa aðganga.
         severity:
-          desc_html: "<strong>Hylja</strong> mun gera færslur á notandaaðgangnum ósýnilegar öllum þeim sem ekki eru að fylgjast með þeim. <strong>Setja í bið</strong> mun fjarlægja allt efni á notandaaðgangnum, myndgögn og gögn á notandasniði. Notaðu <strong>Ekkert</strong> ef þú ætlar bara að hafna margmiðlunarskrám."
+          desc_html: "<strong>Takmörk</strong> mun gera færslur frá aðgöngum á þessu léni ósýnilegar fyrir þeim sem ekki eru að fylgjast með viðkomandi. <strong>Setja í bið</strong> mun fjarlægja allt efni, myndgögn og gögn af notandasniði frá aðgöngum á þessu léni af netþjóninum þínum. Notaðu <strong>Ekkert</strong> ef þú vilt bara hafna gagnaskrám."
           noop: Ekkert
-          silence: Hylja
+          silence: Takmörk
           suspend: Setja í bið
         title: Ný útilokun á léni
+      no_domain_block_selected: Engum útilokunum léna var breytt þar sem ekkert var valið
+      not_permitted: Þú hefur ekki réttindi til að framkvæma þessa aðgerð
       obfuscate: Gera heiti léns ólæsilegt
       obfuscate_hint: Gera heiti léns ólæsilegt að hluta í listanum ef auglýsing yfir takmarkanir léna er virk
       private_comment: Einkaathugasemd
@@ -422,6 +428,20 @@ is:
       resolved_dns_records_hint_html: Heiti lénsins vísar til eftirfarandi MX-léna, sem bera endanlega ábyrgð á að tölvupóstur skili sér. Útilokun á MX-léni mun koma í veg fyrir nýskráningar með hverju því tölvupóstfangi sem notar sama MX-lén, jafnvel þótt sýnilega lénsheitið sé frábrugðið. <strong>Farðu varlega svo þú útilokir ekki algengar tölvupóstþjónustur.</strong>
       resolved_through_html: Leyst í gegnum %{domain}
       title: Útilokuð tölvupóstlén
+    export_domain_allows:
+      new:
+        title: Flytja inn leyfileg lén
+      no_file: Engin skrá valin
+    export_domain_blocks:
+      import:
+        description_html: Þú ert við það að flytja inn lista af lénum til lokunar. Vinsamlegeast farið vandlega yfir þennan lista, sérstaklega ef þú ert ekki höfundur hans.
+        existing_relationships_warning: Fyrirliggjandi fylgjendavensl
+        private_comment_description_html: 'Tið að aðstoða þig við að rekja hvaðan lokkanir koma, innfluttar lokanir verða búnar til með eftirfarndi athugasemd: <q>%{comment}</q>'
+        private_comment_template: Flutt inn frá %{source} þann %{date}
+        title: Flytja inn útilokanir léna
+      new:
+        title: Flytja inn útilokanir léna
+      no_file: Engin skrá valin
     follow_recommendations:
       description_html: "<strong>Að fylgja meðmælum hjálpar nýjum notendum að finna áhugavert efni á einfaldan máta</strong>. Þegar notandi hefur ekki átt í nægilegum samskiptum við aðra til að vera farinn að móta sér skoðanir á hverju hann vill fylgjast með, er mælt með að fylgjast með þessum aðgöngum. Þeir eru endurreiknaðir daglega út frá blöndu þeirra aðganga sem eru með hvað mestri þáttöku í umræðum og mesta fylgjendafjölda út frá hverju tungumáli."
       language: Fyrir tungumálið
@@ -914,7 +934,7 @@ is:
     warning: Farðu mjög varlega með þessi gögn. Þú skalt aldrei deila þeim með neinum!
     your_token: Aðgangsteiknið þitt
   auth:
-    apply_for_account: Fara á biðlista
+    apply_for_account: Biðja um notandaaðgang
     change_password: Lykilorð
     delete_account: Eyða notandaaðgangi
     delete_account_html: Ef þú vilt eyða notandaaðgangnum þínum, þá geturðu <a href="%{path}">farið í það hér</a>. Þú verður beðin/n um staðfestingu.
@@ -1159,6 +1179,7 @@ is:
     invalid_markup: 'inniheldur ógildar HTML-merkingar: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Ógild CSV-skrá. Villa: %{error}'
       over_rows_processing_limit: inniheldur meira en %{count} raðir
     modes:
       merge: Sameina
diff --git a/config/locales/it.yml b/config/locales/it.yml
index 76469eb6a..a8801d9bc 100644
--- a/config/locales/it.yml
+++ b/config/locales/it.yml
@@ -373,6 +373,8 @@ it:
       add_new: Dominio nella whitelist
       created_msg: Il dominio è stato inserito nella whitelist
       destroyed_msg: Il dominio è stato eliminato dalla whitelist
+      export: Esportare
+      import: Importare
       undo: Elimina dalla whitelist
     domain_blocks:
       add_new: Aggiungi nuovo
@@ -382,15 +384,19 @@ it:
       edit: Modifica blocco di dominio
       existing_domain_block: Hai già imposto limiti più severi a %{name}.
       existing_domain_block_html: Hai già impostato limitazioni più stringenti su %{name}, dovresti <a href="%{unblock_url}">sbloccarlo</a> prima.
+      export: Esportare
+      import: Importare
       new:
         create: Crea blocco
         hint: Il blocco dominio non previene la creazione di utenti nel database, ma applicherà automaticamente e retroattivamente metodi di moderazione specifici su quegli account.
         severity:
-          desc_html: "<strong>Silenzia</strong> rende i post di questo account invisibili a chiunque non lo stia seguendo. <strong>Sospendi</strong> elimina tutti i contenuti, media e dati del profilo dell'account. Usa <strong>Nessuno</strong> se vuoi solo bloccare i file media."
+          desc_html: "<strong>Limita</strong> renderà invisibili i post degli account di questo dominio a chiunque non li stia seguendo. <strong>Sospendi</strong> rimuoverà tutti i contenuti, gli elementi multimediali e i dati del profilo per gli account di questo dominio dal tuo server. Utilizza <strong>Nessuno</strong> se desideri solo rifiutare i file multimediali."
           noop: Nessuno
-          silence: Silenzia
+          silence: Limita
           suspend: Sospendi
         title: Nuovo blocco dominio
+      no_domain_block_selected: Nessun blocco di dominio è stato modificato perché non ne è stato selezionato nessuno
+      not_permitted: Non hai il permesso di eseguire questa azione
       obfuscate: Nascondi nome di dominio
       obfuscate_hint: Nascondere parzialmente il nome di dominio, se è abilitata la visualizzazione pubblica dell'elenco delle limitazioni di dominio
       private_comment: Commento privato
@@ -422,6 +428,20 @@ it:
       resolved_dns_records_hint_html: Il nome di dominio si risolve ai seguenti domini MX, che sono in ultima analisi responsabili per l'accettazione di e-mail. Il blocco di un dominio MX bloccherà le iscrizioni da qualsiasi indirizzo e-mail che utilizza lo stesso dominio MX, anche se il nome di dominio visibile è diverso. <strong>Fai attenzione a non bloccare i principali provider di posta elettronica.</strong>
       resolved_through_html: Risolto attraverso %{domain}
       title: Lista nera email
+    export_domain_allows:
+      new:
+        title: Importare i permessi di dominio
+      no_file: Nessun file selezionato
+    export_domain_blocks:
+      import:
+        description_html: Stai per importare un elenco di blocchi di domini. Si prega di rivedere questo elenco con molta attenzione, soprattutto se non si è creato personalmente questo elenco.
+        existing_relationships_warning: Relazioni di connessioni esistenti
+        private_comment_description_html: 'Per aiutarti a tenere traccia della provenienza dei blocchi importati, i blocchi importati verranno creati con il seguente commento privato: <q>%{comment}</q>'
+        private_comment_template: Importato da %{source} il %{date}
+        title: Importare i blocchi di dominio
+      new:
+        title: Importare i blocchi di dominio
+      no_file: Nessun file selezionato
     follow_recommendations:
       description_html: "<strong>I consigli su chi seguire aiutano i nuovi utenti a trovare rapidamente dei contenuti interessanti</strong>. Quando un utente non ha interagito abbastanza con altri per avere dei consigli personalizzati, vengono consigliati questi account. Sono ricalcolati ogni giorno da un misto di account con le più alte interazioni recenti e con il maggior numero di seguaci locali per una data lingua."
       language: Per lingua
@@ -916,7 +936,7 @@ it:
     warning: Fa' molta attenzione con questi dati. Non fornirli mai a nessun altro!
     your_token: Il tuo token di accesso
   auth:
-    apply_for_account: Mettiti in lista d'attesa
+    apply_for_account: Richiedi un account
     change_password: Password
     delete_account: Elimina account
     delete_account_html: Se desideri cancellare il tuo account, puoi <a href="%{path}">farlo qui</a>. Ti sarà chiesta conferma.
@@ -1161,6 +1181,7 @@ it:
     invalid_markup: 'contiene markup HTML non valido: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'File CSV non valido. Errore: %{error}'
       over_rows_processing_limit: contiene più di %{count} righe
     modes:
       merge: Fondi
@@ -1568,7 +1589,7 @@ it:
       subject: Il tuo archivio è pronto per essere scaricato
       title: Esportazione archivio
     suspicious_sign_in:
-      change_password: cambia la tua password
+      change_password: cambiare la tua password
       details: 'Questi sono i dettagli del tentativo di accesso:'
       explanation: Abbiamo rilevato un accesso al tuo account da un nuovo indirizzo IP.
       further_actions_html: Se non eri tu, ti consigliamo di %{action} subito e di abilitare l'autenticazione a due fattori per mantenere il tuo account al sicuro.
@@ -1609,7 +1630,7 @@ it:
       edit_profile_action: Configura profilo
       edit_profile_step: Puoi personalizzare il tuo profilo caricando un'immagine del profilo, cambiare il tuo nome e altro ancora. Puoi scegliere di esaminare i nuovi seguaci prima che loro siano autorizzati a seguirti.
       explanation: Ecco alcuni suggerimenti per iniziare
-      final_action: Inizia a postare
+      final_action: Inizia a pubblicare
       final_step: 'Inizia a pubblicare! Anche senza seguaci, i tuoi post pubblici possono essere visti da altri, ad esempio sulla timeline locale o negli hashtag. Potresti presentarti con l''hashtag #presentazione.'
       full_handle: Il tuo nome utente completo
       full_handle_hint: Questo è ciò che diresti ai tuoi amici in modo che possano seguirti o contattarti da un altro server.
diff --git a/config/locales/ja.yml b/config/locales/ja.yml
index a60f0298b..f3e7f306f 100644
--- a/config/locales/ja.yml
+++ b/config/locales/ja.yml
@@ -366,6 +366,8 @@ ja:
       add_new: 連合を許可
       created_msg: 連合を許可しました
       destroyed_msg: 連合許可を外しました
+      export: エクスポート
+      import: インポート
       undo: 連合許可を外す
     domain_blocks:
       add_new: ドメインブロックを追加
@@ -375,15 +377,18 @@ ja:
       edit: ドメインブロックを編集
       existing_domain_block: あなたは既に%{name}さんに厳しい制限を課しています。
       existing_domain_block_html: 既に%{name}に対して、より厳しい制限を課しています。先に<a href="%{unblock_url}">その制限を解除</a>する必要があります。
+      export: エクスポート
+      import: インポート
       new:
         create: ブロックを作成
         hint: ドメインブロックはデータベース中のアカウント項目の作成を妨げませんが、遡って自動的に指定されたモデレーションをそれらのアカウントに適用します。
         severity:
-          desc_html: "<strong>サイレンス</strong>はアカウントの投稿をフォローしていない人から隠します。<strong>停止</strong>はそのアカウントのコンテンツ、メディア、プロフィールデータをすべて削除します。メディアファイルを拒否したいだけの場合は<strong>なし</strong>を使います。"
           noop: なし
-          silence: サイレンス
+          silence: 制限
           suspend: 停止
         title: 新規ドメインブロック
+      no_domain_block_selected: 何も選択されていないためドメインブロックを変更しませんでした
+      not_permitted: この操作を実行する権限がありません。
       obfuscate: ドメイン名を伏せ字にする
       obfuscate_hint: ドメインブロックのリストを公開している場合、ドメイン名の一部を伏せ字にします
       private_comment: コメント (非公開)
@@ -414,6 +419,14 @@ ja:
       resolved_dns_records_hint_html: ドメイン名はDNSでMXドメインに名前解決され、最終的にメールを受け付ける役割を担います。目に見えるドメイン名が異なっていても、同じMXドメインを使用するメールアドレスからのアカウント登録がブロックされます。<strong>主要なメールプロバイダーをブロックしないように注意して下さい。</strong>
       resolved_through_html: "%{domain}を通して解決しました"
       title: メールドメインブロック
+    export_domain_allows:
+      no_file: ファイルが選択されていません
+    export_domain_blocks:
+      import:
+        title: ドメインブロックをインポート
+      new:
+        title: ドメインブロックをインポート
+      no_file: ファイルが選択されていません
     follow_recommendations:
       description_html: "<strong>おすすめフォローは、新規ユーザーが興味のあるコンテンツをすばやく見つけるのに役立ちます。</strong>ユーザーが他のユーザーとの交流を十分にしていない場合、パーソナライズされたおすすめフォローを生成する代わりに、これらのアカウントが表示されます。最近のエンゲージメントが最も高いアカウントと、特定の言語のローカルフォロワー数が最も多いアカウントを組み合わせて、毎日再計算されます。"
       language: 言語
@@ -896,7 +909,7 @@ ja:
     warning: このデータは気をつけて取り扱ってください。他の人と共有しないでください!
     your_token: アクセストークン
   auth:
-    apply_for_account: ウェイトリストを取得する
+    apply_for_account: アカウントのリクエスト
     change_password: パスワード
     delete_account: アカウントの削除
     delete_account_html: アカウントを削除したい場合、<a href="%{path}">こちら</a>から手続きが行えます。削除する前に、確認画面があります。
@@ -1134,6 +1147,7 @@ ja:
     invalid_markup: '無効なHTMLマークアップが含まれています: %{error}'
   imports:
     errors:
+      invalid_csv_file: '無効なCSVファイルです。エラー: %{error}'
       over_rows_processing_limit: "%{count}行以上"
     modes:
       merge: 統合
diff --git a/config/locales/ka.yml b/config/locales/ka.yml
index 464e88268..41a51a8b0 100644
--- a/config/locales/ka.yml
+++ b/config/locales/ka.yml
@@ -128,9 +128,7 @@ ka:
         create: ბლოკის შექმნა
         hint: დომენის ბლოკი არ შეაჩერებს ანგარიშების ჩაწერას მონაცემთა ბაზაში, მაგრამ ეს ამ ანგარიშებზე რეტროაქტიულად და ავტომატურად გაატარებს სპეციფიურ მოდერაციის მეთოდებს.
         severity:
-          desc_html: "<strong>გაჩუმება</strong> გახდის ანგარიშის პოსტებს უჩინარს ყველასთვის, ვინც მას არ მიჰყვება. <strong>შეჩერება</strong> გააუქმებს ანგარიშის მთელ კონტენტს, მედიას და პროფილის მონაცემს. გამოიყენეთ <strong>არც ერთი</strong> თუ გსურთ უბრალოდ უარყოთ ფაილები."
           noop: არც ერთი
-          silence: გაჩუმება
           suspend: შეჩერება
         title: ახალი დომენის ბლოკი
       reject_media: მედია ფაილების უარყოფა
diff --git a/config/locales/kab.yml b/config/locales/kab.yml
index 9c2539ce7..7dd8bcabd 100644
--- a/config/locales/kab.yml
+++ b/config/locales/kab.yml
@@ -251,15 +251,16 @@ kab:
       add_new: Timerna n taɣult ɣer tabdert tamellalt
       created_msg: Taγult-a tettwarna γer wumuγ amellal mebla ugur
       destroyed_msg: Taγult-a tettwakkes seg umuγ amellal
+      import: Kter
       undo: Kkes seg tebdart tamellalt
     domain_blocks:
       add_new: Rni iḥder amaynut n taɣult
       domain: Taγult
+      import: Kter
       new:
         create: Rnu-d iḥder
         severity:
           noop: Ula yiwen
-          silence: Sgugem
           suspend: Ḥbes di leεḍil
         title: Iḥder amaynut n taɣult
       private_comment: Awennit uslig
@@ -284,6 +285,8 @@ kab:
       back_to_all: Akk
       back_to_limited: Ɣur-s talast
       by_domain: Taγult
+      content_policies:
+        policy: Tasertit
       delivery:
         all: Akk
         clear: Sfeḍ tuccḍiwin n usiweḍ
@@ -373,6 +376,8 @@ kab:
     roles:
       categories:
         administration: Tadbelt
+        moderation: Aseɣyed
+      delete: Kkes
       privileges:
         administrator: Anedbal
     rules:
@@ -382,19 +387,31 @@ kab:
       empty: Mazal ur ttwasbadun ara yilugan n uqeddac.
       title: Ilugan n uqeddac
     settings:
+      about:
+        title: Γef
+      appearance:
+        title: Udem
+      discovery:
+        profile_directory: Akaram n imaγnuten
+        trends: Ayen mucaɛen
       domain_blocks:
         all: I medden akk
         disabled: Γef ula yiwen
         users: Γef yimseqdacen idiganen i yeqqnen
+      registrations:
+        title: Ajerred
       registrations_mode:
         modes:
           none: Yiwen·t ur yzmir ad izeddi
           open: Zemren akk ad jerden
+      title: Iɣewwaṛen n uqeddac
     site_uploads:
       delete: Kkes afaylu yulin
     statuses:
+      application: Asnas
       back_to_account: Tuγalin γer usebter n umiḍan
       deleted: Yettwakkes
+      language: Tutlayt
       media:
         title: Taγwalt
       title: Tisuffiγin n umiḍan
@@ -405,6 +422,9 @@ kab:
     warning_presets:
       add_new: Rnu amaynut
       delete: Kkes
+    webhooks:
+      delete: Kkes
+      enable: Rmed
   admin_mailer:
     new_report:
       body: "%{reporter} yettwazen ɣef %{target}"
@@ -518,7 +538,12 @@ kab:
       empty: Ur tesɛid ara imzizdigen.
       title: Imzizdigen
     new:
+      save: Sekles amsizdeg amaynut
       title: Rnu yiwen umzizdig amaynut
+    statuses:
+      back_to_filter: Tuɣalin ɣer umsizdeg
+      batch:
+        remove: Kkes seg umsizdeg
   footer:
     trending_now: Ayen mucaɛen tura
   generic:
@@ -567,6 +592,8 @@ kab:
     acct: Ibeddel γer
     incoming_migrations: Tusiḍ-d seg umiḍan nniḍen
     proceed_with_move: Awid imeḍfaṛen-ik
+  moderation:
+    title: Aseɣyed
   notification_mailer:
     favourite:
       subject: "%{name} yesmenyaf addad-ik·im"
@@ -744,8 +771,9 @@ kab:
         disable: Amiḍan i igersen
         none: Γur-wat
         silence: Amiḍan yesɛa talast
-        suspend: Amiḍan yettwaḥebsen
+        suspend: Amiḍan yettwaḥbas
     welcome:
+      final_action: Bdu asuffeɣ
       full_handle: Tansa umiḍan-ik takemmalit
       subject: Ansuf γer Maṣṭudun
       title: Ansuf yessek·em, %{name}!
diff --git a/config/locales/kk.yml b/config/locales/kk.yml
index a48707097..4c7189588 100644
--- a/config/locales/kk.yml
+++ b/config/locales/kk.yml
@@ -178,9 +178,7 @@ kk:
         create: Блок құру
         hint: Домендік блок дерекқорда тіркелгі жазбаларын құруға кедергі жасамайды, бірақ сол есептік жазбаларда ретроактивті және автоматты түрде нақты модерация әдістерін қолданады.
         severity:
-          desc_html: "<strong>Silence</strong> will make the account's posts invisible to anyone who isn't following them. <strong>Suspend</strong> will remove all of the account's content, media, and profile data. Use <strong>None</strong> if you just want to reject media filеs."
           noop: Ештеңе
-          silence: Үнсіз
           suspend: Тоқтатылған
         title: Жаңа домен блокы
       private_comment: Құпия пікір
diff --git a/config/locales/ko.yml b/config/locales/ko.yml
index 74f6f56a8..af8ba5657 100644
--- a/config/locales/ko.yml
+++ b/config/locales/ko.yml
@@ -58,7 +58,7 @@ ko:
       disable: 비활성화
       disable_sign_in_token_auth: 이메일 토큰 인증 비활성화
       disable_two_factor_authentication: 2단계 인증을 비활성화
-      disabled: 비활성화된
+      disabled: 비활성화됨
       display_name: 표시되는 이름
       domain: 도메인
       edit: 편집
@@ -219,7 +219,7 @@ ko:
         update_custom_emoji: 커스텀 에모지 업데이트
         update_domain_block: 도메인 차단 갱신
         update_ip_block: IP 규칙 수정
-        update_status: 게시물 게시
+        update_status: 게시물 수정
         update_user_role: 역할 수정
       actions:
         approve_appeal_html: "%{name} 님이 %{target}의 중재 결정에 대한 이의 제기를 승인했습니다"
@@ -247,7 +247,7 @@ ko:
         destroy_email_domain_block_html: "%{name} 님이 이메일 도메인 %{target}을 차단 해제하였습니다"
         destroy_instance_html: "%{name} 님이 도메인 %{target}를 제거했습니다"
         destroy_ip_block_html: "%{name} 님이 IP 규칙 %{target}을 삭제하였습니다"
-        destroy_status_html: "%{name} 님이 %{target}의 게시물을 삭제했습니다"
+        destroy_status_html: "%{name} 님이 %{target} 님의 게시물을 삭제했습니다"
         destroy_unavailable_domain_html: "%{name} 님이 도메인 %{target}에 대한 전달을 재개"
         destroy_user_role_html: "%{name} 님이 %{target} 역할을 삭제했습니다"
         disable_2fa_user_html: "%{name} 님이 사용자 %{target}의 2FA를 비활성화 했습니다"
@@ -314,11 +314,11 @@ ko:
       destroyed_msg: 에모지가 성공적으로 삭제되었습니다!
       disable: 비활성화
       disabled: 비활성
-      disabled_msg: 성공적으로 비활성화하였습니다
+      disabled_msg: 성공적으로 에모지를 비활성화했습니다
       emoji: 에모지
       enable: 활성화
       enabled: 활성화됨
-      enabled_msg: 성공적으로 활성화하였습니다
+      enabled_msg: 성공적으로 에모지를 활성화하였습니다
       image_hint: "%{size} 이하의 PNG 또는 GIF"
       list: 목록에 추가
       listed: 목록에 실림
@@ -334,7 +334,7 @@ ko:
       unlist: 목록에서 제거
       unlisted: 목록에 없음
       update_failed_msg: 에모지를 업데이트 할 수 없습니다
-      updated_msg: 에모지가 성공적으로 업데이트 되었습니다!
+      updated_msg: 성공적으로 에모지를 업데이트했습니다!
       upload: 업로드
     dashboard:
       active_users: 활성 사용자
@@ -366,6 +366,8 @@ ko:
       add_new: 도메인 허용
       created_msg: 도메인이 성공적으로 허용 목록에 추가되었습니다
       destroyed_msg: 도메인이 허용 목록에서 제거되었습니다
+      export: 내보내기
+      import: 불러오기
       undo: 허용 목록에서 제외
     domain_blocks:
       add_new: 도메인 차단 추가하기
@@ -375,17 +377,21 @@ ko:
       edit: 도메인 차단 수정
       existing_domain_block: 이미 %{name}에 대한 더 강력한 제한이 있습니다.
       existing_domain_block_html: 이미 %{name}에 대한 더 강력한 제한이 걸려 있습니다, <a href="%{unblock_url}">차단 해제</a>를 먼저 해야 합니다.
+      export: 내보내기
+      import: 불러오기
       new:
         create: 차단 추가
         hint: 도메인 차단은 내부 데이터베이스에 계정이 생성되는 것까지는 막을 수 없지만, 그 도메인에서 생성된 계정에 자동적으로 특정한 중재 규칙을 적용하게 할 수 있습니다.
         severity:
           desc_html: |-
-            <strong>침묵</strong>은 계정을 팔로우 하지 않고 있는 사람들에겐 계정의 게시물을 보이지 않게 합니다. <strong>정지</strong>는 계정의 콘텐츠, 미디어, 프로필 데이터를 삭제합니다.
-            미디어 파일만을 거부하고 싶다면 <strong>없음</strong>으로 두세요.
+            <strong>제한</strong>은 이 도메인에 있는 계정을 팔로우 하지 않는 사람들에게 게시물을 보이지 않게 설정합니다.
+            <strong>정지</strong>는 이 도메인에 있는 계정의 모든 콘텐츠, 미디어, 프로필 데이터를 삭제합니다. 미디어 파일만 거부하고 싶다면 <strong>없음</strong>을 사용하세요.
           noop: 없음
-          silence: 침묵
+          silence: 제한
           suspend: 정지
         title: 새로운 도메인 차단
+      no_domain_block_selected: 아무 것도 선택 되지 않아 어떤 도메인 차단도 변경되지 않았습니다
+      not_permitted: 이 작업을 수행할 권한이 없습니다
       obfuscate: 도메인 이름 난독화
       obfuscate_hint: 도메인 제한 목록을 공개하는 경우 도메인 이름의 일부를 난독화 합니다
       private_comment: 비공개 주석
@@ -416,6 +422,20 @@ ko:
       resolved_dns_records_hint_html: 도메인 네임은 다음의 MX 도메인으로 연결되어 있으며, 이메일을 받는데 필수적입니다. MX 도메인을 차단하면 같은 MX 도메인을 사용하는 어떤 이메일이라도 가입할 수 없게 되며, 보여지는 도메인이 다르더라도 적용됩니다. <strong>주요 이메일 제공자를 차단하지 않도록 조심하세요.</strong>
       resolved_through_html: "%{domain}을 통해 해결됨"
       title: Email 도메인 차단
+    export_domain_allows:
+      new:
+        title: 도메인 허용 목록 불러오기
+      no_file: 선택된 파일이 없습니다
+    export_domain_blocks:
+      import:
+        description_html: 도메인 차단 목록을 불러오려고 합니다. 조심스럽게 검토하시고, 특히나 이 목록을 스스로 작성하지 않았을 경우엔 더 면밀히 검토하세요.
+        existing_relationships_warning: 이미 존재하는 팔로우 관계
+        private_comment_description_html: '어디서 불러온 것인지 추적을 원활하게 하기 위해서, 불러온 차단들은 다음과 같은 비공개 주석과 함께 생성될 것입니다: <q>%{comment}</q>'
+        private_comment_template: "%{date}에 %{source}에서 불러옴"
+        title: 도메인 차단 불러오기
+      new:
+        title: 도메인 차단 불러오기
+      no_file: 선택된 파일이 없습니다
     follow_recommendations:
       description_html: "<strong>팔로우 추천은 새 사용자들이 관심 가는 콘텐트를 빠르게 찾을 수 있도록 도와줍니다</strong>. 사용자가 개인화 된 팔로우 추천이 만들어지기 위한 충분한 상호작용을 하지 않은 경우, 이 계정들이 대신 추천 됩니다. 이들은 해당 언어에 대해 많은 관심을 갖거나 많은 로컬 팔로워를 가지고 있는 계정들을 섞어서 날마다 다시 계산 됩니다."
       language: 언어 필터
@@ -530,8 +550,8 @@ ko:
       status: 상태
       title: 릴레이
     report_notes:
-      created_msg: 리포트 노트가 성공적으로 작성되었습니다!
-      destroyed_msg: 리포트 노트가 성공적으로 삭제되었습니다!
+      created_msg: 신고 기록이 성공적으로 작성되었습니다!
+      destroyed_msg: 신고 기록이 성공적으로 삭제되었습니다!
       today_at: 오늘 %{time}
     reports:
       account:
@@ -571,8 +591,8 @@ ko:
         create_and_unresolve: 기록 작성과 함께 미해결로 표시
         delete: 삭제
         placeholder: 이 리포트에 대한 조치, 기타 관련 된 사항에 대해 설명합니다…
-        title: 노트
-      notes_description_html: 확인하고 다른 중재자나 미래의 자신을 위해 노트를 작성합니다
+        title: 기록
+      notes_description_html: 확인하고 다른 중재자나 미래의 자신을 위해 기록을 작성합니다
       quick_actions_description_html: '빠른 조치를 취하거나 아래로 스크롤해서 신고된 콘텐츠를 확인하세요:'
       remote_user_placeholder: "%{instance}의 리모트 사용자"
       reopen: 리포트 다시 열기
@@ -722,7 +742,7 @@ ko:
       with_media: 미디어 있음
     strikes:
       actions:
-        delete_statuses: "%{name} 님이 %{target}의 게시물을 지웠습니다"
+        delete_statuses: "%{name} 님이 %{target} 님의 게시물을 삭제했습니다"
         disable: "%{name} 님이 %{target}의 계정을 동결시켰습니다"
         mark_statuses_as_sensitive: "%{name} 님이 %{target}의 게시물을 민감함으로 표시했습니다"
         none: "%{name} 님이 %{target}에게 경고를 보냈습니다"
@@ -777,7 +797,7 @@ ko:
         allow: 게시물 허용
         allow_account: 작성자 허용
         description_html: 당신의 서버가 알기로 현재 많은 수의 공유와 좋아요가 되고 있는 게시물들입니다. 새로운 사용자나 돌아오는 사용자들이 팔로우 할 사람들을 찾는 데 도움이 될 수 있습니다. 작성자를 승인하고, 작성자가 그들의 계정이 다른 계정에게 탐색되도록 설정하지 않는 한 게시물들은 공개적으로 표시되지 않습니다. 또한 각각의 게시물을 별개로 거절할 수도 있습니다.
-        disallow: 게시물 불허
+        disallow: 게시물 비허용
         disallow_account: 작성자 불허
         no_status_selected: 아무 것도 선택 되지 않아 어떤 유행중인 게시물도 바뀌지 않았습니다
         not_discoverable: 작성자가 발견되기를 원치 않습니다
@@ -898,7 +918,7 @@ ko:
     warning: 이 데이터를 조심히 다뤄 주세요. 다른 사람들과 절대로 공유하지 마세요!
     your_token: 액세스 토큰
   auth:
-    apply_for_account: 대기자 명단에 들어가기
+    apply_for_account: 가입 요청하기
     change_password: 패스워드
     delete_account: 계정 삭제
     delete_account_html: 계정을 삭제하고 싶은 경우, <a href="%{path}">여기서</a> 삭제할 수 있습니다. 삭제 전 확인 화면이 표시됩니다.
@@ -1038,7 +1058,7 @@ ko:
   errors:
     '400': 제출한 요청이 올바르지 않습니다.
     '403': 이 페이지를 표시할 권한이 없습니다.
-    '404': 당신이 찾으려는 페이지는 존재하지 않습니다.
+    '404': 찾으려는 페이지가 존재하지 않습니다.
     '406': 이 페이지는 요청한 자료형으로 제공되지 않습니다.
     '410': 당신이 보려는 페이지는 더이상 여기에 존재하지 않습니다.
     '422':
@@ -1062,7 +1082,7 @@ ko:
       request: 아카이브 요청하기
       size: 크기
     blocks: 차단
-    bookmarks: 보관함
+    bookmarks: 북마크
     csv: CSV
     domain_blocks: 도메인 차단
     lists: 리스트
@@ -1136,6 +1156,7 @@ ko:
     invalid_markup: '올바르지 않은 HTML 마크업을 포함하고 있습니다: %{error}'
   imports:
     errors:
+      invalid_csv_file: '올바르지 않은 CSV 파일입니다. 오류: %{error}'
       over_rows_processing_limit: "%{count}개 이상의 열을 포함합니다"
     modes:
       merge: 병합
@@ -1146,7 +1167,7 @@ ko:
     success: 파일이 정상적으로 업로드되었으며, 현재 처리 중입니다
     types:
       blocking: 차단한 계정 목록
-      bookmarks: 보관함
+      bookmarks: 북마크
       domain_blocking: 도메인 차단 목록
       following: 팔로우 중인 계정 목록
       muting: 뮤트 중인 계정 목록
@@ -1227,7 +1248,7 @@ ko:
   move_handler:
     carry_blocks_over_text: 이 사용자는 당신이 차단한 %{acct}로부터 이주 했습니다.
     carry_mutes_over_text: 이 사용자는 당신이 뮤트한 %{acct}로부터 이주 했습니다.
-    copy_account_note_text: '이 사용자는 %{acct}로부터 이동하였습니다. 당신의 이전 노트는 이렇습니다:'
+    copy_account_note_text: '이 사용자는 %{acct}에서 옮겨왔으며 이전의 기록은 다음과 같습니다:'
   navigation:
     toggle_menu: 토글 메뉴
   notification_mailer:
@@ -1253,7 +1274,7 @@ ko:
       action: 답장
       body: "%{name} 님이 나를 언급했습니다:"
       subject: "%{name} 님이 나를 언급했습니다"
-      title: 새 멘션
+      title: 새 답글
     poll:
       subject: "%{name}의 투표가 종료되었습니다"
     reblog:
@@ -1392,7 +1413,7 @@ ko:
     aliases: 계정 별명
     appearance: 외관
     authorized_apps: 인증된 애플리케이션
-    back: 돌아가기
+    back: 마스토돈으로 돌아가기
     delete: 계정 삭제
     development: 개발
     edit_profile: 프로필 편집
@@ -1451,7 +1472,7 @@ ko:
       private_long: 팔로워에게만 공개됩니다
       public: 공개
       public_long: 누구나 볼 수 있으며, 공개 타임라인에 표시됩니다
-      unlisted: 공개 타임라인 비공개
+      unlisted: 공개 타임라인 비표시
       unlisted_long: 누구나 볼 수 있지만, 공개 타임라인에는 표시되지 않습니다
   statuses_cleanup:
     enabled: 오래된 게시물 자동 삭제
@@ -1470,8 +1491,8 @@ ko:
     keep_pinned_hint: 고정 게시물을 삭제하지 않습니다
     keep_polls: 투표 유지
     keep_polls_hint: 투표를 삭제하지 않습니다
-    keep_self_bookmark: 북마크된 게시물 유지
-    keep_self_bookmark_hint: 내 스스로 북마크한 본인의 게시물을 삭제하지 않습니다
+    keep_self_bookmark: 북마크한 게시물 유지
+    keep_self_bookmark_hint: 북마크한 본인의 게시물을 삭제하지 않습니다
     keep_self_fav: 마음에 들어한 게시물 유지
     keep_self_fav_hint: 내 스스로 마음에  들어한 본인의 게시물을 삭제하지 않습니다
     min_age:
@@ -1579,7 +1600,7 @@ ko:
       explanation: 시작하기 전에 몇가지 팁들을 준비했습니다
       final_action: 포스팅 시작하기
       final_step: '게시물을 올리세요! 팔로워가 없더라도, 공개 게시물들은 다른 사람에게 보여질 수 있습니다, 예를 들자면 로컬이나 연합 타임라인 등이 있습니다. 사람들에게 자신을 소개하고 싶다면 #툿친소 해시태그를 이용해보세요.'
-      full_handle: 내 전체 핸들
+      full_handle: 당신의 풀 핸들은 다음과 같습니다
       full_handle_hint: 이것을 당신의 친구들에게 알려주면 다른 서버에서 팔로우 하거나 메시지를 보낼 수 있습니다.
       subject: 마스토돈에 오신 것을 환영합니다
       title: 환영합니다 %{name} 님!
diff --git a/config/locales/ku.yml b/config/locales/ku.yml
index 1c1271c5d..48b929343 100644
--- a/config/locales/ku.yml
+++ b/config/locales/ku.yml
@@ -1,9 +1,9 @@
 ---
 ku:
   about:
-    about_mastodon_html: 'Tora civakî ya pêşerojê: Ne reklam, ne çavdêriya pargîdanî, sêwirana exlaqî, û desentralîzasyon! Bi Mastodon re bibe xwediyê daneyên xwe!'
+    about_mastodon_html: 'Tora civakî ya pêşerojê: Ne reklam, ne şopandina şîrketan, dîzayna nenavendî! Bi Mastodon re bibe xwediyê daneyên xwe!'
     contact_missing: Nehate sazkirin
-    contact_unavailable: N/A
+    contact_unavailable: Tune
     hosted_on: Mastodon li ser %{domain} tê pêşkêşkirin
     title: Derbar
   accounts:
@@ -17,7 +17,7 @@ ku:
     link_verified_on: Xwedaniya li vê girêdanê di %{date} de hatiye kontrolkirin
     nothing_here: Li vir tiştek tune ye!
     pin_errors:
-      following: Kesê ku tu dixwazî bipejirînî jixwe tu vê dişopînî
+      following: Kesê ku tu dixwazî bipejirînî jixwe divê tu bişopînî
     posts:
       one: Şandî
       other: Şandî
@@ -31,7 +31,7 @@ ku:
       created_msg: Nîşeyê moderator bi awayekî serkeftî hate afirandin!
       destroyed_msg: Nîşeyê moderator bi awayekî serkeftî hate tinne kirin!
     accounts:
-      add_email_domain_block: Navparê e-nameyê asteng bike
+      add_email_domain_block: Navperê e-nameyê asteng bike
       approve: Bipejirîne
       approved_msg: Tomarkirina %{username} bi awayekî serkeftî hate pejirandin
       are_you_sure: Ma tu bawerî?
@@ -69,15 +69,15 @@ ku:
       enable: Çalak bike
       enable_sign_in_token_auth: E-name ya rastandina token çalak bike
       enabled: Çalakkirî
-      enabled_msg: Hesabê %{username} bi serkeftî hat çalakkirin
+      enabled_msg: Ajimêrê %{username} bi serkeftî hat çalakkirin
       followers: Şopîner
       follows: Dişopîne
       header: Jormalper
-      inbox_url: Peyamên hatî URl
+      inbox_url: Girêdana peyamên hatî
       invite_request_text: Sedemên tevlêbûnê
       invited_by: Bi vexwendinê
       ip: IP
-      joined: Tevlî bû
+      joined: Dîroka tevlîbûnê
       location:
         all: Hemû
         local: Herêmî
@@ -87,7 +87,7 @@ ku:
       media_attachments: Pêvekên medya
       memorialize: Vegerîne bîranînê
       memorialized: Bû bîranîn
-      memorialized_msg: "%{username} bi serkeftî veguherî hesabê bîranînê"
+      memorialized_msg: "%{username} bi serkeftî veguherî ajimêra bîranînê"
       moderation:
         active: Çalak
         all: Hemû
@@ -98,7 +98,7 @@ ku:
       moderation_notes: Nîşeyên Rêvebirinê
       most_recent_activity: Çalakîyên dawî
       most_recent_ip: IP' a dawî
-      no_account_selected: Tu hesab nehat hilbijartin ji ber vê tu hesab nehat guhertin
+      no_account_selected: Tu ajimêr nehat hilbijartin ji ber vê tu ajimêr nehat guhertin
       no_limits_imposed: Sînor nay danîn
       no_role_assigned: Ti rol nehatin diyarkirin
       not_subscribed: Beşdar nebû
@@ -136,7 +136,7 @@ ku:
         password_and_2fa: Borînpeyv û 2FA
       sensitive: Hêz-hestiyar
       sensitized: Wek hestiyar hatiye nîşankirin
-      shared_inbox_url: URLya wergirtiyên parvekirî
+      shared_inbox_url: Girêdana peyamên hatî ya parvekirî
       show:
         created_reports: Ragihandinên ku çêkiriye
         targeted_reports: Ji aliyê kesên din ve hatiye ragihandin
@@ -149,7 +149,7 @@ ku:
       suspended: Hatiye rawestandin
       suspension_irreversible: Daneyên vê ajimêrê bêveger hatine jêbirin. Tu dikarî ajimêra xwe ji rawestandinê vegerinî da ku ew bi kar bînî lê ew ê tu daneya ku berê hebû venegere.
       suspension_reversible_hint_html: Ajimêr hat qerisandin, û daneyên di %{date} de hemû were rakirin. Hetta vê demê, ajimêr bê bandorên nebaş dikare dîsa vegere. Heke tu dixwazî hemû daneyan ajimêrê niha rakî, tu dikarî li jêrê bikî.
-      title: Hesab
+      title: Ajimêr
       unblock_email: Astengiyê li ser navnîşana e-nameyê rake
       unblocked_email_msg: Bi serkeftî astengiya li ser navnîşana e-nameyê %{username} hate rakirin
       unconfirmed_email: E-nameya nepejirandî
@@ -177,8 +177,8 @@ ku:
         create_canonical_email_block: Astengkirina e-nameyê biafirîne
         create_custom_emoji: Emojiyên kesanekirî çê bike
         create_domain_allow: Navpera ku destûr standiye peyda bike
-        create_domain_block: Navpera ku asteng bûye ava bike
-        create_email_domain_block: Navpera e-name yê de asteng kirinê peyda bike
+        create_domain_block: Astengkirina navperê biafirîne
+        create_email_domain_block: Astengkirina navpera e-nameyê biafirîne
         create_ip_block: Rêziknameya IPyê saz bike
         create_unavailable_domain: Navpera ku nayê bikaranîn pêk bîne
         create_user_role: Rolê biafirîne
@@ -211,8 +211,8 @@ ku:
         reset_password_user: Borînpeyvê ji nû ve saz bike
         resolve_report: Ragihandinê çareser bike
         sensitive_account: Ajimêra hêz-hestiyar
-        silence_account: Hesab bi sînor bike
-        suspend_account: Hesab rawestîne
+        silence_account: Ajimêrê bi sînor bike
+        suspend_account: Ajimêr rawestîne
         unassigned_report: Ragihandinê diyar neke
         unblock_email_account: Astengiyê li ser navnîşana e-nameyê rake
         unsensitive_account: Medyayên di ajimêrê te de wek hestyarî nepejirîne
@@ -220,7 +220,7 @@ ku:
         unsuspend_account: Ajimêrê xwe ji rewestandinê rake
         update_announcement: Daxûyaniyê rojane bike
         update_custom_emoji: Emojîya kesanekirî rojane bike
-        update_domain_block: Navperên astengkirî rojane bike
+        update_domain_block: Astengkirina navperê rojane bike
         update_ip_block: Rolê IP rojane bike
         update_status: Şandiyê rojane bike
         update_user_role: Rolê rojane bike
@@ -373,44 +373,50 @@ ku:
       add_new: Mafê bide navpera demnameya giştî
       created_msg: Ji bo demnameya giştî mafdayîna navperê bi serkeftî hate dayîn
       destroyed_msg: Ji bo demnameya giştî mafdayîna navperê nehat dayîn
+      export: Derxistin
+      import: Têxistin
       undo: Mafê nede navpera demnameya giştî
     domain_blocks:
-      add_new: Astengkirina navpera nû
-      created_msg: Navpera asteng kirinê nû hat şixulandin
-      destroyed_msg: Navpera asteng kirinê hat rakirin
+      add_new: Astengkirina navpera nû tevlî bike
+      created_msg: Astengkirina navperê niha dixebite
+      destroyed_msg: Astengkirina navperê hate rakirin
       domain: Navper
       edit: Astengkirina navperê serrast bike
       existing_domain_block: Jixwe te sînorên tundtir li ser %{name} daye kirine.
-      existing_domain_block_html: Te bi bandorê mezin sînor danî ser %{name}, Divê tu <a href="%{unblock_url}"> asteng kirinê rabikî, pêşî ya </a>.
+      existing_domain_block_html: Te jixwe sînorên mezintir li ser %{name} pêk aniye, divê tu pêşî <a href="%{unblock_url}">astengkirinê rakî</a>.
+      export: Derxistin
+      import: Têxistin
       new:
         create: Astengkirinekê çê bike
-        hint: Navpera asteng kirî pêşî li çê kirina têketinên ajimêra ên di danegehê da negire, lê dê bi paş ve bizivirin û bi xweberî va ji ajimêran bi teybetî kontrola rêbazan bikin.
+        hint: Astengkirina navperê pêşî li çêkirina têketinên ajimêra yên di danegehê de negire, lê wê bi riyeke vegerandî û xweberî rêbazên kontrolkirinê li ser van ajimêran pêk bîne.
         severity:
           desc_html: |-
-            <strong>Bêdeng kirî</strong> ajimêrên wusa çêkirine xêncî şopînerên vê kes nikare şandîyên vê bibîne.
-            <strong>rawestî</strong> ajimêrên wusa çêkirine hemî naveroka, medya û daneyên profîlê jê bibe. Heke tu bixwazî pelên medyayê red bikî<strong>yek ji wan</strong>bi kar bîne.
+            <strong>Sînor</strong> wê şandiyan ji ajimêrên li ser vê navperê re ji her kesê ku wan naşopîne re nedîtî bike. <strong>Rawestandin</strong> wê hemû naverok, medya û daneyên profîlê yên ajimêrên vê navperê ji rajekarê te rake. Ku tu tenê dixwazî pelên medyayê nepejirînî
+            <strong>Tu kes</strong> bi kar bîne.
           noop: Ne yek
-          silence: Bêdengî
+          silence: Sînor
           suspend: Dur bike
         title: Astengkirina navpera nû
-      obfuscate: Navê navperê biveşêre
-      obfuscate_hint: Heke rêzoka sînorên navperê were çalakkirin navê navperê di rêzokê de bi qismî veşêre
+      no_domain_block_selected: Tu astengkirinên navperê e-nameyê nehatin guhertin ji ber ku tu yek nehatine hilbijartin
+      not_permitted: Mafê te tune ku tu vê çalakiyê bikî
+      obfuscate: Navê navperê veşêre
+      obfuscate_hint: Ku rêzoka sînorên navperê çalakkirî be navê navperê di rêzokê de bi awayekî beşî veşêre
       private_comment: Şîroveya taybet
-      private_comment_hint: Derbarê sînorkirina vê navperê da ji bo bikaranîna hundirîn a moderatoran şîrove bikin.
+      private_comment_hint: Derbarê sînorkirina vê navperê ji bo bikaranîna hundirîn ji aliyê çavdêram ve şîrove bike.
       public_comment: Şîroveya gelemperî
-      public_comment_hint: Heke reklamkirina rêzoka sînorên navperê çalak be, derbarê sînorkirina vê navperê da ji bo raya giştî şîrove bikin.
-      reject_media: Pelên medyayê red bike
+      public_comment_hint: Derbarê sînorkirina vê navperê ji bo raya giştî re şîrove bike, ku reklamkirina rêzoka sînorên navperê çalakkirî be.
+      reject_media: Pelên medyayê nepejirîne
       reject_media_hint: Pelên medyayê herêmî hatine tomarkirin radike û di pêşerojê de daxistinê red dike. Ji bo rawstandinê ne girîng e
-      reject_reports: Ragihandinan red bike
+      reject_reports: Ragihandinan nepejirîne
       reject_reports_hint: Ragihandinên ku ji vê navperê tê paşguh bike. Ji bo dûrbûnê re ne guncav e
       undo: Astengkirina navperê vegerîne
       view: Astengkirina navperê nîşan bike
     email_domain_blocks:
       add_new: Nû tevlî bike
       attempts_over_week:
-        one: "%{count} hewldan di hefteya borî de"
+        one: "%{count} hewldana tomarkirinê di hefteya borî de"
         other: "%{count} hewldanên tomarkirinê di hefteya borî de"
-      created_msg: Bi serkeftî navpera e-name hat asteng kirin
+      created_msg: Bi serkeftî navpera e-name hate astengkirin
       delete: Jê bibe
       dns:
         types:
@@ -418,12 +424,26 @@ ku:
       domain: Navper
       new:
         create: Navper tevlî bike
-        resolve: Navparê çareser bike
-        title: Navparê e-nameyê nû asteng bike
-      no_email_domain_block_selected: Tu astengên navparê e-nameyê nehatin guhertin ji ber ku tu yek nehatine hilbijartin
-      resolved_dns_records_hint_html: Navê navparê ji MX ên jêrîn re çareser dike, ên ku di dawiyê de berpirsiyarin ji pejirandina e-nameyê. Astengkirina navparek MX wê tomarkirina ji her navnîşana e-nameyê ya ku heman navpara MX bi kar tîne asteng bike, tevlî ku navê navparê xuya cûda be. <strong>Hişyar be ku peydekarên sereke yên e-nameyê asteng nekî.</strong>
+        resolve: Navperê çareser bike
+        title: Navperê e-nameyê nû asteng bike
+      no_email_domain_block_selected: Tu astengkirnên navperê e-nameyê nehatin guhertin ji ber ku tu yek nehatine hilbijartin
+      resolved_dns_records_hint_html: Navê navperê ji MX ên jêrîn re çareser dike, ên ku di dawiyê de berpirsiyarin ji pejirandina e-nameyê. Astengkirina navperek MX wê tomarkirina ji her navnîşana e-nameyê ya ku heman navpera MX bi kar tîne asteng bike, tevlî ku navê navperê xuya cûda be. <strong>Hişyar be ku peydekarên sereke yên e-nameyê asteng nekî.</strong>
       resolved_through_html: Bi riya %{domain} ve hate çareserkirin
-      title: Navparên e-nameyê astengkirî
+      title: Navperên e-nameyê astengkirî
+    export_domain_allows:
+      new:
+        title: Astengkirnên navperê têne
+      no_file: Tu pel nehatiye hilbijartin
+    export_domain_blocks:
+      import:
+        description_html: Tu kê rêzokek ji astengkirinên navperê têxê. Ji kerema xwe vê rêzokê pir bi baldarî binirxîne, taybet ku te ev rêzok bi xwe nenivîsandiye.
+        existing_relationships_warning: Têkiliyên şopandinê yên heyî
+        private_comment_description_html: 'Ji bo ku bibe alîkar ji te re bo ku bişopînî ka astengkirinên têxistî ji kuderê tên, astengkirinên têxistî wê werin afirandin bi şîroveya taybet ya: <q>%{comment}</q>'
+        private_comment_template: Ji %{source} hate têxistin di %{date} de
+        title: Astengkirinên navperê têxe
+      new:
+        title: Astengkirnên navperê têxe
+      no_file: Tu pel nehatiye hilbijartin
     follow_recommendations:
       description_html: "<strong>Şopandina pêşniyaran ji bo bikarhênerên nû re dibe alîkar ku zû naveroka balkêş bibînin</strong>. Gava ku bikarhênerek têra xwe bi kesên din re têkildar nebê da ku pêşnîyarên şopandina yên kesane bo xwe çêbike, li şûna van ajimêran têne pêşniyarkirin. Ew her roj ji tevliheviya ajimêrên bi tevlêbûnên herî dawîn ên herî bilind û jimara şopdarên herêmî yên herî pir ji bo zimaneke diyarkirî ji nû ve têne pêşniyarkirin."
       language: Bo zimanê
@@ -435,8 +455,8 @@ ku:
     instances:
       availability:
         description_html:
-          one: Ku radestkirina navparê <strong>%{count} roj </strong> bêyî serkeftin birevebiçe, heya ku radestkirinek <em> ji </em> navparê neyê wergirtin, wê hewildanên radestkirinê neyên kirin.
-          other: Ku radestkirina navparê <strong>%{count} rojên cuda</strong> bêyî serkeftin birevebiçe, heya ku radestkirinek <em> ji </em> navparê neyê wergirtin, wê hewildanên radestkirinê neyên kirin.
+          one: Ku radestkirina navperê <strong>%{count} roj </strong> bêyî serkeftin birevebiçe, heya ku radestkirinek <em> ji </em> navperê neyê wergirtin, wê hewildanên radestkirinê neyên kirin.
+          other: Ku radestkirina navperê <strong>%{count} rojên cuda</strong> bêyî serkeftin birevebiçe, heya ku radestkirinek <em> ji </em> navperê neyê wergirtin, wê hewildanên radestkirinê neyên kirin.
         failure_threshold_reached: Rêjeya têkçûnê gihîşte %{date}.
         failures_recorded:
           one: Hewldana têkçûyî di %{count} roj de.
@@ -448,10 +468,10 @@ ku:
       back_to_limited: Sînorkirî
       back_to_warning: Hişyarî
       by_domain: Navper
-      confirm_purge: Ma tu dixwazî ku bi awayekî domdar daneyan ji vê navparê jê bibî?
+      confirm_purge: Ma tu dixwazî ku bi awayekî domdar daneyan ji vê navperê jê bibî?
       content_policies:
         comment: Nîşeya navxweyî
-        description_html: Tu dikarî polîtîkayên naverokê yên ku wê li hemû ajimêrên ji vê navparê û her kiîjan ji jêrnavparên werin sepandin diyar bikî.
+        description_html: Tu dikarî polîtîkayên naverokê yên ku wê li hemû ajimêrên ji vê navperê û her kiîjan ji jêrnavperên werin sepandin diyar bikî.
         policies:
           reject_media: Medya nepejirîne
           reject_reports: Ragihandinan nepejirîne
@@ -491,7 +511,7 @@ ku:
       private_comment: Şîroveya taybet
       public_comment: Şîroveya ji hemû kesî re vekirî
       purge: Pak bike
-      purge_description_html: Ku tu bawer dikî ev navpar bi domdarî negirêdayî ye, tu dikarî hemû tomarên ajimêr û daneyên xwe yîn têkildarî wê navparê jê bibî. Ev dibe ku hinek dem bigire.
+      purge_description_html: Ku tu bawer dikî ev navper bi domdarî negirêdayî ye, tu dikarî hemû tomarên ajimêr û daneyên xwe yîn têkildarî wê navperê jê bibî. Ev dibe ku hinek dem bigire.
       title: Giştî
       total_blocked_by_us: Ji aliyê me ve hatiye astengkirin
       total_followed_by_them: Ji aliyê wan ve hatiye şopandin
@@ -533,7 +553,7 @@ ku:
       enable: Çalak bike
       enable_hint: Gava were çalakkirin, rajekara te dê ji hemî şandiyên giştî yên vê guhêrkerê re bibe endam, û dê dest bi şandina şandiyên giştî yên vê rajekarê bike.
       enabled: Çalakkirî
-      inbox_url: URLa guhêrker
+      inbox_url: Girêdana guhêrker
       pending: Li benda pêjirandina guhêrker e
       save_and_enable: Tomar û çalak bike
       setup: Girêdanekê guhêrker saz bike
@@ -610,6 +630,7 @@ ku:
         other: "%{count} bikarhêner"
       categories:
         administration: Rêvebirî
+        devops: DevOps
         invites: Vexwendin
         moderation: Çavdêrî
         special: Taybet
@@ -637,7 +658,7 @@ ku:
         manage_custom_emojis: Emojiyên kesane bi rêve bibe
         manage_custom_emojis_description: Mafê dide bikarhêneran ku îmojî kesane bikin li ser vê rajekarê
         manage_federation: Demnameya giştî bi rê ve bibe
-        manage_federation_description: Mafê dide bikarhêneran ku demnameya giştî bi navparên din re asteng bikin û radestkirinê kontrol bikin
+        manage_federation_description: Mafê dide bikarhêneran ku demnameya giştî bi navperên din re asteng bikin û radestkirinê kontrol bikin
         manage_invites: Vexwendinan bi rêve bibe
         manage_invites_description: Mafê dide bikarhêneran ku li girêdanên vexwendinê bigerin û neçalak bikin
         manage_reports: Ragihandinan bi rê ve bibe
@@ -660,6 +681,7 @@ ku:
         view_audit_log_description: Mafê dide bikarhêneran ku dîroka çalakiyên rêveberî yên li ser rajekarê bibînin
         view_dashboard: Destgehê nîşan bide
         view_dashboard_description: Mafê dide bikarhêneran ku bigihîjin destgehê û pîvanên cuda
+        view_devops: DevOps
         view_devops_description: Mafê dide bikarhêneran ku bigihîjin destgehên Sidekiq û pgHero
       title: Rol
     rules:
@@ -678,16 +700,23 @@ ku:
       appearance:
         preamble: Navrûya tevnê ya Mastodon kesane bike.
         title: Xuyang
+      branding:
+        preamble: Navnîşa rajekarê te wê ji rajekarên din ên di torê de cuda bike. Dibe ku ev zanyarî li ser cihên cuda, wekî navrûya bikarhêneriyê tevnê ya Mastodon, sepanên resen, di pêşdîtinên girêdanê de li ser malperên din û di nav sepanên peyamî de, û hwd werin nîşandan. Ji bo vê yekê, çêtir e ku mirov van zanyariyan zelal, kurt û bê kêmasî werin nîşandan.
+        title: Marka
       content_retention:
+        preamble: Kontrol bike ka naveroka ku ji aliyê bikarhêner ve hatiye çêkirin di Mastodon de çawa tê tomarkirin.
         title: Parastina naverokê
       discovery:
         follow_recommendations: Pêşniyarên şopandinê
+        preamble: Rûbirûbûna naveroka balkêş ji bo bikarhênerên nû yên ku li ser Mastodon kesek nas nakin pir bi bandor e. Kontrol bike ka çend taybetmendiyên vekolînê li ser rajekarê te çawa dixebite.
+        profile_directory: Rêgeha profîlê
+        public_timelines: Demnameya gelemperî
         title: Vekolîne
         trends: Rojev
       domain_blocks:
         all: Bo herkesî
         disabled: Bo tu kesî
-        users: Ji bo bikarhênerên herêmî yên xwe tomar kirine
+        users: Ji bo bikarhênerên herêmî yên têketin kirine
       registrations:
         preamble: Kontrol bike ka kî dikare li ser rajekarê te ajimêrekê biafirîne.
         title: Tomarkirin
@@ -905,9 +934,9 @@ ku:
     regenerate_token: Nîşandera gihandinê bi nûve çêbike
     token_regenerated: Nîşandera gihandinê bi serkeftî nû ve hat çêkirin
     warning: Bi van daneyan re pir baldar be. Tu caran bi kesî re parve neke!
-    your_token: Nîşana gihîştina te
+    your_token: Nîşana gihîştinê te
   auth:
-    apply_for_account: Li ser lîsteya bendemayînê bistîne
+    apply_for_account: Ajimêrekê bixwaze
     change_password: Borînpeyv
     delete_account: Ajimêr jê bibe
     delete_account_html: Heke tu dixwazî ajimêra xwe jê bibe, tu dikarî <a href="%{path}">li vir bidomîne</a>. Ji te tê xwestin ku were pejirandin.
@@ -924,7 +953,7 @@ ku:
     log_in_with: Têkeve bi riya
     login: Têkeve
     logout: Derkeve
-    migrate_account: Derbasî ajimêreke din bibe
+    migrate_account: Livandin bo ajimêreke din
     migrate_account_html: Heke tu dixwazî ev ajimêr li ajimêreke cuda beralî bikî, tu dikarî <a href="%{path}">ji vir de saz bike</a>.
     or_log_in_with: An têketinê bike bi riya
     privacy_policy_agreement_html: Min <a href="%{privacy_policy_path}" target="_blank">Politîka taybetiyê</a> xwend û dipejirînim
@@ -1152,6 +1181,7 @@ ku:
     invalid_markup: 'di nav de nîşana HTML a nederbasdar heye: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Pelê CSV nederbasdar e. Çewtî: %{error}'
       over_rows_processing_limit: ji %{count} zêdetir rêzok hene
     modes:
       merge: Bi hev re bike
@@ -1220,7 +1250,7 @@ ku:
       not_found: nehate dîtin
       on_cooldown: Tu li ser sarbûnê yî
     followers_count: Di dema tevgerê de şopîner
-    incoming_migrations: Derbasî ajimêreke din bibe
+    incoming_migrations: Livandin ji ajimêreke din
     incoming_migrations_html: Ji bo ku tu ji ajimêrek din bar bikî vê yekê, pêşî divê tu <a href="%{path}">ajimêreke bi bernaveke çê bike </a>.
     moved_msg: Ajimêrate niha li %{acct} tê rêve kirin (beralîkirin) û şopînerên te têne livandin bo wê.
     not_redirecting: Ajimêra te niha bo ajimêreke din nayê beralîkirin.
@@ -1348,7 +1378,7 @@ ku:
     remove_selected_follows: Bikarhênerên hilbijartî neşopîne
     status: Rewşa ajimêr
   remote_follow:
-    missing_resource: Ji bona ajimêra te pêwistiya beralîkirina URLyê nehate dîtin
+    missing_resource: Ji bo ajimêrê te girêdana beralîkirî ya pêwîst nehate dîtin
   reports:
     errors:
       invalid_rules: rêbazên derbasdar nîşan nadê
@@ -1366,6 +1396,7 @@ ku:
     browser: Gerok
     browsers:
       alipay: Alipay
+      blackberry: BlackBerry
       chrome: Chrome
       edge: Microsoft Edge
       electron: Electron
@@ -1379,6 +1410,7 @@ ku:
       phantom_js: PhantomJS
       qq: Geroka QQ
       safari: Safari
+      uc_browser: Geroka UC
       weibo: Weibo
     current_session: Danişîna heyî
     description: "%{platform} ser %{browser}"
@@ -1387,6 +1419,8 @@ ku:
     platforms:
       adobe_air: Adobe Air
       android: Android
+      blackberry: BlackBerry
+      chrome_os: ChromeOS
       firefox_os: Firefox OS
       ios: iOS
       linux: Linux
@@ -1478,7 +1512,7 @@ ku:
     exceptions: Awarte
     explanation: Ji ber ku jêbirina şandiyan pêvajoyeke biha ye, ev hêdî hêdî bi demê re tê kirin dema ku rajekar wekî din mijûl nebe. Ji ber vê sedemê, dibe ku şandiyên te demek şûnda ku bigihîjin sînorê temenê wê werin jêbirin.
     ignore_favs: Ecibandinan paşguh bike
-    ignore_reblogs: Bilindkirinê piştguh bike
+    ignore_reblogs: Bilindkirinan piştguh bike
     interaction_exceptions: Awarteyên li ser bingehên têkiliyan
     interaction_exceptions_explanation: Bizanibe ku heke şandiyeke ku ji binî ve têkeve jêrî bijare an bilindkirin ê piştî ku carek din di ser wan re derbas bibe, garantiyek tune ku werin jêbirin.
     keep_direct: Peyamên rasterast veşêre
diff --git a/config/locales/lt.yml b/config/locales/lt.yml
index d0d8bb4b8..58d0ae4f4 100644
--- a/config/locales/lt.yml
+++ b/config/locales/lt.yml
@@ -141,11 +141,7 @@ lt:
         create: Sukurti bloką
         hint: Domeno blokavimas nesustabdys vartotojų paskyrų sukūrimo duomenų sistemoje, tačiau automatiškai pritaikys atitinkamus moderavimo metodus šioms paskyroms.
         severity:
-          desc_html: |-
-            <strong>1Tyla</strong>2 padarys paskyros įkelimus nematomus visiems, kurie jų neseka.
-            <strong>3Draudimas</strong>4 panaikins visus paskyros įkėlimus ir profilio informaciją.Naudok<strong>5Nieko</strong>6 jeigu tiesiog norite atmesti medijos failus.
           noop: Nieko
-          silence: Tyla
           suspend: Draudimas
         title: Naujos domeno blokas
       reject_media: Atmesti medijos failai
diff --git a/config/locales/lv.yml b/config/locales/lv.yml
index 2c1eaef62..56962ecc5 100644
--- a/config/locales/lv.yml
+++ b/config/locales/lv.yml
@@ -338,7 +338,7 @@ lv:
       title: Pielāgotās emocijzīmes
       uncategorized: Nekategorizētās
       unlist: Izslēgt
-      unlisted: Neminētie
+      unlisted: Nerindota
       update_failed_msg: Nevarēja atjaunināt šo emocijzīmi
       updated_msg: Emocijzīme veiksmīgi atjaunināta!
       upload: Augšupielādēt
@@ -380,6 +380,8 @@ lv:
       add_new: Atļaut federāciju ar domēnu
       created_msg: Domēns ir veiksmīgi atļauts federācijai
       destroyed_msg: Domēns ir aizliegts federācijai
+      export: Eksportēt
+      import: Importēt
       undo: Aizliegt federāciju ar domēnu
     domain_blocks:
       add_new: Pievienot jaunu domēna bloku
@@ -389,15 +391,19 @@ lv:
       edit: Rediģēt domēna bloķēšanu
       existing_domain_block: Tu jau esi noteicis stingrākus ierobežojumus %{name}.
       existing_domain_block_html: Tu jau esi noteicis stingrākus ierobežojumus %{name}, vispirms tev <a href="%{unblock_url}">jāatbloķē</a>.
+      export: Eksportēt
+      import: Importēt
       new:
         create: Izveodot bloku
         hint: Domēna bloķēšana netraucēs izveidot kontu ierakstus datu bāzē, bet ar atpakaļejošu datumu un automātiski tiks piemērotas noteiktas moderēšanas metodes šajos kontos.
         severity:
-          desc_html: "<strong>Klusums</strong> padarīs konta ziņas neredzamas ikvienam, kurš tām neseko. <strong>Apturēt</strong> tiks noņemts viss konta saturs, mediji un profila dati. Izmanto <strong>Nevienu</strong>, ja vēlies noraidīt mediju failus."
+          desc_html: "<strong>Ierobežojums</strong> padarīs ziņas no šī domēna kontiem neredzamas ikvienam, kas tiem neseko. <strong>Apturēšana</strong> no tava servera noņems visu šī domēna kontu saturu, multividi un profila datus. Izmanto <strong>Nav</strong>, ja vēlies vienkārši noraidīt multivides failus."
           noop: Neviens
-          silence: Klusums
+          silence: Ierobežot
           suspend: Apturēt
         title: Jauns domēna bloks
+      no_domain_block_selected: Neviens e-pasta domēna bloks netika mainīts, jo neviens netika atlasīts
+      not_permitted: Tev nav atļauts veikt šo darbību
       obfuscate: Apslēpt domēna vārdu
       obfuscate_hint: Daļēji apslēpt domēna nosaukumu sarakstā, ja ir iespējota domēna ierobežojumu saraksta reklamēšana
       private_comment: Privāts komentārs
@@ -430,6 +436,20 @@ lv:
       resolved_dns_records_hint_html: Domēna nosaukums tiek izmantots tālāk norādītajos MX domēnos, kas galu galā ir atbildīgi par e-pasta pieņemšanu. Bloķējot MX domēnu, tiks bloķēta reģistrēšanās no jebkuras e-pasta adreses, kas izmanto vienu un to pašu MX domēnu, pat ja redzamais domēna nosaukums atšķiras. <strong>Esi uzmanīgs, lai nebloķētu lielākos e-pasta pakalpojumu sniedzējus.</strong>
       resolved_through_html: Atrisināts, izmantojot %{domain}
       title: Bloķētie e-pasta domēni
+    export_domain_allows:
+      new:
+        title: Importēt domēnu atļaujas
+      no_file: Nav atlasīts neviens fails
+    export_domain_blocks:
+      import:
+        description_html: Tu gatavojies importēt domēna bloku sarakstu. Lūdzu, ļoti rūpīgi pārskati šo sarakstu, it īpaši, ja tu pats neesi to veidojis.
+        existing_relationships_warning: Esošās sekošanas attiecības
+        private_comment_description_html: 'Lai palīdzētu tev izsekot, no kurienes nāk importētie bloki, tiks izveidoti importētie bloki ar šādu privātu komentāru: <q>%{comment}</q>'
+        private_comment_template: Importēts no %{source} %{date}
+        title: Importēt bloķētos domēnus
+      new:
+        title: Importēt bloķētos domēnus
+      no_file: Nav atlasīts neviens fails
     follow_recommendations:
       description_html: "<strong>Sekošana rekomendācijām palīdz jaunajiem lietotājiem ātri atrast interesantu saturu</strong>. Ja lietotājs nav pietiekami mijiedarbojies ar citiem, lai izveidotu personalizētus ieteikumus, ieteicams izmantot šos kontus. Tie tiek pārrēķināti katru dienu, izmantojot vairākus kontus ar visaugstākajām pēdējā laika saistībām un vislielāko vietējo sekotāju skaitu noteiktā valodā."
       language: Valodai
@@ -566,7 +586,7 @@ lv:
         mark_as_sensitive_description_html: Mediju faili ziņojumos, par kuriem ziņots, tiks atzīmēti kā sensitīvi, un tiks reģistrēts brīdinājums, lai palīdzētu tev izvērst turpmākus pārkāpumus saistībā ar to pašu kontu.
         other_description_html: Skatīt vairāk iespēju kontrolēt konta uzvedību un pielāgot saziņu ar paziņoto kontu.
         resolve_description_html: Pret norādīto kontu netiks veiktas nekādas darbības, netiks reģistrēts brīdinājums, un ziņojums tiks slēgts.
-        silence_description_html: Profils būs redzams tikai tiem, kas jau tam seko vai manuāli apskata, stingri ierobežojot tās sasniedzamību. Šo vienmēr var atgriezt.
+        silence_description_html: Profils būs redzams tikai tiem, kas jau tam seko vai manuāli apskata, tādējādi ievērojami ierobežojot tā sasniedzamību. Šo izvēli vienmēr var mainīt.
         suspend_description_html: Profils un viss tā saturs kļūs nepieejami, līdz tas beidzot tiek izdzēsts. Mijiedarbība ar kontu būs neiespējama. Atgriežams 30 dienu laikā.
       actions_description_html: Izlem, kādas darbības jāveic, lai atrisinātu šo ziņojumu. Ja veiksi sodīšanas darbību pret kontu, par kuru ziņots, tam tiks nosūtīts e-pasta paziņojums, izņemot gadījumus, kad ir atlasīta kategorija <strong>Spam</strong>.
       add_to_report: Pievienot varāk paziņošanai
@@ -932,7 +952,7 @@ lv:
     warning: Esi ļoti uzmanīgs ar šiem datiem. Nekad nedalies ne ar vienu ar tiem!
     your_token: Tavs piekļuves marķieris
   auth:
-    apply_for_account: Iekļūt gaidīšanas sarakstā
+    apply_for_account: Pieprasīt kontu
     change_password: Parole
     delete_account: Dzēst kontu
     delete_account_html: Ja vēlies dzēst savu kontu, tu vari <a href="%{path}">turpināt šeit</a>. Tev tiks lūgts apstiprinājums.
@@ -1184,6 +1204,7 @@ lv:
     invalid_markup: 'satur nederīgu HTML marķējumu: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Nederīgs CSV fails. Kļūda: %{error}'
       over_rows_processing_limit: satur vairāk, nekā %{count} rindas
     modes:
       merge: Apvienot
@@ -1413,7 +1434,7 @@ lv:
       phantom_js: PhantomJS
       qq: QQ Browser
       safari: Safari
-      uc_browser: UC Pārlūks
+      uc_browser: UC Browser
       weibo: Weibo
     current_session: Pašreizējā sesija
     description: "%{browser} uz %{platform}"
@@ -1513,8 +1534,8 @@ lv:
       private_long: Rādīt tikai sekotājiem
       public: Publisks
       public_long: Visi var redzēt
-      unlisted: Neiekļautie
-      unlisted_long: Ikviens var redzēt, bet nav norādīts publiskajā ziņu lentā
+      unlisted: Nerindota
+      unlisted_long: Redzama visiem, bet nav iekļauta publiskajās ziņu lentās
   statuses_cleanup:
     enabled: Automātiski dzēst vecās ziņas
     enabled_hint: Automātiski izdzēš tavas ziņas, tiklīdz tās sasniedz noteiktu vecuma slieksni, ja vien tās neatbilst kādam no tālāk norādītajiem izņēmumiem
diff --git a/config/locales/ms.yml b/config/locales/ms.yml
index 1fc61b462..e75a15502 100644
--- a/config/locales/ms.yml
+++ b/config/locales/ms.yml
@@ -5,6 +5,7 @@ ms:
     contact_missing: Tidak ditetapkan
     contact_unavailable: Tidak tersedia
     hosted_on: Mastodon dihoskan di %{domain}
+    title: Perihal
   accounts:
     follow: Ikut
     followers:
@@ -35,19 +36,27 @@ ms:
       avatar: Avatar
       by_domain: Domain
       change_email:
+        changed_msg: E-mel berjaya ditukar!
         current_email: E-mel semasa
         label: Ubah e-mel
         new_email: E-mel baharu
         submit: Ubah e-mel
         title: Ubah e-mel untuk %{username}
+      change_role:
+        changed_msg: Peranan berjaya ditukar!
+        label: Tukar peranan
+        no_role: Tiada peranan
+        title: Tukar peranan untuk %{username}
       confirm: Sahkan
       confirmed: Disahkan
       confirming: Mengesahkan
+      custom: Tersuai
       delete: Padam data
       deleted: Dipadamkan
       demote: Turunkan taraf
       destroyed_msg: Data %{username} kini menunggu giliran untuk dipadam sebentar lagi
       disable: Bekukan
+      disable_sign_in_token_auth: Nyahdaya pengesahan token e-mel
       disable_two_factor_authentication: Lumpuhkan 2FA
       disabled: Dibekukan
       display_name: Nama paparan
@@ -56,6 +65,7 @@ ms:
       email: E-mel
       email_status: Status e-mel
       enable: Nyahbekukan
+      enable_sign_in_token_auth: Dayakan pengesahan token e-mel
       enabled: Didayakan
       enabled_msg: Berjaya menyahbekukan akaun %{username}
       followers: Pengikut
@@ -80,6 +90,7 @@ ms:
         active: Aktif
         all: Semua
         pending: Menunggu
+        silenced: Terhad
         suspended: Digantungkan
         title: Penyederhanaan
       moderation_notes: Catatan penyederhana
@@ -87,6 +98,7 @@ ms:
       most_recent_ip: Alamat IP terbaru
       no_account_selected: Tiada akaun diubah kerana tiada yang dipilih
       no_limits_imposed: Tiada pengehadan dikenakan
+      no_role_assigned: Tiada peranan ditugaskan
       not_subscribed: Tiada langganan
       pending: Menunggu semak semula
       perform_full_suspension: Gantung
@@ -109,9 +121,13 @@ ms:
       reset: Tetapkan semula
       reset_password: Tetapkan semula kata laluan
       resubscribe: Langgan semula
+      role: Peranan
       search: Cari
       search_same_email_domain: Pengguna lain dengan domain e-mel yang sama
       search_same_ip: Pengguna lain dengan alamat IP yang sama
+      security_measures:
+        only_password: Kata laluan sahaja
+        password_and_2fa: Kata laluan dan 2FA
       sensitive: Sensitif
       sensitized: ditandakan sebagai sensitif
       shared_inbox_url: URL peti masuk berkongsi
@@ -122,10 +138,12 @@ ms:
       silenced: Dihadkan
       statuses: Hantaran
       subscribe: Langgan
+      suspend: Gantung
       suspended: Digantung
       suspension_irreversible: Data akaun ini telah dipadam secara kekal. Anda boleh nyahgantungkannya untuk membuatkan akaun ini boleh digunakan semula tetapi data lama tidak akan diperolehi.
       suspension_reversible_hint_html: Akaun ini telah digantung, dan datanya akan dibuang pada %{date}. Sebelum tarikh itu, akaun ini boleh diperoleh semula tanpa kesan buruk. Jika anda mahu memadamkan kesemua data akaun ini serta-merta, anda boleh melakukannya di bawah.
       title: Akaun
+      unblock_email: Menyahsekat alamat e-mel
       unconfirmed_email: E-mel belum disahkan
       undo_sensitized: Nyahtanda sensitif
       undo_silenced: Nyahdiamkan
@@ -140,26 +158,34 @@ ms:
       whitelisted: Dibenarkan untuk persekutuan
     action_logs:
       action_types:
+        approve_appeal: Meluluskan Rayuan
+        approve_user: Luluskan Pengguna
         assigned_to_self_report: Buat Laporan
         change_email_user: Ubah E-mel untuk Pengguna
+        change_role_user: Tukar Peranan Pengguna
         confirm_user: Sahkan Pengguna
         create_account_warning: Cipta Amaran
         create_announcement: Cipta Pengumuman
+        create_canonical_email_block: Cipta Penyekatan E-mel
         create_custom_emoji: Cipta Emoji Tersendiri
         create_domain_allow: Cipta Pelepasan Domain
         create_domain_block: Cipta Penyekatan Domain
         create_email_domain_block: Cipta Penyekatan Domain E-mel
         create_ip_block: Cipta peraturan alamat IP
         create_unavailable_domain: Cipta Domain Tidak Tersedia
+        create_user_role: Cipta Peranan
         demote_user: Turunkan Taraf Pengguna
         destroy_announcement: Padam Pengumuman
+        destroy_canonical_email_block: Padam Penyekatan E-mel
         destroy_custom_emoji: Padam Emoji Tersendiri
         destroy_domain_allow: Padam Pelepasan Domain
         destroy_domain_block: Padam Penyekatan Domain
         destroy_email_domain_block: Padam penyekatan domain e-mel
+        destroy_instance: Padamkan Domain
         destroy_ip_block: Padam peraturan alamat IP
         destroy_status: Padam Hantaran
         destroy_unavailable_domain: Padam Domain Tidak Tersedia
+        destroy_user_role: Padamkan Peranan
         disable_2fa_user: Nyahdayakan 2FA
         disable_custom_emoji: Nyahdayakan Emoji Tersendiri
         disable_user: Nyahdayakan Pengguna
@@ -167,21 +193,27 @@ ms:
         enable_user: Dayakan Pengguna
         memorialize_account: Jadikan Akaun Kenangan
         promote_user: Naikkan Taraf Pengguna
+        reject_appeal: Menolak Rayuan
+        reject_user: Menolak Pengguna
         remove_avatar_user: Buang Avatar
         reopen_report: Buka Semula Laporan
+        resend_user: Hantar Semula E-mel Pengesahan
         reset_password_user: Tetapkan Semula Kata Laluan
         resolve_report: Buat Keputusan Laporan
         sensitive_account: Tandakan media di akaun anda sebagai sensitif
         silence_account: Diamkan Akaun
         suspend_account: Gantungkan Akaun
         unassigned_report: Menyahtugaskan Laporan
+        unblock_email_account: Menyahsekat alamat e-mel
         unsensitive_account: Nyahtanda media di akaun anda sebagai sensitif
         unsilence_account: Nyahdiamkan Akaun
         unsuspend_account: Nyahgantungkan Akaun
         update_announcement: Kemas Kini Pengumuman
         update_custom_emoji: Kemas Kini Emoji Tersendiri
         update_domain_block: Kemas Kini Penyekatan Domain
+        update_ip_block: Kemas kini peraturan IP
         update_status: Kemas Kini Hantaran
+        update_user_role: Kemas Kini Peranan
       actions:
         assigned_to_self_report_html: "%{name} menugaskan laporan %{target} kepada dirinya sendiri"
         change_email_user_html: "%{name} telah mengubah alamat e-mel pengguna %{target}"
@@ -194,14 +226,19 @@ ms:
         create_email_domain_block_html: "%{name} telah menyekat domain e-mel %{target}"
         create_ip_block_html: "%{name} telah mencipta peraturan alamat IP %{target}"
         create_unavailable_domain_html: "%{name} telah menghentikan penghantaran ke domain %{target}"
+        create_user_role_html: "%{name} mewujudkan peranan %{target}"
         demote_user_html: "%{name} telah menurunkan taraf pengguna %{target}"
         destroy_announcement_html: "%{name} telah memadamkan pengumuman %{target}"
+        destroy_canonical_email_block_html: "%{name} telah menyahsekat e-mel dengan hash %{target}"
+        destroy_custom_emoji_html: "%{name} telah memadam emoji %{target}"
         destroy_domain_allow_html: "%{name} telah membuang kebenaran persekutuan dengan domain %{target}"
         destroy_domain_block_html: "%{name} telah menyahsekat domain %{target}"
         destroy_email_domain_block_html: "%{name} telah menyahsekat domain e-mel %{target}"
+        destroy_instance_html: "%{name} telah memadam domain %{target}"
         destroy_ip_block_html: "%{name} telah memadamkan peraturan untuk alamat IP %{target}"
         destroy_status_html: "%{name} telah membuang hantaran oleh %{target}"
         destroy_unavailable_domain_html: "%{name} telah menyambung penghantaran ke domain %{target}"
+        destroy_user_role_html: "%{name} telah memadam peranan %{target}"
         disable_2fa_user_html: "%{name} menyahdayakan keperluan dua faktor bagi pengguna %{target}"
         disable_custom_emoji_html: "%{name} telah menyahdayakan emoji %{target}"
         disable_user_html: "%{name} telah menyahdayakan log masuk bagi pengguna %{target}"
@@ -224,6 +261,7 @@ ms:
         update_custom_emoji_html: "%{name} telah mengemaskini emoji %{target}"
         update_domain_block_html: "%{name} telah mengemaskini penyekatan domain untuk %{target}"
         update_status_html: "%{name} telah mengemaskini hantaran oleh %{target}"
+      deleted_account: akaun dipadamkan
       empty: Tiada log dijumpai.
       filter_by_action: Tapis mengikut tindakan
       filter_by_user: Tapis mengikut pengguna
@@ -278,13 +316,29 @@ ms:
       updated_msg: Emoji berjaya dikemaskini!
       upload: Muat naik
     dashboard:
+      active_users: pengguna aktif
+      interactions: interaksi
+      media_storage: Penyimpanan media
+      new_users: pengguna baru
+      opened_reports: laporan dibuka
+      resolved_reports: laporan diselesaikan
       software: Perisian
+      sources: Sumber pendaftaran
       space: Kegunaan ruang
       title: Papan pemuka
+      top_languages: Bahasa paling aktif
+      top_servers: Pelayan paling aktif
+      website: Laman web
+    disputes:
+      appeals:
+        empty: Tiada rayuan ditemui.
+        title: Rayuan
     domain_allows:
       add_new: Benarkan persekutuan dengan domain
       created_msg: Domain telah berjaya dibenarkan untuk persekutuan
       destroyed_msg: Domain telah dibuang kebenaran daripada persekutuan
+      export: Eksport
+      import: Import
       undo: Buang kebenaran persekutuan dengan domain
     domain_blocks:
       add_new: Tambah penyekatan domain baharu
@@ -293,13 +347,13 @@ ms:
       domain: Domain
       edit: Sunting penyekatan domain
       existing_domain_block_html: Anda telah mengenakan pengehadan yang lebih tegas ke atas %{name}, anda perlu <a href="%{unblock_url}">menyahsekatinya</a> dahulu.
+      export: Eksport
+      import: Import
       new:
         create: Cipta sekatan
         hint: Sekatan domain tidak akan menghindarkan penciptaan entri akaun dalam pangkalan data, tetapi akan dikenakan kaedah penyederhanaan khusus tertentu pada akaun-akaun tersebut secara retroaktif dan automatik.
         severity:
-          desc_html: "<strong>Diamkan</strong> akan membuatkan hantaran akaun tidak kelihatan kepada sesiapa yang tidak mengikut mereka. <strong>Gantungkan</strong> akan membuang kesemua kandungan, media, dan data profil akaun tersebut. Gunakan <strong>Tiada</strong> jika anda hanya ingin menolak fail media."
           noop: Tiada
-          silence: Diamkan
           suspend: Gantungkan
         title: Sekatan domain baharu
       obfuscate: Mengaburkan nama domain
@@ -318,11 +372,16 @@ ms:
       add_new: Tambah baharu
       created_msg: Telah berjaya menyekat domain e-mel
       delete: Padam
+      dns:
+        types:
+          mx: Rekod MX
       domain: Domain
       new:
         create: Tambah domain
         title: Sekat domain e-mel baharu
       title: Domain e-mel disekat
+    export_domain_allows:
+      no_file: Tiada fail dipilih
     follow_recommendations:
       description_html: "<strong>Saranan ikutan membantu pengguna baharu mencari kandungan menarik dengan cepat</strong>. Apabila pengguna belum cukup berinteraksi dengan akaun lain untuk membentuk saranan ikutan tersendiri, akaun-akaun inilah yang akan disarankan. Ia dinilai semula setiap hari dari gabungan keterlibatan tertinggi terkini dan juga jumlah pengikut tempatan tertinggi mengikut bahasa masing-masing."
       language: Untuk bahasa
@@ -336,6 +395,15 @@ ms:
       back_to_limited: Terhad
       back_to_warning: Amaran
       by_domain: Domain
+      content_policies:
+        policy: Dasar
+        reason: Sebab awam
+        title: Dasar kandungan
+      dashboard:
+        instance_accounts_dimension: Akaun paling ramai diikuti
+        instance_accounts_measure: akaun disimpan
+        instance_followers_measure: pengikut kami di situ
+        instance_follows_measure: pengikut mereka di sini
       delivery:
         all: Semua
         clear: Buang ralat penghantaran
@@ -406,24 +474,30 @@ ms:
       account:
         notes:
           other: "%{count} catatan"
+      action_log: Log audit
       action_taken_by: Tindakan diambil oleh
       are_you_sure: Adakah anda pasti?
       assign_to_self: Menugaskan kepada saya
       assigned: Penyederhana yang ditugaskan
       by_target_domain: Domain bagi akaun yang dilaporkan
+      category: Kumpulan
       comment:
         none: Tiada
       created_at: Dilaporkan
+      delete_and_resolve: Padam hantaran
       forwarded: Dipanjangkan
       forwarded_to: Dipanjangkan ke %{domain}
       mark_as_resolved: Tanda sebagai sudah selesai
+      mark_as_sensitive: Tandakan sebagai sensitif
       mark_as_unresolved: Tanda sebagai belum selesai
+      no_one_assigned: Tiada sesiapa
       notes:
         create: Tambah catatan
         create_and_resolve: Selesaikan dengan catatan
         create_and_unresolve: Buka semula dengan catatan
         delete: Padam
         placeholder: Terangkan tindakan apa yang telah diambil, atau sebarang kemas kini lain yang berkaitan...
+        title: Catatan
       reopen: Buka semula laporan
       report: 'Laporan #%{id}'
       reported_account: Akaun yang dilaporkan
@@ -435,6 +509,30 @@ ms:
       unassign: Nyahtugaskan
       unresolved: Nyahselesaikan
       updated_at: Dikemaskini
+      view_profile: Lihat profil
+    roles:
+      add_new: Tambah peranan
+      assigned_users:
+        other: "%{count} pengguna"
+      categories:
+        administration: Pentadbiran
+        invites: Undangan
+        special: Khas
+      delete: Padam
+      everyone: Kebenaran lalai
+      permissions_count:
+        other: "%{count} kebenaran"
+      privileges:
+        administrator: Pentadbir
+        delete_user_data: Padamkan Data Pengguna
+        manage_reports: Uruskan Laporan
+        manage_roles: Uruskan Peranan
+        manage_rules: Uruskan Peraturan
+        manage_settings: Uruskan Tetapan
+        manage_taxonomies: Uruskan Taksonomi
+        manage_user_access: Uruskan Akses Pengguna
+        manage_users: Uruskan Pengguna
+      title: Peranan
     rules:
       add_new: Tambah peraturan
       delete: Padam
@@ -443,23 +541,290 @@ ms:
       empty: Masih belum ada peraturan pelayan yang ditakrifkan.
       title: Peraturan pelayan
     settings:
+      about:
+        manage_rules: Uruskan peraturan pelayan
+      discovery:
+        profile_directory: Direktori profil
+      registrations:
+        title: Pendaftaran
       registrations_mode:
         modes:
           approved: Kelulusan diperlukan untuk pendaftaran
           none: Tiada siapa boleh mendaftar
           open: Sesiapapun boleh mendaftar
+      title: Tetapan Pelayan
+    statuses:
+      account: Penulis
+      deleted: Dipadamkan
+      favourites: Gemaran
+      history: Sejarah versi
+      language: Bahasa
+      open: Buka hantaran
+    strikes:
+      actions:
+        delete_statuses: "%{name} memadam hantaran %{target}"
+      appeal_approved: Dirayu
+    tags:
+      review: Semak status
+    title: Pentadbiran
+    trends:
+      allow: Izin
+      approved: Diluluskan
+      preview_card_providers:
+        title: Penerbit
+      rejected: Ditolak
+      statuses:
+        allow: Izinkan hantaran
+        allow_account: Izinkan penulis
+        title: Hantaran hangat
+      tags:
+        dashboard:
+          tag_servers_measure: pelayan lain
+    webhooks:
+      delete: Padam
+      enable: Dayakan
+      enabled: Aktif
+  admin_mailer:
+    new_appeal:
+      actions:
+        silence: untuk mengehadkan akaun mereka
+  appearance:
+    localization:
+      guide_link_text: Sesiapa sahaja boleh memberi sumbangan.
+    sensitive_content: Kandungan sensitif
+  application_mailer:
+    view: 'Lihat:'
+    view_profile: Lihat profil
+    view_status: Lihat hantaran
+  auth:
+    change_password: Kata laluan
+    delete_account: Padam akaun
+    description:
+      prefix_sign_up: Daftar pada Mastodon hari ini!
+    forgot_password: Terlupa kata laluan anda?
+    log_in_with: Daftar masuk dengan
+    login: Daftar masuk
+    logout: Daftar keluar
+    migrate_account: Pindah kepada akaun lain
+    or_log_in_with: Atau daftar masuk dengan
+    register: Daftar
+    registration_closed: "%{instance} tidak menerima ahli-ahli baru"
+    security: Keselamatan
+    status:
+      account_status: Status akaun
+    use_security_key: Gunakan kunci keselamatan
+  authorize_follow:
+    follow: Ikut
+    follow_request: 'Anda telah menghantar permintaan mengikut kepada:'
+    post_follow:
+      close: Atau anda boleh tutup tetingkap ini.
+      return: Tunjukkan profil pengguna
+      web: Pergi ke web
+    title: Ikuti %{acct}
+  challenge:
+    confirm: Teruskan
+    invalid_password: Kata laluan tidak sah
+    prompt: Sahkan kata laluan untuk teruskan
+  deletes:
+    proceed: Padam akaun
+  disputes:
+    strikes:
+      action_taken: Tindakan diambil
+      appeal: Rayu
+      appeal_rejected: Rayuan ini telah ditolak
+      appeal_submitted_at: Rayuan dihantar
+      appeals:
+        submit: Hantar rayuan
+      approve_appeal: Luluskan rayuan
+      associated_report: Laporan berkaitan
+      reject_appeal: Tolak rayuan
+      status: 'Hantaran #%{id}'
+      title_actions:
+        delete_statuses: Pemadaman hantaran
+        none: Amaran
+      your_appeal_approved: Rayuan anda telah diluluskan
+      your_appeal_pending: Anda telah menghantar rayuan
   errors:
-    '400': The request you submitted was invalid or malformed.
-    '403': You don't have permission to view this page.
-    '404': The page you are looking for isn't here.
-    '406': This page is not available in the requested format.
-    '410': The page you were looking for doesn't exist here anymore.
-    '422': 
-    '429': Too many requests
+    '400': Permintaan yang anda serahkan tidak sah atau salah bentuk.
+    '403': Anda tidak mempunyai kebenaran untuk melihat halaman ini.
+    '404': Halaman yang anda cari tiada di sini.
+    '406': Halaman ini tidak tersedia dalam format yang diminta.
+    '410': Halaman yang anda cari tidak wujud di sini lagi.
+    '422':
+      title: Pengesahan keselamatan gagal
+    '429': Terlalu banyak permintaan
     '500': 
-    '503': The page could not be served due to a temporary server failure.
+    '503': Halaman tidak dapat disampaikan kerana kegagalan pelayan sementara.
   exports:
     archive_takeout:
       in_progress: Mengkompil arkib anda...
+      request: Minta arkib anda
+    csv: CSV
+    domain_blocks: Domain disekat
+    lists: Senarai
+  filters:
+    contexts:
+      account: Profil
+      notifications: Pemberitahuan
+    edit:
+      add_keyword: Tambah kata kunci
+      keywords: Kata kunci
+      title: Sunting penapis
+    index:
+      empty: Anda tiada penapis.
+      keywords:
+        other: "%{count} kata kunci"
+      statuses:
+        other: "%{count} hantaran"
+      title: Penapis
+    new:
+      save: Simpan penapis baru
+      title: Tambah penapis baru
+    statuses:
+      back_to_filter: Balik kepada penapis
+      index:
+        title: Hantaran ditapis
+  generic:
+    all: Semua
+    copy: Salin
+    delete: Padam
+    deselect: Nyahpilih semua
+    none: Tiada
+  imports:
+    upload: Muat naik
+  invites:
+    expires_in:
+      '1800': 30 minit
+      '21600': 6 jam
+      '3600': Sejam
+      '43200': 12 jam
+      '604800': Seminggu
+      '86400': Sehari
+    expires_in_prompt: Jangan
+  login_activities:
+    authentication_methods:
+      password: kata laluan
+      sign_in_token: e-mel kod keselamatan
+      webauthn: kunci keselamatan
+  migrations:
+    acct: Dipindah ke
+    proceed_with_move: Pindah pengikut
+  notification_mailer:
+    follow:
+      title: Pengikut baru
+    follow_request:
+      title: Permintaan ikutan baru
+    mention:
+      action: Balas
+    update:
+      subject: "%{name} telah menyunting satu hantaran"
+  privacy_policy:
+    title: Dasar Privasi
+  relationships:
+    follow_selected_followers: Ikut pengikut yang dipilih
+    followers: Pengikut
+    following: Ikutan
+    last_active: Terakhir aktif
+    most_recent: Terkini
+    relationship: Hubungan
+    status: Status akaun
+  rss:
+    content_warning: 'Amaran kandungan:'
+  sessions:
+    activity: Aktiviti terakhir
+    browser: Pelayar
+    browsers:
+      alipay: Alipay
+      blackberry: BlackBerry
+      chrome: Chrome
+      opera: Opera
+      otter: Otter
+      safari: Safari
+    current_session: Sesi sekarang
+    description: "%{browser} pada %{platform}"
+    explanation: Pelayar-pelayar web berikut sedang didaftar masuk pada akaun Mastodon anda.
+    ip: IP
+    platforms:
+      android: Android
+      ios: iOS
+      linux: Linux
+      other: platform tidak dikenali
+    title: Sesi
+  settings:
+    account: Akaun
+    account_settings: Tetapan akaun
+    delete: Pemadaman akaun
+    edit_profile: Sunting profil
+    export: Eksport data
+    featured_tags: Tanda pagar terpilih
+    import: Import
+    import_and_export: Import dan eksport
+    notifications: Pemberitahuan
+    preferences: Keutamaan
+    profile: Profil
+    relationships: Ikutan dan pengikut
+    statuses_cleanup: Pemadaman hantaran automatik
+    two_factor_authentication: Pengesahan Dua Faktor
+    webauthn_authentication: Kunci keselamatan
+  statuses:
+    content_warning: 'Amaran kandungan: %{warning}'
+    default_language: Sama dengan bahasa antara muka
+    edited_at_html: Disunting %{date}
+    poll:
+      vote: Undi
+    sign_in_to_participate: Daftar masuk untuk menyertai perbualan
+    visibilities:
+      direct: Terus
+      private: Pengikut sahaja
+      public: Awam
+      public_long: Semua orang boleh melihat
+      unlisted: Tidak tersenarai
+  statuses_cleanup:
+    enabled: Padam hantaran lama secara automatik
+    keep_pinned: Simpan hantaran disemat
+    keep_pinned_hint: Tidak memadamkan mana-mana hantaran yang anda sematkan
+    keep_self_bookmark: Simpan hantaran yang anda menandabuku
+    keep_self_bookmark_hint: Tidak memadamkan hantaran anda jika anda sudah menandabukunya
+    keep_self_fav: Simpan hantaran yang anda gemarkan
+    keep_self_fav_hint: Tidak memadamkan hantaran anda jika anda telah menggemarkannya
+    min_age:
+      '1209600': 2 minggu
+      '15778476': 6 bulan
+      '2629746': Sebulan
+      '31556952': Setahun
+      '5259492': 2 bulan
+      '604800': Seminggu
+      '63113904': 2 tahun
+      '7889238': 3 bulan
+    min_favs: Simpan hantaran digemarkan sekurang-kurangnya
+    min_favs_hint: Tidak memadamkan mana-mana hantaran anda yang telah menerima sekurang-kurangnya jumlah gemaran ini. Biarkan kosong untuk memadamkan hantaran tanpa mengira nombor gemaran
+  stream_entries:
+    pinned: Hantaran disemat
+    sensitive_content: Kandungan sensitif
+  two_factor_authentication:
+    add: Tambah
+    disable: Nyahdayakan 2FA
+    edit: Sunting
+    methods: Kaedah dua faktor
+    otp: App pengesahan
+  user_mailer:
+    appeal_approved:
+      action: Pergi ke akaun anda
+      title: Rayuan diluluskan
+    appeal_rejected:
+      title: Rayuan ditolak
+    suspicious_sign_in:
+      title: Daftar masuk baru
+    welcome:
+      subject: Selamat datang kepada Mastodon
+      title: Selamat datang, %{name}!
   users:
     follow_limit_reached: Anda tidak boleh mengikut lebih daripada %{limit} orang
+    signed_in_as: 'Didaftar masuk sebagai:'
+  verification:
+    verification: Pengesahan
+  webauthn_credentials:
+    invalid_credential: Kunci keselamatan tidak sah
+    not_supported: Pelayan ini tidak menyokong kunci keselamatan
+    otp_required: Untuk menggunakan kunci keselamatan, sila mengaktifkan pengesahan dua faktor dahulu.
+    registered_on: Didaftar pada %{date}
diff --git a/config/locales/nl.yml b/config/locales/nl.yml
index 6b6f33c16..65f4a27fd 100644
--- a/config/locales/nl.yml
+++ b/config/locales/nl.yml
@@ -373,6 +373,8 @@ nl:
       add_new: Federatie met domein goedkeuren
       created_msg: Federatie met domein is succesvol goedgekeurd
       destroyed_msg: Federatie met domein is afgekeurd
+      export: Exporteren
+      import: Importeren
       undo: Federatie met domein afkeuren
     domain_blocks:
       add_new: Nieuwe domeinblokkade toevoegen
@@ -382,15 +384,19 @@ nl:
       edit: Domeinblokkade bewerken
       existing_domain_block: Je hebt al strengere limieten opgelegd aan %{name}.
       existing_domain_block_html: Jij hebt al strengere beperkingen opgelegd aan %{name}, je moet het domein eerst <a href="%{unblock_url}">deblokkeren</a>.
+      export: Exporteren
+      import: Importeren
       new:
         create: Blokkade aanmaken
         hint: Een domeinblokkade voorkomt niet dat accountgegevens van dit domein aan de database worden toegevoegd, maar dat er met terugwerkende kracht en automatisch bepaalde moderatiemethoden op deze accounts worden toegepast.
         severity:
-          desc_html: "<strong>Negeren</strong> zorgt ervoor dat berichten van accounts van dit domein voor iedereen onzichtbaar zijn, behalve als een account wordt gevolgd. <strong>Opschorten</strong> zorgt ervoor dat alle berichten, media en profielgegevens van accounts van dit domein worden verwijderd. Gebruik <strong>Geen</strong> wanneer je alleen mediabestanden wilt weigeren."
+          desc_html: "<strong>Beperken</strong> zorgt ervoor dat berichten van accounts van dit domein voor iedereen onzichtbaar zijn, behalve als een account wordt gevolgd. <strong>Opschorten</strong> zorgt ervoor dat alle berichten, media en profielgegevens van accounts van dit domein worden verwijderd. Gebruik <strong>Geen</strong> wanneer je alleen mediabestanden wilt weigeren."
           noop: Geen
-          silence: Negeren
+          silence: Beperken
           suspend: Opschorten
         title: Nieuwe domeinblokkade
+      no_domain_block_selected: Er zijn geen domeinblokkades gewijzigd, omdat er niets werd geselecteerd
+      not_permitted: Je bent niet bevoegd om deze actie uit te voeren
       obfuscate: Domeinnaam verdoezelen
       obfuscate_hint: De domeinnaam gedeeltelijk verdoezelen wanneer de lijst met domeinblokkades wordt getoond
       private_comment: Privé-opmerking
@@ -422,6 +428,20 @@ nl:
       resolved_dns_records_hint_html: De domeinnaam slaat op de volgende MX-domeinen die uiteindelijk verantwoordelijk zijn voor het accepteren van e-mail. Het blokkeren van een MX-domein blokkeert aanmeldingen van elk e-mailadres dat hetzelfde MX-domein gebruikt, zelfs als de zichtbare domeinnaam anders is. <strong>Pas op dat u geen grote e-mailproviders blokkeert.</strong>
       resolved_through_html: Geblokkeerd via %{domain}
       title: Geblokkeerde e-maildomeinen
+    export_domain_allows:
+      new:
+        title: Toegestane domeinen importeren
+      no_file: Geen bestand geselecteerd
+    export_domain_blocks:
+      import:
+        description_html: Je staat op het punt een lijst met domeinblokkades te importeren. Controleer deze lijst zeer zorgvuldig, vooral als je deze lijst niet zelf hebt gemaakt.
+        existing_relationships_warning: Bestaande volgrelaties
+        private_comment_description_html: 'Om je te helpen bijhouden waar de geïmporteerde blokkades vandaan komen, worden de geïmporteerde blokkades met de volgende privé-opmerking aangemaakt: <q>%{comment}</q>'
+        private_comment_template: Geïmporteerd van %{source} op %{date}
+        title: Domeinblokkades importeren
+      new:
+        title: Domeinblokkades importeren
+      no_file: Geen bestand geselecteerd
     follow_recommendations:
       description_html: "<strong>Deze aanbevolen accounts helpen nieuwe gebruikers snel interessante inhoud</strong>te vinden. Wanneer een gebruiker niet met andere gebruikers genoeg interactie heeft gehad om gepersonaliseerde aanbevelingen te krijgen, worden in plaats daarvan deze accounts aanbevolen. Deze accounts worden dagelijks opnieuw berekend met behulp van accounts met het hoogste aantal recente interacties en het hoogste aantal lokale volgers in een bepaalde taal."
       language: Voor taal
@@ -608,6 +628,7 @@ nl:
         other: "%{count} gebruikers"
       categories:
         administration: Beheer
+        devops: DevOps
         invites: Uitnodigingen
         moderation: Moderatie
         special: Speciaal
@@ -658,6 +679,7 @@ nl:
         view_audit_log_description: Staat gebruikers toe om een geschiedenis van beheeracties op de server te bekijken
         view_dashboard: Dashboard bekijken
         view_dashboard_description: Geeft gebruikers toegang tot het dashboard en verschillende statistieken
+        view_devops: DevOps
         view_devops_description: Geeft gebruikers toegang tot de dashboards van Sidekiq en pgHero
       title: Rollen
     rules:
@@ -684,7 +706,7 @@ nl:
         title: Bewaartermijn berichten
       discovery:
         follow_recommendations: Aanbevolen accounts
-        preamble: Het tonen van interessante inhoud is van essentieel belang voor het aan boord halen van nieuwe gebruikers, die mogelijk niemand van Mastodon kennen. Bepaal hoe verschillende functies voor het ontdekken van gebruikers op jouw server werken.
+        preamble: Het tonen van interessante inhoud is van essentieel belang voor het aan boord halen van nieuwe gebruikers, die mogelijk niemand van Mastodon kennen. Bepaal hoe verschillende functies voor het ontdekken van inhoud en gebruikers op jouw server werken.
         profile_directory: Gebruikersgids
         public_timelines: Openbare tijdlijnen
         title: Ontdekken
@@ -912,7 +934,7 @@ nl:
     warning: Wees voorzichtig met deze gegevens. Deel het nooit met iemand anders!
     your_token: Jouw toegangscode
   auth:
-    apply_for_account: Zet jezelf op de wachtlijst
+    apply_for_account: Account aanvragen
     change_password: Wachtwoord
     delete_account: Account verwijderen
     delete_account_html: Wanneer je jouw account graag wilt verwijderen, kun je dat <a href="%{path}">hier doen</a>. We vragen jou daar om een bevestiging.
@@ -1157,6 +1179,7 @@ nl:
     invalid_markup: 'bevat ongeldige HTML-opmaak: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Ongeldig CSV-bestand. Fout: %{error}'
       over_rows_processing_limit: bevat meer dan %{count} rijen
     modes:
       merge: Samenvoegen
@@ -1371,7 +1394,7 @@ nl:
     browser: Webbrowser
     browsers:
       alipay: Alipay
-      blackberry: Blackberry
+      blackberry: BlackBerry
       chrome: Chrome
       edge: Microsoft Edge
       electron: Electron
@@ -1385,7 +1408,7 @@ nl:
       phantom_js: PhantomJS
       qq: QQ Browser
       safari: Safari
-      uc_browser: QQ Browser
+      uc_browser: UC Browser
       weibo: Weibo
     current_session: Huidige sessie
     description: "%{browser} op %{platform}"
@@ -1394,7 +1417,7 @@ nl:
     platforms:
       adobe_air: Adobe Air
       android: Android
-      blackberry: Blackberry
+      blackberry: BlackBerry
       chrome_os: ChromeOS
       firefox_os: Firefox OS
       ios: iOS
diff --git a/config/locales/nn.yml b/config/locales/nn.yml
index 4f07c685e..9155950bb 100644
--- a/config/locales/nn.yml
+++ b/config/locales/nn.yml
@@ -134,8 +134,8 @@ nn:
       security_measures:
         only_password: Kun passord
         password_and_2fa: Passord og 2FA
-      sensitive: Tving sensitiv
-      sensitized: Avmerka som følsom
+      sensitive: Tving ømtolig
+      sensitized: Merka som ømtolig
       shared_inbox_url: Delt Innboks URL
       show:
         created_reports: Rapportar frå denne kontoen
@@ -153,12 +153,12 @@ nn:
       unblock_email: Avblokker e-postadresse
       unblocked_email_msg: Avblokkerte %{username} si e-postadresse
       unconfirmed_email: E-post utan stadfesting
-      undo_sensitized: Gjør om tving sensitiv
+      undo_sensitized: Angr tving ømtolig
       undo_silenced: Angr målbinding
       undo_suspension: Angr utvising
       unsilenced_msg: Opphevde vellykket begrensningen av %{username} sin konto
       unsubscribe: Avmeld
-      unsuspended_msg: Opphevde vellykket suspenderingen av %{username} sin konto
+      unsuspended_msg: Oppheving av utvisinga av %{username} sin konto var vellykka
       username: Brukarnamn
       view_domain: Vis sammendrag for domenet
       warn: Åtvar
@@ -210,12 +210,12 @@ nn:
         resend_user: Send stadfestings-epost på ny
         reset_password_user: Tilbakestill passord
         resolve_report: Løs rapport
-        sensitive_account: Tvangsfølsom konto
+        sensitive_account: Tving ømtolig konto
         silence_account: Demp konto
         suspend_account: Suspender kontoen
         unassigned_report: Fjern tilordna rapport
         unblock_email_account: Avblokker e-postadresse
-        unsensitive_account: Angre tvangsfølsom konto
+        unsensitive_account: Angr tving ømtolig konto
         unsilence_account: Angre avgrensing av konto
         unsuspend_account: Opphev suspensjonen av kontoen
         update_announcement: Oppdater kunngjøringen
@@ -269,13 +269,14 @@ nn:
         resend_user_html: "%{name} sendte bekreftelsesepost for %{target} på nytt"
         reset_password_user_html: "%{name} tilbakestilte passordet for brukaren %{target}"
         resolve_report_html: "%{name} løyste ein rapport %{target}"
-        sensitive_account_html: "%{name} markerte %{target} sitt media som sensitivt"
+        sensitive_account_html: "%{name} markerte %{target} sitt media som ømtolig"
         silence_account_html: "%{name} begrensa %{target} sin konto"
         suspend_account_html: "%{name} utviste %{target} sin konto"
         unassigned_report_html: "%{name} løyste ein rapport %{target}"
         unblock_email_account_html: "%{name} avblokkerte %{target} si e-postadresse"
-        unsensitive_account_html: "%{name} avmarkerte %{target} sitt media som sensitivt"
-        unsilence_account_html: "%{name} fjernet begrensningen av %{target}s konto"
+        unsensitive_account_html: "%{name} avmarkerte %{target} sitt media som ømtolig"
+        unsilence_account_html: "%{name} fjerna grensa på kontoen til %{target}"
+        unsuspend_account_html: "%{name} oppheva utvisinga av %{target} sin konto"
         update_announcement_html: "%{name} oppdaterte kunngjeringa %{target}"
         update_custom_emoji_html: "%{name} oppdaterte emojien %{target}"
         update_domain_block_html: "%{name} oppdaterte domeneblokkeringa for %{target}"
@@ -366,6 +367,8 @@ nn:
       add_new: Kvitlist domene
       created_msg: Domene er vorte kvitlista
       destroyed_msg: Domene er fjerna frå kvitlista
+      export: Eksporter
+      import: Importer
       undo: Fjern frå kvitliste
     domain_blocks:
       add_new: Lag ny
@@ -375,15 +378,19 @@ nn:
       edit: Rediger domeneblokkering
       existing_domain_block: Du har allerede pålagt strengere begrensninger på %{name}.
       existing_domain_block_html: Du har allerede pålagt strengere begrensninger på %{name}, du kan være nødt til <a href="%{unblock_url}">oppheve blokkeringen av den</a> først.
+      export: Eksporter
+      import: Importer
       new:
         create: Lag blokkering
         hint: Domeneblokkeringen vil ikke hindre opprettelse av kontooppføringer i databasen, men vil retroaktivt og automatisk benytte spesifikke moderasjonsmetoder på de kontoene.
         severity:
-          desc_html: "<strong>Målbind</strong> gjør kontoens poster usynlige for alle som ikke følger den. <strong>Utvis</strong> fjerner alt innhold, media og profildata fra kontoen. Bruk <strong>Ingen</strong> hvis du bare vil fjerne mediafiler."
+          desc_html: "<strong>Målbind</strong> gjer kontoen sine postear usynlege for alle som ikkje følger den. <strong>Utvis</strong> fjernar alt innhald, media og profildata frå kontoen. Bruk <strong>Ingen</strong> viss du berre vil fjerne mediafiler."
           noop: Ingen
-          silence: Togn
+          silence: Målbind
           suspend: Utvis
         title: Ny domeneblokkering
+      no_domain_block_selected: Ingen domeneblokkeringar vart endra sidan ingen var valde
+      not_permitted: Du har ikkje løyve til å utføra denne handlinga
       obfuscate: Obfuskere domenenavn
       obfuscate_hint: Skjul deler av domenenavnet i listen hvis annonsering av listen over domenebegrensninger er slått på
       private_comment: Privat kommentar
@@ -413,17 +420,34 @@ nn:
         title: Ny blokkeringsoppføring av e-postdomene
       resolved_through_html: Løyst gjennom %{domain}
       title: Blokkerte e-postadresser
+    export_domain_allows:
+      new:
+        title: Importer domenetillatingar
+      no_file: Inga fil vald
+    export_domain_blocks:
+      import:
+        description_html: Du skal til å importera ei liste over domeneblokkeringar. Gjer vel og sjå nøye gjennom lista, særleg om du ikkje har laga ho sjølv.
+        existing_relationships_warning: Noverande fylgjeforhold
+        private_comment_description_html: 'For å hjelpa deg med å halda oversikt over kvar importerte blokkeringar kjem frå, vil dei bli oppretta med fylgjande private kommentar: <q>%{comment}</q>'
+        private_comment_template: Importert frå %{source} den %{date}
+        title: Importer domeneblokkeringar
+      new:
+        title: Importer domeneblokkeringar
+      no_file: Inga fil vald
     follow_recommendations:
-      description_html: "<strong>Følg anbefalinger hjelper nye brukere med å finne interessant innhold</strong>. Når en bruker ikke har kommunisert med andre nok til å danne personlig tilpassede følger anbefalinger, anbefales disse kontoene i stedet. De beregnes daglig på nytt fra en blanding av kontoer der de høyeste engasjementene er og med høyest lokal tilhenger for et gitt språk."
+      description_html: "<strong>Følgjeforslag hjelper nye brukarar å raskt finna interessant innhald</strong>. Om ein brukar ikkje har interagera nok med andre til å danne personlege følgjeforslag, vert disse kontiane føreslått i staden. Dei vert gjenkalkulert på dagleg basis ut frå ei blanding av dei konti med flest nylege engasjement og flest lokale følgjarar for eit gitt språk."
       language: For språk
       status: Status
-      suppress: Undertrykk anbefalte følger
+      suppress: Demp følgjeforslag
       suppressed: Dempa
-      title: Følg gjerne desse
-      unsuppress: Gjenopprett følg-anbefaling
+      title: Følgjeforslag
+      unsuppress: Tilbakestill følgjeforslag
     instances:
       availability:
         failure_threshold_reached: Feilterskelen ble nådd %{date}.
+        failures_recorded:
+          one: Mislykkede forsøk på %{count} dag.
+          other: Mislykkede forsøk på %{count} ulike dager.
         no_failures_recorded: Ingen feil registrert.
         title: Tilgjenge
         warning: Det siste forsøket på å koble til denne serveren lyktes ikke
@@ -431,11 +455,15 @@ nn:
       back_to_limited: Begrenset
       back_to_warning: Advarsel
       by_domain: Domene
+      confirm_purge: Er du sikker på at du vil slette data permanent fra dette domenet?
       content_policies:
         comment: Internt notat
+        description_html: Du kan definere innholdsregler som vil bli brukt på alle kontoer fra dette domenet og hvilket som helst av underdomenene.
         policies:
           reject_media: Avvis media
+          reject_reports: Avvis rapporter
           silence: Begrens
+          suspend: Suspender
         reason: Offentlig årsak
         title: Retningslinjer for innhold
       dashboard:
@@ -516,19 +544,25 @@ nn:
         notes:
           one: "%{count} notis"
           other: "%{count} notiser"
+      action_log: Tilsynslogg
       action_taken_by: Handling gjort av
       actions:
+        delete_description_html: De rapporterte innleggene vil bli slettet, og en advarsel vil bli tatt vare på for å hjelpe deg eskalere ved fremtidige overtredelser fra samme konto.
+        mark_as_sensitive_description_html: Mediene i dei rapporterte innlegga vil verte markerte som ømtolege, og ein merknad vil verte lagra for å hjelpe deg å eskalera ved framtidige regelbrot frå same konto.
+        resolve_description_html: Ingen handling utføres mot den rapporterte kontoen, ingen advarsel gis, og rapporten lukkes.
         silence_description_html: Profilen vil kun være synlig for dem som allerede følger den eller manuelt slår den opp, noe som sterkt begrenser dens rekkevidde. Kan alltid tilbakestilles.
       are_you_sure: Er du sikker?
       assign_to_self: Tilegn til meg
       assigned: Tilsett moderator
       by_target_domain: Domenet av rapportert bruker
+      category: Kategori
       comment:
         none: Ingen
       created_at: Rapportert
       forwarded: Videresendt
       forwarded_to: Videresendt til %{domain}
       mark_as_resolved: Merk som løyst
+      mark_as_sensitive: Marker som ømtolig
       mark_as_unresolved: Merk som uløyst
       notes:
         create: Sett inn merknad
@@ -543,6 +577,7 @@ nn:
       resolved: Oppløyst
       resolved_msg: Rapporten er løyst!
       status: Status
+      statuses: Rapportert innhold
       target_origin: Opprinnelse for innrapportert konto
       title: Rapportar
       unassign: Avset
@@ -552,22 +587,52 @@ nn:
     roles:
       add_new: Legg til rolle
       assigned_users:
-        one: "%{count} bruker"
-        other: "%{count} brukere"
+        one: "%{count} brukar"
+        other: "%{count} brukarar"
       categories:
         administration: Administrasjon
         devops: DevOps
-        invites: Invitasjoner
+        invites: Innbydingar
+      delete: Slett
+      description_html: Med <strong>brukarrollar</strong> kan du kontrollera kva funksjonar og område av Mastodon brukarane dine har tilgong til.
+      edit: Endr rollen '%{name}'
+      everyone: Standard-tillatelser
+      everyone_full_description_html: Dette er <strong>grunnrollen</strong> som påverkar <strong>alle brukarar</strong>, jamvel dei utan ei tilsett rolle. Alle andre rollar arvar tillatingar frå denne.
+      permissions_count:
+        one: "%{count} tillatelse"
+        other: "%{count} tillatelser"
       privileges:
+        administrator: Administrator
+        administrator_description: Brukere med denne tillatelsen omgår enhver tillatelse
+        delete_user_data: Slett brukerdata
+        delete_user_data_description: Lar brukere slette andre brukeres data uten forsinkelse
+        invite_users: Innby brukarar
+        invite_users_description: Tillet at brukarar innbyr nye folk til tenaren
+        manage_invites: Handsam innbydingar
+        manage_invites_description: Tillet at brukarar blar gjennom og deaktiverer innbydingslenkjer
+        manage_roles: Handsam roller
+        manage_roles_description: Tillet at brukarar handsamar og tilset rollar under deira eiga
+        view_dashboard: Vis dashbord
+        view_dashboard_description: Gir brukere tilgang til dashbordet og ulike metrikker
         view_devops: DevOps
+        view_devops_description: Gir brukere tilgang til Sidekiq og pgHero-dashbord
+      title: Rollar
     rules:
-      add_new: Legg til et filter
+      add_new: Legg til regel
       delete: Slett
       description_html: Mens de fleste hevder å ha lest og samtykket i tjenestevilkårene, leser de vanligvis ikke gjennom før etter et problem oppstår. <strong>Gjør det enklere å se serverens regler på et øyeblikk ved å gi dem i en flat kulepunktsliste.</strong> Prøv å holde individuelle regler korte og enkelt, men prøv å ikke dele dem opp i mange separate elementer heller.
       edit: Rediger regel
       empty: Ingen serverregler har blitt definert ennå.
       title: Server regler
     settings:
+      about:
+        title: Om
+      appearance:
+        title: Utsjånad
+      discovery:
+        follow_recommendations: Følgjeforslag
+        preamble: Å framheva interessant innhald er vitalt i mottakinga av nye brukarar som ikkje nødvendigvis kjenner nokon på Mastodon. Kontroller korleis oppdagingsfunksjonane på tenaren din fungerar.
+        trends: Trender
       domain_blocks:
         all: Til alle
         disabled: Til ingen
@@ -577,38 +642,87 @@ nn:
           approved: Godkjenning kreves for påmelding
           none: Ingen kan melda seg inn
           open: Kven som helst kan melda seg inn
+      title: Serverinnstillinger
     site_uploads:
       delete: Slett opplasta fil
       destroyed_msg: Vellukka sletting av sideopplasting!
     statuses:
+      account: Forfatter
+      application: Applikasjon
       back_to_account: Tilbake til kontosida
+      batch:
+        remove_from_report: Fjern fra rapport
       deleted: Sletta
+      history: Versjonshistorikk
+      language: Språk
       media:
         title: Media
+      metadata: Metadata
       no_status_selected: Ingen statusar vart endra sidan ingen vart valde
+      original_status: Opprinnelig innlegg
+      status_changed: Innlegg endret
       title: Kontostatusar
+      visibility: Synlighet
       with_media: Med media
     strikes:
       actions:
+        delete_statuses: "%{name} slettet %{target}s innlegg"
+        disable: "%{name} frøs %{target}s konto"
+        mark_statuses_as_sensitive: "%{name} markerte %{target} sine innlegg som ømtålige"
+        none: "%{name} sendte en advarsel til %{target}"
+        sensitive: "%{name} markerte %{target} sin konto som ømtolig"
         silence: "%{name} begrenset %{target}s konto"
+        suspend: "%{name} utviste %{target} sin konto"
+      appeal_approved: Klage tatt til følge
+      appeal_pending: Klage behandles
     system_checks:
       database_schema_check:
         message_html: Det venter på databaseoverføringer. Vennligst kjør disse for å sikre at applikasjonen oppfører seg som forventet
+      elasticsearch_running_check:
+        message_html: Kunne ikke koble til Elasticsearch. Kontroller at den kjører, eller deaktiver fulltekstsøk
+      elasticsearch_version_check:
+        message_html: 'Inkompatibel Elasticsearch-versjon: %{value}'
+        version_comparison: Elasticsearch %{running_version} kjører mens %{required_version} er påkrevd
       rules_check:
         action: Behandle serverregler
         message_html: Du har ikke definert noen serverregler.
+      sidekiq_process_check:
+        message_html: Ingen Sidekiq-prosess kjører for %{value} køen(e). Vennligst se gjennom Sidekiq-konfigurasjonen din
     tags:
       review: Sjå gjennom status
       updated_msg: Emneknagginnstillingane er oppdaterte
     title: Leiing
+    trends:
+      allow: Tillat
+      approved: Godkjent
+      disallow: Ikke tillat
+      links:
+        allow: Tillat lenke
+        disallow: Ikke tillat lenke
+        no_link_selected: Ingen lenker ble endret da ingen var valgt
+        shared_by_over_week:
+          one: Delt av %{count} person i løpet av den siste uken
+          other: Delt av %{count} personer i løpet av den siste uken
+        usage_comparison: Delt %{today} ganger i dag, sammenlignet med %{yesterday} i går
+      pending_review: Avventer gjennomgang
+      rejected: Avvist
+      statuses:
+        allow: Tillat innlegg
+        allow_account: Tillat forfatter
+        disallow: Ikke tillat innlegg
     warning_presets:
       add_new: Legg til ny
       delete: Slett
       edit_preset: Endr åtvaringsoppsett
       title: Handsam åtvaringsoppsett
+    webhooks:
+      add_new: Legg til endepunkt
+      status: Status
   admin_mailer:
     new_appeal:
       actions:
+        mark_statuses_as_sensitive: å merke innleggene sine som følsomme
+        sensitive: å merke kontoen sin som følsom
         silence: for å begrense deres konto
     new_pending_account:
       body: Detaljer om den nye kontoen er nedenfor. Du kan godkjenne eller avvise denne søknaden.
@@ -626,14 +740,14 @@ nn:
     remove: Fjern aliaslenking
   appearance:
     advanced_web_interface: Avansert nettgrensesnitt
-    advanced_web_interface_hint: 'Hvis du ønsker å bruke hele skjermbredden din, lar det avanserte nettgrensesnittet deg sette opp mange forskjellige kolonner for å se så mye informasjon på én gang som du vil: Hjem, varslinger, fellestidslinjen, og ethvert antall lister og emneknagger.'
-    animations_and_accessibility: Animasjoner og tilgjengelighet
+    advanced_web_interface_hint: 'Om du vil bruke heile skjermbreidda di, let det avanserte nettgrensesnittet deg setje opp mange ulike kolonnar for å sjå så mykje informasjon du vil på ein gong: Heim, varsel, samla tidslinje, og kva som helst antall lister og emneknaggar.'
+    animations_and_accessibility: Animasjonar og tilgjengelegheit
     confirmation_dialogs: Bekreftelsesdialoger
     discovery: Oppdaging
     localization:
       body: Mastodon er oversatt av frivillige.
       guide_link_text: Alle kan bidra.
-    sensitive_content: Sensitivt innhold
+    sensitive_content: Ømtolig innhald
     toot_layout: Tutoppsett
   application_mailer:
     notification_preferences: Endr e-post-innstillingane
@@ -650,6 +764,7 @@ nn:
     warning: Ver varsam med dette datumet. Aldri del det med nokon!
     your_token: Tilgangsnykelen din
   auth:
+    apply_for_account: Søk om ein konto
     change_password: Passord
     delete_account: Slett konto
     delete_account_html: Om du vil sletta kontoen din, kan du <a href="%{path}">gå hit</a>. Du vert spurd etter stadfesting.
@@ -663,11 +778,13 @@ nn:
     invalid_reset_password_token: Tilgangsnykelen er ugyldig eller utgått. Ver venleg å beda om ein ny ein.
     link_to_otp: Skriv inn en 2-trinnskode fra din 2-trinnspåloggingsenhet eller en gjenopprettingskode
     link_to_webauth: Bruk sikkerhetsnøkkel-enheten din
+    log_in_with: Logg inn med
     login: Innlogging
     logout: Logg ut
     migrate_account: Flytt til ein annan konto
     migrate_account_html: Hvis du ønsker å henvise denne kontoen til en annen, kan du <a href="%{path}">konfigurere det her</a>.
     or_log_in_with: Eller logg inn med
+    privacy_policy_agreement_html: Jeg har lest og godtar <a href="%{privacy_policy_path}" target="_blank">retningslinjer for personvern</a>
     providers:
       cas: CAS
       saml: SAML
@@ -675,18 +792,26 @@ nn:
     registration_closed: "%{instance} tek ikkje imot nye medlemmar"
     resend_confirmation: Send stadfestingsinstruksjonar på nytt
     reset_password: Attstill passord
+    rules:
+      preamble: Disse angis og håndheves av %{domain}-moderatorene.
+      title: Noen grunnregler.
     security: Tryggleik
     set_new_password: Lag nytt passord
     setup:
       email_below_hint_html: Om e-posten nedfor ikkje er rett, kan du endra han her og få ein ny stadfestings-e-post.
       email_settings_hint_html: Stadfestings-e-posten vart send til %{email}. Om den e-postadressa ikkje er rett, kan du byta adresse i kontoinnstillingane.
       title: Oppsett
+    sign_up:
+      preamble: Med en konto på denne Mastodon-tjeneren vil du kunne følge andre personer på nettverket, uansett hvor kontoen deres holder til.
+      title: La oss få deg satt i gang på %{domain}.
     status:
       account_status: Kontostatus
       confirming: Ventar på stadfesting av e-post.
+      functional: Kontoen din er fullt operativt.
       pending: Søknaden din ventar på gjennomgang frå personalet vårt. Dette kan taka litt tid. Du får ein e-post om søknaden din vert godkjend.
       redirecting_to: Kontoen din er inaktiv fordi den for øyeblikket omdirigerer til %{acct}.
       view_strikes: Vis tidligere advarsler mot kontoen din
+    too_fast: Skjemaet ble sendt inn for raskt, prøv på nytt.
     use_security_key: Bruk sikkerhetsnøkkel
   authorize_follow:
     already_following: Du fylgjer allereie denne kontoen
@@ -709,6 +834,10 @@ nn:
     errors:
       invalid_key: er ikkje ein gild Ed25519 eller Curve25519 nykel
       invalid_signature: er ikkje ein gild Ed25519-signatur
+  date:
+    formats:
+      default: "%d. %b, %Y"
+      with_month_name: "%d. %B, %Y"
   datetime:
     distance_in_words:
       about_x_hours: "%{count}t"
@@ -742,9 +871,34 @@ nn:
       username_unavailable: Brukarnamnet ditt kjem til å halda seg utilgjengeleg
   disputes:
     strikes:
-      appeal_approved: Denne advarselen ble anket og er ikke lenger gyldig
+      action_taken: Handling utført
+      appeal: Klage
+      appeal_approved: Denne advarselens klage ble tatt til følge og er ikke lenger gyldig
+      appeal_rejected: Klagen ble avvist
+      appeal_submitted_at: Klage levert
+      appealed_msg: Din klage har blitt levert. Du får beskjed om den blir godkjent.
+      appeals:
+        submit: Lever klage
+      approve_appeal: Godkjenn klage
+      associated_report: Tilhørende rapport
+      created_at: Datert
+      description_html: Dette er tiltakene mot din konto og advarsler som har blitt sent til deg av %{instance}-personalet.
+      recipient: Adressert til
+      reject_appeal: Avvis klage
+      status: 'Innlegg #%{id}'
+      status_removed: Innlegg allerede fjernet fra systemet
+      title: "%{action} fra %{date}"
       title_actions:
+        delete_statuses: Fjerning av innlegg
+        disable: Frysing av konto
+        mark_statuses_as_sensitive: Markering av innlegg som ømtolige
+        none: Advarsel
+        sensitive: Markering av konto som ømtolig
         silence: Begrensning av konto
+        suspend: Suspensjon av konto
+      your_appeal_approved: Din klage har blitt godkjent
+      your_appeal_pending: Du har levert en klage
+      your_appeal_rejected: Din klage har blitt avvist
   domain_validator:
     invalid_domain: er ikkje eit gangbart domenenamn
   errors:
@@ -756,7 +910,7 @@ nn:
     '422':
       content: Sikkerhetsverifisering feilet. Blokkerer du informasjonskapsler?
       title: Sikkerhetsverifisering feilet
-    '429': Overfyllt
+    '429': For mange forespørsler
     '500':
       content: Orsak. Vi har gjort noko feil.
       title: Denne sida er ikkje rett
@@ -793,6 +947,8 @@ nn:
       public: Offentlege tidsliner
       thread: Samtalar
     edit:
+      add_keyword: Legg til stikkord
+      statuses: Individuelle innlegg
       title: Endr filter
     errors:
       invalid_context: Ingen eller ugild kontekst gjeve
@@ -819,6 +975,7 @@ nn:
     invalid_markup: 'rommar ugild HTML-kode: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Ugyldig CSV-fil. Feil: %{error}'
       over_rows_processing_limit: inneholder flere enn %{count} rader
     modes:
       merge: Set saman
@@ -845,12 +1002,12 @@ nn:
       '86400': 1 dag
     expires_in_prompt: Aldri
     generate: Lag innbydingslenkje
-    invited_by: 'Du vart invitert av:'
+    invited_by: 'Du vart innboden av:'
     max_uses:
       one: 1 bruk
       other: "%{count} bruk"
     max_uses_prompt: Inga grense
-    prompt: Generer og del lenker med andre for å gi tilgang til denne instansen
+    prompt: Generer og del lenkjer med andre for å gje tilgong til denne tenaren
     table:
       expires_at: Vert ugyldig
       uses: Bruk
@@ -860,11 +1017,18 @@ nn:
       limit: Du har nådd grensa for kor mange lister du kan ha
   login_activities:
     authentication_methods:
+      otp: to-faktor autentiseringsapp
       password: passord
+      webauthn: sikkerhetsnøkler
+    description_html: Hvis du ser aktivitet som du ikke gjenkjenner, bør du vurdere å endre passordet ditt og aktivere to-trinnsinnlogging.
+    empty: Ingen innloggingshistorikk er tilgjengelig
+    failed_sign_in_html: Mislykket innloggingsforsøk med %{method} fra %{ip} (%{browser})
+    successful_sign_in_html: Vellykket innlogging med %{method} fra %{ip} (%{browser})
     title: Autentiseringshistorikk
   media_attachments:
     validations:
       images_and_video: Kan ikkje leggja ved video til status som allereie inneheld bilete
+      not_ready: Kan ikke legge til filer som ikke er ferdigbehandlet. Prøv igjen om et øyeblikk!
       too_many: Kan ikkje leggja til meir enn 4 filer
   migrations:
     acct: Flytta til
@@ -904,6 +1068,11 @@ nn:
     carry_mutes_over_text: Denne brukeren flyttet fra %{acct}, som du hadde dempet.
     copy_account_note_text: 'Denne brukeren flyttet fra %{acct}, her var dine tidligere notater om dem:'
   notification_mailer:
+    admin:
+      report:
+        subject: "%{name} leverte en rapport"
+      sign_up:
+        subject: "%{name} registrerte seg"
     favourite:
       body: 'Statusen din vart merkt som favoritt av %{name}:'
       subject: "%{name} merkte statusen din som favoritt"
@@ -928,6 +1097,8 @@ nn:
       title: Ny framheving
     status:
       subject: "%{name} postet nettopp"
+    update:
+      subject: "%{name} redigerte et innlegg"
   notifications:
     email_events: E-postvarslinger for hendelser
     email_events_hint: 'Velg hendelser som du vil motta varslinger for:'
@@ -971,6 +1142,8 @@ nn:
     other: Anna
     posting_defaults: Innleggsstandarder
     public_timelines: Offentlege tidsliner
+  privacy_policy:
+    title: Retningslinjer for personvern
   reactions:
     errors:
       limit_reached: Grensen for forskjellige reaksjoner nådd
@@ -981,7 +1154,7 @@ nn:
     follow_selected_followers: Følg valgte tilhengere
     followers: Følgere
     following: Følginger
-    invited: Invitert
+    invited: Innboden
     last_active: Sist aktiv
     most_recent: Sist
     moved: Flytta
@@ -994,6 +1167,9 @@ nn:
     status: Kontostatus
   remote_follow:
     missing_resource: Kunne ikke finne URLen for din konto
+  reports:
+    errors:
+      invalid_rules: refererer ikke til gyldige regler
   rss:
     descriptions:
       account: Offentlige innlegg fra @%{acct}
@@ -1078,6 +1254,7 @@ nn:
         other: "%{count} bilete"
     boosted_from_html: Framheva av %{acct_link}
     content_warning: 'Innhaldsåtvaring: %{warning}'
+    default_language: Samme språk som brukergrensesnittet
     disallowed_hashtags:
       one: 'inneheldt ein emneknagg som ikkje var tillaten: %{tags}'
       other: 'inneheldt emneknaggen som ikkje var tillaten: %{tags}'
@@ -1114,6 +1291,15 @@ nn:
     enabled: Slett gamle innlegg automatisk
     enabled_hint: Sletter innleggene dine automatisk når de oppnår en angitt alder, med mindre de samsvarer med ett av unntakene nedenfor
     exceptions: Unntak
+    explanation: Siden sletting av innlegg er en krevende operasjon, blir dette gjort sakte over tid når tjeneren ellers ikke er opptatt. Av denne grunn kan det hende at innleggene dine slettes først en stund etter at de har nådd aldersgrensen.
+    ignore_favs: Ignorer favoritter
+    ignore_reblogs: Ignorer fremhevinger
+    interaction_exceptions: Unntak basert på interaksjoner
+    interaction_exceptions_explanation: Merk at det ikke er noen garanti for at innlegg blir slettet hvis de går under favoritt- eller fremhevelsesgrensen etter å ha gått over dem en gang.
+    keep_direct: Behold direktemeldinger
+    keep_direct_hint: Sletter ingen av direktemeldingene dine
+    keep_media: Behold innlegg med mediavedlegg
+    keep_media_hint: Sletter ikke dine egne innlegg som har mediavedlegg
     keep_pinned: Behald festa innlegg
     keep_pinned_hint: Sletter ingen av dine festa innlegg
     keep_polls: Behald røystingar
@@ -1132,11 +1318,14 @@ nn:
       '63113904': 2 år
       '7889238': 3 månader
     min_age_label: Aldersterskel
+    min_favs: Behold innlegg som er favorittmarkert av minst
     min_favs_hint: Sletter ingen av dine innlegg som har mottatt minst dette antalet favorittmerkingar. Lat vere blank for å slette innlegg uavhengig av antal favorittmerkingar
+    min_reblogs: Behold innlegg fremhevet av minst
+    min_reblogs_hint: Sletter ikke noen av dine innlegg som har blitt fremhevet minst dette antall ganger. La stå tom for å slette innlegg uavhengig av antall fremhevinger
   stream_entries:
     pinned: Festa tut
     reblogged: framheva
-    sensitive_content: Følsomt innhold
+    sensitive_content: Ømtolig innhald
   strikes:
     errors:
       too_late: Det er for seint å klage på denne prikken
@@ -1170,12 +1359,16 @@ nn:
     appeal_approved:
       action: Gå til din konto
       explanation: Apellen på prikken mot din kontor på %{strike_date} som du la inn på %{appeal_date} har blitt godkjend. Din konto er nok ein gong i god stand.
+      subject: Din klage fra %{date} er godkjent
       title: Anke godkjend
     appeal_rejected:
+      explanation: Klagen på advarselen mot din konto den %{strike_date} som du sendte inn den %{appeal_date} har blitt avvist.
+      subject: Din klage fra %{date} er avvist
       title: Anke avvist
     backup_ready:
       explanation: Du ba om en fullstendig sikkerhetskopi av Mastodon-kontoen din. Den er nå klar for nedlasting!
       subject: Arkivet ditt er klart til å lastes ned
+      title: Nedlasting av arkiv
     suspicious_sign_in:
       change_password: endre passord
       details: 'Her er påloggingsdetaljane:'
@@ -1192,7 +1385,8 @@ nn:
       explanation:
         delete_statuses: Nokre av innlegga dine er bryt éin eller fleire retningslinjer, og har så blitt fjerna av moderatorene på %{instance}.
         disable: Du kan ikkje lenger bruke kontoen, men profilen din og andre data er intakt. Du kan be om ein sikkerhetskopi av dine data, endre kontoinnstillingar eller slette din konto.
-        sensitive: Frå no av vil alle dine opplasta mediefiler bli markert som sensitive og skjult bak ei klikk-åtvaring.
+        mark_statuses_as_sensitive: Nokre av innlegga dine har vorte markerte som ømtolige av moderatorane ved %{instance}. Dette tyder at folk må trykkje på mediane i innlegga for å førehandsvise dei. Du kan markera media som ømtolig sjølv når du legg ut nye innlegg.
+        sensitive: Frå no av vil alle dine opplasta mediefiler bli markert som ømtolig og skjult bak ei klikk-åtvaring.
         silence: Medan kontoen din er avgrensa, vil berre folk som allereie fylgjer deg sjå dine tutar på denne tenaren, og du kan bli ekskludert fra diverse offentlige oppføringer. Andre kan framleis fylgje deg manuelt.
         suspend: Du kan ikkje lenger bruke kontoen din, og profilen og andre data er ikkje lenger tilgjengelege. Du kan framleis logge inn for å be om ein sikkerheitskopi av data før dei blir fullstendig sletta om omtrent 30 dagar, men vi beheld nokre grunnleggjande data for å forhindre deg å omgå suspenderinga.
       reason: 'Årsak:'
@@ -1200,17 +1394,17 @@ nn:
       subject:
         delete_statuses: Dine innlegg på %{acct} har blitt fjernet
         disable: Kontoen din, %{acct}, har blitt fryst
-        mark_statuses_as_sensitive: Dine innlegg på %{acct} har blitt merket som sensitivt innhold
+        mark_statuses_as_sensitive: Dine innlegg frå %{acct} har vorte markerte som ømtolige
         none: Åtvaring for %{acct}
-        sensitive: Dine innlegg på %{acct} vil bli merket som sensitive fra nå
+        sensitive: Dine innlegg frå %{acct} vil verte markerte som ømtolige frå no av
         silence: Kontoen din, %{acct}, er vorten avgrensa
-        suspend: Kontoen din, %{acct}, er vorten utvist
+        suspend: Kontoen din, %{acct}, har vorte utvist
       title:
         delete_statuses: Innlegg fjernet
         disable: Konto frosen
-        mark_statuses_as_sensitive: Innlegg markert som sensitive
+        mark_statuses_as_sensitive: Innlegg markerte som ømtolige
         none: Åtvaring
-        sensitive: Konto markert som sensitiv
+        sensitive: Konto markert som ømtolig
         silence: Konto avgrensa
         suspend: Konto utvist
     welcome:
@@ -1218,6 +1412,7 @@ nn:
       edit_profile_step: Du kan tilpasse profilen din ved å laste opp et profilbilde, endre visningsnavnet ditt og mer. Du kan velge at nye følgere må godkjennes av deg før de får lov til å følge deg.
       explanation: Her er nokre tips for å koma i gang
       final_action: Kom i gang med å leggja ut
+      final_step: 'Skriv innlegg! Selv uten følgere kan dine offentlige innlegg bli sett av andre, for eksempel på den lokale tidslinjen og i emneknagger. Du kan introdusere deg selv ved å bruke emneknaggen #introduksjon.'
       full_handle: Det fulle brukarnamnet ditt
       full_handle_hint: Dette er det du fortel venene dine for at dei skal kunna senda deg meldingar eller fylgja deg frå ein annan tenar.
       subject: Velkomen til Mastodon
diff --git a/config/locales/no.yml b/config/locales/no.yml
index 7ce3d16d4..7013b6a1b 100644
--- a/config/locales/no.yml
+++ b/config/locales/no.yml
@@ -19,9 +19,9 @@
     pin_errors:
       following: Du må allerede følge personen du vil fremheve
     posts:
-      one: Tut
-      other: Tuter
-    posts_tab_heading: Tuter
+      one: Innlegg
+      other: Innlegg
+    posts_tab_heading: Innlegg
   admin:
     account_actions:
       action: Utfør handling
@@ -134,7 +134,7 @@
       security_measures:
         only_password: Bare passord
         password_and_2fa: Passord og 2FA
-      sensitive: Sensitiv
+      sensitive: Tving følsom
       sensitized: Merket som følsom
       shared_inbox_url: Delt Innboks URL
       show:
@@ -151,9 +151,9 @@
       suspension_reversible_hint_html: Kontoen har blitt suspendert, og dataene vil bli fullstendig fjernet den %{date}. Frem til da kan kontoen gjenopprettes uten negative effekter. Hvis du ønsker å fjerne alle kontoens data umiddelbart, kan du gjøre det nedenfor.
       title: Kontoer
       unblock_email: Avblokker e-postadresse
-      unblocked_email_msg: Fjernet blokkering av %{username} sin e-postadresse
+      unblocked_email_msg: Fjernet blokkering av %{username}s e-postadresse
       unconfirmed_email: Ubekreftet E-postadresse
-      undo_sensitized: Gjør om tving sensitiv
+      undo_sensitized: Angre tving følsom
       undo_silenced: Angre begrensning
       undo_suspension: Angre utvisning
       unsilenced_msg: Opphevde begrensningen av %{username}s konto
@@ -210,12 +210,12 @@
         resend_user: Send e-post med bekreftelse på nytt
         reset_password_user: Tilbakestill passord
         resolve_report: Løs rapport
-        sensitive_account: Tving sensitiv konto
+        sensitive_account: Tving følsom konto
         silence_account: Begrens konto
         suspend_account: Suspender kontoen
         unassigned_report: Fjern tilordnet rapport
         unblock_email_account: Fjern blokkering av e-postadresse
-        unsensitive_account: Angre tving sensitiv konto
+        unsensitive_account: Angre tving følsom konto
         unsilence_account: Angre begrensning av konto
         unsuspend_account: Opphev suspensjonen av kontoen
         update_announcement: Oppdater kunngjøringen
@@ -225,7 +225,9 @@
         update_status: Oppdater statusen
         update_user_role: Oppdater rolle
       actions:
+        approve_appeal_html: "%{name} godkjente klagen på modereringa fra %{target}"
         approve_user_html: "%{name} godkjente registrering fra %{target}"
+        assigned_to_self_report_html: "%{name} tildelte rapport %{target} til seg selv"
         change_email_user_html: "%{name} endret e-postadressen til brukeren %{target}"
         change_role_user_html: "%{name} endret rolle for %{target}"
         confirm_user_html: "%{name} bekreftet e-postadressen til brukeren %{target}"
@@ -237,15 +239,37 @@
         create_domain_block_html: "%{name} blokkert domene %{target}"
         create_email_domain_block_html: "%{name} blokkert e-post domene %{target}"
         create_ip_block_html: "%{name} opprettet regel for IP %{target}"
+        create_unavailable_domain_html: "%{name} stoppet levering til domenet %{target}"
         create_user_role_html: "%{name} opprettet rollen %{target}"
+        demote_user_html: "%{name} degraderte bruker %{target}"
         destroy_announcement_html: "%{name} slettet kunngjøring %{target}"
+        destroy_canonical_email_block_html: "%{name} fjernet blokkering av e-post med hash %{target}"
         destroy_custom_emoji_html: "%{name} slettet emoji %{target}"
+        destroy_domain_block_html: "%{name} fjernet blokkeringen av domenet %{target}"
+        destroy_email_domain_block_html: "%{name} fjernet blokkeringen av e-post-domenet %{target}"
         destroy_ip_block_html: "%{name} slettet regel for IP %{target}"
         destroy_status_html: "%{name} fjernet innlegget av %{target}"
+        destroy_unavailable_domain_html: "%{name} gjenopptok levering til domenet %{target}"
         destroy_user_role_html: "%{name} slettet %{target} -rolle"
+        disable_2fa_user_html: "%{name} deaktiverte tofaktor-autentiseringskravet for bruker %{target}"
+        disable_custom_emoji_html: "%{name} deaktiverte emoji %{target}"
+        disable_sign_in_token_auth_user_html: "%{name} deaktiverte autentisering med e-post-token for %{target}"
+        disable_user_html: "%{name} deaktiverte innlogging for bruker %{target}"
+        enable_custom_emoji_html: "%{name} aktiverte emoji %{target}"
+        enable_sign_in_token_auth_user_html: "%{name} aktiverte autentisering med e-post-token for %{target}"
+        enable_user_html: "%{name} aktiverte innlogging for bruker %{target}"
+        memorialize_account_html: "%{name} endret %{target}s konto til en minneside"
+        promote_user_html: "%{name} forfremmet bruker %{target}"
+        reject_appeal_html: "%{name} avviste moderasjonsavgjørelsesklagen fra %{target}"
         reject_user_html: "%{name} avslo registrering fra %{target}"
+        reopen_report_html: "%{name} gjenåpnet rapporten %{target}"
+        resend_user_html: "%{name} sendte e-postbekreftelse på nytt for %{target}"
         reset_password_user_html: "%{name} tilbakestille passordet for brukeren %{target}"
+        sensitive_account_html: "%{name} merket %{target}s innlegg som følsomt"
         silence_account_html: "%{name} begrenset %{target}s konto"
+        suspend_account_html: "%{name} suspenderte %{target}s konto"
+        unblock_email_account_html: "%{name} fjernet blokkering av %{target}s e-postadresse"
+        unsensitive_account_html: "%{name} fjernet følsomt-merket på %{target}s innlegg"
         unsilence_account_html: "%{name} fjernet begrensningen av %{target}s konto"
         update_custom_emoji_html: "%{name} oppdaterte emoji %{target}"
         update_ip_block_html: "%{name} endret regel for IP %{target}"
@@ -321,10 +345,16 @@
       top_languages: Mest aktive språk
       top_servers: Mest aktive servere
       website: Nettside
+    disputes:
+      appeals:
+        empty: Ingen klager funnet.
+        title: Klager
     domain_allows:
       add_new: Hvitelist domene
       created_msg: Domenet har blitt hvitelistet
       destroyed_msg: Domenet har blitt fjernet fra hvitelisten
+      export: Eksporter
+      import: Importer
       undo: Fjern fra hvitelisten
     domain_blocks:
       add_new: Lag ny
@@ -334,15 +364,19 @@
       edit: Rediger domeneblokkering
       existing_domain_block: Du har allerede pålagt strengere begrensninger på %{name}.
       existing_domain_block_html: Du har allerede pålagt strengere begrensninger på %{name}, du må <a href="%{unblock_url}">oppheve blokkeringen av den</a> først.
+      export: Eksporter
+      import: Importer
       new:
         create: Lag blokkering
         hint: Domeneblokkeringen vil ikke hindre opprettelse av kontooppføringer i databasen, men vil retroaktivt og automatisk benytte spesifikke moderasjonsmetoder på de kontoene.
         severity:
-          desc_html: "<strong>Målbind</strong> gjør kontoens poster usynlige for alle som ikke følger den. <strong>Utvis</strong> fjerner alt innhold, media og profildata fra kontoen. Bruk <strong>Ingen</strong> hvis du bare vil fjerne mediafiler."
+          desc_html: "<strong>Begrens</strong> gjør at innlegg fra kontoer på dette domenet blir usynlig for de som ikke følger dem. <strong>Suspender</strong> fjerner alt innhold, media og profildata for kontoer fra dette domenet. Bruk <strong>Ingen</strong> hvis du kun ønsker å avvise mediefiler."
           noop: Ingen
-          silence: Målbind
+          silence: Begrens
           suspend: Utvis
         title: Ny domeneblokkering
+      no_domain_block_selected: Ingen domeneblokkering ble endret, siden ingen var valgt
+      not_permitted: Du har ikke tillatelse til å utføre denne handlingen
       obfuscate: Obfuskere domenenavn
       obfuscate_hint: Skjul deler av domenenavnet i listen hvis annonsering av listen over domenebegrensninger er slått på
       private_comment: Privat kommentar
@@ -362,11 +396,28 @@
         other: "%{count} forsøk på å opprette konto i løpet av den siste uken"
       created_msg: E-postdomenet ble lagt til i blokkeringslisten uten problemer
       delete: Fjern
+      dns:
+        types:
+          mx: MX-post
       domain: Domene
       new:
         create: Legg til domene
         title: Ny blokkeringsoppføring av e-postdomene
       title: Blokkering av e-postdomene
+    export_domain_allows:
+      new:
+        title: Importer domenetillatelser
+      no_file: Ingen fil valgt
+    export_domain_blocks:
+      import:
+        description_html: Du er i ferd med å importere en liste med domeneblokkeringer. Se gjennom listen svært nøye, spesielt hvis du ikke har laget denne listen selv.
+        existing_relationships_warning: Nåværende følgeforhold
+        private_comment_description_html: 'For å hjelpe deg med å holde oversikt over hvor importerte blokkeringer kommer fra, vil de bli opprettet med følgende private kommentar: <q>%{comment}</q>'
+        private_comment_template: Importert fra %{source} den %{date}
+        title: Importer domeneblokkeringer
+      new:
+        title: Importer domeneblokkeringer
+      no_file: Ingen fil valgt
     follow_recommendations:
       description_html: "<strong>Følg anbefalinger hjelper nye brukere med å finne interessant innhold</strong>. Når en bruker ikke har kommunisert med andre nok til å danne personlig tilpassede følger anbefalinger, anbefales disse kontoene i stedet. De beregnes daglig på nytt fra en blanding av kontoer der de høyeste engasjementene er og med høyest lokal tilhenger for et gitt språk."
       language: For språk
@@ -378,6 +429,9 @@
     instances:
       availability:
         failure_threshold_reached: Feilterskelen ble nådd %{date}.
+        failures_recorded:
+          one: Mislykkede forsøk på %{count} dag.
+          other: Mislykkede forsøk på %{count} ulike dager.
         no_failures_recorded: Ingen feil registrert.
         title: Tilgjengelighet
         warning: Det siste forsøket på å koble til denne serveren lyktes ikke
@@ -385,11 +439,15 @@
       back_to_limited: Begrenset
       back_to_warning: Advarsel
       by_domain: Domene
+      confirm_purge: Er du sikker på at du vil slette data permanent fra dette domenet?
       content_policies:
         comment: Internt notat
+        description_html: Du kan definere innholdsregler som vil bli brukt på alle kontoer fra dette domenet og hvilket som helst av underdomenene.
         policies:
           reject_media: Avvis media
+          reject_reports: Avvis rapporter
           silence: Begrens
+          suspend: Suspender
         reason: Offentlig årsak
         title: Retningslinjer for innhold
       dashboard:
@@ -449,11 +507,11 @@
     relays:
       add_new: Legg til ny overgang
       delete: Slett
-      description_html: En <strong>federert overgang</strong> er en mellomleddsserver som utveksler store mengder av offentlige tuter mellom servere som abonnerer og publiserer til den. <strong>Det kan hjelpe små og mellomstore servere til å oppdage innhold fra strømiverset</strong>, noe som ellers ville ha krevd at lokale brukere manuelt fulgte andre personer på fjerne servere.
+      description_html: En <strong>federert overgang</strong> er en mellomleddsserver som utveksler store mengder av offentlige innlegg mellom servere som abonnerer og publiserer til den. <strong>Det kan hjelpe små og mellomstore servere til å oppdage innhold fra strømiverset</strong>, noe som ellers ville ha krevd at lokale brukere manuelt fulgte andre personer på fjerne servere.
       disable: Skru av
       disabled: Skrudd av
       enable: Skru på
-      enable_hint: Når dette har blitt skrudd på, vil tjeneren din abonnere på alle offentlige tuter fra denne overgangen, og vil begynne å sende denne tjenerens offentlige tuter til den.
+      enable_hint: Når dette har blitt skrudd på, vil tjeneren din abonnere på alle offentlige innlegg fra denne overgangen, og vil begynne å sende denne tjenerens offentlige innlegg til den.
       enabled: Skrudd på
       inbox_url: Overførings-URL
       pending: Avventer overgangens godkjenning
@@ -472,6 +530,9 @@
           other: "%{count} notiser"
       action_taken_by: Handling utført av
       actions:
+        delete_description_html: De rapporterte innleggene vil bli slettet, og en advarsel vil bli tatt vare på for å hjelpe deg eskalere ved fremtidige overtredelser fra samme konto.
+        mark_as_sensitive_description_html: Mediene i de rapporterte innleggene vil bli merket som følsomme, og en advarsel vil bli notert for å hjelpe deg eskalere ved fremtidige overtredelser fra samme konto.
+        resolve_description_html: Ingen handling utføres mot den rapporterte kontoen, ingen advarsel gis, og rapporten lukkes.
         silence_description_html: Profilen vil kun være synlig for dem som allerede følger den eller manuelt slår den opp, noe som sterkt begrenser dens rekkevidde. Kan alltid tilbakestilles.
       are_you_sure: Er du sikker?
       assign_to_self: Tilegn til meg
@@ -483,6 +544,7 @@
       forwarded: Videresendt
       forwarded_to: Videresendt til %{domain}
       mark_as_resolved: Merk som løst
+      mark_as_sensitive: Merk som følsomt
       mark_as_unresolved: Merk som uoppklart
       notes:
         create: Legg til notat
@@ -497,6 +559,7 @@
       resolved: Løst
       resolved_msg: Rapport løst!
       status: Status
+      statuses: Rapportert innhold
       target_origin: Opprinnelse for innrapportert konto
       title: Rapporter
       unassign: Fjern tilegning
@@ -512,8 +575,25 @@
         administration: Administrasjon
         devops: DevOps
         invites: Invitasjoner
+      delete: Slett
+      edit: Rediger rollen '%{name}'
+      everyone: Standard-tillatelser
+      everyone_full_description_html: Dette er <strong>basis-rollen</strong> som påvirker <strong>alle brukere</strong>, selv de uten en tilordnet rolle. Alle andre roller arver tillatelser fra den.
+      permissions_count:
+        one: "%{count} tillatelse"
+        other: "%{count} tillatelser"
       privileges:
+        administrator: Administrator
+        administrator_description: Brukere med denne tillatelsen omgår enhver tillatelse
+        delete_user_data: Slett brukerdata
+        delete_user_data_description: Lar brukere slette andre brukeres data uten forsinkelse
+        invite_users: Invitere brukere
+        invite_users_description: Lar brukere invitere nye personer til serveren
+        manage_invites_description: Lar brukere bla gjennom og deaktivere invitasjonslenker
+        view_dashboard: Vis dashbord
+        view_dashboard_description: Gir brukere tilgang til dashbordet og ulike metrikker
         view_devops: DevOps
+        view_devops_description: Gir brukere tilgang til Sidekiq og pgHero-dashbord
     rules:
       add_new: Legg til et filter
       delete: Slett
@@ -522,6 +602,10 @@
       empty: Ingen serverregler har blitt definert ennå.
       title: Server regler
     settings:
+      about:
+        title: Om
+      discovery:
+        trends: Trender
       domain_blocks:
         all: Til alle
         disabled: Til ingen
@@ -531,35 +615,85 @@
           approved: Godkjenning kreves for påmelding
           none: Ingen kan melde seg inn
           open: Hvem som helst kan melde seg inn
+      title: Serverinnstillinger
     site_uploads:
       delete: Slett den opplastede filen
       destroyed_msg: Vellykket sletting av sideopplasting!
     statuses:
+      account: Forfatter
+      application: Applikasjon
       back_to_account: Tilbake til kontosiden
+      batch:
+        remove_from_report: Fjern fra rapport
       deleted: Slettet
+      history: Versjonshistorikk
+      language: Språk
       media:
         title: Media
+      metadata: Metadata
       no_status_selected: Ingen statuser ble endret da ingen ble valgt
+      original_status: Opprinnelig innlegg
+      status_changed: Innlegg endret
       title: Kontostatuser
+      visibility: Synlighet
       with_media: Med media
     strikes:
       actions:
+        delete_statuses: "%{name} slettet %{target}s innlegg"
+        disable: "%{name} frøs %{target}s konto"
+        mark_statuses_as_sensitive: "%{name} merket %{target}s innlegg som følsomme"
+        none: "%{name} sendte en advarsel til %{target}"
+        sensitive: "%{name} merket %{target}s konto som følsom"
         silence: "%{name} begrenset %{target}s konto"
+        suspend: "%{name} suspenderte %{target}s konto"
+      appeal_approved: Klage tatt til følge
+      appeal_pending: Klage behandles
     system_checks:
       database_schema_check:
         message_html: Det venter på databaseoverføringer. Vennligst kjør disse for å sikre at applikasjonen oppfører seg som forventet
+      elasticsearch_running_check:
+        message_html: Kunne ikke koble til Elasticsearch. Kontroller at den kjører, eller deaktiver fulltekstsøk
+      elasticsearch_version_check:
+        message_html: 'Inkompatibel Elasticsearch-versjon: %{value}'
+        version_comparison: Elasticsearch %{running_version} kjører mens %{required_version} er påkrevd
       rules_check:
         action: Behandle serverregler
         message_html: Du har ikke definert noen serverregler.
+      sidekiq_process_check:
+        message_html: Ingen Sidekiq-prosess kjører for %{value} køen(e). Vennligst se gjennom Sidekiq-konfigurasjonen din
     tags:
       review: Gjennomgangsstatus
     title: Administrasjon
+    trends:
+      allow: Tillat
+      approved: Godkjent
+      disallow: Ikke tillat
+      links:
+        allow: Tillat lenke
+        disallow: Ikke tillat lenke
+        no_link_selected: Ingen lenker ble endret da ingen var valgt
+        shared_by_over_week:
+          one: Delt av %{count} person i løpet av den siste uken
+          other: Delt av %{count} personer i løpet av den siste uken
+        usage_comparison: Delt %{today} ganger i dag, sammenlignet med %{yesterday} i går
+      pending_review: Avventer gjennomgang
+      rejected: Avvist
+      statuses:
+        allow: Tillat innlegg
+        allow_account: Tillat forfatter
+        disallow: Ikke tillat innlegg
     warning_presets:
       add_new: Legg til ny
       delete: Slett
+      title: Endre forhåndsinnstillinger for advarsler
+    webhooks:
+      add_new: Legg til endepunkt
+      status: Status
   admin_mailer:
     new_appeal:
       actions:
+        mark_statuses_as_sensitive: å merke innleggene sine som følsomme
+        sensitive: å merke kontoen sin som følsom
         silence: for å begrense deres konto
     new_pending_account:
       body: Detaljer om den nye kontoen er nedenfor. Du kan godkjenne eller avvise denne søknaden.
@@ -582,7 +716,7 @@
     localization:
       body: Mastodon er oversatt av frivillige.
       guide_link_text: Alle kan bidra.
-    sensitive_content: Sensitivt innhold
+    sensitive_content: Følsomt innhold
     toot_layout: Innleggsoppsett
   application_mailer:
     notification_preferences: Endre E-postinnstillingene
@@ -590,7 +724,7 @@
     settings: 'Endre foretrukne e-postinnstillinger: %{link}'
     view: 'Se:'
     view_profile: Vis Profil
-    view_status: Vis status
+    view_status: Vis innlegg
   applications:
     created: Søknaden ble vellykket oppretttet
     destroyed: Søknaden ble vellykket slettet
@@ -599,47 +733,59 @@
     warning: Vær veldig forsiktig med denne data. Aldri del den med noen!
     your_token: Din tilgangsnøkkel
   auth:
+    apply_for_account: Be om en konto
     change_password: Passord
     delete_account: Slett konto
     delete_account_html: Hvis du ønsker å slette kontoen din, kan du <a href="%{path}">gå hit</a>. Du vil bli spurt om bekreftelse.
     description:
       prefix_invited_by_user: "@%{name} inviterer deg til å bli med på denne serveren til Mastodon!"
-      prefix_sign_up: Meld deg opp på Mastodon i dag!
-      suffix: Med en konto, vil kunne følge folk, legge ut oppdateringer, og utveksle meldinger med brukere fra enhver Mastodon-tjener, og mer til!
+      prefix_sign_up: Registrer deg på Mastodon i dag!
+      suffix: Med en konto, vil kunne følge folk, skrive innlegg, og utveksle meldinger med brukere fra enhver Mastodon-tjener, og mer til!
     didnt_get_confirmation: Mottok du ikke instruksjoner om bekreftelse?
     dont_have_your_security_key: Har du ikke sikkerhetsnøkkelen din?
     forgot_password: Har du glemt passordet ditt?
     invalid_reset_password_token: Tilbakestillingsnøkkelen for passord er ugyldig eller utløpt. Vennligst be om en ny.
-    link_to_otp: Skriv inn en 2-trinnskode fra din 2-trinnspåloggingsenhet eller en gjenopprettingskode
+    link_to_otp: Skriv inn en to-faktor-kode fra telefonen din, eller en gjenopprettingskode
     link_to_webauth: Bruk sikkerhetsnøkkel-enheten din
-    login: Logg på
+    log_in_with: Logg inn med
+    login: Logg inn
     logout: Logg ut
     migrate_account: Flytt til en annen konto
     migrate_account_html: Hvis du ønsker å henvise denne kontoen til en annen, kan du <a href="%{path}">konfigurere det her</a>.
-    or_log_in_with: Eller logg på med
+    or_log_in_with: Eller logg inn med
+    privacy_policy_agreement_html: Jeg har lest og godtar <a href="%{privacy_policy_path}" target="_blank">retningslinjer for personvern</a>
     providers:
       cas: CAS
       saml: SAML
-    register: Bli med
-    registration_closed: "%{instance} godtar ikke nye medlemmer"
+    register: Meld deg på
+    registration_closed: "%{instance} tar ikke imot nye medlemmer"
     resend_confirmation: Send bekreftelsesinstruksjoner på nytt
-    reset_password: Nullstill passord
+    reset_password: Tilbakestill passord
+    rules:
+      preamble: Disse angis og håndheves av %{domain}-moderatorene.
+      title: Noen grunnregler.
     security: Sikkerhet
-    set_new_password: Sett nytt passord
+    set_new_password: Angi nytt passord
     setup:
       email_below_hint_html: Dersom E-postadressen nedenfor er feil, kan du endre det her og motta en ny bekreftelses-E-post.
       email_settings_hint_html: Bekreftelses-E-posten ble sendt til %{email}. Dersom den E-postadressen ikke var riktig, kan du endre den i kontoinnstillingene.
       title: Innstillinger
+    sign_up:
+      preamble: Med en konto på denne Mastodon-tjeneren vil du kunne følge andre personer på nettverket, uansett hvor kontoen deres holder til.
+      title: La oss få deg satt i gang på %{domain}.
     status:
       account_status: Kontostatus
       confirming: Venter på at e-postbekreftelsen er fullført.
-      pending: Søknaden din avventer gjennomgang av styret vårt. Dette kan ta litt tid. Du vil motta en E-post dersom søknaden din blir godkjent.
+      functional: Kontoen din er fullt operativt.
+      pending: Søknaden din avventer gjennomgang av våre medarbeidere. Dette kan ta litt tid. Du vil motta en e-post dersom søknaden din blir godkjent.
       redirecting_to: Kontoen din er inaktiv fordi den for øyeblikket omdirigerer til %{acct}.
       view_strikes: Vis tidligere advarsler mot kontoen din
+    too_fast: Skjemaet ble sendt inn for raskt, prøv på nytt.
     use_security_key: Bruk sikkerhetsnøkkel
   authorize_follow:
     already_following: Du følger allerede denne kontoen
-    error: Uheldigvis skjedde det en feil da vi prøvde å få tak i en bruker fra en annen instans
+    already_requested: Du har allerede sendt en følgeforespørsel til denne kontoen
+    error: Dessverre oppstod det en feil da vi prøvde å få tak i brukeren fra tjeneren
     follow: Følg
     follow_request: 'Du har sendt en følgeforespørsel til:'
     following: 'Suksess! Nå følger du:'
@@ -657,6 +803,10 @@
     errors:
       invalid_key: er ikke en gyldig Ed25519- eller Curve25519-nøkkel
       invalid_signature: er ikke en gyldig Ed25519-signatur
+  date:
+    formats:
+      default: "%d. %b, %Y"
+      with_month_name: "%d. %B, %Y"
   datetime:
     distance_in_words:
       about_x_hours: "%{count} timer"
@@ -690,9 +840,34 @@
       username_unavailable: Brukernavnet ditt vil forbli utilgjengelig
   disputes:
     strikes:
-      appeal_approved: Denne advarselen ble anket og er ikke lenger gyldig
+      action_taken: Handling utført
+      appeal: Klage
+      appeal_approved: Denne advarselens klage ble tatt til følge og er ikke lenger gyldig
+      appeal_rejected: Klagen ble avvist
+      appeal_submitted_at: Klage levert
+      appealed_msg: Din klage har blitt levert. Du får beskjed om den blir godkjent.
+      appeals:
+        submit: Lever klage
+      approve_appeal: Godkjenn klage
+      associated_report: Tilhørende rapport
+      created_at: Datert
+      description_html: Dette er tiltakene mot din konto og advarsler som har blitt sent til deg av %{instance}-personalet.
+      recipient: Adressert til
+      reject_appeal: Avvis klage
+      status: 'Innlegg #%{id}'
+      status_removed: Innlegg allerede fjernet fra systemet
+      title: "%{action} fra %{date}"
       title_actions:
+        delete_statuses: Fjerning av innlegg
+        disable: Frysing av konto
+        mark_statuses_as_sensitive: Merking av innlegg som følsomme
+        none: Advarsel
+        sensitive: Merking av konto som sensitiv
         silence: Begrensning av konto
+        suspend: Suspensjon av konto
+      your_appeal_approved: Din klage har blitt godkjent
+      your_appeal_pending: Du har levert en klage
+      your_appeal_rejected: Din klage har blitt avvist
   domain_validator:
     invalid_domain: er ikke et gyldig domenenavn
   errors:
@@ -717,7 +892,7 @@
     archive_takeout:
       date: Dato
       download: Last ned arkivet ditt
-      hint_html: Du kan be om et arkiv med dine <strong>tuter og opplastede media</strong>. Den eksporterte dataen vil være i ActivityPub-formatet, som kan leses av programmer som støtter det. Du kan be om et arkiv opptil hver 7. dag.
+      hint_html: Du kan be om et arkiv med dine <strong>innlegg og opplastede media</strong>. Eksporterte data vil være i ActivityPub-formatet, som kan leses av programmer som støtter det. Du kan be om et arkiv opptil hver 7. dag.
       in_progress: Samler arkivet ditt...
       request: Be om ditt arkiv
       size: Størrelse
@@ -741,6 +916,8 @@
       public: Offentlige tidslinjer
       thread: Samtaler
     edit:
+      add_keyword: Legg til stikkord
+      statuses: Individuelle innlegg
       title: Rediger filter
     index:
       delete: Slett
@@ -763,6 +940,7 @@
       other: Noe er ikke helt riktig ennå. Det er ennå %{count} feil å rette på
   imports:
     errors:
+      invalid_csv_file: 'Ugyldig CSV-fil. Feil: %{error}'
       over_rows_processing_limit: inneholder flere enn %{count} rader
     modes:
       merge: Slå sammen
@@ -803,11 +981,18 @@
       limit: Du har nådd det maksimale antall lister
   login_activities:
     authentication_methods:
+      otp: to-faktor autentiseringsapp
       password: passord
+      webauthn: sikkerhetsnøkler
+    description_html: Hvis du ser aktivitet som du ikke gjenkjenner, bør du vurdere å endre passordet ditt og aktivere to-trinnsinnlogging.
+    empty: Ingen innloggingshistorikk er tilgjengelig
+    failed_sign_in_html: Mislykket innloggingsforsøk med %{method} fra %{ip} (%{browser})
+    successful_sign_in_html: Vellykket innlogging med %{method} fra %{ip} (%{browser})
     title: Autentiseringshistorikk
   media_attachments:
     validations:
       images_and_video: Kan ikke legge ved video på en status som allerede inneholder bilder
+      not_ready: Kan ikke legge til filer som ikke er ferdigbehandlet. Prøv igjen om et øyeblikk!
       too_many: Kan ikke legge ved mer enn 4 filer
   migrations:
     acct: brukernavn@domene til den nye kontoen
@@ -847,9 +1032,14 @@
     carry_mutes_over_text: Denne brukeren flyttet fra %{acct}, som du hadde dempet.
     copy_account_note_text: 'Denne brukeren flyttet fra %{acct}, her var dine tidligere notater om dem:'
   notification_mailer:
+    admin:
+      report:
+        subject: "%{name} leverte en rapport"
+      sign_up:
+        subject: "%{name} registrerte seg"
     favourite:
-      body: 'Statusen din ble likt av %{name}:'
-      subject: "%{name} likte statusen din"
+      body: 'Innlegget ditt ble favorittmarkert av %{name}:'
+      subject: "%{name} favorittmarkerte innlegget ditt"
       title: Ny favoritt
     follow:
       body: "%{name} følger deg!"
@@ -866,11 +1056,13 @@
       subject: Du ble nevnt av %{name}
       title: Ny nevning
     reblog:
-      body: 'Din status ble fremhevd av %{name}:'
-      subject: "%{name} fremhevde din status"
+      body: 'Ditt innlegg ble fremhevet av %{name}:'
+      subject: "%{name} fremhevet ditt innlegg"
       title: Ny fremheving
     status:
       subject: "%{name} postet nettopp"
+    update:
+      subject: "%{name} redigerte et innlegg"
   notifications:
     email_events: E-postvarslinger for hendelser
     email_events_hint: 'Velg hendelser som du vil motta varslinger for:'
@@ -914,6 +1106,8 @@
     other: Annet
     posting_defaults: Innleggsstandarder
     public_timelines: Offentlige tidslinjer
+  privacy_policy:
+    title: Retningslinjer for personvern
   reactions:
     errors:
       limit_reached: Grensen for ulike reaksjoner nådd
@@ -937,12 +1131,15 @@
     status: Kontostatus
   remote_follow:
     missing_resource: Kunne ikke finne URLen for din konto
+  reports:
+    errors:
+      invalid_rules: refererer ikke til gyldige regler
   rss:
     descriptions:
       account: Offentlige innlegg fra @%{acct}
       tag: 'Offentlige innlegg merket med #%{hashtag}'
   scheduled_statuses:
-    over_daily_limit: Du har overskredet grensen på %{limit} planlagte tuter for den dagen
+    over_daily_limit: Du har overskredet grensen på %{limit} planlagte innlegg for i dag
     over_total_limit: Du har overskredet grensen på %{limit} planlagte innlegg
     too_soon: Den planlagte datoen må være i fremtiden
   sessions:
@@ -1023,7 +1220,8 @@
         one: "%{count} video"
         other: "%{count} videoer"
     boosted_from_html: Boostet fra %{acct_link}
-    content_warning: 'Innholdsadvarsel: %{warning}'
+    content_warning: 'Innholdsvarsel: %{warning}'
+    default_language: Samme språk som brukergrensesnittet
     disallowed_hashtags:
       one: 'inneholdt en ikke tillatt hashtag: %{tags}'
       other: 'inneholdt de ikke tillatte hashtaggene: %{tags}'
@@ -1035,7 +1233,7 @@
     pin_errors:
       direct: Innlegg som bare er synlige for nevnte brukere kan ikke festes
       limit: Du har allerede festet det maksimale antall innlegg
-      ownership: Kun egne tuter kan festes
+      ownership: Kun egne innlegg kan festes
       reblog: En fremheving kan ikke festes
     poll:
       total_people:
@@ -1063,6 +1261,23 @@
     enabled: Slett gamle innlegg automatisk
     enabled_hint: Sletter innleggene dine automatisk når de oppnår en angitt alder, med mindre de samsvarer med ett av unntakene nedenfor
     exceptions: Unntak
+    explanation: Siden sletting av innlegg er en krevende operasjon, blir dette gjort sakte over tid når tjeneren ellers ikke er opptatt. Av denne grunn kan det hende at innleggene dine slettes først en stund etter at de har nådd aldersgrensen.
+    ignore_favs: Ignorer favoritter
+    ignore_reblogs: Ignorer fremhevinger
+    interaction_exceptions: Unntak basert på interaksjoner
+    interaction_exceptions_explanation: Merk at det ikke er noen garanti for at innlegg blir slettet hvis de går under favoritt- eller fremhevelsesgrensen etter å ha gått over dem en gang.
+    keep_direct: Behold direktemeldinger
+    keep_direct_hint: Sletter ingen av direktemeldingene dine
+    keep_media: Behold innlegg med mediavedlegg
+    keep_media_hint: Sletter ikke dine egne innlegg som har mediavedlegg
+    keep_pinned: Behold festede innlegg
+    keep_pinned_hint: Sletter ingen av de festede innleggene dine
+    keep_polls: Behold avstemninger
+    keep_polls_hint: Sletter ingen av avstemningene dine
+    keep_self_bookmark: Behold innlegg med dine bokmerker
+    keep_self_bookmark_hint: Sletter ikke dine egne innlegg hvis du har gitt dem et bokmerke
+    keep_self_fav: Behold innlegg som favoritt
+    keep_self_fav_hint: Sletter ikke dine egne innlegg hvis du har favorittmarkert de
     min_age:
       '1209600': 2 uker
       '15778476': 6 måneder
@@ -1073,9 +1288,13 @@
       '63113904': 2 år
       '7889238': 3 måneder
     min_age_label: Terskel for alder
+    min_favs: Behold innlegg som er favorittmarkert av minst
+    min_favs_hint: Sletter ikke noen av dine innlegg som har mottatt minst dette antall favorittmarkeringer. La stå tom for å slette innlegg uavhengig av antall favorittmarkeringer
+    min_reblogs: Behold innlegg fremhevet av minst
+    min_reblogs_hint: Sletter ikke noen av dine innlegg som har blitt fremhevet minst dette antall ganger. La stå tom for å slette innlegg uavhengig av antall fremhevinger
   stream_entries:
-    pinned: Festet tut
-    reblogged: fremhevde
+    pinned: Festet innlegg
+    reblogged: fremhevet
     sensitive_content: Følsomt innhold
   strikes:
     errors:
@@ -1109,34 +1328,51 @@
   user_mailer:
     appeal_approved:
       action: Gå til kontoen din
+      explanation: Klagen på advarselen mot din konto den %{strike_date} som du sendte inn den %{appeal_date} har blitt godkjent. Din konto er nok en gang i god stand.
+      subject: Din klage fra %{date} er godkjent
+      title: Klage godkjent
+    appeal_rejected:
+      explanation: Klagen på advarselen mot din konto den %{strike_date} som du sendte inn den %{appeal_date} har blitt avvist.
+      subject: Din klage fra %{date} er avvist
+      title: Klage avvist
     backup_ready:
       explanation: Du ba om en fullstendig sikkerhetskopi av Mastodon-kontoen din. Den er nå klar for nedlasting!
       subject: Arkivet ditt er klart til å lastes ned
+      title: Nedlasting av arkiv
     suspicious_sign_in:
       change_password: endre passord
       details: 'Her er detaljer om påloggingen:'
       explanation: Vi har oppdaget en pålogging til din konto fra en ny IP-adresse.
       further_actions_html: Hvis dette ikke var deg, anbefaler vi at du %{action} umiddelbart og aktiverer tofaktorautentisering for å holde kontoen din sikker.
+      subject: Din konto ble tatt i bruk fra en ny IP-adresse
       title: En ny pålogging
     warning:
+      appeal: Lever en klage
+      appeal_description: Hvis du mener dette er feil, kan du sende inn en klage til personalet i %{instance}.
       categories:
         spam: Søppelpost
+        violation: Innholdet bryter følgende retningslinjer for fellesskapet
+      explanation:
+        delete_statuses: Noen av innleggene dine anses å bryte en eller flere retningslinjer for fellesskapet, og har senere blitt fjernet av moderatorene på %{instance}.
+        disable: Du kan ikke lenger bruke kontoen din, men profilen din og andre data forblir intakt. Du kan be om en sikkerhetskopi av dine data, endre kontoinnstillinger eller slette din konto.
+        mark_statuses_as_sensitive: Noen av dine innlegg har blitt merket som følsomme av moderatorene på %{instance}. Dette betyr at folk må trykke på media i innleggene før en forhåndsvisning blir vist. Du kan merke medier som følsomme når du publiserer i fremtiden.
+        sensitive: Fra nå av, vil alle dine opplastede mediefiler bli merket som følsomme og skjult bak et klikk-advarsel.
       reason: 'Årsak:'
       statuses: 'Innlegg angitt:'
       subject:
         delete_statuses: Dine innlegg på %{acct} har blitt fjernet
         disable: Kontoen din, %{acct}, har blitt fryst
-        mark_statuses_as_sensitive: Dine innlegg på %{acct} har blitt merket som sensitivt innhold
+        mark_statuses_as_sensitive: Dine innlegg på %{acct} har blitt merket som følsomme
         none: Advarsel for %{acct}
-        sensitive: Dine innlegg på %{acct} vil bli merket som sensitive fra nå
+        sensitive: Dine innlegg på %{acct} vil fra nå av bli merket som følsomme
         silence: Kontoen din, %{acct}, har blitt begrenset
         suspend: Kontoen din, %{acct}, har blitt suspendert
       title:
         delete_statuses: Innlegg fjernet
         disable: Kontoen er fryst
-        mark_statuses_as_sensitive: Innlegg markert som sensitive
+        mark_statuses_as_sensitive: Innlegg merket som følsomt
         none: Advarsel
-        sensitive: Konto markert som sensitiv
+        sensitive: Konto merket som følsom
         silence: Kontoen er begrenset
         suspend: Kontoen er suspendert
     welcome:
@@ -1144,6 +1380,7 @@
       edit_profile_step: Du kan tilpasse profilen din ved å laste opp et profilbilde, endre visningsnavnet ditt og mer. Du kan velge at nye følgere må godkjennes av deg før de får lov til å følge deg.
       explanation: Her er noen tips for å komme i gang
       final_action: Start postingen
+      final_step: 'Skriv innlegg! Selv uten følgere kan dine offentlige innlegg bli sett av andre, for eksempel på den lokale tidslinjen og i emneknagger. Du kan introdusere deg selv ved å bruke emneknaggen #introduksjon.'
       full_handle: Ditt fullstendige brukernavn
       full_handle_hint: Dette er hva du forteller venner slik at de kan sende melding eller følge deg fra en annen instanse.
       subject: Velkommen til Mastodon
diff --git a/config/locales/oc.yml b/config/locales/oc.yml
index d6bf5a531..5677159b6 100644
--- a/config/locales/oc.yml
+++ b/config/locales/oc.yml
@@ -248,9 +248,7 @@ oc:
         create: Crear blocatge
         hint: Lo blocatge empacharà pas la creacion de compte dins la basa de donadas, mai aplicarà la moderacion sus aquestes comptes.
         severity:
-          desc_html: "<strong>Silenci</strong> farà venir invisibles los estatuts del compte al monde que son pas de seguidors. <strong>Suspendre</strong> levarà tot lo contengut del compte, los mèdias e las donadas de perfil. Utilizatz <strong>Cap</strong> se volètz regetar totes los mèdias."
           noop: Cap
-          silence: Silenci
           suspend: Suspendre
         title: Nòu blocatge domeni
       private_comment: Comentari privat
diff --git a/config/locales/pl.yml b/config/locales/pl.yml
index dc96acee7..753c40725 100644
--- a/config/locales/pl.yml
+++ b/config/locales/pl.yml
@@ -387,6 +387,8 @@ pl:
       add_new: Zatwierdź domenę
       created_msg: Domena dodana do białej listy
       destroyed_msg: Domena usunięta z białej listy
+      export: Eksportuj
+      import: Importuj
       undo: Usuń z białej listy
     domain_blocks:
       add_new: Dodaj nową
@@ -396,15 +398,19 @@ pl:
       edit: Edytuj blokadę domeny
       existing_domain_block: Już nałożyłeś surowsze limity na %{name}.
       existing_domain_block_html: Już narzuciłeś bardziej rygorystyczne limity na %{name}, musisz najpierw <a href="%{unblock_url}">je odblokować</a>.
+      export: Eksportuj
+      import: Importuj
       new:
         create: Utwórz blokadę
         hint: Blokada domen nie zabroni tworzenia wpisów kont w bazie danych, ale pozwoli na automatyczną moderację kont do nich należących.
         severity:
-          desc_html: "<strong>Wyciszenie</strong> uczyni wpisy użytkownika widoczne tylko dla osób, które go obserwują. <strong>Zawieszenie</strong> spowoduje usunięcie całej zawartości dodanej przez użytkownika. Użyj <strong>Żadne</strong>, jeżeli chcesz jedynie odrzucać zawartość multimedialną."
+          desc_html: "<strong>Wyciszenie</strong> uczyni wpisy użytkowników z tej domeny widoczne tylko dla osób, które go obserwują. <strong>Zawieszenie</strong> spowoduje usunięcie całej zawartości dodanej przez użytkownika. Użyj <strong>Żadne</strong>, jeżeli chcesz jedynie odrzucać zawartość multimedialną."
           noop: Nic nie rób
-          silence: Wycisz
+          silence: Limit
           suspend: Zawieś
         title: Nowa blokada domen
+      no_domain_block_selected: Nie zmieniono żadnych bloków domen, gdyż żadna nie została wybrana
+      not_permitted: Nie możesz wykonać tej czynności
       obfuscate: Ukryj nazwę domeny
       obfuscate_hint: Częściowo ukryj nazwę domeny na liście, gdy reklamowanie listy limitów domen jest włączone
       private_comment: Prywatny komentarz
@@ -438,6 +444,20 @@ pl:
       resolved_dns_records_hint_html: Nazwa domeny rozwiązuje się do następujących domen MX, które są ostatecznie odpowiedzialne za przyjmowanie wiadomości e-mail. Blokowanie domeny MX spowoduje zablokowanie rejestracji z dowolnego adresu e-mail, który używa tej samej domeny MX, nawet jeśli widoczna nazwa domeny jest inna. <strong>Uważaj, aby nie blokować głównych dostawców poczty elektronicznej.</strong>
       resolved_through_html: Rozwiązano przez %{domain}
       title: Blokowanie domen e-mail
+    export_domain_allows:
+      new:
+        title: Zaimportuj zezwolenia domen
+      no_file: Nie wybrano pliku
+    export_domain_blocks:
+      import:
+        description_html: Zamierzasz zaimportować listę zablokowanych domen. Przejrzyj uważnie tę listę, zwłaszcza jeśli sam jej nie utworzyłeś.
+        existing_relationships_warning: Istniejące połączenia obserwujących
+        private_comment_description_html: 'Żebyś wiedział(a) skąd pochodzą zaimportowane bloki, zostaną one utworzone z następującym prywatnym komentarzem: <q>%{comment}</q>'
+        private_comment_template: Zaimportowano z %{source} dnia %{date}
+        title: Importuj zablokowane domeny
+      new:
+        title: Importuj zablokowane domeny
+      no_file: Nie wybrano pliku
     follow_recommendations:
       description_html: "<strong>Polecane obserwacje pomagają nowym użytkownikom szybko odnaleźć interesujące treści</strong>. Jeżeli użytkownik nie wchodził w interakcje z innymi wystarczająco często, aby powstały spersonalizowane rekomendacje, polecane są te konta. Są one obliczane każdego dnia na podstawie kombinacji kont o największej liczbie niedawnej aktywności i największej liczbie lokalnych obserwatorów dla danego języka."
       language: Dla języka
@@ -950,7 +970,7 @@ pl:
     warning: Przechowuj te dane ostrożnie. Nie udostępniaj ich nikomu!
     your_token: Twój token dostępu
   auth:
-    apply_for_account: Dodaj na listę oczekujących
+    apply_for_account: Poproś o założenie konta
     change_password: Hasło
     delete_account: Usunięcie konta
     delete_account_html: Jeżeli chcesz usunąć konto, <a href="%{path}">przejdź tutaj</a>. Otrzymasz prośbę o potwierdzenie.
@@ -1209,6 +1229,7 @@ pl:
     invalid_markup: 'zawiera nieprawidłową składnię HTML: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Nieprawidłowy plik CSV. Błąd: %{error}'
       over_rows_processing_limit: zawiera więcej niż %{count} wierszy
     modes:
       merge: Połącz
diff --git a/config/locales/pt-BR.yml b/config/locales/pt-BR.yml
index 6d3fbf60f..eca2804e8 100644
--- a/config/locales/pt-BR.yml
+++ b/config/locales/pt-BR.yml
@@ -138,16 +138,16 @@ pt-BR:
       sensitized: marcadas como sensíveis
       shared_inbox_url: Link da caixa de entrada compartilhada
       show:
-        created_reports: Denúncias desta conta
-        targeted_reports: Denúncias sobre esta conta
+        created_reports: Denúncias criadas
+        targeted_reports: Vezes denunciado
       silence: Silenciar
       silenced: Silenciado
       statuses: Publicações
       strikes: Avisos anteriores
       subscribe: Inscrever-se
       suspend: Suspender
-      suspended: Banido
-      suspension_irreversible: Os dados desta conta foram excluídos de forma irreversível. Você pode remover a suspensão da conta para torná-la utilizável, mas ela não irá recuperar nenhum dado que ela possuía anteriormente.
+      suspended: Suspendido
+      suspension_irreversible: Os dados desta conta foram excluídos de forma irreversível. Você pode remover a suspensão da conta para torná-la utilizável, mas ela não recuperará nenhum dado que ela possuía anteriormente.
       suspension_reversible_hint_html: A conta foi suspensa e os dados serão totalmente removidos em %{date}. Até lá, a conta pode ser restaurada sem nenhum efeito negativo. Se você deseja remover todos os dados da conta imediatamente, você pode fazer isso abaixo.
       title: Contas
       unblock_email: Desbloquear endereço de e-mail
@@ -166,54 +166,54 @@ pt-BR:
       whitelisted: Permitido
     action_logs:
       action_types:
-        approve_appeal: Aprovar recurso
-        approve_user: Aprovar Usuário
-        assigned_to_self_report: Adicionar relatório
-        change_email_user: Editar e-mail do usuário
-        change_role_user: Alteração de Função do Usuário
-        confirm_user: Confirmar Usuário
-        create_account_warning: Criar Aviso
-        create_announcement: Criar Anúncio
-        create_canonical_email_block: Criar bloqueio de Endereço eletrônico
-        create_custom_emoji: Criar Emoji Personalizado
-        create_domain_allow: Adicionar domínio permitido
-        create_domain_block: Criar Bloqueio de Domínio
-        create_email_domain_block: Criar Bloqueio de Domínio de E-mail
+        approve_appeal: Aprovar revisão
+        approve_user: Aprovar usuário
+        assigned_to_self_report: Atribuir denúncia
+        change_email_user: Alterar e-mail do usuário
+        change_role_user: Alterar cargo do usuário
+        confirm_user: Confirmar usuário
+        create_account_warning: Criar aviso
+        create_announcement: Criar anúncio
+        create_canonical_email_block: Criar bloqueio de e-mail
+        create_custom_emoji: Criar emoji personalizado
+        create_domain_allow: Permitir domínio
+        create_domain_block: Bloquear domínio
+        create_email_domain_block: Bloquear domínio de e-mail
         create_ip_block: Criar regra de IP
         create_unavailable_domain: Criar domínio indisponível
-        create_user_role: Criar Função
+        create_user_role: Criar cargo
         demote_user: Rebaixar usuário
         destroy_announcement: Excluir anúncio
-        destroy_canonical_email_block: Excluir Bloqueio de Endereço Eletrônico
+        destroy_canonical_email_block: Desbloquear domínio de e-mail
         destroy_custom_emoji: Excluir emoji personalizado
         destroy_domain_allow: Excluir domínio permitido
-        destroy_domain_block: Excluir Bloqueio de Domínio
-        destroy_email_domain_block: Excluir bloqueio de domínio de e-mail
-        destroy_instance: Limpar Domínio
+        destroy_domain_block: Desbloquear domínio
+        destroy_email_domain_block: Desbloquear domínio de e-mail
+        destroy_instance: Limpar domínio
         destroy_ip_block: Excluir regra de IP
-        destroy_status: Excluir Status
-        destroy_unavailable_domain: Deletar domínio indisponível
-        destroy_user_role: Destruir Função
+        destroy_status: Excluir publicação
+        destroy_unavailable_domain: Excluir domínio indisponível
+        destroy_user_role: Destruir cargo
         disable_2fa_user: Desativar autenticação de dois fatores
-        disable_custom_emoji: Desativar Emoji Personalizado
+        disable_custom_emoji: Desativar emoji personalizado
         disable_sign_in_token_auth_user: Desativar autenticação via token por email para Usuário
         disable_user: Desativar usuário
-        enable_custom_emoji: Ativar Emoji Personalizado
+        enable_custom_emoji: Ativar emoji personalizado
         enable_sign_in_token_auth_user: Ativar autenticação via token por email para Usuário
         enable_user: Ativar usuário
         memorialize_account: Converter conta em memorial
         promote_user: Promover usuário
-        reject_appeal: Rejeitar recurso
-        reject_user: Rejeitar Usuário
+        reject_appeal: Rejeitar revisão
+        reject_user: Rejeitar usuário
         remove_avatar_user: Remover imagem de perfil
-        reopen_report: Reabrir Relatório
-        resend_user: Reenviar o E-mail de Confirmação
+        reopen_report: Reabrir relatório
+        resend_user: Reenviar o e-mail de confirmação
         reset_password_user: Redefinir a senha
-        resolve_report: Resolver Relatório
+        resolve_report: Resolver denúncia
         sensitive_account: Marcar a mídia na sua conta como sensível
         silence_account: Silenciar conta
-        suspend_account: Suspender Conta
-        unassigned_report: Remover relatório
+        suspend_account: Suspender conta
+        unassigned_report: Desatribuir denúncia
         unblock_email_account: Desbloquear endereço de e-mail
         unsensitive_account: Desmarcar a mídia na sua conta como sensível
         unsilence_account: Desfazer silenciar conta
@@ -223,66 +223,66 @@ pt-BR:
         update_domain_block: Atualizar bloqueio de domínio
         update_ip_block: Atualizar regra de IP
         update_status: Editar Status
-        update_user_role: Atualizar função
+        update_user_role: Atualizar cargo
       actions:
-        approve_appeal_html: "%{name} aprovou o recurso de decisão de moderação de %{target}"
+        approve_appeal_html: "%{name} aprovou a revisão da decisão da moderação em %{target}"
         approve_user_html: "%{name} aprovado inscrição de %{target}"
-        assigned_to_self_report_html: "%{name} atribuiu o relatório %{target} para si"
+        assigned_to_self_report_html: "%{name} atribuiu a denúncia %{target} para si"
         change_email_user_html: "%{name} alterou o endereço de e-mail do usuário %{target}"
-        change_role_user_html: "%{name} alterou a função de %{target}"
+        change_role_user_html: "%{name} alterou o cargo de %{target}"
         confirm_user_html: "%{name} confirmou o endereço de e-mail do usuário %{target}"
         create_account_warning_html: "%{name} enviou um aviso para %{target}"
         create_announcement_html: "%{name} criou o novo anúncio %{target}"
-        create_canonical_email_block_html: "%{name} bloqueou o endereço com o marcador %{target}"
+        create_canonical_email_block_html: "%{name} bloqueou o e-mail com o marcador %{target}"
         create_custom_emoji_html: "%{name} enviou o novo emoji %{target}"
         create_domain_allow_html: "%{name} permitiu federação com domínio %{target}"
         create_domain_block_html: "%{name} bloqueou o domínio %{target}"
-        create_email_domain_block_html: "%{name} bloqueou do domínio de e-mail %{target}"
-        create_ip_block_html: "%{name} criou regra para o IP %{target}"
+        create_email_domain_block_html: "%{name} bloqueou o domínio de e-mail %{target}"
+        create_ip_block_html: "%{name} criou a regra para o IP %{target}"
         create_unavailable_domain_html: "%{name} parou a entrega ao domínio %{target}"
-        create_user_role_html: "%{name} criou a função %{target}"
+        create_user_role_html: "%{name} criou o cargo %{target}"
         demote_user_html: "%{name} rebaixou o usuário %{target}"
         destroy_announcement_html: "%{name} excluiu o anúncio %{target}"
-        destroy_canonical_email_block_html: "%{name} desbloqueou o endereço com o marcador %{target}"
+        destroy_canonical_email_block_html: "%{name} desbloqueou o e-mail com o marcador %{target}"
         destroy_custom_emoji_html: "%{name} apagou o emoji %{target}"
         destroy_domain_allow_html: "%{name} bloqueou federação com domínio %{target}"
-        destroy_domain_block_html: "%{name} deixou de bloquear domínio %{target}"
-        destroy_email_domain_block_html: "%{name} adicionou domínio de e-mail %{target} à lista branca"
-        destroy_instance_html: "%{name} purgou o domínio %{target}"
-        destroy_ip_block_html: "%{name} excluiu regra para o IP %{target}"
+        destroy_domain_block_html: "%{name} desbloqueou o domínio %{target}"
+        destroy_email_domain_block_html: "%{name} desbloqueou o domínio de e-mail %{target}"
+        destroy_instance_html: "%{name} limpou o domínio %{target}"
+        destroy_ip_block_html: "%{name} excluiu a regra para o IP %{target}"
         destroy_status_html: "%{name} removeu a publicação de %{target}"
         destroy_unavailable_domain_html: "%{name} retomou a entrega ao domínio %{target}"
-        destroy_user_role_html: "%{name} excluiu a função %{target}"
+        destroy_user_role_html: "%{name} excluiu o cargo %{target}"
         disable_2fa_user_html: "%{name} desativou a exigência da autenticação de dois fatores para o usuário %{target}"
         disable_custom_emoji_html: "%{name} desativou o emoji %{target}"
         disable_sign_in_token_auth_user_html: "%{name} desativou a autenticação via token por email para %{target}"
         disable_user_html: "%{name} desativou o login para %{target}"
-        enable_custom_emoji_html: "%{name} desativou o emoji %{target}"
+        enable_custom_emoji_html: "%{name} ativou o emoji %{target}"
         enable_sign_in_token_auth_user_html: "%{name} ativou a autenticação via token por email para %{target}"
         enable_user_html: "%{name} ativou o login para %{target}"
         memorialize_account_html: "%{name} transformou a conta de %{target} em um memorial"
         promote_user_html: "%{name} promoveu o usuário %{target}"
-        reject_appeal_html: "%{name} rejeitou recurso de decisão de moderação de %{target}"
+        reject_appeal_html: "%{name} rejeitou a revisão da decisão da moderação em %{target}"
         reject_user_html: "%{name} rejeitou a inscrição de %{target}"
         remove_avatar_user_html: "%{name} removeu a imagem de perfil de %{target}"
         reopen_report_html: "%{name} reabriu a denúncia %{target}"
         resend_user_html: "%{name} reenviou um e-mail de confirmação para %{target}"
         reset_password_user_html: "%{name} redefiniu a senha de %{target}"
-        resolve_report_html: "%{name} fechou a denúncia %{target}"
+        resolve_report_html: "%{name} resolveu a denúncia %{target}"
         sensitive_account_html: "%{name} marcou a mídia de %{target} como sensível"
         silence_account_html: "%{name} limitou a conta de %{target}"
         suspend_account_html: "%{name} suspendeu a conta de %{target}"
-        unassigned_report_html: "%{name} desvinculou a denúncia %{target}"
+        unassigned_report_html: "%{name} desatribuiu a denúncia %{target}"
         unblock_email_account_html: "%{name} desbloqueou o endereço de e-mail de %{target}"
         unsensitive_account_html: "%{name} desmarcou a mídia de %{target} como sensível"
         unsilence_account_html: "%{name} removeu a limitação da conta de %{target}"
         unsuspend_account_html: "%{name} removeu a suspenção da conta de %{target}"
-        update_announcement_html: "%{name} atualizou o comunicado %{target}"
+        update_announcement_html: "%{name} atualizou o anúncio %{target}"
         update_custom_emoji_html: "%{name} atualizou o emoji %{target}"
         update_domain_block_html: "%{name} atualizou o bloqueio de domínio de %{target}"
-        update_ip_block_html: "%{name} alterou a regra para IP %{target}"
+        update_ip_block_html: "%{name} alterou a regra para o IP %{target}"
         update_status_html: "%{name} atualizou a publicação de %{target}"
-        update_user_role_html: "%{name} alterou a função %{target}"
+        update_user_role_html: "%{name} alterou o cargo %{target}"
       deleted_account: conta excluída
       empty: Nenhum registro encontrado.
       filter_by_action: Filtrar por ação
@@ -346,11 +346,11 @@ pt-BR:
       new_users: novos usuários
       opened_reports: denúncias abertas
       pending_appeals_html:
-        one: "<strong>%{count}</strong> recurso pendente"
-        other: "<strong>%{count}</strong> recursos pendentes"
+        one: "<strong>%{count}</strong> revisão pendente"
+        other: "<strong>%{count}</strong> revisões pendentes"
       pending_reports_html:
-        one: "<strong>%{count}</strong> relatório pendente"
-        other: "<strong>%{count}</strong> relatórios pendentes"
+        one: "<strong>%{count}</strong> denúncia pendente"
+        other: "<strong>%{count}</strong> denúncias pendentes"
       pending_tags_html:
         one: "<strong>%{count}</strong> hashtag pendente"
         other: "<strong>%{count}</strong> hashtags pendentes"
@@ -367,12 +367,14 @@ pt-BR:
       website: Site
     disputes:
       appeals:
-        empty: Nenhum recurso encontrado.
-        title: Apelações
+        empty: Sem revisões.
+        title: Revisões
     domain_allows:
       add_new: Permitir domínio
       created_msg: Domínio foi permitido
       destroyed_msg: Domínio foi proibido de federar
+      export: Exportar
+      import: Importar
       undo: Bloquear federação com domínio
     domain_blocks:
       add_new: Adicionar novo bloqueio de domínio
@@ -382,15 +384,17 @@ pt-BR:
       edit: Editar bloqueio de domínio
       existing_domain_block: Você já impôs limites mais rigorosos em %{name}.
       existing_domain_block_html: Você já impôs limites mais estritos em %{name}, você precisa <a href="%{unblock_url}">desbloqueá-lo</a> primeiro.
+      export: Exportar
+      import: Importar
       new:
         create: Criar bloqueio
         hint: O bloqueio de domínio não vai prevenir a criação de entradas de contas na base de dados, mas vai retroativamente e automaticamente aplicar métodos específicos de moderação nessas contas.
         severity:
-          desc_html: "<strong>Silenciar</strong> vai tornar as publicações da conta invisíveis para qualquer um que não o esteja seguindo. <strong>Suspender</strong> vai remover todo o conteúdo, mídia e dados de perfil da conta. Use <strong>Nenhum</strong> se você só quer rejeitar arquivos de mídia."
           noop: Nenhum
-          silence: Silenciar
+          silence: Limitar
           suspend: Banir
         title: Novo bloqueio de domínio
+      not_permitted: Você não possui permissão para realizar esta ação
       obfuscate: Ofuscar nome de domínio
       obfuscate_hint: Ofuscar parcialmente o domínio na lista se a exibição da lista de domínios limitados estiver habilitada
       private_comment: Comentário privado
@@ -422,6 +426,18 @@ pt-BR:
       resolved_dns_records_hint_html: O nome de domínio resolve os seguintes domínios MX, que são responsáveis finais por aceitar o e-mail. Bloquear um domínio MX bloqueará inscrições de qualquer endereço de e-mail que use o mesmo domínio MX, mesmo que o nome de domínio visível seja diferente. <strong>Cuidado para não bloquear os principais provedores de e-mail.</strong>
       resolved_through_html: Resolvido através de %{domain}
       title: Lista de negra de e-mail
+    export_domain_allows:
+      new:
+        title: Importar domínios permitidos
+      no_file: Nenhum arquivo selecionado
+    export_domain_blocks:
+      import:
+        description_html: Você está prestes a importar uma lista de boqueio de domínio. Por favor, revise esta lista com muito cuidado, especialmente se você mesmo não criou esta lista.
+        private_comment_template: Importado de %{source} em %{date}
+        title: Importar bloqueio de domínios
+      new:
+        title: Importar bloqueio de domínios
+      no_file: Nenhum arquivo selecionado
     follow_recommendations:
       description_html: "<strong>A recomendação de contas ajuda os novos usuários a encontrar rapidamente conteúdo interessante</strong>. Quando um usuário ainda não tiver interagido o suficiente para gerar recomendações de contas, essas contas serão recomendadas. Essas recomendações são recalculadas diariamente a partir de uma lista de contas com alto engajamento e maior número de seguidores locais em uma dada língua."
       language: Na língua
@@ -452,7 +468,7 @@ pt-BR:
         description_html: Você pode definir políticas de conteúdo que serão aplicadas a todas as contas deste domínio e a qualquer um dos seus subdomínios.
         policies:
           reject_media: Rejeitar mídia
-          reject_reports: Rejeitar relatórios
+          reject_reports: Rejeitar denúncias
           silence: Limite
           suspend: Suspender
         policy: Políticas
@@ -465,7 +481,7 @@ pt-BR:
         instance_follows_measure: seus seguidores aqui
         instance_languages_dimension: Idiomas principais
         instance_media_attachments_measure: anexos de mídia armazenados
-        instance_reports_measure: relatórios sobre eles
+        instance_reports_measure: denúncias sobre eles
         instance_statuses_measure: publicações armazenadas
       delivery:
         all: Todos
@@ -547,30 +563,28 @@ pt-BR:
         notes:
           one: "%{count} nota"
           other: "%{count} notas"
-      action_log: Logs de auditoria
+      action_log: Registros de auditoria
       action_taken_by: Atitude tomada por
       actions:
         delete_description_html: As publicações denunciadas serão apagadas e um aviso de violação será mantido para te informar sobre o agravamento caso essa mesma conta cometa infrações no futuro.
         mark_as_sensitive_description_html: Os conteúdos de mídia em publicações denunciadas serão marcados como sensíveis e um aviso de violação será mantido para te informar sobre o agravamento caso essa mesma conta comenta infrações no futuro.
-        other_description_html: Veja mais opções para controlar o comportamento da conta e personalizar a comunicação com a conta reportada.
-        resolve_description_html: Nenhuma ação será tomada contra a conta denunciada, nenhuma violação será guardada, e a denúncia será encerrada.
-        silence_description_html: O perfil será visível apenas para aqueles que já o seguem ou que o procuram manualmente, limitando severamente seu alcance. Pode ser sempre revertido.
+        other_description_html: Veja mais opções para controlar o comportamento da conta e personalizar a comunicação com a conta denunciada.
+        resolve_description_html: Nenhuma ação será tomada contra a conta denunciada, nenhuma violação será guardada e a denúncia será encerrada.
+        silence_description_html: O perfil será visível apenas para aqueles que já o seguem ou que o procuram manualmente, limitando severamente seu alcance. Pode ser revertido a qualquer momento.
         suspend_description_html: O perfil e todo o seu conteúdo ficarão inacessíveis até que seja eventualmente excluído. Interagir com a conta será impossível. Reversível dentro de 30 dias.
-      actions_description_html: 'Decida que medidas tomar para resolver esta denúncia. Se você receber uma ação punitiva contra a conta denunciada, ela receberá uma notificação por e-mail, exceto quando for selecionada a categoria <strong>Spam</strong> for selecionada.
-
-        '
-      add_to_report: Adicionar mais ao relatório
+      actions_description_html: Decida que medidas tomar para resolver esta denúncia. Se você decidir punir a conta denunciada, ela receberá uma notificação por e-mail, exceto quando for selecionada a categoria <strong>spam</strong> for selecionada.
+      add_to_report: Adicionar mais à denúncia
       are_you_sure: Você tem certeza?
-      assign_to_self: Pegar
+      assign_to_self: Atribuir para si
       assigned: Moderador responsável
       by_target_domain: Domínio da conta denunciada
       category: Categoria
-      category_description_html: O motivo pelo qual esta conta e/ou conteúdo foi reportado será citado na comunicação com a conta reportada
+      category_description_html: O motivo pelo qual esta conta e/ou conteúdo foi denunciado será citado na comunicação com a conta denunciada
       comment:
         none: Nenhum
       comment_description_html: 'Para fornecer mais informações, %{name} escreveu:'
       created_at: Denunciado
-      delete_and_resolve: Excluir mensagens
+      delete_and_resolve: Excluir publicações
       forwarded: Encaminhados
       forwarded_to: Encaminhado para %{domain}
       mark_as_resolved: Marcar como resolvido
@@ -582,10 +596,10 @@ pt-BR:
         create_and_resolve: Resolver com nota
         create_and_unresolve: Reabrir com nota
         delete: Excluir
-        placeholder: Descreva que ações foram tomadas, ou quaisquer outras atualizações relacionadas…
+        placeholder: Descreva quais ações foram tomadas ou quaisquer outras atualizações relacionadas...
         title: Notas
-      notes_description_html: Visualize e deixe anotações para outros moderadores e para o seu "eu" do futuro
-      quick_actions_description_html: 'Tome uma ação rápida ou role para baixo para ver o conteúdo relatado:'
+      notes_description_html: Visualize e deixe anotações para outros moderadores e para você mesmo no futuro
+      quick_actions_description_html: 'Tome uma ação rápida ou role para baixo para ver o conteúdo denunciado:'
       remote_user_placeholder: o usuário remoto de %{instance}
       reopen: Reabrir denúncia
       report: 'Denúncia #%{id}'
@@ -594,30 +608,31 @@ pt-BR:
       resolved: Resolvido
       resolved_msg: Denúncia resolvida!
       skip_to_actions: Pular para ações
-      status: Situação
+      status: Estado
       statuses: Conteúdo denunciado
       statuses_description_html: Conteúdo ofensivo será citado em comunicação com a conta denunciada
-      target_origin: Origem da conta relatada
+      target_origin: Origem da conta denunciada
       title: Denúncias
-      unassign: Largar
+      unassign: Desatribuir
       unresolved: Não resolvido
       updated_at: Atualizado
       view_profile: Ver perfil
     roles:
-      add_new: Adicionar função
+      add_new: Adicionar cargo
       assigned_users:
         one: "%{count} usuário"
         other: "%{count} usuários"
       categories:
         administration: Administração
+        devops: DevOps
         invites: Convites
         moderation: Moderação
         special: Especial
       delete: Excluir
       description_html: Com as <strong>funções de usuário</strong>, você pode personalizar quais funções e áreas do Mastodon seus usuários podem acessar.
-      edit: Editar função de '%{name}'
+      edit: Editar cargo '%{name}'
       everyone: Permissões padrão
-      everyone_full_description_html: Esta é a <strong>função base</strong> que afeta <strong>todos os usuários</strong>, mesmo aqueles sem uma função atribuída. Todas as outras funções dela herdam as suas permissões.
+      everyone_full_description_html: Este é o <strong>cargo base</strong> que afeta <strong>todos os usuários</strong>, mesmo aqueles sem um cargo atribuído. Todos os outros cargos herdam as permissões dele.
       permissions_count:
         one: "%{count} permissão"
         other: "%{count} permissões"
@@ -630,8 +645,8 @@ pt-BR:
         invite_users_description: Permite que os usuários convidem novas pessoas para o servidor
         manage_announcements: Gerenciar Avisos
         manage_announcements_description: Permite aos usuários gerenciar anúncios no servidor
-        manage_appeals: Gerenciar Apelações
-        manage_appeals_description: Permite aos usuários revisar as apelações contra ações de moderação
+        manage_appeals: Gerenciar revisões
+        manage_appeals_description: Permite aos usuários visualizar as revisões das decisões da moderação
         manage_blocks: Gerenciar Bloqueios
         manage_blocks_description: Permite aos usuários bloquear provedores de e-mail e endereços IP
         manage_custom_emojis: Gerenciar Emojis Personalizados
@@ -640,10 +655,10 @@ pt-BR:
         manage_federation_description: Permite aos usuários bloquear ou permitir federação com outros domínios e controlar a entregabilidade
         manage_invites: Gerenciar convites
         manage_invites_description: Permite que os usuários naveguem e desativem os links de convites
-        manage_reports: Gerenciar relatórios
+        manage_reports: Gerenciar denúncias
         manage_reports_description: Permite aos usuários avaliar denúncias e realizar ações de moderação contra elas
         manage_roles: Gerenciar Funções
-        manage_roles_description: Permitir que os usuários gerenciem e atribuam papéis abaixo deles
+        manage_roles_description: Permitir que os usuários gerenciem e atribuam cargos abaixo deles
         manage_rules: Gerenciar Regras
         manage_rules_description: Permite que os usuários alterarem as regras do servidor
         manage_settings: Gerenciar Configurações
@@ -660,6 +675,7 @@ pt-BR:
         view_audit_log_description: Permite aos usuários ver um histórico de ações administrativas no servidor
         view_dashboard: Ver painel
         view_dashboard_description: Permite que os usuários acessem o painel e várias métricas
+        view_devops: DevOps
         view_devops_description: Permite aos usuários acessar os painéis da Sidekiq e pgHero
       title: Funções
     rules:
@@ -713,7 +729,7 @@ pt-BR:
       back_to_account: Voltar para página da conta
       back_to_report: Voltar às denúncias
       batch:
-        remove_from_report: Remover do relatório
+        remove_from_report: Remover da denúncia
         report: Denunciar
       deleted: Excluídos
       favourites: Favoritos
@@ -741,8 +757,8 @@ pt-BR:
         sensitive: "%{name} marcou as publicações de %{target} como sensíveis"
         silence: "%{name} limitou a conta de %{target}"
         suspend: "%{name} suspendeu a conta de %{target}"
-      appeal_approved: Apelado
-      appeal_pending: Recurso pendente
+      appeal_approved: Revisado
+      appeal_pending: Revisão pendente
     system_checks:
       database_schema_check:
         message_html: Existem migrações de banco de dados pendentes. Execute-as para garantir que o aplicativo se comporte como esperado
@@ -771,6 +787,9 @@ pt-BR:
         disallow: Proibir link
         disallow_provider: Proibir autor
         no_link_selected: Nenhum link foi alterado como nenhum foi selecionado
+        shared_by_over_week:
+          one: Compartilhado por uma pessoa na última semana
+          other: Compartilhado por %{count} pessoas na última semana
         title: Em alta no momento
         usage_comparison: Compartilhado %{today} vezes hoje, em comparação com %{yesterday} de ontem
       only_allowed: Somente permitido
@@ -787,6 +806,8 @@ pt-BR:
         description_html: Estes são as publicações que seu servidor sabe que estão sendo muito compartilhadas e favorecidas no momento. Isso pode ajudar seus usuários, novos e atuais, a encontrar mais pessoas para seguir. Nenhuma publicação é exibida publicamente até que você aprove o autor e o autor permitir que sua conta seja sugerida a outros. Você também pode permitir ou rejeitar publicações individuais.
         disallow: Proibir publicação
         disallow_account: Proibir autor
+        no_status_selected: Nenhuma publicação em alta foi alterada, pois, nenhuma foi selecionada
+        not_discoverable: O autor optou por permitir que seja descoberto
         shared_by:
           one: Compartilhado ou favoritado uma vez
           other: Compartilhado e favoritado %{friendly_count} vezes
@@ -799,10 +820,13 @@ pt-BR:
           tag_servers_dimension: Servidores mais populares
           tag_servers_measure: servidores diferentes
           tag_uses_measure: usos
+        description_html: Estas são hashtags que atualmente estão aparecendo em várias postagens que sua instância vê. Isso pode ajudar seus usuários a descobrirem sobre o que as pessoas estão mais comentando no momento. Nenhuma hashtag é exibida publicamente até que você as aprove.
         listable: Pode ser sugerido
+        no_tag_selected: Nenhuma tag foi alterada, pois, nenhuma foi selecionada
         not_listable: Não será sugerido
         not_trendable: Não aparecerá em alta
         not_usable: Não pode ser usado
+        peaked_on_and_decaying: Atingiu o auge em %{date}, agora decaindo
         title: Hashtags em alta
         trendable: Aparecerá em alta
         trending_rank: 'Em alta #%{rank}'
@@ -822,9 +846,11 @@ pt-BR:
     webhooks:
       add_new: Adicionar endpoint
       delete: Excluir
+      description_html: Um <strong>webhook</strong> permite que o Mastodon envie <strong>notificações em tempo real</strong> sobre os eventos escolhidos para a sua própria aplicação, então sua aplicação pode <strong>acionar reações automaticamente</strong>.
       disable: Desabilitar
       disabled: Desativado
       edit: Editar endpoint
+      empty: Você não tem webhooks configurados nos endpoints.
       enable: Habilitar
       enabled: Ativo
       enabled_events:
@@ -847,15 +873,18 @@ pt-BR:
         sensitive: para marcar sua conta como sensível
         silence: para limitar sua conta
         suspend: para suspender sua conta
-      body: "%{target} está apelando por uma decisão de moderação de %{action_taken_by} em %{date}, que era %{type}. Escreveu:"
+      body: "%{target} está solicitando uma revisão da decisão da moderação por %{action_taken_by} em %{date}, que era %{type}. Ele escreveu:"
+      next_steps: Você pode aprovar a revisão para desfazer a decisão da moderação ou ignorá-la.
+      subject: "%{username} está solicitando uma revisão da decisão da moderação em %{instance}"
     new_pending_account:
       body: Os detalhes da nova conta estão abaixo. Você pode aprovar ou vetar.
       subject: Nova conta para revisão em %{instance} (%{username})
     new_report:
       body: "%{reporter} denunciou %{target}"
-      body_remote: Alguém da instância %{domain} reportou %{target}
+      body_remote: Alguém de %{domain} denunciou %{target}
       subject: Nova denúncia sobre %{instance} (#%{id})
     new_trends:
+      body: 'Os seguintes itens precisam de uma análise antes que possam ser exibidos publicamente:'
       new_trending_links:
         title: Links em destaque
       new_trending_statuses:
@@ -899,7 +928,7 @@ pt-BR:
     warning: Tenha cuidado com estes dados. Nunca compartilhe com alguém!
     your_token: Seu código de acesso
   auth:
-    apply_for_account: Entrar na lista de espera
+    apply_for_account: Solicitar uma conta
     change_password: Senha
     delete_account: Excluir conta
     delete_account_html: Se você deseja excluir sua conta, você pode <a href="%{path}">fazer isso aqui</a>. Uma confirmação será solicitada.
@@ -919,6 +948,7 @@ pt-BR:
     migrate_account: Mudar-se para outra conta
     migrate_account_html: Se você quer redirecionar essa conta para uma outra você pode <a href="%{path}">configurar isso aqui</a>.
     or_log_in_with: Ou entre com
+    privacy_policy_agreement_html: Eu li e concordo com a <a href="%{privacy_policy_path}" target="_blank">política de privacidade</a>
     providers:
       cas: CAS
       saml: SAML
@@ -934,6 +964,9 @@ pt-BR:
       email_below_hint_html: Se o endereço de e-mail abaixo não for seu, você pode alterá-lo aqui e receber um novo e-mail de confirmação.
       email_settings_hint_html: O e-mail de confirmação foi enviado para %{email}. Se esse endereço de e-mail não estiver correto, você pode alterá-lo nas configurações da conta.
       title: Configurações
+    sign_up:
+      preamble: Com uma conta neste servidor Mastodon, você poderá seguir qualquer outra pessoa na rede, independentemente de onde sua conta esteja hospedada.
+      title: Então vamos lá criar uma conta em %{domain}.
     status:
       account_status: Status da conta
       confirming: Confirmação por e-mail pendente.
@@ -1002,19 +1035,19 @@ pt-BR:
   disputes:
     strikes:
       action_taken: Ações tomadas
-      appeal: Recurso
-      appeal_approved: Este recurso foi contestado e não é mais válido
-      appeal_rejected: O recurso foi rejeitado
-      appeal_submitted_at: Recurso enviado
-      appealed_msg: Seu recurso foi enviado. Se ele for aprovado, você será notificado.
+      appeal: Revisão
+      appeal_approved: Esta punição foi revisada e não é mais válida
+      appeal_rejected: A revisão foi rejeitada
+      appeal_submitted_at: Revisão enviada
+      appealed_msg: Sua revisão foi enviada. Se ela for aprovada, você será notificado.
       appeals:
-        submit: Enviar recurso
-      approve_appeal: Aprovar recurso
-      associated_report: Relatório associado
+        submit: Enviar revisão
+      approve_appeal: Aprovar revisão
+      associated_report: Denúncia associada
       created_at: Datado
       description_html: Estas são ações tomadas contra sua conta e avisos que foram enviados a você pela equipe de %{instance}.
       recipient: Endereçado para
-      reject_appeal: Rejeitar recurso
+      reject_appeal: Rejeitar revisão
       status: 'Publicação #%{id}'
       status_removed: Publicação já removida do sistema
       title: "%{action} de %{date}"
@@ -1026,9 +1059,9 @@ pt-BR:
         sensitive: Marcar a conta como sensível
         silence: Limitação da conta
         suspend: Suspensão de conta
-      your_appeal_approved: Seu recurso foi aprovado
-      your_appeal_pending: Você submeteu um recurso
-      your_appeal_rejected: Seu recurso foi rejeitado
+      your_appeal_approved: Sua revisão foi aprovada
+      your_appeal_pending: Você enviou uma revisão
+      your_appeal_rejected: Sua revisão foi rejeitada
   domain_validator:
     invalid_domain: não é um nome de domínio válido
   errors:
@@ -1082,8 +1115,10 @@ pt-BR:
       statuses: Publicações individuais
       title: Editar filtro
     errors:
+      deprecated_api_multiple_keywords: Estes parâmetros não podem ser alterados a partir deste aplicativo porque se aplicam a mais de uma palavra-chave de filtro. Use um aplicativo mais recente ou a interface web.
       invalid_context: Contexto inválido ou nenhum contexto informado
     index:
+      contexts: Filtros em %{contexts}
       delete: Remover
       empty: Sem filtros.
       expires_in: Expira em %{distance}
@@ -1094,19 +1129,30 @@ pt-BR:
       statuses:
         one: "%{count} publicação"
         other: "%{count} publicações"
+      statuses_long:
+        one: "%{count} publicação individual oculta"
+        other: "%{count} publicações individuais ocultas"
       title: Filtros
     new:
       save: Salvar novo filtro
       title: Adicionar filtro
     statuses:
+      back_to_filter: Voltar ao filtro
       batch:
         remove: Remover do filtro
       index:
+        hint: Este filtro se aplica a publicações individuais, independentemente de outros critérios. Você pode adicionar mais postagens a este filtro a partir da interface web.
         title: Publicações filtradas
   footer:
     trending_now: Em alta no momento
   generic:
     all: Tudo
+    all_items_on_page_selected_html:
+      one: "<strong>%{count}</strong> item nessa página está selecionado."
+      other: Todos os <strong>%{count}</strong> itens nessa página estão selecionados.
+    all_matching_items_selected_html:
+      one: "<strong>%{count}</strong> item correspondente à sua pesquisa está selecionado."
+      other: Todos os <strong>%{count}</strong> itens correspondentes à sua pesquisa estão selecionados.
     changes_saved_msg: Alterações salvas!
     copy: Copiar
     delete: Excluir
@@ -1114,6 +1160,9 @@ pt-BR:
     none: Nenhum
     order_by: Ordenar por
     save_changes: Salvar alterações
+    select_all_matching_items:
+      one: Selecione %{count} item correspondente à sua pesquisa.
+      other: Selecione todos os %{count} itens correspondentes à sua pesquisa.
     today: hoje
     validation_errors:
       one: Algo não está certo! Analise o erro abaixo
@@ -1122,6 +1171,7 @@ pt-BR:
     invalid_markup: 'contém HTML inválido: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Arquivo CSV inválido. Erro: %{error}'
       over_rows_processing_limit: contém mais de %{count} linhas
     modes:
       merge: Juntar
@@ -1215,6 +1265,8 @@ pt-BR:
     carry_blocks_over_text: Este usuário mudou de %{acct}, que você havia bloqueado.
     carry_mutes_over_text: Este usuário mudou de %{acct}, que você havia silenciado.
     copy_account_note_text: 'Este usuário saiu de %{acct}, aqui estão suas notas anteriores sobre ele:'
+  navigation:
+    toggle_menu: Alternar menu
   notification_mailer:
     admin:
       report:
@@ -1334,6 +1386,7 @@ pt-BR:
     browser: Navegador
     browsers:
       alipay: Alipay
+      blackberry: BlackBerry
       chrome: Chrome
       edge: Microsoft Edge
       electron: Electron
@@ -1347,6 +1400,7 @@ pt-BR:
       phantom_js: PhantomJS
       qq: QQ Browser
       safari: Safari
+      uc_browser: UC Browser
       weibo: Weibo
     current_session: Sessão atual
     description: "%{browser} em %{platform}"
@@ -1355,6 +1409,8 @@ pt-BR:
     platforms:
       adobe_air: Adobe Air
       android: Android
+      blackberry: BlackBerry
+      chrome_os: ChromeOS
       firefox_os: Firefox OS
       ios: iOS
       linux: Linux
@@ -1481,7 +1537,7 @@ pt-BR:
     sensitive_content: Conteúdo sensível
   strikes:
     errors:
-      too_late: É tarde demais para apelar esta violação
+      too_late: É tarde demais para solicitar uma revisão desta punição
   tags:
     does_not_match_previous_name: não corresponde ao nome anterior
   themes:
@@ -1511,13 +1567,13 @@ pt-BR:
   user_mailer:
     appeal_approved:
       action: Acessar perfil
-      explanation: O recurso contra o aviso dado à sua conta em %{strike_date} que você submeteu em %{appeal_date} foi aprovado. Sua conta está novamente em situação regular.
-      subject: Seu recurso de %{date} foi aprovado
-      title: Contestação aprovada
+      explanation: A revisão da punição na sua conta em %{strike_date} que você enviou em %{appeal_date} foi aprovada. Sua conta está novamente em situação regular.
+      subject: Sua revisão de %{date} foi aprovada
+      title: Revisão aprovada
     appeal_rejected:
-      explanation: O recurso contra o aviso dado à sua conta em %{strike_date} que você submeteu em %{appeal_date} foi rejeitado.
-      subject: Seu recurso de %{date} foi rejeitado
-      title: Contestação rejeitada
+      explanation: A revisão da punição na sua conta em %{strike_date} que você enviou em %{appeal_date} foi rejeitada.
+      subject: Sua revisão de %{date} foi rejeitada
+      title: Revisão rejeitada
     backup_ready:
       explanation: Você pediu um backup completo da sua conta no Mastodon. E agora está pronto para ser baixado!
       subject: Seu arquivo está pronto para ser baixado
@@ -1530,15 +1586,18 @@ pt-BR:
       subject: Sua conta foi acessada a partir de um novo endereço IP
       title: Um novo login
     warning:
-      appeal: Enviar uma contestação
-      appeal_description: Se você acredita que isso é um erro, você pode enviar um apelo para a equipe de %{instance}.
+      appeal: Enviar uma revisão
+      appeal_description: Se você acredita que isso é um erro, você pode enviar uma revisão para a equipe de %{instance}.
       categories:
         spam: Spam
         violation: O conteúdo viola as seguintes diretrizes da comunidade
       explanation:
         delete_statuses: Algumas de suas publicações infringiram uma ou mais diretrizes da comunidade e foram removidas pelos moderadores de %{instance}.
         disable: Você não poderá mais usar a sua conta, mas o seu perfil e outros dados permanecem intactos. Você pode solicitar um backup dos seus dados, mudar as configurações ou excluir sua conta.
+        mark_statuses_as_sensitive: Algumas de suas postagens foram marcadas como sensíveis por moderadores da %{instance}. Isso significa que as pessoas terão que clicar nas mídias em publicações antes de ser exibida uma prévia. Você pode marcar uma mídia como sensível quando postar futuramente.
         sensitive: A partir de agora, todos os seus arquivos de mídia enviados serão marcados como confidenciais e escondidos por trás de um aviso de clique.
+        silence: Você ainda pode usar a sua conta, mas apenas pessoas que já te seguem verão suas publicações nessa instância, e você poderá ser excluído de vários recursos de descoberta. No entanto, outros ainda poderão te seguir manualmente.
+        suspend: Você não pode mais usar sua conta, e seu perfil e outros dados não estão mais acessíveis. Você ainda pode fazer o login para solicitar um backup dos seus dados até eles serem completamente removidos em cerca de 30 dias, porém manteremos alguns dados básicos para prevenir que você escape da suspensão.
       reason: 'Motivo:'
       statuses: 'Publicações citadas:'
       subject:
@@ -1559,8 +1618,10 @@ pt-BR:
         suspend: Conta banida
     welcome:
       edit_profile_action: Configurar perfil
+      edit_profile_step: Você pode personalizar seu perfil enviando uma foto de perfil, mudando seu nome de exibição e mais. Você pode optar por revisar novos seguidores antes que eles possam te seguir.
       explanation: Aqui estão algumas dicas para você começar
       final_action: Comece a publicar
+      final_step: 'Comece a postar! Mesmo sem seguidores, suas postagens públicas podem ser vistas pelos outros, por exemplo, na linha do tempo local ou nas hashtags. Você pode querer fazer uma introdução usando a hashtag #introduções.'
       full_handle: Seu nome de usuário completo
       full_handle_hint: Isso é o que você compartilha com seus amigos para que eles possam te mandar mensagens ou te seguir a partir de outro servidor.
       subject: Boas-vindas ao Mastodon
diff --git a/config/locales/pt-PT.yml b/config/locales/pt-PT.yml
index a477b07d0..1f382f615 100644
--- a/config/locales/pt-PT.yml
+++ b/config/locales/pt-PT.yml
@@ -373,6 +373,8 @@ pt-PT:
       add_new: Colocar domínio na lista branca
       created_msg: Domínio foi adicionado à lista branca com sucesso
       destroyed_msg: Domínio foi removido da lista branca
+      export: Exportar
+      import: Importar
       undo: Remover da lista branca
     domain_blocks:
       add_new: Adicionar novo
@@ -382,15 +384,19 @@ pt-PT:
       edit: Editar bloqueio de domínio
       existing_domain_block: Já impôs limites mais rigorosos a %{name}.
       existing_domain_block_html: Você já impôs limites mais restritivos a %{name}, é necessário primeiro <a href="%{unblock_url}">desbloqueá-lo</a>.
+      export: Exportar
+      import: Importar
       new:
         create: Criar bloqueio
         hint: O bloqueio de dominio não vai previnir a criação de entradas na base de dados, mas irá retroativamente e automaticamente aplicar métodos de moderação específica nessas contas.
         severity:
-          desc_html: "<strong>Silenciar</strong> irá fazer com que as publicações dessa conta sejam invisíveis para quem não a segue. <strong>Supender</strong> irá eliminar todo o conteúdo guardado dessa conta, media e informação de perfil. Use <strong>Nenhum</strong> se apenas deseja rejeitar arquivos de media."
+          desc_html: "<strong>Limitar</strong> tornará as mensagens das contas neste domínio invisíveis a qualquer pessoa que não as esteja a seguir. <strong>Suspender</strong> removerá do seu servidor todo o conteúdo, media, e dados de perfil das contas deste domínio. Utilize <strong>Nenhum</strong> se apenas quiser rejeitar ficheiros media."
           noop: Nenhum
-          silence: Silenciar
+          silence: Limitar
           suspend: Suspender
         title: Novo bloqueio de domínio
+      no_domain_block_selected: Nenhum bloqueio de domínio foi alterado pois nenhum foi selecionado
+      not_permitted: Não está autorizado a executar esta ação
       obfuscate: Ofuscar nome de domínio
       obfuscate_hint: Ofuscar parcialmente o nome de domínio na lista, se estiverem habilitadas as limitações na publicação da lista de domínios
       private_comment: Comentário privado
@@ -422,6 +428,20 @@ pt-PT:
       resolved_dns_records_hint_html: O nome de domínio resolve para os seguintes domínios MX, que são, em última análise, responsáveis por aceitar o e-mail. Bloquear um domínio MX irá bloquear as inscrições de qualquer endereço de e-mail que use o mesmo domínio MX, mesmo quando o nome de domínio visível é diferente. <strong>Cuidado para não bloquear os principais provedores de e-mail.</strong>
       resolved_through_html: Resolvido através de %{domain}
       title: Domínios de e-mail bloqueados
+    export_domain_allows:
+      new:
+        title: Importar permissões de domínio
+      no_file: Nenhum ficheiro selecionado
+    export_domain_blocks:
+      import:
+        description_html: Está prestes a importar uma lista de bloqueios de domínio. Por favor, reveja esta lista com muito cuidado, especialmente se não tiver sido o autor desta lista.
+        existing_relationships_warning: Relações de seguimento existentes
+        private_comment_description_html: 'Para o ajudar a rastrear a origem dos bloqueios importados, estes serão criados com o seguinte comentário privado: <q>%{comment}</q>'
+        private_comment_template: Importado de %{source} em %{date}
+        title: Importar bloqueios de domínio
+      new:
+        title: Importar bloqueios de domínio
+      no_file: Nenhum ficheiro selecionado
     follow_recommendations:
       description_html: "<strong>Recomendações de quem seguir ajudam novos utilizadores a encontrar conteúdo interessante rapidamente.</strong>. Quando um utilizador não interage com outros o suficiente para formar recomendações personalizadas, estas contas são recomendadas. Elas são recalculadas diariamente a partir de uma mistura de contas com mais atividade recente e maior número de seguidores locais para um determinado idioma."
       language: Para o idioma
@@ -914,7 +934,7 @@ pt-PT:
     warning: Cuidado com estes dados. Não partilhar com ninguém!
     your_token: O teu token de acesso
   auth:
-    apply_for_account: Juntar-se à lista de espera
+    apply_for_account: Solicitar uma conta
     change_password: Palavra-passe
     delete_account: Eliminar conta
     delete_account_html: Se deseja eliminar a sua conta, pode <a href="%{path}">continuar aqui</a>. Uma confirmação será solicitada.
@@ -1159,6 +1179,7 @@ pt-PT:
     invalid_markup: 'contém marcação HTML inválida: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Arquivo CSV inválido. Erro: %{error}'
       over_rows_processing_limit: contém mais de %{count} linhas
     modes:
       merge: Juntar
diff --git a/config/locales/ro.yml b/config/locales/ro.yml
index c8e1d8a3e..48cf790b7 100644
--- a/config/locales/ro.yml
+++ b/config/locales/ro.yml
@@ -5,6 +5,7 @@ ro:
     contact_missing: Nesetat
     contact_unavailable: Indisponibil
     hosted_on: Mastodon găzduit de %{domain}
+    title: Despre
   accounts:
     follow: Urmărește
     followers:
@@ -45,6 +46,11 @@ ro:
         new_email: E-mail nou
         submit: Schimbă adresa de email
         title: Schimbă e-mailul pentru %{username}
+      change_role:
+        changed_msg: Rol actualizat cu succes!
+        label: Schimbare rol
+        no_role: Niciun rol
+        title: Schimbă rolul pentru %{username}
       confirm: Confirmă
       confirmed: Confirmat
       confirming: Confirmare
@@ -88,6 +94,7 @@ ro:
         active: Activ
         all: Toate
         pending: În așteptare
+        silenced: Limitat
         suspended: Suspendate
         title: Moderare
       moderation_notes: Note de moderare
@@ -95,9 +102,11 @@ ro:
       most_recent_ip: Cel mai recent IP
       no_account_selected: Nici un cont nu a fost schimbat deoarece nici unul nu a fost selectat
       no_limits_imposed: Nicio limită impusă
+      no_role_assigned: Niciun rol atribuit
       not_subscribed: Nesubscrise
       pending: În așteptare
       perform_full_suspension: Suspendate
+      previous_strikes: Atenționări anterioare
       promote: Promovează
       protocol: Protocol
       public: Public
@@ -117,6 +126,7 @@ ro:
       reset: Resetează
       reset_password: Resetează parola
       resubscribe: Resubscrie-te
+      role: Rol
       search: Caută
       search_same_email_domain: Alţi utilizatori cu acelaşi domeniu de e-mail
       search_same_ip: Alţi utilizatori cu acelaşi IP
@@ -134,6 +144,7 @@ ro:
       statuses: Stări
       strikes: Atenționări anterioare
       subscribe: Subscrie
+      suspend: Suspendă
       suspended: Suspendate
       suspension_irreversible: Datele acestui cont au fost șterse în mod ireversibil. Poți să renunți la suspnedarea contului pentru a-l face utilizabil, dar acesta nu va recupera nicio informație pe care a avut-o anterior.
       suspension_reversible_hint_html: Contul a fost suspendat și datele vor fi șterse complet pe %{date}. Până atunci, contul poate fi restabilit fără efecte adverse. Dacă dorești să ştergi imediat toate datele contului, poți face acest lucru mai jos.
@@ -154,9 +165,11 @@ ro:
       whitelisted: Excluse la blocare
     action_logs:
       action_types:
+        approve_appeal: Aprobare apel
         approve_user: Aprobă Utilizatorul
         assigned_to_self_report: Atribuie raportul
         change_email_user: Schimbă e-mailul pentru utilizator
+        change_role_user: Schimbă rolul utilizatorului
         confirm_user: Confirmare Utilizator
         create_account_warning: Crează avertisment
         create_announcement: Creează Anunț
@@ -166,6 +179,7 @@ ro:
         create_email_domain_block: Creați blocare de domeniu e-mail
         create_ip_block: Creează regulă IP
         create_unavailable_domain: Crează domeniu indisponibil
+        create_user_role: Creează Rol
         demote_user: Retrogradare Utilizatorul
         destroy_announcement: Ștergere anunț
         destroy_custom_emoji: Ștergere Zâmbet Personalizat
@@ -185,24 +199,206 @@ ro:
         enable_user: Activează Utilizator
         memorialize_account: Comemoreză Contul
         promote_user: Promovează utilizator
+        reject_appeal: Respingere apel
         reject_user: Respinge Utilizatorul
         remove_avatar_user: Elimină avatar
         reopen_report: Redeschide Raport
         reset_password_user: Resetează Parola
         resolve_report: Rezolvă Raport
         sensitive_account: Cont Sensibil
+        silence_account: Limitează cont
         suspend_account: Suspendă Cont
         unassigned_report: Raport Neasignat
+        unblock_email_account: Deblochează adresa de e-mail
+        unsilence_account: Anulează Limitarea Contului
         unsuspend_account: Anulează Suspendarea Contului
         update_announcement: Actualizare Anunț
         update_custom_emoji: Actualizare Emoji Personalizat
         update_status: Actualizează Starea
       actions:
         create_custom_emoji_html: "%{name} a încărcat noi emoji %{target}"
+      deleted_account: cont șters
+      empty: Niciun jurnal nu a fost găsit.
+      filter_by_action: Filtrează după acțiune
+      filter_by_user: Filtrează după utilizator
+      title: Jurnal de audit
     announcements:
+      destroyed_msg: Anunț șters cu succes!
+      edit:
+        title: Modifică anunțul
+      empty: Niciun anunț nu a fost găsit.
       live: În direct
       new:
         create: Creează Anunț
+        title: Anunț nou
+      publish: Publică
+      published_msg: Anunț publicat cu succes!
+      scheduled_for: Programat pentru ora %{time}
+      scheduled_msg: Publicarea anunțului va avea loc la ora programată!
+      title: Anunțuri
+      unpublish: Revocă publicarea
+      unpublished_msg: Publicarea anunțului a fost revocată cu succes!
+      updated_msg: Anunț actualizat cu succes!
+    custom_emojis:
+      assign_category: Atribuie o categorie
+      by_domain: Domeniu
+      copied_msg: Copie locală a emoticonului creată cu succes
+      copy: Copiază
+      copy_failed_msg: Nu s-a putut realiza o copie locală a acelui emoticon
+      create_new_category: Creează o categorie nouă
+      created_msg: Emoticon creat cu succes!
+      delete: Șterge
+      destroyed_msg: Emoticon distrus cu succes!
+      disable: Dezactivează
+      disabled: Dezactivat
+      disabled_msg: Emoticon dezactivat cu succes
+      emoji: Emoticon
+      enable: Activează
+      enabled: Activat
+      enabled_msg: Emoticon activat cu succes
+      image_hint: PNG sau GIF de cel mult %{size}
+      list: Listează
+      listed: Listat
+      new:
+        title: Adaugă un nou emoticon personalizat
+      no_emoji_selected: Niciun emoticon nu a fost modificat pentru că niciunul nu era selectat
+      not_permitted: Nu ai permisiunea de a efectua această acțiune
+      overwrite: Suprascrie
+      shortcode: Scurtătură
+      shortcode_hint: Cel puțin două caractere, doar caractere alfanumerice sau linii de subliniere
+      title: Emoticoane personalizate
+      uncategorized: Necategorizat
+      unlist: Nu mai lista
+      unlisted: Nelistat
+      update_failed_msg: Nu s-a putut actualiza emoticonul respectiv
+      updated_msg: Emoticon actualizat cu succes!
+      upload: Încarcă
+    email_domain_blocks:
+      delete: Șterge
+      dns:
+        types:
+          mx: Înregistrare MX
+      domain: Domeniu
+      new:
+        create: Adaugă domeniu
+        resolve: Rezolvă domeniul
+    export_domain_allows:
+      no_file: Niciun fișier selectat
+    follow_recommendations:
+      status: Stare
+    instances:
+      back_to_all: Toate
+      back_to_limited: Limitat
+      back_to_warning: Avertizare
+      by_domain: Domeniu
+      content_policies:
+        comment: Notă internă
+        policies:
+          reject_media: Respinge conținutul multimedia
+          reject_reports: Respinge raportările
+      moderation:
+        all: Toate
+        limited: Limitat
+        title: Moderare
+      private_comment: Comentariu privat
+      public_comment: Comentariu public
+      title: Federație
+      total_blocked_by_us: Blocat de către noi
+    ip_blocks:
+      expires_in:
+        '1209600': 2 săptămâni
+        '15778476': 6 luni
+        '2629746': o lună
+        '31556952': un an
+        '86400': o zi
+        '94670856': 3 ani
+      new:
+        title: Creează o regulă IP nouă
+      no_ip_block_selected: Nicio regulă IP nu a fost modificată deoarece niciuna nu era selectată
+      title: Reguli IP
+    relationships:
+      title: Relațiile lui %{acct}
+    relays:
+      delete: Șterge
+      disable: Dezactivează
+      disabled: Dezactivat
+      enable: Activează
+    reports:
+      are_you_sure: Ești sigur?
+      assign_to_self: Alocă-mi-o mie
+      assigned: Moderator alocat
+      category: Categorie
+      category_description_html: Motivul pentru care acest cont și/sau conținut a fost raportat va fi citat în comunicarea trimisă contului raportat
+      comment:
+        none: Niciunul
+      comment_description_html: 'Pentru a furniza mai multe informaţii, %{name} a scris:'
+      created_at: Raportat
+      delete_and_resolve: Șterge postările
+      forwarded: Redirecționat
+      forwarded_to: Redirecționat către %{domain}
+      mark_as_resolved: Marchează ca fiind rezolvat
+      mark_as_sensitive: Marchează ca fiind sensibil
+      mark_as_unresolved: Marchează ca fiind nerezolvat
+      no_one_assigned: Nimeni
+      notes:
+        create: Adaugă o notă
+        create_and_resolve: Rezolvă cu o notă
+        create_and_unresolve: Redeschide cu o notă
+        delete: Șterge
+        title: Note
+      reopen: Redeschide raportarea
+      report: Raportare №%{id}
+      reported_account: Contul raportat
+      reported_by: Raportat de către
+      resolved: Rezolvată
+      resolved_msg: Raportare rezolvată cu succes!
+      skip_to_actions: Treci la acțiuni
+      status: Stare
+      statuses: Conținut raportat
+      statuses_description_html: Conținutul problematic va fi citat în comunicarea trimisă contului raportat
+      target_origin: Originea contului raportat
+      title: Raportări
+      unassign: Anulează alocarea
+      unresolved: Cu rezolvare anulată
+      updated_at: Actualizată
+      view_profile: Vezi profilul
+    roles:
+      add_new: Adaugă un rol
+      categories:
+        administration: Administrație
+        devops: Dezvoltare și operațiuni
+        invites: Invitații
+        moderation: Moderare
+        special: Speciale
+      delete: Șterge
+      description_html: Folosind <strong>roluri pentru utilizatori</strong>, poți alege ce funcții și zone din Mastodon pot accesa utilizatorii tăi.
+      edit: Modifică rolul lui „%{name}”
+      everyone: Permisiuni implicite
+      everyone_full_description_html: Acesta este <strong>rolul de bază</strong> care afectează <strong>toți utilizatorii</strong>, chiar și pe cei fără un rol alocat. Toate celelalte roluri îi moștenesc permisiunile lui.
+      privileges:
+        administrator: Administrator
+        administrator_description: Utilizatorii cu această permisiune vor putea avea orice permisiune
+        delete_user_data: Șterge datele utilizatorului
+    rules:
+      title: Regulile serverului
+    settings:
+      about:
+        manage_rules: Administrează regulile serverului
+        preamble: Furnizează informații detaliate despre modul în care serverul este operat, moderat și finanțat.
+        rules_hint: Există o zonă dedicată pentru regulile pe care utilizatorii tăi ar trebui să le respecte.
+        title: Despre
+      appearance:
+        preamble: Personalizează interfața web a Mastodon.
+        title: Aspect
+      branding:
+        preamble: Elementele de marcă ale serverului tău îl diferențiază de celelalte servere din rețea. Acestea pot fi afișate într-o varietate de medii precum în interfața web a Mastodon, în aplicațiile native, în previzualizarea linkurilor pe alte site-uri web, în aplicațiile de mesagerie ș.a.m.d. Din acest motiv, este de preferat ca aceste elemente să fie clare, scurte şi concise.
+        title: Elemente de marcă
+      content_retention:
+        preamble: Controlează modul în care conținutul generat de utilizatori este stocat în Mastodon.
+        title: Retenția conținutului
+      discovery:
+        follow_recommendations: Urmează recomandările
+        profile_directory: Catalogul de profiluri
   aliases:
     add_new: Creează un alias
     created_msg: A fost creat cu succes un alias nou. Acum puteţi iniţia mutarea din vechiul cont.
diff --git a/config/locales/ru.yml b/config/locales/ru.yml
index 4ad5fc83a..8c18db2fc 100644
--- a/config/locales/ru.yml
+++ b/config/locales/ru.yml
@@ -5,6 +5,7 @@ ru:
     contact_missing: не указан
     contact_unavailable: неизв.
     hosted_on: Вы получили это сообщение, так как зарегистрированы на %{domain}
+    title: О проекте
   accounts:
     follow: Подписаться
     followers:
@@ -248,6 +249,7 @@ ru:
         create_user_role_html: "%{name} создал(а) роль %{target}"
         demote_user_html: "%{name} разжаловал(а) пользователя %{target}"
         destroy_announcement_html: "%{name} удалил(а) объявление %{target}"
+        destroy_canonical_email_block_html: "%{name} снял(а) блокировку e-mail с хэшем %{target}"
         destroy_custom_emoji_html: "%{name} удалил(а) эмодзи %{target}"
         destroy_domain_allow_html: "%{name} запретил(а) федерацию с доменом %{target}"
         destroy_domain_block_html: "%{name} снял(а) блокировку с домена %{target}"
@@ -270,6 +272,7 @@ ru:
         reject_user_html: "%{name} отклонил(а) регистрацию %{target}"
         remove_avatar_user_html: "%{name} убрал(а) аватарку пользователя %{target}"
         reopen_report_html: "%{name} повторно открыл(а) жалобу %{target}"
+        resend_user_html: "%{name} переслал письмо с подтверждением для %{target}"
         reset_password_user_html: "%{name} сбросил(а) пароль пользователя %{target}"
         resolve_report_html: "%{name} решил(а) жалобу %{target}"
         sensitive_account_html: "%{name} установил(а) отметку файлов %{target} как «деликатного характера»"
@@ -348,6 +351,11 @@ ru:
       media_storage: Медиа файлы
       new_users: новые пользователи
       opened_reports: жалоб открыто
+      pending_appeals_html:
+        few: "<strong>%{count}</strong> ожидают аппеляции"
+        many: "<strong>%{count}</strong> ожидают апелляции"
+        one: "<strong>%{count}</strong> ожидает апелляции"
+        other: "<strong>%{count}</strong> ожидают апелляций"
       pending_reports_html:
         few: "<strong>%{count}</strong> ожидающих отчета"
         many: "<strong>%{count}</strong> ожидающих отчетов"
@@ -379,6 +387,8 @@ ru:
       add_new: Внести в белый список
       created_msg: Домен добавлен в белый список
       destroyed_msg: Домен убран из белого списка
+      export: Экспорт
+      import: Импорт
       undo: Убрать из белого списка
     domain_blocks:
       add_new: Заблокировать домен
@@ -388,20 +398,19 @@ ru:
       edit: Редактировать блокировку
       existing_domain_block: Вы уже установили более строгие ограничения для %{name}.
       existing_domain_block_html: Вы уже ввели более строгие ограничения на %{name}, вам нужно <a href="%{unblock_url}">разблокировать его</a> сначала.
+      export: Экспорт
+      import: Импорт
       new:
         create: Создать блокировку
         hint: Блокировка домена не предотвратит создание новых учётных записей в базе данных, но ретроактивно и автоматически применит указанные методы модерации для этих учётных записей.
         severity:
-          desc_html: |-
-            Используйте <strong>скрытие</strong> для того, чтобы публикуемые пользователями посты перестали быть видимыми для всех, кроме их подписчиков.<br>
-            <br>
-            <strong>Блокировка</strong> удалит весь локальный контент учётных записей с этого домена, включая мультимедийные вложения и данные профилей.<br>
-            <br>
-            <strong>Ничего</strong> же попросту скроет медиаконтент с домена.
+          desc_html: "<strong>Лимит</strong> сделает посты с аккаунтов данного домена невидимым для всех, кто на них не подписан. <strong>Приостановка</strong> удалит весь контент, медиа и данные профиля с аккаунта домена на вашем сервере. Используйте <strong>Ничего</strong> если хотите отказываться от медиа файлов."
           noop: Ничего
-          silence: Скрытие
+          silence: Ограничение
           suspend: Блокировка
         title: Новая блокировка e-mail домена
+      no_domain_block_selected: Не были сделаны изменения блокирования домена, так как не выбраны
+      not_permitted: У Вас недостаточно прав для выполнения этого действия
       obfuscate: Скрыть доменное имя
       obfuscate_hint: Частично скрыть доменное имя в списке, если включена публикация списка ограничений домена
       private_comment: Приватный комментарий
@@ -429,11 +438,26 @@ ru:
       domain: Домен
       new:
         create: Создать блокировку
-        resolve: Отрезолвенные домены
+        resolve: Проверить домен
         title: Новая блокировка по домену
       no_email_domain_block_selected: Блоки домена электронной почты не были изменены, так как не были выбраны
+      resolved_dns_records_hint_html: Доменное имя устраняется на следующие MX-домены, которые в конечном итоге отвечают за прием электронной почты. Блокировка MX-домена будет блокировать регистрации с любого адреса электронной почты, который использует тот же MX-домен, даже если видимое доменное имя отличается от него. <strong>Будьте осторожны, чтобы не блокировать основных поставщиков электронной почты</strong>
       resolved_through_html: Разрешено через %{domain}
       title: Блокировка e-mail доменов
+    export_domain_allows:
+      new:
+        title: Импорт домена разрешён
+      no_file: Файл не выбран
+    export_domain_blocks:
+      import:
+        description_html: Вы собираетесь импортировать список блокировок. Пожалуйста, просмотрите список очень внимательно, если вы не сделали этот сами.
+        existing_relationships_warning: Существуют взаимоотношения в виде подписок
+        private_comment_description_html: 'Чтобы помочь вам отслеживать откуда импортируются блокировка, импортированные блокировки будут созданы со следующим приватным комментарием: <q>%{comment}</q>'
+        private_comment_template: Импортировано из %{source} %{date}
+        title: Импорт доменных блокировок
+      new:
+        title: Импорт доменных блокировок
+      no_file: Файл не выбран
     follow_recommendations:
       description_html: "<strong>Следуйте рекомендациям, чтобы помочь новым пользователям быстро находить интересный контент</strong>. Если пользователь не взаимодействовал с другими в достаточной степени, чтобы сформировать персонализированные рекомендации, вместо этого рекомендуется использовать эти учетные записи. Они пересчитываются на ежедневной основе на основе комбинации аккаунтов с наибольшим количеством недавних взаимодействий и наибольшим количеством местных подписчиков для данного языка."
       language: Для языка
@@ -459,6 +483,7 @@ ru:
       confirm_purge: Вы уверены, что хотите навсегда удалить данные с этого домена?
       content_policies:
         comment: Внутренняя заметка
+        description_html: Вы можете определить политики контента, которые будут применяться ко всем учетным записям этого домена и любого из его субдоменов.
         policies:
           reject_media: Отклонить медиа
           reject_reports: Отклонять жалобы
@@ -474,6 +499,7 @@ ru:
         instance_follows_measure: их подписчики тут
         instance_languages_dimension: Популярные языки
         instance_media_attachments_measure: сохраненные медиафайлы
+        instance_reports_measure: сообщить о них
         instance_statuses_measure: сохраненные посты
       delivery:
         all: Все
@@ -564,9 +590,11 @@ ru:
       actions:
         delete_description_html: Обжалованные сообщения будут удалены, а претензия - записана, чтобы помочь вам в решении конфликтов при повторных нарушениях со стороны того же аккаунта.
         mark_as_sensitive_description_html: Весь медиаконтент в обжалованных сообщениях будет отмечен как чувствительный, а претензия - записана, чтобы помочь вам в решении конфликтов при повторных нарушениях со стороны того же аккаунта.
+        other_description_html: Посмотрите больше настроек для контроля поведения учётной записи и наладьте связь с аккаунтом с жалобой.
         resolve_description_html: Никаких действий не будет выполнено относительно доложенного содержимого. Жалоба будет закрыта.
         silence_description_html: Профиль будет просматриваем только пользователями, которые уже подписаны на него, либо открыли его вручную. Это действие можно отменить в любой момент.
         suspend_description_html: Профиль и всё опубликованное в нём содержимое станут недоступны, пока в конечном итоге учётная запись не будет удалена. Пользователи не смогут взаимодействовать с этой учётной записью. Это действие можно отменить в течение 30 дней.
+      actions_description_html: Выберите действие, чтобы решить данную жалобу. Если вы выберите наказание против аккаунта, вы получите уведомление по E-Mail, проверяйте папку <strong>Спам</strong>.
       add_to_report: Прикрепить ещё
       are_you_sure: Вы уверены?
       assign_to_self: Назначить себе
@@ -593,6 +621,7 @@ ru:
         placeholder: Опишите, какие действия были приняты, или любые другие подробности…
         title: Примечания
       notes_description_html: Просмотрите или оставьте примечания для остальных модераторов и себя в будущем
+      quick_actions_description_html: 'Выберите действие или прокрутите вниз, чтобы увидеть контент с жалобой:'
       remote_user_placeholder: удаленный пользователь из %{instance}
       reopen: Переоткрыть жалобу
       report: Жалоба №%{id}
@@ -619,6 +648,7 @@ ru:
         other: "%{count} пользователей"
       categories:
         administration: Администрация
+        devops: DevOps
         invites: Приглашения
         moderation: Модерация
         special: Особые
@@ -644,14 +674,35 @@ ru:
         manage_appeals: Управление апелляциями
         manage_appeals_description: Позволяет пользователям просматривать апелляции на действия модерации
         manage_blocks: Управление блоками
+        manage_blocks_description: Позволяет пользователям блокировать домены электронной почты и IP адреса
         manage_custom_emojis: Управление смайлами
         manage_custom_emojis_description: Позволяет пользователям управлять пользовательскими эмодзи на сервере
         manage_federation: Управление Федерацией
         manage_federation_description: Позволяет пользователям блокировать или разрешить объединение с другими доменами и контролировать возможность доставки
         manage_invites: Управление приглашениями
+        manage_invites_description: Позволяет пользователям просматривать и деактивировать пригласительные ссылки
+        manage_reports: Управление жалобами
+        manage_reports_description: Позволяет пользователям просматривать жалобы и осуществлять модерацию по ним
+        manage_roles: Управление ролями
+        manage_roles_description: Разрешает пользователям управлять ролями и назначать их
+        manage_rules: Управление правилами
+        manage_rules_description: Разрешает пользователям изменять правила на сервере
+        manage_settings: Управление параметрами
+        manage_settings_description: Разрешает пользователям управлять параметрами сайта
+        manage_taxonomies: Управление трендами
+        manage_taxonomies_description: Позволяет пользователям модерировать список популярного контента и менять настройки хэштегов
+        manage_user_access: Управление правами пользователей
+        manage_user_access_description: Разрешает пользователям отключать двухэтапную аутентификацию другим пользователям, изменять их адрес электронной почты и сбрасывать их пароль
+        manage_users: Управление пользователями
+        manage_users_description: Разрешает пользователям просматривать информацию о других пользователях и применять против них модерацию
+        manage_webhooks: Управление веб-хуками
+        manage_webhooks_description: Разрешает пользователям настраивать веб-хуки для административных событий
         view_audit_log: Посмотреть журнал аудита
         view_audit_log_description: Позволяет пользователям просматривать историю административных действий на сервере
         view_dashboard: Открыть панель управления
+        view_dashboard_description: Разрешает пользователям просматривать статистику сервера
+        view_devops: DevOps
+        view_devops_description: Разрешить пользователям доступ к панелям Sidekiq и pgHero
       title: Роли
     rules:
       add_new: Добавить правило
@@ -661,15 +712,39 @@ ru:
       empty: Правила сервера еще не определены.
       title: Правила сервера
     settings:
+      about:
+        manage_rules: Управление правилами на сервере
+        preamble: Предоставьте подробную информацию как сервер работает, модерируется, финансируется.
+        rules_hint: Это отдельное место для правил, которыми должны руководствоваться пользователи.
+        title: О нас
+      appearance:
+        preamble: Настройте веб-интерфейс Мастодона.
+        title: Внешний вид
+      branding:
+        preamble: Брендинг вашего сервера отличает его от других серверов сети. Эта информация может отображаться в различных средах, таких как веб-интерфейс Mastodon, нативные приложения, в виде предпросмотра ссылок на других веб-сайтах, в почтовых приложениях и так далее. По этой причине лучше держать эту информацию ясной, короткой и краткой.
+        title: Брендинг
+      content_retention:
+        preamble: Управление сохранением пользовательского контента в Mastodon.
+        title: Хранение контента
+      discovery:
+        follow_recommendations: Рекомендации подписок
+        profile_directory: Каталог профилей
+        public_timelines: Публичные ленты
+        title: Обзор
+        trends: Популярное
       domain_blocks:
         all: Всем
         disabled: Никому
         users: Залогиненным локальным пользователям
+      registrations:
+        preamble: Контролируйте, кто может создать учетную запись на вашем сервере.
+        title: Регистрации
       registrations_mode:
         modes:
           approved: Для регистрации требуется подтверждение
           none: Никто не может регистрироваться
           open: Все могут регистрироваться
+      title: Настройки Сервера
     site_uploads:
       delete: Удалить загруженный файл
       destroyed_msg: Файл успешно удалён.
@@ -690,6 +765,10 @@ ru:
         title: Файлы мультимедиа
       metadata: Метаданные
       no_status_selected: Ничего не изменилось, так как ни один пост не был выделен
+      open: Открыть запись
+      original_status: Оригинальный пост
+      reblogs: Продвинули
+      status_changed: Пост изменен
       title: Посты пользователя
       trending: Популярное
       visibility: Видимость
@@ -702,6 +781,7 @@ ru:
         none: "%{name} отправил(а) предупреждение %{target}"
         sensitive: "%{name} отметил(а) учетную запись %{target} как деликатную"
         silence: "%{name} ограничил(а) учетную запись %{target}"
+        suspend: "%{name} приостановил аккаунт %{target}"
       appeal_approved: Обжаловано
       appeal_pending: Обжалование в обработке
     system_checks:
@@ -728,9 +808,12 @@ ru:
       links:
         allow: Разрешить ссылку
         allow_provider: Разрешить издание
+        description_html: Это ссылки, которыми в настоящее время много пользуются аккаунты, с которых ваш сервер видит сообщения. Это может помочь вашим пользователям узнать, что происходит в мире. Никакие ссылки не отображаются публично, пока вы не одобрите издателя. Вы также можете разрешить или отклонить индивидуальные ссылки.
         disallow: Запретить ссылку
         disallow_provider: Отклонить издание
         no_link_selected: Ссылки не были изменены, так как не были выбраны ни один
+        publishers:
+          no_publisher_selected: Ничего не изменилось, так как ни один издатель не был выбран
         shared_by_over_week:
           few: Поделилось %{count} человека за последнюю неделю
           many: Поделилось %{count} человек за последнюю неделю
@@ -742,6 +825,7 @@ ru:
       pending_review: Ожидает рассмотрения
       preview_card_providers:
         allowed: Ссылки этого издания могут отображаться в «актуальном»
+        description_html: Это домены, ссылки на которых часто используются на вашем сервере. Ссылки не будут публично прослеживаться до тех пор, пока домен ссылки не будет одобрен. Ваше одобрение (или отклонение) будет распространяться на субдомены.
         rejected: Ссылки этого издания не будут отображаться в «актуальном»
         title: Издатели
       rejected: Отклонённые
@@ -762,6 +846,7 @@ ru:
           tag_accounts_measure: уникальных использований
           tag_languages_dimension: Популярные языки
           tag_servers_dimension: Самые популярные серверы
+          tag_servers_measure: разные сервера
           tag_uses_measure: всего использований
         listable: Может предлагаться
         not_listable: Не будет предлагаться
@@ -811,10 +896,15 @@ ru:
   admin_mailer:
     new_appeal:
       actions:
+        delete_statuses: удалить их посты
+        disable: заморозить их аккаунт
+        mark_statuses_as_sensitive: пометить их посты как деликатного содержимого
         none: предупреждение
+        sensitive: пометить их аккаунт как деликатного характера
         silence: ограничить учётную запись
         suspend: приостановить действие учётной записи
       body: "%{target} обжалуют решение модератора %{action_taken_by} от %{date}, которое %{type}. Они написали:"
+      next_steps: Вы можете одобрить апелляцию на отмену решения модерации или проигнорировать её.
       subject: "%{username} обжалует решение модерации на %{instance}"
     new_pending_account:
       body: Ниже указана информация учётной записи. Вы можете одобрить или отклонить заявку.
@@ -867,7 +957,7 @@ ru:
     warning: Будьте очень внимательны с этими данными. Не делитесь ими ни с кем!
     your_token: Ваш токен доступа
   auth:
-    apply_for_account: Подать заявку
+    apply_for_account: Запросить аккаунт
     change_password: Пароль
     delete_account: Удалить учётную запись
     delete_account_html: Удалить свою учётную запись <a href="%{path}">можно в два счёта здесь</a>, но прежде у вас будет спрошено подтверждение.
@@ -985,6 +1075,7 @@ ru:
       approve_appeal: Одобрить обжалование
       associated_report: Связанные обращения
       created_at: Дата
+      description_html: Это действия против вашей учетной записи и предупреждения, которые были отправлены вам сотрудниками %{instance}.
       recipient: Адресовано
       reject_appeal: Отклонить обжалование
       status: 'Пост #%{id}'
@@ -1052,6 +1143,7 @@ ru:
       add_keyword: Добавить ключевое слово
       keywords: Ключевые слова
       statuses: Отдельные сообщения
+      statuses_hint_html: Этот фильтр применяется для выбора отдельных постов, независимо от того, соответствуют ли они ключевым словам ниже. <a href="%{path}">Просмотрите или удалите посты из фильтра</a>.
       title: Изменить фильтр
     errors:
       deprecated_api_multiple_keywords: Эти параметры нельзя изменить из этого приложения, так как применяются к более чем одному ключевому слову фильтра. Используйте более последнее приложение или веб-интерфейс.
@@ -1067,6 +1159,16 @@ ru:
         many: "%{count} ключевых слов"
         one: "%{count} ключевое слово"
         other: "%{count} ключевых слов"
+      statuses:
+        few: "%{count} поста"
+        many: "%{count} постов"
+        one: "%{count} пост"
+        other: 'Постов: %{count}'
+      statuses_long:
+        few: Скрыто %{count} отдельных поста
+        many: Скрыто %{count} отдельных постов
+        one: Скрыт %{count} отдельный пост
+        other: 'Скрыто отдельных постов: %{count}'
       title: Фильтры
     new:
       save: Сохранить новый фильтр
@@ -1075,6 +1177,9 @@ ru:
       back_to_filter: Вернуться к фильтру
       batch:
         remove: Удалить из фильтра
+      index:
+        hint: Этот фильтр применяется для выбора отдельных постов, независимо от других критериев. Вы можете добавить больше записей в этот фильтр из веб-интерфейса.
+        title: Отфильтрованные посты
   footer:
     trending_now: Актуально сейчас
   generic:
@@ -1082,6 +1187,7 @@ ru:
     changes_saved_msg: Изменения успешно сохранены!
     copy: Копировать
     delete: Удалить
+    deselect: Снять выделение
     none: Ничего
     order_by: Сортировка
     save_changes: Сохранить изменения
@@ -1095,6 +1201,7 @@ ru:
     invalid_markup: 'невалидная разметка HTML: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Неверный файл CSV. Ошибка: %{error}'
       over_rows_processing_limit: содержит более %{count} строк
     modes:
       merge: Объединить
@@ -1311,6 +1418,7 @@ ru:
     browser: Браузер
     browsers:
       alipay: Alipay
+      blackberry: Blackberry
       chrome: Chrome
       edge: Microsoft Edge
       electron: Electron
@@ -1324,6 +1432,7 @@ ru:
       phantom_js: PhantomJS
       qq: QQ Browser
       safari: Safari
+      uc_browser: UC Browser
       weibo: Weibo
     current_session: Текущая сессия
     description: "%{browser} на %{platform}"
@@ -1332,6 +1441,8 @@ ru:
     platforms:
       adobe_air: Adobe Air
       android: Android
+      blackberry: BlackBerry
+      chrome_os: ChromeOS
       firefox_os: Firefox OS
       ios: iOS
       linux: Linux
@@ -1549,8 +1660,10 @@ ru:
         suspend: Учётная запись заблокирована
     welcome:
       edit_profile_action: Настроить профиль
+      edit_profile_step: Вы можете настроить свой профиль добавляя аватарку, изменяя отображаемое имя и так далее. Вы можете вручную подтверждать подписчиков, перед тем как им будет разрешено подписаться на вас.
       explanation: Вот несколько советов для новичков
       final_action: Начать постить
+      final_step: 'Начинайте постить! Даже без подписчиков, ваши публичные посты могут быть увиденными другими, например в локальной ленте или в хештегах. Вы можете представиться с хэштегом #introductions.'
       full_handle: Ваше обращение
       full_handle_hint: То, что Вы хотите сообщить своим друзьям, чтобы они могли написать Вам или подписаться с другого узла.
       subject: Добро пожаловать в Mastodon
diff --git a/config/locales/sc.yml b/config/locales/sc.yml
index 00ccd22db..3c6149be1 100644
--- a/config/locales/sc.yml
+++ b/config/locales/sc.yml
@@ -295,9 +295,7 @@ sc:
         create: Crea unu blocu
         hint: Su blocu de domìniu no at a impedire sa creatzione de contos noos in sa base de datos, ma ant a èssere aplicados in manera retroativa mètodos de moderatzione ispetzìficos subra custos contos.
         severity:
-          desc_html: "<strong>A sa muda</strong> at a pònnere is messàgios de custos contos comente invisìbiles a sa gente chi no ddos siat sighende. <strong>Sa suspensione</strong> at a cantzellare totu su cuntenutu de su contu, elementos multimediales e datos de profilu. Imprea <strong>Perunu</strong> si boles isceti refudare is archìvios multimediales."
           noop: Perunu
-          silence: A sa muda
           suspend: Suspensione
         title: Blocu de domìniu nou
       obfuscate: Cua su nòmine de domìniu
diff --git a/config/locales/sco.yml b/config/locales/sco.yml
new file mode 100644
index 000000000..a07f76ebf
--- /dev/null
+++ b/config/locales/sco.yml
@@ -0,0 +1,874 @@
+---
+sco:
+  about:
+    about_mastodon_html: 'The social network o wir future: Nae adverts, nae corporate surveillance; ethical design, an decentralization! Ain yer ain data wi Mastodon!'
+    contact_missing: No set
+    contact_unavailable: N/A
+    hosted_on: Mastodon hostit on %{domain}
+    title: Aboot
+  accounts:
+    follow: Follae
+    followers:
+      one: Follaer
+      other: Follaers
+    following: Follaein
+    instance_actor_flash: This accoont is a virtual actor uised tae represent the server itsel an no onie individual uiser. It is uised fir federation purposes an shuidnae be suspendit.
+    last_active: last active
+    link_verified_on: Ainership o this link wis checkt on %{date}
+    nothing_here: There naethin here!
+    pin_errors:
+      following: Ye hae tae awriddy be follaein the person thit ye'r wantin tae endorse
+    posts:
+      one: Post
+      other: Posts
+    posts_tab_heading: Posts
+  admin:
+    account_actions:
+      action: Perform action
+      title: Perform moderation action on %{acct}
+    account_moderation_notes:
+      create: Lea note
+      created_msg: Moderation note successfully makkit!
+      destroyed_msg: Moderation note successfully destroyed!
+    accounts:
+      add_email_domain_block: Dingie email domain
+      approve: Approve
+      approved_msg: Successfully approvit %{username}'s sign-up application
+      are_you_sure: Ye sure?
+      avatar: Avatar
+      by_domain: Domain
+      change_email:
+        changed_msg: Email successfully chynged!
+        current_email: Current email
+        label: Chynge email
+        new_email: New email
+        submit: Chynge email
+        title: Chynge email fir %{username}
+      change_role:
+        changed_msg: Role successfully chynged!
+        label: Chynge role
+        no_role: Nae role
+        title: Chynge role fir %{username}
+      confirm: Mak siccar
+      confirmed: Makkit siccar
+      confirming: Makkin siccar
+      custom: Custom
+      delete: Delete data
+      deleted: Deletit
+      demote: Demote
+      destroyed_msg: "%{username}'s data is noo queued fir tae be deletit the noo"
+      disable: Freeze
+      disable_sign_in_token_auth: Turn aff email token authentication
+      disable_two_factor_authentication: Turn aff 2FA
+      disabled: Froze
+      display_name: Display nemm
+      domain: Domain
+      edit: Edit
+      email: Email
+      email_status: Email status
+      enable: Unfreeze
+      enable_sign_in_token_auth: Turn on email token authentication
+      enabled: Turnt on
+      enabled_msg: Successfully unfroze %{username}'s accoont
+      followers: Follaers
+      follows: Follaes
+      header: Heider
+      inbox_url: Inbox URL
+      invite_request_text: Raisons fir jynin
+      invited_by: Invitit bi
+      ip: IP
+      joined: Jynt
+      location:
+        all: Aw
+        local: Local
+        remote: Remote
+        title: Location
+      login_status: Login status
+      media_attachments: Media attachments
+      memorialize: Turn intae memorial
+      memorialized: Memorialized
+      memorialized_msg: Successfully turnt %{username} intae a memorial accoont
+      moderation:
+        active: Active
+        all: Aw
+        pending: Pendin
+        silenced: Limitit
+        suspended: Suspendit
+        title: Moderation
+      moderation_notes: Moderation notes
+      most_recent_activity: Maist recent activity
+      most_recent_ip: Maist recent IP
+      no_account_selected: Nae accoonts wis chynged as naen wis selectit
+      no_limits_imposed: Nae limits imposed
+      no_role_assigned: Nae role assignt
+      not_subscribed: No subscribed
+      pending: Pendin review
+      perform_full_suspension: Suspend
+      previous_strikes: Previous strikes
+      previous_strikes_description_html:
+        one: This accoont haes <strong>ae</strong> strike.
+        other: This accoont haes <strong>%{count}</strong> strikes.
+      promote: Promote
+      protocol: Protocol
+      public: Public
+      push_subscription_expires: PuSH subscription expires
+      redownload: Refresh profile
+      redownloaded_msg: Successfully refreshed %{username}'s profile fae origin
+      reject: Rejeck
+      rejected_msg: Successfully rejectit %{username}'s sign-up application
+      remove_avatar: Remove avatar
+      remove_header: Tak aff heider
+      removed_avatar_msg: Successfully taen aff %{username}'s avatar image
+      removed_header_msg: Successfully taen aff %{username}'s heider image
+      resend_confirmation:
+        already_confirmed: This uiser is awriddy confirmt
+        send: Resen confirmation email
+        success: Confirmation email successfully sent!
+      reset: Reset
+      reset_password: Reset passwird
+      resubscribe: Resubscribe
+      role: Role
+      search: Seirch
+      search_same_email_domain: Ither uisers wi the same email domain
+      search_same_ip: Ither uisers wi the same IP
+      security_measures:
+        only_password: Ainly passwird
+        password_and_2fa: Passwird an 2FA
+      sensitive: Force-sensitive
+      sensitized: Mairked as sensitive
+      shared_inbox_url: Shared inbox URL
+      show:
+        created_reports: Made clypes
+        targeted_reports: Clyped on bi ithers
+      silence: Limit
+      silenced: Limitit
+      statuses: Posts
+      strikes: Previous strikes
+      subscribe: Subscribe
+      suspend: Suspend
+      suspended: Suspendit
+      suspension_irreversible: The data o this accoont haes been irreversibly deletit. Ye kin unsuspend the accoont fir tae mak it uisable but it wullnae recover onie data it haed afore.
+      suspension_reversible_hint_html: The accoont haes been suspendit, an the data wull be fully removed on %{date}. Tae then, the accoont kin be restored athoot onie ill effecks. Gin ye'r wantin tae remove aw the accoont's data the noo, ye kin dae it ablow.
+      title: Accoonts
+      unblock_email: Undingie email address
+      unblocked_email_msg: Successfully undingied %{username}'s email address
+      unconfirmed_email: Email no confirmt
+      undo_sensitized: Undae force-sensitive
+      undo_silenced: Undae limit
+      undo_suspension: Undae suspension
+      unsilenced_msg: Successfully unduin the limitin o %{username}'s accoont
+      unsubscribe: Unsubscribe
+      unsuspended_msg: Successfully unsuspendit %{username}'s accoont
+      username: Uisernemm
+      view_domain: Deek at summary fir domain
+      warn: Warn
+      web: Wab
+      whitelisted: Allooed fir federation
+    action_logs:
+      action_types:
+        approve_appeal: Approve Appeal
+        approve_user: Approve Uiser
+        assigned_to_self_report: Assign Clype
+        change_email_user: Chynge Email fir Uiser
+        change_role_user: Chynge Role o Uiser
+        confirm_user: Confirm Uiser
+        create_account_warning: Mak Warnin
+        create_announcement: Mak Annooncement
+        create_canonical_email_block: Mak a Email Dingie
+        create_custom_emoji: Mak Custom Emoji
+        create_domain_allow: Mak Domain Alloo
+        create_domain_block: Mak Domain Dingie
+        create_email_domain_block: Mak Email Domain Dingie
+        create_ip_block: Mak IP rule
+        create_unavailable_domain: Mak Unavailable Domain
+        create_user_role: Mak Role
+        demote_user: Demote Uiser
+        destroy_announcement: Delete Annooncement
+        destroy_canonical_email_block: Delete Email Dingie
+        destroy_custom_emoji: Delete Custom Emoji
+        destroy_domain_allow: Delete Domain Alloo
+        destroy_domain_block: Delete Domain Dingie
+        destroy_email_domain_block: Delete Email Domain Dingie
+        destroy_instance: Purge Domain
+        destroy_ip_block: Delete IP rule
+        destroy_status: Delete Post
+        destroy_unavailable_domain: Delete Unavailable Domain
+        destroy_user_role: Destroy Role
+        disable_2fa_user: Disable 2FA
+        disable_custom_emoji: Disable Custom Emoji
+        disable_sign_in_token_auth_user: Disable Email Token Authentication fir Uiser
+        disable_user: Turn aff Uiser
+        enable_custom_emoji: Turn on Custom Emoji
+        enable_sign_in_token_auth_user: Turn on Email Token Authentication fir Uiser
+        enable_user: Turn on Uiser
+        memorialize_account: Memorialize Accoont
+        promote_user: Promote Uiser
+        reject_appeal: Rejeck Appeal
+        reject_user: Rejeck Uiser
+        remove_avatar_user: Tak doon Avatar
+        reopen_report: Reopen Clype
+        resend_user: Resen Confirmation Email
+        reset_password_user: Reset Passwird
+        resolve_report: Sort Clype
+        sensitive_account: Force-Sensitive Accoont
+        silence_account: Limit Accoont
+        suspend_account: Suspend Accoont
+        unassigned_report: Unassign Clype
+        unblock_email_account: Undingie email address
+        unsensitive_account: Undae Force-Sensitive Accoont
+        unsilence_account: Undae Limit Accoont
+        unsuspend_account: Unsuspend Accoont
+        update_announcement: Update Annooncement
+        update_custom_emoji: Update Custom Emoji
+        update_domain_block: Update Domain Dingie
+        update_ip_block: Update IP rule
+        update_status: Update Post
+        update_user_role: Update Role
+      actions:
+        approve_appeal_html: "%{name} approved moderation decision appeal fae %{target}"
+        approve_user_html: "%{name} approved sign-up fae %{target}"
+        assigned_to_self_report_html: "%{name} assigned clype %{target} tae theirsels"
+        change_email_user_html: "%{name} chynged the email address o uiser %{target}"
+        change_role_user_html: "%{name} chynged the role o %{target}"
+        confirm_user_html: "%{name} confirmt email address o uiser %{target}"
+        create_account_warning_html: "%{name} sent a warnin tae %{target}"
+        create_announcement_html: "%{name} creatit new annooncement %{target}"
+        create_canonical_email_block_html: "%{name} dingied email wi the hash %{target}"
+        create_custom_emoji_html: "%{name} uploadit new emoji %{target}"
+        create_domain_allow_html: "%{name} allooed federation wi domain %{target}"
+        create_domain_block_html: "%{name} dingied domain %{target}"
+        create_email_domain_block_html: "%{name} dingied email domain %{target}"
+        create_ip_block_html: "%{name} creatit rule fir IP %{target}"
+        create_unavailable_domain_html: "%{name} stapt delivery tae domain %{target}"
+        create_user_role_html: "%{name} creatit %{target} role"
+        demote_user_html: "%{name} demotit uiser %{target}"
+        destroy_announcement_html: "%{name} deletit annooncement %{target}"
+        destroy_canonical_email_block_html: "%{name} undingied email wi the hash %{target}"
+        destroy_custom_emoji_html: "%{name} deletit emoji %{target}"
+        destroy_domain_allow_html: "%{name} disallooed federation wi domain %{target}"
+        destroy_domain_block_html: "%{name} undingied domain %{target}"
+        destroy_email_domain_block_html: "%{name} undingied email domain %{target}"
+        destroy_instance_html: "%{name} purged domain %{target}"
+        destroy_ip_block_html: "%{name} deletit rule fir IP %{target}"
+        destroy_status_html: "%{name} taen doon post bi %{target}"
+        destroy_unavailable_domain_html: "%{name} restertit delivery tae domain %{target}"
+        destroy_user_role_html: "%{name} deletit %{target} role"
+        disable_2fa_user_html: "%{name} turnt aff twa factor requirement fir uiser %{target}"
+        disable_custom_emoji_html: "%{name} turnt aff emoji %{target}"
+        disable_sign_in_token_auth_user_html: "%{name} turnt aff email token authentication fir %{target}"
+        disable_user_html: "%{name} turnt aff login fir uiser %{target}"
+        enable_custom_emoji_html: "%{name} turnt on emoji %{target}"
+        enable_sign_in_token_auth_user_html: "%{name} turnt on email token authentication fir %{target}"
+        enable_user_html: "%{name} turnt on login fir uiser %{target}"
+        memorialize_account_html: "%{name} pit %{target}'s accoont ower intae a memorial page"
+        promote_user_html: "%{name} promotit uiser %{target}"
+        reject_appeal_html: "%{name} rejectit moderation decision appeal fae %{target}"
+        reject_user_html: "%{name} rejectit sign-up fae %{target}"
+        remove_avatar_user_html: "%{name} taen doon %{target}'s avatar"
+        reopen_report_html: "%{name} reopent clype %{target}"
+        resend_user_html: "%{name} resent confirmation email fir %{target}"
+        reset_password_user_html: "%{name} reset passwird fir uiser %{target}"
+        resolve_report_html: "%{name} resolved clype %{target}"
+        sensitive_account_html: "%{name} mairked %{target}'s media as sensitive"
+        silence_account_html: "%{name} limitit %{target}'s accoont"
+        suspend_account_html: "%{name} suspendit %{target}'s accoont"
+        unassigned_report_html: "%{name} unassigned clype %{target}"
+        unblock_email_account_html: "%{name} undingied %{target}'s email address"
+        unsensitive_account_html: "%{name} unmairked %{target}'s media as sensitive"
+        unsilence_account_html: "%{name} undid limit o %{target}'s accoont"
+        unsuspend_account_html: "%{name} unsuspendit %{target}'s accoont"
+        update_announcement_html: "%{name} updatit annooncement %{target}"
+        update_custom_emoji_html: "%{name} updatit emoji %{target}"
+        update_domain_block_html: "%{name} updatit domain dingie fir %{target}"
+        update_ip_block_html: "%{name} chynged rule fir IP %{target}"
+        update_status_html: "%{name} updatit post bi %{target}"
+        update_user_role_html: "%{name} chynged %{target} role"
+      deleted_account: deletit accoont
+      empty: Nae logs fun.
+      filter_by_action: Filter bi action
+      filter_by_user: Filter bi uiser
+      title: Audit log
+    announcements:
+      destroyed_msg: Annooncement successfully deletit!
+      edit:
+        title: Edit annooncement
+      empty: Nae annooncements fun.
+      live: Live
+      new:
+        create: Mak annooncement
+        title: New annooncement
+      publish: Publish
+      published_msg: Annooncement successfully published!
+      scheduled_for: Schedult fir %{time}
+      scheduled_msg: Annooncement schedult fir publication!
+      title: Annooncements
+      unpublish: Unpublish
+      unpublished_msg: Annooncement successfully unpublished!
+      updated_msg: Annooncement successfully updatit!
+    custom_emojis:
+      assign_category: Assign caitegory
+      by_domain: Domain
+      copied_msg: Successfully creatit local copy o the emoji
+      copy: Copy
+      copy_failed_msg: Cuidnae mak a local copy o that emoji
+      create_new_category: Mak new category
+      created_msg: Emoji successfully creatit!
+      delete: Delete
+      destroyed_msg: Emoji successfully destroyit!
+      disable: Turn aff
+      disabled: Turnt aff
+      disabled_msg: Successfully turnt aff that emoji
+      emoji: Emoji
+      enable: Turn on
+      enabled: Turnt on
+      enabled_msg: Successfully turnt on that emoji
+      image_hint: PNG or GIF up tae %{size}
+      list: List
+      listed: Listit
+      new:
+        title: Add new custom emoji
+      no_emoji_selected: Nae emojis wis chynged as naen wis selectit
+      not_permitted: Ye'r no permittit fir tae dae this action
+      overwrite: Owerwrite
+      shortcode: Shortcode
+      shortcode_hint: At least 2 chairacters, ainly alphanumeric chairacters an unnerscores
+      title: Custom emoji
+      uncategorized: No categorized
+      unlist: Unlist
+      unlisted: Unlistit
+      update_failed_msg: Cuidnae update that emoji
+      updated_msg: Emoji successfully updatit!
+      upload: Upload
+    dashboard:
+      active_users: active uisers
+      interactions: interactions
+      media_storage: Media storage
+      new_users: new uisers
+      opened_reports: clypes opent
+      pending_appeals_html:
+        one: "<strong>%{count}</strong> pendin appeal"
+        other: "<strong>%{count}</strong> pendin appeals"
+      pending_reports_html:
+        one: "<strong>%{count}</strong> pendin clype"
+        other: "<strong>%{count}</strong> pendin clypes"
+      pending_tags_html:
+        one: "<strong>%{count}</strong> pendin hashtag"
+        other: "<strong>%{count}</strong> pendin hashtags"
+      pending_users_html:
+        one: "<strong>%{count}</strong> pendin uiser"
+        other: "<strong>%{count}</strong> pendin uisers"
+      resolved_reports: clypes resolvit
+      software: Saftware
+      sources: Sign-up soorces
+      space: Space uisage
+      title: Dashboord
+      top_languages: Tap active leids
+      top_servers: Tap active servers
+      website: Wabsteid
+    disputes:
+      appeals:
+        empty: Nae appeals fun.
+        title: Appeals
+    domain_allows:
+      add_new: Alloo federation wi domain
+      created_msg: Domain haes been successfully allooed fir federation
+      destroyed_msg: Domain haes been disallooed fae federation
+      export: Export
+      import: Import
+      undo: Disalloo federation wi domain
+    domain_blocks:
+      add_new: Add new domain dingie
+      created_msg: Domain dingie is noo gettin processed
+      destroyed_msg: Domain dingie haes been unduin
+      domain: Domain
+      edit: Edit domain dingie
+      existing_domain_block: Ye'v awriddy pitten stricter limits on %{name}.
+      existing_domain_block_html: Ye'v awriddy pitten stricter limits on %{name}, ye need tae <a href="%{unblock_url}">undingie it</a> furst.
+      export: Export
+      import: Import
+      new:
+        create: Mak dingie
+        hint: The domain dingie wullnae stap the makkin o accoont entries in the database, but wull retroactively an automatically apply specific moderation methods on thae accoonts.
+        severity:
+          desc_html: "<strong>Limit</strong> wull mak posts fae accoonts at this domain invisible tae oniebody thit isnae follaein them. <strong>Suspend</strong> wull tak doon aw content, media, an profile data fir this domain's accoonts fae yer server. Uise <strong>Naen</strong> if ye juist want tae reject media files."
+          noop: Naen
+          silence: Limit
+          suspend: Suspend
+        title: New domain dingie
+      no_domain_block_selected: Nae domain dingies wis chynged as naen wis selectit
+      not_permitted: Ye urnae permittit tae dae this action
+      obfuscate: Obfuscate domain nemm
+      obfuscate_hint: Pairtly obfuscate the domain nemm in the list if advertisin the list o domain limitations is turnt on
+      private_comment: Private comment
+      private_comment_hint: Comment aboot this domain limitation fir internal uise bi the moderators.
+      public_comment: Public comment
+      public_comment_hint: Comment aboot this domain limitation fir the general public, if advertisin the list of domain limitations is turnt on.
+      reject_media: Rejeck media files
+      reject_media_hint: Taks doon locally stored media files an refuses tae doonload onie in the future. Irrelevant fir suspensions
+      reject_reports: Rejeck clypes
+      reject_reports_hint: Ignore aw clypes comin fae this domain. Irrelevant fir suspensions
+      undo: Undae domain dingie
+      view: Luik at domain dingie
+    email_domain_blocks:
+      add_new: Add new
+      attempts_over_week:
+        one: "%{count} attempt ower the last week"
+        other: "%{count} sign-up attempts ower the last week"
+      created_msg: Successfully dingied email domain
+      delete: Delete
+      dns:
+        types:
+          mx: MX record
+      domain: Domain
+      new:
+        create: Add domain
+        resolve: Resolve domain
+        title: Dingie new email domain
+      no_email_domain_block_selected: Nae email domain dingies got chynged as naen wis selectit
+      resolved_dns_records_hint_html: The domain nemm resolves tae the follaein MX domains, thit ur ultimately responsible fir acceptin email. Dingiein a MX domain wull dingie sign-ups fae onie email address thit uises the same MX domain, even if the visible domain name is different. <strong>Caw canny no tae dingie major email providers.</strong>
+      resolved_through_html: Resolvit throu %{domain}
+      title: Dingied email domains
+    export_domain_allows:
+      new:
+        title: Import domain alloos
+      no_file: Nae file selectit
+    export_domain_blocks:
+      import:
+        description_html: Ye'r aboot tae import a list o domain dingies. Please luik ower this list affa carefu like, especially if ye didnae write this list yersel.
+        existing_relationships_warning: Existin follae relationships
+        private_comment_description_html: 'Tae help ye track whaur importit dingies come fae, importit dingies wull be makkit wi the follaein private comment: <q>%{comment}</q>'
+        private_comment_template: Importit fae %{source} on %{date}
+        title: Import domain dingies
+      new:
+        title: Import domain dingies
+      no_file: Nae file selectit
+    follow_recommendations:
+      description_html: "<strong>Follae recommendations gie new uisers a haun tae quickly fin interestin content</strong>. Whan a uiser haesnae interactit wi ithers eneuch fir ta get personalized follae recommendations, thir accounts get recommendit insteid. They get re-calculatit on a daily basis fae a mix o accoonts wi the heichest recent engagements an heichest local folloaer coonts fir a gien leid."
+      language: Fir leid
+      status: Status
+      suppress: Turn aff follae recommendation
+      suppressed: Turnt aff
+      title: Follae recommendations
+      unsuppress: Turn on follae recommendation
+    instances:
+      availability:
+        description_html:
+          one: If deliverin tae the domain fails <strong>%{count} day</strong> athoot succeedin, nae mair delivery attempts wull be made unless a delivery <em>fae</em> the domain is received.
+          other: If deliverin tae the domain fails on <strong>%{count} different days</strong> athoot succeedin, nae mair delivery attempts wull be made unless a delivery <em>fae</em> the domain is received.
+        failure_threshold_reached: Failure threshaud reached on %{date}.
+        failures_recorded:
+          one: Failed attempt on %{count} day.
+          other: Failed attempts on %{count} different days.
+        no_failures_recorded: Nae failures on record.
+        title: Availability
+        warning: The last attempt tae connect tae this server haesnae been successful
+      back_to_all: Aw
+      back_to_limited: Limitit
+      back_to_warning: Warnin
+      by_domain: Domain
+      confirm_purge: Ye sure ye'r wantin tae delete data fae this domain fir ever?
+      content_policies:
+        comment: Internal note
+        description_html: Ye kin define content policies thit'll be applied tae aw accoonts fae this domain an onie o its subdomains.
+        policies:
+          reject_media: Reject media
+          reject_reports: Reject clypes
+          silence: Limit
+          suspend: Suspend
+        policy: Policy
+        reason: Public raison
+        title: Content policies
+      dashboard:
+        instance_accounts_dimension: Maist follaed accoonts
+        instance_accounts_measure: stowed accoonts
+        instance_followers_measure: oor follaers there
+        instance_follows_measure: their follaers here
+        instance_languages_dimension: Tap leids
+        instance_media_attachments_measure: stowed media attachments
+        instance_reports_measure: clypes aboot them
+        instance_statuses_measure: stowed posts
+      delivery:
+        all: Aw
+        clear: Claer delivery errors
+        failing: Failin
+        restart: Restert delivery
+        stop: Stap delivery
+        unavailable: No available
+      delivery_available: Delivery is available
+      delivery_error_days: Delivery error days
+      delivery_error_hint: If delivery isnae possible fir %{count} days, it wull be automatically mairked as no deliverable.
+      destroyed_msg: Data fae %{domain} is noo queued fir imminent deletion.
+      empty: Nae domains fun.
+      known_accounts:
+        one: "%{count} kent accoont"
+        other: "%{count} kent accoonts"
+      moderation:
+        all: Aw
+        limited: Limitit
+        title: Moderation
+      private_comment: Private comment
+      public_comment: Public comment
+      purge: Purge
+      purge_description_html: Gin ye believe this domain is affline fae no on, ye kin delete aw accoont records an associatit data fae this domain fae yer storage. This'll mibbie tak a while.
+      title: Federation
+      total_blocked_by_us: Dingied bi us
+      total_followed_by_them: Follaed bi them
+      total_followed_by_us: Follaed bi us
+      total_reported: Clypes aboot them
+      total_storage: Media attachments
+      totals_time_period_hint_html: The totals shawn ablow include data fir aw time.
+    invites:
+      deactivate_all: Deactivate aw
+      filter:
+        all: Aw
+        available: Available
+        expired: Expirit
+        title: Filter
+      title: Invites
+    ip_blocks:
+      add_new: Mak rule
+      created_msg: Successfully addit new IP rule
+      delete: Delete
+      expires_in:
+        '1209600': 2 weeks
+        '15778476': 6 month
+        '2629746': 1 month
+        '31556952': 1 year
+        '86400': 1 day
+        '94670856': 3 year
+      new:
+        title: Mak new IP rule
+      no_ip_block_selected: Nae IP rules wis chynged as naen wis selectit
+      title: IP rules
+    relationships:
+      title: "%{acct}'s relationships"
+    relays:
+      add_new: Add new relay
+      delete: Delete
+      description_html: A <strong>federation relay</strong> is a intermediary server thit exchanges large volumes o public posts atween servers thit subscribe an publish tae it. <strong>It kin help oot wee an medium servers fin content fae the fediverse</strong>, thit wad itherwise require local uisers follaein ither fowk on remote servers.
+      disable: Turn aff
+      disabled: Turnt aff
+      enable: Turn in
+      enable_hint: Ance turnt on, yer server wull subscribe tae aw public posts fae this relay, an will stert sennin this server's public posts tae it.
+      enabled: Turnt on
+      inbox_url: Relay URL
+      pending: Waitin fir relay's approval
+      save_and_enable: Save an turn on
+      setup: Setup a relay connexion
+      signatures_not_enabled: Relays wullnae wirk richt whilst secure mode or limitit federation mode is turnt on
+      status: Status
+      title: Relays
+    report_notes:
+      created_msg: Clype note successfully creatit!
+      destroyed_msg: Clype note successfully deletit!
+      today_at: The day at %{time}
+    reports:
+      account:
+        notes:
+          one: "%{count} note"
+          other: "%{count} notes"
+      action_log: Audit log
+      action_taken_by: Action taen bi
+      actions:
+        delete_description_html: The clyped on posts wull be deletit an a strike wull be recordit fir tae help ye escalate on future infractions bi the same accoont.
+        mark_as_sensitive_description_html: The media in the clyped on posts will be mairked as sensitive an a strike wull be recordit fir tae help ye escalate on future infractions bi the same accoont.
+        other_description_html: See mair options fir controllin the accoont's behaviour an customize communication tae the clyped on accoont.
+        resolve_description_html: Nae action wull be taen aginst the clyped on accoont, nae strike recordit, an the clype wull be shut.
+        silence_description_html: The profile wull be visible ainly tae thaim thit awriddy follae it or luik it up bi haun, severely limitin its reach. This kin aye be revertit.
+        suspend_description_html: The profile an aw its contents wull become inaccessible tae it is eventually deletit. Interactin wi the accoont wullnae be possible. Reversible athin 30 days.
+      actions_description_html: Decide whit action fir tae tak fir tae resolve this clype. If ye tak a punitive action agin the accoont thit wis clyped on, a email note wull be sent tae them, except whan the <strong>Mince</strong> caitegory is selectit.
+      add_to_report: Add mair tae yer clype
+      are_you_sure: Ye sure?
+      assign_to_self: Assign tae me
+      assigned: Assignt moderator
+      by_target_domain: Domain o clyped on accoont
+      category: Caitegory
+      category_description_html: The raison thit this accoont an/or content wis clyped on wull be cited in communication wi the clyped on accoont
+      comment:
+        none: Naen
+      comment_description_html: 'Fir tae gie mair information, %{name} wrate:'
+      created_at: Clyped on
+      delete_and_resolve: Delete posts
+      forwarded: Forretit
+      forwarded_to: Forertit tae %{domain}
+      mark_as_resolved: Mairk as resolvt
+      mark_as_sensitive: Mairk as sensitive
+      mark_as_unresolved: Mairk as no resolvt
+      no_one_assigned: Naebody
+      notes:
+        create: Add note
+        create_and_resolve: Resolve wi note
+        create_and_unresolve: Reopen wi note
+        delete: Delete
+        placeholder: Describe whit actions hae been taen, or onie ither relatit updates...
+        title: Notes
+      notes_description_html: View an lea notes tae ither moderators an yer future sel
+      quick_actions_description_html: 'Tak a quick action or scrow doon fir tae see clyped on content:'
+      remote_user_placeholder: the remote uiser fae %{instance}
+      reopen: Reopen clype
+      report: 'Clype #%{id}'
+      reported_account: Clyped on accoont
+      reported_by: Clyped on bi
+      resolved: Resolvt
+      resolved_msg: Clype successfully resolvt!
+      skip_to_actions: Jouk tae actions
+      status: Status
+      statuses: Clyped on content
+      statuses_description_html: Offendin content wull be citit in communication wi the clyped on accoont
+      target_origin: Origin o clyped on accoont
+      title: Clypes
+      unassign: Unassign
+      unresolved: No resolvt
+      updated_at: Updatit
+      view_profile: Luik at profile
+    roles:
+      add_new: Add role
+      assigned_users:
+        one: "%{count} uiser"
+        other: "%{count} uisers"
+      categories:
+        administration: Administration
+        devops: DevOps
+        invites: Invites
+        moderation: Moderation
+        special: Special
+      delete: Delete
+      description_html: Wi <strong>uiser roles</strong>, ye kin customize whit functions an areas o Mastodon yer uisers kin access.
+      edit: Edit '%{name}' role
+      everyone: Defaut permissions
+      everyone_full_description_html: This is the <strong>base role</strong> affectin <strong>aw uisers</strong>, even thaim athoot a assignt role. Aw ither roles inherit permissions fae it.
+      permissions_count:
+        one: "%{count} permission"
+        other: "%{count} permissions"
+      privileges:
+        administrator: Administrator
+        administrator_description: Uisers wi this permission wull bypass every permission
+        delete_user_data: Delete Uiser Data
+        delete_user_data_description: Alloos uisers fir tae delete ither uisers' data athoot delay
+        invite_users: Invite Uisers
+        invite_users_description: Alloos uisers fir tae invite new fowk tae the server
+        manage_announcements: Manage Annooncements
+        manage_announcements_description: Alloos uisers fir tae manage annooncements on the server
+        manage_appeals: Manage Appeals
+        manage_appeals_description: Alloos uisers fir tae luik ower appeals aginst moderation actions
+        manage_blocks: Manage Dingies
+        manage_blocks_description: Alloos uisers fir tae dingie email providers an IP addresses
+        manage_custom_emojis: Manage Custom Emoji
+        manage_custom_emojis_description: Alloos uisers fir tae manage custom emoji on the server
+        manage_federation: Manage Federation
+        manage_federation_description: Alloos uisers fir tae dingie or alloo federation wi ither domains, an control deliverability
+        manage_invites: Manage Invites
+        manage_invites_description: Alloos uisers fir tae broose an turn aff invite links
+        manage_reports: Manage Clypes
+        manage_reports_description: Alloos uisers fir tae luik ower clypes an perform moderation actions aginst them
+        manage_roles: Manage Roles
+        manage_roles_description: Alloos uisers fir tae manage an assign roles ablow their ain's
+        manage_rules: Manage Rules
+        manage_rules_description: Alloos uisers fir tae chynge server rules
+        manage_settings: Manage Settins
+        manage_settings_description: Alloos uisers fir tae chynge site settins
+        manage_taxonomies: Manage Taxonomies
+        manage_taxonomies_description: Alloos uisers fir tae luik ower trendin content an update hashtag settins
+        manage_user_access: Manage Uiser Access
+        manage_user_access_description: Alloos uisers fir tae turn aff ither uisers' twa-factor authentication, chynge their email address, an reset their passwird
+        manage_users: Manage Uisers
+        manage_users_description: Alloos uisers fir tae luik at ither uisers' details an cairry oot moderation actions agin them
+        manage_webhooks: Manage Webhooks
+        manage_webhooks_description: Alloos uisers fir tae set up webhooks fir administrative events
+        view_audit_log: Luik at Audit Log
+        view_audit_log_description: Alloos uisers fir tae see a history o administrative actions on the server
+        view_dashboard: View Dashboord
+        view_dashboard_description: Alloos uisers fir tae access the dashboord an a hantle o metrics
+        view_devops: DevOps
+        view_devops_description: Alloos uisers fir tae access Sidekiq an pgHero dashboords
+      title: Roles
+    rules:
+      add_new: Add rule
+      delete: Delete
+      description_html: Whilst maist fowk haud thit they'v read and agree wi the terms o service, uisually fowk dinnae read throu them tae efter a problem comes up. <strong>Mak it easier fir tae see yer server's rules at a glisk bi pittin them up in a flat bullet pynt list.</strong> Try fir tae keep individual rules short an simple, but try no tae sinner them intae a wheen o separate items tae.
+      edit: Edit rule
+      empty: Nae server rules hae been definit yit.
+      title: Server rules
+    settings:
+      about:
+        manage_rules: Manage server rules
+        preamble: Gie in-depth information aboot hou the server is operatit, moderatit, an fundit.
+        rules_hint: There a dedicatit area fir the rules thit yer uisers ur expectit tae haud tae.
+        title: Aboot
+      appearance:
+        preamble: Customize Mastodon's wab interface.
+        title: Appearance
+      branding:
+        preamble: Yer server's ain brandin haes it staun oot fae ither servers in the netwirk. This information wull mibbie get displayit athort a variety o environments, sic as Mastodon's wab interface, native applications, in link previews on ither wabsteids an athin messaging apps, an mair asides. Fir this raison, it is best fir tae keep this information claer, short an concise.
+        title: Brandin
+      content_retention:
+        preamble: Control hou uiser-generatit content is stored in Mastodon.
+        title: Content retention
+      discovery:
+        follow_recommendations: Follae recommendations
+        preamble: Bringin forret interestin content helps ye tae bring in new uisers thit mibbie wullnae ken oniebody on Mastodon yit. Control hou various discovery features wirk on yer server.
+        profile_directory: Profile directory
+        public_timelines: Public timelines
+        title: Discovery
+        trends: Trends
+      domain_blocks:
+        all: Tae awbody
+        disabled: Tae naebody
+        users: Tae logged-in local uisers
+      registrations:
+        preamble: Control wha kin mak a accoont on yer server.
+        title: Registrations
+      registrations_mode:
+        modes:
+          approved: Approval needit fir sign up
+          none: Naebody kin sign up
+          open: Oniebody kin sign up
+      title: Server Settins
+    site_uploads:
+      delete: Delete uploadit file
+      destroyed_msg: Site upload successfully deletit!
+    statuses:
+      account: Author
+      application: Application
+      back_to_account: Back tae accoont page
+      back_to_report: Back tae clype page
+      batch:
+        remove_from_report: Remove fae clype
+        report: Clype
+      deleted: Deletit
+      favourites: Favourites
+      history: Version history
+      in_reply_to: Replyin tae
+      language: Leid
+      media:
+        title: Media
+      metadata: Metadata
+      no_status_selected: Nae posts wis chynged as naen wis selectit
+      open: Open post
+      original_status: Original post
+      reblogs: Reblogs
+      status_changed: Post chynged
+      title: Accoont posts
+      trending: Trendin
+      visibility: Visibility
+      with_media: Wi media
+    strikes:
+      actions:
+        delete_statuses: "%{name} deletit %{target}'s posts"
+        disable: "%{name} froze %{target}'s accoont"
+        mark_statuses_as_sensitive: "%{name} mairked %{target}'s posts as sensitive"
+        none: "%{name} sent a warnin tae %{target}"
+        sensitive: "%{name} mairked %{target}'s accoont as sensitive"
+        silence: "%{name} limitit %{target}'s accoont"
+        suspend: "%{name} suspendit %{target}'s accoont"
+      appeal_approved: Appealt
+      appeal_pending: Appeal pendin
+    system_checks:
+      database_schema_check:
+        message_html: There pendin database migrations. Please rin them fir tae mak siccar the application behaves as expectit
+      elasticsearch_running_check:
+        message_html: Cuidnae connect tae Elasticseirch. Please check that it is rinnin, or turn aff ful-text seirch
+      elasticsearch_version_check:
+        message_html: 'Incompatible Elasticseirch version: %{value}'
+        version_comparison: Elasticseirch %{running_version} is rinnin whilst %{required_version} is requirt
+      rules_check:
+        action: Manage server rules
+        message_html: Ye huvnae definit onie server rules.
+      sidekiq_process_check:
+        message_html: Nae Sidekiq process rinnin fir the %{value} queue(s). Please luik ower yer Sidekiq configuration
+    tags:
+      review: Luik ower status
+      updated_msg: Hashtag settins updatit successfully
+    title: Administration
+    trends:
+      allow: Alloo
+      approved: Approvt
+      disallow: Disalloo
+      links:
+        allow: Alloo link
+        allow_provider: Alloo publisher
+        description_html: Thir's links thit ur bein shared aboot a lot the noo bi accoonts thit yer server sees posts fae. It kin help yer uisers fin oot whit's gaun on in the warld. Nae links ur displayed in public tae ye approve the publisher. Ye kin alloo or rejeck individual links tae.
+        disallow: Disalloo link
+        disallow_provider: Disalloo publisher
+        no_link_selected: Nae links wis chynged as naen wis selectit
+        publishers:
+          no_publisher_selected: Nae publishers wis chynged as naen wis selectit
+        shared_by_over_week:
+          one: Shared bi ae person ower the last week
+          other: Shared bi %{count} fowk ower the last week
+        title: Trendin links
+        usage_comparison: Shared %{today} times the day, compart tae %{yesterday} yisterday
+      only_allowed: Ainly allooed
+      pending_review: Pendin review
+      preview_card_providers:
+        allowed: Links fae this publisher kin trend
+        description_html: Thir's the domains thit links aften get shared fae on yer server. Links wullnae trend publicly unless the domain o the link is approved. Yer approval (or rejection) extends tae subdomains.
+        rejected: Links fae this publisher wullnae trend
+        title: Publishers
+      rejected: Rejectit
+      statuses:
+        allow: Alloo post
+        allow_account: Alloo author
+        description_html: Thir's posts thit yer server kens aboot thit's bein shared an favourited a lot the noo. It kin help yer new an returnin uisers fir tae fin mair fowk tae follae. Nae posts get displayed publicly tae ye approve the author, an the author alloos their accoont tae be suggestit tae ithers. Ye kin alloo or rejeck individual posts tae.
+        disallow: Disalloo post
+        disallow_account: Disalloo author
+        no_status_selected: Nae trendin posts wis chynged as naen wis selectit
+        not_discoverable: Author haesnae optit-in tae bein discoverable
+        shared_by:
+          one: Shared or favouritit ae time
+          other: Shared an favouritit %{friendly_count} times
+        title: Trendin posts
+      tags:
+        current_score: Current score %{score}
+        dashboard:
+          tag_accounts_measure: unique uises
+          tag_languages_dimension: Tap leids
+          tag_servers_dimension: Tap servers
+          tag_servers_measure: different servers
+          tag_uses_measure: total uises
+    webhooks:
+      events: Events
+      new: New webhook
+      rotate_secret: Rotate secret
+      secret: Signin secret
+      status: Status
+      title: Webhooks
+      webhook: Webhook
+  admin_mailer:
+    new_appeal:
+      actions:
+        delete_statuses: tae delete their posts
+        disable: tae freeze their accoont
+        mark_statuses_as_sensitive: tae mairk their posts as sensitive
+        none: a warnin
+        sensitive: tae mairk their accoont as sensitive
+        silence: tae limit their accoont
+        suspend: tae suspend their accoont
+      body: "%{target} is appealin a moderation decision bi %{action_taken_by} fae %{date}, thit wis %{type}. They wrate:"
+      next_steps: Ye kin approve the appeal fir tae undae the moderation decision, or dingie it.
+      subject: "%{username} is appealin a moderation decision on %{instance}"
+    new_pending_account:
+      body: The details o the new accoont' ablow. Ye kin approve or rejeck this application.
+      subject: New accoont up fir review on %{instance} (%{username})
+    new_report:
+      body: "%{reporter} haes clyped on %{target}"
+      body_remote: Somebody fae %{domain} haes clyped on %{target}
+      subject: New coype fir %{instance} (#%{id})
+    new_trends:
+      body: 'The follaein items need luiked ower afore they kin get displayit publicly:'
+      new_trending_links:
+        title: Trendin links
+      new_trending_statuses:
+        title: Trendin posts
+      new_trending_tags:
+        no_approved_tags: There nae approved trendin hashtags the noo.
+  errors:
+    '400': The request you submitted was invalid or malformed.
+    '403': You don't have permission to view this page.
+    '404': The page you are looking for isn't here.
+    '406': This page is not available in the requested format.
+    '410': The page you were looking for doesn't exist here anymore.
+    '422': 
+    '429': Too many requests
+    '500': 
+    '503': The page could not be served due to a temporary server failure.
diff --git a/config/locales/si.yml b/config/locales/si.yml
index 42aaf6c89..1f5fe630c 100644
--- a/config/locales/si.yml
+++ b/config/locales/si.yml
@@ -357,9 +357,7 @@ si:
         create: බ්ලොක් එකක් සාදන්න
         hint: ඩොමේන් බ්ලොක් එක දත්ත සමුදාය තුල ගිණුම් ඇතුලත් කිරීම් නිර්මාණය වීම වලක්වන්නේ නැත, නමුත් එම ගිණුම් වලට ප්‍රතික්‍රියාශීලීව සහ ස්වයංක්‍රීයව විශේෂිත මධ්‍යස්ථ ක්‍රම යොදනු ඇත.
         severity:
-          desc_html: "<strong>Silence</strong> ගිණුමේ පළ කිරීම් ඒවා අනුගමනය නොකරන ඕනෑම කෙනෙකුට නොපෙනී යයි. <strong>අත්හිටුවීම</strong> ගිණුමේ අන්තර්ගතය, මාධ්‍ය සහ පැතිකඩ දත්ත සියල්ල ඉවත් කරයි. ඔබට මාධ්‍ය ගොනු ප්‍රතික්ෂේප කිරීමට අවශ්‍ය නම් <strong>None</strong> භාවිතා කරන්න."
           noop: කිසිවක් නැත
-          silence: නිශ්ශබ්දතාව
           suspend: අත්හිටුවන්න
         title: නව වසම් වාරණ
       obfuscate: අපැහැදිලි වසම් නාමය
diff --git a/config/locales/simple_form.af.yml b/config/locales/simple_form.af.yml
index b06630a51..6c87a7a63 100644
--- a/config/locales/simple_form.af.yml
+++ b/config/locales/simple_form.af.yml
@@ -3,20 +3,26 @@ af:
   simple_form:
     hints:
       announcement:
-        scheduled_at: Los blanko om die aankondiging onmiddelik te publiseer
+        scheduled_at: Laat oop om die aankondiging onmiddellik te publiseer
+      defaults:
+        autofollow: Mense wat aanmeld deur die uitnodiging te aanvaar, sal jou outomaties volg
       featured_tag:
-        name: 'Hier is van die hits-etikette wat jy onlangs gebruik het:'
+        name: 'Hier is van die hutsetikette wat jy onlangs gebruik het:'
       webhook:
-        events: Kies gebeurtenisse om te stuur
+        events: Kies gebeurtenisse vir stuur
         url: Waarheen gebeurtenisse gestuur sal word
     labels:
       defaults:
-        locale: Koppelvlak taal
+        locale: Koppelvlaktaal
+      featured_tag:
+        name: Hutsetiket
       form_admin_settings:
         site_terms: Privaatheidsbeleid
       interactions:
-        must_be_following: Blokeer kennisgewings vanaf persone wat jy nie volg nie
-        must_be_following_dm: Blokeer direkte boodskappe van persone wat jy nie volg nie
+        must_be_following: Blokkeer kennisgewings van persone wat jy nie volg nie
+        must_be_following_dm: Blokkeer direkte boodskappe van persone wat jy nie volg nie
+      tag:
+        name: Hutsetiket
       webhook:
         events: Geaktiveerde gebeurtenisse
-        url: End-punt URL
+        url: Eindpunt-URL
diff --git a/config/locales/simple_form.an.yml b/config/locales/simple_form.an.yml
new file mode 100644
index 000000000..1ff16cca5
--- /dev/null
+++ b/config/locales/simple_form.an.yml
@@ -0,0 +1,309 @@
+---
+an:
+  simple_form:
+    hints:
+      account_alias:
+        acct: Especifique lo suyo nombre d'usuario@dominio d'a cuenta d'an se deseya migrar
+      account_migration:
+        acct: Especifique lo nombre d'usuario@dominio d'a cuenta d'a quala se deseya migrar
+      account_warning_preset:
+        text: Puede usar sintaxi de publicacions, como URLs, hashtags y mencions
+        title: Opcional. No ye visible pa lo destinatario
+      admin_account_action:
+        include_statuses: L'usuario veyerá qué publicacions han causau l'acción de moderación u alvertencia
+        send_email_notification: L'usuario recibirá una explicación d'o que ha succediu con a suya cuenta
+        text_html: Opcional. Puede usar sintaxi de publicacions. Puede anyadir <a href="%{path}">configuracions predefinidas d'alvertencia</a> pa cabidar tiempo
+        type_html: Tría lo qué vas a fer con <strong>%{acct}</strong>
+        types:
+          disable: Priva que l'usuario utilice la suya cuenta, pero no elimina ni amagada los suyos contenius.
+          none: Utilizar esto pa ninviar una alvertencia a l'usuario, sin enchegar garra atra acción.
+          sensitive: Forzar que totz los fichers multimedia d'este usuario sían marcaus como sensibles.
+          silence: Privar que l'usuario pueda publicar con visibilidat publica, amagada los suyos mensaches y notificacions a personas que no lo siguen.
+          suspend: Privar qualsequier interacción dende u enta esta cuenta y eliminar lo suyo conteniu. Reversible en un plazo de 30 días.
+        warning_preset_id: Opcional. Encara puede anyadir texto personalizau a la fin d'a configuración predefinida
+      announcement:
+        all_day: Quan ye triau nomás s'amostrarán las calendatas d'o rango de tiempo
+        ends_at: Opcional. L'anuncio desapareixerá automaticament en este momento
+        scheduled_at: Deixar en blanco pa publicar l'anuncio immediatament
+        starts_at: Opcional. Caso que lo suyo anuncio sía vinculau a un intervalo de tiempo especifico
+        text: Puetz usar la sintaxi de publicacions. Per favor tiene en cuenta lo espacio que ocupará l'anuncio en a pantalla de l'usuario
+      appeal:
+        text: Nomás puetz apelar una amonestación una vegada
+      defaults:
+        autofollow: Los usuarios que se rechistren per medio d'a invitación te seguirán automaticament
+        avatar: PNG, GIF u JPG. Maximo %{size}. Será escalau a %{dimensions}px
+        bot: Esta cuenta executa prencipalment accions automatizadas y podría no estar monitorizada
+        context: Un u multiples contextos en os quals ha d'aplicar-se lo filtro
+        current_password: Per razons de seguranza per favor ingrese la clau d'a cuenta actual
+        current_username: Pa confirmar, per favor ingrese lo nombre d'usuario d'a cuenta actual
+        digest: Solo ninviau dimpués d'un largo periodo d'inactividat y nomás si has recibiu mensaches personals entre la tuya ausencia
+        discoverable: Permite que la tuya cuenta sía descubierta per extranyos a traviés de recomendacions, tendencias y atras caracteristicas
+        email: Se le ninviará un correu de confirmación
+        fields: Puetz tener dica 4 elementos amostrando-se como una tabla en o tuyo perfil
+        header: PNG, GIF u JPG. Maximo %{size}. Será escalau a %{dimensions}px
+        inbox_url: Copia la URL d'a pachina prencipal d'o relés que quiers utilizar
+        irreversible: Las publicacions filtradas desapareixerán irreversiblement, mesmo si este filtro ye eliminau mas abance
+        locale: L'idioma d'a interficie d'usuario, correus y notificacions push
+        locked: Requiere que manualment aprebes seguidores y las publicacions serán amostradas nomás a las tuyas seguidores
+        password: Utilice a lo menos 8 caracters
+        phrase: S'aplicará sin importar las mayusclas u los avisos de conteniu d'una publicación
+        scopes: Qué APIs de l'aplicación tendrán acceso. Si trías l'aconsiga de libel pero alto, no amenestes triar las individuals.
+        setting_aggregate_reblogs: No amostrar nuevos retutz pa las publicacions que han estau recientment retutadas (nomás afecta a los retutz recibius recientment)
+        setting_always_send_emails: Normalment las notificacions per correu electronico no se ninviarán quan sías usando Mastodon activament
+        setting_default_sensitive: Lo conteniu multimedia sensible ye amagau per defecto y puede estar amostrau con un click
+        setting_display_media_default: Amagar conteniu multimedia marcau como sensible
+        setting_display_media_hide_all: Siempre amagar tot lo conteniu multimedia
+        setting_display_media_show_all: Amostrar siempre conteniu multimedia marcau como sensible
+        setting_hide_network: A quí sigues y quí te sigue no será amostrau en o tuyo perfil
+        setting_noindex: Afecta a lo tuyo perfil publico y pachinas d'estau
+        setting_show_application: L'aplicación que utiliza vusté pa publicar publicacions s'amostrará en a vista detallada d'as suyas publicacions
+        setting_use_blurhash: Los gradientes se basan en as colors d'as imachens amagadas pero fendo borrosos los detalles
+        setting_use_pending_items: Amagar nuevos estaus dezaga d'un clic en cuenta de desplazar automaticament lo feed
+        username: Lo tuyo nombre d'usuario será solo en %{domain}
+        whole_word: Quan la parola clau u frase ye nomás alfanumerica, nomás será aplicau si concuerda con tota la parola
+      domain_allow:
+        domain: Este dominio podrá obtener datos d'este servidor y los datos dentrants serán procesaus y archivados
+      email_domain_block:
+        domain: Este puede estar lo nombre de dominio que amaneixe en l'adreza de correu electronico u lo rechistro MX que utiliza. Se comprebarán en rechistrar-se.
+        with_dns_records: Se ferá un intento de resolver los rechistros DNS d'o dominio dau y los resultaus serán tamién mesos en lista negra
+      featured_tag:
+        name: 'Aquí son belunas d''as etiquetas que mas has utilizau recientment:'
+      filters:
+        action: Triar qué acción realizar quan una publicación coincide con o filtro
+        actions:
+          hide: Amagar completament lo conteniu filtrau, comportando-se como si no existise
+          warn: Amagar lo conteniu filtrau dezaga d'una alvertencia mencionando lo titol d'o filtro
+      form_admin_settings:
+        backups_retention_period: Mantener los fichers d'usuario cheneraus entre lo numero de días especificau.
+        bootstrap_timeline_accounts: Estas cuentas amaneixerán en a parte superior d'as recomendacions d'os nuevos usuarios.
+        closed_registrations_message: Amostrau quan los rechistros son zarraus
+        content_cache_retention_period: Las publicacions d'atros servidors s'eliminarán dimpués d'o numero especificau de días quan s'estableixca una valor positiva. Esto puede estar irreversible.
+        custom_css: Puetz aplicar estilos personalizaus a la versión web de Mastodon.
+        mascot: Reemplaza la ilustración en a interficie web abanzada.
+        media_cache_retention_period: Los fichers multimedia descargaus s'eliminarán dimpués d'o numero especificau de días quan s'estableixca una valor positiva, y se redescargarán baixo demanda.
+        profile_directory: Lo directorio de perfils lista a totz los usuarios que han optado per que la suya cuenta pueda estar descubierta.
+        require_invite_text: Quan los rechistros requieren aprebación manual, fa obligatoria la dentrada de texto "Per qué quiers unir-te?" en cuenta d'opcional
+        site_contact_email: Cómo la chent puede meter-se en contacto con tu pa consultas legals u d'aduya.
+        site_contact_username: Cómo puede contactar-te la chent en Mastodon.
+        site_extended_description: Qualsequier información adicional que pueda estar util pa los visitantes y los suyos usuarios. Se puede estructurar con formato Markdown.
+        site_short_description: Una breu descripción pa aduyar a identificar lo suyo servidor de forma sola. Quí l'administra, a quí va endrezau?
+        site_terms: Fe servir la tuya propia politica de privacidat u deixa-la en blanco pa usar la predeterminada. La puetz estructurar con formato Markdown.
+        site_title: Cómo puede referir-se la chent a lo tuyo servidor amás de per lo nombre de dominio.
+        theme: Lo tema que los visitantes no rechistraus y los nuevos usuarios veyen.
+        thumbnail: Una imachen d'aproximadament 2:1 s'amuestra chunto a la información d'o tuyo servidor.
+        timeline_preview: Los visitantes no rechistraus podrán navegar per los mensaches publicos mas recients disponibles en o servidor.
+        trendable_by_default: Omitir la revisión manual d'o conteniu en tendencia. Los elementos individuals encara podrán eliminar-se d'as tendencias.
+        trends: Las tendencias amuestran qué mensaches, etiquetas y noticias son ganando tracción en o tuyo servidor.
+      form_challenge:
+        current_password: Yes dentrando en una aria segura
+      imports:
+        data: Fichero CSV exportau dende unatra instancia de Mastodon
+      invite_request:
+        text: Esto nos aduyará a revisar la suya aplicación
+      ip_block:
+        comment: Opcional. Recuerda per qué has anyadiu esta regla.
+        expires_in: Las adrezas IP son un recurso finito, a vegadas se comparten y a ormino cambian de mans. Per esta razón, no se recomiendan bloqueyos d'IP indefinida.
+        ip: Escriba una adreza IPv4 u IPv6. Puede blocar rangos completos usando la sintaxi CIDR. Tienga cudiau de no quedar-se estase!
+        severities:
+          no_access: Blocar acceso a totz los recursos
+          sign_up_block: Los nuevos rechistros se deshabilitarán
+          sign_up_requires_approval: Nuevos rechistros requerirán la suya aprebación
+        severity: Triar lo que pasará con as peticions dende esta IP
+      rule:
+        text: Describe una norma u requisito pa los usuarios d'este servidor. Intenta fer-la curta y sencilla
+      sessions:
+        otp: 'Escribe lo codigo d''autenticación de dos factors chenerau per la tuya aplicación de telefono u usa un d''os tuyos codigos de recuperación:'
+        webauthn: Si ye una tecla USB, s'asegure de ficar-la y, si ye necesario, la prete.
+      tag:
+        name: Nomás se puede cambiar lo cajón d'as letras, per eixemplo, pa que sía mas leyible
+      user:
+        chosen_languages: Quan se marca, nomás s'amostrarán las publicacions en os idiomas triaus en as linias de tiempo publicas
+        role: Lo rol controla qué permisos tiene la usuaria
+      user_role:
+        color: Color que s'utilizará pa lo rol a lo largo d'a interficie d'usuario, como RGB en formato hexadecimal
+        highlighted: Esto fa que lo rol sía publicament visible
+        name: Nombre publico d'o rol, si lo rol s'estableix pa que s'amuestre como una insignia
+        permissions_as_keys: Los usuarios con este rol tendrán acceso a...
+        position: Un rol superior decide la resolución de conflictos en bellas situacions. Bellas accions nomás pueden levar-se a cabo en rols con menor prioridat
+      webhook:
+        events: Triar eventos pa ninviar
+        url: An los eventos serán ninviaus
+    labels:
+      account:
+        fields:
+          name: Etiqueta
+          value: Conteniu
+      account_alias:
+        acct: Maneya la cuenta antiga
+      account_migration:
+        acct: Alias d'a nueva cuenta
+      account_warning_preset:
+        text: Texto predefinido
+        title: Titol
+      admin_account_action:
+        include_statuses: Incluyir en o correu electronico a las publicacions denunciadas
+        send_email_notification: Notificar a l'usuario per correu electronico
+        text: Aviso personalizau
+        type: Acción
+        types:
+          disable: Deshabilitar
+          none: No fer cosa
+          sensitive: Sensible
+          silence: Silenciar
+          suspend: Suspender y eliminar de forma irreversible la información d'a cuenta
+        warning_preset_id: Usar un aviso predeterminau
+      announcement:
+        all_day: Evento de tot lo día
+        ends_at: Fin de l'evento
+        scheduled_at: Programar publicación
+        starts_at: Comienzo de l'evento
+        text: Anuncio
+      appeal:
+        text: Explica per qué esta decisión ha d'estar revertida
+      defaults:
+        autofollow: Convidar a seguir la tuya cuenta
+        avatar: Avatar
+        bot: Esta ye una cuenta bot
+        chosen_languages: Filtrar idiomas
+        confirm_new_password: Confirmar nueva clau
+        confirm_password: Confirmar clau
+        context: Filtrar contextos
+        current_password: Clau actual
+        data: Información
+        discoverable: Sucherir la cuenta a atros
+        display_name: Nombre pa amostrar
+        email: Adreza de correu electronico
+        expires_in: Expirar dimpués de
+        fields: Metadatos de perfil
+        header: Img. capitero
+        honeypot: "%{label} (no replenar)"
+        inbox_url: URL d'a dentrada de relés
+        irreversible: Refusar en cuenta d'amagar
+        locale: Idioma
+        locked: Fer privada esta cuenta
+        max_uses: Máx. numero d'usos
+        new_password: Nueva clau
+        note: Biografía
+        otp_attempt: Codigo de dos factors
+        password: Clau
+        phrase: Parola clau u frase
+        setting_advanced_layout: Habilitar interficie web abanzada
+        setting_aggregate_reblogs: Agrupar retutz en as linias de tiempo
+        setting_always_send_emails: Ninviar siempre notificacions per correu
+        setting_auto_play_gif: Reproducir automaticament los GIFs animaus
+        setting_boost_modal: Amostrar finestra de confirmación antes de retutar
+        setting_crop_images: Retallar a 16x9 las imachens d'as publicacions no expandidas
+        setting_default_language: Idioma de publicación
+        setting_default_privacy: Privacidat de publicacions
+        setting_default_sensitive: Marcar siempre imachens como sensibles
+        setting_delete_modal: Amostrar dialogo de confirmación antes de borrar una publicación
+        setting_disable_swiping: Deshabilitar movimientos d'eslizamiento
+        setting_display_media: Visualización multimedia
+        setting_display_media_default: Per defecto
+        setting_display_media_hide_all: Amagar tot
+        setting_display_media_show_all: Amostrar tot
+        setting_expand_spoilers: Siempre expandir las publicacions marcadas con alvertencias de conteniu
+        setting_hide_network: Amagar lo tuyo ret
+        setting_noindex: Excluyir-se d'o indexado de motors de busqueda
+        setting_reduce_motion: Reducir lo movimiento d'as animacions
+        setting_show_application: Amostrar aplicación usada pa publicar publicacions
+        setting_system_font_ui: Utilizar la tipografía per defecto d'o sistema
+        setting_theme: Tema d'o puesto
+        setting_trends: Amostrar las tendencias de hue
+        setting_unfollow_modal: Amostrar dialogo de confirmación antes de deixar de seguir a belún
+        setting_use_blurhash: Amostrar gradientes colorius pa conteniu multimedia amagau
+        setting_use_pending_items: Modo lento
+        severity: Severidat
+        sign_in_token_attempt: Codigo de seguranza
+        title: Titol
+        type: Importar tipo
+        username: Nombre d'usuario
+        username_or_email: Usuario u Email
+        whole_word: Tota la parola
+      email_domain_block:
+        with_dns_records: Incluye los rechistros MX y las IP d'o dominio
+      featured_tag:
+        name: Etiqueta
+      filters:
+        actions:
+          hide: Amagar completament
+          warn: Amagar con una alvertencia
+      form_admin_settings:
+        backups_retention_period: Periodo de retención d'o fichero d'usuario
+        bootstrap_timeline_accounts: Recomendar siempre estas cuentas a nuevos usuarios
+        closed_registrations_message: Mensache personalizau quan los rechistros no son disponibles
+        content_cache_retention_period: Periodo de retención de caché de conteniu
+        custom_css: CSS personalizau
+        mascot: Mascota personalizada (legado)
+        media_cache_retention_period: Periodo de retención de caché multimedia
+        profile_directory: Habilitar directorio de perfils
+        registrations_mode: Quí puede rechistrar-se
+        require_invite_text: Requerir una razón pa unir-se
+        show_domain_blocks: Amostrar dominios blocaus
+        show_domain_blocks_rationale: Amostrar per qué se blocoron los dominios
+        site_contact_email: Adreza de correu electronico de contacto
+        site_contact_username: Nombre d'usuario de contacto
+        site_extended_description: Descripción extendida
+        site_short_description: Descripción d'o servidor
+        site_terms: Politica de Privacidat
+        site_title: Nombre d'o servidor
+        theme: Tema per defecto
+        thumbnail: Miniatura d'o servidor
+        timeline_preview: Permitir l'acceso no autenticau a las linias de tiempo publicas
+        trendable_by_default: Permitir tendencias sin revisión previa
+        trends: Habilitar tendencias
+      interactions:
+        must_be_follower: Blocar notificacions de personas que no te siguen
+        must_be_following: Blocar notificacions de personas que no sigues
+        must_be_following_dm: Blocar mensaches directos d'a chent que no sigues
+      invite:
+        comment: Comentar
+      invite_request:
+        text: Per qué quiere unir-se vusté?
+      ip_block:
+        comment: Comentario
+        ip: IP
+        severities:
+          no_access: Blocar acceso
+          sign_up_block: Blocar rechistros
+          sign_up_requires_approval: Limitar rechistros
+        severity: Regla
+      notification_emails:
+        appeal: Belún ha apelado una decisión de moderación
+        digest: Ninviar resumen de correus electronicos
+        favourite: Ninviar correu electronico quan belún d'a2 favorito en a suya publicación
+        follow: Ninviar correu electronico quan belún te siga
+        follow_request: Ninviar correu electronico quan belún solicita seguir-te
+        mention: Ninviar correu electronico quan belún te mencione
+        pending_account: Ninviar correu electronico quan una nueva cuenta ameneste revisión
+        reblog: Ninviar correu electronico quan belún comparta la suya publicación
+        report: Nuevo informe ninviau
+        trending_tag: Una nueva tendencia requiere revisión
+      rule:
+        text: Norma
+      tag:
+        listable: Permitir que esta etiqueta amaneixca en as busquedas y en o directorio d'o perfil
+        name: Etiqueta
+        trendable: Permitir que esta etiqueta amaneixca baixo tendencias
+        usable: Permitir a las publicacions usar esta etiqueta
+      user:
+        role: Rol
+      user_role:
+        color: Color d'insignia
+        highlighted: Amostrar rol como insignia en perfils d'usuario
+        name: Nombre
+        permissions_as_keys: Permisos
+        position: Prioridat
+      webhook:
+        events: Eventos habilitaus
+        url: URL de Endpoint
+    'no': 'No'
+    not_recommended: No recomendau
+    recommended: Recomendau
+    required:
+      mark: "*"
+      text: necesario
+    title:
+      sessions:
+        webauthn: Utilice una d'as suyas claus de seguranza pa iniciar sesión
+    'yes': Ell
diff --git a/config/locales/simple_form.ar.yml b/config/locales/simple_form.ar.yml
index 6eaff01a8..fbea01ee0 100644
--- a/config/locales/simple_form.ar.yml
+++ b/config/locales/simple_form.ar.yml
@@ -97,7 +97,7 @@ ar:
       form_challenge:
         current_password: إنك بصدد الدخول إلى منطقة آمنة
       imports:
-        data: ملف CSV تم تصديره مِن خادوم ماستدون آخر
+        data: ملف CSV تم تصديره مِن خادم ماستدون آخر
       invite_request:
         text: هذا سوف يساعدنا في مراجعة تطبيقك
       ip_block:
@@ -226,20 +226,27 @@ ar:
           hide: إخفاء بالكامل
           warn: إخفاء بتحذير
       form_admin_settings:
+        backups_retention_period: فترة الاحتفاظ بأرشيف المستخدم
         custom_css: سي أس أس CSS مخصص
+        media_cache_retention_period: مدة الاحتفاظ بالتخزين المؤقت للوسائط
         profile_directory: تفعيل دليل الصفحات التعريفية
         registrations_mode: من يمكنه التسجيل
         require_invite_text: يتطلب سببا للانضمام
+        show_domain_blocks_rationale: أظهِر لماذا تم حظر النطاقات
+        site_contact_email: للاتصال بالبريد الإلكتروني
+        site_contact_username: اسم مستخدم جهة الاتصال
         site_extended_description: الوصف الموسع
         site_short_description: وصف الخادم
         site_terms: سياسة الخصوصية
         site_title: اسم الخادم
         theme: الحُلَّة الإفتراضية
         thumbnail: الصورة المصغرة للخادم
+        timeline_preview: السماح بالوصول غير الموثق إلى الخيوط الزمنية العامة
+        trendable_by_default: السماح للوسوم بالظهور على المتداوَلة دون مراجعة مسبقة
         trends: تمكين المتداوَلة
       interactions:
-        must_be_follower: حظر الإخطارات القادمة من حسابات لا تتبعك
-        must_be_following: حظر الإخطارات القادمة من الحسابات التي لا تتابعها
+        must_be_follower: حظر الإشعارات القادمة من حسابات لا تتبعك
+        must_be_following: حظر الإشعارات القادمة من الحسابات التي لا تتابعها
         must_be_following_dm: حظر الرسائل المباشرة القادمة من طرف أشخاص لا تتبعهم
       invite:
         comment: التعليق
@@ -276,6 +283,8 @@ ar:
         name: التسمية
         permissions_as_keys: الصلاحيات
         position: الأولوية
+      webhook:
+        url: الرابط التشعبّي URL لنقطة النهاية
     'no': لا
     required:
       mark: "*"
diff --git a/config/locales/simple_form.ast.yml b/config/locales/simple_form.ast.yml
index 378542359..36cb630da 100644
--- a/config/locales/simple_form.ast.yml
+++ b/config/locales/simple_form.ast.yml
@@ -2,32 +2,52 @@
 ast:
   simple_form:
     hints:
+      admin_account_action:
+        text_html: Opcional. Pues usar la sintaxis de los artículos ya amestar <a href="%{path}">amestar preconfiguraes</a> p'aforrar tiempu
+      announcement:
+        all_day: Al marcar la opción, namás apaecen les dates del intervalu de tiempu
+        ends_at: Opcional. L'anunciu dexa de tar espublizáu na data qu'indiques
+        starts_at: Opcional. En casu de que l'anunciu tea arreyáu a un intervalu de tiempu específicu
+        text: Pues usar la sintaxis de los artículos. Ten en cuenta l'espaciu que l'anunciu va ocupar na pantalla del usuariu/a
       defaults:
-        autofollow: La xente que se rexistre pente la invitación va siguite automáticamente
-        bot: Avisa a otres persones de qu'esta cuenta fai principalmente aiciones automatizaes y de que ye posible que nun tean supervisaes
-        digest: Namái s'unvia dempués d'un periodu llargu d'inactividá y namái si recibiesti cualesquier mensaxe personal na to ausencia
-        discoverable: Permite que persones desconocíes descubran la to cuenta pente recomendaciones, tendencies y otres funciones
-        email: Vamos unviate un corréu de confirmación
+        autofollow: Les persones que se rexistren pente la invitación van siguite automáticamente
+        avatar: Ficheros PNG, GIF o JPG de %{size} como muncho. Les semeya va redimensionase a %{dimensions} px
+        bot: Avisa a otres persones de qu'esta cuenta fai principalmente aiciones automatizaes ya de que ye posible que nun tean supervisaes
+        digest: Namás s'unvia dempués d'un periodu llongu d'inactividá ya namás si recibiesti dalgún mensaxe personal demientres la to ausencia
+        discoverable: Permite que persones desconocíes descubran la to cuenta pente recomendaciones, tendencies ya otres funciones
         fields: Pues tener hasta 4 elementos qu'apaecen nuna tabla dientro del to perfil
-        irreversible: Los barritos peñeraos van desapaecer de mou irreversible, magar que se desanicie la peñera dempués
+        header: Ficheros PNG, GIF o JPG de %{size} como muncho. Les semeya va redimensionase a %{dimensions} px
+        irreversible: Los artículos peñeraos desapaecen de forma irreversible, magar que la peñera se quite dempués
+        locale: La llingua de la interfaz, los mensaxes per corréu electrónicu ya los avisos push
         locked: Controla manualmente quién pue siguite pente l'aprobación de les solicitúes de siguimientu
-        password: Usa 8 caráuteres polo menos
-        setting_hide_network: Les persones que sigas y les que te sigan nun van apaecer nel to perfil
+        setting_display_media_default: Anubrilu cuando se marque como sensible
+        setting_display_media_hide_all: Anubrilu siempres
+        setting_display_media_show_all: Amosalu siempres
+        setting_hide_network: Les persones que sigas ya les que te sigan nun van apaecer nel to perfil
         setting_show_application: L'aplicación qu'uses pa espublizar apaez na vista detallada de los tos artículos
-        username: El nome d'usuariu va ser únicu en %{domain}
+        username: 'El nome d''usuariu va ser únicu en: %{domain}'
       featured_tag:
         name: 'Equí tán dalgunes de les etiquetes qu''usesti apocayá:'
+      form_admin_settings:
+        backups_retention_period: Caltién los archivos xeneraos polos perfiles demientres el númberu de díes especificáu.
+        closed_registrations_message: Apaez cuando'l rexistru ta desactiváu
+        content_cache_retention_period: Los artículos d'otros sirvidores desaníciense dempués del numberu de díes especificáu al configurar un valor positivu. Ye posible qu'esta opción seya irreversible.
+        custom_css: Pues aplicar estilos personalizaos a la versión web de Mastodon.
+        mascot: Anula la ilustración na interfaz web avanzada.
+        media_cache_retention_period: Los ficheros multimedia baxaos desaníciense dempués del númberu de díes especificáu al configurar un valor positivu, ya vuelven baxase baxo demanda.
+        require_invite_text: Cuando los rexistros riquen una aprobación manual, el campu «¿Por qué quies xunite?» vuélvese obligatoriu
+        site_extended_description: Cualesquier tipu d'información adicional que pueda ser útil pa visitantes ya pa perfiles rexistraos. El testu pue estructurase cola sintaxis de Mastodon.
+        site_short_description: Un descripción curtia qu'ayuda a identificar de forma única al sirvidor. ¿Quién lu lleva?, ¿pa quién ye?
+        theme: L'estilu que los visitantes ya los perfiles nuevos usen.
       form_challenge:
-        current_password: Tas entrando nuna área segura
+        current_password: Tas entrando a una área segura
       imports:
-        data: El ficheru CSV esportáu dende otra instancia de Mastodon
+        data: El ficheru CSV que s'esportó d'otru sirvidor de Mastodon
       invite_request:
-        text: Esto va ayudanos a revisar la to aplicación
+        text: Esto va ayudanos a revisar la to solicitú
       ip_block:
-        comment: Opcional. Acuérdate por qué amestesti esta regla.
-        expires_in: Les direiciones IP son un recursu finitu, suelen compartise y cambiar de manes. Por esti motivu, nun s'aconseyen los bloqueos indefiníos de direiciones IP.
-      sessions:
-        otp: 'Introduz el códigu de dos pasos xeneráu pola aplicación autenticadora o usa unu de los códigos de recuperación:'
+        comment: Opcional. Un recordatoriu de por qué amestesti esta regla.
+        expires_in: Les direiciones IP son un recursu finitu, suelen compartise ya cambiar de manes. Por esti motivu, nun s'aconseyen los bloqueos indefiníos de direiciones IP.
     labels:
       account:
         fields:
@@ -36,10 +56,14 @@ ast:
       account_warning_preset:
         title: Títulu
       admin_account_action:
+        include_statuses: Incluyir nel mensaxe los artículos de los que s'informó
+        send_email_notification: Avisar al perfil per corréu electrónicu
         type: Aición
-        types:
-          none: Nun facer nada
       announcement:
+        all_day: Eventu del tol día
+        ends_at: Fin del eventu
+        scheduled_at: Anunciu programáu
+        starts_at: Comienzu del eventu
         text: Anunciu
       defaults:
         avatar: Avatar
@@ -61,46 +85,69 @@ ast:
         max_uses: Númberu máximu d'usos
         new_password: Contraseña nueva
         note: Biografía
-        otp_attempt: Códigu de la verificación en dos pasos
+        otp_attempt: Códigu de l'autenticación en dos pasos
         password: Contraseña
         phrase: Pallabra clave o fras
         setting_advanced_layout: Activar la interfaz web avanzada
-        setting_auto_play_gif: Reproducir GIFs automáticamente
+        setting_aggregate_reblogs: Agrupar los artículos compartíos nes llinies de tiempu
+        setting_auto_play_gif: Reproducir automáticamente los GIFs
         setting_boost_modal: Amosar el diálogu de confirmación enantes de compartir un artículu
-        setting_default_language: Llingua de los espublizamientos
-        setting_default_privacy: Privacidá de los espublizamientos
-        setting_delete_modal: Amosar el diálogu de confirmación enantes de desaniciar un barritu
+        setting_default_language: Llingua de los artículos
+        setting_default_privacy: Privacidá de los artículos
+        setting_delete_modal: Amosar el diálogu de confirmación enantes de desaniciar un artículu
+        setting_display_media: Conteníu multimedia
         setting_noindex: Nun apaecer nos índices de los motores de gueta
+        setting_reduce_motion: Amenorgar el movimientu de les animaciones
         setting_show_application: Dicir les aplicaciones que s'usen pa unviar artículos
         setting_system_font_ui: Usar la fonte predeterminada del sistema
         setting_theme: Estilu del sitiu
         setting_trends: Amosar les tendencies de güei
         setting_unfollow_modal: Amosar el diálogu de confirmación enantes de dexar de siguir a daquién
         setting_use_pending_items: Mou lentu
-        severity: Severidá
+        severity: Gravedá
         sign_in_token_attempt: Códigu de seguranza
+        title: Títulu
         type: Tipu de la importación
         username: Nome d'usuariu
         username_or_email: Nome d'usuariu o direición de corréu electrónicu
         whole_word: La pallabra entera
       featured_tag:
         name: Etiqueta
+      form_admin_settings:
+        backups_retention_period: Periodu de retención de los archivos de los perfiles
+        closed_registrations_message: Mensaxe personalizáu cuando'l rexistru nun ta disponible
+        content_cache_retention_period: Periodu de retención de la caché de conteníu
+        media_cache_retention_period: Periodu de retención de la caché multimedia
+        registrations_mode: Quién pue rexistrase
+        require_invite_text: Riquir un motivu pa rexistrase
+        show_domain_blocks_rationale: Amosar por qué se bloquiaron los dominios
+        site_extended_description: Descripción estendida
+        site_short_description: Descripción del sirvidor
+        site_terms: Política de privacidá
+        site_title: Nome del sirvidor
+        theme: Estilu predetermináu
+        thumbnail: Miniatura del sirvidor
       interactions:
-        must_be_follower: Bloquiar los avisos de persones que nun son siguidores
-        must_be_following: Bloquiar los avisos de persones que nun sigues
-        must_be_following_dm: Bloquiar los mensaxes direutos de persones que nun sigues
+        must_be_follower: Bloquiar los avisos de los perfiles que nun te siguen
+        must_be_following: Bloquiar los avisos de los perfiles que nun sigues
+        must_be_following_dm: Bloquiar los mensaxes direutos de los perfiles que nun sigues
       invite_request:
         text: "¿Por qué quies xunite?"
       ip_block:
         ip: IP
       notification_emails:
-        favourite: Daquién marcó como favoritu un estáu de to
+        favourite: Daquién marcó como favoritu'l to artículu
         follow: Daquién te sigue
         follow_request: Daquién solicitó siguite
         mention: Daquién te mentó
+        pending_account: Una cuenta nueva precisa una revisión
         reblog: Daquién compartió'l to artículu
+        report: Unvióse un informe nuevu
+        trending_tag: Una tendencia rique una revisión
       tag:
         name: Etiqueta
+      user:
+        role: Rol
       user_role:
         name: Nome
         permissions_as_keys: Permisos
diff --git a/config/locales/simple_form.be.yml b/config/locales/simple_form.be.yml
new file mode 100644
index 000000000..689fe13c0
--- /dev/null
+++ b/config/locales/simple_form.be.yml
@@ -0,0 +1,218 @@
+---
+be:
+  simple_form:
+    hints:
+      account_alias:
+        acct: Прызначце карыстальнік@дамен уліковага запісу з якога вы хочаце пераехаць
+      account_migration:
+        acct: Прызначце карыстальнік@дамен уліковага запісу на які вы хочаце пераехаць
+      account_warning_preset:
+        text: Вы можаце выкарыстоўваць сінтаксіс паведамленняў, такі як URL, хэштэгі ці згадкі
+        title: Неабавязкова. Не паказваецца атрымальніку
+      admin_account_action:
+        include_statuses: Карыстальнік пабачыць, якія допісы ёсць прычынай мадэрацыі ці папярэджання
+        send_email_notification: Карыстальнік атрымае тлумачэнне аб тым, што здарылася з яго ўліковым запісам
+        type_html: Выберы што рабіць з <strong>%{acct}</strong>
+        types:
+          disable: Перадухіліць выкарыстанне акаунтаў, але не выдаляць і не хаваць іх змесціва.
+          none: Выкарыстоўвай гэта для папярэджвання карыстальнікаў але без іншых наступстваў.
+          sensitive: Прымусова адмячаць усе медыя карыстальніка як дэлікатныя.
+      announcement:
+        ends_at: Неабавязкова. Аб'ява будзе аўтаматычна знята ў пэўны час
+        scheduled_at: Пакіньце пустым, каб апублікаваць аб'яву імаверна
+        starts_at: Неабавязкова. На выпадак, калі ваша аб'ява прывязана да пэўнага перыяду часу
+      appeal:
+        text: Вы можаце абскардзіць рашэнне толькі адзін раз
+      defaults:
+        discoverable: Дазволіць незнаёмым людзям знаходзіць ваш уліковы запіс праз рэкамендацыі, трэнды і іншыя функцыі
+        email: Пацвярджэнне будзе выслана па электроннай пошце
+        locale: Мова карыстальніцкага інтэрфейсу, электронных паведамленняў і апавяшчэнняў
+        locked: Уручную кантралюйце, хто можа быць вашым падпісантам, ухваляючы запросы на падпіску
+        password: Не менш за 8 сімвалаў
+        setting_display_media_default: Хаваць медыя пазначаныя як далікатныя
+        setting_display_media_hide_all: Заўсёды хаваць медыя
+        setting_display_media_show_all: Заўсёды паказваць медыя
+        setting_hide_network: Вашы падпіскі і вашы падпісчыкі будуць нябачны ў вашым профілі
+        setting_noindex: Уплывае на бачнасць старонкі вашага профілю і вашых допісаў
+      form_admin_settings:
+        backups_retention_period: Захоўваць створаныя архівы карыстальніка адзначаную колькасць дзён.
+        bootstrap_timeline_accounts: Гэтыя ўліковыя запісы будуць замацаваны ў топе рэкамендацый для новых карыстальнікаў.
+        custom_css: Вы можаце прымяняць карыстальніцкія стылі ў вэб-версіі Mastodon.
+        mascot: Замяняе ілюстрацыю ў пашыраным вэб-інтэрфейсе.
+        site_contact_username: Як людзі могуць звязацца з вамі на Mastodon.
+        trends: Трэнды паказваюць, якія допісы, хэштэгі і навіны набываюць папулярнасць на вашым серверы.
+      form_challenge:
+        current_password: Вы ўваходзіце ў бяспечную зону
+      imports:
+        data: Файл CSV экспартаваны з іншага сервера Mastodon
+      invite_request:
+        text: Гэта дапаможа нам разгледзець вашу заяву
+      ip_block:
+        comment: Неабавязкова. Напамін, чаму вы дадалі гэта правіла.
+        expires_in: IP адрасы з'яўляюцца абмежаваным рэсурсам, часам яны падзяляюцца паміж карыстальнікамі і мяняюць уладальніка. Па гэтай прычыне, безтэрміновае блакаванне IP не рэкамендуецца.
+        severities:
+          no_access: Заблакіраваць доступ да ўсіх рэсурсаў
+          sign_up_block: Новыя рэгістрацыі будуць немагчымы
+          sign_up_requires_approval: Новыя рэгістрацыі запатрабуюць вашага ўзгаднення
+        severity: Абярыце, што будзе адбывацца з запытамі з гэтага IP
+      sessions:
+        otp: 'Увядзіце код двухфактарнай аўтэнтыфікацыі з вашага тэлефона або адзін з кодаў аднаўлення:'
+      webhook:
+        events: Выберыце падзеі для адпраўкі
+        url: Куды падзеі будуць адпраўляцца
+    labels:
+      account:
+        fields:
+          name: Пазнака
+          value: Змесціва
+      account_warning_preset:
+        title: Загаловак
+      admin_account_action:
+        send_email_notification: Паведаміць карыстальніку па электроннай пошце
+        text: Карыстальніцкае папярэджанне
+        type: Дзеянне
+        types:
+          disable: Замарозіць
+          none: Даслаць папярэджанне
+          sensitive: Далікатны
+          silence: Абмежаваць
+          suspend: Прыпыніць
+      announcement:
+        all_day: Падзея на ўвесь дзень
+        ends_at: Канец падзеі
+        scheduled_at: Запланаваць публікацыю
+        starts_at: Пачатак падзеі
+        text: Аб'ява
+      appeal:
+        text: Растлумачце, чаму гэтае рашэнне павінна быць адменена
+      defaults:
+        autofollow: Прапануйце падпісацца на ваш акаўнт
+        avatar: Аватар
+        bot: Гэта бот
+        chosen_languages: Фільтр моў
+        confirm_new_password: Пацвердзіць новы пароль
+        confirm_password: Пацвердзіць пароль
+        context: Фільтр кантэкстаў
+        current_password: Бягучы пароль
+        data: Даныя
+        discoverable: Парэкамендаваць акаўнт іншым
+        display_name: Адлюстраванае імя
+        email: Адрас электроннай пошты
+        expires_in: Заканчваецца пасля
+        fields: Метададзеныя профілю
+        header: Загаловак
+        honeypot: "%{label} (не запаўняць)"
+        irreversible: Выдаляць, а не хаваць
+        locale: Мова інтэрфейсу
+        locked: Патрабуе запыт на падпіску
+        max_uses: Максімальная колькасць выкарыстанняў
+        new_password: Новы пароль
+        note: Пра сябе
+        otp_attempt: Двухфактарны код
+        password: Пароль
+        phrase: Ключавое слова ці фраза
+        setting_advanced_layout: Уключыць пашыраны вэб-інтэрфейс
+        setting_aggregate_reblogs: Групаваць прасоўванні ў стужках
+        setting_auto_play_gif: Аўтапрайграванне анімаваных GIF
+        setting_boost_modal: Паказваць акно пацвярджэння перад пашырэннем
+        setting_crop_images: У неразгорнутых допісах абразаць відарысы да 16:9
+        setting_default_language: Мова допісаў
+        setting_default_privacy: Прыватнасць допісаў
+        setting_default_sensitive: Заўсёды пазначаць кантэнт як далікатны
+        setting_delete_modal: Паказваць акно пацвярджэння перад выдаленнем допісу
+        setting_disable_swiping: Адключыць прагортванні
+        setting_display_media: Адлюстраванне медыя
+        setting_display_media_default: Перадвызначана
+        setting_display_media_hide_all: Схаваць усё
+        setting_display_media_show_all: Паказаць усё
+        setting_reduce_motion: Памяншэнне руху ў анімацыях
+        setting_system_font_ui: Выкарыстоўваць прадвызначаны сістэмны шрыфт
+        setting_theme: Тэма сайта
+        setting_trends: Паказваць трэнды дня
+        setting_unfollow_modal: Паказваць акно пацвярджэння перад адпіскай
+        setting_use_pending_items: Павольны рэжым
+        severity: Узровень
+        sign_in_token_attempt: Код бяспекі
+        title: Загаловак
+        type: Тып імпарту
+        username: Імя карыстальніка
+        username_or_email: Імя карыст. або адрас эл. пошты
+        whole_word: Слова цалкам
+      email_domain_block:
+        with_dns_records: Уключыць MX запісы і IP-адрасы дамену
+      featured_tag:
+        name: Хэштэг
+      filters:
+        actions:
+          hide: Схаваць цалкам
+      form_admin_settings:
+        custom_css: CSS карыстальніка
+        media_cache_retention_period: Працягласць захавання кэшу для медыя
+        profile_directory: Уключыць каталог профіляў
+        registrations_mode: Хто можа зарэгістравацца
+        require_invite_text: Каб далучыцца, патрэбна прычына
+        show_domain_blocks: Паказаць заблакіраваныя дамены
+        show_domain_blocks_rationale: Паказваць прычыну блакавання даменаў
+        site_contact_email: Электронная пошта для сувязі
+        site_extended_description: Падрабязнае апісанне
+        site_short_description: Апісанне сервера
+        site_terms: Палітыка канфідэнцыйнасці
+        site_title: Назва сервера
+        theme: Тэма па змаўчанні
+        thumbnail: Мініяцюра сервера
+        trendable_by_default: Дазваляць трэнды без папярэдняй праверкі
+        trends: Уключыць трэнды
+      interactions:
+        must_be_follower: Заблакіраваць апавяшчэнні ад непадпісаных людзей
+        must_be_following: Заблакіраваць апавяшчэнні ад людзей на якіх вы не падпісаны
+        must_be_following_dm: Заблакіраваць асабістыя паведамленні ад людзей на якіх вы не падпісаны
+      invite:
+        comment: Каментар
+      invite_request:
+        text: Чаму вы жадаеце далучыцца?
+      ip_block:
+        comment: Каментар
+        ip: IP
+        severities:
+          no_access: Заблакіраваць доступ
+          sign_up_block: Заблакіраваць рэгістрацыі
+          sign_up_requires_approval: Абмежаваць рэгістрацыі
+        severity: Правіла
+      notification_emails:
+        appeal: Нехта падае апеляцыю на рашэнне мадэратара
+        favourite: Нехта ўпадабаў ваш допіс
+        follow: Нехта падпісаўся на вас
+        follow_request: Нехта даслаў вам запыт на падпіску
+        mention: Нехта згадаў вас
+        pending_account: Новы акаўнт патрабуе разгляду
+        reblog: Нехта пашырыў ваш допіс
+        report: Новая скарга даслана
+        trending_tag: Новы трэнд патрабуе разгляду
+      rule:
+        text: Правіла
+      tag:
+        listable: Дазволіць паказ хэштэгу ў пошуку і ў каталозе профіляў
+        name: Хэштэг
+        trendable: Дазволіць паказ гэтага хэштэга ў трэндах
+        usable: Дазволіць выкарыстанне хэштэгу ў допісах
+      user:
+        role: Роля
+      user_role:
+        color: Колер значка
+        highlighted: Паказваць ролю як значок у профілях
+        name: Назва
+        permissions_as_keys: Дазволы
+        position: Прыярытэт
+      webhook:
+        events: Актыўныя падзеі
+        url: URL-адрас канцавога пункту
+    'no': Не
+    not_recommended: Не рэкамендавана
+    recommended: Рэкамендуем
+    required:
+      mark: "*"
+      text: абавязкова
+    title:
+      sessions:
+        webauthn: Выкарыстайце адзін са сваіх ключоў бяспекі для ўваходу
+    'yes': Так
diff --git a/config/locales/simple_form.bg.yml b/config/locales/simple_form.bg.yml
index cee3f423e..ab9613606 100644
--- a/config/locales/simple_form.bg.yml
+++ b/config/locales/simple_form.bg.yml
@@ -2,8 +2,30 @@
 bg:
   simple_form:
     hints:
+      account_warning_preset:
+        title: По избор. Невидимо за получателя
+      admin_account_action:
+        include_statuses: Потребителят ще може да види кои публикации са довели до действието от страна на модератора или до предупреждението
+        send_email_notification: Потребителят ще получи обяснение какво се е случило с неговия акаунт
+        type_html: Изберете какво да сторите с <strong>%{acct}</strong>
+        types:
+          disable: Забранете на потребител да достъпва акаунта си, без да изтривате или скривате съдържанието на този акаунт.
+          none: Служи за изпращане на предупреждение до потребител, без да се активира друго действие.
+          sensitive: Принудително отбелязване на прикачената от потребителя мултимедия като чувствителна.
+          silence: Забраняване на потребителя да публикува публично, скриване на неговите публикации и известия от други потребители, които не го следват.
+          suspend: Забрана на всякаква интеракция с този акаунт и изтриване на съдържанието му. Обратимо в рамките на 30 дни.
+        warning_preset_id: По избор. Можете да добавите допълнително текст накрая на предварително настроения текст
+      announcement:
+        all_day: Когато е избрана настройката, само датите от времевия диапазон ще бъдат показани
+        ends_at: По избор. В зададеното време обявлението ще бъде автоматично премахнато
+        scheduled_at: Ако се остави празно, обявлението ще се публикува незабавно
+        starts_at: По избор. В случай, че обявлението е ограничено до определен времеви диапазон
+        text: Можете да използвате синтаксиса на обикновени публикации. Не забравяйте, че обявлението ще заеме известно място от екрана на потребителя
       defaults:
         avatar: PNG, GIF или JPG. До %{size}. Ще бъде смалена до %{dimensions} пиксела
+        bot: Покажете на останалите потребители, че акаунтът извършва предимно автоматизирани действия, които не се следят
+        discoverable: Позволете на непознати потребители да открият вашия акаунт чрез препоръки, трендове и други функции
+        fields: Можете да добавите до 4 елемента в таблицата към своя профил
         header: PNG, GIF или JPG. До %{size}. Ще бъде смалена до %{dimensions} пиксела
         locked: Изисква ръчно одобрение на последователите. По подразбиране, публикациите са достъпни само до последователи.
         password: Използвайте поне 8 символа
@@ -12,7 +34,11 @@ bg:
         setting_display_media_hide_all: Винаги да се скрива мултимедията
         setting_display_media_show_all: Винаги да се показва мултимедията
         setting_hide_network: В профила ви ще бъде скрито кой може да последвате и кой може да ви последва
+        setting_use_blurhash: Преливането се определя от цветовете на скритите изображения, но детайлите остават скрити
+        setting_use_pending_items: Инфопотокът ще се обновява само при кликване, вместо автоматично
         username: Вашето потребителско име ще е неповторим в %{domain}
+      featured_tag:
+        name: 'Ето няколко хаштага, които последно сте използвали:'
       form_admin_settings:
         site_contact_username: Как хората могат да ви достигнат в Mastodon.
         site_extended_description: Всяка допълнителна информация, която може да е полезна за посетителите и потребителите ви. Може да се структурира със синтаксиса на Markdown.
@@ -61,8 +87,10 @@ bg:
         confirm_password: Потвърди паролата
         current_password: Текуща парола
         data: Данни
+        discoverable: Препоръчайте своя акаунт
         display_name: Показвано име
         email: Адрес на имейла
+        fields: Метаданни за профила
         header: Заглавен ред
         locale: Език на интерфейса
         locked: Направи акаунта поверителен
@@ -72,14 +100,27 @@ bg:
         otp_attempt: Двуфакторен код
         password: Парола
         phrase: Ключова дума или фраза
+        setting_advanced_layout: Включете разширения уеб интерфейс
+        setting_always_send_emails: Винаги да се изпращат известия по имейл
         setting_auto_play_gif: Самопускащи се анимирани гифчета
+        setting_boost_modal: Показване на диалога за потвърждение преди споделяне
+        setting_crop_images: Изрязване на изображения от неразгънати публикации до 16x9
         setting_default_language: Език на публикуване
         setting_default_privacy: Поверителност на публикациите
         setting_default_sensitive: Винаги да се отбелязва мултимедията като деликатна
+        setting_delete_modal: Показване на диалога за потвърждение преди изтриване на публикация
+        setting_disable_swiping: Деактивиране на бързо плъзгащи движения
+        setting_display_media: Показване на мултимедия
         setting_display_media_default: Стандартно
         setting_display_media_hide_all: Скриване на всичко
         setting_display_media_show_all: Показване на всичко
+        setting_expand_spoilers: Постоянно разширяване на публикации, маркирани с предупреждения
+        setting_reduce_motion: Забавяне на движението на анимациите
+        setting_system_font_ui: Използване на системния шрифт по подразбиране
         setting_theme: Тема на сайта
+        setting_trends: Показване на ежедневните актуални теми
+        setting_unfollow_modal: Показване на диалога за потвърждение преди прекратяване следването на акаунт
+        setting_use_blurhash: Показване на цветно преливане за скрита мултимедия
         setting_use_pending_items: Бавен режим
         sign_in_token_attempt: Код за сигурност
         title: Заглавие
diff --git a/config/locales/simple_form.br.yml b/config/locales/simple_form.br.yml
index 8c490e952..09fe1f6d1 100644
--- a/config/locales/simple_form.br.yml
+++ b/config/locales/simple_form.br.yml
@@ -11,6 +11,10 @@ br:
       form_challenge:
         current_password: Emaoc'h o tont-tre ul lec'h diogel
     labels:
+      account:
+        fields:
+          name: Label
+          value: Endalc'h
       account_warning_preset:
         title: Titl
       admin_account_action:
@@ -18,6 +22,7 @@ br:
         types:
           disable: Skornañ
           sensitive: Kizidik
+          silence: Bevenn
           suspend: Astalañ
       announcement:
         all_day: Darvoud a-hed an devezh
@@ -38,11 +43,14 @@ br:
         header: Talbenn
         locale: Yezh ar c'hetal
         new_password: Ger-tremen nevez
+        note: Kinnig
         password: Ger-tremen
         phrase: Ger-alc'hwez pe frazenn
         setting_display_media_default: Dre ziouer
         setting_display_media_hide_all: Kuzhat pep tra
         setting_display_media_show_all: Diskouez pep tra
+        setting_use_pending_items: Mod gorrek
+        title: Titl
         username: Anv
         whole_word: Ger a-bezh
       featured_tag:
@@ -50,12 +58,20 @@ br:
       invite:
         comment: Evezhiadenn
       ip_block:
+        comment: Evezhiadenn
         ip: IP
+        severity: Reolenn
       notification_emails:
         follow: Heuliañ a ra {name} ac'hanoc'h
+      rule:
+        text: Reolenn
       tag:
         name: Ger-klik
         trendable: Aotren an hashtag-mañ da zont war wel dindan tuadurioù
+      user:
+        role: Roll
+      user_role:
+        name: Anv
     'no': Ket
     recommended: Erbedet
     required:
diff --git a/config/locales/simple_form.bs.yml b/config/locales/simple_form.bs.yml
new file mode 100644
index 000000000..e9e174462
--- /dev/null
+++ b/config/locales/simple_form.bs.yml
@@ -0,0 +1 @@
+bs:
diff --git a/config/locales/simple_form.ca.yml b/config/locales/simple_form.ca.yml
index c392d4061..597d97859 100644
--- a/config/locales/simple_form.ca.yml
+++ b/config/locales/simple_form.ca.yml
@@ -12,7 +12,7 @@ ca:
       admin_account_action:
         include_statuses: L'usuari veurà quines publicacions han provocat que s'hagi moderat o avisat
         send_email_notification: L'usuari rebrà una explicació del que ha passat amb el seu compte
-        text_html: Opcional. A les publicacions, pots usar tota la sintaxi. Pots <a href="%{path}">afegir configuracions predefinides d'avís</a> per estalviar temps
+        text_html: Opcional. En les publicacions, pots usar tota la sintaxi. Pots <a href="%{path}">afegir configuracions predefinides d'avís</a> per a estalviar temps
         type_html: Tria què fer amb <strong>%{acct}</strong>
         types:
           disable: Evita que l'usuari faci servir el seu compte, però no esborris ni amaguis el seu contingut.
@@ -24,9 +24,9 @@ ca:
       announcement:
         all_day: Si es marca, només es mostraran les dates de l'interval de temps
         ends_at: Opcional. En aquest moment, l'anunci no es publicarà automàticament
-        scheduled_at: Deixa-ho en blanc per publicar l’anunci immediatament
+        scheduled_at: Deixa-ho en blanc per a publicar l’anunci immediatament
         starts_at: Opcional. En cas que el teu anunci estigui vinculat a un interval de temps específic
-        text: Pots utilitzar la sintaxi de publicacions. Tingues en compte l’espai que l’anunci ocuparà a la pantalla de l’usuari
+        text: Pots fer servir la sintaxi de publicacions. Tingues en compte l’espai que l’anunci ocuparà a la pantalla de l’usuari
       appeal:
         text: Només pots emetre una apel·lació per cada acció
       defaults:
@@ -35,28 +35,28 @@ ca:
         bot: Notifica que aquest compte realitza principalment accions automatitzades i que pot no estar controlat per cap persona
         context: Un o diversos contextos en què s'ha d'aplicar el filtre
         current_password: Per motius de seguretat, introdueix la contrasenya del compte actual
-        current_username: Per confirmar-ho, introdueix el nom d'usuari del compte actual
+        current_username: Per a confirmar, si us plau entra el nom d'usuari del compte actual
         digest: Només s'envia després d'un llarg període d'inactivitat i només si has rebut algun missatge personal durant la teva absència
         discoverable: Permet que el teu compte sigui descobert per desconeguts a través de recomanacions, etiquetes i altres característiques
         email: Se t'enviarà un correu electrònic de confirmació
         fields: Pots tenir fins a 4 elements que es mostren com a taula al teu perfil
         header: PNG, GIF o JPG de com a màxim %{size}. S'escalarà a %{dimensions}px
-        inbox_url: Copia l'URL de la pàgina principal del relay que vols utilitzar
+        inbox_url: Copia l'URL de la pàgina principal del relay que vols usar
         irreversible: Les publicacions filtrades desapareixeran de manera irreversible, fins i tot si el filtre s'elimina més tard
         locale: L'idioma de la interfície d’usuari, els correus i les notificacions push
         locked: Controla manualment qui et pot seguir, aprovant sol·licituds
         password: Utilitza com a mínim 8 caràcters
-        phrase: Es combinarà independentment del format en el text o l'avís de contingut de la publicació
-        scopes: API permeses per accedir a l'aplicació. Si selecciones un àmbit de nivell superior, no cal que en seleccions un d'individual.
+        phrase: Es combinarà independentment del format en el text o l'avís de contingut del tut
+        scopes: API permeses per a accedir a l'aplicació. Si selecciones un àmbit de nivell superior, no cal que en seleccionis un d'individual.
         setting_aggregate_reblogs: No mostris els nous impulsos de les publicacions que ja s'han impulsat recentment (només afecta els nous impulsos rebuts)
         setting_always_send_emails: Normalment, no s'enviarà cap notificació per correu electrònic mentre facis servir Mastodon
-        setting_default_sensitive: El contingut gràfic i sensible està ocult per defecte i es pot mostrar fent-hi clic
-        setting_display_media_default: Ocultar el contigut gràfic marcat com a sensible
+        setting_default_sensitive: El contingut sensible està ocult per defecte i es pot mostrar fent-hi clic
+        setting_display_media_default: Ocultar el contingut gràfic marcat com a sensible
         setting_display_media_hide_all: Oculta sempre tot el contingut multimèdia
-        setting_display_media_show_all: Mostrar sempre el contingut gràfic
+        setting_display_media_show_all: Mostra sempre el contingut gràfic
         setting_hide_network: Qui segueixes i els que et segueixen no es mostraran en el teu perfil
         setting_noindex: Afecta el teu perfil públic i les pàgines d'estat
-        setting_show_application: L'aplicació que fas servir per publicar es mostrarà a la vista detallada de les publicacions
+        setting_show_application: L'aplicació que fas servir per a publicar es mostrarà en la vista detallada de les publicacions
         setting_use_blurhash: Els degradats es basen en els colors de les imatges ocultes, però n'enfosqueixen els detalls
         setting_use_pending_items: Amaga les actualitzacions de la línia de temps després de fer un clic en lloc de desplaçar automàticament les publicacions
         username: El teu nom d'usuari serà únic a %{domain}
@@ -72,25 +72,25 @@ ca:
         action: Tria quina acció cal executar quan un apunt coincideixi amb el filtre
         actions:
           hide: Ocultar completament el contingut filtrat, comportant-se com si no existís
-          warn: Oculta el contingut filtrat rera un avís mencionant el títol del filtre
+          warn: Oculta el contingut filtrat darrere d'un avís mencionant el títol del filtre
       form_admin_settings:
-        backups_retention_period: Mantenir els arxius d'usuari generats durant el número de dies especificats.
+        backups_retention_period: Manté els arxius d'usuari generats durant el nombre de dies especificats.
         bootstrap_timeline_accounts: Aquests comptes es fixaran en la part superior de les recomanacions de seguiment dels nous usuaris.
         closed_registrations_message: Mostrat quan el registres estan tancats
         content_cache_retention_period: Les publicacions d'altres servidors se suprimiran després del nombre de dies especificat quan s'estableix un valor positiu. Això pot ser irreversible.
         custom_css: Pots aplicar estils personalitzats en la versió web de Mastodon.
-        mascot: Anul·la l'ilustració en l'interfície web avançada.
-        media_cache_retention_period: Els fitxers multimèdia descarregats s'esborraran després del número de dies especificat quan el valor configurat és positiu, i tornats a descarregats sota demanda.
+        mascot: Anul·la la il·lustració en la interfície web avançada.
+        media_cache_retention_period: Els fitxers multimèdia descarregats s'esborraran després del nombre de dies especificat quan el valor configurat és positiu, i tornats a descarregats sota demanda.
         profile_directory: El directori de perfils llista tots els usuaris que tenen activat ser descoberts.
-        require_invite_text: Quan el registre requereix aprovació manual, fer que sigui obligatori enlloc d'opcional escriure el text de la solicitud d'invitació "Perquè vols unirte?"
+        require_invite_text: Quan el registre requereix aprovació manual, fes que sigui obligatori en lloc d'opcional escriure el text de la sol·licitud d'invitació "Per què vols unir-te?"
         site_contact_email: Com pot la gent comunicar amb tu per a consultes legals o de recolzament.
         site_contact_username: Com pot la gent trobar-te a Mastodon.
-        site_extended_description: Qualsevol informació adicional que pot ser útil per els visitants i els teus usuaris. Pot ser estructurat amb format Markdown.
-        site_short_description: Una descripció curta per ajudar a identificar de manera única el teu servidor. Qui el fa anar, per a qui és?
+        site_extended_description: Qualsevol informació addicional que pot ser útil per als visitants i els teus usuaris. Es pot estructurar amb format Markdown.
+        site_short_description: Una descripció curta per a ajudar a identificar de manera única el teu servidor. Qui el fa anar, per a qui és?
         site_terms: Usa la teva pròpia política de privacitat o deixa-ho en blanc per a usar la per defecte. Pot ser estructurat amb format Markdown.
         site_title: Com pot la gent referir-se al teu servidor a part del seu nom de domini.
         theme: El tema que els visitants i els nous usuaris veuen.
-        thumbnail: Una imatge d'aproximadament 2:1 mostrada junt l'informació del teu servidor.
+        thumbnail: Una imatge d'aproximadament 2:1 que es mostra al costat la informació del teu servidor.
         timeline_preview: Els visitants amb sessió no iniciada seran capaços de navegar per les publicacions més recents en el teu servidor.
         trendable_by_default: Omet la revisió manual del contingut en tendència. Els articles individuals poden encara ser eliminats després del fet.
         trends: Les tendències mostren quines publicacions, etiquetes i notícies estan guanyant força al vostre servidor.
@@ -101,8 +101,8 @@ ca:
       invite_request:
         text: Això ens ajudarà a revisar la teva petició
       ip_block:
-        comment: Opcional. Recordatori de perquè l’has afegit.
-        expires_in: Les adreces IP son un recurs finit, de vegades son compartides i sovint canvien de mans. Per aquest motiu no es recomanen els bloquejos d’IP indefinits.
+        comment: Opcional. Recordatori de per què l’has afegit.
+        expires_in: Les adreces IP són un recurs finit, a vegades són compartides i sovint canvien de mans. Per aquest motiu, no es recomanen els bloquejos d’IP indefinits.
         ip: Introdueix una adreça IPv4 o IPv6. Pots bloquejar rangs complets amb la sintaxi CIDR. Ves a compte no et bloquegis a tu mateix!
         severities:
           no_access: Bloqueja l’accés a tots els recursos
@@ -113,15 +113,15 @@ ca:
         text: Descriu una norma o requeriment pels usuaris d'aquest servidor. Intenta fer-la curta i senzilla
       sessions:
         otp: 'Introdueix el codi de dos factors generat per el teu telèfon o utilitza un dels teus codis de recuperació:'
-        webauthn: Si és una clau USB assegurat de que està inserida i, si és necessari, toca-ho.
+        webauthn: Si és una clau USB, assegura't que està inserida i, si cal, toca-la.
       tag:
         name: Només pots canviar la caixa de les lletres, per exemple, per fer-la més llegible
       user:
         chosen_languages: Quan estigui marcat, només es mostraran les publicacions en les llengües seleccionades en les línies de temps públiques
         role: El rol controla quines permissions té l'usuari
       user_role:
-        color: Color que s'utilitzarà per al rol a tota la interfície d'usuari, com a RGB en format hexadecimal
-        highlighted: Això torno el rol visibile publicament
+        color: Color que s'usarà per al rol a tota la interfície d'usuari, com a RGB en format hexadecimal
+        highlighted: Això fa el rol visible públicament
         name: Nom públic del rol, si el rol està configurat per a ser mostrat com a insígnia
         permissions_as_keys: Els usuaris amb aquest rol tingran accés a...
         position: El rol superior decideix la resolució de conflictes en certes situacions. Certes accions només es poden realitzar amb rols amb menor prioritat
@@ -154,12 +154,12 @@ ca:
         warning_preset_id: Utilitza una configuració predefinida d'avís
       announcement:
         all_day: Esdeveniment de tot el dia
-        ends_at: Fi del esdeveniment
+        ends_at: Fi de l'esdeveniment
         scheduled_at: Programa la publicació
-        starts_at: Inici del esdeveniment
+        starts_at: Inici de l'esdeveniment
         text: Anunci
       appeal:
-        text: Explica perquè aquesta decisió hauria de ser revertida
+        text: Explica per què aquesta decisió s'hauria de revertir
       defaults:
         autofollow: Convidar a seguir el teu compte
         avatar: Avatar
@@ -190,28 +190,28 @@ ca:
         setting_advanced_layout: Activa la interfície web avançada
         setting_aggregate_reblogs: Agrupar impulsos en les línies de temps
         setting_always_send_emails: Envia'm sempre notificacions per correu electrònic
-        setting_auto_play_gif: Reproduir automàticament els GIFs animats
-        setting_boost_modal: Mostrar la finestra de confirmació abans d'impulsar
+        setting_auto_play_gif: Reprodueix automàticament els GIF animats
+        setting_boost_modal: Mostra la finestra de confirmació abans d'impulsar
         setting_crop_images: Retalla les imatges en publicacions no ampliades a 16x9
         setting_default_language: Idioma de les publicacions
         setting_default_privacy: Privacitat de les publicacions
         setting_default_sensitive: Marcar sempre el contingut gràfic com a sensible
-        setting_delete_modal: Mostrar la finestra de confirmació abans d'esborrar una publicació
+        setting_delete_modal: Mostra la finestra de confirmació abans d'esborrar un tut
         setting_disable_swiping: Desactiva les animacions
         setting_display_media: Visualització multimèdia
         setting_display_media_default: Per defecte
         setting_display_media_hide_all: Amaga-ho tot
         setting_display_media_show_all: Mostra-ho tot
-        setting_expand_spoilers: Sempre ampliar les publicacions marcades amb advertències de contingut
-        setting_hide_network: Amagar la teva xarxa
+        setting_expand_spoilers: Desplega sempre les publicacions marcades amb advertències de contingut
+        setting_hide_network: Amaga la teva xarxa
         setting_noindex: Desactiva la indexació dels motors de cerca
-        setting_reduce_motion: Reduir el moviment de les animacions
+        setting_reduce_motion: Redueix el moviment de les animacions
         setting_show_application: Revelar l'aplicació utilitzada per fer les publicacions
-        setting_system_font_ui: Utilitzar el tipus de lletra predeterminat del sistema
+        setting_system_font_ui: Usa la lletra predeterminada del sistema
         setting_theme: Tema del lloc
         setting_trends: Mostra les tendències d'avui
-        setting_unfollow_modal: Mostrar el diàleg de confirmació abans de deixar de seguir a algú
-        setting_use_blurhash: Mostrar degradats de colors per al contigut gràfic ocult
+        setting_unfollow_modal: Mostra el diàleg de confirmació abans de deixar de seguir algú
+        setting_use_blurhash: Mostra degradats de colors per al contingut gràfic ocult
         setting_use_pending_items: Mode lent
         severity: Severitat
         sign_in_token_attempt: Codi de seguretat
@@ -232,7 +232,7 @@ ca:
         backups_retention_period: Període de retenció del arxiu d'usuari
         bootstrap_timeline_accounts: Recomana sempre aquests comptes als nous usuaris
         closed_registrations_message: Missatge personalitzat quan el registre està tancat
-        content_cache_retention_period: Periode de retenció de la memòria cau de contingut
+        content_cache_retention_period: Període de retenció de la memòria cau de contingut
         custom_css: CSS personalitzat
         mascot: Mascota personalitzada (llegat)
         media_cache_retention_period: Període de retenció del cau multimèdia
@@ -277,7 +277,7 @@ ca:
         mention: Algú et menciona
         pending_account: Un nou compte necessita revisió
         reblog: Algú comparteix el teu estat
-        report: Nou informe és emés
+        report: S'ha enviat l'informe nou
         trending_tag: Nova tendència requereix revisió
       rule:
         text: Norma
@@ -290,13 +290,13 @@ ca:
         role: Rol
       user_role:
         color: Color de la insígnia
-        highlighted: Motra el rol com a insígnia en el perfil dels usuaris
+        highlighted: Mostra el rol com a insígnia en el perfil dels usuaris
         name: Nom
         permissions_as_keys: Permisos
         position: Prioritat
       webhook:
         events: Esdeveniments activats
-        url: URL del extrem
+        url: URL de l'extrem
     'no': 'No'
     not_recommended: No recomanat
     recommended: Recomanat
diff --git a/config/locales/simple_form.cy.yml b/config/locales/simple_form.cy.yml
index 78215dfa0..48357b4bc 100644
--- a/config/locales/simple_form.cy.yml
+++ b/config/locales/simple_form.cy.yml
@@ -3,71 +3,131 @@ cy:
   simple_form:
     hints:
       account_alias:
-        acct: Rhowch enwdefnyddiwr@parth y cyfrif rydych chi am symud ohono
+        acct: Rhowch enwdefnyddiwr@parth y cyfrif y hoffech chi symud ohono
       account_migration:
         acct: Rhowch enwdefnyddiwr@parth y cyfrif rydych chi am symud iddo
       account_warning_preset:
-        text: Gallwch defnyddio cystrawen tŵt, fel URLs, hashnodau a sôniadau
-        title: Yn ddewisiol. Ddim yn weladwy i'r derbynydd
+        text: Gallwch defnyddio cystrawen post, fel URLs, hashnodau a chrybwylliadau
+        title: Dewisol. Nid yw'n weladwy i'r derbynnydd
       admin_account_action:
-        include_statuses: Bydd y defnyddiwr yn gweld pa tŵtiau sydd wedi achosi'r weithred gymedroli neu'r rhybudd
-        send_email_notification: Bydd y defnyddiwr yn derbyn esboniad o beth digwyddodd gyda'i cyfrif
-        text_html: Yn ddewisol. Gallwch defnyddio cystrawen tŵt. Gallwch <a href="%{path}">ychwanegu rhagosodiadau rhybydd</a> i arbed amser
+        include_statuses: Bydd y defnyddiwr yn gweld pa bostiadau sydd wedi achosi'r weithred gymedroli neu'r rhybudd
+        send_email_notification: Bydd y defnyddiwr yn derbyn esboniad o'r hyn a ddigwyddodd â'i gyfrif
+        text_html: Yn ddewisol. Gallwch defnyddio cystrawen post. Gallwch <a href="%{path}">ychwanegu rhagosodiadau rhybydd</a> i arbed amser
         type_html: Dewis beth i wneud gyda <strong>%{acct}</strong>
-        warning_preset_id: Yn ddewisol. Gallwch dal ychwanegu testun addasiol I ddiwedd y rhagosodiad
+        types:
+          disable: Yn atal y defnyddiwr rhag defnyddio ei gyfrif, ond peidio â dileu neu guddio ei gynnwys.
+          none: Defnyddio hwn i anfon rhybudd at y defnyddiwr, heb ysgogi unrhyw gamau eraill.
+          sensitive: Gorfodi holl atodiadau cyfryngau'r defnyddiwr hwn i gael eu nodi fel rhai sensitif.
+          silence: Atal y defnyddiwr rhag gallu postio gyda gwelededd cyhoeddus, cuddio ei bostiadau a'i hysbysiadau rhag pobl nad ydyn nhw'n eu dilyn.
+          suspend: Atal unrhyw ryngweithio o neu i'r cyfrif hwn a dileu ei gynnwys. Mae modd ei ddadwneud o fewn 30 diwrnod.
+        warning_preset_id: Yn ddewisol. Gallwch dal ychwanegu testun cyfaddas i ddiwedd y rhagosodiad
       announcement:
-        all_day: Pam ddewisir, caiff ddim ond dyddiau o'r amrediad amser ei ymddangos
-        ends_at: Dewisiol. Caiff y cyhoeddiad ei angyhoeddi yn awtomatig at yr amser hon
+        all_day: Pan gaiff ei wirio, dim ond dyddiadau'r ystod amser fydd yn cael eu harddangos
+        ends_at: Dewisol. N fydd y cyhoeddiad yn cael ei gyhoeddi'n awtomatig ar yr adeg hon
         scheduled_at: Gadael yn wag i gyhoeddi'r cyhoeddiad ar unwaith
-        starts_at: Dewisiol. Os mae eich cyhoeddiad yn gyfyniedig i amrediad amser penodol
-        text: Gallwch defnyddio cystrawen tŵt. Byddwch yn ymwybodol o'r lle cymerir y cyhoeddiad ar sgrin y defnyddwr
+        starts_at: Dewisol. Rhag ofn bod eich cyhoeddiad yn gaeth i ystod amser benodol
+        text: Gallwch ddefnyddio cystrawen post. Cofiwch faint o le y bydd y cyhoeddiad yn ei gymryd ar sgrin y defnyddiwr
+      appeal:
+        text: Dim ond unwaith y gallwch apelio yn erbyn rhybudd
       defaults:
         autofollow: Bydd pobl sy'n cofrestru drwy'r gwahoddiad yn eich dilyn yn awtomatig
-        avatar: PNG, GIF neu JPG. %{size} ar y mwyaf. Caiff ei israddio i %{dimensions}px
+        avatar: PNG, GIF neu JPG. %{size} yn uchafswm. Bydd yn cael ei israddio i %{dimensions}px
         bot: Mae'r cyfrif hwn yn perfformio gweithredoedd awtomatig yn bennaf ac mae'n bosib nad yw'n cael ei fonitro
         context: Un neu fwy cyd-destun lle dylai'r hidlydd weithio
         current_password: At ddibenion diogelwch, nodwch gyfrinair y cyfrif cyfredol
         current_username: I gadarnhau, nodwch enw defnyddiwr y cyfrif cyfredol
         digest: Ond yn cael eu hanfon ar ôl cyfnod hir o anweithgarwch ac ond os ydych wedi derbyn unrhyw negeseuon personol yn eich absenoldeb
-        email: Byddwch yn derbyn e-bost i gadarnhau
-        fields: Mae modd i chi arddangos hyd at 4 eitem fel tabl ar eich proffil
-        header: PNG, GIF neu JPG. %{size} ar y mwyaf. Ceith ei israddio i %{dimensions}px
+        discoverable: Caniatáu i'ch cyfrif gael ei ddarganfod gan ddieithriaid trwy argymhellion, pynciau llosg a nodweddion eraill
+        email: Byddwch yn derbyn e-bost cadarnhau
+        fields: Mae modd i chi ddangos hyd at 4 eitem fel tabl ar eich proffil
+        header: PNG, GIF neu JPG. %{size} ar y mwyaf. Bydd yn cael ei israddio i %{dimensions}px
         inbox_url: Copïwch yr URL o dudalen flaen y relái yr ydych am ei ddefnyddio
-        irreversible: Bydd tŵtiau wedi eu hidlo yn diflannu am byth, hyd yn oed os ceith yr hidlydd ei ddileu'n hwyrach
+        irreversible: Bydd postiadau wedi'u hidlo'n diflannu'n ddiwrthdro, hyd yn oed os caiff yr hidlydd ei dynnu'n ddiweddarach
         locale: Iaith y rhyngwyneb, e-byst a hysbysiadau gwthiadwy
-        locked: Ei wneud yn ofynnol i chi i ganiatau dilynwyr a llaw
-        password: Defnyddiwch oleiaf 8 nodyn
-        phrase: Caiff ei gyfateb heb ystyriaeth o briflythrennu mewn testun neu rhybudd ynghylch cynnwys tŵt
-        scopes: Pa APIau y bydd gan y rhaglen ganiatad i gael mynediad iddynt. Os dewiswch maes lefel uchaf, yna nid oes angen dewis rhai unigol.
-        setting_aggregate_reblogs: Paid dangos bŵstiau newydd ar gyfer tŵtiau sydd wedi'i fŵstio yn ddiweddar (dim ond yn effeithio bŵstiau newydd ei dderbyn)
-        setting_default_sensitive: Mae cyfryngau sensitif yn cael ei gyddio'n rhagosodiedig, a gall cael eu dangos â chlic
+        locked: Mae hyn yn eich galluogi i reoli pwy sy'n gallu eich dilyn drwy gymeradwyo ceisiadau dilyn
+        password: Defnyddiwch o leiaf 8 nod
+        phrase: Caiff ei gyfateb heb ystyriaeth o briflythrennu mewn testun neu rhybudd ynghylch cynnwys postiad
+        scopes: Pa APIs y bydd y rhaglen yn cael mynediad iddynt. Os dewiswch gwmpas lefel uchaf, nid oes angen i chi ddewis rhai unigol.
+        setting_aggregate_reblogs: Peidiwch â dangos hybiau newydd ar bostiadau sydd wedi cael eu hybu'n ddiweddar (dim ond yn effeithio ar hybiau newydd ei dderbyn)
+        setting_always_send_emails: Fel arfer ni fydd hysbysiadau e-bost yn cael eu hanfon pan fyddwch chi wrthi'n defnyddio Mastodon
+        setting_default_sensitive: Mae cyfryngau sensitif wedi'u cuddio yn rhagosodedig a gellir eu datgelu trwy glicio
         setting_display_media_default: Cuddio cyfryngau wedi eu marcio'n sensitif
         setting_display_media_hide_all: Cuddio cyfryngau bob tro
-        setting_display_media_show_all: Dangos cyfryngau wedi eu marcio'n sensitif bob tro
-        setting_hide_network: Ni fydd y rheini yr ydych yn eu dilyn a phwy sy'n eich dilyn chi yn cael ei ddangos ar eich proffil
+        setting_display_media_show_all: Dangos cyfryngau bob tro
+        setting_hide_network: Ni fydd y pobl yr ydych chi'n eu dilyn a'ch dilynwyr yn ymddangos ar eich proffil
         setting_noindex: Mae hyn yn effeithio ar eich proffil cyhoeddus a'ch tudalennau statws
-        setting_show_application: Bydd y offer frydych yn defnyddio i dŵtio yn cael ei arddangos yn golwg manwl eich tŵtiau
-        setting_use_blurhash: Mae graddiannau wedi'u seilio ar liwiau'r delweddau cudd ond maent yn cuddio unrhyw fanylion
-        setting_use_pending_items: Cuddio diweddariadau llinell amser y tu ôl i glic yn lle sgrolio yn awtomatig
+        setting_show_application: Bydd y cymhwysiad a ddefnyddiwch i bostio yn cael ei arddangos yng ngolwg fanwl eich postiadau
+        setting_use_blurhash: Mae graddiannau wedi'u seilio ar liwiau'r delweddau cudd ond maen nhw'n cuddio unrhyw fanylion
+        setting_use_pending_items: Cuddio diweddariadau llinell amser y tu ôl i glic yn lle sgrolio'n awtomatig
         username: Bydd eich enw defnyddiwr yn unigryw ar %{domain}
         whole_word: Os yw'r allweddair neu'r ymadrodd yn alffaniwmerig yn unig, mi fydd ond yn cael ei osod os yw'n cyfateb a'r gair cyfan
       domain_allow:
         domain: Bydd y parth hwn yn gallu nôl data o'r gweinydd hwn a bydd data sy'n dod i mewn ohono yn cael ei brosesu a'i storio
       email_domain_block:
         domain: Gall hwn fod yr enw parth sy'n ymddangos yn y cyfeiriad e-bost neu'r cofnod MX y mae'n ei ddefnyddio. Byddant yn cael eu gwirio wrth gofrestru.
-        with_dns_records: Bydd ceisiad i adfer cofnodau DNS y parth penodol yn cael ei wneud, a bydd y canlyniadau hefyd yn cael ei gosbrestru
+        with_dns_records: Gwneir ymgais i ddatrys cofnodion DNS y parth a roddwyd a bydd y canlyniadau hefyd yn cael eu rhwystro
+      featured_tag:
+        name: 'Dyma rai o’r hashnodau a ddefnyddioch chi''n ddiweddar:'
+      filters:
+        action: Dewiswch pa weithred i'w chyflawni pan fydd postiad yn cyfateb i'r hidlydd
+        actions:
+          hide: Cuddiwch y cynnwys wedi'i hidlo'n llwyr, gan ymddwyn fel pe na bai'n bodoli
+          warn: Cuddiwch y cynnwys wedi'i hidlo y tu ôl i rybudd sy'n sôn am deitl yr hidlydd
+      form_admin_settings:
+        backups_retention_period: Cadw archifau defnyddwyr a gynhyrchwyd am y nifer penodedig o ddyddiau.
+        bootstrap_timeline_accounts: Bydd y cyfrifon hyn yn cael eu pinio i frig argymhellion dilynol defnyddwyr newydd.
+        closed_registrations_message: Yn cael eu dangos pan fydd cofrestriadau wedi cau
+        content_cache_retention_period: Bydd postiadau o weinyddion eraill yn cael eu dileu ar ôl y nifer penodedig o ddyddiau pan fyddan nhw wedi'u gosod i werth positif. Gall nad oes modd dadwneud hyn.
+        custom_css: Gallwch gymhwyso arddulliau cyfaddas ar fersiwn gwe Mastodon.
+        mascot: Yn diystyru'r darlun yn y rhyngwyneb gwe uwch.
+        media_cache_retention_period: Bydd ffeiliau cyfryngau wedi'u llwytho i lawr yn cael eu dileu ar ôl y nifer penodedig o ddyddiau pan gânt eu gosod i werth cadarnhaol, a'u hail-lwytho i lawr ar alw.
+        profile_directory: Mae'r cyfeiriadur proffil yn rhestru'r holl ddefnyddwyr sydd wedi dewis i fod yn ddarganfyddiadwy.
+        require_invite_text: Pan fydd angen cymeradwyaeth â llaw ar gyfer cofrestriadau, gwnewch y “Pam ydych chi am ymuno?” mewnbwn testun yn orfodol yn hytrach na dewisol
+        site_contact_email: Sut y gall pobl gysylltu â chi ar gyfer ymholiadau cyfreithiol neu gymorth.
+        site_contact_username: Sut y gall pobl eich cyrraedd ar Mastodon.
+        site_extended_description: Unrhyw wybodaeth ychwanegol a allai fod yn ddefnyddiol i ymwelwyr a'ch defnyddwyr. Mae modd ei strwythuro gyda chystrawen Markdown.
+        site_short_description: Disgrifiad byr i helpu i adnabod eich gweinydd yn unigryw. Pwy sy'n ei redeg, ar gyfer pwy mae e?
+        site_terms: Defnyddiwch eich polisi preifatrwydd eich hun neu gadewch yn wag i ddefnyddio'r rhagosodiad. Mae modd ei strwythuro gyda chystrawen Markdown.
+        site_title: Sut y gall pobl gyfeirio at eich gweinydd ar wahân i'w enw parth.
+        theme: Thema sy'n allgofnodi ymwelwyr a defnyddwyr newydd yn gweld.
+        thumbnail: Delwedd tua 2:1 yn cael ei dangos ochr yn ochr â manylion eich gweinydd.
+        timeline_preview: Bydd ymwelwyr sydd wedi allgofnodi yn gallu pori drwy'r postiadau cyhoeddus diweddaraf sydd ar gael ar y gweinydd.
+        trendable_by_default: Hepgor adolygiad llaw o gynnwys sy'n tueddu. Gall eitemau unigol gael eu tynnu o dueddiadau o hyd ar ôl y ffaith.
+        trends: Mae pynciau llosg yn dangos y postiadau, hashnodau, a newyddion sy'n denu sylw ar eich gweinydd.
       form_challenge:
-        current_password: Rydych chi'n mynd i mewn i ardal sicr
+        current_password: Rydych chi'n mynd i mewn i ardal ddiogel
       imports:
         data: Allforiwyd dogfen CSV o achos Mastodon arall
       invite_request:
         text: Bydd hyn yn helpu ni adolygu eich cais
+      ip_block:
+        comment: Dewisol. Cofiwch pam wnaethoch chi ychwanegu'r rheol hon.
+        expires_in: Mae cyfeiriadau IP yn adnodd cyfyngedig, weithiau maen nhw'n cael eu rhannu ac yn aml yn newid dwylo. Am y rheswm hwn, ni argymhellir blociau IP amhenodol.
+        ip: Rhowch gyfeiriad IPv4 neu IPv6. Gallwch rwystro ystodau cyfan gan ddefnyddio'r gystrawen CIDR. Byddwch yn ofalus i beidio â chloi eich hun allan!
+        severities:
+          no_access: Rhwystro mynediad i'r holl adnoddau
+          sign_up_block: Ni fydd yn bosibl derbyn cofrestriadau newydd
+          sign_up_requires_approval: Bydd angen eich cymeradwyaeth ar gyfer cofrestriadau newydd
+        severity: Dewiswch beth fydd yn digwydd gyda cheisiadau o'r IP hwn
+      rule:
+        text: Disgrifiwch reol neu ofyniad ar gyfer defnyddwyr ar y gweinydd hwn. Ceisiwch ei gadw'n fyr ac yn syml
       sessions:
         otp: 'Mewnbynnwch y cod dau gam a gynhyrchwyd gan eich ap ffôn neu defnyddiwch un o''ch codau adfer:'
+        webauthn: Os mai allwedd USB ydyw, gwnewch yn siŵr ei fewnosod ac, os oes angen, tapiwch ef.
       tag:
         name: Dim ond er mwyn ei gwneud yn fwy darllenadwy y gallwch chi newid y llythrennau, er enghraifft
       user:
         chosen_languages: Wedi eu dewis, dim ond tŵtiau yn yr ieithoedd hyn bydd yn cael eu harddangos mewn ffrydiau cyhoeddus
+        role: Mae'r rôl yn rheoli pa ganiatâd sydd gan y defnyddiwr
+      user_role:
+        color: Lliw i'w ddefnyddio ar gyfer y rôl drwy'r UI, fel RGB mewn fformat hecs
+        highlighted: Mae hyn yn gwneud y rôl yn weladwy i'r cyhoedd
+        name: Enw cyhoeddus y rôl, os yw'r rôl wedi'i gosod i'w dangos fel bathodyn
+        permissions_as_keys: Bydd defnyddwyr sydd â'r rôl hon yn cael mynediad at...
+        position: Mae rôl uwch yn penderfynu ar ddatrys gwrthdrawiadau mewn rhai sefyllfaoedd. Dim ond ar rolau â blaenoriaeth is y gellir cyflawni rhai gweithredoedd
+      webhook:
+        events: Dewiswch ddigwyddiadau i'w hanfon
+        url: I ble bydd digwyddiadau'n cael eu hanfon
     labels:
       account:
         fields:
@@ -81,23 +141,25 @@ cy:
         text: Testun rhagosodedig
         title: Teitl
       admin_account_action:
-        include_statuses: Cynhwyswch tŵtiau yr adroddwyd amdanynt yn yr e-bost
+        include_statuses: Cynhwyswch postiadau yr adroddwyd amdanynt yn yr e-bost
         send_email_notification: Hysbysu'r defnyddiwr trwy e-bost
-        text: Rhybudd wedi'i addasu
+        text: Rhybudd cyfaddas
         type: Gweithredu
         types:
           disable: Analluogi
-          none: Gwneud dim
+          none: Anfon rhybudd
           sensitive: Sensitif
-          silence: Tawelwch
+          silence: Cyfyngu
           suspend: Dileu data cyfrif
         warning_preset_id: Defnyddiwch ragnod rhag rhybudd
       announcement:
-        all_day: Digwiddiad trwy'r dydd
-        ends_at: Diwedd digwyddiad
+        all_day: Digwyddiad trwy'r dydd
+        ends_at: Diwedd y digwyddiad
         scheduled_at: Amserlenni cyhoeddiad
-        starts_at: Dechreuad digwyddiad
+        starts_at: Dechrau digwyddiad
         text: Cyhoeddiad
+      appeal:
+        text: Eglurwch pam y dylid gwrthdroi'r penderfyniad hwn
       defaults:
         autofollow: Gwahodd i ddilyn eich cyfrif
         avatar: Afatar
@@ -106,50 +168,53 @@ cy:
         confirm_new_password: Cadarnhau cyfrinair newydd
         confirm_password: Cadarnhau cyfrinair
         context: Hidlo cyd-destunau
-        current_password: Cyfrinair presennol
+        current_password: Cyfrinair cyfredol
         data: Data
-        discoverable: Rhestrwch y cyfrif hwn ar y cyfeiriadur
-        display_name: Enw arddangos
+        discoverable: Awgrymu cyfrif i eraill
+        display_name: Enw dangos
         email: Cyfeiriad e-bost
         expires_in: Yn dod i ben ar ôl
         fields: Metadata proffil
         header: Pennyn
+        honeypot: "%{label} (peidiwch â llenwi)"
         inbox_url: URL y mewnflwch relái
         irreversible: Gollwng yn hytrach na chuddio
         locale: Iaith y rhyngwyneb
-        locked: Cloi cyfrif
-        max_uses: Uchafswm y nifer o ddefnyddiau
+        locked: Angen ceisiadau dilyn
+        max_uses: Nifer y ddefnyddiau uchafswm
         new_password: Cyfrinair newydd
         note: Bywgraffiad
         otp_attempt: Côd dau gam
         password: Cyfrinair
         phrase: Allweddair neu ymadrodd
-        setting_advanced_layout: Alluogi rhyngwyneb wê uwch
-        setting_aggregate_reblogs: Grŵp hybiau mewn ffrydiau
+        setting_advanced_layout: Galluogi rhyngwyneb gwe uwch
+        setting_aggregate_reblogs: Grwpio hybiau mewn ffrydiau
+        setting_always_send_emails: Anfonwch hysbysiadau e-bost bob amser
         setting_auto_play_gif: Chwarae GIFs wedi'u hanimeiddio yn awtomatig
-        setting_boost_modal: Dangos deialog cadarnhad cyn bŵstio
-        setting_crop_images: Tocio lluniau o fewn tŵtiau ddi-ehangedig i 16x9
-        setting_default_language: Cyhoeddi iaith
-        setting_default_privacy: Cyfrinachedd cyhoeddi
+        setting_boost_modal: Dangos deialog cadarnhau cyn rhoi hwb
+        setting_crop_images: Tocio delweddau o fewn postiadau nad ydynt wedi'u hehangu i 16x9
+        setting_default_language: Iaith postio
+        setting_default_privacy: Preifatrwydd cyhoeddi
         setting_default_sensitive: Marcio cyfryngau fel eu bod yn sensitif bob tro
-        setting_delete_modal: Dangos deialog cadarnhau cyn dileu tŵt
-        setting_display_media: Arddangos cyfryngau
+        setting_delete_modal: Dangos deialog cadarnhau cyn dileu postiad
+        setting_disable_swiping: Analluogi cynigion llusgo
+        setting_display_media: Dangos cyfryngau
         setting_display_media_default: Rhagosodiad
-        setting_display_media_hide_all: Cuddio oll
-        setting_display_media_show_all: Dangos oll
-        setting_expand_spoilers: Ymestyn tŵtiau wedi'u marcio a rhybudd cynnwys bob tro
-        setting_hide_network: Cuddio eich rhwydwaith
-        setting_noindex: Dewis peidio mynegeio peiriant chwilota
+        setting_display_media_hide_all: Cuddio popeth
+        setting_display_media_show_all: Dangos popeth
+        setting_expand_spoilers: Dangos postiadau wedi'u marcio â rhybudd cynnwys bob tro
+        setting_hide_network: Cuddio eich graff cymdeithasol
+        setting_noindex: Peidio mynegeio peiriannau chwilio
         setting_reduce_motion: Lleihau mudiant mewn animeiddiadau
-        setting_show_application: Datguddio'r offer defnyddwyd i anfon tŵtiau
+        setting_show_application: Datgelu rhaglen a ddefnyddir i anfon postiadau
         setting_system_font_ui: Defnyddio ffont rhagosodedig y system
         setting_theme: Thema'r wefan
-        setting_trends: Dangos tueddiadau o heddiw ymlaen
+        setting_trends: Dangos pynciau llosg heddiw
         setting_unfollow_modal: Dangos deialog cadarnhau cyn dad-ddilyn rhywun
-        setting_use_blurhash: Dangoswch raddiannau lliwgar ar gyfer cyfryngau cudd
+        setting_use_blurhash: Dangos graddiannau lliwgar ar gyfryngau cudd
         setting_use_pending_items: Modd araf
         severity: Difrifoldeb
-        sign_in_token_attempt: Cod dioelwch
+        sign_in_token_attempt: Cod diogelwch
         title: Teitl
         type: Modd mewnforio
         username: Enw defnyddiwr
@@ -159,41 +224,84 @@ cy:
         with_dns_records: Cynnwys cofnodion MX a chyfeiriadau IP y parth
       featured_tag:
         name: Hashnod
+      filters:
+        actions:
+          hide: Cuddio'n llwyr
+          warn: Cuddio â rhybudd
+      form_admin_settings:
+        backups_retention_period: Cyfnod cadw archif defnyddwyr
+        bootstrap_timeline_accounts: Argymhellwch y cyfrifon hyn i ddefnyddwyr newydd bob amser
+        closed_registrations_message: Neges bersonol pan nad yw cofrestriadau ar gael
+        content_cache_retention_period: Cyfnod cadw storfa cynnwys
+        custom_css: CSS cyfaddas
+        mascot: Mascot cyfaddas (hen)
+        media_cache_retention_period: Cyfnod cadw storfa cyfryngau
+        profile_directory: Galluogi cyfeiriadur proffil
+        registrations_mode: Pwy all gofrestru
+        require_invite_text: Gofyn am reswm i ymuno
+        show_domain_blocks: Dangos blociau parth
+        show_domain_blocks_rationale: Dangos pam y cafodd parthau eu rhwystro
+        site_contact_email: E-bost cyswllt
+        site_contact_username: Enw defnyddiwr cyswllt
+        site_extended_description: Disgrifiad estynedig
+        site_short_description: Disgrifiad y gweinydd
+        site_terms: Polisi Preifatrwydd
+        site_title: Enw'r gweinydd
+        theme: Thema ragosodedig
+        thumbnail: Lluniau bach gweinydd
+        timeline_preview: Caniatáu mynediad heb ei ddilysu i linellau amser cyhoeddus
+        trendable_by_default: Caniatáu pynciau llosg heb adolygiad
+        trends: Galluogi pynciau llosg
       interactions:
         must_be_follower: Blocio hysbysiadau o bobl nad ydynt yn eich dilyn
         must_be_following: Blocio hysbysiadau o bobl nad ydych yn eu dilyn
-        must_be_following_dm: Blocio negeseuon uniongyrchol o bobl nad ydych yn eu dilyn
+        must_be_following_dm: Blocio negeseuon preifat o bobl nad ydych yn eu dilyn
       invite:
         comment: Sylw
       invite_request:
-        text: Pam hoffech ymuno?
+        text: Pam ydych chi eisiau ymuno?
       ip_block:
         comment: Sylw
         ip: IP
+        severities:
+          no_access: Rhwystro mynediad
+          sign_up_block: Rhwystro cofrestriadau
+          sign_up_requires_approval: Cyfyngu ar gofrestru
         severity: Rheol
       notification_emails:
+        appeal: Mae rhywun yn apelio yn erbyn penderfyniad y cymedrolwr
         digest: Anfonwch e-byst crynhoi
-        favourite: Anfon e-bost pan mae rhywun yn ffefrynnu eich statws
-        follow: Anfon e-bost pan mae rhywun yn eich dilyn chi
-        follow_request: Anfon e-bost pan mae rhywun yn gofyn i chi i'w dilyn
-        mention: Anfon e-bost pan mae rhywun yn eich crybwyll
-        pending_account: Anfon ebost pan mae cyfrif newydd angen adolygiad
-        reblog: Anfon e-bost pan mae rhywun yn bŵstio eich statws
+        favourite: Mae rhywun wedi ffafrio eich post
+        follow: Mae rhywun yn eich dilyn chi
+        follow_request: Mae rhywun yn ceisio eich dilyn chi
+        mention: Mae rhywun yn sôn amdanoch chi
+        pending_account: Mae cyfrif newydd angen adolygiad
+        reblog: Mae rhywun wedi hybu eich post
         report: Cyflwynwyd adroddiad newydd
+        trending_tag: Mae pwnc llosg newydd angen adolygiad
       rule:
         text: Rheol
       tag:
-        listable: Gadewch i'r hashnod hwn ymddangos mewn chwiliadau ac ar y cyfeiriadur proffil
+        listable: Caniatáu i'r hashnod hwn ymddangos mewn chwiliadau ac awgrymiadau
         name: Hashnod
-        trendable: Gadewch i'r hashnod hwn ymddangos o dan dueddiadau
-        usable: Caniatáu i tŵtiau ddefnyddio'r hashnod hwn
+        trendable: Caniatáu i'r hashnod hwn ymddangos o dan bynciau llosg
+        usable: Caniatáu i bostiadau ddefnyddio'r hashnod hwn
       user:
         role: Rôl
       user_role:
+        color: Lliw bathodyn
+        highlighted: Dangos rôl fel bathodyn ar broffiliau defnyddwyr
         name: Enw
         permissions_as_keys: Caniatâd
+        position: Blaenoriaeth
+      webhook:
+        events: Digwyddiadau wedi'u galluogi
+        url: URL diweddbwynt
     'no': Na
     required:
       mark: "*"
       text: gofynnol
+    title:
+      sessions:
+        webauthn: Defnyddiwch un o'ch allweddi diogelwch i fewngofnodi
     'yes': Ie
diff --git a/config/locales/simple_form.de.yml b/config/locales/simple_form.de.yml
index f9880a38f..e67bffb64 100644
--- a/config/locales/simple_form.de.yml
+++ b/config/locales/simple_form.de.yml
@@ -3,95 +3,95 @@ de:
   simple_form:
     hints:
       account_alias:
-        acct: Gib den benutzernamen@domain des Kontos an, von dem du umziehen möchtest
+        acct: Gib profilname@domain des Kontos an, von dem du umziehen möchtest
       account_migration:
-        acct: Gib den benutzernamen@domain des Kontos an, zu dem du umziehen möchtest
+        acct: Gib profilname@domain des Kontos an, zu dem du umziehen möchtest
       account_warning_preset:
-        text: Du kannst Beitragssyntax benutzen, wie z.B. URLs, Hashtags und Erwähnungen
+        text: Du kannst Beitragssyntax verwenden, wie z. B. URLs, Hashtags und Erwähnungen
         title: Optional. Für den Empfänger nicht sichtbar
       admin_account_action:
-        include_statuses: Der Benutzer wird sehen, welche Beiträge diese Maßnahme verursacht haben
-        send_email_notification: Benutzer_in wird Bescheid gegeben, was mit dem Konto geschehen ist
-        text_html: Optional. Du kannst Beitragssyntax nutzen. Du kannst <a href="%{path}">Warnungsvorlagen</a> benutzen um Zeit zu sparen
+        include_statuses: Die Person sieht, welche Beiträge die Moderationsmaßnahme oder Warnung verursacht haben
+        send_email_notification: Benutzer*in wird eine Erklärung erhalten, was mit dem Konto geschehen ist
+        text_html: Optional. Du kannst Beitragssyntax verwenden. Du kannst <a href="%{path}">Warnvorlagen hinzufügen</a>, um Zeit zu sparen
         type_html: Wähle aus, was du mit <strong>%{acct}</strong> machen möchtest
         types:
-          disable: Den Benutzer daran hindern, sein Konto zu verwenden, aber seinen Inhalt nicht löschen oder ausblenden.
-          none: Verwende dies, um eine Warnung an den Benutzer zu senden, ohne eine andere Aktion auszulösen.
-          sensitive: Erzwinge, dass alle Medien-Dateien dieses Profils mit einer Inhaltswarnung (NSFW) versehen werden.
+          disable: Benutzer*in daran hindern, das Konto verwenden zu können, aber die Inhalte nicht löschen oder ausblenden.
+          none: Verwende dies, um dem Account eine Warnung zu schicken, ohne dabei eine andere Aktion vorzunehmen.
+          sensitive: Erzwingen, dass alle Medienanhänge dieses Profils mit einer Inhaltswarnung versehen werden.
           silence: Verhindern, dass der Benutzer in der Lage ist, mit der öffentlichen Sichtbarkeit zu posten und seine Beiträge und Benachrichtigungen von Personen zu verstecken, die ihm nicht folgen.
           suspend: Verhindert jegliche Interaktion von oder zu diesem Konto und löscht dessen Inhalt. Kann innerhalb von 30 Tagen rückgängig gemacht werden.
         warning_preset_id: Optional. Du kannst immer noch eigenen Text an das Ende der Vorlage hinzufügen
       announcement:
-        all_day: Wenn aktiviert, werden nur die Daten des Zeitraums angezeigt
+        all_day: Falls aktiviert, werden nur der Tag bzw. die Tage innerhalb des Zeitraums angezeigt
         ends_at: Optional. Die Ankündigung wird zu diesem Zeitpunkt automatisch zurückgezogen
         scheduled_at: Leer lassen, um die Ankündigung sofort zu veröffentlichen
-        starts_at: Optional. Falls deine Ankündigung an einen bestimmten Zeitraum gebunden ist
-        text: Du kannst die Beitrags-Syntax verwenden. Bitte beachte den Platz, den die Ankündigung auf dem Bildschirm der Benutzer*innen einnehmen wird
+        starts_at: Optional. Nur für den Fall, dass deine Ankündigung an einen bestimmten Zeitraum gebunden ist
+        text: Du kannst die reguläre Syntax wie für Beiträge verwenden, also auch Profile erwähnen und Hashtags nutzen. Bitte beachte den Platz, den die Ankündigung auf dem Bildschirm der Benutzer*innen einnehmen wird
       appeal:
-        text: Du kannst nur einmal einen Einspruch bei einem Strike einlegen
+        text: Du kannst nur einmal Einspruch gegen einen Verstoß einlegen
       defaults:
-        autofollow: Accounts, die sich über deine Einladung registrieren, folgen automatisch deinem Profil
-        avatar: PNG, GIF oder JPG. Maximal %{size}. Wird auf %{dimensions} px herunterskaliert
-        bot: Dieses Konto führt lediglich automatisierte Aktionen durch und wird möglicherweise nicht überwacht
+        autofollow: Personen, die sich über deine Einladung registrieren, folgen automatisch deinem Profil
+        avatar: PNG, GIF oder JPG. Höchstens %{size} groß. Wird auf %{dimensions} px verkleinert
+        bot: Hinweis an andere Benutzer*innen, dass dieses Konto hauptsächlich automatisierte Aktionen durchführt und möglicherweise nicht persönlich betreut wird
         context: In welchem Bereich soll der Filter aktiv sein?
         current_password: Aus Sicherheitsgründen gib bitte das Passwort des aktuellen Kontos ein
-        current_username: Um das zu bestätigen, gib den Benutzernamen des aktuellen Kontos ein
+        current_username: Um das zu bestätigen, gib den Profilnamen des aktuellen Kontos ein
         digest: Wenn du eine längere Zeit inaktiv bist oder du in deiner Abwesenheit eine Direktnachricht erhalten hast
         discoverable: Erlaube deinem Konto, durch Empfehlungen, Trends und andere Funktionen von Fremden entdeckt zu werden
         email: Du wirst eine E-Mail zur Verifizierung Deiner E-Mail-Adresse erhalten
-        fields: Du kannst bis zu 4 Elemente auf deinem Profil anzeigen lassen, die als Tabelle dargestellt werden
-        header: PNG, GIF oder JPG. Maximal %{size}. Wird auf %{dimensions} px herunterskaliert
+        fields: Du kannst bis zu vier Metadaten auf deinem Profil anzeigen lassen, die als Tabelle dargestellt werden
+        header: PNG, GIF oder JPG. Höchstens %{size} groß. Wird auf %{dimensions} px verkleinert
         inbox_url: Kopiere die URL von der Startseite des gewünschten Relays
         irreversible: Bereinigte Beiträge verschwinden unwiderruflich für dich, auch dann, wenn dieser Filter zu einem späteren wieder entfernt wird
         locale: Die Sprache der Oberfläche, E-Mails und Push-Benachrichtigungen
         locked: Wer dir folgen und deine Inhalte sehen möchte, muss dein Follower sein und dafür um deine Erlaubnis bitten
         password: Verwende mindestens 8 Zeichen
-        phrase: Wird schreibungsunabhängig mit dem Text und Inhaltswarnung eines Beitrags verglichen
+        phrase: Wird unabhängig von der Groß- und Kleinschreibung im Text oder der Inhaltswarnung eines Beitrags abgeglichen
         scopes: Welche Schnittstellen der Applikation erlaubt sind. Wenn du einen Top-Level-Scope auswählst, dann musst du nicht jeden einzelnen darunter auswählen.
         setting_aggregate_reblogs: Zeige denselben Beitrag nicht nochmal an, wenn er erneut geteilt wurde (dies betrifft nur neulich erhaltene erneut geteilte Beiträge)
         setting_always_send_emails: Normalerweise werden Benachrichtigungen nicht per E-Mail verschickt, wenn du gerade auf Mastodon aktiv bist
-        setting_default_sensitive: Medien, die mit einer Inhaltswarnung (NSFW) versehen worden sind, werden – je nach Einstellung – erst nach einem zusätzlichen Klick angezeigt
-        setting_display_media_default: Alle Medien verbergen, die mit einer Inhaltswarnung (NSFW) versehen sind
-        setting_display_media_hide_all: Alle Medien immer verbergen
-        setting_display_media_show_all: Alle Medien immer anzeigen
+        setting_default_sensitive: Medien, die mit einer Inhaltswarnung versehen worden sind, werden erst nach einem zusätzlichen Klick angezeigt
+        setting_display_media_default: Medien mit Inhaltswarnung verbergen
+        setting_display_media_hide_all: Medien immer verbergen
+        setting_display_media_show_all: Medien mit Inhaltswarnung immer anzeigen
         setting_hide_network: Wem du folgst und wer dir folgt, wird in deinem Profil nicht angezeigt
         setting_noindex: Betrifft alle öffentlichen Daten deines Profils, z. B. deine Beiträge, Account-Empfehlungen und „Über mich“
         setting_show_application: Die Anwendung die du nutzt wird in der detaillierten Ansicht deiner Beiträge angezeigt
         setting_use_blurhash: Die Farbverläufe basieren auf den Farben der verborgenen Medien, aber verstecken jegliche Details
-        setting_use_pending_items: Neue Beiträge hinter einem Klick verstecken, anstatt automatisch zu scrollen
-        username: Dein Benutzername wird auf %{domain} einzigartig sein
+        setting_use_pending_items: Neue Beiträge hinter einem Klick verstecken, anstatt des automatischen Bildlaufs
+        username: Dein Profilname wird auf %{domain} einmalig sein
         whole_word: Wenn das Wort oder die Formulierung nur aus Buchstaben oder Zahlen besteht, tritt der Filter nur dann in Kraft, wenn er exakt dieser Zeichenfolge entspricht
       domain_allow:
         domain: Diese Domain kann Daten von diesem Server abrufen, und eingehende Daten werden verarbeitet und gespeichert
       email_domain_block:
-        domain: Dies kann der Domänenname sein, der in der E-Mail-Adresse oder dem von ihm verwendeten MX-Eintrag angezeigt wird. Er wird bei der Anmeldung überprüft.
+        domain: Das kann die Domain aus einer E-Mail-Adresse oder einem MX-Eintrag sein. Bei der Registrierung eines neuen Profils wird beides überprüft.
         with_dns_records: Ein Versuch, die DNS-Einträge der Domain aufzulösen, wurde unternommen, und diese Ergebnisse werden unter anderem auch blockiert
       featured_tag:
         name: 'Hier sind ein paar Hashtags, die du in letzter Zeit am häufigsten genutzt hast:'
       filters:
-        action: Wählen Sie, welche Aktion ausgeführt werden soll, wenn ein Beitrag dem Filter entspricht
+        action: Gib an, welche Aktion ausgeführt werden soll, wenn ein Beitrag dem Filter entspricht
         actions:
-          hide: Den gefilterten Inhalt vollständig ausblenden, als hätte er nie existiert
-          warn: Den gefilterten Inhalt hinter einer Warnung ausblenden, die den Filtertitel beinhaltet
+          hide: Den gefilterten Beitrag vollständig ausblenden, als hätte er nie existiert
+          warn: Den gefilterten Beitrag hinter einer Warnung, die den Filtertitel beinhaltet, ausblenden
       form_admin_settings:
-        backups_retention_period: Behalte generierte Benutzerarchive für die angegebene Anzahl von Tagen.
-        bootstrap_timeline_accounts: Diese Konten werden bei den Folge-Empfehlungen für neue Nutzerinnen und Nutzer oben angeheftet.
-        closed_registrations_message: Wird angezeigt, wenn Anmeldungen geschlossen sind
+        backups_retention_period: Behalte die Archive, die von den Benutzer*innen erstellt worden sind, für die angegebene Anzahl an Tagen.
+        bootstrap_timeline_accounts: Diese Profile werden bei den Follower-Empfehlungen für neu registrierte Nutzer*innen oben angeheftet.
+        closed_registrations_message: Wird angezeigt, wenn Registrierungen deaktiviert sind
         content_cache_retention_period: Beiträge von anderen Servern werden nach der angegebenen Anzahl von Tagen, wenn sie auf einen positiven Wert gesetzt werden, gelöscht. Dies kann eventuell nicht rückgängig gemacht werden.
         custom_css: Du kannst benutzerdefinierte Stile auf die Web-Version von Mastodon anwenden.
         mascot: Überschreibt die Abbildung in der erweiterten Weboberfläche.
-        media_cache_retention_period: Heruntergeladene Mediendateien werden nach der angegebenen Anzahl von Tagen, wenn sie auf einen positiven Wert gesetzt werden, gelöscht und bei Bedarf erneut heruntergeladen.
-        profile_directory: Das Profilverzeichnis listet alle Benutzer auf, die sich für die Auffindbarkeit entschieden haben.
+        media_cache_retention_period: Von anderen Instanzen übertragene Mediendateien werden nach der angegebenen Anzahl an Tagen – sofern das Feld eine positive Zahl enthält – aus dem Cache gelöscht und bei Bedarf erneut heruntergeladen.
+        profile_directory: Das Profilverzeichnis zeigt alle Benutzer*innen an, die sich dafür entschieden haben, entdeckt zu werden.
         require_invite_text: Wenn Registrierungen eine manuelle Genehmigung erfordern, dann werden Nutzer einen Grund für ihre Registrierung angeben müssen
-        site_contact_email: Wie man dich oder dein Team bei rechtlichen oder unterstützenden Fragen erreichen kann.
-        site_contact_username: Wie man dich oder dein Team auf Mastodon erreichen kann.
-        site_extended_description: Alle zusätzlichen Informationen, die für Besucher und Nutzer nützlich sein könnten. Kann mit der Markdown-Syntax strukturiert werden.
+        site_contact_email: Wie man dich bei rechtlichen oder Support-Anfragen erreichen kann.
+        site_contact_username: Wie man dich auf Mastodon erreichen kann.
+        site_extended_description: Alle zusätzlichen Informationen, die für Besucher*innen und deine Benutzer*innen nützlich sein könnten. Kann mit der Markdown-Syntax formatiert werden.
         site_short_description: Eine kurze Beschreibung zur eindeutigen Identifizierung des Servers. Wer betreibt ihn, für wen ist er bestimmt?
-        site_terms: Verwende eine eigene Datenschutzrichtlinie oder lasse das Feld leer, um die Standardeinstellung zu verwenden. Kann mit Markdown-Syntax strukturiert werden.
+        site_terms: Verwende eine eigene Datenschutzerklärung oder lasse das Feld leer, um die allgemeine Vorlage zu verwenden. Kann mit der Markdown-Syntax formatiert werden.
         site_title: Wie Personen neben dem Domainnamen auf deinen Server verweisen können.
         theme: Das Design, das abgemeldete Besucher und neue Benutzer sehen.
         thumbnail: Ein Bild ungefähr im 2:1-Format, das neben den Server-Informationen angezeigt wird.
-        timeline_preview: Ausgeloggte Besucherinnen und Besucher können die neuesten öffentlichen Beiträge auf dem Server ansehen.
+        timeline_preview: Besucher*innen und ausgeloggte Benutzer*innen können die neuesten öffentlichen Beiträge dieses Servers aufrufen.
         trendable_by_default: Manuelles Überprüfen angesagter Inhalte überspringen. Einzelne Elemente können später noch aus den Trends entfernt werden.
         trends: Trends zeigen, welche Beiträge, Hashtags und Nachrichten auf deinem Server immer beliebter werden.
       form_challenge:
@@ -101,29 +101,29 @@ de:
       invite_request:
         text: Dies wird uns helfen deine Anmeldungsanfrage besser zu verarbeiten
       ip_block:
-        comment: Optional. Denke daran, warum du diese Regel hinzugefügt hast.
-        expires_in: IP-Adressen sind eine endliche Ressource, sie werden manchmal geteilt und werden ab und zu ausgetauscht. Aus diesem Grund werden unbestimmte IP-Blöcke nicht empfohlen.
+        comment: Optional. Zur Erinnerung, weshalb du diese Regel eingeführt hast.
+        expires_in: IP-Adressen sind eine begrenzte Ressource. Sie können außerdem auf viele Computer aufgeteilt sein und auch die Zuordnungen ändern sich. Deshalb werden unbestimmte IP-Blöcke nicht empfohlen.
         ip: Gib eine IPv4- oder IPv6-Adresse an. Du kannst ganze Bereiche mit der CIDR-Syntax blockieren. Achte darauf, dass du dich nicht aussperrst!
         severities:
           no_access: Zugriff auf alle Ressourcen blockieren
-          sign_up_block: Neue Anmeldungen werden nicht möglich sein
-          sign_up_requires_approval: Neue Anmeldungen erfordern deine Zustimmung
-        severity: Wähle aus, was mit Anfragen aus dieser IP passiert
+          sign_up_block: Neue Registrierungen werden nicht möglich sein
+          sign_up_requires_approval: Neue Registrierungen müssen genehmigt werden
+        severity: Wähle aus, was mit Anfragen von dieser IP-Adresse geschehen soll
       rule:
-        text: Beschreibe eine Regel oder Anforderung für Benutzer auf diesem Server. Versuche es kurz und einfach zu halten
+        text: Führe eine Regel oder Bedingung für Benutzer*innen auf diesem Server ein. Bleib dabei kurz und knapp
       sessions:
         otp: 'Gib die Zwei-Faktor-Authentifizierung von deinem Telefon ein oder benutze einen deiner Wiederherstellungscodes:'
         webauthn: Wenn es sich um einen USB-Schlüssel handelt, stelle sicher, dass du ihn einsteckst und ihn antippst.
       tag:
         name: Du kannst zum Beispiel nur die Groß- und Kleinschreibung der Buchstaben ändern, um es lesbarer zu machen
       user:
-        chosen_languages: Wenn Du hier eine oder mehreren Sprachen auswählst, werden ausschließlich solche Beiträge in den öffentlichen Timelines angezeigt
-        role: Die Rolle kontrolliert welche Berechtigungen ein Benutzer hat
+        chosen_languages: Wenn du hier eine oder mehrere Sprachen auswählst, werden ausschließlich Beiträge in diesen Sprachen in deinen öffentlichen Timelines angezeigt
+        role: Die Rolle legt fest, welche Berechtigungen das Konto hat
       user_role:
-        color: Die Farbe, die für die Rolle im gesamten UI verwendet wird, als RGB im Hexformat
-        highlighted: Dies macht die Rolle öffentlich sichtbar
-        name: Öffentlicher Name der Rolle, wenn die Rolle als Abzeichen angezeigt werden soll
-        permissions_as_keys: Benutzer mit dieser Rolle haben Zugriff auf …
+        color: Farbe, die für diese Rolle in der gesamten Benutzerschnittstelle verwendet wird, als RGB im Hexadezimalsystem
+        highlighted: Dies macht die Rolle öffentlich im Profil sichtbar
+        name: Name der Rolle, der auch öffentlich als Badge angezeigt wird, sofern dies unten aktiviert ist
+        permissions_as_keys: Benutzer*innen mit dieser Rolle haben Zugriff auf...
         position: Die höhere Rolle entscheidet über die Konfliktlösung in bestimmten Situationen. Bestimmte Aktionen können nur in Rollen mit geringerer Priorität ausgeführt werden
       webhook:
         events: Zu sendende Ereignisse auswählen
@@ -141,30 +141,30 @@ de:
         text: Vorlagentext
         title: Titel
       admin_account_action:
-        include_statuses: Meldungen der E-Mail beifügen
-        send_email_notification: Benachrichtige den Nutzer per E-Mail
+        include_statuses: Gemeldete Beiträge der E-Mail beifügen
+        send_email_notification: Nutzer*in per E-Mail benachrichtigen
         text: Eigene Warnung
         type: Aktion
         types:
-          disable: Deaktivieren
+          disable: Einfrieren
           none: Nichts tun
           sensitive: Inhaltswarnung
           silence: Stummschalten
-          suspend: Deaktivieren und Benutzerdaten unwiderruflich löschen
+          suspend: Sperren
         warning_preset_id: Benutze eine Warnungsvorlage
       announcement:
         all_day: Ganztägiges Ereignis
-        ends_at: Ereignisende
+        ends_at: Ende der Ankündigung
         scheduled_at: Veröffentlichung planen
-        starts_at: Beginn des Ereignisses
+        starts_at: Beginn der Ankündigung
         text: Ankündigung
       appeal:
         text: Erkläre, warum diese Entscheidung rückgängig gemacht werden soll
       defaults:
-        autofollow: Eingeladene Nutzer folgen dir automatisch
+        autofollow: Meinem Profil automatisch folgen
         avatar: Profilbild
         bot: Dieses Profil ist ein Bot
-        chosen_languages: Nach Sprachen filtern
+        chosen_languages: Sprachen einschränken
         confirm_new_password: Neues Passwort bestätigen
         confirm_password: Passwort bestätigen
         context: Filter nach Bereichen
@@ -174,35 +174,35 @@ de:
         display_name: Anzeigename
         email: E-Mail-Adresse
         expires_in: Läuft ab
-        fields: Tabellenfelder
+        fields: Metadaten
         header: Titelbild
         honeypot: "%{label} (nicht ausfüllen)"
         inbox_url: Inbox-URL des Relais
         irreversible: Endgültig, nicht nur temporär ausblenden
-        locale: Sprache der Benutzeroberfläche
+        locale: Sprache des Webinterface
         locked: Geschütztes Profil
         max_uses: Maximale Verwendungen
         new_password: Neues Passwort
         note: Über mich
-        otp_attempt: Zwei-Faktor-Authentifizierung
+        otp_attempt: Zwei-Faktor-Authentisierung
         password: Passwort
         phrase: Wort oder Formulierung
-        setting_advanced_layout: Fortgeschrittene Benutzeroberfläche benutzen
-        setting_aggregate_reblogs: Gruppiere erneut geteilte Beiträge auf der Startseite
+        setting_advanced_layout: Erweitertes Webinterface verwenden
+        setting_aggregate_reblogs: Geteilte Beiträge in den Timelines gruppieren
         setting_always_send_emails: Benachrichtigungen immer senden
         setting_auto_play_gif: Animierte GIFs automatisch abspielen
         setting_boost_modal: Bestätigungsdialog anzeigen, bevor ein Beitrag geteilt wird
         setting_crop_images: Bilder in nicht ausgeklappten Beiträgen auf 16:9 zuschneiden
         setting_default_language: Beitragssprache
         setting_default_privacy: Beitragssichtbarkeit
-        setting_default_sensitive: Eigene Medien immer mit einer Inhaltswarnung (NSFW) versehen
+        setting_default_sensitive: Eigene Medien immer mit einer Inhaltswarnung versehen
         setting_delete_modal: Bestätigungsdialog anzeigen, bevor ein Beitrag gelöscht wird
         setting_disable_swiping: Wischgesten deaktivieren
         setting_display_media: Medien-Anzeige
         setting_display_media_default: Standard
         setting_display_media_hide_all: Alle Medien verstecken
         setting_display_media_show_all: Alle Medien anzeigen
-        setting_expand_spoilers: Beiträge mit Inhaltswarnungen immer ausklappen
+        setting_expand_spoilers: Beiträge mit Inhaltswarnung immer ausklappen
         setting_hide_network: Deine Follower und „Folge ich“ nicht anzeigen
         setting_noindex: Suchmaschinen-Indexierung verhindern
         setting_reduce_motion: Bewegung in Animationen verringern
@@ -229,33 +229,33 @@ de:
           hide: Komplett ausblenden
           warn: Mit einer Warnung ausblenden
       form_admin_settings:
-        backups_retention_period: Aufbewahrungsfrist für Benutzerarchive
+        backups_retention_period: Aufbewahrungsfrist für Archive
         bootstrap_timeline_accounts: Neuen Nutzern immer diese Konten empfehlen
-        closed_registrations_message: Benutzerdefinierte Nachricht, wenn Anmeldungen nicht verfügbar sind
+        closed_registrations_message: Nachricht, falls Registrierungen deaktiviert sind
         content_cache_retention_period: Aufbewahrungsfrist für Inhalte im Cache
-        custom_css: Benutzerdefiniertes CSS
+        custom_css: Eigenes CSS
         mascot: Benutzerdefiniertes Maskottchen (Legacy)
         media_cache_retention_period: Aufbewahrungsfrist für den Medien-Cache
         profile_directory: Profilverzeichnis aktivieren
-        registrations_mode: Wer kann sich registrieren
+        registrations_mode: Wer darf ein neues Konto registrieren?
         require_invite_text: Grund für den Beitritt verlangen
-        show_domain_blocks: Zeige Domain-Blockaden
-        show_domain_blocks_rationale: Anzeigen, warum Domains gesperrt wurden
-        site_contact_email: E-Mail-Adresse des Kontakts
-        site_contact_username: Benutzername des Kontakts
+        show_domain_blocks: Anzeigen, welche Domains gesperrt wurden
+        show_domain_blocks_rationale: Anzeigen, weshalb Domains gesperrt wurden
+        site_contact_email: E-Mail-Adresse
+        site_contact_username: Profilname
         site_extended_description: Detaillierte Beschreibung
         site_short_description: Serverbeschreibung
         site_terms: Datenschutzerklärung
         site_title: Servername
         theme: Standard-Design
         thumbnail: Vorschaubild des Servers
-        timeline_preview: Nicht-authentifizierten Zugriff auf öffentliche Timelines gestatten
+        timeline_preview: Nicht-authentifizierten Zugriff auf die öffentliche Timeline gestatten
         trendable_by_default: Trends ohne vorherige Überprüfung erlauben
         trends: Trends aktivieren
       interactions:
         must_be_follower: Benachrichtigungen von Profilen verbergen, die mir nicht folgen
         must_be_following: Benachrichtigungen von Profilen verbergen, denen ich nicht folge
-        must_be_following_dm: Direktnachrichten von Profilen, denen Du nicht folgst, verweigern
+        must_be_following_dm: Direktnachrichten von Profilen, denen ich nicht folge, ablehnen
       invite:
         comment: Kommentar
       invite_request:
@@ -265,20 +265,20 @@ de:
         ip: IP-Adresse
         severities:
           no_access: Zugriff sperren
-          sign_up_block: Anmeldungen blockieren
-          sign_up_requires_approval: Anmeldungen begrenzen
+          sign_up_block: Registrierung sperren
+          sign_up_requires_approval: Registrierungen begrenzen
         severity: Regel
       notification_emails:
-        appeal: Jemand hat Einspruch gegen eine Moderatorentscheidung eingelegt
+        appeal: wenn jemand einer Moderationsentscheidung widerspricht
         digest: Zusammenfassung senden
         favourite: wenn jemand meinen Beitrag favorisiert
         follow: wenn mir jemand folgt
         follow_request: wenn mir jemand folgen möchte
         mention: wenn mich jemand erwähnt
-        pending_account: E-Mail senden, wenn ein neues Benutzerkonto zur Überprüfung aussteht
+        pending_account: wenn ein neues Konto überprüft werden muss
         reblog: wenn jemand meinen Beitrag teilt
-        report: E-Mail senden, wenn eine neue Meldung vorliegt
-        trending_tag: Neuer Trend muss überprüft werden
+        report: wenn eine neue Meldung vorliegt
+        trending_tag: wenn ein neuer Trend überprüft werden soll
       rule:
         text: Regel
       tag:
@@ -289,8 +289,8 @@ de:
       user:
         role: Rolle
       user_role:
-        color: Abzeichenfarbe
-        highlighted: Rolle als Abzeichen in Benutzerprofilen anzeigen
+        color: Badge-Farbe
+        highlighted: Rolle als Badge im Profil anzeigen
         name: Name
         permissions_as_keys: Berechtigungen
         position: Priorität
diff --git a/config/locales/simple_form.eo.yml b/config/locales/simple_form.eo.yml
index e8577d35b..46b0af715 100644
--- a/config/locales/simple_form.eo.yml
+++ b/config/locales/simple_form.eo.yml
@@ -7,12 +7,12 @@ eo:
       account_migration:
         acct: Specifu la uzantnomon@domajnon de la konto al kiu vi volas translokiĝi
       account_warning_preset:
-        text: Vi povas uzi skribmanierojn de mesaĝoj, kiel URL-ojn, kradvortojn kaj menciojn
+        text: Vi povas uzi skribmanierojn de afiŝoj, kiel URL-ojn, kradvortojn kaj menciojn
         title: Laŭvola. Ne videbla por la ricevanto
       admin_account_action:
         include_statuses: La uzanto vidos, kiujn afiŝojn kaŭzis la agon de moderigo aŭ de averto
         send_email_notification: La uzanto ricevos klarigon pri tio, kio okazis al ties konto
-        text_html: Malnepra. Vi povas uzi skribmanierojn de mesaĝoj. Vi povas <a href="%{path}">aldoni avertajn antaŭagordojn</a> por ŝpari tempon
+        text_html: Malnepra. Vi povas uzi sintaksojn de afiŝoj. Vi povas <a href="%{path}">aldoni avertajn antaŭagordojn</a> por ŝpari tempon
         type_html: Elektu kion fari kun <strong>%{acct}</strong>
         types:
           disable: Malhelpi la uzanton uzi sian konton, sed ne forigi aŭ kaŝi ties enhavojn.
@@ -27,6 +27,8 @@ eo:
         scheduled_at: Lasi malplena por eldoni la anoncon tuj
         starts_at: Laŭvola. Se via anonco estas ligita al specifa tempo
         text: Vi povas uzi la sintakso de afiŝoj. Bonvolu zorgi pri la spaco, kiun la anonco okupos sur la ekrano de la uzanto
+      appeal:
+        text: Oni povas apelaci strikin nur unufoje
       defaults:
         autofollow: Homoj, kiuj registriĝos per la invito aŭtomate sekvos vin
         avatar: Formato PNG, GIF aŭ JPG. Ĝis %{size}. Estos malgrandigita al %{dimensions}px
@@ -35,12 +37,13 @@ eo:
         current_password: Pro sekuraj kialoj, bonvolu enigi la pasvorton de la nuna konto
         current_username: Por konfirmi, bonvolu enigi la uzantnomon de la nuna konto
         digest: Sendita nur post longa tempo de neaktiveco, kaj nur se vi ricevis personan mesaĝon en via foresto
-        email: Vi ricevos retpoŝtaĵon de konfirmo
+        discoverable: Permesi vian konton esti malkovrita de fremduloj per rekomendoj, tendencoj kaj aliaj funkcioj
+        email: Vi ricevos konfirman retpoŝton
         fields: Vi povas havi ĝis 4 tabelajn elementojn en via profilo
         header: Formato PNG, GIF aŭ JPG. Ĝis %{size}. Estos malgrandigita al %{dimensions}px
         inbox_url: Kopiu la URL de la ĉefpaĝo de la ripetilo, kiun vi volas uzi
         irreversible: La filtritaj mesaĝoj malaperos por eterne, eĉ se la filtrilo poste estas forigita
-        locale: La lingvo de la fasado, de retpoŝtaĵoj, kaj de sciigoj
+        locale: La lingvo de la interfaco, de retpoŝtaĵoj, kaj de sciigoj
         locked: Vi devos aprobi ĉiun peton de sekvado mane
         password: Uzu almenaŭ 8 signojn
         phrase: Estos provita senzorge pri la uskleco de teksto aŭ averto pri enhavo de mesaĝo
@@ -52,19 +55,45 @@ eo:
         setting_display_media_hide_all: Ĉiam kaŝi la aŭdovidaĵojn
         setting_display_media_show_all: Ĉiam montri la aŭdovidaĵojn
         setting_hide_network: Tiuj kiujn vi sekvas, kaj tiuj kiuj sekvas vin estos kaŝitaj en via profilo
-        setting_noindex: Influas vian publikan profilon kaj mesaĝajn paĝojn
-        setting_show_application: La aplikaĵo, kiun vi uzas por afiŝi, estos montrita en la detala vido de viaj mesaĝoj
+        setting_noindex: Influas vian publikan profilon kaj afiŝajn paĝojn
+        setting_show_application: La aplikaĵo, kiun vi uzas por afiŝi, estos montrita en la detala vido de viaj afiŝoj
         setting_use_blurhash: Transirojn estas bazita sur la koloroj de la kaŝitaj aŭdovidaĵoj sed ne montri iun ajn detalon
         setting_use_pending_items: Kaŝi tempoliniajn ĝisdatigojn malantaŭ klako anstataŭ aŭtomate rulumi la fluon
         username: Via uzantnomo estos unika en %{domain}
         whole_word: Kiam la vorto aŭ frazo estas nur litera aŭ cifera, ĝi estos uzata nur se ĝi kongruas kun la tuta vorto
       domain_allow:
         domain: Ĉi tiu domajno povos akiri datumon de ĉi tiu servilo kaj envenanta datumo estos prilaborita kaj konservita
+      email_domain_block:
+        domain: Ĉi tio povas esti la domajnnomo kiu montritas en la retadreso au la MX-rekordo uzitas.
+        with_dns_records: Provi de regajni DNS-rekordojn de la domajn farotas kaj la rezultaj ankorau blokitas
       featured_tag:
         name: 'Jen kelkaj el la kradvortoj, kiujn vi uzis lastatempe:'
       filters:
+        action: Elekti ago kiam mesaĝo kongruas la filtrilon
         actions:
+          hide: Tute kaŝigi la filtritajn enhavojn, kvazau ĝi ne ekzistis
           warn: Kaŝi la enhavon filtritan malantaŭ averto mencianta la nomon de la filtro
+      form_admin_settings:
+        backups_retention_period: Konservi generitajn uzantoarkivojn por la kvanto de tagoj.
+        bootstrap_timeline_accounts: Ĉi tiuj kontoj pinglitas al la supro de sekvorekomendoj de novaj uzantoj.
+        closed_registrations_message: Montrita kiam registroj fermitas
+        content_cache_retention_period: Mesaĝoj de aliaj serviloj forigitas post la kvanto de tagoj kiam fiksitas al pozitiva nombro.
+        custom_css: Vi povas meti propajn stilojn en la retversio de Mastodon.
+        mascot: Anstatauigi la ilustraĵon en la altnivela retinterfaco.
+        media_cache_retention_period: Elŝutitaj audovidaĵojn forigotas post la kvanto de tagoj kiam fiksitas al pozitiva nombro.
+        profile_directory: La profilujo listigas ĉiujn uzantojn kiu volonte malkovrebli.
+        require_invite_text: Kiam registroj bezonas permanan aprobon, igi la "Kial vi volas aliĝi?" tekstoenigon deviga anstau nedeviga
+        site_contact_email: Kiel personoj povas kontakti vin por juraj au subtenaj demandoj.
+        site_contact_username: Kial personoj povas kontakti vin ĉe Mastodon.
+        site_extended_description: Ajn aldonaj informo kiu eble estas utila al vizitantoj kaj via uzantoj.
+        site_short_description: Mallonga priskribo por helpi unike identigi vian servilon. Kiu faras, por kiu?
+        site_terms: Uzu vian sian privatecan politekon au ignoru por uzi la defaulton.
+        site_title: Kiel personoj voki vian servilon anstatau ĝia domajnnomo.
+        theme: Etoso kiun elsalutitaj vizitantoj kaj novaj uzantoj vidas.
+        thumbnail: Ĉirkaua 2:1 bildo montritas kun via servilinformo.
+        timeline_preview: Elsalutitaj vizitantoj povos vidi la plej lastajn publikajn mesaĝojn disponeblaj en la servilo.
+        trendable_by_default: Ignori permanan kontrolon de tendenca enhavo.
+        trends: Tendencoj montras kiu mesaĝoj, kradvortoj kaj novaĵoj populariĝas en via servilo.
       form_challenge:
         current_password: Vi eniras sekuran areon
       imports:
@@ -73,10 +102,13 @@ eo:
         text: Ĉi tio helpos nin revizii vian kandidatiĝon
       ip_block:
         comment: Laŭvola. Memoru, kial vi aldonis ĉi tiun regulon.
+        expires_in: IP-adresoj estas finia rimedo, ili kelkfoje kunhavitis kaj ofte malsame poseditas.
+        ip: Enigu IPv4 au IPv6-adreso. Ne elseruru vian sian!
         severities:
           no_access: Bloki aliron al ĉiuj rimedoj
+          sign_up_block: Novaj registroj ne estos ebla
           sign_up_requires_approval: Novaj registriĝoj bezonos vian aprobon
-        severity: Elektu, kio okazos pri petoj de ĉi tiu IP
+        severity: Elektu, kio okazos pri petoj de ĉi tiu IP-adreso
       rule:
         text: Priskribu regulon aŭ neceson por uzantoj en ĉi tiu servilo. Provu fari ĝin mallonga kaj simpla
       sessions:
@@ -85,7 +117,17 @@ eo:
       tag:
         name: Vi povas ŝanĝi nur la majuskladon de la literoj, ekzemple, por igi ĝin pli legebla
       user:
-        chosen_languages: Kiam estas elekto, nur mesaĝoj en elektitaj lingvoj aperos en publikaj templinioj
+        chosen_languages: Kun tio markita nur mesaĝoj en elektitaj lingvoj aperos en publikaj tempolinioj
+        role: La rolregiloj kies permesojn la uzanto havas
+      user_role:
+        color: Koloro uzita por la rolo sur la UI, kun RGB-formato
+        highlighted: Ĉi tio igi la rolon publike videbla
+        name: Publika nomo de la rolo, se rolo fiksitas montritis kiel insigno
+        permissions_as_keys: Uzantoj kun ĉi tiu rolo gajnos aliro al...
+        position: Pli altaj rolo decidas konfliktosolvo en kelkaj situacioj
+      webhook:
+        events: Elektu eventojn por sendi
+        url: Kien eventoj sendotas
     labels:
       account:
         fields:
@@ -99,7 +141,7 @@ eo:
         text: Antaŭagordita teksto
         title: Titolo
       admin_account_action:
-        include_statuses: Inkluzivi raportitajn afiŝojn en la retpoŝtmesaĝo
+        include_statuses: Inkluzivi raportitajn afiŝojn en la retpoŝto
         send_email_notification: Sciigi la uzanton retpoŝte
         text: Propra averto
         type: Ago
@@ -116,6 +158,8 @@ eo:
         scheduled_at: Plani publikigo
         starts_at: Komenco de evento
         text: Anonco
+      appeal:
+        text: Klarigu kial ĉi tiu decido devas inversigitis
       defaults:
         autofollow: Inviti al sekvi vian konton
         avatar: Rolfiguro
@@ -150,7 +194,7 @@ eo:
         setting_boost_modal: Montri konfirman fenestron antaŭ ol diskonigi mesaĝon
         setting_crop_images: Stuci bildojn en negrandigitaj mesaĝoj al 16x9
         setting_default_language: Publikada lingvo
-        setting_default_privacy: Mesaĝa videbleco
+        setting_default_privacy: Privateco de afiŝado
         setting_default_sensitive: Ĉiam marki aŭdovidaĵojn tiklaj
         setting_delete_modal: Montri konfirman fenestron antaŭ ol forigi mesaĝon
         setting_disable_swiping: Malebligi svingajn movojn
@@ -176,6 +220,8 @@ eo:
         username: Uzantnomo
         username_or_email: Uzantnomo aŭ Retadreso
         whole_word: Tuta vorto
+      email_domain_block:
+        with_dns_records: Inkluzu MX-rekordojn kaj IP de la domajno
       featured_tag:
         name: Kradvorto
       filters:
@@ -183,7 +229,29 @@ eo:
           hide: Kaŝi komplete
           warn: Kaŝi malantaŭ averto
       form_admin_settings:
+        backups_retention_period: Uzantoarkivretendauro
+        bootstrap_timeline_accounts: Ĉiam rekomendi ĉi tiujn kontojn al novaj uzantoj
+        closed_registrations_message: Kutima mesaĝo kiam registroj ne estas disponeblaj
+        content_cache_retention_period: Enhavkaŝaĵretendauro
+        custom_css: Propa CSS
+        mascot: Propa maskoto
+        media_cache_retention_period: Audovidaĵkaŝaĵretendauro
+        profile_directory: Ebligi la profilujon
         registrations_mode: Kiu povas krei konton
+        require_invite_text: Bezoni kialon por aliĝi
+        show_domain_blocks: Montri domajnblokojn
+        show_domain_blocks_rationale: Montri kial domajnoj estis blokitaj
+        site_contact_email: Kontaktoretadreso
+        site_contact_username: Kontaktouzantonomo
+        site_extended_description: Longa priskribo
+        site_short_description: Priskribo de servilo
+        site_terms: Privateca politiko
+        site_title: Nomo de la servilo
+        theme: Implicita etoso
+        thumbnail: Bildeto de servilo
+        timeline_preview: Permesi la neaŭtentigitan aliron al la publikaj templinioj
+        trendable_by_default: Permesi tendencojn sen deviga kontrolo
+        trends: Ŝalti furorojn
       interactions:
         must_be_follower: Bloki sciigojn de nesekvantoj
         must_be_following: Bloki sciigojn de homoj, kiujn vi ne sekvas
@@ -197,9 +265,11 @@ eo:
         ip: IP
         severities:
           no_access: Bloki atingon
+          sign_up_block: Malpermesi registrojn
           sign_up_requires_approval: Limigi registriĝojn
         severity: Regulo
       notification_emails:
+        appeal: Iu apelacias moderigantodecidon
         digest: Sendi resumajn retmesaĝojn
         favourite: Sendi retmesaĝon kiam iu stelumas vian mesaĝon
         follow: Sendi retmesaĝon kiam iu sekvas vin
@@ -207,12 +277,26 @@ eo:
         mention: Sendi retmesaĝon kiam iu mencias vin
         pending_account: Sendi retmesaĝon kiam nova konto bezonas kontrolon
         reblog: Sendi retmesaĝon kiam iu diskonigas vian mesaĝon
+        report: Nova raporto estas proponita
+        trending_tag: Nova furoro bezonas kontrolon
       rule:
         text: Regulo
       tag:
+        listable: Permesi ĉi tiun kradvorton aperi en serĉoj kaj sugestoj
         name: Kradvorto
         trendable: Permesi al ĉi tiu kradvorto aperi en furoraĵoj
         usable: Permesi mesaĝojn uzi ĉi tiun kradvorton
+      user:
+        role: Rolo
+      user_role:
+        color: Koloro de ŝildo
+        highlighted: Montri rolon kiel insignon sur uzantoprofiloj
+        name: Nomo
+        permissions_as_keys: Permesoj
+        position: Prioritato
+      webhook:
+        events: Ŝaltitaj eventoj
+        url: Finpunkto-URL
     'no': Ne
     required:
       mark: "*"
diff --git a/config/locales/simple_form.es.yml b/config/locales/simple_form.es.yml
index 7df89a31a..d5ae3be7f 100644
--- a/config/locales/simple_form.es.yml
+++ b/config/locales/simple_form.es.yml
@@ -3,19 +3,19 @@ es:
   simple_form:
     hints:
       account_alias:
-        acct: Especifique el nombre de usuario@dominio de la cuenta desde la cual se desea migrar
+        acct: Especifique su nombre de usuario@dominio de la cuenta de donde se desea migrar
       account_migration:
-        acct: Especifique el nombre de usuario@dominio de la cuenta a la cual se desea migrar
+        acct: Especifique el nombre de usuario@dominio de la cuenta de la cual se desea migrar
       account_warning_preset:
         text: Puede usar sintaxis de publicaciones, como URLs, hashtags y menciones
-        title: Opcional. No visible para el destinatario
+        title: Opcional. No es visible para el destinatario
       admin_account_action:
         include_statuses: El usuario verá qué publicaciones han causado la acción de moderación o advertencia
-        send_email_notification: El usuario recibirá una explicación de lo que sucedió con respecto a su cuenta
+        send_email_notification: El usuario recibirá una explicación de lo que ha sucedido con su cuenta
         text_html: Opcional. Puede usar sintaxis de publicaciones. Puede añadir <a href="%{path}">configuraciones predefinidas de advertencia</a> para ahorrar tiempo
-        type_html: Elige qué hacer con <strong>%{acct}</strong>
+        type_html: Elige lo qué vas a hacer con <strong>%{acct}</strong>
         types:
-          disable: Evitar que el usuario utilice su cuenta, pero no eliminar ni ocultar sus contenidos.
+          disable: Evita que el usuario utilice su cuenta, pero no elimina ni oculta sus contenidos.
           none: Utilizar esto para enviar una advertencia al usuario, sin poner en marcha ninguna otra acción.
           sensitive: Forzar que todos los archivos multimedia de este usuario sean marcados como sensibles.
           silence: Evitar que el usuario pueda publicar con visibilidad pública, oculta sus mensajes y notificaciones a personas que no lo siguen.
diff --git a/config/locales/simple_form.et.yml b/config/locales/simple_form.et.yml
index 43465969c..bf3aebe4b 100644
--- a/config/locales/simple_form.et.yml
+++ b/config/locales/simple_form.et.yml
@@ -14,6 +14,9 @@ et:
         send_email_notification: Konto omanik saab selgituse selle kohta, mis juhtus nende kontoga
         text_html: Valikuline. Te saate kasutada tuututuse süntaksi. Te saate <a href="%{path}">lisada hoiatuste eelseadistusi</a> aega säästmiseks
         type_html: Vali, mida teha kasutajaga <strong>%{acct}</strong>
+        types:
+          sensitive: Kogu kasutaja meediasisu märgitakse kui tundlik sisu.
+          suspend: Takistamaks suhtlust selle kontoga ja kustutamaks kogu sisu. Tagasivõetav 30 päeva jooksul.
         warning_preset_id: Valikuline. Te saate ikka lisada mis tahes teksti eelseadistuse lõppu
       announcement:
         all_day: Kui valitud, ainult kuupäevad antud ajavahemikus on kuvatud
@@ -24,9 +27,9 @@ et:
       defaults:
         autofollow: Inimesed, kes loovad konto selle kutse läbi, automaatselt jälgivad Teid
         avatar: PNG, GIF või JPG. Kõige rohkem %{size}. Vähendatakse %{dimensions} pikslini
-        bot: See konto teeb enamjaolt automatiseeritud tegevusi ja ei pruugi olla järelvalve all
+        bot: Teavita teisi, et see konto teeb enamjaolt automatiseeritud tegevusi ja ei pruugi olla järelvalve all
         context: Üks või mitu konteksti, mille vastu see filter peaks rakenduma
-        current_password: Turvalisuse huvides palun sisestage praeguse konto salasõna
+        current_password: Turvalisuse huvides palume sisestage praeguse konto salasõna
         current_username: Kinnitamiseks palun sisestage oma konto kasutajanimi
         digest: Saadetakse ainult pärast pikka perioodi tegevusetust ja ainult siis, kui Teile on saadetud privaatseid sõnumeid
         email: Teile saadetakse kinnituskiri e-posti teel
@@ -36,10 +39,11 @@ et:
         irreversible: Filtreeritud tuututused kaovad taastamatult, isegi kui filter on hiljem eemaldatud
         locale: Kasutajaliidese, e-kirjade ja push-teadete keel
         locked: Nõuab käsitsi jälgijate kinnitamist
-        password: Sisestage vähemalt 8 tähemärki
+        password: Vajalik on vähemalt 8 märki
         phrase: Kattub olenemata tuututuse teksti suurtähtedest või sisuhoiatusest
         scopes: Milliseid API-sid see rakendus tohib kasutada. Kui Te valite kõrgeima taseme, ei pea Te valima individuaalseid.
-        setting_aggregate_reblogs: Ära näita uusi upitusi tuututustele, mis on just hiljuti upitatud (ainult kehtib uutele upitusele)
+        setting_aggregate_reblogs: Ära kuva uusi postituste jagamisi, mis on hiljuti jagatud (kehtib vaid uutele jagamistele)
+        setting_always_send_emails: Kui aktiivselt Mastodoni kasutada, siis tavapäraselt e-postiga teavitusi ei saadeta
         setting_default_sensitive: Tundlik meedia on vaikimisi peidetud ning seda saab avada sellele klikkides
         setting_display_media_default: Peida tundlikuks märgitud meedia
         setting_display_media_hide_all: Alati peida kõik meedia
@@ -54,15 +58,31 @@ et:
       domain_allow:
         domain: See domeen saab tõmmata andmeid sellelt serverilt ning sissetulevad andmed sellelt domeenilt töödeldakse ning salvestatakse
       email_domain_block:
-        with_dns_records: Proovitakse ka üles vaadata selle domeeni DNS kirjed ning selle vastused samuti keelatakse
+        domain: See võib olla e-postiaadressis näha olev domeen või MX-kirje, mida aadress kasutab. Kontroll toimub liitumise käigus.
+        with_dns_records: Püütakse lahendada selle domeeni DNS-kirjed ja ühtlasi blokeerida ka selle tulemused
+      featured_tag:
+        name: 'Siin on mõned nendest siltidest mida sa oled kõige hiljutisemalt kasutanud:'
+      form_admin_settings:
+        bootstrap_timeline_accounts: Need kasutajad kinnitatakse uute kasutajate jälgimissoovituste esiritta.
+        profile_directory: Kasutajate kataloog kuvab nimekirja kasutajatest, kes on seda lubanud.
+        trends: Populaarsuse suunad näitavad millised postitused, sildid ja uudislood koguvad sinu serveris tähelepanu.
       form_challenge:
-        current_password: Te sisenete turvalisele alale
+        current_password: Turvalisse alasse sisenemine
       imports:
         data: CSV fail eksporditi teisest Mastodoni serverist
       invite_request:
         text: See aitab meil üle vaadata Teie taotlust
+      ip_block:
+        comment: Valikuline. Talletamaks reegli lisamise põhjust.
+        expires_in: IP-aadressid on lõplik ressurss ja on tihtipeale ühiskasutuses või vahetub kasutaja. Sel põhjusel pole kestvad IP-piirangud soovituslikud.
+        ip: IPv4 või IPv6 aadress. Vahemike keelamine on võimalik CIDR-süntaksit kasutades. Ettevaatust, et iseend uksetaha ei jäta!
+        severities:
+          no_access: Keela ligipääs kõigile ressurssidele
+          sign_up_block: Uued liitumised pole võimalikud
+          sign_up_requires_approval: Uued liitumised vajavad kinnitamist
+        severity: Valik, mis juhtub päringutega sellelt IP-aadressilt
       sessions:
-        otp: 'Sisesta kahesammulise autentimise kood loodud Teie mobiilirakenduse poolt või sisesta mõni taastuskood:'
+        otp: 'Kahe-etapise autentimise kood telefonirakendusest või mõni taastekood:'
       tag:
         name: Te saate ainult muuta tähtede tõstetust, näiteks selleks, et muuta seda rohkem loetavaks
       user:
@@ -87,8 +107,9 @@ et:
         types:
           disable: Keela
           none: Ära tee midagi
+          sensitive: Tundlik
           silence: Vaigista
-          suspend: Peata ja taastamatult kustuta konto andmed
+          suspend: Kustuta
         warning_preset_id: Kasuta hoiatuse eelseadistust
       announcement:
         all_day: Kogu päeva sündmus
@@ -101,8 +122,8 @@ et:
         avatar: Profiilipilt
         bot: See konto on robot
         chosen_languages: Filtreeri keeli
-        confirm_new_password: Kinnita uus salasõna
-        confirm_password: Kinnita salasõna
+        confirm_new_password: Uue salasõna kinnitamine
+        confirm_password: Salasõna kinnitamine
         context: Filtreeri kontekste
         current_password: Kehtiv salasõna
         data: Andmed
@@ -110,8 +131,9 @@ et:
         display_name: Kuvanimi
         email: E-posti aadress
         expires_in: Aegu pärast
-        fields: Profiili metaandmed
+        fields: Veebiviited
         header: Päis
+        honeypot: "%{label} (ära sisesta)"
         inbox_url: Relee sisendkausta URL
         irreversible: Kustuta selle asemel, et peita
         locale: Kasutajaliidese keel
@@ -119,18 +141,19 @@ et:
         max_uses: Maksimum kasutajate arv
         new_password: Uus salasõna
         note: Elulugu
-        otp_attempt: Kahesammulise autentimise kood
+        otp_attempt: Kahe-etapine kood
         password: Salasõna
         phrase: Võtmesõna või fraas
-        setting_advanced_layout: Aktiveeri arenenud veebiliides
-        setting_aggregate_reblogs: Grupita upitused ajajoontes
+        setting_advanced_layout: Aktiveeri kohandatud veebiliides
+        setting_aggregate_reblogs: Grupeeri jagamised ajajoontel
         setting_auto_play_gif: Mängi GIF-e automaatselt
-        setting_boost_modal: Näita kinnitusdialoogi enne upitamist
+        setting_boost_modal: Näita enne jagamist kinnitusdialoogi
         setting_crop_images: Kärbi suurendamata tuututuste pildid resolutsiooni 16x9
         setting_default_language: Postituse keel
         setting_default_privacy: Postituse privaatsus
         setting_default_sensitive: Alati märgista meedia tundlikuks
         setting_delete_modal: Näita kinnitusdialoogi enne tuututuse kustutamist
+        setting_disable_swiping: Keela pühkimisliigutused
         setting_display_media: Meedia kuvarežiim
         setting_display_media_default: Vaikimisi
         setting_display_media_hide_all: Peida kõik
@@ -147,14 +170,31 @@ et:
         setting_use_blurhash: Näita peidetud meedia asemel värvilist pilti
         setting_use_pending_items: Aeglane režiim
         severity: Tõsidus
+        sign_in_token_attempt: Turvakood
+        title: Pealkiri
         type: Impordi tüüp
         username: Kasutajanimi
         username_or_email: Kasutajanimi või e-post
         whole_word: Terve sõna
       email_domain_block:
-        with_dns_records: Kaasa domeeni MX kirjed ning IP aadressid
+        with_dns_records: Kaasa domeeni MX-kirjed ning IP-aadressid
       featured_tag:
         name: Silt
+      form_admin_settings:
+        closed_registrations_message: Kohandatud teade, kui liitumine pole võimalik
+        custom_css: Kohandatud CSS
+        profile_directory: Luba kasutajate kataloog
+        show_domain_blocks: Näita domeenikeelde
+        show_domain_blocks_rationale: Näite domeenikeeldude põhjuseid
+        site_contact_email: Kontaktisiku e-post
+        site_contact_username: Kontaktisiku kasutajanimi
+        site_extended_description: Serveri pikem kirjeldus
+        site_short_description: Serveri lühikirjeldus
+        site_terms: Privaatsuspoliitika
+        site_title: Serveri nimi
+        theme: Vaikmisi teema
+        thumbnail: Serveri pisipilt
+        trends: Luba trendid
       interactions:
         must_be_follower: Keela teavitused mittejälgijatelt
         must_be_following: Keela teavitused kasutajatelt, keda sa ei jälgi
@@ -163,6 +203,14 @@ et:
         comment: Kommenteerima
       invite_request:
         text: Miks Te soovite liituda?
+      ip_block:
+        comment: Kommentaar
+        ip: IP
+        severities:
+          no_access: Keela ligipääs
+          sign_up_block: Keela liitumised
+          sign_up_requires_approval: Piira liitumisi
+        severity: Reegel
       notification_emails:
         digest: Saada ülevaatlike e-kirju
         favourite: Saada e-kiri, kui keegi lisab teie staatuse lemmikuks
@@ -170,13 +218,25 @@ et:
         follow_request: Saada e-kiri, kui keegi soovib Teid jälgida
         mention: Saada e-kiri, kui keegi mainib Teid
         pending_account: Saada e-kiri, kui uus konto vajab ülevaatlust
-        reblog: Saada e-kiri, kui keegi upitab Teie staatust
+        reblog: Keegi jagas postitust
+        report: Esitatud on uus raport
+      rule:
+        text: Reegel
       tag:
         listable: Luba sellel sildil ilmuda profiilide kataloogis
         name: Silt
         trendable: Luba sellel sildil trendida
         usable: Luba tuututustel seda silti kasutada
+      user:
+        role: Roll
+      user_role:
+        name: Nimi
+        position: Positsioon
+      webhook:
+        events: Lubatud sündmused
+        url: Lõpp-punkti URL
     'no': Ei
     required:
+      mark: "*"
       text: kohustuslik
     'yes': Jah
diff --git a/config/locales/simple_form.fo.yml b/config/locales/simple_form.fo.yml
new file mode 100644
index 000000000..4d52d34c0
--- /dev/null
+++ b/config/locales/simple_form.fo.yml
@@ -0,0 +1,75 @@
+---
+fo:
+  simple_form:
+    hints:
+      account_alias:
+        acct: Upplýs brúkaranavn@navnaøki á kontuni, sum tú vilt flyta frá
+      account_warning_preset:
+        title: Valfrítt. Ikki sjónligt fyri móttakaran
+      defaults:
+        password: Skriva minst 8 tekin
+      featured_tag:
+        name: 'Her eru nakrir tvíkrossar, ið tú hevur brúkt í seinastuni:'
+      form_admin_settings:
+        custom_css: Tú kanst seta títt egna snið upp í net-útgávuni av Mastodon.
+    labels:
+      account:
+        fields:
+          value: Innihald
+      account_warning_preset:
+        title: Heiti
+      admin_account_action:
+        types:
+          disable: Fryst
+          none: Send eina ávaring
+          sensitive: Viðkvæmt
+          silence: Mark
+          suspend: Fyribils ikki í gildi
+      announcement:
+        all_day: Tiltak allan dagin
+        ends_at: Hending liðug
+        starts_at: Tiltak byrjar
+      defaults:
+        confirm_new_password: Endurtak nýggja loyniorðið
+        confirm_password: Endurtak loyniorðið
+        data: Dáta
+        display_name: Navn, sum skal vísast
+        email: Teldubrævabústaður
+        expires_in: Endar aftan á
+        irreversible: Strika heldur enn at fjala
+        note: Ævilýsing
+        setting_display_media_hide_all: Fjal alt
+        username: Brúkaranavn
+        username_or_email: Brúkaranavn ella teldupostur
+        whole_word: Heil orð
+      featured_tag:
+        name: Tvíkrossur
+      filters:
+        actions:
+          hide: Fjal fullkomiliga
+      ip_block:
+        comment: Viðmerking
+        ip: IP
+        severity: Regla
+      notification_emails:
+        favourite: Onkur dámdi títt uppslag
+        follow_request: Onkur biður um at fylgja tær
+        mention: Onkur nevndi teg
+      rule:
+        text: Regla
+      tag:
+        listable: Loyva hesum tvíkrossið, at verða vístur í leitingum og uppskotum
+        name: Tvíkrossur
+        usable: Loyva uppsløgum at brúka hendan tvíkross
+      user:
+        role: Leiklutur
+      user_role:
+        name: Navn
+        permissions_as_keys: Loyvi
+    'no': Nei
+    not_recommended: Ikki viðmælt
+    recommended: Viðmælt
+    required:
+      mark: "*"
+      text: kravt
+    'yes': Ja
diff --git a/config/locales/simple_form.fr-QC.yml b/config/locales/simple_form.fr-QC.yml
new file mode 100644
index 000000000..41e14e5b2
--- /dev/null
+++ b/config/locales/simple_form.fr-QC.yml
@@ -0,0 +1,309 @@
+---
+fr-QC:
+  simple_form:
+    hints:
+      account_alias:
+        acct: Spécifiez l’identifiant@domaine du compte que vous souhaitez faire migrer
+      account_migration:
+        acct: Spécifiez l’identifiant@domaine du compte vers lequel vous souhaitez migrer
+      account_warning_preset:
+        text: Vous pouvez utiliser la syntaxe des messages, comme les URL, les hashtags et les mentions
+        title: Facultatif. Invisible pour le destinataire
+      admin_account_action:
+        include_statuses: L’utilisateur·rice verra quels messages sont la source de l’action de modération ou de l’avertissement
+        send_email_notification: L’utilisateur recevra une explication de ce qu’il s’est passé avec son compte
+        text_html: Facultatif. Vous pouvez utiliser la syntaxe des publications. Vous pouvez <a href="%{path}">ajouter des présélections d'attention</a> pour gagner du temps
+        type_html: Choisir que faire avec <strong>%{acct}</strong>
+        types:
+          disable: Empêcher l’utilisateur·rice d’utiliser son compte, mais ne pas supprimer ou masquer son contenu.
+          none: Utilisez ceci pour envoyer un avertissement à l’utilisateur·rice, sans déclencher aucune autre action.
+          sensitive: Forcer toutes les pièces jointes de cet·te utilisateur·rice à être signalées comme sensibles.
+          silence: Empêcher l’utilisateur·rice de poster avec une visibilité publique, cacher ses messages et ses notifications aux personnes qui ne les suivent pas.
+          suspend: Empêcher toute interaction depuis ou vers ce compte et supprimer son contenu. Réversible dans les 30 jours.
+        warning_preset_id: Facultatif. Vous pouvez toujours ajouter un texte personnalisé à la fin de la présélection
+      announcement:
+        all_day: Coché, seules les dates de l’intervalle de temps seront affichées
+        ends_at: Facultatif. La fin de l'annonce surviendra automatiquement à ce moment
+        scheduled_at: Laisser vide pour publier l’annonce immédiatement
+        starts_at: Facultatif. Si votre annonce est liée à une période spécifique
+        text: Vous pouvez utiliser la syntaxe des messages. Veuillez prendre en compte l’espace que l'annonce prendra sur l’écran de l'utilisateur·rice
+      appeal:
+        text: Vous ne pouvez faire appel d'une sanction qu'une seule fois
+      defaults:
+        autofollow: Les personnes qui s’inscrivent grâce à l’invitation vous suivront automatiquement
+        avatar: Au format PNG, GIF ou JPG. %{size} maximum. Sera réduit à %{dimensions}px
+        bot: Signale aux autres que ce compte exécute principalement des actions automatisées et pourrait ne pas être surveillé
+        context: Un ou plusieurs contextes où le filtre devrait s’appliquer
+        current_password: Par mesure de sécurité, veuillez saisir le mot de passe de ce compte
+        current_username: Pour confirmer, veuillez saisir le nom d'utilisateur de ce compte
+        digest: Uniquement envoyé après une longue période d’inactivité en cas de messages personnels reçus pendant votre absence
+        discoverable: Permet à votre compte d’être découvert par des inconnus par le biais de recommandations, de tendances et autres fonctionnalités
+        email: Vous recevrez un courriel de confirmation
+        fields: Vous pouvez avoir jusqu’à 4 éléments affichés en tant que tableau sur votre profil
+        header: Au format PNG, GIF ou JPG. %{size} maximum. Sera réduit à %{dimensions}px
+        inbox_url: Copiez l’URL depuis la page d’accueil du relai que vous souhaitez utiliser
+        irreversible: Les messages filtrés disparaîtront irrévocablement, même si le filtre est supprimé plus tard
+        locale: La langue de l’interface, des courriels et des notifications
+        locked: Nécessite que vous approuviez manuellement chaque abonné·e
+        password: Utilisez au moins 8 caractères
+        phrase: Sera filtré peu importe la casse ou l’avertissement de contenu du message
+        scopes: À quelles APIs l’application sera autorisée à accéder. Si vous sélectionnez une permission générale, vous n’avez pas besoin de sélectionner les permissions plus précises.
+        setting_aggregate_reblogs: Ne pas afficher les nouveaux partages pour les messages déjà récemment partagés (n’affecte que les partages futurs)
+        setting_always_send_emails: Normalement, les notifications par courriel ne seront pas envoyées lorsque vous utilisez Mastodon activement
+        setting_default_sensitive: Les médias sensibles sont cachés par défaut et peuvent être révélés d’un simple clic
+        setting_display_media_default: Masquer les médias marqués comme sensibles
+        setting_display_media_hide_all: Toujours masquer les médias
+        setting_display_media_show_all: Toujours afficher les médias
+        setting_hide_network: Ceux que vous suivez et ceux qui vous suivent ne seront pas affichés sur votre profil
+        setting_noindex: Affecte votre profil public ainsi que vos messages
+        setting_show_application: Le nom de l’application que vous utilisez pour publier sera affichée dans la vue détaillée de vos messages
+        setting_use_blurhash: Les dégradés sont basés sur les couleurs des images cachées mais n’en montrent pas les détails
+        setting_use_pending_items: Cacher les mises à jour des fils d’actualités derrière un clic, au lieu de les afficher automatiquement
+        username: Votre nom d’utilisateur sera unique sur %{domain}
+        whole_word: Si le mot-clé ou la phrase est alphanumérique, alors le filtre ne sera appliqué que s’il correspond au mot entier
+      domain_allow:
+        domain: Ce domaine pourra récupérer des données de ce serveur et les données entrantes seront traitées et stockées
+      email_domain_block:
+        domain: Cela peut être le nom de domaine qui apparaît dans l'adresse courriel ou l'enregistrement MX qu'il utilise. Une vérification sera faite à l'inscription.
+        with_dns_records: Une tentative de résolution des enregistrements DNS du domaine donné sera effectuée et les résultats seront également mis sur liste noire
+      featured_tag:
+        name: 'Voici quelques hashtags que vous avez utilisés récemment :'
+      filters:
+        action: Choisir l'action à effectuer quand un message correspond au filtre
+        actions:
+          hide: Cacher complètement le contenu filtré, faire comme s'il n'existait pas
+          warn: Cacher le contenu filtré derrière un avertissement mentionnant le nom du filtre
+      form_admin_settings:
+        backups_retention_period: Conserve les archives générées par l'utilisateur selon le nombre de jours spécifié.
+        bootstrap_timeline_accounts: Ces comptes seront épinglés en tête de liste des recommandations pour les nouveaux utilisateurs.
+        closed_registrations_message: Affiché lorsque les inscriptions sont fermées
+        content_cache_retention_period: Les publications depuis d'autres serveurs seront supprimées après un nombre de jours spécifiés lorsque défini sur une valeur positive. Cela peut être irréversible.
+        custom_css: Vous pouvez appliquer des styles personnalisés sur la version Web de Mastodon.
+        mascot: Remplace l'illustration dans l'interface Web avancée.
+        media_cache_retention_period: Les fichiers multimédias téléchargés seront supprimés après le nombre de jours spécifiés lorsque la valeur est positive, et seront téléchargés à nouveau sur demande.
+        profile_directory: L'annuaire des profils répertorie tous les utilisateurs qui ont opté pour être découverts.
+        require_invite_text: Lorsque les inscriptions nécessitent une approbation manuelle, rendre le texte de l’invitation "Pourquoi voulez-vous vous inscrire ?" obligatoire plutôt que facultatif
+        site_contact_email: Comment les personnes peuvent vous joindre pour des demandes de renseignements juridiques ou d'assistance.
+        site_contact_username: Comment les gens peuvent vous conracter sur Mastodon.
+        site_extended_description: Toute information supplémentaire qui peut être utile aux visiteurs et à vos utilisateurs. Peut être structurée avec la syntaxe Markdown.
+        site_short_description: Une courte description pour aider à identifier de manière unique votre serveur. Qui l'exécute, à qui il est destiné ?
+        site_terms: Utilisez votre propre politique de confidentialité ou laissez vide pour utiliser la syntaxe par défaut. Peut être structurée avec la syntaxe Markdown.
+        site_title: Comment les personnes peuvent se référer à votre serveur en plus de son nom de domaine.
+        theme: Thème que verront les utilisateur·rice·s déconnecté·e·s ainsi que les nouveaux·elles utilisateur·rice·s.
+        thumbnail: Une image d'environ 2:1 affichée à côté des informations de votre serveur.
+        timeline_preview: Les visiteurs déconnectés pourront parcourir les derniers messages publics disponibles sur le serveur.
+        trendable_by_default: Ignorer l'examen manuel du contenu tendance. Des éléments individuels peuvent toujours être supprimés des tendances après coup.
+        trends: Les tendances montrent quelles publications, hashtags et actualités sont en train de gagner en traction sur votre serveur.
+      form_challenge:
+        current_password: Vous entrez une zone sécurisée
+      imports:
+        data: Un fichier CSV généré par un autre serveur de Mastodon
+      invite_request:
+        text: Cela nous aidera à considérer votre demande
+      ip_block:
+        comment: Optionnel. Pour ne pas oublier pourquoi vous avez ajouté cette règle.
+        expires_in: Les adresses IP sont une ressource finie, elles sont parfois partagées et changent souvent de mains. Pour cette raison, les blocages d’IP indéfiniment ne sont pas recommandés.
+        ip: Entrez une adresse IPv4 ou IPv6. Vous pouvez bloquer des plages entières en utilisant la syntaxe CIDR. Faites attention à ne pas vous bloquer vous-même !
+        severities:
+          no_access: Bloquer l’accès à toutes les ressources
+          sign_up_block: Les nouvelles inscriptions ne seront pas possibles
+          sign_up_requires_approval: Les nouvelles inscriptions nécessiteront votre approbation
+        severity: Choisir ce qui se passera avec les requêtes de cette adresse IP
+      rule:
+        text: Décrivez une règle ou une exigence pour les utilisateurs sur ce serveur. Essayez de la garder courte et simple
+      sessions:
+        otp: 'Entrez le code d’authentification à deux facteurs généré par l’application de votre téléphone ou utilisez un de vos codes de récupération :'
+        webauthn: Si c'est une clé USB, assurez-vous de l'insérer et, si nécessaire, de la tapoter.
+      tag:
+        name: Vous ne pouvez modifier que la casse des lettres, par exemple, pour le rendre plus lisible
+      user:
+        chosen_languages: Lorsque coché, seuls les messages dans les langues sélectionnées seront affichés sur les fils publics
+        role: Le rôle définit quelles autorisations a l'utilisateur⋅rice
+      user_role:
+        color: Couleur à attribuer au rôle dans l'interface, au format hexadécimal RVB
+        highlighted: Cela rend le rôle visible publiquement
+        name: Nom public du rôle, si le rôle est configuré pour être affiché avec un badge
+        permissions_as_keys: Les utilisateur·rice·s ayant ce rôle auront accès à …
+        position: Dans certaines situations, un rôle supérieur peut trancher la résolution d'un conflit. Mais certaines opérations ne peuvent être effectuées que sur des rôles ayant une priorité inférieure
+      webhook:
+        events: Sélectionnez les événements à envoyer
+        url: Là où les événements seront envoyés
+    labels:
+      account:
+        fields:
+          name: Étiquette
+          value: Contenu
+      account_alias:
+        acct: Identifiant de l’ancien compte
+      account_migration:
+        acct: L’identifiant du nouveau compte
+      account_warning_preset:
+        text: Texte de présélection
+        title: Titre
+      admin_account_action:
+        include_statuses: Inclure les messages signalés dans le courriel
+        send_email_notification: Notifier l’utilisateur par courriel
+        text: Attention personnalisée
+        type: Action
+        types:
+          disable: Désactiver
+          none: Ne rien faire
+          sensitive: Sensible
+          silence: Masquer
+          suspend: Suspendre et supprimer les données du compte de manière irréversible
+        warning_preset_id: Utiliser un modèle d’avertissement
+      announcement:
+        all_day: Événement de toute la journée
+        ends_at: Fin de l’événement
+        scheduled_at: Planifier la publication
+        starts_at: Début de l’événement
+        text: Annonce
+      appeal:
+        text: Expliquez pourquoi cette décision devrait être annulée
+      defaults:
+        autofollow: Invitation à suivre votre compte
+        avatar: Image de profil
+        bot: Ceci est un robot
+        chosen_languages: Filtrer les langues
+        confirm_new_password: Confirmation du nouveau mot de passe
+        confirm_password: Confirmation du mot de passe
+        context: Contextes du filtre
+        current_password: Mot de passe actuel
+        data: Données
+        discoverable: Suggérer ce compte aux autres
+        display_name: Nom public
+        email: Adresse courriel
+        expires_in: Expire après
+        fields: Métadonnées du profil
+        header: Image d’en-tête
+        honeypot: "%{label} (ne pas remplir)"
+        inbox_url: URL de la boîte de relais
+        irreversible: Supprimer plutôt que masquer
+        locale: Langue de l’interface
+        locked: Verrouiller le compte
+        max_uses: Nombre maximum d’utilisations
+        new_password: Nouveau mot de passe
+        note: Présentation
+        otp_attempt: Code d’identification à deux facteurs
+        password: Mot de passe
+        phrase: Mot-clé ou phrase
+        setting_advanced_layout: Activer l’interface Web avancée
+        setting_aggregate_reblogs: Grouper les partages dans les fils d’actualités
+        setting_always_send_emails: Toujours envoyer les notifications par courriel
+        setting_auto_play_gif: Lire automatiquement les GIFs animés
+        setting_boost_modal: Demander confirmation avant de partager un message
+        setting_crop_images: Recadrer en 16x9 les images des messages qui ne sont pas ouverts en vue détaillée
+        setting_default_language: Langue de publication
+        setting_default_privacy: Confidentialité des messages
+        setting_default_sensitive: Toujours marquer les médias comme sensibles
+        setting_delete_modal: Demander confirmation avant de supprimer un message
+        setting_disable_swiping: Désactiver les actions par glissement
+        setting_display_media: Affichage des médias
+        setting_display_media_default: Défaut
+        setting_display_media_hide_all: Masquer tout
+        setting_display_media_show_all: Montrer tout
+        setting_expand_spoilers: Toujours déplier les messages marqués d’un avertissement de contenu
+        setting_hide_network: Cacher votre réseau
+        setting_noindex: Demander aux moteurs de recherche de ne pas indexer vos informations personnelles
+        setting_reduce_motion: Réduire la vitesse des animations
+        setting_show_application: Dévoiler l’application utilisée pour envoyer les messages
+        setting_system_font_ui: Utiliser la police par défaut du système
+        setting_theme: Thème du site
+        setting_trends: Afficher les tendances du jour
+        setting_unfollow_modal: Afficher une fenêtre de confirmation avant de vous désabonner d’un compte
+        setting_use_blurhash: Afficher des dégradés colorés pour les médias cachés
+        setting_use_pending_items: Mode lent
+        severity: Sévérité
+        sign_in_token_attempt: Code de sécurité
+        title: Nom
+        type: Type d’import
+        username: Identifiant
+        username_or_email: Nom d’utilisateur·rice ou courriel
+        whole_word: Mot entier
+      email_domain_block:
+        with_dns_records: Inclure les enregistrements MX et IP du domaine
+      featured_tag:
+        name: Hashtag
+      filters:
+        actions:
+          hide: Cacher complètement
+          warn: Cacher derrière un avertissement
+      form_admin_settings:
+        backups_retention_period: Période d'archivage utilisateur
+        bootstrap_timeline_accounts: Toujours recommander ces comptes aux nouveaux utilisateurs
+        closed_registrations_message: Message personnalisé lorsque les inscriptions ne sont pas disponibles
+        content_cache_retention_period: Durée de rétention du contenu dans le cache
+        custom_css: CSS personnalisé
+        mascot: Mascotte personnalisée (héritée)
+        media_cache_retention_period: Durée de rétention des médias dans le cache
+        profile_directory: Activer l’annuaire des profils
+        registrations_mode: Qui peut s’inscrire
+        require_invite_text: Exiger une raison pour s’inscrire
+        show_domain_blocks: Afficher les blocages de domaines
+        show_domain_blocks_rationale: Montrer pourquoi les domaines ont été bloqués
+        site_contact_email: E-mail de contact
+        site_contact_username: Nom d'utilisateur du contact
+        site_extended_description: Description étendue
+        site_short_description: Description du serveur
+        site_terms: Politique de confidentialité
+        site_title: Nom du serveur
+        theme: Thème par défaut
+        thumbnail: Miniature du serveur
+        timeline_preview: Autoriser l’accès non authentifié aux fils publics
+        trendable_by_default: Autoriser les tendances sans révision préalable
+        trends: Activer les tendances
+      interactions:
+        must_be_follower: Bloquer les notifications des personnes qui ne vous suivent pas
+        must_be_following: Bloquer les notifications des personnes que vous ne suivez pas
+        must_be_following_dm: Bloquer les messages directs des personnes que vous ne suivez pas
+      invite:
+        comment: Commentaire
+      invite_request:
+        text: Pourquoi voulez-vous vous inscrire ?
+      ip_block:
+        comment: Commentaire
+        ip: IP
+        severities:
+          no_access: Bloquer l’accès
+          sign_up_block: Bloquer les inscriptions
+          sign_up_requires_approval: Limite des inscriptions
+        severity: Règle
+      notification_emails:
+        appeal: Une personne fait appel d'une décision des modérateur·rice·s
+        digest: Envoyer des courriels récapitulatifs
+        favourite: Quelqu’un a ajouté mon message à ses favoris
+        follow: Quelqu’un vient de me suivre
+        follow_request: Quelqu’un demande à me suivre
+        mention: Quelqu’un me mentionne
+        pending_account: Nouveau compte en attente d’approbation
+        reblog: Quelqu’un a partagé mon message
+        report: Nouveau signalement soumis
+        trending_tag: Nouvelle tendance nécessitant supervision
+      rule:
+        text: Règle
+      tag:
+        listable: Autoriser ce hashtag à apparaître dans les recherches et dans l’annuaire des profils
+        name: Hashtag
+        trendable: Autoriser ce hashtag à apparaitre dans les tendances
+        usable: Autoriser les messages à utiliser ce hashtag
+      user:
+        role: Rôle
+      user_role:
+        color: Couleur du badge
+        highlighted: Afficher le rôle avec un badge sur les profils des utilisateur·rice·s
+        name: Nom
+        permissions_as_keys: Autorisations
+        position: Priorité
+      webhook:
+        events: Événements activés
+        url: URL du point de terminaison
+    'no': Non
+    not_recommended: Non recommandé
+    recommended: Recommandé
+    required:
+      mark: "*"
+      text: champs requis
+    title:
+      sessions:
+        webauthn: Utilisez l'une de vos clés de sécurité pour vous connecter
+    'yes': Oui
diff --git a/config/locales/simple_form.fr.yml b/config/locales/simple_form.fr.yml
index d99698041..53a2d708c 100644
--- a/config/locales/simple_form.fr.yml
+++ b/config/locales/simple_form.fr.yml
@@ -84,7 +84,7 @@ fr:
         profile_directory: L'annuaire des profils répertorie tous les utilisateurs qui ont opté pour être découverts.
         require_invite_text: Lorsque les inscriptions nécessitent une approbation manuelle, rendre le texte de l’invitation "Pourquoi voulez-vous vous inscrire ?" obligatoire plutôt que facultatif
         site_contact_email: Comment les personnes peuvent vous joindre pour des demandes de renseignements juridiques ou d'assistance.
-        site_contact_username: Comment les gens peuvent vous conracter sur Mastodon.
+        site_contact_username: Comment les gens peuvent vous contacter sur Mastodon.
         site_extended_description: Toute information supplémentaire qui peut être utile aux visiteurs et à vos utilisateurs. Peut être structurée avec la syntaxe Markdown.
         site_short_description: Une courte description pour aider à identifier de manière unique votre serveur. Qui l'exécute, à qui il est destiné ?
         site_terms: Utilisez votre propre politique de confidentialité ou laissez vide pour utiliser la syntaxe par défaut. Peut être structurée avec la syntaxe Markdown.
@@ -184,7 +184,7 @@ fr:
         max_uses: Nombre maximum d’utilisations
         new_password: Nouveau mot de passe
         note: Présentation
-        otp_attempt: Code d’identification à deux facteurs
+        otp_attempt: Code d’authentification à deux facteurs
         password: Mot de passe
         phrase: Mot-clé ou phrase
         setting_advanced_layout: Activer l’interface Web avancée
diff --git a/config/locales/simple_form.ga.yml b/config/locales/simple_form.ga.yml
index 4be8c4f45..997668a34 100644
--- a/config/locales/simple_form.ga.yml
+++ b/config/locales/simple_form.ga.yml
@@ -24,6 +24,7 @@ ga:
       defaults:
         avatar: Abhatár
         data: Sonraí
+        display_name: Ainm taispeána
         email: Seoladh ríomhphoist
         header: Ceanntásc
         note: Beathaisnéis
@@ -48,6 +49,9 @@ ga:
         site_title: Ainm freastalaí
       ip_block:
         ip: IP
+      notification_emails:
+        follow: Lean duine éigin tú
+        reblog: Mhol duine éigin do phostáil
       tag:
         name: Haischlib
       user_role:
diff --git a/config/locales/simple_form.gd.yml b/config/locales/simple_form.gd.yml
index 28dc0625e..090fbc552 100644
--- a/config/locales/simple_form.gd.yml
+++ b/config/locales/simple_form.gd.yml
@@ -250,7 +250,7 @@ gd:
         theme: An t-ùrlar bunaiteach
         thumbnail: Dealbhag an fhrithealaiche
         timeline_preview: Ceadaich inntrigeadh gun ùghdarrachadh air na loidhnichean-ama phoblach
-        trendable_by_default: Ceadaich treandaichean gu lèirmheas ro làimh
+        trendable_by_default: Ceadaich treandaichean gun lèirmheas ro làimh
         trends: Cuir na treandaichean an comas
       interactions:
         must_be_follower: Bac na brathan nach eil o luchd-leantainn
diff --git a/config/locales/simple_form.gl.yml b/config/locales/simple_form.gl.yml
index cf3e6f635..ef8b83c11 100644
--- a/config/locales/simple_form.gl.yml
+++ b/config/locales/simple_form.gl.yml
@@ -67,7 +67,7 @@ gl:
         domain: Este pode ser o nome de dominio que aparece no enderezo de email ou o rexistro MX que utiliza. Será comprobado no momento do rexistro.
         with_dns_records: Vaise facer un intento de resolver os rexistros DNS proporcionados e os resultados tamén irán a lista de bloqueo
       featured_tag:
-        name: 'Aquí tes algún dos cancelos que usaches recentemente:'
+        name: 'Aquí tes algúns dos cancelos que usaches recentemente:'
       filters:
         action: Elixe a acción a realizar cando algunha publicación coincida co filtro
         actions:
@@ -77,7 +77,7 @@ gl:
         backups_retention_period: Gardar os arquivos xerados pola usuaria durante o número de días indicado.
         bootstrap_timeline_accounts: Estas contas aparecerán fixas na parte superior das recomendacións para as usuarias.
         closed_registrations_message: Móstrase cando non se admiten novas usuarias
-        content_cache_retention_period: As publicacións desde outros servidores serán eliminados despois do número de días indicados ao poñer un valor positivo. É unha acción irreversible.
+        content_cache_retention_period: As publicacións desde outros servidores serán eliminadas despois do número de días indicados ao poñer un valor positivo. É unha acción irreversible.
         custom_css: Podes aplicar deseños personalizados na versión web de Mastodon.
         mascot: Sobrescribe a ilustración na interface web avanzada.
         media_cache_retention_period: Os ficheiros multimedia descargados serán eliminados despois do número de días indicado ao establecer un valor positivo, e voltos a descargar baixo petición.
@@ -121,9 +121,9 @@ gl:
         role: O control dos roles adxudicados ás usuarias
       user_role:
         color: Cor que se usará para o rol a través da IU, como RGB en formato hex
-        highlighted: Esto fai o rol públicamente visible
+        highlighted: Isto fai o rol publicamente visible
         name: Nome público do rol, se o rol se mostra como unha insignia
-        permissions_as_keys: As usuarias con este rol terá acceso a...
+        permissions_as_keys: As usuarias con este rol terán acceso a...
         position: O rol superior decide nos conflitos en certas situacións. Algunhas accións só poden aplicarse sobre roles cunha prioridade menor
       webhook:
         events: Elixir eventos a enviar
diff --git a/config/locales/simple_form.he.yml b/config/locales/simple_form.he.yml
index ae1ad4fb7..6c87e2bd6 100644
--- a/config/locales/simple_form.he.yml
+++ b/config/locales/simple_form.he.yml
@@ -18,7 +18,7 @@ he:
           disable: מנעי מהמשתמש להשתמש בחשבונם, מבלי למחוק או להסתיר את תוכנו.
           none: השתמשי בזה כדי לשלוח למשתמש אזהרה, מבלי לגרור פעולות נוספות.
           sensitive: אלצי את כל קבצי המדיה המצורפים על ידי המשתמש להיות מסומנים כרגישים.
-          silence: מנעי מהמשתמש להיות מסוגל לפרסם בנראות פומבית, החביאי את הודעותיהם והתראותיהם מאנשים שלא עוקבים אחריהם.
+          silence: מנעי מהמשתמש להיות מסוגל לחצרץ בנראות פומבית, החביאי את חצרוציהם והתראותיהם מאנשים שלא עוקבים אחריהם.
           suspend: מנעי כל התקשרות עם חשבון זה ומחקי את תוכנו. ניתן לשחזור תוך 30 יום.
         warning_preset_id: אופציונלי. ניתן עדיין להוסיף טקסט ייחודי לסוף ההגדרה
       announcement:
@@ -56,10 +56,10 @@ he:
         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}
+        username: שם המשתמש שלך יהיה ייחודי ב- %{domain}
         whole_word: אם מילת מפתח או ביטוי הם אלפאנומריים בלבד, הם יופעלו רק אם נמצאה התאמה למילה שלמה
       domain_allow:
         domain: דומיין זה יוכל לייבא מידע משרת זה והמידע המגיע ממנו יעובד ויאופסן
diff --git a/config/locales/simple_form.is.yml b/config/locales/simple_form.is.yml
index b5ffc211e..9e8dc41e1 100644
--- a/config/locales/simple_form.is.yml
+++ b/config/locales/simple_form.is.yml
@@ -163,7 +163,7 @@ is:
       defaults:
         autofollow: Bjóða að fylgjast með aðgangnum þínum
         avatar: Auðkennismynd
-        bot: Þetta er aðgangur fyrir vélmenni
+        bot: Þetta er aðgangur fyrir yrki
         chosen_languages: Sía tungumál
         confirm_new_password: Staðfestu nýja lykilorðið
         confirm_password: Staðfestu lykilorðið
diff --git a/config/locales/simple_form.ja.yml b/config/locales/simple_form.ja.yml
index 309a14dfa..ea633e6af 100644
--- a/config/locales/simple_form.ja.yml
+++ b/config/locales/simple_form.ja.yml
@@ -79,7 +79,7 @@ ja:
         closed_registrations_message: アカウント作成を停止している時に表示されます
         content_cache_retention_period: 正の値に設定されている場合、他のサーバーの投稿は指定された日数の後に削除されます。元に戻せません。
         custom_css: ウェブ版のMastodonでカスタムスタイルを適用できます。
-        mascot: 上級者向けWebインターフェースのイラストを上書きします。
+        mascot: 上級者向けWebインターフェースのイラストを上書きする。
         media_cache_retention_period: 正の値に設定されている場合、ダウンロードされたメディアファイルは指定された日数の後に削除され、リクエストに応じて再ダウンロードされます。
         profile_directory: プロフィールディレクトリには、掲載するよう設定したすべてのユーザーが一覧表示されます。
         require_invite_text: アカウント登録が承認制の場合、「意気込みをお聞かせください」のテキストの入力を必須にする
diff --git a/config/locales/simple_form.kab.yml b/config/locales/simple_form.kab.yml
index 7508308d6..73420169f 100644
--- a/config/locales/simple_form.kab.yml
+++ b/config/locales/simple_form.kab.yml
@@ -76,6 +76,7 @@ kab:
         setting_theme: Asental n wesmel
         setting_use_pending_items: Askar aleγwayan
         sign_in_token_attempt: Tangalt n tɣellist
+        title: Azwel
         type: Anaw n uktar
         username: Isem n useqdac
         username_or_email: Isem n useqdac neγ imal
@@ -84,6 +85,7 @@ kab:
         name: Ahacṭag
       form_admin_settings:
         site_terms: Tasertit tabaḍnit
+        site_title: Isem n uqeddac
       invite:
         comment: Awennit
       invite_request:
@@ -102,6 +104,9 @@ kab:
         text: Alugen
       tag:
         name: Ahacṭag
+      user_role:
+        name: Isem
+        permissions_as_keys: Tisirag
     'no': Ala
     required:
       mark: "*"
diff --git a/config/locales/simple_form.ku.yml b/config/locales/simple_form.ku.yml
index ef0d4140c..4102b10be 100644
--- a/config/locales/simple_form.ku.yml
+++ b/config/locales/simple_form.ku.yml
@@ -8,7 +8,7 @@ ku:
         acct: Ajimêrê ku tu dixwazî bar bikî bo wê navê bikarhêner@navpar diyar bike
       account_warning_preset:
         text: Tu dikarî hevoksaziya şandiyê wekî URL, hashtag û şîroveyan, bi kar bînî
-        title: Bi dilê xwe ye. Ji wergir re nay xûyakirin
+        title: Vebijêrkî ye. Ji wergir re nayê xuyakirin
       admin_account_action:
         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
@@ -41,7 +41,7 @@ ku:
         email: Ji te re e-name ya pejirandinê were
         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
+        inbox_url: Girêdanê ji rûpela pêşîn a guhêrkera ku tu dixwazî bi kar bînî jê bigire
         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 pejirandina daxwazên şopandinê, kî dikare te bişopîne bi destan kontrol bike
@@ -90,6 +90,12 @@ ku:
         site_extended_description: Her zanyariyek daxwazî dibe ku bibe alîkar bo mêvan û bikarhêneran re. Û dikarin bi hevoksaziya Markdown re werin sazkirin.
         site_short_description: Danasîneke kurt ji bo ku bibe alîkar ku rajekara te ya bêhempa werê naskirin. Kî bi rê ve dibe, ji bo kê ye?
         site_terms: Politîka taybetiyê ya xwe bi kar bîne an jî vala bihêle da ku berdest werê bikaranîn. Dikare bi hevoksaziya Markdown ve werê sazkirin.
+        site_title: Tu çawa dixwazî mirov qale rajekarê te bikin ji bilî navê navparê wî.
+        theme: Rûkara ku mêvanên têneketî û bikarhênerên nû dibînin.
+        thumbnail: Li kêleka zanyariyên rajekarê xwe wêneyeke 2:1 nîşan bide.
+        timeline_preview: Mêvanên têneketî wê karibin li şandiyên gelemperî yên herî dawî yên ku li ser rajekarê peyda dibin bigerin.
+        trendable_by_default: Nirxandina destan a naveroka rojevê derbas bike. Tiştên kesane dîsa jî dikarin piştî rastiyê ji rojevê werin derxistin.
+        trends: Rojev nîşan dide ka kîjan şandî, hashtag û çîrokê nûçeyan balê dikişîne li ser rajekarê te.
       form_challenge:
         current_password: Tu dikevî qadeke ewledar
       imports:
@@ -173,7 +179,7 @@ ku:
         fields: Profîla daneyên meta
         header: Jormalper
         honeypot: "%{label} (tijî neke)"
-        inbox_url: URLya guhêzkera wergirtî
+        inbox_url: Girêdana guhêrkera peymanên hatî
         irreversible: Li şûna veşartinê jê bibe
         locale: Zimanê navrûyê
         locked: Ajimêr kilît bike
@@ -227,6 +233,7 @@ ku:
       form_admin_settings:
         backups_retention_period: Serdema tomarkirina arşîva bikarhêner
         bootstrap_timeline_accounts: Van ajimêran ji bikarhênerên nû re pêşniyar bike
+        closed_registrations_message: Peyama kesane dema ku tomarkirin peyda nebin
         content_cache_retention_period: Serdema tomarkirina bîrdanka naverokê
         custom_css: CSS a kesanekirî
         mascot: Mascot a kesanekirî (legacy)
@@ -235,6 +242,7 @@ ku:
         registrations_mode: Kî dikare tomar bibe
         require_invite_text: Ji bo tevlêbûnê sedemek pêdivî ye
         show_domain_blocks: Astengkirinên navperê nîşan bide
+        show_domain_blocks_rationale: Nîşan bide ka çima navpar hatine astengkirin
         site_contact_email: Bi me re biaxive bi riya e-name
         site_contact_username: Bi bikarhêner re têkeve têkiliyê
         site_extended_description: Danasîna berferhkirî
diff --git a/config/locales/simple_form.ms.yml b/config/locales/simple_form.ms.yml
index 2925688a0..64fc95b17 100644
--- a/config/locales/simple_form.ms.yml
+++ b/config/locales/simple_form.ms.yml
@@ -1 +1,148 @@
+---
 ms:
+  simple_form:
+    hints:
+      defaults:
+        email: Anda akan dihantar e-mel pengesahan
+        locale: Bahasa untuk antara muka pengguna, e-mel dan pemberitahuan segera
+        password: Gunakan sekurang-kurangnya 8 aksara
+        setting_always_send_emails: Biasanya pemberitahuan e-mel tidak akan dihantar apabila anda selalu menggunakan Mastodon
+        setting_display_media_default: Sembunyikan media yang ditanda sebagai sensitif
+        setting_display_media_hide_all: Sentiasa sembunyikan media
+        setting_display_media_show_all: Sentiasa paparkan media
+        setting_hide_network: Sesiapa yang anda ikuti dan sesiapa yang mengikuti anda akan disembunyi daripada profil anda
+        setting_noindex: Menjejaskan profil awam dan laman hantaran anda
+      form_admin_settings:
+        closed_registrations_message: Dipaparkan semasa pendaftaran ditutup
+        site_contact_username: Bagaimana orang boleh menghubungi anda pada Mastodon.
+        site_extended_description: Apa-apa maklumat tambahan yang mungkin berguna untuk pelawat dan pengguna anda. Boleh distruktur dengan sintaks Markdown.
+        site_terms: Gunakan dasar polisi anda atau biarkan kosong untuk menggunakan lalai. Boleh distruktur dengan sintaks Markdown.
+      form_challenge:
+        current_password: Anda sedang memasuki kawasan selamat
+      imports:
+        data: Fail CSV dieksport daripada pelayan Mastodon yang lain
+      invite_request:
+        text: Ini akan membantu kami menyemak permohonan anda
+      ip_block:
+        severities:
+          no_access: Menyekat akses kepada semua sumber
+          sign_up_block: Pendaftaran baru tidak akan dibenarkan
+          sign_up_requires_approval: Pendaftaran baru akan memerlukan kelulusan anda
+      user_role:
+        color: Warna yang akan digunakan untuk peranan ini dalam seluruh UI, sebagai RGB dalam format hex
+        highlighted: Ini menjadikan peranan ini dipaparkan secara umum
+        permissions_as_keys: Pengguna dengan peranan ini akan mempunyai akses kepada...
+    labels:
+      account:
+        fields:
+          value: Kandungan
+      account_warning_preset:
+        title: Tajuk
+      admin_account_action:
+        text: Amaran tersuai
+        type: Tindakan
+        types:
+          none: Hantar amaran
+          sensitive: Sensitif
+          silence: Hadkan
+          suspend: Gantung
+        warning_preset_id: Gunakan amaran yang ditetapkan
+      announcement:
+        text: Pengumuman
+      appeal:
+        text: Jelaskan mengapa keputusan ini patut diterbalikkan
+      defaults:
+        bot: Ini ialah akaun bot
+        chosen_languages: Tapis bahasa
+        confirm_new_password: Sahkan kata laluan baru
+        confirm_password: Sahkan kata laluan
+        context: Konteks penapis
+        current_password: Kata laluan semasa
+        data: Data
+        discoverable: Mencadangkan akaun kepada pengguna lain
+        display_name: Nama paparan
+        email: Alamat e-mel
+        expires_in: Tamat tempoh selepas
+        fields: Metadata profil
+        locale: Bahasa antara muka
+        new_password: Kata laluan baru
+        otp_attempt: Kod dua faktor
+        password: Kata laluan
+        phrase: Kata kunci atau frasa
+        setting_advanced_layout: Dayakan antara muka web lanjutan
+        setting_default_language: Bahasa hantaran
+        setting_default_privacy: Privasi hantaran
+        setting_default_sensitive: Selalu tandakan media sebagai sensitif
+        setting_display_media: Paparan media
+        setting_display_media_default: Lalai
+        setting_display_media_hide_all: Sembunyikan semua
+        setting_display_media_show_all: Paparkan semua
+        setting_system_font_ui: Gunakan fon lalai sistem
+        setting_theme: Tema halaman
+        setting_trends: Paparkan trend hari ini
+        sign_in_token_attempt: Kod keselamatan
+        title: Tajuk
+        type: Jenis import
+        username: Nama pengguna
+        username_or_email: Nama Pengguna atau E-mel
+        whole_word: Seluruh perkataan
+      featured_tag:
+        name: Tanda pagar
+      filters:
+        actions:
+          hide: Sembunyikan sepenuhnya
+          warn: Sembunyikan dengan amaran
+      form_admin_settings:
+        custom_css: CSS tersuai
+        profile_directory: Dayakan direktori profil
+        registrations_mode: Siapa boleh mendaftar
+        require_invite_text: Memerlukan sebab penyertaan
+        show_domain_blocks: Tunjukan sekatan domain
+        show_domain_blocks_rationale: Tunjukan sebab domain disekat
+        site_contact_email: E-mel hubungan
+        site_contact_username: Nama pengguna hubungan
+        site_extended_description: Penerangan lanjut
+        site_short_description: Penerangan pelayan
+        site_terms: Dasar Privasi
+        site_title: Nama pelayan
+        theme: Tema asal
+        trends: Dayakan trend
+      invite:
+        comment: Komen
+      invite_request:
+        text: Mengapa anda hendak menyertai?
+      ip_block:
+        comment: Komen
+        ip: IP
+        severities:
+          no_access: Sekat akses
+          sign_up_block: Sekat pendaftaran
+          sign_up_requires_approval: Hadkan pendaftaran
+        severity: Peraturan
+      notification_emails:
+        favourite: Seorang menggemarkan hantaran anda
+        follow: Seorang mengikuti anda
+        follow_request: Seorang meminta untuk mengikuti anda
+        mention: Seorang menyebut anda
+        pending_account: Akaun baru memerlukan semakan
+        reblog: Seorang menggalakan hantaran anda
+        report: Laporan baru telah dihantar
+        trending_tag: Trend baru memerlukan semakan
+      rule:
+        text: Peraturan
+      tag:
+        name: Tanda pagar
+        usable: Benarkan siaran untuk menggunakan tanda pagar ini
+      user:
+        role: Peranan
+      user_role:
+        color: Warna lencana
+        name: Nama
+        permissions_as_keys: Kebenaran
+        position: Keutamaan
+    'no': Tidak
+    not_recommended: Tidak disyorkan
+    recommended: Disyorkan
+    required:
+      text: diperlukan
+    'yes': Ya
diff --git a/config/locales/simple_form.nl.yml b/config/locales/simple_form.nl.yml
index f1c8c3f25..090b398be 100644
--- a/config/locales/simple_form.nl.yml
+++ b/config/locales/simple_form.nl.yml
@@ -3,9 +3,9 @@ nl:
   simple_form:
     hints:
       account_alias:
-        acct: Vul de gebruikersnaam@domein van het account in, die je wilt verhuizen
+        acct: Vermeld de gebruikersnaam@domein van het account vanwaar je wilt verhuizen
       account_migration:
-        acct: Vul de gebruikersnaam@domein van het account in, waarnaartoe je wilt verhuizen
+        acct: Vermeld de gebruikersnaam@domein van het account waar je naartoe wilt verhuizen
       account_warning_preset:
         text: Je kunt specifieke tekst voor berichten gebruiken, zoals URL's, hashtags en vermeldingen
         title: Optioneel. Niet zichtbaar voor de ontvanger
@@ -238,7 +238,7 @@ nl:
         media_cache_retention_period: Bewaartermijn mediacache
         profile_directory: Gebruikersgids inschakelen
         registrations_mode: Wie kan zich registreren
-        require_invite_text: Goedkeuring vereist om te kunnen registreren
+        require_invite_text: Opgeven van een reden is verplicht
         show_domain_blocks: Domeinblokkades tonen
         show_domain_blocks_rationale: Redenen voor domeinblokkades tonen
         site_contact_email: E-mailadres contactpersoon
diff --git a/config/locales/simple_form.no.yml b/config/locales/simple_form.no.yml
index b3d9613e7..42ef3f818 100644
--- a/config/locales/simple_form.no.yml
+++ b/config/locales/simple_form.no.yml
@@ -7,17 +7,17 @@
       account_migration:
         acct: Spesifiser brukernavn@domene til brukeren du vil flytte til
       account_warning_preset:
-        text: Du kan bruke tut syntaks, f.eks. URLer, emneknagger og nevnelser
+        text: Du kan bruke innlegg-syntaks, f.eks. URLer, emneknagger og nevnelser
         title: Valgfritt. Ikke synlig for mottaker
       admin_account_action:
-        include_statuses: Brukeren vil se hvilke tuter som forårsaket moderator-handlingen eller -advarselen
+        include_statuses: Brukeren vil se hvilke innlegg som forårsaket moderator-handlingen eller -advarselen
         send_email_notification: Brukeren vil motta en forklaring på hva som har skjedd med deres bruker
         text_html: Valgfritt. Du kan bruke innlegg-syntaks. Du kan <a href="%{path}">legge til advarsels-forhåndsinnstillinger</a> for å spare tid
         type_html: Velg hva du vil gjøre med <strong>%{acct}</strong>
         types:
           disable: Forhindre brukeren fra å bruke kontoen sin, men ikke slett eller skjul innholdet deres.
           none: Bruk dette for å sende en advarsel til brukeren uten å utløse noen andre handlinger.
-          sensitive: Tving alle denne brukerens medievedlegg til å bli markert som følsom.
+          sensitive: Tving alle denne brukerens medievedlegg til å bli merket som følsomme.
           silence: Hindre brukeren i å kunne skrive offentlig synlighet, skjule sine innlegg og varsler for personer som ikke kan følge dem.
           suspend: Forhindre interaksjon fra eller til denne kontoen og slett innholdet der. Reversibel innen 30 dager.
         warning_preset_id: Valgfritt. Du kan fortsatt legge til tilpasset tekst til slutten av forhåndsinnstillingen
@@ -26,7 +26,9 @@
         ends_at: Valgfritt. Kunngjøring vil bli automatisk avpublisert på dette tidspunktet
         scheduled_at: La stå tomt for å publisere kunngjøringen umiddelbart
         starts_at: Valgfritt. I tilfellet din kunngjøring er bundet til en spesifikk tidsramme
-        text: Du kan bruke tut syntaks. Vennligst vær oppmerksom på plassen som kunngjøringen vil ta opp på brukeren sin skjerm
+        text: Du kan bruke innlegg-syntaks. Vennligst vær oppmerksom på plassen som kunngjøringen vil ta opp på brukeren sin skjerm
+      appeal:
+        text: Du kan kun klage på en advarsel en gang
       defaults:
         autofollow: Folk som lager en konto gjennom invitasjonen, vil automatisk følge deg
         avatar: PNG, GIF eller JPG. Maksimalt %{size}. Vil bli nedskalert til %{dimensions}px
@@ -35,24 +37,26 @@
         current_password: For sikkerhetsgrunner, vennligst oppgi passordet til den nåværende bruker
         current_username: For å bekrefte, vennligst skriv inn brukernavnet til den nåværende kontoen
         digest: Kun sendt etter en lang periode med inaktivitet og bare dersom du har mottatt noen personlige meldinger mens du var borte
+        discoverable: La kontoen din bli oppdaget av ukjente gjennom anbefalinger, trender og andre funksjoner
         email: Du vil bli tilsendt en bekreftelses-E-post
         fields: Du kan ha opptil 4 gjenstander vist som en tabell på profilsiden din
         header: PNG, GIF eller JPG. Maksimalt %{size}. Vil bli nedskalert til %{dimensions}px
         inbox_url: Kopier URLen fra forsiden til overgangen du vil bruke
-        irreversible: Filtrerte tuter vil ugjenkallelig forsvinne, selv om filteret senere blir fjernet
+        irreversible: Filtrerte innlegg vil ugjenkallelig forsvinne, selv om filteret senere blir fjernet
         locale: Språket til brukergrensesnittet, e-mailer og push-varsler
         locked: Krever at du manuelt godkjenner følgere
         password: Bruk minst 8 tegn
-        phrase: Vil bli samsvart med, uansett bruk av store/små bokstaver eller innholdsadvarselen til en tut
+        phrase: Vil bli samsvart med, uansett bruk av store/små bokstaver eller innholdsvarselet til et innlegg
         scopes: Hvilke API-er programmet vil bli gitt tilgang til. Dersom du velger et toppnivåomfang, trenger du ikke å velge individuelle API-er.
-        setting_aggregate_reblogs: Ikke vis nye fremhevinger for tuter som nylig har blitt fremhever (Påvirker kun nylige fremhevinger)
-        setting_default_sensitive: Sensitivt media blir skjult som standard og kan bli vist med et klikk
-        setting_display_media_default: Skjul media som er merket som sensitivt
+        setting_aggregate_reblogs: Ikke vis nye fremhevinger for innlegg som nylig har blitt fremhevet (påvirker kun nylige fremhevinger)
+        setting_always_send_emails: E-postvarsler sendes normalt sett ikke mens du aktivt bruker Mastodon
+        setting_default_sensitive: Følsomme media blir i utgangspunktet skjult, og kan vises frem ved hjelp av et klikk
+        setting_display_media_default: Skjul media som er merket som følsomt
         setting_display_media_hide_all: Skjul alltid all media
         setting_display_media_show_all: Alltid vis media som er merket som sensitivt
         setting_hide_network: De som du følger, og de som følger deg, vil ikke bli vist på profilen din
         setting_noindex: Påvirker din offentlige profil og statussider
-        setting_show_application: Appen du brukte til å tute vil bli vist i den detaljerte visningen til tutene dine
+        setting_show_application: Appen du bruker til å publisere innlegg vil bli vist i den detaljerte visningen til innleggene dine
         setting_use_blurhash: Gradientene er basert på fargene til de skjulte visualitetene, men gjør alle detaljer uklare
         setting_use_pending_items: Skjul tidslinjeoppdateringer bak et klikk, i stedet for å automatisk la strømmen skrolle
         username: Brukernavnet ditt vil være unikt på %{domain}
@@ -61,7 +65,31 @@
         domain: Dette domenet vil være i stand til å hente data fra denne serveren og dets innkommende data vil bli prosessert og lagret
       email_domain_block:
         domain: Dette kan være domenenavnet som vises i e-postadressen eller MX-oppføringen den bruker. De vil bli sjekket ved oppretting av konto.
-        with_dns_records: Et forsøk på å løse det gitte domenets DNS-poster vil bli gjort, og resultatene vil også bli svartelistet
+        with_dns_records: Et forsøk på å slå opp det gitte domenets DNS-poster vil bli gjort, og resultatene vil også bli blokkert
+      featured_tag:
+        name: 'Her er noen av emneknaggene du har brukt i det siste:'
+      filters:
+        action: Velg hvilken handling som skal utføres når et innlegg samsvarer med filteret
+        actions:
+          hide: Skjul filtrert innhold fullstendig, som om det ikke eksisterte
+          warn: Skjul det filtrerte innholdet bak et varsel som omtaler filterets tittel
+      form_admin_settings:
+        backups_retention_period: Behold genererte brukerarkiv i det angitte antall dager.
+        bootstrap_timeline_accounts: Disse kontoene vil bli festet til toppen av nye brukeres følge-anbefalinger.
+        closed_registrations_message: Vises når det er stengt for registrering
+        content_cache_retention_period: Innlegg fra andre tjenere vil slettes etter det angitte antall dager når det er satt til en positiv verdi. Dette kan være irreversibelt.
+        custom_css: Du kan bruke egendefinerte stiler på nettversjonen av Mastodon.
+        mascot: Overstyrer illustrasjonen i det avanserte webgrensesnittet.
+        media_cache_retention_period: Mediafiler som lastes ned vil bli slettet etter det angitte antall dager når det settes til en positiv verdi, og blir lastet ned på nytt ved behov.
+        profile_directory: Profilkatalogen viser alle brukere som har valgt å kunne bli oppdaget.
+        require_invite_text: Når registreringer krever manuell godkjenning, må du gjøre «Hvorfor vil du bli med?»-tekstinput obligatorisk i stedet for valgfritt
+        site_contact_email: Hvordan mennesker får tak i deg for rettslige spørsmål eller brukerstøtte.
+        site_contact_username: Hvordan mennesker kan få tak i deg på Mastodon.
+        site_extended_description: Eventuell ekstra informasjon som kan være nyttig for besøkende og dine brukere. Kan struktureres med Markdown-syntaks.
+        site_short_description: En kort beskrivelse for å bidra til å definere din tjeners identitet. Hvem kjører den, hvem er det for?
+        site_terms: Bruk dine egne personvernregler eller la stå tom for å bruke standarden. Kan struktureres med Markdown-syntaks.
+        site_title: Hva man kan kalle tjeneren din utover domenenavnet.
+        theme: Tema som vises for nye brukere og besøkende som ikke er logget inn.
       form_challenge:
         current_password: Du går inn i et sikkert område
       imports:
@@ -74,6 +102,7 @@
         ip: Skriv inn en IPv4 eller IPv6-adresse. Du kan blokkere alle områder ved å bruke CIDR-syntaksen. Pass på å ikke låse deg selv!
         severities:
           no_access: Blokker tilgang til alle ressurser
+          sign_up_block: Nyregistrering vil ikke være mulig
           sign_up_requires_approval: Nye registreringer vil kreve din godkjenning
         severity: Velg hva som vil skje med forespørsler fra denne IP
       rule:
@@ -83,7 +112,7 @@
       tag:
         name: Du kan bare forandre bruken av store/små bokstaver, f.eks. for å gjøre det mer lesbart
       user:
-        chosen_languages: Hvis noen av dem er valgt, vil kun tuter i de valgte språkene bli vist i de offentlige tidslinjene
+        chosen_languages: Hvis noen av dem er valgt, vil kun innlegg i de valgte språkene bli vist i de offentlige tidslinjene
     labels:
       account:
         fields:
@@ -97,14 +126,14 @@
         text: Forhåndsvalgt tekst
         title: Tittel
       admin_account_action:
-        include_statuses: Inkluder rapporterte tuter i e-mailen
+        include_statuses: Inkluder rapporterte innlegg i e-posten
         send_email_notification: Si ifra til brukeren over E-post
         text: Tilpasset advarsel
         type: Handling
         types:
           disable: Deaktiver pålogging
           none: Ikke gjør noe
-          sensitive: Sensitiv
+          sensitive: Følsom
           silence: Begrens
           suspend: Suspender og ugjenkallelig slett brukerdata
         warning_preset_id: Bruk en advarsels-forhåndsinnstilling
@@ -145,21 +174,21 @@
         setting_aggregate_reblogs: Gruppefremhevinger i tidslinjer
         setting_auto_play_gif: Autoavspill animert GIF-filer
         setting_boost_modal: Vis bekreftelse før fremheving
-        setting_crop_images: Klipp bilder i ikke-utvidede tuter til 16:9
+        setting_crop_images: Klipp bilder i ikke-utvidede innlegg til 16:9
         setting_default_language: Innleggsspråk
         setting_default_privacy: Postintegritet
-        setting_default_sensitive: Marker alltid media som sensitivt
-        setting_delete_modal: Vis bekreftelse før du sletter en tut
+        setting_default_sensitive: Merk alltid media som følsomt
+        setting_delete_modal: Vis bekreftelse før du sletter et innlegg
         setting_disable_swiping: Skru av sveipebevegelser
         setting_display_media: Mediavisning
         setting_display_media_default: Standard
         setting_display_media_hide_all: Skjul alle
         setting_display_media_show_all: Vis alle
-        setting_expand_spoilers: Utvid alltid tuter som er merket med innholdsadvarsler
+        setting_expand_spoilers: Utvid alltid innlegg som er merket med innholdsvarsler
         setting_hide_network: Skjul nettverket ditt
         setting_noindex: Avmeld fra søkemotorindeksering
         setting_reduce_motion: Reduser bevegelser i animasjoner
-        setting_show_application: Skryt av appen som ble brukt til å sende tuter
+        setting_show_application: Vis hvilken app som ble brukt til å sende innlegg
         setting_system_font_ui: Bruk systemets standardfont
         setting_theme: Sidens tema
         setting_trends: Vis dagens trender
@@ -176,6 +205,12 @@
         with_dns_records: Inkluder MX-poster og IP-adresser for domenet
       featured_tag:
         name: Emneknagg
+      form_admin_settings:
+        profile_directory: Aktiver profilkatalog
+        registrations_mode: Hvem kan opprette konto
+        show_domain_blocks_rationale: Vis grunnen til at domener ble blokkert
+        site_contact_email: E-postadresse for kontakt
+        site_title: Servernavn
       interactions:
         must_be_follower: Blokker varslinger fra ikke-følgere
         must_be_following: Blokker varslinger fra personer du ikke følger
@@ -205,7 +240,13 @@
         listable: Tillat denne emneknaggen å vises i søk og på profilmappen
         name: Emneknagg
         trendable: Tillat denne emneknaggen til å vises under trender
-        usable: Tillat tuter å bruke denne emneknaggen
+        usable: Tillat innlegg å bruke denne emneknaggen
+      user:
+        role: Rolle
+      user_role:
+        name: Navn
+        permissions_as_keys: Tillatelser
+        position: Prioritet
     'no': Nei
     required:
       mark: "*"
diff --git a/config/locales/simple_form.pt-BR.yml b/config/locales/simple_form.pt-BR.yml
index 2d26cf848..fd26cb509 100644
--- a/config/locales/simple_form.pt-BR.yml
+++ b/config/locales/simple_form.pt-BR.yml
@@ -28,7 +28,7 @@ pt-BR:
         starts_at: Opcional. Caso o comunicado esteja vinculado a um período específico
         text: Você pode usar a sintaxe do toot. Considere o espaço que o comunicado ocupará na tela do usuário
       appeal:
-        text: Você só pode recorrer uma vez
+        text: Você só pode solicitar uma revisão uma vez
       defaults:
         autofollow: Pessoas que criarem conta através de seu convite te seguirão automaticamente
         avatar: PNG, GIF or JPG. Arquivos de até %{size}. Serão redimensionados para %{dimensions}px
@@ -81,9 +81,18 @@ pt-BR:
         custom_css: Você pode aplicar estilos personalizados na versão da web do Mastodon.
         mascot: Substitui a ilustração na interface web avançada.
         media_cache_retention_period: Os arquivos de mídia baixados serão excluídos após o número especificado de dias, quando definido para um valor positivo, e baixados novamente na demanda.
+        profile_directory: O diretório de perfis lista todos os usuários que optaram por permitir que suas contas sejam descobertas.
+        site_contact_email: Como as pessoas podem entrar em contato com você para obter informações legais ou de suporte.
         site_contact_username: Como as pessoas podem chegar até você no Mastodon.
         site_extended_description: Quaisquer informações adicionais que possam ser úteis para os visitantes e seus usuários. Podem ser estruturadas com formato Markdown.
+        site_short_description: Uma curta descrição para ajudar unicamente a identificar a sua instância. Quem está o administrando, e para quem é direcionado?
+        site_terms: Use a sua própria política de privacidade ou deixe em branco para usar o padrão. Pode ser estruturado com o formato Markdown.
         site_title: Como as pessoas podem se referir ao seu servidor além do nome do domínio.
+        theme: Tema que visitantes e novos usuários veem.
+        thumbnail: Uma imagem de aproximadamente 2:1 exibida ao lado da informação de sua instância.
+        timeline_preview: Visitantes conseguirão navegar pelas postagens públicas mais recentes disponíveis na instância.
+        trendable_by_default: Pular a revisão manual do conteúdo em tendência. Itens individuais ainda poderão ser removidos das tendências após a sua exibição.
+        trends: Tendências mostram quais publicações, hashtags e notícias estão ganhando destaque na sua instância.
       form_challenge:
         current_password: Você está entrando em uma área segura
       imports:
@@ -96,7 +105,8 @@ pt-BR:
         ip: Digite um endereço IPv4 ou IPv6. Você pode bloquear intervalos inteiros usando a sintaxe CIDR. Tenha cuidado para não bloquear a si mesmo!
         severities:
           no_access: Bloquear o acesso a todos os recursos
-          sign_up_requires_approval: Novos registros exigirão sua aprovação
+          sign_up_block: Não serão possíveis novas inscrições
+          sign_up_requires_approval: Novas inscrições exigirão sua aprovação
         severity: Escolha o que acontecerá com as solicitações deste IP
       rule:
         text: Descreva uma regra ou requisito para os usuários neste servidor. Tente mantê-la curta e simples.
@@ -107,6 +117,13 @@ pt-BR:
         name: Você pode mudar a capitalização das letras, por exemplo, para torná-la mais legível
       user:
         chosen_languages: Apenas as publicações dos idiomas selecionados serão exibidas nas linhas públicas
+        role: O cargo controla quais permissões o usuário tem
+      user_role:
+        color: Cor a ser usada para o cargo em toda a interface do usuário, como RGB no formato hexadecimal
+        highlighted: Isso torna o cargo publicamente visível
+        name: Nome público do cargo, se ele for definido para ser exibido como um distintivo
+        permissions_as_keys: Usuários com esse cargo terão acesso a...
+        position: Um cargo superior decide a resolução de conflitos em certas situações. Certas ações só podem ser executadas com cargos de menor prioridade
       webhook:
         events: Selecione eventos para enviar
         url: Aonde os eventos serão enviados
@@ -141,7 +158,7 @@ pt-BR:
         starts_at: Início do evento
         text: Comunicados
       appeal:
-        text: Explique porque essa decisão deve ser revertida
+        text: Explique o porquê essa decisão deve ser revertida
       defaults:
         autofollow: Convite para seguir a sua conta
         avatar: Imagem de perfil
@@ -211,16 +228,28 @@ pt-BR:
           hide: Ocultar completamente
           warn: Ocultar com um aviso
       form_admin_settings:
+        backups_retention_period: Período de retenção do arquivo de usuário
+        bootstrap_timeline_accounts: Sempre recomendar essas contas para novos usuários
+        closed_registrations_message: Mensagem personalizada quando inscrições não estão disponíveis
+        content_cache_retention_period: Período de retenção do cachê de conteúdo
         custom_css: CSS personalizável
+        mascot: Mascote personalizado (legado)
+        media_cache_retention_period: Período de retenção do cachê de mídia
         profile_directory: Ativar diretório de perfis
         registrations_mode: Quem pode se inscrever
+        require_invite_text: Exigir uma razão para entrar
+        show_domain_blocks: Mostrar domínios bloqueados
+        show_domain_blocks_rationale: Mostrar por que domínios foram bloqueados
         site_contact_email: E-mail de contato
+        site_contact_username: Usuário de contato
         site_extended_description: Descrição estendida
         site_short_description: Descrição do servidor
         site_terms: Política de privacidade
         site_title: Nome do servidor
         theme: Tema padrão
         thumbnail: Miniatura do servidor
+        timeline_preview: Permitir acesso não autenticado às linhas do tempo públicas
+        trendable_by_default: Permitir tendências sem revisão prévia
         trends: Habilitar tendências
       interactions:
         must_be_follower: Bloquear notificações de não-seguidores
@@ -239,7 +268,7 @@ pt-BR:
           sign_up_requires_approval: Limitar novas contas
         severity: Regra
       notification_emails:
-        appeal: Alguém recorre de uma decisão moderadora
+        appeal: Alguém solicitou uma revisão de uma decisão da moderação
         digest: Enviar e-mails de resumo
         favourite: Enviar e-mail quando alguém favoritar teus toots
         follow: Enviar e-mail quando alguém te seguir
@@ -247,7 +276,7 @@ pt-BR:
         mention: Enviar e-mail quando alguém te mencionar
         pending_account: Enviar e-mail quando uma nova conta precisa ser revisada
         reblog: Enviar e-mail quando alguém der boost nos teus toots
-        report: Novo relatório foi enviado
+        report: Nova denúncia foi enviada
         trending_tag: Uma nova tendência requer revisão
       rule:
         text: Regra
@@ -260,6 +289,7 @@ pt-BR:
         role: Cargo
       user_role:
         color: Cor do emblema
+        highlighted: Exibir cargo como distintivo nos perfis de usuários
         name: Nome
         permissions_as_keys: Permissões
         position: Prioridade
diff --git a/config/locales/simple_form.ro.yml b/config/locales/simple_form.ro.yml
index 75c198af6..31e9b4e89 100644
--- a/config/locales/simple_form.ro.yml
+++ b/config/locales/simple_form.ro.yml
@@ -129,7 +129,7 @@ ro:
         setting_crop_images: Decupează imaginile în postările non-extinse la 16x9
         setting_default_language: În ce limbă postezi
         setting_default_privacy: Cine vede postările tale
-        setting_default_sensitive: Întotdeauna marchează conținutul media ca sensibil
+        setting_default_sensitive: Întotdeauna marchează conținutul media ca fiind sensibil
         setting_delete_modal: Arată dialogul de confirmare înainte de a șterge o postare
         setting_display_media: Afișare media
         setting_display_media_default: Standard
diff --git a/config/locales/simple_form.ru.yml b/config/locales/simple_form.ru.yml
index 6ef1f6b38..f644dccab 100644
--- a/config/locales/simple_form.ru.yml
+++ b/config/locales/simple_form.ru.yml
@@ -75,8 +75,25 @@ ru:
           warn: Скрыть отфильтрованный контент за предупреждением с указанием названия фильтра
       form_admin_settings:
         backups_retention_period: Сохранять сгенерированные пользовательские архивы для указанного количества дней.
+        bootstrap_timeline_accounts: Эти аккаунты будут рекомендованы для подписки новым пользователям.
+        closed_registrations_message: Отображается, когда регистрация закрыта
         content_cache_retention_period: Записи с других серверов будут удалены после указанного количества дней, когда установлено положительное значение. Это может быть необратимо.
+        custom_css: Вы можете применять пользовательские стили в веб-версии Mastodon.
+        mascot: Заменяет иллюстрацию в расширенном веб-интерфейсе.
         media_cache_retention_period: Скачанные медиа-файлы будут удалены после указанного количества дней, когда установлено положительное значение и повторно загружены по требованию.
+        profile_directory: В каталоге профилей перечислены все пользователи, которые согласились быть доступными для обнаружения.
+        require_invite_text: Когда регистрация требует ручного одобрения, сделайте текстовый ввод "Почему вы хотите присоединиться?" обязательным, а не опциональным
+        site_contact_email: Как люди могут связаться с вами по юридическим вопросам или вопросам поддержки.
+        site_contact_username: Как люди могут связаться с вами на Mastodon.
+        site_extended_description: Любая дополнительная информация, которая может быть полезна посетителям и вашим пользователям. Можно использовать синтаксис Markdown.
+        site_short_description: Краткое описание, помогающее однозначно идентифицировать ваш сервер. Кто им управляет, для кого он предназначен?
+        site_terms: Используйте свою собственную политику конфиденциальности или оставьте пустым, чтобы использовать политику по умолчанию. Можно использовать синтаксис Markdown.
+        site_title: Как люди могут ссылаться на ваш сервер, помимо его доменного имени.
+        theme: Тема, которую видят вышедшие из системы посетители и новые пользователи.
+        thumbnail: Изображение примерно 2:1, отображаемое рядом с информацией о вашем сервере.
+        timeline_preview: Посетители, вышедшие из системы, смогут просматривать последние публичные сообщения, имеющиеся на сервере.
+        trendable_by_default: Пропустить ручной просмотр трендового контента. Отдельные элементы могут быть удалены из трендов уже постфактум.
+        trends: Тренды показывают, какие посты, хэштеги и новостные истории набирают обороты на вашем сервере.
       form_challenge:
         current_password: Вы переходите к настройкам безопасности
       imports:
@@ -211,6 +228,30 @@ ru:
         actions:
           hide: Скрыть полностью
           warn: Скрыть с предупреждением
+      form_admin_settings:
+        backups_retention_period: Период хранения архива пользователя
+        bootstrap_timeline_accounts: Всегда рекомендовать эти учетные записи новым пользователям
+        closed_registrations_message: Сообщение, когда регистрация недоступна
+        content_cache_retention_period: Период хранения кэша содержимого
+        custom_css: Пользовательский CSS
+        mascot: Пользовательский маскот (устаревшее)
+        media_cache_retention_period: Период хранения кэша медиафайлов
+        profile_directory: Включить каталог профилей
+        registrations_mode: Кто может зарегистрироваться
+        require_invite_text: Требуется причина для присоединения
+        show_domain_blocks: Показать блокировки домена
+        show_domain_blocks_rationale: Показать причину блокировки доменов
+        site_contact_email: Контактный e-mail
+        site_contact_username: Контактное имя пользователя
+        site_extended_description: Подробное описание
+        site_short_description: Описание сервера
+        site_terms: Политика конфиденциальности
+        site_title: Имя сервера
+        theme: Тема по умолчанию
+        thumbnail: Изображение сервера
+        timeline_preview: Разрешить доступ к публичным лентам без авторизации
+        trendable_by_default: Разрешить треды без предварительной проверки
+        trends: Включить тренды
       interactions:
         must_be_follower: Присылать уведомления только от подписчиков
         must_be_following: Присылать уведомления только от людей на которых вы подписаны
diff --git a/config/locales/simple_form.sco.yml b/config/locales/simple_form.sco.yml
new file mode 100644
index 000000000..ddaeb8d3c
--- /dev/null
+++ b/config/locales/simple_form.sco.yml
@@ -0,0 +1,305 @@
+---
+sco:
+  simple_form:
+    hints:
+      account_alias:
+        acct: Gie the username@domain o the accoont thit ye'r wantin tae flit fae
+      account_migration:
+        acct: Gie the username@domain o the accoont thit ye'r wantin tae flit tae
+      account_warning_preset:
+        text: Ye kin uise post syntax, sic as URLs, hashtags an menshies
+        title: Optional. No visible tae the recipient
+      admin_account_action:
+        include_statuses: The uiser wull see whit posts causit the moderation action or warnin
+        send_email_notification: The uiser wull get a explanation o whit happent wi their accoont
+        text_html: Optional. Ye kin uise post syntax. Ye kin <a href="%{path}">add warnin presets</a> tae save time
+        type_html: Pick whit tae dae wi <strong>%{acct}</strong>
+        types:
+          disable: Stap the uiser fae uisin their accoont, but dinnae delete or hide therir content.
+          none: Uise this fir tae sen a warnin tae the uiser, athoot stertin onie ither actions.
+          sensitive: Mak aw this uiser's media attachments hae a flag sayin it's sensitive.
+          silence: Stap the uiser fae bein able tae post wi public visibility, plank their posts an notes fae fowk no follaein them.
+          suspend: Stap onie interactions fae this accoont an delete its contents. Revertable athin 30 days.
+        warning_preset_id: Optional. Ye kin stull eik custom text tae the en o the preset
+      announcement:
+        all_day: Whan ticked, ainly the dates o the time range'll get shawn
+        ends_at: Optional. Annooncement wull get automatically unpublishit at this time
+        scheduled_at: Lea blank fir tae publish the annooncement the noo
+        starts_at: Optional. In case yer annooncement is boont tae a specific time range
+        text: Ye kin uise post syntax. Please be mindfae o the space the annooncement'll tak up on the uiser's screen
+      appeal:
+        text: Ye kin ainly appeal a strike the wance
+      defaults:
+        autofollow: Fowk thit sign up throu the invite wull follae ye automatic
+        avatar: PNG, GIF or JPG. At maist %{size}. Wull get doonscaled tae %{dimensions}px
+        bot: Signal tae ithers thit the accoont maistly performs automatit actions an mibbie wullnae be monitort
+        context: Ae or mair contexts whaur the filter shuid apply
+        current_password: Fir security purposes please pit in the passwird o the current accoont
+        current_username: Fir tae confirm, please pit in the uisernemm o the current accoont
+        digest: Ainly sent efter a lang whilie o inactivity an ainly if ye'v gotten onie personal messages whilst ye wis awa
+        discoverable: Alloo yer accoont fir tae get discovert bi strangers throu recommendations, trends an ither features
+        email: Ye'll be sent a confirmation email
+        fields: Ye kin hae up tae 4 items displayed as a table on yer profile
+        header: PNG, GIF or JPG. At maist %{size}. Wull het doonscaled tae %{dimensions}px
+        inbox_url: Copy the URL fae the frontpage o the relay thit ye'r wantin tae uise
+        irreversible: Filtert posts wull dizappear irreversibly, even if filter is taen aff efter
+        locale: The leid o the uiser interface, emails an push notes
+        locked: Control bi haun wha kin follae ye bi approvin follae requests
+        password: Uise at least 8 chairecters
+        phrase: Wull get matched regairdless o case in text or content warnin o a post
+        scopes: Whit APIs the application wull be allooed tae access. Gin ye dinnae pick a tap-level scope, ye dinnae need tae pick anes ane at a time.
+        setting_aggregate_reblogs: Dinnae shaw new heezes fir posts thit hae been juist heezed (ainly affects new-received heezes)
+        setting_always_send_emails: Uisually email notes wullnae get sent whan ye'r uisin Mastodon at the time
+        setting_default_sensitive: Sensitive media is hid bi defaut an kin be revealt wi a chap
+        setting_display_media_default: Hide media mairked sensitive
+        setting_display_media_hide_all: Aye hide media
+        setting_display_media_show_all: Aye shaw media
+        setting_hide_network: Wha ye follae an thaim thit follaes ye wull get hid on yer profile
+        setting_noindex: Affects yer public profile an post pages
+        setting_show_application: The application thit ye uise fir tae post wull be displayed in the detailt view o yer posts
+        setting_use_blurhash: Gradients are based aff o the colors o the image thit's hid, but ye cannae see onie details
+        setting_use_pending_items: Plank timeline updates ahin a chap insteid o automatic scrowin o the feed
+        username: Yer uisernemm wull be a ane aff on %{domain}
+        whole_word: Whan the keywird or phrase is alphanumeric ainly, it wull ainly get applied if it matches the haill wird
+      domain_allow:
+        domain: This domain wull be able tae get data fae this server an data comin in fae it wull get processed an stowed
+      email_domain_block:
+        domain: This kin be the domain nemm thit shaws up in the email address or the MX record thit it uises. They'll be checked on sign-up.
+        with_dns_records: An attempt fie tae resolve the gien domain's DNS records wull be made an the results will be dingied tae
+      featured_tag:
+        name: 'Here some o the hashtags ye uised the maist o late:'
+      filters:
+        action: Pick whit action tae dae whan a post matches the filter
+        actions:
+          hide: Totally plank the filtert content, ackin as if it didnae exist
+          warn: Plank the filtert content ahin a warnin menshiein the filter's title
+      form_admin_settings:
+        backups_retention_period: Haud generatit uiser archives fir the specified nummer o days.
+        bootstrap_timeline_accounts: Thir accoonts wull get preenit tae the tap o new uisers' follae recommendations.
+        closed_registrations_message: Displayit whan sign-ups is shut
+        content_cache_retention_period: Posts fae ither servers wull get deletit efter the specified nummer o days whan set tae a positive value. This wull mibbie be irreversible.
+        custom_css: Ye kin pit custom styles on tae the web version o Mastodon.
+        mascot: Owerrides the illustration in the advanced web interface.
+        media_cache_retention_period: Doonloadit media files wull be deletit efter the specified nummer o days whan set tae a positive value, an re-doonloadit on demand.
+        profile_directory: The profile directory lists aw uisers thit hae opted-in fir tae be discoverable.
+        require_invite_text: Whan sign-ups require approval bi haun, mak the “Hou dae ye want tae jyne?” text input mandatory raither nor optional
+        site_contact_email: Hou fowk kin reach ye fir legal or support inquiries.
+        site_contact_username: Hou fowk kin reach ye on Mastodon.
+        site_extended_description: Onie mair information thit mibbie wad be uisefae tae visitors an yer uisers. Kin be structurt wi Mairkdoon syntax.
+        site_short_description: A wee description fir tae help uniquely identify yer server. Wha is rinnin it, wha is it fir?
+        site_terms: Uise yer ain privacy policy or lea blank fir tae uise the defaut. Kin be structurt wi Mairkdoon syntax.
+        site_title: Hou fowk kin refer tae yer server asides its domain nemm.
+        theme: Theme thit logged oot visitors an new uisers see.
+        thumbnail: A rochly 2:1 image displayit alangsides yer server information.
+        timeline_preview: Logged oot visitors wull be able tae broose the maist recent public posts available on the server.
+        trendable_by_default: Jouk the review bi haun o trendin content. Individual items kin stull get taen aff trends efter the fact.
+        trends: Trends shaw whit posts, hashtags an news stories is gettin traction on yer server.
+      form_challenge:
+        current_password: Ye'r enterin a secure area
+      imports:
+        data: CSV file exportit fae anither Mastodon server
+      invite_request:
+        text: This'll help us luik ower yer application
+      ip_block:
+        comment: Optional. Mind whit ye addit this rule fir.
+        expires_in: IP addresses is a finite resoorce, they'r sometimes shared an aften chynge hauns. Fir this raison, indefinite IP dingies urnae recommendit.
+        ip: Pit in a IPv4 or IPv6 address. Ye kin dingie entire ranges uisin the CIDR syntax. Be carefu no tae snib yersel oot!
+        severities:
+          no_access: Dingie access tae aw resoorces
+          sign_up_block: New sign-ups wullnae be possible
+          sign_up_requires_approval: New sign-ups wull be wantin yer approval
+        severity: Pick whit'll happen wi requests fae this IP
+      rule:
+        text: Describe a rule or requirement fir uisers on this server. Try tae keep it short an simple
+      sessions:
+        otp: 'Pit in the twa-factor code generatit bi yer phone app or uise ane o yer recovery codes:'
+        webauthn: Gin it's a USB key be sure fir tae insert it an, if necessary, tap it.
+      tag:
+        name: Ye kin ainly chynge the case o the letters, fir example, fir tae mak it mair readable
+      user:
+        chosen_languages: Whan ticked, ainly posts in selectit leids wull be displayit in public timelines
+        role: The role controls whit permissions the uiser haes
+      user_role:
+        color: Colour tae be uised fir the role throuoot the UI, as RGB in hex format
+        highlighted: This maks the role visible publicly
+        name: Public nemm o the role, if role is set tae be displayit as a badge
+        permissions_as_keys: Uisers wi this role wull hae access tae...
+        position: Heicher role decides stramash resolution in certain situations. Certain actions kin ainly be cairried oot on thaim wi roles wi a laicher priority
+      webhook:
+        events: Pick events fir tae sen
+        url: Whaur events'll be sent tae
+    labels:
+      account:
+        fields:
+          name: Label
+          value: Content
+      account_alias:
+        acct: Haunnle o the auld accoont
+      account_migration:
+        acct: Haunnle o the new accoont
+      account_warning_preset:
+        text: Preset text
+        title: Title
+      admin_account_action:
+        include_statuses: Pit the clyped posts in the email
+        send_email_notification: Tell the uiser bi email
+        text: Custom warnin
+        type: Action
+        types:
+          disable: Freeze
+          none: Sen a warnin
+          sensitive: Sensitive
+          silence: Limit
+          suspend: Suspend
+        warning_preset_id: Uise a warnin preset
+      announcement:
+        all_day: Aw-day event
+        ends_at: En o event
+        scheduled_at: Schedule publication
+        starts_at: Stert o event
+        text: Annooncement
+      appeal:
+        text: Explain hou this decision shuid get reversed
+      defaults:
+        autofollow: Invite tae follae yer accoont
+        avatar: Avatar
+        bot: This is a bot accoont
+        chosen_languages: Filter leids
+        confirm_new_password: Confirm new passwird
+        confirm_password: Confirm passwird
+        context: Filter contexts
+        current_password: Current passwird
+        data: Data
+        discoverable: Suggest accoont tae ithers
+        display_name: Display nemm
+        email: Email address
+        expires_in: Rin oot efter
+        fields: Profile metadata
+        header: Heider
+        honeypot: "%{label} (dinnae full oot)"
+        inbox_url: URL o the relay inbox
+        irreversible: Drap insteid o plank
+        locale: Interface leid
+        locked: Require follae requests
+        max_uses: Maist nummer o uises
+        new_password: New passwird
+        note: Bio
+        otp_attempt: Twa-factor code
+        password: Passwird
+        phrase: Keywird or phrase
+        setting_advanced_layout: Turn on advanced web interface
+        setting_aggregate_reblogs: Group heezes in timelines
+        setting_always_send_emails: Aye sen email notifications
+        setting_auto_play_gif: Auto-pley animatit GIFs
+        setting_boost_modal: Shaw confirmation dialog afore heezin
+        setting_crop_images: Crap images in non-expandit posts tae 16x9
+        setting_default_language: Postin leid
+        setting_default_privacy: Postin privacy
+        setting_default_sensitive: Aye mairk media as sensitive
+        setting_delete_modal: Shaw confirmation dialog afore deletin a post
+        setting_disable_swiping: Turn aff swipin motions
+        setting_display_media: Media display
+        setting_display_media_default: Defaut
+        setting_display_media_hide_all: Plank aw
+        setting_display_media_show_all: Shaw aw
+        setting_expand_spoilers: Aye expand posts mairked wi content warnins
+        setting_hide_network: Plank yer social graph
+        setting_noindex: Opt-oot o seirch engine indexin
+        setting_reduce_motion: Reduce motion in animations
+        setting_show_application: Disclose application uised fir tae sen posts
+        setting_system_font_ui: Uise system's defaut font
+        setting_theme: Steid theme
+        setting_trends: Shaw the day's trends
+        setting_unfollow_modal: Shaw confirmation dialog afore unfollaein somebody
+        setting_use_blurhash: Shaw colourfu gradients fir hid media
+        setting_use_pending_items: Slaw mode
+        severity: Severity
+        sign_in_token_attempt: Security code
+        title: Title
+        type: Import type
+        username: Uisernemm
+        username_or_email: Uisernemm or Email
+        whole_word: Hail wird
+      email_domain_block:
+        with_dns_records: Include MX records an IPs o the domain
+      featured_tag:
+        name: Hashtag
+      filters:
+        actions:
+          hide: Plank awthegither
+          warn: Plank wi a warnin
+      form_admin_settings:
+        backups_retention_period: Uiser archive retention period
+        bootstrap_timeline_accounts: Aye recommend thir accoonts tae new uisers
+        closed_registrations_message: Custom message whan sign-ups urnae available
+        content_cache_retention_period: Content cache retention period
+        custom_css: Custom CSS
+        mascot: Custom mascot (legacy)
+        media_cache_retention_period: Media cache retention period
+        profile_directory: Enable profile directory
+        registrations_mode: Wha kin sign-up
+        require_invite_text: Require a raison fir tae jyne
+        show_domain_blocks: Shaw domain dingies
+        show_domain_blocks_rationale: Shaw whit domains war dingied fir
+        site_contact_email: Contack email
+        site_contact_username: Contact uisernemm
+        site_extended_description: Extendit description
+        site_short_description: Server description
+        site_terms: Privacy Policy
+        site_title: Server nemm
+        theme: Defaut theme
+        thumbnail: Server thoomnail
+        timeline_preview: Alloo unauthenticated access tae public timelines
+        trendable_by_default: Alloo trends athoot prior review
+        trends: Turn on trends
+      interactions:
+        must_be_follower: Dingie notes fae non-follaers
+        must_be_following: Dingie notes fae fowk ye dinnae follae
+        must_be_following_dm: Fingie direct messages fae fowk thit ye dinnae follae
+      invite:
+        comment: Comment
+      invite_request:
+        text: Whit dae ye want tae jyne fir?
+      ip_block:
+        comment: Comment
+        ip: IP
+        severities:
+          no_access: Dingie access
+          sign_up_block: Dingie sign-ups
+          sign_up_requires_approval: Limit sign-ups
+        severity: Rule
+      notification_emails:
+        appeal: Somebody appeals a moderator decision
+        digest: Sen digest emails
+        favourite: Somebody favouritit yer post
+        follow: Somebody follaed ye
+        follow_request: Somebody requestit fir tae follae ye
+        mention: Somebody menshied ye
+        pending_account: New accoont is needin reviewit
+        reblog: Somebody heezed yer post
+        report: New clype is submittit
+        trending_tag: New trend requires reviewin
+      rule:
+        text: Rule
+      tag:
+        listable: Alloo this hashtag tae appear in seirches an suggestions
+        name: Hashtag
+        trendable: Alloo this hashtag fir tae appear unner trends
+        usable: Alloo posts fir tae uise this hashtag
+      user:
+        role: Role
+      user_role:
+        color: Badge colour
+        highlighted: Display role as badge on uiser profiles
+        name: Nemm
+        permissions_as_keys: Permissions
+        position: Priority
+      webhook:
+        events: Enabilt events
+        url: Enpynt URL
+    'no': Naw
+    not_recommended: No recommendit
+    recommended: Recommendit
+    required:
+      mark: "*"
+      text: requirit
diff --git a/config/locales/simple_form.sr.yml b/config/locales/simple_form.sr.yml
index 5b3139bec..459e0e8e0 100644
--- a/config/locales/simple_form.sr.yml
+++ b/config/locales/simple_form.sr.yml
@@ -75,7 +75,7 @@ sr:
         inbox_url: URL од релејног пријемног сандучета
         irreversible: Испустити уместо сакрити
         locale: Језик
-        locked: Закључај налог
+        locked: Захтевај захтеве за праћење
         max_uses: Максимални број коришћења
         new_password: Нова лозинка
         note: Биографија
diff --git a/config/locales/simple_form.th.yml b/config/locales/simple_form.th.yml
index 05b35852d..f1a9b3e29 100644
--- a/config/locales/simple_form.th.yml
+++ b/config/locales/simple_form.th.yml
@@ -82,10 +82,11 @@ th:
         mascot: เขียนทับภาพประกอบในส่วนติดต่อเว็บขั้นสูง
         media_cache_retention_period: จะลบไฟล์สื่อที่ดาวน์โหลดหลังจากจำนวนวันที่ระบุเมื่อตั้งเป็นค่าบวก และดาวน์โหลดใหม่ตามความต้องการ
         profile_directory: ไดเรกทอรีโปรไฟล์แสดงรายการผู้ใช้ทั้งหมดที่ได้เลือกรับให้สามารถค้นพบได้
+        require_invite_text: เมื่อการลงทะเบียนต้องมีการอนุมัติด้วยตนเอง ทำให้การป้อนข้อความ “ทำไมคุณจึงต้องการเข้าร่วม?” บังคับแทนที่จะไม่จำเป็น
         site_contact_email: วิธีที่ผู้คนสามารถเข้าถึงคุณสำหรับการสอบถามด้านกฎหมายหรือการสนับสนุน
         site_contact_username: วิธีที่ผู้คนสามารถเข้าถึงคุณใน Mastodon
         site_extended_description: ข้อมูลเพิ่มเติมใด ๆ ที่อาจเป็นประโยชน์กับผู้เยี่ยมชมและผู้ใช้ของคุณ สามารถจัดโครงสร้างด้วยไวยากรณ์ Markdown
-        site_short_description: คำอธิบายแบบสั้นเพื่อช่วยระบุเซิร์ฟเวอร์ของคุณโดยเฉพาะ ผู้ดำเนินการเซิร์ฟเวอร์ เซิร์ฟเวอร์สำหรับใคร?
+        site_short_description: คำอธิบายแบบสั้นเพื่อช่วยระบุเซิร์ฟเวอร์ของคุณอย่างไม่ซ้ำกัน ผู้ดำเนินการเซิร์ฟเวอร์ เซิร์ฟเวอร์สำหรับใคร?
         site_terms: ใช้นโยบายความเป็นส่วนตัวของคุณเองหรือเว้นว่างไว้เพื่อใช้ค่าเริ่มต้น สามารถจัดโครงสร้างด้วยไวยากรณ์ Markdown
         site_title: วิธีที่ผู้คนอาจอ้างอิงถึงเซิร์ฟเวอร์ของคุณนอกเหนือจากชื่อโดเมนของเซิร์ฟเวอร์
         theme: ชุดรูปแบบที่ผู้เยี่ยมชมที่ออกจากระบบและผู้ใช้ใหม่เห็น
diff --git a/config/locales/simple_form.uk.yml b/config/locales/simple_form.uk.yml
index 6bcb9c0f6..09f427b4a 100644
--- a/config/locales/simple_form.uk.yml
+++ b/config/locales/simple_form.uk.yml
@@ -7,10 +7,10 @@ uk:
       account_migration:
         acct: Вкажіть ім'я користувача@домен облікового запису, на який ви хочете здійснити перенесення
       account_warning_preset:
-        text: Ви можете використовувати синтаксис дмухів, наприклад URLи, хештеґи та згадки
+        text: Ви можете використовувати синтаксис дописів, наприклад URL, хештеги та згадки
         title: Необов'язково. Не відображається отримувачу
       admin_account_action:
-        include_statuses: Користувач побачить, які дмухи призвели до адміністративних дій або попереджень
+        include_statuses: Користувач побачить, які дописи призвели до адміністративних дій або попереджень
         send_email_notification: Користувач отримає роз'яснення, що сталося з його обліковим записом
         text_html: Необов'язково. Ви можете використовувати синтаксис дмухів. Ви можете <a href="%{path}">додати шаблони попереджень</a>, щоб заощадити час
         type_html: Оберіть, що робити з <strong>%{acct}</strong>
@@ -32,31 +32,31 @@ uk:
       defaults:
         autofollow: Люди, що зареєструвалися за вашим запрошенням, автоматично підпишуться на вас
         avatar: PNG, GIF, або JPG. Максимум - %{size}. Буде зменшено до %{dimensions}px
-        bot: Цей акаунт виконує автоматичні дії та може не відстежуватися
+        bot: Цей обліковий запис виконує переважно автоматичні дії та може не відстежуватися
         context: Один або кілька контекстів, до яких повинні бути застосовані фільтри
         current_password: Для цілей безпеки, будь ласка, введіть пароль поточного облікового запису
         current_username: Для підтвердження, будь ласка, введіть ім'я користувача поточного облікового запису
         digest: Буде послано тільки після довгого періоду неактивності, та тільки якщо ви отримаєте персональне повідомлення у цей період
         discoverable: Дозволити знаходити ваш обліковий запис стороннім людям за допомогою рекомендацій, трендів та інших функцій
         email: Вам надійде електронний лист з підтвердженням
-        fields: До 4 елементів може бути відображено як таблиця у вашому профілі
+        fields: У вашому профілі може бути показано таблицю з 4 елементів
         header: PNG, GIF, або JPG. Максимум - %{size}. Буде зменшено до %{dimensions}px
         inbox_url: Скопіюйте інтернет-адресу з титульної сторінки ретранслятора
-        irreversible: Відсіяні дмухи зникнуть назавжди, навіть якщо фільтр потім буде знято
+        irreversible: Відфільтровані дописи зникнуть назавжди, навіть якщо фільтр потім буде вилучено
         locale: Мова інтерфейсу, електронних листів та push-сповіщень
         locked: Вручну контролюйте, хто може слідкувати за вами, затверджуючи запити на стеження
         password: Не менше 8 символів
-        phrase: Шукає без врахування регістру у тексті дмуха або у його попередженні про вміст
+        phrase: Шукає без врахування регістру у тексті допису або у його попередженні про вміст
         scopes: Які API додатку буде дозволено використовувати. Якщо ви виберете самий верхній, нижчестоящі будуть обрані автоматично.
-        setting_aggregate_reblogs: Не показувати передмухи для дмухів, які нещодавно вже були передмухнуті (не вплине на вже отримані передмухи)
+        setting_aggregate_reblogs: Не показувати поширення для дописів, які нещодавно вже були поширені (не вплине на вже отримані поширення)
         setting_always_send_emails: Зазвичай, під час активного користування Mastodon, сповіщення не будуть відправлятися електронною поштою
         setting_default_sensitive: Дражливі медіа приховані за промовчанням та можуть бути розкрити кліком
         setting_display_media_default: Приховувати медіа, помічені як дражливі
         setting_display_media_hide_all: Завжди приховувати медіа
         setting_display_media_show_all: Завжди показувати медіа
-        setting_hide_network: У вашому профілі не буде відображено підписки та підписників
+        setting_hide_network: У вашому профілі не буде показано підписки та підписників
         setting_noindex: Впливає на ваш загальнодоступний профіль і сторінки дописів
-        setting_show_application: Застосунок, за допомогою якого ви дмухнули, буде відображено серед деталей дмуху
+        setting_show_application: Застосунок, за допомогою якого ви зробили допис, буде показано серед подробиць допису
         setting_use_blurhash: Градієнти, що базуються на кольорах прихованих медіа, але роблять нерозрізненними будь-які деталі
         setting_use_pending_items: Не додавати нові повідомлення до стрічок миттєво, показувати лише після додаткового клацання
         username: Ваше ім'я користувача буде унікальним у %{domain}
@@ -117,7 +117,7 @@ uk:
       tag:
         name: Тут ви можете лише змінювати регістр літер, щоб підвищити читабельність
       user:
-        chosen_languages: У глобальних стрічках будуть відображатися дмухи тільки обраними мовами
+        chosen_languages: У глобальних стрічках будуть показані дописи тільки вибраними мовами
         role: Роль визначає права користувача
       user_role:
         color: Колір, який буде використовуватися для ролі у всьому інтерфейсі, як RGB у форматі hex
@@ -131,7 +131,7 @@ uk:
     labels:
       account:
         fields:
-          name: Позначка
+          name: Мітка
           value: Вміст
       account_alias:
         acct: Оброблювач старого облікового запису
@@ -141,7 +141,7 @@ uk:
         text: Текст шаблону
         title: Заголовок
       admin_account_action:
-        include_statuses: Додати дмухи, на які ви скаржитесь, до електронного листа
+        include_statuses: Додати дописи, на які ви скаржитесь, до електронного листа
         send_email_notification: Сповістити користувача електронною поштою
         text: Користувацьке попередження
         type: Дія
@@ -174,43 +174,43 @@ uk:
         display_name: Ім'я
         email: Адреса е-пошти
         expires_in: Закінчується після
-        fields: Метадані профіля
+        fields: Метадані профілю
         header: Заголовок
         honeypot: "%{label} (не заповнюйте)"
         inbox_url: URL поштової скриньки ретранслятора
         irreversible: Видалити назавжди, а не просто сховати
         locale: Мова
-        locked: Зробити акаунт приватним
+        locked: Зробити обліковий запис приватним
         max_uses: Максимальна кількість використань
         new_password: Новий пароль
         note: Про Вас
         otp_attempt: Двофакторний код
         password: Пароль
         phrase: Ключове слово або фраза
-        setting_advanced_layout: Увімкнути розширений web-інтерфейс
+        setting_advanced_layout: Увімкнути розширений вебінтерфейс
         setting_aggregate_reblogs: Групувати просування в стрічках
         setting_always_send_emails: Завжди надсилати сповіщення електронною поштою
         setting_auto_play_gif: Автоматично відтворювати анімовані GIF
-        setting_boost_modal: Відображати діалог підтвердження під час передмухування
-        setting_crop_images: Обрізати зображення в нерозкритих дописах до 16x9
+        setting_boost_modal: Показувати діалог підтвердження під час поширення
+        setting_crop_images: Обрізати зображення в нерозгорнутих дописах до 16x9
         setting_default_language: Мова дописів
         setting_default_privacy: Видимість дописів
         setting_default_sensitive: Позначити медіа як дражливе
-        setting_delete_modal: Показувати діалог підтвердження під час видалення дмуху
-        setting_disable_swiping: Вимкнути рух проведення
-        setting_display_media: Відображення медіа
+        setting_delete_modal: Показувати діалог підтвердження під час видалення допису
+        setting_disable_swiping: Вимкнути рух посування
+        setting_display_media: Показ медіа
         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: Менше руху в анімаціях
-        setting_show_application: Відображати застосунки, використані для дмухання
+        setting_show_application: Показувати застосунки, з яких створюються дописи
         setting_system_font_ui: Використовувати типовий системний шрифт
         setting_theme: Тема сайту
-        setting_trends: Показати дописи, популярні сьогодні
-        setting_unfollow_modal: Відображати діалог підтвердження під час відписки від когось
+        setting_trends: Показувати популярні сьогодні дописи
+        setting_unfollow_modal: Показувати діалог підтвердження під час відписки від когось
         setting_use_blurhash: Відображати барвисті градієнти замість прихованих медіа
         setting_use_pending_items: Повільний режим
         severity: Серйозність
@@ -285,7 +285,7 @@ uk:
         listable: Дозволити появу цього хештеґа у каталозі профілів
         name: Хештеґ
         trendable: Дозволити появу цього хештеґа у списку популярних хештеґів
-        usable: Дозволити дмухам використовувати цей хештеґ
+        usable: Дозволити дописам використовувати цей хештег
       user:
         role: Роль
       user_role:
diff --git a/config/locales/simple_form.zh-CN.yml b/config/locales/simple_form.zh-CN.yml
index 2c73730fc..9868d96f4 100644
--- a/config/locales/simple_form.zh-CN.yml
+++ b/config/locales/simple_form.zh-CN.yml
@@ -10,7 +10,7 @@ zh-CN:
         text: 你可以使用嘟文格式,例如加入 URL、话题标签和“@”
         title: 可选。对接收者不可见
       admin_account_action:
-        include_statuses: 用户将会看到哪些嘟文导致了审核行为或警告
+        include_statuses: 用户将会看到哪些嘟文导致了管理操作或警告
         send_email_notification: 用户将收到关于其账号异动的解释
         text_html: 可选。你可以使用嘟文格式。你可以<a href="%{path}">预置警告</a>以节省时间
         type_html: 用<strong>%{acct}</strong>选择做什么
@@ -32,7 +32,7 @@ zh-CN:
       defaults:
         autofollow: 通过邀请链接注册的用户将会自动关注你
         avatar: 文件大小限制 %{size},只支持 PNG、GIF 或 JPG 格式。图片分辨率将会压缩至 %{dimensions}px
-        bot: 来自这个帐户的绝大多数操作都是自动进行的,并且可能无人监控
+        bot: 来自这个账户的绝大多数操作都是自动进行的,并且可能无人监控
         context: 过滤器的应用环境
         current_password: 为了安全起见,请输入当前账号的密码
         current_username: 请输入当前账号的用户名以确认
@@ -118,16 +118,16 @@ zh-CN:
         name: 你只能改变字母的大小写,让它更易读
       user:
         chosen_languages: 仅选中语言的嘟文会出现在公共时间轴上(全不选则显示所有语言的嘟文)
-        role: 角色决定该用户拥有的权限
+        role: 角色用于控制用户拥有的权限
       user_role:
-        color: 整个用户界面中,该角色使用的颜色,以RGB 十六进制格式
-        highlighted: 这使角色公开可见
-        name: 角色的公开名称,如果角色设置为展示的徽章
+        color: 在界面各处用于标记该角色的颜色,以十六进制 RGB 格式表示
+        highlighted: 使角色公开可见
+        name: 角色的公开名称,将在设为展示徽章时使用
         permissions_as_keys: 具有此角色的用户将有权访问...
-        position: 较高的角色决定在某些情况下解决冲突。某些行动只能对优先级较低的角色执行
+        position: 用于在特定情况下处理决策冲突。一些特定操作只能对优先级更低的角色执行
       webhook:
         events: 选择要发送的事件
-        url: 事件将发送到哪个地点
+        url: 事件将被发往的目的地
     labels:
       account:
         fields:
@@ -161,9 +161,9 @@ zh-CN:
       appeal:
         text: 说明此结果应当被推翻的理由
       defaults:
-        autofollow: 让被邀请人关注你的帐户
+        autofollow: 让被邀请人关注你的账户
         avatar: 头像
-        bot: 这是一个机器人帐户
+        bot: 这是一个机器人账户
         chosen_languages: 语言过滤
         confirm_new_password: 确认新密码
         confirm_password: 确认密码
@@ -180,7 +180,7 @@ zh-CN:
         inbox_url: 中继站收件箱的 URL
         irreversible: 丢弃而非隐藏
         locale: 界面语言
-        locked: 保护你的帐户(锁嘟)
+        locked: 保护你的账户(锁嘟)
         max_uses: 最大使用次数
         new_password: 新密码
         note: 简介
@@ -290,13 +290,13 @@ zh-CN:
         role: 角色
       user_role:
         color: 徽章颜色
-        highlighted: 用户配置中以徽章显示角色
+        highlighted: 在用户资料中显示角色徽章
         name: 名称
         permissions_as_keys: 权限设置
-        position: 优先权
+        position: 优先级
       webhook:
         events: 已启用事件
-        url: 端点网址
+        url: 对端 URL
     'no': 否
     required:
       mark: "*"
diff --git a/config/locales/simple_form.zh-HK.yml b/config/locales/simple_form.zh-HK.yml
index 00c354a8f..0dee0783f 100644
--- a/config/locales/simple_form.zh-HK.yml
+++ b/config/locales/simple_form.zh-HK.yml
@@ -27,6 +27,8 @@ zh-HK:
         scheduled_at: 留空此項以立即發布公告
         starts_at: 可選,你可以讓公告在指定時間範圍內顯示
         text: 你可以使用文章格式,但請小心別讓公告佔據太大的使用者畫面空間。
+      appeal:
+        text: 你每次只能提出一次申訴
       defaults:
         autofollow: 通過邀請網址註冊的用戶將會自動關注你
         avatar: 支援 PNG, GIF 或 JPG 圖片,檔案最大為 %{size},會縮裁成 %{dimensions}px
@@ -35,6 +37,7 @@ zh-HK:
         current_password: 基於保安緣故,請輸入目前帳號的密碼
         current_username: 請輸入目前帳戶的使用者名稱以確認
         digest: 僅在你長時間未登錄,且收到了私信時發送
+        discoverable: 允許陌生人從推薦、趨勢及其他功能發現你的帳號
         email: 你將收到一封確認電郵
         fields: 個人資料頁可顯示多至 4 個項目
         header: 支援 PNG, GIF 或 JPG 圖片,檔案最大為 %{size},會縮裁成 %{dimensions}px
@@ -46,6 +49,7 @@ zh-HK:
         phrase: 過濾器會閱讀文章和內容警告標語的字眼,然後決定過濾與否
         scopes: 選擇應用程式可以存取的 API。 若你選擇最高階的權限範圍,則無須選擇個別項目。
         setting_aggregate_reblogs: 請勿顯示新近被轉推的文章(只影響最新被推的文章)
+        setting_always_send_emails: 通常當你積極使用 Mastodon 時,我們不會發送電郵通知給你
         setting_default_sensitive: 敏感媒體預設隱藏,且按一下即可重新顯示
         setting_display_media_default: 隱藏標為敏感的媒體
         setting_display_media_hide_all: 總是隱藏所有媒體
@@ -60,7 +64,36 @@ zh-HK:
       domain_allow:
         domain: 此網域將能從此站獲取資料,而此站發出的數據也會被處理和存儲。
       email_domain_block:
+        domain: 這可以是電郵地址所示的域名或它使用的 MX 紀錄。註冊時系統將檢查它。
         with_dns_records: Mastodon 會嘗試解析所給域名的 DNS 記錄,然後與解析結果一併封禁
+      featured_tag:
+        name: 以下是你最近常用的標籤:
+      filters:
+        action: 選擇當帖文符合篩選器時要執行的動作
+        actions:
+          hide: 完全隱藏被篩選的內容,猶如它不存在般。
+          warn: 將已篩選的內容隱藏在篩選器標題的警告後面。
+      form_admin_settings:
+        backups_retention_period: 繼續封存生成的使用者到指定的天數。
+        bootstrap_timeline_accounts: 這些帳號會被置頂在新使用者的追蹤建議上。
+        closed_registrations_message: 關閉註冊時顯示
+        content_cache_retention_period: 當設定為正數時,來自其他伺服器的帖文將在指定天數後被刪除。無法還原這個操作。
+        custom_css: 你可以在 Mastodon 網頁版套用自訂樣式。
+        mascot: 覆蓋進階網頁介面中的插圖。
+        media_cache_retention_period: 當設定為正數時,已下載的媒體檔案將在指定天數後被刪除,並視乎需要重新下載。
+        profile_directory: 個人檔案目錄羅列了所有選擇被發現的使用者。
+        require_invite_text: 如果需要手動審核註冊,請將「為何你想加入?」文字欄設定為必填,而非選填。
+        site_contact_email: 大家如何聯絡你有關法律或支援的查詢。
+        site_contact_username: 大家如何在 Mastodon 聯繫你。
+        site_extended_description: 所有對訪客和使用者有用的額外資訊,都可以用 Markdown 語法編寫。
+        site_short_description: 用作辨別你的伺服器的一段簡短描述。誰營運它,它為誰服務的?
+        site_terms: 使用你的私隱政策,或者留空使用預設的,可以用 Markdown 語法編寫。
+        site_title: 除了域名以外,其他人會如何指稱你的伺服器。
+        theme: 未登入訪客和新使用者看到的主題。
+        thumbnail: 一幅約 2:1 的圖片顯示在你的伺服器資訊的旁邊。
+        timeline_preview: 未登入的訪客能夠瀏覽伺服器上最新的公開帖文。
+        trendable_by_default: 跳過對趨勢內容的手動審查,事後仍可從趨勢中刪除個別項目。
+        trends: 趨勢顯示哪些帖文、標籤和新聞故事在你的伺服器上較有吸引力。
       form_challenge:
         current_password: 你正要進入安全區域
       imports:
@@ -73,6 +106,7 @@ zh-HK:
         ip: 請輸入 IPv4 或 IPv6 位址,你亦可以用 CIDR 語法來封鎖整個 IP 區段。請小心使用,不要把自己給一併封鎖!
         severities:
           no_access: 封鎖所有資源存取
+          sign_up_block: 無法進行新註冊
           sign_up_requires_approval: 新登記申請正等候你審批
         severity: 請設定伺服器將如何處理來自這個 IP 位址的請求
       rule:
@@ -84,6 +118,16 @@ zh-HK:
         name: 你只能變更大小寫(以使其更易讀)。
       user:
         chosen_languages: 只有被選擇的語言會在公開時間軸內顯示
+        role: 角色控制使用者擁有的權限
+      user_role:
+        color: 介面各處用於角色的顏色,是以十六進制 RGB 格式表示
+        highlighted: 這使該角色公開可見
+        name: 角色的公開名稱,如果角色被設定為顯示徽章
+        permissions_as_keys: 此角色的使用者可存取…
+        position: 在某些情況下,由較高階的角色決定如何解決衝突。某些動作只能對優先度較低的角色執行
+      webhook:
+        events: 選取要傳送的事件
+        url: 事件將被傳送至何處
     labels:
       account:
         fields:
@@ -114,6 +158,8 @@ zh-HK:
         scheduled_at: 排程發佈
         starts_at: 活動開始時間
         text: 公告
+      appeal:
+        text: 解釋為何要推翻此決定
       defaults:
         autofollow: 邀請別人關注你的帳號
         avatar: 個人頭像
@@ -143,6 +189,7 @@ zh-HK:
         phrase: 關鍵字或片語
         setting_advanced_layout: 啟用進階網頁介面
         setting_aggregate_reblogs: 時間軸中的群組轉推
+        setting_always_send_emails: 總是傳送電郵通知
         setting_auto_play_gif: 自動播放 GIF
         setting_boost_modal: 在轉推前詢問我
         setting_crop_images: 將未展開文章中的圖片裁剪到 16x9
@@ -162,12 +209,13 @@ zh-HK:
         setting_show_application: 顯示用來發表文章的應用程式
         setting_system_font_ui: 使用系統預設字型
         setting_theme: 網站主題
-        setting_trends: 顯示今天熱門主題
+        setting_trends: 顯示今天的趨勢
         setting_unfollow_modal: 取消關注前請讓我確定
         setting_use_blurhash: 將隱藏媒體以彩色漸變圖樣表示
         setting_use_pending_items: 限速模式
         severity: 等級
         sign_in_token_attempt: 安全碼
+        title: 標題
         type: 匯入資料類型
         username: 使用者名稱
         username_or_email: 使用者名稱或電郵
@@ -176,6 +224,34 @@ zh-HK:
         with_dns_records: 包括域名的 MX 記錄和 IP 位址
       featured_tag:
         name: 主題標籤 (Hashtag)
+      filters:
+        actions:
+          hide: 完全隱藏
+          warn: 警告並隱藏
+      form_admin_settings:
+        backups_retention_period: 封存使用者保留期
+        bootstrap_timeline_accounts: 總是向新使用者推薦這些帳號
+        closed_registrations_message: 無法註冊時的自訂訊息
+        content_cache_retention_period: 內容快取保留期
+        custom_css: 自訂 CSS
+        mascot: 自訂吉祥物 (舊版)
+        media_cache_retention_period: 媒體快取保留期
+        profile_directory: 啟用個人檔案目錄
+        registrations_mode: 誰能註冊
+        require_invite_text: 提供一個加入的理由
+        show_domain_blocks: 顯示封鎖的網域
+        show_domain_blocks_rationale: 顯示網域遭封鎖的原因
+        site_contact_email: 聯絡人郵箱
+        site_contact_username: 聯絡人使用者名稱
+        site_extended_description: 展開描述
+        site_short_description: 伺服器描述
+        site_terms: 私隱政策
+        site_title: 伺服器名稱
+        theme: 預設主題
+        thumbnail: 伺服器縮圖
+        timeline_preview: 允許未經認證的人存取公共時間軸
+        trendable_by_default: 允許未經審核的趨勢
+        trends: 啟用趨勢
       interactions:
         must_be_follower: 隱藏你關注者以外的人的通知
         must_be_following: 隱藏你不關注的人的通知
@@ -189,9 +265,11 @@ zh-HK:
         ip: IP 位址
         severities:
           no_access: 封鎖
+          sign_up_block: 禁止註冊
           sign_up_requires_approval: 限制註冊
         severity: 規則
       notification_emails:
+        appeal: 有人對管理員的裁決提出申訴
         digest: 定期電郵摘要
         favourite: 有人喜歡你的文章
         follow: 當有人關注你時
@@ -199,6 +277,8 @@ zh-HK:
         mention: 當有人在文章提及你時
         pending_account: 有新帳號需要審核時
         reblog: 當有人轉推你的文章時
+        report: 新檢舉已提交
+        trending_tag: 新趨勢須經過審核
       rule:
         text: 規則
       tag:
@@ -206,6 +286,17 @@ zh-HK:
         name: 主題標籤
         trendable: 允許此主題標籤在趨勢下顯示
         usable: 允許文章使用此主題標籤
+      user:
+        role: 角色
+      user_role:
+        color: 徽章顏色
+        highlighted: 在使用者個人檔案上以徽章顯示角色
+        name: 名稱
+        permissions_as_keys: 權限
+        position: 優先權
+      webhook:
+        events: 已啟用事件
+        url: 端點網址
     'no': 否
     required:
       mark: "*"
diff --git a/config/locales/sk.yml b/config/locales/sk.yml
index 51c447122..21f64126a 100644
--- a/config/locales/sk.yml
+++ b/config/locales/sk.yml
@@ -7,13 +7,13 @@ sk:
     hosted_on: Mastodon hostovaný na %{domain}
     title: O
   accounts:
-    follow: Následuj
+    follow: Nasleduj
     followers:
       few: Sledovateľov
       many: Sledovateľov
       one: Sledujúci
       other: Sledovatelia
-    following: Následujem
+    following: Nasledujem
     last_active: naposledy aktívny
     link_verified_on: Vlastníctvo tohto odkazu bolo skontrolované %{date}
     nothing_here: Nič tu nie je!
@@ -267,9 +267,7 @@ sk:
         create: Vytvor blokovanie domény
         hint: Blokovanie domény stále dovolí vytvárať nové účty v databázi, ale tieto budú spätne automaticky moderované.
         severity:
-          desc_html: "<strong>Stíšenie</strong> urobí všetky príspevky daného účtu neviditeľné pre všetkých ktorí nenásledujú tento účet. <strong>Vylúčenie</strong> zmaže všetky príspevky, médiá a profilové informácie. Použi <strong>Žiadne</strong>, ak chceš iba neprijímať súbory médií."
           noop: Nič
-          silence: Stíš
           suspend: Vylúč
         title: Nové blokovanie domény
       obfuscate: Zatemniť názov domény
@@ -558,7 +556,7 @@ sk:
       redirecting_to: Tvoj účet je neaktívny, lebo v súčasnosti presmerováva na %{acct}.
     use_security_key: Použi bezpečnostný kľúč
   authorize_follow:
-    already_following: Tento účet už následuješ
+    already_following: Tento účet už nasleduješ
     error: Naneštastie nastala chyba pri hľadaní vzdialeného účtu
     follow: Nasleduj
     follow_request: 'Poslal/a si žiadosť následovať užívateľa:'
@@ -567,7 +565,7 @@ sk:
       close: Alebo môžeš iba zatvoriť toto okno.
       return: Ukáž užívateľov profil
       web: Prejdi do siete
-    title: Následuj %{acct}
+    title: Nasleduj %{acct}
   challenge:
     confirm: Pokračuj
     hint_html: "<strong>Tip:</strong> Hodinu nebudeme znovu vyžadovať tvoje heslo."
diff --git a/config/locales/sl.yml b/config/locales/sl.yml
index 7967723ae..4e6b499b1 100644
--- a/config/locales/sl.yml
+++ b/config/locales/sl.yml
@@ -387,6 +387,8 @@ sl:
       add_new: Dodaj domeno na beli seznam
       created_msg: Domena je bila uspešno dodana na beli seznam
       destroyed_msg: Domena je bila odstranjena iz belega seznama
+      export: Izvozi
+      import: Uvozi
       undo: Odstrani iz belega seznama
     domain_blocks:
       add_new: Dodaj nov domenski blok
@@ -396,15 +398,19 @@ sl:
       edit: Uredi domenski blok
       existing_domain_block: Ste že uveljavili strožje omejitve na %{name}.
       existing_domain_block_html: Uvedli ste strožje omejitve za %{name}, sedaj ga morate najprej <a href="%{unblock_url}">odblokirati</a>.
+      export: Izvozi
+      import: Uvozi
       new:
         create: Ustvari blok
         hint: Domenski blok ne bo preprečil ustvarjanja vnosov računov v zbirko podatkov, ampak bo retroaktivno in samodejno uporabil posebne metode moderiranja na teh računih.
         severity:
-          desc_html: "<strong>Utišaj</strong> bo vse objave računa naredil nevidne vsem, ki jih ne sledijo. <strong>Suspendiraj</strong> bo odstranil vso vsebino, medije in podatke profila računa. Uporabi <strong>nič</strong>, če želite le zavrniti predstavnostne datoteke."
+          desc_html: "<strong>Omeji</strong> bo vse objave računa naredil nevidne vsem, ki jih ne sledijo. <strong>Suspendiraj</strong> bo odstranil vso vsebino, medije in podatke profila računov te domene na vašem strežniku. Uporabite <strong>Brez</strong>, če želite le zavrniti predstavnostne datoteke."
           noop: Brez
-          silence: Utišaj
+          silence: Omeji
           suspend: Suspendiraj
         title: Nov domenski blok
+      no_domain_block_selected: Nobena blokada domene ni bila spremenjena, saj nobena ni bila izbrana
+      not_permitted: Nimate pravic za izvedbo tega dejanja
       obfuscate: Zakrij ime domene
       obfuscate_hint: Delno zakrij ime domene na seznamu, če je omogočeno oglaševanje omejitev seznama domen
       private_comment: Zasebni komentar
@@ -438,6 +444,20 @@ sl:
       resolved_dns_records_hint_html: Ime domene se razreši na naslednje domene MX, ki so končno odgovorne za sprejemanje e-pošte. Blokiranje domene MX bo blokiralo prijave s poljubnega e-poštnega naslova, ki uporablja isto domeno MX, tudi če je vidno ime domene drugačno. <strong>Pazite, da ne blokirate večjih ponudnikov e-pošte.</strong>
       resolved_through_html: Razrešeno prek %{domain}
       title: Črni seznam e-pošt
+    export_domain_allows:
+      new:
+        title: Uvozi prepustnice domen
+      no_file: Nobena datoteka ni izbrana
+    export_domain_blocks:
+      import:
+        description_html: Uvozili boste seznam blokad domen. Pozorno preglejte ta seznam, še posebej, če ga niste sami pripravili.
+        existing_relationships_warning: Obstoječi odnosi sledenja
+        private_comment_description_html: 'Kot pomoč pri sledenju izvora uvoženih blokad bodo le-te ustvarjene z naslednjim zasebnim komentarjem: <q>%{comment}</q>'
+        private_comment_template: Uvoženo iz %{source} %{date}
+        title: Uvozi blokade domen
+      new:
+        title: Uvozi blokade domen
+      no_file: Nobena datoteka ni izbrana
     follow_recommendations:
       description_html: "<strong>Sledi priporočilom pomaga novim uporabnikom, da hitro najdejo zanimivo vsebino</strong>. Če uporabnik ni dovolj komuniciral z drugimi, da bi oblikoval prilagojena priporočila za sledenje, se namesto tega priporočajo ti računi. Dnevno se ponovno izračunajo iz kombinacije računov z najvišjimi nedavnimi angažiranostmi in najvišjim številom krajevnih sledilcev za določen jezik."
       language: Za jezik
@@ -950,7 +970,7 @@ sl:
     warning: Bodite zelo previdni s temi podatki. Nikoli jih ne delite z nikomer!
     your_token: Vaš dostopni žeton
   auth:
-    apply_for_account: Vpišite se na čakalni seznam
+    apply_for_account: Zaprosite za račun
     change_password: Geslo
     delete_account: Izbriši račun
     delete_account_html: Če želite izbrisati svoj račun, lahko nadaljujete <a href="%{path}">tukaj</a>. Prosili vas bomo za potrditev.
@@ -1209,6 +1229,7 @@ sl:
     invalid_markup: 'vsebuje neveljavno oznako HTML: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Neveljavna datoteka CSV. Napaka: %{error}'
       over_rows_processing_limit: vsebuje več kot %{count} vrstic
     modes:
       merge: Združi
diff --git a/config/locales/sq.yml b/config/locales/sq.yml
index 5dfdf806c..239ea2441 100644
--- a/config/locales/sq.yml
+++ b/config/locales/sq.yml
@@ -386,11 +386,13 @@ sq:
         create: Krijoni bllokim
         hint: Bllokimi i përkatësisë nuk do të pengojë krijim zërash llogarie te baza e të dhënave, por do të aplikojë në mënyrë retroaktive dhe të vetvetishme metoda specifike moderimi mbi këto llogari.
         severity:
-          desc_html: "<strong>Heshtja</strong> do t’i bëjë postimet e llogarisë të padukshme për këdo që nuk i ndjek ato. <strong>Pezullimi</strong> do të heqë krejt lëndën e llogarisë, media, dhe të dhëna profili. Përdorni <strong>Asnjë</strong>, nëse thjesht doni të mos pranohen kartela media."
+          desc_html: "<strong>Kufizoje</strong> do t’i bëjë postimet prej llogarish në këtë përkatësi të padukshme për këtë që nuk i ndjek. <strong>Pezulloje</strong> do të heqë nga shërbyesi juaj krejt lëndën, media dhe të dhëna profili për llogaritë e kësaj përkatësie. Përdorni <strong>Asnjë</strong>, nëse doni thjesht të hidhni tej kartela media."
           noop: Asnjë
-          silence: Heshtoji
+          silence: Kufizoje
           suspend: Pezulloje
         title: Bllokim i ri përkatësie
+      no_domain_block_selected: S’u ndryshuan bllokime përkatësish, ngaqë s’u përzgjodh ndonjë i tillë
+      not_permitted: S’keni leje të kryeni këtë veprim
       obfuscate: Errësoje emrin e përkatësisë
       obfuscate_hint: Errësoje pjesërisht emrin e përkatësisë te lista, nëse është aktivizuar publikimi i listës së kufizimeve të përkatësive
       private_comment: Koment privat
@@ -422,6 +424,18 @@ sq:
       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
+    export_domain_allows:
+      no_file: S’u përzgjodh kartelë
+    export_domain_blocks:
+      import:
+        description_html: Ju ndan një hap nga importimi i një liste bllokimesh përkatësish. Ju lutemi, shqyrtojeni këtë listë me shumë kujdes, sidomos nëse këtë listë s’e keni krijuar ju.
+        existing_relationships_warning: Marrëdhënie ekzistuese ndjekjeje
+        private_comment_description_html: 'Për t’ju ndihmuar të ndiqni se nga vijnë bllokimet e importuara, këto do të krijohen me komentin vijues privat: <q>%{comment}</q>'
+        private_comment_template: Importuar nga %{source} më %{date}
+        title: Importoni bllokime përkatësish
+      new:
+        title: Importoni bllokime përkatësish
+      no_file: S’u përzgjodh kartelë
     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ë."
       language: Për gjuhën
@@ -909,7 +923,7 @@ sq:
     warning: Bëni shumë kujdes me ato të dhëna. Mos ia jepni kurrë njeriu!
     your_token: Token-i juaj për hyrje
   auth:
-    apply_for_account: Bëhuni pjesë e radhës
+    apply_for_account: Kërkoni një llogari
     change_password: Fjalëkalim
     delete_account: Fshije llogarinë
     delete_account_html: Nëse dëshironi të fshihni llogarinë tuaj, mund <a href="%{path}">ta bëni që këtu</a>. Do t’ju kërkohet ta ripohoni.
@@ -1154,6 +1168,7 @@ sq:
     invalid_markup: 'përmban elementë HTML të pavlefshëm: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Kartelë CSV e pavlefshme. Gabim: %{error}'
       over_rows_processing_limit: përmban më shumë se %{count} rreshta
     modes:
       merge: Përzieji
diff --git a/config/locales/sr-Latn.yml b/config/locales/sr-Latn.yml
index cd142af77..93cbb0137 100644
--- a/config/locales/sr-Latn.yml
+++ b/config/locales/sr-Latn.yml
@@ -108,9 +108,7 @@ sr-Latn:
         create: Napravi blokadu
         hint: Blokiranje domena neće sprečiti pravljenje naloga u bazi, ali će retroaktivno i automatski primeniti određene moderatorske metode nad tim nalozima.
         severity:
-          desc_html: "<strong>Ućutkavanje</strong> će sve statuse ovog naloga učiniti nevidiljivim za sve, osim za one koji nalog već prate. <strong>Suspenzija</strong> će ukloniti sav sadržaj naloga, svu multimediju, i profilne podatke. Koristite <strong>Ništa</strong> ako samo želite da odbacite multimedijalne fajlove."
           noop: Ništa
-          silence: Ućutkavanje
           suspend: Suspenzija
         title: Novo blokiranje domena
       reject_media: Odbaci multimediju
diff --git a/config/locales/sr.yml b/config/locales/sr.yml
index acb2289e7..cff92eb93 100644
--- a/config/locales/sr.yml
+++ b/config/locales/sr.yml
@@ -3,7 +3,9 @@ sr:
   about:
     about_mastodon_html: Мастодон је друштвена мрежа базирана на отвореним протоколима и слободном софтверу отвореног кода. Децентрализована је као што је децентрализована е-пошта.
     contact_missing: Није постављено
+    contact_unavailable: Није доступно
     hosted_on: Мастодонт хостован на %{domain}
+    title: О
   accounts:
     follow: Запрати
     followers:
@@ -42,6 +44,8 @@ sr:
       confirm: Потврди
       confirmed: Потврђено
       confirming: Потврдување
+      custom: Произвољно
+      delete: Обриши податке
       deleted: Избрисано
       demote: Ражалуј
       disable: Искључи
@@ -150,9 +154,7 @@ sr:
         create: Направи блокаду
         hint: Блокирање домена неће спречити прављење налога у бази, али ће ретроактивно и аутоматски применити одређене модераторске методе над тим налозима.
         severity:
-          desc_html: "<strong>Ућуткавање</strong> ће све статусе овог налога учинити невидљивим за све, осим за оне који их већ прате. <strong>Суспензија</strong> ће уклонити сав садржај налога, сву мултимедију и податке налога. Користите <strong>Ништа</strong> само ако желите да одбаците мултимедијалне фајлове."
           noop: Ништа
-          silence: Ућуткавање
           suspend: Суспензија
         title: Ново блокирање домена
       reject_media: Одбаци мултимедију
diff --git a/config/locales/sv.yml b/config/locales/sv.yml
index bd3c1693a..f85c2fa24 100644
--- a/config/locales/sv.yml
+++ b/config/locales/sv.yml
@@ -283,7 +283,7 @@ sv:
         update_ip_block_html: "%{name} ändrade regel för IP %{target}"
         update_status_html: "%{name} uppdaterade inlägget av %{target}"
         update_user_role_html: "%{name} ändrade rollen %{target}"
-      deleted_account: raderat konto
+      deleted_account: raderat konto deleted account
       empty: Inga loggar hittades.
       filter_by_action: Filtrera efter åtgärd
       filter_by_user: Filtrera efter användare
@@ -373,6 +373,8 @@ sv:
       add_new: Vitlistedomän
       created_msg: Domänen har vitlistats
       destroyed_msg: Domänen har tagits bort från vitlistan
+      export: Exportera
+      import: Importera
       undo: Tag bort från vitlistan
     domain_blocks:
       add_new: Lägg till ny
@@ -382,15 +384,19 @@ sv:
       edit: Ändra domänblock
       existing_domain_block: Du har redan satt strängare gränser för %{name}.
       existing_domain_block_html: Du har redan satt begränsningar för %{name} så <a href="%{unblock_url}">avblockera användaren</a> först.
+      export: Exportera
+      import: Importera
       new:
         create: Skapa block
         hint: Domänblockeringen hindrar inte skapandet av kontoposter i databasen, men kommer retroaktivt och automatiskt tillämpa specifika modereringsmetoder på dessa konton.
         severity:
-          desc_html: "<strong>Tysta</strong> kommer att göra kontots inlägg osynliga för alla som inte följer det. <strong>Stäng av</strong> kommer ta bort allt kontoinnehåll, media och profildata. Använd <strong>Ingen</strong> om du bara vill avvisa mediefiler."
+          desc_html: "<strong>Gräns</strong> gör inlägg från konton på denna domän osynliga för alla som inte följer kontona. <strong>Avstängning</strong> tar bort allt innehåll, media och profildata för domänens konton från din server. Använd <strong>Ingen</strong> om du bara vill avvisa mediefiler."
           noop: Ingen
-          silence: Tysta ner
+          silence: Begränsa
           suspend: Stäng av
         title: Nytt domänblock
+      no_domain_block_selected: Inga blockeringar av domäner ändrades eftersom inga valdes
+      not_permitted: Du har inte behörighet att utföra denna åtgärd
       obfuscate: Dölj domännamn
       obfuscate_hint: Dölj domännamnet i listan till viss del, om underrättelser för listan över domänbegränsningar aktiverats
       private_comment: Privat kommentar
@@ -422,6 +428,20 @@ sv:
       resolved_dns_records_hint_html: Domännamnet ger uppslag till följande MX-domäner, vilka är ytterst ansvariga för att e-post tas emot. Att blockera en MX-domän blockerar även registreringar från alla e-postadresser som använder samma MX-domän, även om det synliga domännamnet är annorlunda. <strong>Var noga med att inte blockera stora e-postleverantörer.</strong>
       resolved_through_html: Uppslagen genom %{domain}
       title: Blockerade e-postdomäner
+    export_domain_allows:
+      new:
+        title: Importera domäntillåtelser
+      no_file: Ingen fil vald
+    export_domain_blocks:
+      import:
+        description_html: Du håller på att importera en lista med domänblockeringar. Granska denna lista mycket noga, särskilt om du inte har skapat listan själv.
+        existing_relationships_warning: Befintliga följ-relationer
+        private_comment_description_html: 'För att hjälpa dig spåra var importerade blockeringar kommer från kommer importerade blockeringar att skapas med följande privata kommentar: <q>%{comment}</q>'
+        private_comment_template: Importerad från %{source} den %{date}
+        title: Importera domänblockeringar
+      new:
+        title: Importera domänblockeringar
+      no_file: Ingen fil vald
     follow_recommendations:
       description_html: "<strong>Följrekommendationer hjälper nya användare att snabbt hitta intressant innehåll</strong>. När en användare inte har interagerat med andra tillräckligt mycket för att forma personliga följrekommendationer, rekommenderas istället dessa konton. De beräknas om varje dag från en mix av konton med nylig aktivitet och högst antal följare för ett givet språk."
       language: För språket
@@ -914,7 +934,7 @@ sv:
     warning: Var mycket försiktig med denna data. Dela aldrig den med någon!
     your_token: Din access token
   auth:
-    apply_for_account: Skriv upp dig på väntelistan
+    apply_for_account: Ansök om konto
     change_password: Lösenord
     delete_account: Radera konto
     delete_account_html: Om du vill radera ditt konto kan du <a href="%{path}">fortsätta här</a>. Du kommer att bli ombedd att bekräfta.
@@ -1159,6 +1179,7 @@ sv:
     invalid_markup: 'innehåller ogiltig HTML: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Ogiltig CSV-fil. Felmeddelande: %{error}'
       over_rows_processing_limit: innehåller fler än %{count} rader
     modes:
       merge: Slå ihop
diff --git a/config/locales/th.yml b/config/locales/th.yml
index 9a4c665ec..7aaa91280 100644
--- a/config/locales/th.yml
+++ b/config/locales/th.yml
@@ -366,6 +366,8 @@ th:
       add_new: อนุญาตการติดต่อกับภายนอกกับโดเมน
       created_msg: อนุญาตการติดต่อกับภายนอกกับโดเมนสำเร็จ
       destroyed_msg: ไม่อนุญาตการติดต่อกับภายนอกกับโดเมนแล้ว
+      export: ส่งออก
+      import: นำเข้า
       undo: ไม่อนุญาตการติดต่อกับภายนอกกับโดเมน
     domain_blocks:
       add_new: เพิ่มการปิดกั้นโดเมนใหม่
@@ -375,15 +377,19 @@ th:
       edit: แก้ไขการปิดกั้นโดเมน
       existing_domain_block: คุณได้กำหนดขีดจำกัดที่เข้มงวดกว่าใน %{name} ไปแล้ว
       existing_domain_block_html: คุณได้กำหนดขีดจำกัดที่เข้มงวดกว่าใน %{name} ไปแล้ว คุณจำเป็นต้อง <a href="%{unblock_url}">เลิกปิดกั้น</a> ก่อน
+      export: ส่งออก
+      import: นำเข้า
       new:
         create: สร้างการปิดกั้น
         hint: การปิดกั้นโดเมนจะไม่ป้องกันการสร้างรายการบัญชีในฐานข้อมูล แต่จะนำไปใช้วิธีการควบคุมที่เฉพาะเจาะจงกับบัญชีเหล่านั้นย้อนหลังและโดยอัตโนมัติ
         severity:
-          desc_html: "<strong>ทำให้เงียบ</strong> จะทำให้โพสต์ของบัญชีไม่ปรากฏแก่ใครก็ตามที่ไม่ได้กำลังติดตามบัญชี <strong>ระงับ</strong> จะเอาเนื้อหา, สื่อ และข้อมูลโปรไฟล์ทั้งหมดของบัญชีออก ใช้ <strong>ไม่มี</strong> หากคุณเพียงแค่ต้องการปฏิเสธไฟล์สื่อ"
+          desc_html: "<strong>จำกัด</strong> จะทำให้โพสต์จากบัญชีบนโดเมนนี้ถูกซ่อนจากผู้ใช้ที่ไม่ได้ติดตาม <strong>ระงับ</strong> จะทำให้ เนื้อหา, สื่อ และ ข้อมูลโปรไฟล์ทั้งหมด ในบัญชีของโดเมนนี้ถูกลบออกจากเซิฟเวอร์ ใช้<strong>ไม่มี</strong> ถ้าจะต้องการแค่ปฏิเสธไฟล์สื่อ"
           noop: ไม่มี
-          silence: ทำให้เงียบ
+          silence: จำกัด
           suspend: ระงับ
         title: การปิดกั้นโดเมนใหม่
+      no_domain_block_selected: ไม่มีการเปลี่ยนแปลงการปิดกั้นโดเมนเนื่องจากไม่ได้เลือกไว้
+      not_permitted: คุณไม่ได้รับอนุญาตให้ทำการกระทำนี้
       obfuscate: ทำให้ชื่อโดเมนคลุมเครือ
       obfuscate_hint: ปิดบังชื่อโดเมนบางส่วนในรายการหากมีการเปิดใช้งานการประกาศรายการการจำกัดโดเมน
       private_comment: ความคิดเห็นส่วนตัว
@@ -393,7 +399,7 @@ th:
       reject_media: ปฏิเสธไฟล์สื่อ
       reject_media_hint: เอาไฟล์สื่อที่จัดเก็บไว้ในเซิร์ฟเวอร์ออกและปฏิเสธที่จะดาวน์โหลดไฟล์ใด ๆ ในอนาคต ไม่เกี่ยวข้องกับการระงับ
       reject_reports: ปฏิเสธรายงาน
-      reject_reports_hint: เพิกเฉยรายงานทั้งหมดที่มาจากโดเมนนี้ ไม่เกี่ยวข้องกับการระงับ
+      reject_reports_hint: เพิกเฉยต่อรายงานทั้งหมดที่มาจากโดเมนนี้ ไม่เกี่ยวข้องกับการระงับ
       undo: เลิกทำการปิดกั้นโดเมน
       view: ดูการปิดกั้นโดเมน
     email_domain_blocks:
@@ -414,6 +420,18 @@ th:
       resolved_dns_records_hint_html: ชื่อโดเมนแปลงที่อยู่เป็นโดเมน MX ดังต่อไปนี้ ซึ่งท้ายที่สุดแล้วจะรับผิดชอบสำหรับการยอมรับอีเมล การปิดกั้นโดเมน MX จะปิดกั้นการลงทะเบียนจากที่อยู่อีเมลใด ๆ ซึ่งใช้โดเมน MX เดียวกัน แม้ว่าชื่อโดเมนที่ปรากฏจะแตกต่างกัน <strong>ระวังอย่าปิดกั้นผู้ให้บริการอีเมลรายใหญ่</strong>
       resolved_through_html: แปลงที่อยู่ผ่าน %{domain}
       title: โดเมนอีเมลที่ปิดกั้นอยู่
+    export_domain_allows:
+      new:
+        title: นำเข้าโดเมนที่อนุญาต
+      no_file: ไม่มีไฟล์ที่เลือก
+    export_domain_blocks:
+      import:
+        description_html: คุณกำลังจะนำเข้ารายการ การปิดกั้นโดเมน โปรดตรวจทานรายการอย่างระมัดระวังโดยเฉพาะถ้าคุณไม่ได้เขียนรายการนี้เอง
+        private_comment_template: นำเข้าจาก %{source} ใน %{date}
+        title: นำเข้า การปิดกั้นโดเมน
+      new:
+        title: นำเข้า การปิดกั้นโดเมน
+      no_file: ไม่มีไฟล์ที่เลือก
     follow_recommendations:
       description_html: "<strong>คำแนะนำการติดตามช่วยให้ผู้ใช้ใหม่ค้นหาเนื้อหาที่น่าสนใจได้อย่างรวดเร็ว</strong> เมื่อผู้ใช้ไม่ได้โต้ตอบกับผู้อื่นมากพอที่จะสร้างคำแนะนำการติดตามส่วนบุคคล จะแนะนำบัญชีเหล่านี้แทน จะคำนวณคำแนะนำใหม่เป็นประจำทุกวันจากบัญชีต่าง ๆ ที่มีการมีส่วนร่วมล่าสุดสูงสุดและจำนวนผู้ติดตามในเซิร์ฟเวอร์สูงสุดสำหรับภาษาที่กำหนด"
       language: สำหรับภาษา
@@ -565,6 +583,7 @@ th:
         create_and_resolve: แก้ปัญหาโดยมีหมายเหตุ
         create_and_unresolve: เปิดใหม่โดยมีหมายเหตุ
         delete: ลบ
+        placeholder: อธิบายว่าการกระทำใดที่ใช้ หรือการอัปเดตที่เกี่ยวข้องอื่นใด...
         title: หมายเหตุ
       notes_description_html: ดูและฝากหมายเหตุถึงผู้ควบคุมอื่น ๆ และตัวคุณเองในอนาคต
       quick_actions_description_html: 'ดำเนินการอย่างรวดเร็วหรือเลื่อนลงเพื่อดูเนื้อหาที่รายงาน:'
@@ -824,7 +843,7 @@ th:
         silence: เพื่อจำกัดบัญชีของเขา
         suspend: เพื่อระงับบัญชีของเขา
       body: "%{target} กำลังอุทธรณ์การตัดสินใจในการควบคุมโดย %{action_taken_by} จาก %{date} ซึ่งเป็น %{type} เขาเขียนว่า:"
-      next_steps: คุณสามารถอนุมัติการอุทธรณ์เพื่อเลิกทำการตัดสินใจในการควบคุม หรือเพิกเฉยการอุทธรณ์
+      next_steps: คุณสามารถอนุมัติการอุทธรณ์เพื่อเลิกทำการตัดสินใจในการควบคุม หรือเพิกเฉยต่อการอุทธรณ์
       subject: "%{username} กำลังอุทธรณ์การตัดสินใจในการควบคุมใน %{instance}"
     new_pending_account:
       body: รายละเอียดของบัญชีใหม่อยู่ด้านล่าง คุณสามารถอนุมัติหรือปฏิเสธใบสมัครนี้
@@ -845,9 +864,10 @@ th:
       subject: แนวโน้มใหม่สำหรับตรวจทานใน %{instance}
   aliases:
     add_new: สร้างนามแฝง
-    created_msg: สร้างนามแฝงใหม่สำเร็จ ตอนนี้คุณสามารถทำการย้ายจากบัญชีเก่า
+    created_msg: สร้างนามแฝงใหม่สำเร็จ ตอนนี้คุณสามารถเริ่มต้นการย้ายจากบัญชีเก่า
     deleted_msg: เอานามแฝงออกสำเร็จ จะไม่สามารถย้ายจากบัญชีนั้นไปยังบัญชีนี้ได้อีกต่อไป
     empty: คุณไม่มีนามแฝง
+    hint_html: หากคุณต้องการย้ายจากบัญชีอื่นไปยังบัญชีนี้ ที่นี่คุณสามารถสร้างนามแฝง ซึ่งจำเป็นก่อนที่คุณจะสามารถดำเนินการต่อด้วยการย้ายผู้ติดตามจากบัญชีเก่าไปยังบัญชีนี้ การกระทำนี้โดยตัวการกระทำเอง <strong>ไม่เป็นอันตรายและย้อนกลับได้</strong> <strong>การโยกย้ายบัญชีเริ่มต้นจากบัญชีเก่า</strong>
     remove: เลิกเชื่อมโยงนามแฝง
   appearance:
     advanced_web_interface: ส่วนติดต่อเว็บขั้นสูง
@@ -876,7 +896,6 @@ th:
     warning: ระวังเป็นอย่างสูงกับข้อมูลนี้ อย่าแบ่งปันข้อมูลกับใครก็ตาม!
     your_token: โทเคนการเข้าถึงของคุณ
   auth:
-    apply_for_account: เข้ารายชื่อผู้รอ
     change_password: รหัสผ่าน
     delete_account: ลบบัญชี
     delete_account_html: หากคุณต้องการลบบัญชีของคุณ คุณสามารถ <a href="%{path}">ดำเนินการต่อที่นี่</a> คุณจะได้รับการถามเพื่อการยืนยัน
@@ -1188,9 +1207,12 @@ th:
     set_redirect: ตั้งการเปลี่ยนเส้นทาง
     warning:
       before: 'ก่อนดำเนินการต่อ โปรดอ่านหมายเหตุเหล่านี้อย่างระมัดระวัง:'
+      cooldown: หลังจากการย้ายจะมีระยะเวลาการรอซึ่งในระหว่างนั้นคุณจะไม่สามารถย้ายได้อีกครั้ง
+      disabled_account: บัญชีปัจจุบันของคุณจะไม่สามารถใช้งานได้อย่างเต็มที่หลังจากนั้น อย่างไรก็ตาม คุณจะสามารถเข้าถึงการส่งออกข้อมูลเช่นเดียวกับการเปิดใช้งานใหม่
       followers: การกระทำนี้จะย้ายผู้ติดตามทั้งหมดจากบัญชีปัจจุบันไปยังบัญชีใหม่
       only_redirect_html: หรืออีกวิธีหนึ่ง คุณสามารถ <a href="%{path}">ตั้งเพียงการเปลี่ยนเส้นทางในโปรไฟล์ของคุณเท่านั้น</a>
       other_data: จะไม่ย้ายข้อมูลอื่น ๆ โดยอัตโนมัติ
+      redirect: จะอัปเดตโปรไฟล์ของบัญชีปัจจุบันของคุณด้วยข้อสังเกตการเปลี่ยนเส้นทางและจะไม่รวมอยู่ในการค้นหา
   moderation:
     title: การควบคุม
   move_handler:
@@ -1269,6 +1291,7 @@ th:
       duration_too_short: อยู่เร็วเกินไป
       expired: การสำรวจความคิดเห็นได้สิ้นสุดไปแล้ว
       invalid_choice: ไม่มีตัวเลือกการลงคะแนนที่เลือกอยู่
+      over_character_limit: ไม่สามารถยาวกว่า %{max} ตัวอักษรในแต่ละรายการ
       too_few_options: ต้องมีมากกว่าหนึ่งรายการ
       too_many_options: ไม่สามารถมีมากกว่า %{max} รายการ
   preferences:
@@ -1425,8 +1448,8 @@ th:
     enabled: ลบโพสต์เก่าโดยอัตโนมัติ
     enabled_hint: ลบโพสต์ของคุณโดยอัตโนมัติเมื่อโพสต์ถึงค่าเกณฑ์อายุที่ระบุ เว้นแต่โพสต์ตรงกับหนึ่งในข้อยกเว้นด้านล่าง
     exceptions: ข้อยกเว้น
-    ignore_favs: เพิกเฉยรายการโปรด
-    ignore_reblogs: เพิกเฉยการดัน
+    ignore_favs: เพิกเฉยต่อรายการโปรด
+    ignore_reblogs: เพิกเฉยต่อการดัน
     interaction_exceptions: ข้อยกเว้นตามการโต้ตอบ
     keep_direct: เก็บข้อความโดยตรง
     keep_direct_hint: ไม่ลบข้อความโดยตรงใดก็ตามของคุณ
@@ -1458,6 +1481,9 @@ th:
     pinned: โพสต์ที่ปักหมุด
     reblogged: ดันแล้ว
     sensitive_content: เนื้อหาที่ละเอียดอ่อน
+  strikes:
+    errors:
+      too_late: สายเกินไปที่จะอุทธรณ์การดำเนินการนี้
   tags:
     does_not_match_previous_name: ไม่ตรงกับชื่อก่อนหน้านี้
   themes:
@@ -1477,10 +1503,12 @@ th:
     enabled: เปิดใช้งานการรับรองความถูกต้องด้วยสองปัจจัยแล้ว
     enabled_success: เปิดใช้งานการรับรองความถูกต้องด้วยสองปัจจัยสำเร็จ
     generate_recovery_codes: สร้างรหัสกู้คืน
+    lost_recovery_codes: รหัสกู้คืนอนุญาตให้คุณเข้าถึงบัญชีของคุณได้อีกครั้งหากคุณทำโทรศัพท์ของคุณหาย หากคุณทำรหัสกู้คืนหาย คุณสามารถสร้างรหัสใหม่ได้ที่นี่ จะยกเลิกรหัสกู้คืนเก่าของคุณ
     methods: วิธีการสองปัจจัย
     otp: แอปตัวรับรองความถูกต้อง
     recovery_codes: รหัสกู้คืนข้อมูลสำรอง
     recovery_codes_regenerated: สร้างรหัสกู้คืนใหม่สำเร็จ
+    recovery_instructions_html: หากคุณสูญเสียการเข้าถึงโทรศัพท์ของคุณ คุณสามารถใช้หนึ่งในรหัสกู้คืนด้านล่างเพื่อให้เข้าถึงบัญชีของคุณได้อีกครั้ง <strong>รักษารหัสกู้คืนให้ปลอดภัย</strong> ตัวอย่างเช่น คุณสามารถพิมพ์รหัสและจัดเก็บรหัสไว้กับเอกสารสำคัญอื่น ๆ
     webauthn: กุญแจความปลอดภัย
   user_mailer:
     appeal_approved:
@@ -1514,7 +1542,7 @@ th:
         disable: คุณไม่สามารถใช้บัญชีของคุณได้อีกต่อไป แต่โปรไฟล์และข้อมูลอื่น ๆ ของคุณยังคงอยู่ในสภาพเดิม คุณสามารถขอข้อมูลสำรองของข้อมูลของคุณ เปลี่ยนการตั้งค่าบัญชี หรือลบบัญชีของคุณ
         mark_statuses_as_sensitive: ทำเครื่องหมายโพสต์บางส่วนของคุณว่าละเอียดอ่อนโดยผู้ควบคุมของ %{instance} แล้ว นี่หมายความว่าผู้คนจะต้องแตะสื่อในโพสต์ก่อนที่จะแสดงตัวอย่าง คุณสามารถทำเครื่องหมายสื่อว่าละเอียดอ่อนด้วยตัวคุณเองเมื่อโพสต์ในอนาคต
         sensitive: จากนี้ไป จะทำเครื่องหมายไฟล์สื่อที่อัปโหลดทั้งหมดของคุณว่าละเอียดอ่อนและซ่อนอยู่หลังการคลิกไปยังคำเตือน
-        silence: คุณยังคงสามารถใช้บัญชีของคุณแต่เฉพาะผู้คนที่กำลังติดตามคุณอยู่แล้วเท่านั้นที่จะเห็นโพสต์ของคุณในเซิร์ฟเวอร์นี้ และอาจแยกคุณออกจากคุณลักษณะการค้นพบต่าง ๆ อย่างไรก็ตาม ผู้อื่นอาจยังติดตามคุณด้วยตนเอง
+        silence: คุณยังคงสามารถใช้บัญชีของคุณแต่เฉพาะผู้คนที่กำลังติดตามคุณอยู่แล้วเท่านั้นที่จะเห็นโพสต์ของคุณในเซิร์ฟเวอร์นี้ และอาจไม่รวมคุณอยู่ในคุณลักษณะการค้นพบต่าง ๆ อย่างไรก็ตาม ผู้อื่นอาจยังติดตามคุณด้วยตนเอง
         suspend: คุณไม่สามารถใช้บัญชีของคุณได้อีกต่อไป และจะไม่สามารถเข้าถึงโปรไฟล์และข้อมูลอื่น ๆ ของคุณได้อีกต่อไป คุณยังคงสามารถเข้าสู่ระบบเพื่อขอข้อมูลสำรองของข้อมูลของคุณจนกว่าจะเอาข้อมูลออกอย่างสมบูรณ์ในเวลาประมาณ 30 วัน แต่เราจะเก็บรักษาข้อมูลพื้นฐานบางอย่างไว้เพื่อป้องกันไม่ให้คุณหลบเลี่ยงการระงับ
       reason: 'เหตุผล:'
       statuses: 'โพสต์ที่อ้างถึง:'
@@ -1551,6 +1579,7 @@ th:
     seamless_external_login: คุณได้เข้าสู่ระบบผ่านบริการภายนอก ดังนั้นจึงไม่มีการตั้งค่ารหัสผ่านและอีเมล
     signed_in_as: 'ลงชื่อเข้าเป็น:'
   verification:
+    explanation_html: 'คุณสามารถ <strong>ยืนยันตัวคุณเองว่าเป็นเจ้าของของลิงก์ในข้อมูลอภิพันธุ์โปรไฟล์ของคุณ</strong> สำหรับสิ่งนั้น เว็บไซต์ที่เชื่อมโยงต้องมีลิงก์ย้อนกลับไปยังโปรไฟล์ Mastodon ของคุณ ลิงก์ย้อนกลับ <strong>ต้อง</strong> มีแอตทริบิวต์ <code>rel="me"</code> เนื้อหาข้อความของลิงก์ไม่สำคัญ นี่คือตัวอย่าง:'
     verification: การตรวจสอบ
   webauthn_credentials:
     add: เพิ่มกุญแจความปลอดภัยใหม่
diff --git a/config/locales/tr.yml b/config/locales/tr.yml
index cc2193a68..e137050c2 100644
--- a/config/locales/tr.yml
+++ b/config/locales/tr.yml
@@ -373,6 +373,8 @@ tr:
       add_new: Alan adını beyaz listeye al
       created_msg: Alan adı başarıyla beyaz listeye alındı
       destroyed_msg: Alan adı beyaz listeden kaldırıldı
+      export: Dışa Aktar
+      import: İçe aktar
       undo: Beyaz listeden çıkar
     domain_blocks:
       add_new: Yeni ekle
@@ -382,13 +384,15 @@ tr:
       edit: Etki alanı bloğunu düzenle
       existing_domain_block: Zaten %{name} için daha katı sınırlamalar dayatmıştınız.
       existing_domain_block_html: '%{name}''e zaten daha katı sınırlar uyguladınız, önce <a href="%{unblock_url}">engellemesini kaldırmanız</a> gerekiyor.'
+      export: Dışa Aktar
+      import: İçe aktar
       new:
         create: Yeni blok oluştur
         hint: Domain bloğu, veri tabanında hesap kayıtlarının oluşturulmasını engellemez, fakat o hesapların üzerine otomatik olarak belirli yönetim metodlarını olarak uygular.
         severity:
-          desc_html: "<strong>Susturma</strong>, uygulanan hesabın gönderilerini, o hesabı takip etmeyen diğer herkese gizler. <strong>Uzaklaştırma</strong> hesabın bütün içeriğini, medya dosyalarını ve profil verisini siler. Sadece medya dosyalarını reddetmek için <strong>Hiçbiri</strong> kullanın."
+          desc_html: "<strong>Sınırlama</strong>, bu sunucudaki hesabın gönderilerini, o hesabı takip etmeyen diğer herkese gizler. <strong>Uzaklaştırma</strong> bu alan adındaki hesapların tüm içeriğini, medya dosyalarını ve profil verisini sunucunuzdan siler. Sadece medya dosyalarını reddetmek için <strong>Hiçbiri</strong> kullanın."
           noop: Yok
-          silence: Sustur
+          silence: Sınırla
           suspend: Uzaklaştır
         title: Yeni domain bloğu
       obfuscate: Alan adını gizle
@@ -422,6 +426,12 @@ tr:
       resolved_dns_records_hint_html: Alan adı aşağıdaki MX alan adlarına çözümleniyor, ancak hiç biri nihayetinde e-posta kabulünden sorum değil. Bir MX alan adını engellemek, görünen alan adı farklı osa bile aynı MX alan adını kullanan e-posta adreslerinden gelen kayıtları engelleyecektir. <strong>Başlıca e-posta sağlayıcıları engellememek için dikkatli olun.</strong>
       resolved_through_html: "%{domain} aracılığıyla çözümlendi"
       title: E-posta kara listesi
+    export_domain_allows:
+      no_file: Dosya seçilmedi
+    export_domain_blocks:
+      import:
+        private_comment_template: "%{source} kaynağından %{date} tarihinde içe aktarıldı"
+      no_file: Dosya seçilmedi
     follow_recommendations:
       description_html: "<strong>Takip önerileri yeni kullanıcıların hızlı bir şekilde ilginç içerik bulmalarını sağlar</strong>. Eğer bir kullanıcı, kişisel takip önerileri almaya yetecek kadar başkalarıyla etkileşime girmediğinde, onun yerine bu hesaplar önerilir. Bu öneriler, verili bir dil için en yüksek takipçi sayısına ve en yüksek güncel meşguliyete sahip hesapların bir karışımdan günlük olarak hesaplanıyorlar."
       language: Dil için
@@ -608,6 +618,7 @@ tr:
         other: "%{count} kullanıcı"
       categories:
         administration: Yönetim
+        devops: DevOps
         invites: Davetler
         moderation: Denetim
         special: Özel
@@ -658,6 +669,7 @@ tr:
         view_audit_log_description: Kullanıcıların sunucudaki yönetsel eylemlerin bir tarihçesini görüntülemesine izin verir
         view_dashboard: Ana Paneli Görüntüleme
         view_dashboard_description: Kullanıcıların ana panele ve çeşitli ölçütlere erişmesine izin verir
+        view_devops: DevOps
         view_devops_description: Kullanıcıların Sidekiq ve pgHero panellerine erişmesine izin verir
       title: Roller
     rules:
@@ -912,7 +924,7 @@ tr:
     warning: Bu verilere çok dikkat edin. Asla kimseyle paylaşmayın!
     your_token: Erişim belirteciniz
   auth:
-    apply_for_account: Bekleme listesine gir
+    apply_for_account: Bir hesap talep et
     change_password: Parola
     delete_account: Hesabı sil
     delete_account_html: Hesabını silmek istersen, <a href="%{path}">buradan devam edebilirsin</a>. Onay istenir.
@@ -1371,6 +1383,7 @@ tr:
     browser: Tarayıcı
     browsers:
       alipay: Alipay
+      blackberry: BlackBerry
       chrome: Chrome
       edge: Microsoft Edge
       electron: Electron
@@ -1384,6 +1397,7 @@ tr:
       phantom_js: PhantomJS
       qq: QQ Browser
       safari: Safari
+      uc_browser: UC Browser
       weibo: Weibo
     current_session: Geçerli oturum
     description: "%{platform} - %{browser}"
@@ -1392,6 +1406,8 @@ tr:
     platforms:
       adobe_air: Adobe Air
       android: Android
+      blackberry: BlackBerry
+      chrome_os: ChromeOS
       firefox_os: Firefox OS
       ios: iOS
       linux: Linux
diff --git a/config/locales/uk.yml b/config/locales/uk.yml
index 94ac3f2b8..55522613b 100644
--- a/config/locales/uk.yml
+++ b/config/locales/uk.yml
@@ -21,11 +21,11 @@ uk:
     pin_errors:
       following: Ви повинні бути підписаним на людину, яку бажаєте схвалити
     posts:
-      few: Дмуха
-      many: Дмухів
-      one: Дмух
-      other: Дмухів
-    posts_tab_heading: Дмухи
+      few: Дописи
+      many: Дописів
+      one: Допис
+      other: Дописів
+    posts_tab_heading: Дописів
   admin:
     account_actions:
       action: Виконати дію
@@ -387,6 +387,8 @@ uk:
       add_new: Додати домен до білого списку
       created_msg: Домен було успішно додано до білого списку
       destroyed_msg: Домен було видалено з білого списку
+      export: Експорт
+      import: Імпорт
       undo: Видалити з білого списку
     domain_blocks:
       add_new: Додати нове
@@ -396,15 +398,19 @@ uk:
       edit: Редагувати блокування доменів
       existing_domain_block: Ви вже наклали суворіші обмеження на %{name}.
       existing_domain_block_html: Ви вже наклали більш суворі обмеження на %{name}, вам треба спочатку <a href="%{unblock_url}">розблокувати його</a>.
+      export: Експорт
+      import: Імпорт
       new:
         create: Створити блокування
         hint: Блокування домену не завадить створенню нових облікових записів у базі даних, але ретроактивно та автоматично застосує до них конкретні методи модерації.
         severity:
-          desc_html: "<strong>Глушення</strong> зробить дописи облікового запису невидимими для всіх, окрім його підписників. <strong>Заморожування</strong> видалить усі матеріали, медіа та дані профілю облікового запису. Якщо ви хочете лише заборонити медіафайли, оберіть <strong>Нічого</strong>."
+          desc_html: "<strong>Обмеження</strong> зробить дописи облікових записів цього домену невидимими для всіх, окрім його підписників. <strong>Заморожування</strong> видалить усі матеріали облікових записів, медіа та дані профілів для облікових записів цього домену з вашого сервера. Якщо ви хочете лише заборонити медіафайли, оберіть <strong>Нічого</strong>."
           noop: Нічого
-          silence: Глушення
+          silence: Обмежити
           suspend: Блокування
         title: Нове блокування домену
+      no_domain_block_selected: Жодні налаштування блокування доменів не змінено, оскільки жоден з них не було вибрано
+      not_permitted: Вам не дозволено виконувати цю дію
       obfuscate: Сховати назву домена
       obfuscate_hint: Частково приховувати доменне ім'я в списку, якщо ввімкнено показ списку обмежень домену
       private_comment: Приватний коментар
@@ -438,6 +444,20 @@ uk:
       resolved_dns_records_hint_html: Ім'я домену резолвиться в наступні домени MX, які в кінцевому рахунку відповідають за прийняття електронної пошти. Блокування домену MX заблокує реєстрацію з будь-якої e-mail адреси, яка використовує однаковий домен MX, навіть якщо доменне ім'я буде інакше. <strong>Будьте обережні, щоб не блокувати великих поштових провайдерів.</strong>
       resolved_through_html: Розв'язано через %{domain}
       title: Чорний список поштових доменів
+    export_domain_allows:
+      new:
+        title: Імпорт дозволів домену
+      no_file: Файл не вибрано
+    export_domain_blocks:
+      import:
+        description_html: Ви збираєтеся імпортувати список блокування доменів. Уважно перегляньте цей список, особливо якщо ви не авторизували цей список.
+        existing_relationships_warning: Наявні відносини стеження
+        private_comment_description_html: 'Щоб допомогти вам відстежувати, звідки беруться імпортовані блокування, вони створюються за допомогою наступного приватного коментаря: <q>%{comment}</q>'
+        private_comment_template: Імпортовано з %{source} %{date}
+        title: Імпорт блокувань домену
+      new:
+        title: Імпорт блокувань домену
+      no_file: Файл не вибрано
     follow_recommendations:
       description_html: "<strong>Слідувати рекомендаціям та допомогти новим користувачам швидко знайти цікавий вміст</strong>. Коли користувачі не взаємодіяли з іншими людьми достатньо, щоб сформувати персоналізовані рекомендації, радимо замість цього вказувати ці облікові записи. Вони щоденно переобчислюються з масиву облікових записів з найбільшою кількістю недавніх взаємодій і найбільшою кількістю місцевих підписників розраховується для цієї мови."
       language: Для мови
@@ -551,7 +571,7 @@ uk:
       disable: Вимкнути
       disabled: Вимкнено
       enable: Увімкнути
-      enable_hint: Коли ретрансляцію увімкнено, ваш сервер буде підписаний на усі публічні дмухи з цього ретранслятора, та почне посилати до нього свої публічні дмухи.
+      enable_hint: Коли ретрансляцію увімкнено, ваш сервер буде підписаний на усі публічні дописи з цього ретранслятора, та почне посилати до нього свої публічні дописи.
       enabled: Увімкнено
       inbox_url: URL ретранслятора
       pending: Очікуємо на підтвердження ретранслятором
@@ -634,6 +654,7 @@ uk:
         other: "%{count} користувача"
       categories:
         administration: Адміністрування
+        devops: DevOps
         invites: Запрошення
         moderation: Модерація
         special: Спеціальні
@@ -686,6 +707,7 @@ uk:
         view_audit_log_description: Дозволяє користувачам бачити історію адміністративних дій на сервері
         view_dashboard: Переглядати панель керування
         view_dashboard_description: Дозволяє користувачам доступ до панелі керування та різних метрик
+        view_devops: DevOps
         view_devops_description: Дозволяє користувачам доступ до Sidekiq і панелі pgHero
       title: Ролі
     rules:
@@ -922,8 +944,8 @@ uk:
     hint_html: Якщо ви збираєтеся мігрувати з іншого облікового запису на цей, ви можете налаштувати псевдонім, що потрібно для перенесення передплатників зі старою облікового запису. Ця дія саме по собі <strong>нешкідливо і оборотно</strong>. <strong>Міграція облікового запису починається з старого облікового запису</strong>.
     remove: Від'єднати псевдонім
   appearance:
-    advanced_web_interface: Розширений web-інтерфейс
-    advanced_web_interface_hint: 'Розширений веб-інтерфейс дає змогу бачити багато стовпчиків одночасно: основна сторінка, сповіщення, глобальна стрічка, будь-які списки та хештеґи. Потребує широкого екрана.'
+    advanced_web_interface: Розширений вебінтерфейс
+    advanced_web_interface_hint: 'Якщо ви бажаєте використовувати всю ширину вашого екрана, розширений вебінтерфейс дає змогу налаштовувати одночасний показ багатьох стовпчиків: головна, сповіщення, федеративна стрічка, будь-яка кількість списків і хештеґів.'
     animations_and_accessibility: Анімація та доступність
     confirmation_dialogs: Діалоги підтвердження
     discovery: Виявлення
@@ -932,11 +954,11 @@ uk:
       guide_link: https://uk.crowdin.com/project/mastodon
       guide_link_text: Кожен може взяти участь.
     sensitive_content: Дражливий зміст
-    toot_layout: Зовнішній вигляд дмухів
+    toot_layout: Зовнішній вигляд дописів
   application_mailer:
-    notification_preferences: Змінити налаштування e-mail
+    notification_preferences: Змінити налаштування електронної пошти
     salutation: "%{name},"
-    settings: 'Змінити налаштування e-mail: %{link}'
+    settings: 'Змінити налаштування електронної пошти: %{link}'
     view: 'Перегляд:'
     view_profile: Показати профіль
     view_status: Показати допис
@@ -948,7 +970,7 @@ uk:
     warning: Будьте дуже обережні з цими даними. Ніколи не діліться ними ні з ким!
     your_token: Ваш токен доступу
   auth:
-    apply_for_account: Приєднатися до списку очікування
+    apply_for_account: Запит облікового запису
     change_password: Пароль
     delete_account: Видалити обліковий запис
     delete_account_html: Якщо ви хочете видалити свій обліковий запис, ви можете <a href="%{path}">перейти сюди</a>. Вас попросять підтвердити дію.
@@ -966,7 +988,7 @@ uk:
     login: Увійти
     logout: Вийти
     migrate_account: Переїхати на інший обліковий запис
-    migrate_account_html: Якщо ви бажаєте перенаправити цей обліковий запис на інший, ви можете <a href="%{path}">налаштувати це тут</a>.
+    migrate_account_html: Якщо ви бажаєте переспрямувати цей обліковий запис на інший, ви можете <a href="%{path}">налаштувати це тут</a>.
     or_log_in_with: Або увійдіть з
     privacy_policy_agreement_html: Мною прочитано і я погоджуюся з <a href="%{privacy_policy_path}" target="_blank">політикою приватності</a>
     providers:
@@ -983,7 +1005,7 @@ uk:
     set_new_password: Встановити новий пароль
     setup:
       email_below_hint_html: Якщо ця електронна адреса не є вірною, ви можете змінити її тут та отримати новий лист для підтвердження.
-      email_settings_hint_html: Електронний лист-підтвердження було вислано до %{email}. Якщо ця адреса електронної пошти не є вірною, ви можете змінити її в налаштуваннях облікового запису.
+      email_settings_hint_html: Електронний лист-підтвердження було вислано на %{email}. Якщо ця адреса електронної пошти не правильна, ви можете змінити її в налаштуваннях облікового запису.
       title: Налаштування
     sign_up:
       preamble: За допомогою облікового запису на цьому сервері Mastodon, ви зможете слідкувати за будь-якою іншою людиною в мережі, не зважаючи на те, де розміщений обліковий запис.
@@ -1207,6 +1229,7 @@ uk:
     invalid_markup: 'містить неприпустиму HTML розмітку: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Хибний файл CSV. Помилка: %{error}'
       over_rows_processing_limit: містить більше ніж %{count} рядків
     modes:
       merge: Злиття
@@ -1333,7 +1356,7 @@ uk:
     reblog:
       body: "%{name} поширює ваш допис:"
       subject: "%{name} поширив ваш статус"
-      title: Нове передмухування
+      title: Нове поширення
     status:
       subject: "%{name} щойно опубліковано"
     update:
@@ -1415,14 +1438,15 @@ uk:
       account: Загальнодоступні дописи від @%{acct}
       tag: 'Загальнодоступні дописи позначені #%{hashtag}'
   scheduled_statuses:
-    over_daily_limit: Ви перевищили ліміт в %{limit} запланованих дмухів на сьогодні
-    over_total_limit: Ви перевищили ліміт в %{limit} запланованих дмухів
+    over_daily_limit: Ви перевищили ліміт в %{limit} запланованих дописів на сьогодні
+    over_total_limit: Ви перевищили ліміт в %{limit} запланованих дописів
     too_soon: Запланована дата має бути в майбутньому
   sessions:
     activity: Остання активність
     browser: Браузер
     browsers:
       alipay: Alipay
+      blackberry: BlackBerry
       chrome: Хром
       edge: Microsoft Edge
       electron: Electron
@@ -1436,6 +1460,7 @@ uk:
       phantom_js: PhantomJS
       qq: QQ Browser
       safari: Сафарі
+      uc_browser: UC Browser
       weibo: Weibo
     current_session: Активна сесія
     description: "%{browser} на %{platform}"
@@ -1444,6 +1469,8 @@ uk:
     platforms:
       adobe_air: Adobe Air
       android: Android
+      blackberry: BlackBerry
+      chrome_os: ChromeOS
       firefox_os: Firefox OS
       ios: iOS
       linux: Linux
@@ -1547,7 +1574,7 @@ uk:
     exceptions: Винятки
     explanation: Оскільки видалення дописів є складною операцією, то це відбувається повільно, коли сервер не дуже завантажено. З цієї причини ваші дописи можуть бути видалені через деякий час після досягнення вікового порогу.
     ignore_favs: Ігнорувати обране
-    ignore_reblogs: Ігнорувати передмухнуті
+    ignore_reblogs: Ігнорувати поширення
     interaction_exceptions: Винятки базуються на взаємодії
     interaction_exceptions_explanation: Зверніть увагу, що немає гарантії, щоб дописи були видалені, якщо вони йдуть нижче улюблених або підсилювачів після того, як вони перейшли за них.
     keep_direct: Зберігати приватні повідомлення
@@ -1574,8 +1601,8 @@ uk:
     min_age_label: Поріг давності
     min_favs: Залишати дописи в обраному більше ніж
     min_favs_hint: Не видаляти ваших дописів, що отримали більше вказаної кількості додавання до закладок. Залиште порожнім, щоб видаляти дописи незалежно від кількості їхнього додавання до обраних
-    min_reblogs: Залишати дописи передмухнуті більше ніж
-    min_reblogs_hint: Не видаляти ваших дописів, що були передмухнуті більш ніж вказану кількість разів. Залиште порожнім, щоб видаляти дописи, попри кількість їхніх передмухів
+    min_reblogs: Залишати дописи, поширені більше ніж
+    min_reblogs_hint: Не видаляти ваших дописів, що були поширені більш ніж вказану кількість разів. Залиште порожнім, щоб видаляти дописи, попри кількість їхніх поширень
   stream_entries:
     pinned: Закріплений допис
     reblogged: поширив
@@ -1678,7 +1705,7 @@ uk:
     seamless_external_login: Ви увійшли за допомогою зовнішнього сервісу, тому налаштування паролю та електронної пошти недоступні.
     signed_in_as: 'Ви увійшли як:'
   verification:
-    explanation_html: 'Володіння посиланнями у профілі <strong>можна підтвердити</strong>. Для цього на зазначеному сайті повинна міститися посилання на ваш профіль Mastodon, а у самому посиланні <strong>повинен</strong> бути атрибут <code>rel="me"</code>. Що всередині посилання - значення не має. Ось вам приклад посилання:'
+    explanation_html: 'Ви можете <strong>підтвердити володіння посиланнями в метаданих вашого профілю</strong>. Для цього на зазначеному сайті повинне міститися посилання на ваш профіль Mastodon. Посилання <strong>повинне</strong> мати атрибут <code>rel="me"</code>. Текстовий вміст посилання не має значення. Ось приклад:'
     verification: Підтвердження
   webauthn_credentials:
     add: Додати новий ключ безпеки
diff --git a/config/locales/vi.yml b/config/locales/vi.yml
index b3e37438f..375db72a2 100644
--- a/config/locales/vi.yml
+++ b/config/locales/vi.yml
@@ -366,6 +366,8 @@ vi:
       add_new: Cho phép liên hợp với máy chủ
       created_msg: Máy chủ đã được kích hoạt liên hợp thành công
       destroyed_msg: Máy chủ đã bị ngưng liên hợp
+      export: Xuất
+      import: Nhập
       undo: Xóa khỏi danh sách trắng
     domain_blocks:
       add_new: Chặn máy chủ
@@ -375,15 +377,19 @@ vi:
       edit: Chỉnh sửa máy chủ bị chặn
       existing_domain_block: Bạn đã hạn chế %{name} trước đó.
       existing_domain_block_html: Bạn đã áp đặt các giới hạn chặt chẽ hơn cho %{name}, trước tiên bạn cần <a href="%{unblock_url}">bỏ chặn nó</a>.
+      export: Xuất
+      import: Nhập
       new:
         create: Tạo chặn
         hint: Chặn máy chủ sẽ không ngăn việc hiển thị tút của máy chủ đó trong cơ sở dữ liệu, nhưng sẽ khiến tự động áp dụng các phương pháp kiểm duyệt cụ thể trên các tài khoản đó.
         severity:
-          desc_html: "<strong>Ẩn</strong> sẽ làm cho bài đăng của tài khoản trở nên vô hình đối với bất kỳ ai không theo dõi họ. <strong>Vô hiệu hóa</strong> sẽ xóa tất cả nội dung, phương tiện và dữ liệu khác của tài khoản. Dùng <strong>Cảnh cáo</strong> nếu bạn chỉ muốn cấm tải lên ảnh và video."
+          desc_html: "<strong>Ẩn</strong> sẽ làm cho tút của tài khoản trở nên vô hình đối với bất kỳ ai không theo dõi họ. <strong>Vô hiệu hóa</strong> sẽ xóa tất cả nội dung, phương tiện và dữ liệu khác của tài khoản. Dùng <strong>Cảnh cáo</strong> nếu bạn chỉ muốn cấm tải lên ảnh và video."
           noop: Không hoạt động
           silence: Ẩn
           suspend: Vô hiệu hóa
         title: Máy chủ bị chặn mới
+      no_domain_block_selected: Không có chặn tên miền nào thay đổi vì không có mục nào được chọn
+      not_permitted: Bạn không có quyền thực hiện việc này
       obfuscate: Làm mờ tên máy chủ
       obfuscate_hint: Làm mờ tên máy chủ trong danh sách nếu giới hạn máy chủ đã bật
       private_comment: Bình luận riêng
@@ -414,6 +420,20 @@ vi:
       resolved_dns_records_hint_html: Tên miền phân giải thành các tên miền MX sau, các tên miền này chịu trách nhiệm cuối cùng trong việc chấp nhận email. Chặn tên miền MX sẽ chặn đăng ký từ bất kỳ địa chỉ email nào sử dụng cùng một tên miền MX, ngay cả khi tên miền hiển thị là khác. <strong>Cẩn thận đừng chặn những dịch vụ email lớn.</strong>
       resolved_through_html: Đã xử lý thông qua %{domain}
       title: Tên miền email đã chặn
+    export_domain_allows:
+      new:
+        title: Nhập tên miền cho phép
+      no_file: Không có tập tin nào được chọn
+    export_domain_blocks:
+      import:
+        description_html: Bạn sắp nhập danh sách các tên miền chặn. Vui lòng xem lại danh sách này thật cẩn thận, đặc biệt nếu bạn không phải là tác giả của danh sách này.
+        existing_relationships_warning: Các mối quan hệ theo dõi hiện tại
+        private_comment_description_html: 'Để giúp bạn theo dõi nguồn gốc của các chặn tên miền đã nhập, các tên miền chặn đã nhập sẽ được tạo bằng nhận xét riêng tư sau: <q>%{comment}</q>'
+        private_comment_template: Nhập từ %{source} vào %{date}
+        title: Nhập máy chủ chặn
+      new:
+        title: Nhập máy chủ chặn
+      no_file: Không có tập tin nào được chọn
     follow_recommendations:
       description_html: "<strong>Gợi ý theo dõi là cách giúp những người mới nhanh chóng tìm thấy những nội dung thú vị</strong>. Khi một người chưa đủ tương tác với những người khác để hình thành các đề xuất theo dõi được cá nhân hóa, thì những người này sẽ được đề xuất. Nó bao gồm những người có số lượt tương tác gần đây cao nhất và số lượng người theo dõi cao nhất cho một ngôn ngữ nhất định trong máy chủ."
       language: Theo ngôn ngữ
@@ -595,6 +615,7 @@ vi:
         other: "%{count} người"
       categories:
         administration: Quản trị viên
+        devops: Nhà phát triển
         invites: Lời mời
         moderation: Kiểm duyệt
         special: Đặc biệt
@@ -644,6 +665,7 @@ vi:
         view_audit_log_description: Cho phép xem lịch sử của các hành động quản trị trên máy chủ
         view_dashboard: Xem quản trị
         view_dashboard_description: Cho phép truy cập trang tổng quan và các chỉ số khác
+        view_devops: Nhà phát triển
         view_devops_description: Cho phép truy cập trang tổng quan Sidekiq và pgHero
       title: Danh sách vai trò
     rules:
@@ -894,7 +916,7 @@ vi:
     warning: Hãy rất cẩn thận với dữ liệu này. Không bao giờ chia sẻ nó với bất cứ ai!
     your_token: Mã truy cập của bạn
   auth:
-    apply_for_account: Nhận thông báo khi mở
+    apply_for_account: Xin đăng ký
     change_password: Mật khẩu
     delete_account: Xóa tài khoản
     delete_account_html: Nếu bạn muốn xóa tài khoản của mình, hãy <a href="%{path}">yêu cầu tại đây</a>. Bạn sẽ được yêu cầu xác nhận.
@@ -1132,6 +1154,7 @@ vi:
     invalid_markup: 'chứa đánh dấu HTML không hợp lệ: %{error}'
   imports:
     errors:
+      invalid_csv_file: 'Tập tin CSV không hợp lệ. Lỗi: %{error}'
       over_rows_processing_limit: chứa nhiều hơn %{count} hàng
     modes:
       merge: Hợp nhất
@@ -1345,6 +1368,7 @@ vi:
     browser: Trình duyệt
     browsers:
       alipay: Alipay
+      blackberry: BlackBerry
       chrome: Chrome
       edge: Edge
       electron: Electron
@@ -1358,6 +1382,7 @@ vi:
       phantom_js: PhantomJS
       qq: QQ
       safari: Safari
+      uc_browser: UC Browser
       weibo: Weibo
     current_session: Phiên hiện tại
     description: "%{browser} trên %{platform}"
@@ -1366,6 +1391,8 @@ vi:
     platforms:
       adobe_air: Adobe Air
       android: Android
+      blackberry: BlackBerry
+      chrome_os: ChromeOS
       firefox_os: Hệ điều hành Firefox
       ios: iOS
       linux: Linux
diff --git a/config/locales/zh-CN.yml b/config/locales/zh-CN.yml
index 4da6b6999..176054be6 100644
--- a/config/locales/zh-CN.yml
+++ b/config/locales/zh-CN.yml
@@ -1,7 +1,7 @@
 ---
 zh-CN:
   about:
-    about_mastodon_html: Mastodon 是一个建立在开放式网络协议和自由、开源软件之上的社交网络,有着类似于电子邮件的分布式设计。
+    about_mastodon_html: 来自未来的社交网络:无广告、无监视、去中心化、合乎道德!使用 Mastodon 夺回你的数据!
     contact_missing: 未设定
     contact_unavailable: 未公开
     hosted_on: 运行在 %{domain} 上的 Mastodon 站点
@@ -83,7 +83,7 @@ zh-CN:
         title: 位置
       login_status: 登录状态
       media_attachments: 媒体文件
-      memorialize: 设置为追悼帐户
+      memorialize: 设置为追悼账户
       memorialized: 被悼念
       memorialized_msg: 成功将 %{username} 转换为悼念账号
       moderation:
@@ -257,7 +257,7 @@ zh-CN:
         enable_custom_emoji_html: "%{name} 启用了自定义表情 %{target}"
         enable_sign_in_token_auth_user_html: "%{name} 已为 %{target} 启用电子邮件令牌认证"
         enable_user_html: "%{name} 将用户 %{target} 设置为允许登录"
-        memorialize_account_html: "%{name} 将 %{target} 设置为追悼帐户"
+        memorialize_account_html: "%{name} 将 %{target} 设置为追悼账户"
         promote_user_html: "%{name} 对用户 %{target} 进行了升任操作"
         reject_appeal_html: "%{name} 驳回了 %{target} 对审核结果的申诉"
         reject_user_html: "%{name} 拒绝了用户 %{target} 的注册"
@@ -366,6 +366,8 @@ zh-CN:
       add_new: 允许和域名跨站交互
       created_msg: 域名已被允许跨站交互
       destroyed_msg: 域名已被禁止跨站交互
+      export: 导出
+      import: 导入
       undo: 不允许和该域名跨站交互
     domain_blocks:
       add_new: 添加新屏蔽域名
@@ -375,6 +377,8 @@ zh-CN:
       edit: 编辑域名屏蔽
       existing_domain_block: 您已经对 %{name} 设置了更严格的限制。
       existing_domain_block_html: 你已经对 %{name} 施加了更严格的限制,你需要先 <a href="%{unblock_url}">解封</a>。
+      export: 导出
+      import: 导入
       new:
         create: 添加屏蔽
         hint: 域名屏蔽不会阻止该域名下的帐户进入本站的数据库,但是会对来自这个域名的帐户自动进行预先设置的管理操作。
@@ -384,6 +388,8 @@ zh-CN:
           silence: 隐藏
           suspend: 封禁
         title: 新增域名屏蔽
+      no_domain_block_selected: 由于没有选中,域名列表没有被改变。
+      not_permitted: 你没有权限进行此操作
       obfuscate: 混淆域名
       obfuscate_hint: 如果启用了域名列表公开限制,就部分混淆列表中的域名
       private_comment: 私密评论
@@ -414,6 +420,20 @@ zh-CN:
       resolved_dns_records_hint_html: 该域名解析的 MX 记录所指向的域名如下,这些域名被用于接收电子邮件。 即使电子邮件地址域名与 MX 域名不同,屏蔽一个 MX 域名意味着阻止任何使用相同 MX 域名的电子邮件地址注册本站账户。 <strong>请小心不要误屏蔽主要的电子邮件提供商。</strong>
       resolved_through_html: 通过 %{domain} 解析
       title: 电子邮件域名屏蔽
+    export_domain_allows:
+      new:
+        title: 导入域名允许列表
+      no_file: 没有选择文件
+    export_domain_blocks:
+      import:
+        description_html: 您即将导入域名列表,如果您不是此域名列表的作者,请仔细检查核对。
+        existing_relationships_warning: 现有的关注关系
+        private_comment_description_html: 为了帮助您追踪域名列表来源,导入的域名列表将被添加如下的私人注释:<q>%{comment}</q>
+        private_comment_template: 从 %{source} 导入 %{date}
+        title: 导入域名列表
+      new:
+        title: 导入域名列表
+      no_file: 没有选择文件
     follow_recommendations:
       description_html: "<strong>“关注推荐”可帮助新用户快速找到有趣的内容</strong>。 当用户与他人的互动不足以形成个性化的建议时,就会推荐关注这些账户。推荐会每日更新,基于选定语言的近期最高互动数和最多本站关注者数综合评估得出。"
       language: 选择语言
@@ -514,7 +534,7 @@ zh-CN:
     relays:
       add_new: 订阅新的中继站
       delete: 删除
-      description_html: "<strong>中继服务器</strong>是一个信息统合服务器,各服务器可以通过订阅中继服务器和向中继服务器推送信息来交换大量公开嘟文。<strong>它可以帮助中小型服务器发现联邦宇宙中的其他服务器的内容</strong>,而无需本站用户手动关注其他远程服务器上的用户。"
+      description_html: "<strong>中继服务器</strong>是一个信息统合服务器,各服务器可以通过订阅中继服务器和向中继服务器推送信息来大量交换公开嘟文。<strong>它可以帮助中小型服务器发现联邦宇宙中的其他服务器的内容</strong>,而无需本站用户手动关注其他远程服务器上的用户。"
       disable: 禁用
       disabled: 已禁用
       enable: 启用
@@ -616,33 +636,33 @@ zh-CN:
         manage_announcements: 管理公告
         manage_announcements_description: 允许用户管理服务器上的通知
         manage_appeals: 管理申诉
-        manage_appeals_description: 允许用户审查对适度动作的上诉
-        manage_blocks: 管理版块
+        manage_appeals_description: 允许用户审阅针对管理操作的申诉
+        manage_blocks: 管理地址段
         manage_blocks_description: 允许用户屏蔽电子邮件提供商和IP地址
         manage_custom_emojis: 管理自定义表情
         manage_custom_emojis_description: 允许用户管理服务器上的自定义表情
-        manage_federation: 管理联邦
-        manage_federation_description: 允许用户阻止或允许使用其他域切换并控制可交付性
+        manage_federation: 管理邦联
+        manage_federation_description: 允许用户屏蔽或允许同其他域名的邦联,并控制消息投递能力
         manage_invites: 管理邀请
         manage_invites_description: 允许用户浏览和停用邀请链接
-        manage_reports: 管理报告
-        manage_reports_description: 允许用户查看报告并对其执行审核操作
+        manage_reports: 管理举报
+        manage_reports_description: 允许用户审核举报并执行管理操作
         manage_roles: 管理角色
         manage_roles_description: 允许用户管理和分配比他们权限低的角色
         manage_rules: 管理规则
         manage_rules_description: 允许用户更改服务器规则
         manage_settings: 管理设置
         manage_settings_description: 允许用户更改站点设置
-        manage_taxonomies: 管理分类法
+        manage_taxonomies: 管理分类
         manage_taxonomies_description: 允许用户查看热门内容并更新标签设置
         manage_user_access: 管理访问
         manage_user_access_description: 允许用户禁用其他用户的双重身份验证, 更改他们的电子邮件地址, 并重置他们的密码
         manage_users: 管理用户
-        manage_users_description: 允许用户查看其他用户信息并对他们执行审核操作
-        manage_webhooks: 管理网钩
-        manage_webhooks_description: 允许用户为管理事件设置网钩
+        manage_users_description: 允许用户查看其他用户的信息并执行管理操作
+        manage_webhooks: 管理 Webhooks
+        manage_webhooks_description: 允许用户为管理事件配置 Webhook
         view_audit_log: 查看审核日志
-        view_audit_log_description: 允许用户在服务器上查看管理操作历史
+        view_audit_log_description: 允许用户查看此服务器上的管理操作记录
         view_dashboard: 查看仪表板
         view_dashboard_description: 允许用户访问仪表盘和各种指标
         view_devops: 开发运维
@@ -702,7 +722,7 @@ zh-CN:
         remove_from_report: 从报告中移除
         report: 举报
       deleted: 已删除
-      favourites: 收藏
+      favourites: 喜欢
       history: 版本历史记录
       in_reply_to: 回复给
       language: 语言
@@ -813,24 +833,24 @@ zh-CN:
       empty: 你尚未定义任何警告预设。
       title: 管理预设警告
     webhooks:
-      add_new: 端点
+      add_new: 新增对端
       delete: 删除
-      description_html: "<strong>webhook</strong> 使Mastodon能够推送 <strong>关于所选事件的实时通知</strong> 到您自己的应用程序。 所以您的应用程序可以自动触发反应 <strong></strong>。"
+      description_html: "<strong>Webhook</strong> 使 Mastodon 能够推送 <strong>关于所选事件的实时通知</strong> 到你自己的应用程序,进而由你的应用程序<strong>自动触发反应</strong>。"
       disable: 禁用
       disabled: 已禁用
-      edit: 编辑端点
-      empty: 您尚未配置任何Web 钩子端点。
+      edit: 编辑对端
+      empty: 你尚未配置任何 Webhook 对端。
       enable: 启用
       enabled: 活跃
       enabled_events:
         other: "%{count} 启用的事件"
       events: 事件
-      new: 新建网钩
-      rotate_secret: 旋转密钥
+      new: 新建 Webhook
+      rotate_secret: 轮换密钥
       secret: 签名密钥
       status: 状态
-      title: 网钩
-      webhook: 网钩
+      title: Webhooks
+      webhook: Webhook
   admin_mailer:
     new_appeal:
       actions:
@@ -896,7 +916,7 @@ zh-CN:
     warning: 一定小心,千万不要把它分享给任何人!
     your_token: 你的访问令牌
   auth:
-    apply_for_account: 前往申请
+    apply_for_account: 申请账号
     change_password: 密码
     delete_account: 删除帐户
     delete_account_html: 如果你想删除你的帐户,请<a href="%{path}">点击这里继续</a>。你需要确认你的操作。
@@ -913,7 +933,7 @@ zh-CN:
     log_in_with: 通过外部服务登录
     login: 登录
     logout: 登出
-    migrate_account: 迁移到另一个帐户
+    migrate_account: 迁移到另一个账户
     migrate_account_html: 如果你希望引导他人关注另一个账号,请<a href="%{path}">点击这里进行设置</a>。
     or_log_in_with: 或通过外部服务登录
     privacy_policy_agreement_html: 我已阅读并同意 <a href="%{privacy_policy_path}" target="_blank">隐私政策</a>
@@ -937,7 +957,7 @@ zh-CN:
       preamble: 使用此 Mastodon 服务器上的帐号,您将能够关注网络上的任何其他人,无论他们的帐号托管在哪里的主机。
       title: 让我们在 %{domain} 上开始。
     status:
-      account_status: 帐户状态
+      account_status: 账户状态
       confirming: 等待电子邮件确认完成。
       functional: 你的账号可以正常使用了。
       pending: 工作人员正在审核你的申请。这需要花点时间。在申请被批准后,你将收到一封电子邮件。
@@ -988,8 +1008,8 @@ zh-CN:
     challenge_not_passed: 你输入的信息不正确
     confirm_password: 输入你当前的密码来验证身份
     confirm_username: 输入你的用户名以继续
-    proceed: 删除帐户
-    success_msg: 你的帐户已经成功删除
+    proceed: 删除账户
+    success_msg: 你的账户已成功删除
     warning:
       before: 在删除前,请仔细阅读下列说明:
       caches: 已被其他服务器缓存的内容可能还会保留
@@ -1014,7 +1034,7 @@ zh-CN:
       approve_appeal: 批准申诉
       associated_report: 相关举报
       created_at: 日期
-      description_html: 这些是针对您的帐户采取的行动和警告,已经由 %{instance} 的工作人员发送给您。
+      description_html: 这些是针对您的账户采取的行动和警告,已经由 %{instance} 的工作人员发送给您。
       recipient: 发送至
       reject_appeal: 驳回申诉
       status: '嘟文 #%{id}'
@@ -1055,7 +1075,7 @@ zh-CN:
     archive_takeout:
       date: 日期
       download: 下载你的存档
-      hint_html: 你可以请求一份帐户数据存档,其中包含你的<strong>嘟文和已上传的媒体文件</strong>。导出的数据为 ActivityPub 格式,因而可以被兼容的软件读取。每次允许请求存档的间隔至少为 7 天。
+      hint_html: 你可以请求一份账户数据存档,其中包含你的<strong>嘟文和已上传的媒体文件</strong>。导出的数据为 ActivityPub 格式,因而可以被兼容的软件读取。每次允许请求存档的间隔至少为 7 天。
       in_progress: 正在准备你的存档……
       request: 请求你的存档
       size: 大小
@@ -1134,6 +1154,7 @@ zh-CN:
     invalid_markup: '包含无效的 HTML 标记: %{error}'
   imports:
     errors:
+      invalid_csv_file: '无效的 CSV 文件。错误: %{error}'
       over_rows_processing_limit: 包含行数超过了 %{count}
     modes:
       merge: 合并
@@ -1190,18 +1211,18 @@ zh-CN:
       not_ready: 不能附加还在处理中的文件。请稍后再试!
       too_many: 最多只能添加 4 张图片
   migrations:
-    acct: 新帐户的 用户名@域名
+    acct: 新账户的 用户名@域名
     cancel: 取消跳转
     cancel_explanation: 取消跳转将会重新激活你当前的账号,但是已经迁移到新账号的关注者不会回来。
     cancelled_msg: 成功取消跳转
     errors:
       already_moved: 和你已经迁移过的账号相同
       missing_also_known_as: 没有引用此账号
-      move_to_self: 不能是当前帐户
+      move_to_self: 不能是当前账户
       not_found: 找不到
       on_cooldown: 你正处于冷却状态
     followers_count: 迁移时的关注者
-    incoming_migrations: 从其它账号迁移
+    incoming_migrations: 从其它账号迁入
     incoming_migrations_html: 要把另一个账号移动到本账号,首先你需要<a href="%{path}">创建一个账号别名</a> 。
     moved_msg: 你的账号现在会跳转到 %{acct} ,同时关注者也会一并迁移 。
     not_redirecting: 你的账号当前未跳转到其它账号。
@@ -1231,7 +1252,7 @@ zh-CN:
   notification_mailer:
     admin:
       report:
-        subject: "%{name} 提交了报告"
+        subject: "%{name} 提交了举报"
       sign_up:
         subject: "%{name} 注册了"
     favourite:
@@ -1327,9 +1348,9 @@ zh-CN:
     remove_selected_domains: 从选定的域名中删除所有关注者
     remove_selected_followers: 移除选中的关注者
     remove_selected_follows: 取消关注所选用户
-    status: 帐户状态
+    status: 账户状态
   remote_follow:
-    missing_resource: 无法确定你的帐户的跳转 URL
+    missing_resource: 无法确定你的账户的跳转 URL
   reports:
     errors:
       invalid_rules: 没有引用有效的规则
@@ -1365,7 +1386,7 @@ zh-CN:
       weibo: 新浪微博
     current_session: 当前会话
     description: "%{platform} 上的 %{browser}"
-    explanation: 你的 Mastodon 帐户目前已在这些浏览器上登录。
+    explanation: 你的 Mastodon 账户目前已在这些浏览器上登录。
     ip: IP 地址
     platforms:
       adobe_air: Adobe Air
@@ -1386,19 +1407,19 @@ zh-CN:
     view_authentication_history: 查看账户的认证历史
   settings:
     account: 账号
-    account_settings: 帐户设置
+    account_settings: 账户设置
     aliases: 账号别名
     appearance: 外观
     authorized_apps: 已授权的应用
     back: 返回 Mastodon
-    delete: 删除帐户
+    delete: 删除账户
     development: 开发
     edit_profile: 更改个人资料
     export: 导出
     featured_tags: 精选的话题标签
     import: 导入
     import_and_export: 导入和导出
-    migrate: 帐户迁移
+    migrate: 账户迁移
     notifications: 通知
     preferences: 首选项
     profile: 个人资料
@@ -1453,7 +1474,7 @@ zh-CN:
       unlisted_long: 所有人可见,但不会出现在公共时间轴上
   statuses_cleanup:
     enabled: 自动删除旧嘟文
-    enabled_hint: 当您的嘟文达到指定的过期时间后自动删除,除非它们与下面的例外之一相匹配
+    enabled_hint: 达到指定过期时间后自动删除您的嘟文,除非满足下列条件之一
     exceptions: 例外
     explanation: 删除嘟文是一个消耗系统资源的耗时操作,所以这个操作会在服务器空闲时完成。因此,您的嘟文可能会在达到过期阈值之后一段时间才会被删除。
     ignore_favs: 取消喜欢
@@ -1512,12 +1533,12 @@ zh-CN:
     enabled: 双重认证已启用
     enabled_success: 双重认证启用成功
     generate_recovery_codes: 生成恢复代码
-    lost_recovery_codes: 如果你的手机不慎丢失,你可以使用恢复代码来重新获得对帐户的访问权。如果你遗失了恢复代码,可以在此处重新生成。之前使用的恢复代码将会失效。
+    lost_recovery_codes: 如果你的手机不慎丢失,你可以使用恢复代码来重新获得对账户的访问权。如果你遗失了恢复代码,可以在此处重新生成。之前使用的恢复代码将会失效。
     methods: 双重认证
     otp: 身份验证应用
     recovery_codes: 备份恢复代码
     recovery_codes_regenerated: 恢复代码重新生成成功
-    recovery_instructions_html: 如果你的手机无法使用,你可以使用下列任意一个恢复代码来重新获得对帐户的访问权。<strong>请妥善保管好你的恢复代码</strong>(例如,你可以将它们打印出来,然后和其他重要的文件放在一起)。
+    recovery_instructions_html: 如果你的手机无法使用,你可以使用下列任意一个恢复代码来重新获得对账户的访问权。<strong>请妥善保管好你的恢复代码</strong>(例如,你可以将它们打印出来,然后和其他重要的文件放在一起)。
     webauthn: 安全密钥
   user_mailer:
     appeal_approved:
@@ -1530,7 +1551,7 @@ zh-CN:
       subject: 你于 %{date} 提出的申诉已被驳回
       title: 申诉已驳回
     backup_ready:
-      explanation: 你请求了一份 Mastodon 帐户的完整备份。现在你可以下载了!
+      explanation: 你请求了一份 Mastodon 账户的完整备份。现在你可以下载了!
       subject: 你的存档已经准备完毕
       title: 存档导出
     suspicious_sign_in:
@@ -1548,11 +1569,11 @@ zh-CN:
         violation: 内容违反了以下社区准则
       explanation:
         delete_statuses: 你的一些嘟文被发现违反了一条或多条社区准则,并已被 %{instance} 的监察员删除。
-        disable: 你不能再使用你的帐户,但你的个人资料和其他数据保持不变。你可以请求数据备份,更改账户设置或删除账户。
+        disable: 你不能再使用你的账户,但你的个人资料和其他数据保持不变。你可以请求数据备份,更改账户设置或删除账户。
         mark_statuses_as_sensitive: 你的一些嘟文已经被 %{instance} 检察员标记为敏感内容。这意味着别人需要在嘟文中点击媒体,才能显示媒体预览。你可以在今后发嘟时自行将媒体标记为敏感内容。
         sensitive: 即刻起,你上传的所有媒体文件都将被标记为敏感内容并隐藏,在点击警告后才能查看。
         silence: 你可以继续使用你的账号,但只有已关注你的人才能在看到你在此服务器上的嘟文,并且你会被排除在各类公共列表之外。其他用户仍可以手动关注你。
-        suspend: 你不能再使用你的帐户,并且你的个人资料和其他数据都将无法访问。在大约30天内,你仍可以登录并请求数据备份,之后相关数据将被完全删除。我们会保留一些基础数据以避免封禁失效。
+        suspend: 你不能再使用你的账户,并且你的个人资料和其他数据都将无法访问。在大约30天内,你仍可以登录并请求数据备份,之后相关数据将被完全删除。我们会保留一些基础数据以避免封禁失效。
       reason: 理由:
       statuses: 被引用的嘟文:
       subject:
@@ -1586,7 +1607,7 @@ zh-CN:
     invalid_otp_token: 输入的双重认证代码无效
     otp_lost_help_html: 如果你不慎丢失了所有的代码,请联系 %{email} 寻求帮助
     seamless_external_login: 因为你是通过外部服务登录的,所以密码和电子邮件地址设置都不可用。
-    signed_in_as: 当前登录的帐户:
+    signed_in_as: 当前登录的账户:
   verification:
     explanation_html: 你可以 <strong>验证自己是个人资料元数据中的某个链接的所有者</strong>。 为此,被链接网站必须包含一个到你的 Mastodon 主页的链接。链接中 <strong>必须</strong> 包括 <code>rel="me"</code> 属性。链接的文本内容可以随意填写。例如:
     verification: 验证
diff --git a/config/locales/zh-HK.yml b/config/locales/zh-HK.yml
index 92489882d..6356485c4 100644
--- a/config/locales/zh-HK.yml
+++ b/config/locales/zh-HK.yml
@@ -5,6 +5,7 @@ zh-HK:
     contact_missing: 未設定
     contact_unavailable: 不適用
     hosted_on: 在 %{domain} 運作的 Mastodon 伺服器
+    title: 關於
   accounts:
     follow: 關注
     followers:
@@ -35,14 +36,21 @@ zh-HK:
       avatar: 頭像
       by_domain: 域名
       change_email:
+        changed_msg: 成功更改電郵!
         current_email: 現時電郵
         label: 更改電郵
         new_email: 新的電郵
         submit: 改變電郵
         title: 改變 %{username} 的電郵
+      change_role:
+        changed_msg: 成功更改身份!
+        label: 變更身份
+        no_role: 沒有身份
+        title: 更改 %{username} 身份
       confirm: 確定
       confirmed: 已確定
       confirming: 確定
+      custom: 自訂
       delete: 刪除資料
       deleted: 已刪除
       demote: 降權
@@ -82,6 +90,7 @@ zh-HK:
         active: 活躍
         all: 全部
         pending: 處理中
+        silenced: 受限
         suspended: 已停權
         title: 管理操作
       moderation_notes: 管理備註
@@ -89,9 +98,13 @@ zh-HK:
       most_recent_ip: 最近的 IP 位址
       no_account_selected: 因未選擇帳號而未有任何變更
       no_limits_imposed: 未受限制
+      no_role_assigned: 未指派身份
       not_subscribed: 未訂閱
       pending: 等待審核中
       perform_full_suspension: 已停權
+      previous_strikes: 過往警告
+      previous_strikes_description_html:
+        other: 此帳號有 <strong>%{count}</strong> 次警告紀錄。
       promote: 提升權限
       protocol: 協議
       public: 公開
@@ -111,6 +124,7 @@ zh-HK:
       reset: 重設
       reset_password: 重設密碼
       resubscribe: 重新訂閱
+      role: 身份
       search: 搜尋
       search_same_email_domain: 其他有相同電郵網域的使用者
       search_same_ip: 其他有相同 IP 位址的使用者
@@ -126,11 +140,15 @@ zh-HK:
       silence: 靜音
       silenced: 已靜音
       statuses: 文章
+      strikes: 過往警告
       subscribe: 訂閱
+      suspend: 停權
       suspended: 已停權
       suspension_irreversible: 已永久刪除此帳號的數據。你可以取消此帳號的停權狀態,但帳號的資料已被永久刪除。
       suspension_reversible_hint_html: 此帳戶已被停權及所有數據將會於 %{date} 被刪除。在此之前,你仍可以完全回復帳號。如果你想即時刪除此帳戶的資料,可以在下面進行操作。
       title: 帳號
+      unblock_email: 解除封鎖電郵地址
+      unblocked_email_msg: 成功解除封鎖 %{username} 的電郵地址
       unconfirmed_email: 未確認的電郵
       undo_sensitized: 取消敏感狀態
       undo_silenced: 解除靜音
@@ -145,26 +163,34 @@ zh-HK:
       whitelisted: 容許互傳文章
     action_logs:
       action_types:
+        approve_appeal: 批准申訴
+        approve_user: 批准使用者
         assigned_to_self_report: 指派舉報
         change_email_user: 更改使用者的電郵
+        change_role_user: 更改使用者身份
         confirm_user: 確認使用者
         create_account_warning: 新增警告
         create_announcement: 建立公告
+        create_canonical_email_block: 建立電郵封鎖
         create_custom_emoji: 新增自訂的 Emoji
         create_domain_allow: 新增允許的域名
         create_domain_block: 封鎖域名
         create_email_domain_block: 封鎖電郵域名
         create_ip_block: 新增IP規則
         create_unavailable_domain: 創建無效域名
+        create_user_role: 新增身份
         demote_user: 將帳號降級
         destroy_announcement: 刪除公告
+        destroy_canonical_email_block: 刪除電郵封鎖
         destroy_custom_emoji: 刪除自定的 Emoji 表情符號
         destroy_domain_allow: 刪除允許的域名
         destroy_domain_block: 刪除已封鎖的域名
         destroy_email_domain_block: 刪除已封鎖的電郵城名
+        destroy_instance: 清除網域
         destroy_ip_block: 刪除 IP 規則
         destroy_status: 刪除文章
         destroy_unavailable_domain: 刪除無效域名
+        destroy_user_role: 刪除身份
         disable_2fa_user: 停用兩步驟驗證
         disable_custom_emoji: 停用自定的 Emoji 表情符號
         disable_sign_in_token_auth_user: 停用該使用者之 e-mail 驗證碼
@@ -174,41 +200,56 @@ zh-HK:
         enable_user: 啟用帳號
         memorialize_account: 把帳號設定為悼念帳號
         promote_user: 提升帳號權限
+        reject_appeal: 駁回申訴
+        reject_user: 拒絕使用者
         remove_avatar_user: 刪除頭像
         reopen_report: 重開舉報個案
+        resend_user: 重寄確認郵件
         reset_password_user: 重設密碼
         resolve_report: 解決舉報個案
         sensitive_account: 把你的帳號的媒體設定為敏感內容
         silence_account: 把帳號靜音
         suspend_account: 把帳號停權
         unassigned_report: 取消指派舉報
+        unblock_email_account: 解除封鎖電郵地址
         unsensitive_account: 取消把你帳號的媒體設定為敏感內容
         unsilence_account: 取消帳號的靜音狀態
         unsuspend_account: 取消帳號的停權狀態
         update_announcement: 更新公告
         update_custom_emoji: 更新自定的 Emoji 表情符號
         update_domain_block: 更新域名阻隔
+        update_ip_block: 更新 IP 規則
         update_status: 更新文章
+        update_user_role: 更新身份
       actions:
+        approve_appeal_html: "%{name} 批准了 %{target} 的審核裁決申訴"
+        approve_user_html: "%{name} 批准了 %{target} 的註冊"
         assigned_to_self_report_html: "%{name} 指派了 %{target} 的檢舉給自己"
         change_email_user_html: "%{name} 更改了使用者 %{target} 的 e-mail 地址"
+        change_role_user_html: "%{name} 更改了 %{target} 的身份"
         confirm_user_html: "%{name} 已確認使用者 %{target} 的 e-mail 地址"
         create_account_warning_html: "%{name} 已警告了 %{target}"
         create_announcement_html: "%{name} 新增了公告 %{target}"
+        create_canonical_email_block_html: "%{name} 封鎖了 hash 為 %{target} 的電郵"
         create_custom_emoji_html: "%{name} 加入了新的 Emoji %{target}"
         create_domain_allow_html: "%{name} 允許網域 %{target} 加入聯邦宇宙"
         create_domain_block_html: "%{name} 封鎖了網域 %{target}"
         create_email_domain_block_html: "%{name} 封鎖了 e-mail 網域 %{target}"
         create_ip_block_html: "%{name} 已經設定了針對 IP %{target} 的規則"
         create_unavailable_domain_html: "%{name} 停止了對網域 %{target} 的更新通知"
+        create_user_role_html: "%{name} 建立了 %{target} 身份"
         demote_user_html: "%{name} 降權了 %{target}"
         destroy_announcement_html: "%{name} 刪除了公告 %{target}"
+        destroy_canonical_email_block_html: "%{name} 解除封鎖了 hash 為 %{target} 的電郵"
+        destroy_custom_emoji_html: "%{name} 刪除了 %{target} emoji"
         destroy_domain_allow_html: "%{name} 禁止網域 %{target} 加入聯邦宇宙"
         destroy_domain_block_html: "%{name} 封鎖了網域 %{target}"
         destroy_email_domain_block_html: "%{name} 解除封鎖 e-mail 網域 %{target}"
+        destroy_instance_html: "%{name} 清除了網域 %{target}"
         destroy_ip_block_html: "%{name} 已經刪除了 IP %{target} 的規則"
         destroy_status_html: "%{name} 刪除了 %{target} 的嘟文"
         destroy_unavailable_domain_html: "%{name} 恢復了對網域 %{target} 的更新通知"
+        destroy_user_role_html: "%{name} 刪除了 %{target} 身份"
         disable_2fa_user_html: "%{name} 停用了使用者 %{target} 的雙重認證"
         disable_custom_emoji_html: "%{name} 停用了 Emoji %{target}"
         disable_sign_in_token_auth_user_html: "%{name} 停用了使用者 %{target} 的 e-mail 驗證碼"
@@ -218,21 +259,28 @@ zh-HK:
         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} 的檢舉案例"
+        resend_user_html: "%{name} 重發確認電郵給 %{target}"
         reset_password_user_html: "%{name} 重設了使用者 %{target} 的密碼"
         resolve_report_html: "%{name} 處理了 %{target} 的檢舉案例"
         sensitive_account_html: "%{name} 將 %{target} 的媒體標記為敏感內容"
         silence_account_html: "%{name} 限制了帳號 %{target}"
         suspend_account_html: "%{name} 將帳號 %{target} 停權"
         unassigned_report_html: "%{name} 取消指派 %{target} 的檢舉"
+        unblock_email_account_html: "%{name} 解除封鎖 %{target} 的電郵地址"
         unsensitive_account_html: "%{name} 將 %{target} 的媒體取消標記為敏感內容"
         unsilence_account_html: "%{name} 取消了用戶 %{target} 的限制狀態"
         unsuspend_account_html: "%{name} 將帳號 %{target} 解除停權"
         update_announcement_html: "%{name} 更新了公告 %{target}"
         update_custom_emoji_html: "%{name} 更新了 Emoji 表情符號 %{target}"
         update_domain_block_html: "%{name} 更新了對 %{target} 的網域封鎖"
+        update_ip_block_html: "%{name} 更改了 IP %{target} 的規則"
         update_status_html: "%{name} 更新了 %{target} 的嘟文"
+        update_user_role_html: "%{name} 更改了 %{target} 身份"
+      deleted_account: 刪除帳號
       empty: 找不到任何日誌。
       filter_by_action: 按動作篩選
       filter_by_user: 按帳號篩選
@@ -271,10 +319,12 @@ zh-HK:
       enable: 啟用
       enabled: 已啟用
       enabled_msg: 已啟用表情符號
+      image_hint: 最大為 %{size} 的 PNG 或 GIF
       list: 列出
       listed: 已列出
       new:
         title: 加入新的自訂 Emoji 表情符號
+      no_emoji_selected: 未選取任何 emoji,因此沒有變更
       not_permitted: 你無權執行此操作
       overwrite: 覆蓋
       shortcode: 短代碼
@@ -287,13 +337,37 @@ zh-HK:
       updated_msg: 已更新表情符號
       upload: 上傳新的表情符號
     dashboard:
+      active_users: 活躍使用者
+      interactions: 互動
+      media_storage: 媒體儲存空間
+      new_users: 新使用者
+      opened_reports: 新檢舉
+      pending_appeals_html:
+        other: "<strong>%{count}</strong> 個待處理申訴"
+      pending_reports_html:
+        other: "<strong>%{count}</strong> 待處理檢舉"
+      pending_tags_html:
+        other: "<strong>%{count}</strong> 個待處理標籤"
+      pending_users_html:
+        other: "<strong>%{count}</strong> 待處理使用者"
+      resolved_reports: 已解決檢舉
       software: 軟件
+      sources: 註冊來源
       space: 儲存空間用量
       title: 儀表板
+      top_languages: 最活躍語言
+      top_servers: 最活躍伺服器
+      website: 網站
+    disputes:
+      appeals:
+        empty: 找不到申訴。
+        title: 申訴
     domain_allows:
       add_new: 將網域加入白名單
       created_msg: 網域已成功加入白名單
       destroyed_msg: 網域已成功從白名單移除
+      export: 匯出
+      import: 匯入
       undo: 從白名單移除
     domain_blocks:
       add_new: 新增域名阻隔規則
@@ -301,16 +375,21 @@ zh-HK:
       destroyed_msg: 已撤銷域名阻隔
       domain: 域名阻隔
       edit: 更改域名阻隔
+      existing_domain_block: 你已對 %{name} 施加了更嚴格的限制。
       existing_domain_block_html: 你已經對 %{name} 施加了更嚴格的限制,你需要先對他<a href="%{unblock_url}">取消封鎖</a>。
+      export: 匯出
+      import: 匯入
       new:
         create: 新增域名阻隔
         hint: "「域名阻隔」不會隔絕該域名帳號進入本站資料庫,但是會在符合條件的帳號進入資料庫後,自動對它們套用特定審批操作。"
         severity:
-          desc_html: "「<strong>自動靜音</strong>」令該域名下帳號的文章,被設為只對關注者顯示,沒有關注的人會看不到。 「<strong>自動刪除</strong>」會刪除將該域名下用戶的文章、媒體檔案和個人資料。「<strong>無</strong>」則會拒絕接收來自該域名的媒體檔案。"
+          desc_html: "<strong>限制</strong>將使沒有追蹤該網域帳號的人看不到他們的帖文。<strong>停權</strong>將從你的伺服器中,刪除此網域帳號的所有內容、媒體和個人檔案資料。如果你只想拒絕接收媒體檔案,請選擇<strong>無</strong>。"
           noop: 無
-          silence: 自動靜音
+          silence: 限制
           suspend: 自動刪除
         title: 新增域名阻隔
+      no_domain_block_selected: 未選取任何網域限制,因此並未變更
+      not_permitted: 你無權執行此操作
       obfuscate: 混淆域名名稱
       obfuscate_hint: 如果已經啟用了網域廣告列表限制,在列表部份混淆網域名稱
       private_comment: 私人留言
@@ -325,13 +404,36 @@ zh-HK:
       view: 顯示正被阻隔的網域
     email_domain_blocks:
       add_new: 新增
+      attempts_over_week:
+        other: 上週嘗試了註冊 %{count} 次
       created_msg: 已新增電郵網域阻隔
       delete: 刪除
+      dns:
+        types:
+          mx: MX 紀錄
       domain: 網域
       new:
         create: 新增網域
+        resolve: 解析網域
         title: 新增電郵網域阻隔
+      no_email_domain_block_selected: 未選取任何電郵網域限制,因此並未變更
+      resolved_dns_records_hint_html: 域名解析為以下 MX 網域,這些網域主要用來接收電子郵件。封鎖一個 MX 網域,即使域名看起來不同,也會阻止任何用相同 MX 網域的電郵地址進行註冊。<strong>注意不要封鎖主要的電子郵件供應商。</strong>
+      resolved_through_html: 透過 %{domain} 解析
       title: 電郵網域阻隔
+    export_domain_allows:
+      new:
+        title: 匯入允許的網域
+      no_file: 未選擇檔案
+    export_domain_blocks:
+      import:
+        description_html: 你即將匯入網域封鎖列表。請審慎檢查,尤其是如果你並非親自編纂的。
+        existing_relationships_warning: 現存追蹤關係
+        private_comment_description_html: 為了幫助你追蹤匯入封鎖的源頭,匯入的封鎖會在建立時將會有以下的私密備註:<q>%{comment}</q>
+        private_comment_template: 於 %{date} 從 %{source} 匯入
+        title: 匯入封鎖的網域
+      new:
+        title: 匯入封鎖的網域
+      no_file: 未選擇檔案
     follow_recommendations:
       description_html: "<strong>跟隨建議幫助新使用者快速找到有趣內容。</strong> 當使用者尚未和其他帳號足夠多的互動以產生個人化建議時,以下帳號將被推荐。這些是一句指定語言的近期參與度和本地粉絲數最高之帳戶組合每日重新計算。"
       language: 按語言
@@ -341,32 +443,69 @@ zh-HK:
       title: 跟隨建議
       unsuppress: 還原跟隨建議
     instances:
+      availability:
+        description_html:
+          other: 如果分別在 <strong>%{count} 天</strong>裏均無法成功遞送到網域處,除非<em>從</em>網域收到遞送,否則將不會再次嘗試。
+        failure_threshold_reached: 於 %{date} 達到錯誤閥值。
+        failures_recorded:
+          other: 分別在 %{count} 天嘗試錯誤。
+        no_failures_recorded: 沒有錯誤紀錄。
+        title: 可用性
+        warning: 最後一次嘗試連接該伺服器並不成功
       back_to_all: 全部
       back_to_limited: 已靜音
       back_to_warning: 警告
       by_domain: 域名
+      confirm_purge: 你確定要永久刪除這個網域的資料嗎?
+      content_policies:
+        comment: 內部備註
+        description_html: 你可以自行制訂內容政策,政策將用於此網域和其子網域的所有帳號。
+        policies:
+          reject_media: 拒絕接收媒體
+          reject_reports: 拒絕檢舉
+          silence: 限制
+          suspend: 停權
+        policy: 政策
+        reason: 公眾理由
+        title: 內容政策
+      dashboard:
+        instance_accounts_dimension: 最多人追蹤的帳號
+        instance_accounts_measure: 已儲存帳號
+        instance_followers_measure: 我們那邊的追蹤者
+        instance_follows_measure: 他們這邊的追蹤者
+        instance_languages_dimension: 熱門語言
+        instance_media_attachments_measure: 已儲存媒體附件
+        instance_reports_measure: 關於他們的檢舉
+        instance_statuses_measure: 已儲存帖文
       delivery:
         all: 全部
         clear: 清除遞送錯誤
+        failing: 失敗
         restart: 重新啟動遞送
         stop: 停止遞送
         unavailable: 離線
       delivery_available: 可傳送
       delivery_error_days: 遞送失敗天數
       delivery_error_hint: 若 %{count} 天皆無法達成遞送,將會被自動標記為離線。
+      destroyed_msg: 來自 %{domain} 的資料正在排隊等待被即將刪除。
       empty: 找不到域名。
+      known_accounts:
+        other: "%{count} 個已知帳號"
       moderation:
         all: 全部
         limited: 限制
         title: 版主
       private_comment: 私人留言
       public_comment: 公開留言
+      purge: 清除
+      purge_description_html: 如果你認為此網域永久處於離線狀態,你可以從儲存空間中刪除該網域的所有帳號紀錄和相關資料。這可能需要一段時間。
       title: 已知服務站
       total_blocked_by_us: 被我們封鎖
       total_followed_by_them: 被他們關注
       total_followed_by_us: 被我們關注
       total_reported: 關於他們的舉報
       total_storage: 媒體附件
+      totals_time_period_hint_html: 下面顯示的總數包括所有時間的數據。
     invites:
       deactivate_all: 全部停用
       filter:
@@ -411,40 +550,124 @@ zh-HK:
     report_notes:
       created_msg: 舉報備註已建立!
       destroyed_msg: 舉報備註已刪除!
+      today_at: 今天 %{time}
     reports:
       account:
         notes:
           other: "%{count} 則備註"
+      action_log: 審核日誌
       action_taken_by: 操作執行者
+      actions:
+        delete_description_html: 被檢舉的帖文將被刪除,並記錄一次警告,以便日後加快處理同一帳號的違規行為。
+        mark_as_sensitive_description_html: 被檢舉的帖文中的媒體會被標記為敏感內容,並記錄一次警告,以便日後加快處理同一帳號的違規行為。
+        other_description_html: 查看更多控制帳號行為,以及自訂與被檢舉帳號溝通的選項。
+        resolve_description_html: 不會對被檢舉的帳號採取任何動作,也不會記錄警告,檢舉報告將會結案。
+        silence_description_html: 此個人檔案將會只有追蹤者和透過手動搜尋才可以看見,大幅限制了它的曝光。你可隨時恢復它。
+        suspend_description_html: 直到最後刪除之前,此個人檔案及其內容將無法被存取。你將無法與此帳號互動。這動作可以在 30 天內還原。
+      actions_description_html: 決定對此檢舉採取哪種措施。如果對被檢舉帳號採取懲罰措施,除非選取了<strong>垃圾訊息</strong>分類,否則將向他們發送一封電郵通知。
+      add_to_report: 加入更多到檢舉
       are_you_sure: 你確認嗎?
       assign_to_self: 指派給自己
       assigned: 指派版主
       by_target_domain: 被舉報帳號的域名
+      category: 分類
+      category_description_html: 此帳號及/或內容被檢舉的原因,將會被引用在與被檢舉帳號的通訊中。
       comment:
         none: 沒有
+      comment_description_html: 為了提供更多資訊,%{name} 寫道:
       created_at: 日期
+      delete_and_resolve: 刪除帖文
       forwarded: 已轉寄
       forwarded_to: 已轉寄到 %{domain}
       mark_as_resolved: 標示為「已處理」
+      mark_as_sensitive: 標記為敏感內容
       mark_as_unresolved: 標示為「未處理」
+      no_one_assigned: 沒有人
       notes:
         create: 建立備註
         create_and_resolve: 標示為「已處理」並留下備註
         create_and_unresolve: 標示為「未處理」並留下備註
         delete: 刪除
         placeholder: 記錄已執行的動作,或其他相關的更新……
+        title: 筆記
+      notes_description_html: 查看並給其他管理員和日後的自己留下筆記
+      quick_actions_description_html: 採取快捷操作或向下捲動以查看檢舉內容:
+      remote_user_placeholder: 來自 %{instance} 的遠端使用者
       reopen: 重開舉報個案
       report: '舉報 #%{id}'
       reported_account: 舉報用戶
       reported_by: 舉報者
       resolved: 已處理
       resolved_msg: 舉報個案已被處理!
+      skip_to_actions: 跳到行動
       status: 狀態
+      statuses: 被檢舉的內容
+      statuses_description_html: 違規內容將被引用在被檢舉帳號的通訊中
       target_origin: 被檢舉帳號來源
       title: 舉報
       unassign: 取消指派
       unresolved: 未處理
       updated_at: 更新
+      view_profile: 查看個人檔案
+    roles:
+      add_new: 新增身份
+      assigned_users:
+        other: "%{count} 個使用者"
+      categories:
+        administration: 管理
+        devops: DevOps
+        invites: 邀請
+        moderation: 審核
+        special: 特殊
+      delete: 刪除
+      description_html: 透過<strong>使用者身份</strong>,你可以自訂使用者可以存取 Mastodon 的哪些功能和區域。
+      edit: 編輯「%{name}」身份
+      everyone: 預設權限
+      everyone_full_description_html: 這是會影響所有<strong>使用者</strong>的<strong>基本身份</strong>,包括沒有被指派身份的使用者。所有身份都會繼承它的權限。
+      permissions_count:
+        other: "%{count} 個權限"
+      privileges:
+        administrator: 管理員
+        administrator_description: 擁有此權限的使用者將繞過所有權限
+        delete_user_data: 刪除使用者資料
+        delete_user_data_description: 允許使用者立即刪除其他使用者的資料
+        invite_users: 邀請使用者
+        invite_users_description: 允許使用者邀請新人加入伺服器
+        manage_announcements: 管理公告
+        manage_announcements_description: 允許使用者管理伺服器上的公告
+        manage_appeals: 管理申訴
+        manage_appeals_description: 允許使用者查看針對審核的申訴
+        manage_blocks: 管理封鎖
+        manage_blocks_description: 允許使用者封鎖電郵供應商和 IP 地址
+        manage_custom_emojis: 管理自訂表情符號
+        manage_custom_emojis_description: 允許使用者管理伺服器上的自訂表情符號
+        manage_federation: 管理跨站
+        manage_federation_description: 容許使用者封鎖或允許與其他網域跨站,並控制其傳遞能力
+        manage_invites: 管理邀請
+        manage_invites_description: 允許使用者瀏覽與停用邀請連結
+        manage_reports: 管理檢舉
+        manage_reports_description: 允許使用者查閱檢舉報告並對此執行審核動作
+        manage_roles: 管理身份
+        manage_roles_description: 允許使用者管理和指派低於他們自己的身份
+        manage_rules: 管理規則
+        manage_rules_description: 允許使用者變更伺服器規則
+        manage_settings: 管理設定
+        manage_settings_description: 允許使用者變更網站設定
+        manage_taxonomies: 管理分類
+        manage_taxonomies_description: 允許使用者審查熱門內容和更新標籤設定
+        manage_user_access: 管理使用者存取權
+        manage_user_access_description: 允許使用者禁用其他人的雙重認證,變更他們的電郵地址和重設密碼
+        manage_users: 管理使用者
+        manage_users_description: 允許使用者查看其他使用者的詳細資料,並對其進行審核動作
+        manage_webhooks: 管理 Webhooks
+        manage_webhooks_description: 允許使用者為管理事件設置 webhooks
+        view_audit_log: 查看審核日誌
+        view_audit_log_description: 允許使用者查看伺服器的管理動作歷史紀錄
+        view_dashboard: 查看儀表板
+        view_dashboard_description: 允許使用者存取儀表板及各種指標
+        view_devops: DevOps
+        view_devops_description: 允許使用者存取 Sidekiq 及 pgHero 儀表板
+      title: 身份
     rules:
       add_new: 新增規則
       delete: 刪除
@@ -453,29 +676,87 @@ zh-HK:
       empty: 尚未定義伺服器規則
       title: 伺服器守則
     settings:
+      about:
+        manage_rules: 管理伺服器規則
+        preamble: 提供有關如何運作、管理和資助伺服器的詳細資訊。
+        rules_hint: 這是有關你的使用者應遵守的規則的專區。
+        title: 關於
+      appearance:
+        preamble: 自訂 Mastodon 網頁介面。
+        title: 外觀
+      branding:
+        preamble: 你的伺服器的品牌使它與網絡上的其他伺服器區分開來。這些資訊可能會在各種情境下顯示,如 Mastodon 的網頁介面、原生應用程式,以及其他網站和通訊應用程式內的連結預覽等。因此,請盡量保持資訊簡短精煉。
+        title: 品牌
+      content_retention:
+        preamble: 控制使用者生成的內容如何儲存在 Mastodon。
+        title: 內容留存
+      discovery:
+        follow_recommendations: 追蹤建議
+        preamble: 呈現有趣的內容有助於吸引不認識 Mastodon 的使用者新手上路。控制各種探索功能在你的伺服器上的運作方式。
+        profile_directory: 個人檔案目錄
+        public_timelines: 公共時間軸
+        title: 探索
+        trends: 熱門
       domain_blocks:
         all: 給任何人
         disabled: 給沒有人
         users: 所有已登入的帳號
+      registrations:
+        preamble: 控制誰可在你的伺服器上建立帳號。
+        title: 註冊
       registrations_mode:
         modes:
           approved: 註冊需要核准
           none: 沒有人可註冊
           open: 任何人皆能註冊
+      title: 伺服器設定
     site_uploads:
       delete: 刪除上傳的檔案
       destroyed_msg: 成功刪除站台的上傳項目!
     statuses:
+      account: 作者
+      application: 應用程式
       back_to_account: 返回帳戶信息頁
+      back_to_report: 返回檢舉頁面
+      batch:
+        remove_from_report: 從檢舉中移除
+        report: 檢舉
       deleted: 已刪除
+      favourites: 最愛
+      history: 版本紀錄
+      in_reply_to: 正在回覆
+      language: 語言
       media:
         title: 媒體檔案
+      metadata: Metadata
       no_status_selected: 因未選擇嘟文而未變更。
+      open: 公開帖文
+      original_status: 原始帖文
+      reblogs: 轉發
+      status_changed: 帖文已變更
       title: 帳戶文章
+      trending: 熱門
+      visibility: 可見性
       with_media: 含有媒體檔案
+    strikes:
+      actions:
+        delete_statuses: "%{name} 刪除了 %{target} 的帖文"
+        disable: "%{name} 停用了 %{target} 的帳號"
+        mark_statuses_as_sensitive: "%{name} 標記 %{target} 的帖文為敏感內容"
+        none: "%{name} 向 %{target} 發出警告"
+        sensitive: "%{name} 將 %{target} 的帳號標記為敏感內容"
+        silence: "%{name} 限制了 %{target} 的帳號"
+        suspend: "%{name} 將 %{target} 的帳號停權"
+      appeal_approved: 已申訴
+      appeal_pending: 申訴待審中
     system_checks:
       database_schema_check:
         message_html: 有待處理的資料庫轉移 (database migration) 。請執行以確保應用程式行為合乎預期
+      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: 您尚未定義任何伺服器規則
@@ -485,13 +766,104 @@ zh-HK:
       review: 審核文章
       updated_msg: 成功更新主題標籤設定
     title: 管理
+    trends:
+      allow: 允許
+      approved: 批准
+      disallow: 不允許
+      links:
+        allow: 允許連結
+        allow_provider: 允許發佈者
+        description_html: 這些是你目前的伺服器中,帳號帖文大量分享的連結。它幫助你的使用者發掘世界上正在發生的事情。在你核准發佈者之前,連結不會公開顯示。你也可以核准或駁回個別的連結。
+        disallow: 不允許連結
+        disallow_provider: 不允許發佈者
+        no_link_selected: 未選取任何連結,因此並未變更
+        publishers:
+          no_publisher_selected: 未選取任何發佈者,因此並未變更
+        shared_by_over_week:
+          other: 上週有 %{count} 人分享
+        title: 熱門連結
+        usage_comparison: 今天被分享了 %{today} 次,相較於昨天 %{yesterday} 次
+      only_allowed: 僅允許
+      pending_review: 等待審核中
+      preview_card_providers:
+        allowed: 此發佈者的連結能登上熱門
+        description_html: 這些是經常在你的伺服器上分享連結的網域。除非對應網域獲得核准,否則連結不會公開在熱門中。你的核准 (或駁回) 將適用於子網域。
+        rejected: 此發佈者的連結不會登上熱門
+        title: 發佈者
+      rejected: 被拒絕
+      statuses:
+        allow: 允許帖文
+        allow_account: 允許作者
+        description_html: 這些是在你的伺服器上已知被大量分享和加入到最愛的帖文。它幫助你的新和老用戶找到更多人去追蹤。在你批准作者,而且作者允許將他們的帳號推薦給他人之前,帖文不會公開顯示。你也可以核准或駁回個別帖子。
+        disallow: 不允許帖文
+        disallow_account: 不允許作者
+        no_status_selected: 未選取任何熱門帖文,因此並未變更
+        not_discoverable: 作者選擇不被發現
+        shared_by:
+          other: 分享或加入最愛 %{friendly_count} 次
+        title: 熱門帖文
+      tags:
+        current_score: 目前 %{score} 分
+        dashboard:
+          tag_accounts_measure: 不重複使用
+          tag_languages_dimension: 熱門語言
+          tag_servers_dimension: 熱門伺服器
+          tag_servers_measure: 不同伺服器
+          tag_uses_measure: 總使用
+        description_html: 這些是當前伺服器的大量帖文中出現的標籤。它可以幫助你的使用者發掘目前討論最多的話題。在你批准之前,標籤不會公開顯示。
+        listable: 可被推薦
+        no_tag_selected: 未選取任何標籤,因此並未變更
+        not_listable: 不會被推薦
+        not_trendable: 不會登上熱門
+        not_usable: 不可使用
+        peaked_on_and_decaying: 在 %{date} 達到高峰,目前正在回落
+        title: 熱門標籤
+        trendable: 可登上熱門
+        trending_rank: '熱門 #%{rank}'
+        usable: 可用
+        usage_comparison: 今天被使用了 %{today} 次,相較於昨天 %{yesterday} 次
+        used_by_over_week:
+          other: 上週有 %{count} 人使用
+      title: 熱門
+      trending: 熱門
     warning_presets:
       add_new: 新增
       delete: 刪除
       edit_preset: 設定警告預設
       empty: 您尚未定義任何預設警告
       title: 管理警告預設
+    webhooks:
+      add_new: 新增端點
+      delete: 刪除
+      description_html: "<strong>Webhook</strong> 讓 Mastodon 將有關所選事件的<strong>實時通知</strong>推送到你自己的應用程式,如此應用程式便可以<strong>自動觸發反應</strong>。"
+      disable: 停用
+      disabled: 已停用
+      edit: 編輯端點
+      empty: 你尚未設置 webhook 端點。
+      enable: 啟用
+      enabled: 活躍
+      enabled_events:
+        other: "%{count} 件已啟用的事件"
+      events: 事件
+      new: 新增 webhook
+      rotate_secret: 轉換密鑰
+      secret: 簽署密鑰
+      status: 狀態
+      title: Webhooks
+      webhook: Webhook
   admin_mailer:
+    new_appeal:
+      actions:
+        delete_statuses: 刪除他們的帖文
+        disable: 凍結他們的帳號
+        mark_statuses_as_sensitive: 標記他們的帖文為敏感內容
+        none: 警告
+        sensitive: 標記他們的帳號為敏感內容
+        silence: 限制他們的帳號
+        suspend: 停用他們的帳號
+      body: "%{target} 對 %{action_taken_by} 於 %{date} 做出的 %{type} 審核裁決提出申訴。他們寫道:"
+      next_steps: 您可以批准此申訴以撤銷審核裁決,又或者忽略它。
+      subject: "%{username} 對 %{instance} 上的審核裁決提出申訴"
     new_pending_account:
       body: 以下是新帳戶的資訊。你可以審核這項申請。
       subject: 在 %{instance} 上未審核的新用戶(%{username})
@@ -499,6 +871,17 @@ zh-HK:
       body: "%{reporter} 舉報了 %{target}"
       body_remote: 來自 %{domain} 的人舉報了 %{target}
       subject: 針對 %{instance} 的舉報(#%{id})
+    new_trends:
+      body: 以下項目需要經過審核才能公開顯示:
+      new_trending_links:
+        title: 熱門連結
+      new_trending_statuses:
+        title: 熱門帖文
+      new_trending_tags:
+        no_approved_tags: 目前沒有經核准的熱門標籤。
+        requirements: '任何一個候選都可能超過 #%{rank} 被核准的標籤。目前是 %{lowest_tag_name} 標籤,得分為 %{lowest_tag_score}。'
+        title: 熱門標籤
+      subject: "%{instance} 上有待審核的新熱門"
   aliases:
     add_new: 建立別名 (Alias)
     created_msg: 成功建立別名 (alias)。你可以從舊帳號開始轉移。
@@ -533,6 +916,7 @@ zh-HK:
     warning: 警告,不要把它分享給任何人!
     your_token: token
   auth:
+    apply_for_account: 申請帳號
     change_password: 密碼
     delete_account: 刪除帳號
     delete_account_html: 如果你想刪除你的帳號,請<a href="%{path}">點擊這裡繼續</a>。你需要確認你的操作。
@@ -546,11 +930,13 @@ zh-HK:
     invalid_reset_password_token: 密碼重置 token 無效或已過期。請重新重設密碼。
     link_to_otp: 請輸入兩步䮕認證碼或恢復碼
     link_to_webauth: 使用你的安全密鑰裝置
+    log_in_with: 登入時使用
     login: 登入
     logout: 登出
     migrate_account: 轉移到另一個帳號
     migrate_account_html: 想要將這個帳號指向另一個帳號可<a href="%{path}">到這裡設定</a>。
     or_log_in_with: 或登入於
+    privacy_policy_agreement_html: 我已閱讀且同意<a href="%{privacy_policy_path}" target="_blank">私隱政策</a>
     providers:
       cas: CAS
       saml: SAML
@@ -558,17 +944,25 @@ zh-HK:
     registration_closed: "%{instance} 並不接受新成員請求"
     resend_confirmation: 重發確認指示電郵
     reset_password: 重設密碼
+    rules:
+      preamble: 這些是由 %{domain} 管理員制訂和執行的。
+      title: 一些基本規則。
     security: 登入資訊
     set_new_password: 設定新密碼
     setup:
       email_below_hint_html: 如果下面的電郵地址不正確,你可在此修改,然後接收電郵進行確認。
       email_settings_hint_html: 確認電郵已發送至 %{email}。電郵地址不正確的話,你可以在帳戶設置中進行更改。
       title: 設定
+    sign_up:
+      preamble: 有了這個 Mastodon 伺服器的帳號,無論將帳號託管在何處,你都可以追蹤網絡上任何人。
+      title: 讓我為你在 %{domain} 上設定好。
     status:
       account_status: 帳戶文章
       confirming: 正在等待確認電郵地址。
+      functional: 你的帳號已完全投入使用。
       pending: 管理員正在處理你的申請。可能會需要一點時間處理。我們將會在申請被批準的時候馬上寄電郵給你。
       redirecting_to: 你的帳戶因為正在重新定向到 %{acct},所以暫時被停用。
+      view_strikes: 查看針對你的帳戶的過往警告
     too_fast: 你太快遞交了,請再試一次。
     use_security_key: 使用安全密鑰裝置
   authorize_follow:
@@ -627,6 +1021,36 @@ zh-HK:
       more_details_html: 請參見<a href="%{terms_path}">隱私政策</a>以瀏覽細節。
       username_available: 你的登入名稱將可被其他人使用
       username_unavailable: 你的登入名稱將不能讓其他人使用
+  disputes:
+    strikes:
+      action_taken: 已採取行動
+      appeal: 申訴
+      appeal_approved: 該警告已被成功申訴,不再有效
+      appeal_rejected: 申訴已被駁回
+      appeal_submitted_at: 已提交申訴
+      appealed_msg: 已提交你的申訴。一旦申訴獲得批准,你將收到通知。
+      appeals:
+        submit: 提交申訴
+      approve_appeal: 批准申訴
+      associated_report: 相關檢舉
+      created_at: 日期
+      description_html: 這些是 %{instance} 工作人員針對你的帳號採取的行動和向你發出的警告。
+      recipient: 發送至
+      reject_appeal: 駁回申訴
+      status: '帖文 #%{id}'
+      status_removed: 帖文已從系統中刪除
+      title: "%{action} 於 %{date}"
+      title_actions:
+        delete_statuses: 移除帖文
+        disable: 帳號凍結
+        mark_statuses_as_sensitive: 標記帖文為敏感內容
+        none: 警告
+        sensitive: 標記帳號為敏感內容
+        silence: 帳號限制
+        suspend: 帳號停用
+      your_appeal_approved: 你的申訴已獲批准
+      your_appeal_pending: 你已提交申訴
+      your_appeal_rejected: 你的申訴已被駁回
   domain_validator:
     invalid_domain: 不是一個可用域名
   errors:
@@ -675,30 +1099,62 @@ zh-HK:
       public: 公共時間軸
       thread: 對話
     edit:
+      add_keyword: 加入關鍵字
+      keywords: 關鍵字
+      statuses: 個別帖文
+      statuses_hint_html: 此篩選器會套用至所選的個別帖文,不論它符合下列的關鍵字與否。<a href="%{path}">查看或移除篩選器中的帖文</a>。
       title: 編輯篩選器
     errors:
+      deprecated_api_multiple_keywords: 無法從此應用程式更改這些參數,因為參數適用於多個篩選器關鍵字。請使用較新的應用程式或網頁介面。
       invalid_context: 沒有提供內文或內文無效
     index:
+      contexts: "%{contexts} 中的篩選器"
       delete: 刪除
       empty: 你沒有過濾器。
+      expires_in: 於 %{distance} 過期
+      expires_on: 於 %{date} 到期
+      keywords:
+        other: "%{count} 個關鍵字"
+      statuses:
+        other: "%{count} 則帖文"
+      statuses_long:
+        other: "%{count} 則個別隱藏的帖文"
       title: 篩選
     new:
+      save: 儲存新篩選器
       title: 新增篩選器
+    statuses:
+      back_to_filter: 返回篩選器
+      batch:
+        remove: 從篩選器移除
+      index:
+        hint: 不管其他條件如何,此篩選器會套用於所選的個別帖文。你可以在網頁介面上加入更多帖文到此篩選器。
+        title: 篩選帖文
   footer:
     trending_now: 今期流行
   generic:
     all: 全部
+    all_items_on_page_selected_html:
+      other: 已選取此頁面上的 <strong>%{count}</strong> 個項目。
+    all_matching_items_selected_html:
+      other: 已選取符合你搜尋的 <strong>%{count}</strong> 個項目。
     changes_saved_msg: 已成功儲存修改。
     copy: 複製
     delete: 刪除
+    deselect: 取消全選
+    none: 無
     order_by: 排序
     save_changes: 儲存修改
+    select_all_matching_items:
+      other: 選取 %{count} 個符合你搜尋的項目。
+    today: 今天
     validation_errors:
       other: 提交的資料有 %{count} 項問題
   html_validator:
     invalid_markup: 含有無效的HTML標記:%{error}
   imports:
     errors:
+      invalid_csv_file: 無效的 CSV 檔案。錯誤:%{error}
       over_rows_processing_limit: 包含超過 %{count} 行
     modes:
       merge: 合併
@@ -791,7 +1247,14 @@ zh-HK:
     carry_blocks_over_text: 此用戶從%{acct} 轉移,該帳號已被你封鎖。
     carry_mutes_over_text: 此用戶從%{acct} 轉移,該帳號已被你靜音。
     copy_account_note_text: 此用戶從%{acct} 轉移,這是你之前在該帳號留下的備注:
+  navigation:
+    toggle_menu: 切換選單
   notification_mailer:
+    admin:
+      report:
+        subject: "%{name} 提交了檢舉"
+      sign_up:
+        subject: "%{name} 已註冊"
     favourite:
       body: 你的文章被 %{name} 喜愛:
       subject: "%{name} 喜歡你的文章"
@@ -818,6 +1281,8 @@ zh-HK:
       title: 新的轉推
     status:
       subject: "%{name} 剛發表了文章"
+    update:
+      subject: "%{name} 編輯了帖文"
   notifications:
     email_events: 電郵通知活動
     email_events_hint: 選擇你想接收通知的活動:
@@ -861,6 +1326,8 @@ zh-HK:
     other: 其他
     posting_defaults: 發佈預設值
     public_timelines: 公共時間軸
+  privacy_policy:
+    title: 私隱政策
   reactions:
     errors:
       limit_reached: 已達到可以給予反應極限
@@ -884,6 +1351,14 @@ zh-HK:
     status: 帳戶帖文
   remote_follow:
     missing_resource: 無法找到你用戶的轉接網址
+  reports:
+    errors:
+      invalid_rules: 未引用有效的規則
+  rss:
+    content_warning: 內容警告:
+    descriptions:
+      account: 來自 @%{acct} 的公開帖文
+      tag: "#%{hashtag} 標籤的公開帖文"
   scheduled_statuses:
     over_daily_limit: 你已經超越了當天排定發文的限額 (%{limit})
     over_total_limit: 你已經超越了排定發文的限額 (%{limit})
@@ -893,6 +1368,7 @@ zh-HK:
     browser: 瀏覽器
     browsers:
       alipay: 支付寶
+      blackberry: BlackBerry
       chrome: Chrome 瀏覽器
       edge: Microsoft Edge 瀏覽器
       electron: Electron 瀏覽器
@@ -906,6 +1382,7 @@ zh-HK:
       phantom_js: PhantomJS 瀏覽器
       qq: QQ瀏覽器
       safari: Safari 瀏覽器
+      uc_browser: UC 瀏覽器
       weibo: 新浪微博
     current_session: 目前的作業階段
     description: "%{platform} 上的 %{browser}"
@@ -914,6 +1391,8 @@ zh-HK:
     platforms:
       adobe_air: Adobe Air
       android: Android
+      blackberry: BlackBerry
+      chrome_os: ChromeOS
       firefox_os: Firefox OS
       ios: iOS
       linux: Linux
@@ -946,6 +1425,7 @@ zh-HK:
     profile: 個人資料
     relationships: 關注及追隨者
     statuses_cleanup: 自動嘟文刪除
+    strikes: 審核警告
     two_factor_authentication: 雙重認證
     webauthn_authentication: 安全鑰匙
   statuses:
@@ -959,13 +1439,16 @@ zh-HK:
         other: "%{count} 段影片"
     boosted_from_html: 轉推自 %{acct_link}
     content_warning: 內容警告: %{warning}
+    default_language: 與介面語言相同
     disallowed_hashtags:
       other: 包含不允許的標籤: %{tags}
+    edited_at_html: 編輯於 %{date}
     errors:
       in_reply_not_found: 你所回覆的嘟文並不存在。
     open_in_web: 開啟網頁
     over_character_limit: 超過了 %{max} 字的限制
     pin_errors:
+      direct: 無法將只有被提及使用者可見的帖文置頂
       limit: 你所置頂的文章數量已經達到上限
       ownership: 不能置頂他人的文章
       reblog: 不能置頂轉推
@@ -1016,7 +1499,7 @@ zh-HK:
       '2629746': 1 個月
       '31556952': 1 年
       '5259492': 2 個月
-      '604800': 1 week
+      '604800': 一週
       '63113904': 2 年
       '7889238': 3 個月
     min_age_label: 按時間篩選
@@ -1028,6 +1511,9 @@ zh-HK:
     pinned: 置頂文章
     reblogged: 轉推
     sensitive_content: 敏感內容
+  strikes:
+    errors:
+      too_late: 對此次警告提出申訴已經太遲
   tags:
     does_not_match_previous_name: 和舊有名稱並不符合
   themes:
@@ -1038,6 +1524,7 @@ zh-HK:
     formats:
       default: "%Y年%-m月%d日 %H:%M"
       month: "%b %Y"
+      time: "%H:%M"
   two_factor_authentication:
     add: 新增
     disable: 停用
@@ -1054,25 +1541,63 @@ zh-HK:
     recovery_instructions_html: 如果你遺失了安裝認證器的裝置(如︰你的電話),你可以使用備用驗證碼進行登入。請確保將備用驗證碼收藏穩當,(如列印出來,和你其他重要文件一起存放)。
     webauthn: 安全密鑰
   user_mailer:
+    appeal_approved:
+      action: 前往你的帳號
+      explanation: 你在 %{appeal_date} 提交針對你帳號於 %{strike_date} 被警告的申訴已獲得批准。你的帳號再次回到良好狀態。
+      subject: 你在 %{date} 提出的申訴已獲批准
+      title: 申訴已批准
+    appeal_rejected:
+      explanation: 你在 %{appeal_date} 提交針對你帳號於 %{strike_date} 被警告的申訴已被駁回。
+      subject: 你在 %{date} 提出的申訴已被駁回
+      title: 申訴被駁回
     backup_ready:
       explanation: 你要求的 Mastodon 帳號完整備份檔案現已就緒,可供下載。
       subject: 你的備份檔已可供下載
       title: 檔案匯出
+    suspicious_sign_in:
+      change_password: 更改你的密碼
+      details: 以下是登入的細節:
+      explanation: 我們偵測到有新的 IP 地址登入你的帳號。
+      further_actions_html: 如果這不是你,我們建議你立即 %{action} 並啟用雙重認證,以確保帳號安全。
+      subject: 你的帳號被一個新的 IP 地址存取
+      title: 新登入
     warning:
+      appeal: 提交申訴
+      appeal_description: 如果你認為這個有誤,你可以向 %{instance} 的工作人員提出申訴。
+      categories:
+        spam: 垃圾訊息
+        violation: 內容違反下列的社群守則
+      explanation:
+        delete_statuses: 你有些帖文被發現違反了一條或多條社群守則,並已被 %{instance} 的管理員刪除。
+        disable: 你無法再使用你的帳號,但你的個人檔案和其他資料仍然完整。你可以要求取得你的資料的備份,更改帳號設定或刪除你的帳號。
+        mark_statuses_as_sensitive: 你有些帖文已被 %{instance} 的管理員標記為敏感內容。這表示帖文上的媒體需要點擊才可預覽。日後你可以在發帖文時自行將媒體標記為敏感內容。
+        sensitive: 從今開始,你上傳的所有媒體檔案將被標記為敏感內容並隱藏,須點擊警告後方可查看。
+        silence: 你仍然可以使用你的帳號,但只有你的追蹤者方可看見你在此伺服器上的帖文,你亦可能會被排除在各種探索功能之外,但其他人仍然可以手動追蹤你。
+        suspend: 你不能再使用你的帳號及存取你的個人檔案和其他資料。你仍然可以登入並要求取得資料備份,直至資料在大約 30 天內被完全刪除為止,但我們將保留部份基本資料,以防止你規避處罰。
+      reason: 原因:
+      statuses: 引用帖文:
       subject:
+        delete_statuses: 你在 %{acct} 的帖文已被移除
         disable: 你的帳號 %{acct} 已經被涷結
+        mark_statuses_as_sensitive: 你在 %{acct} 的帖文已被標記為敏感內容
         none: 警告帳號%{acct}
+        sensitive: 從今開始,你在 %{acct} 的帖文將被標記為敏感內容
         silence: 你的帳號 %{acct} 已經被限制
         suspend: 你的帳號 %{acct} 已經被停權
       title:
+        delete_statuses: 已移除帖文
         disable: 帳號涷結
+        mark_statuses_as_sensitive: 標記為敏感內容的帖文
         none: 警告
+        sensitive: 標記為敏感內容的帳號
         silence: 賬戶已被限制
         suspend: 帳號已停用
     welcome:
       edit_profile_action: 設定個人資料
+      edit_profile_step: 你可以透過上傳頭像、更改顯示名稱等來自訂個人檔案。你可以選擇讓新使用者追蹤你之前先審查他們。
       explanation: 下面是幾個小貼士,希望它們能幫到你
       final_action: 開始發文
+      final_step: '開始發文吧!即使你沒有追蹤者,其他人仍然能在本站時間軸或標籤等地方,看到你的公開帖文。試着用 #introductions 標籤來介紹自己吧。'
       full_handle: 你的完整 Mastodon 地址
       full_handle_hint: 這訊息將顯示給你朋友們,讓他們能從另一個服務站發信息給你,或者關注你的。
       subject: 歡迎來到 Mastodon (萬象)
diff --git a/config/locales/zh-TW.yml b/config/locales/zh-TW.yml
index c9596c040..6fec21083 100644
--- a/config/locales/zh-TW.yml
+++ b/config/locales/zh-TW.yml
@@ -366,6 +366,8 @@ zh-TW:
       add_new: 將網域加入聯邦宇宙白名單
       created_msg: 網域已成功加入聯邦宇宙白名單
       destroyed_msg: 網域已成功從聯邦宇宙白名單移除
+      export: 匯出
+      import: 匯入
       undo: 從聯邦宇宙白名單移除
     domain_blocks:
       add_new: 新增欲封鎖域名
@@ -375,6 +377,8 @@ zh-TW:
       edit: 更改封鎖的站台
       existing_domain_block: 您已對 %{name} 施加了更嚴格的限制。
       existing_domain_block_html: 您已經對 %{name} 施加了更嚴格的限制,您需要先把他<a href="%{unblock_url}">取消封鎖</a>。
+      export: 匯出
+      import: 匯入
       new:
         create: 新增封鎖
         hint: 站點封鎖動作並不會阻止帳號紀錄被新增至資料庫,但會自動回溯性地對那些帳號套用特定管理設定。
@@ -384,6 +388,8 @@ zh-TW:
           silence: 靜音
           suspend: 停權
         title: 新增封鎖站點
+      no_domain_block_selected: 因未選取項目,而未更改網域黑名單
+      not_permitted: 您無權執行此操作
       obfuscate: 混淆網域名稱
       obfuscate_hint: 若啟用網域廣告列表限制,於列表部份混淆網域名稱
       private_comment: 私人留言
@@ -414,6 +420,20 @@ zh-TW:
       resolved_dns_records_hint_html: 網域名稱解析為以下 MX 網域,這些網域最終負責接收電子郵件。封鎖 MX 網域將會封鎖任何來自使用相同 MX 網域的電子郵件註冊,即便可見的域名是不同的也一樣。<strong>請注意,不要封鎖主要的電子郵件服務提供商。</strong>
       resolved_through_html: 透過 %{domain} 解析
       title: 電子郵件黑名單
+    export_domain_allows:
+      new:
+        title: 匯入網域白名單
+      no_file: 尚未選擇檔案
+    export_domain_blocks:
+      import:
+        description_html: 您將匯入網域黑名單列表。若您非自行編纂此列表,請審慎檢查。
+        existing_relationships_warning: 既存之跟隨關係
+        private_comment_description_html: 為了幫助您追蹤匯入黑名單之來源,匯入黑名單建立時將隨附以下私密備註:<q>%{comment}</q>
+        private_comment_template: 於 %{date} 由 %{source} 匯入
+        title: 匯入網域黑名單
+      new:
+        title: 匯入網域黑名單
+      no_file: 尚未選擇檔案
     follow_recommendations:
       description_html: |-
         <strong>跟隨建議幫助新使用者們快速找到有趣的內容</strong>. 當使用者沒有與其他帳號有足夠多的互動以建立個人化跟隨建議時,這些帳號將會被推荐。這些帳號將基於某選定語言之高互動和高本地跟隨者數量帳號而
@@ -898,7 +918,7 @@ zh-TW:
     warning: 警告,不要把它分享給任何人!
     your_token: 您的 access token
   auth:
-    apply_for_account: 登記排隊名單
+    apply_for_account: 申請帳號
     change_password: 密碼
     delete_account: 刪除帳號
     delete_account_html: 如果您欲刪除您的帳號,請<a href="%{path}">點擊這裡繼續</a>。您需要再三確認您的操作。
@@ -1136,6 +1156,7 @@ zh-TW:
     invalid_markup: 含有無效的 HTML 語法:%{error}
   imports:
     errors:
+      invalid_csv_file: 無效的 CSV 檔案。錯誤訊息:%{error}
       over_rows_processing_limit: 含有超過 %{count} 行
     modes:
       merge: 合併
@@ -1349,6 +1370,7 @@ zh-TW:
     browser: 瀏覽器
     browsers:
       alipay: 支付寶
+      blackberry: 黑莓機(BlackBerry)
       chrome: Chrome 瀏覽器
       edge: Microsoft Edge 瀏覽器
       electron: Electron 瀏覽器
@@ -1371,6 +1393,7 @@ zh-TW:
     platforms:
       adobe_air: Adobe Air
       android: Android
+      blackberry: 黑莓機(BlackBerry)
       chrome_os: ChromeOS
       firefox_os: Firefox OS
       ios: iOS
diff --git a/config/navigation.rb b/config/navigation.rb
index 4d2da7aa4..aab72d27c 100644
--- a/config/navigation.rb
+++ b/config/navigation.rb
@@ -23,7 +23,7 @@ SimpleNavigation::Configuration.run do |navigation|
 
     n.item :relationships, safe_join([fa_icon('users fw'), t('settings.relationships')]), relationships_path, if: -> { current_user.functional? }
     n.item :filters, safe_join([fa_icon('filter fw'), t('filters.index.title')]), filters_path, highlights_on: %r{/filters}, if: -> { current_user.functional? }
-    n.item :statuses_cleanup, safe_join([fa_icon('history fw'), t('settings.statuses_cleanup')]), statuses_cleanup_path, if: -> { current_user.functional? }
+    n.item :statuses_cleanup, safe_join([fa_icon('history fw'), t('settings.statuses_cleanup')]), statuses_cleanup_path, if: -> { current_user.functional_or_moved? }
 
     n.item :security, safe_join([fa_icon('lock fw'), t('settings.account')]), edit_user_registration_path do |s|
       s.item :password, safe_join([fa_icon('lock fw'), t('settings.account_settings')]), edit_user_registration_path, highlights_on: %r{/auth/edit|/settings/delete|/settings/migration|/settings/aliases|/settings/login_activities|^/disputes}
diff --git a/lib/enumerable.rb b/lib/enumerable.rb
deleted file mode 100644
index 66918f65e..000000000
--- a/lib/enumerable.rb
+++ /dev/null
@@ -1,26 +0,0 @@
-# frozen_string_literal: true
-
-module Enumerable
-  # TODO: Remove this once stop to support Ruby 2.6
-  if RUBY_VERSION < '2.7.0'
-    def filter_map
-      if block_given?
-        result = []
-        each do |element|
-          res = yield element
-          result << res if res
-        end
-        result
-      else
-        Enumerator.new do |yielder|
-          result = []
-          each do |element|
-            res = yielder.yield element
-            result << res if res
-          end
-          result
-        end
-      end
-    end
-  end
-end
diff --git a/lib/mastodon/redis_config.rb b/lib/mastodon/redis_config.rb
index 98dc4788d..3522fa11e 100644
--- a/lib/mastodon/redis_config.rb
+++ b/lib/mastodon/redis_config.rb
@@ -37,6 +37,7 @@ REDIS_CACHE_PARAMS = {
   namespace: cache_namespace,
   pool_size: Sidekiq.server? ? Sidekiq.options[:concurrency] : Integer(ENV['MAX_THREADS'] || 5),
   pool_timeout: 5,
+  connect_timeout: 5,
 }.freeze
 
 REDIS_SIDEKIQ_PARAMS = {
diff --git a/lib/mastodon/version.rb b/lib/mastodon/version.rb
index f37553709..3340d0bf5 100644
--- a/lib/mastodon/version.rb
+++ b/lib/mastodon/version.rb
@@ -13,7 +13,7 @@ module Mastodon
     end
 
     def patch
-      1
+      2
     end
 
     def flags
diff --git a/package.json b/package.json
index 4da39d9d6..ed11346e8 100644
--- a/package.json
+++ b/package.json
@@ -24,29 +24,29 @@
   },
   "private": true,
   "dependencies": {
-    "@babel/core": "^7.19.6",
-    "@babel/plugin-proposal-decorators": "^7.19.6",
+    "@babel/core": "^7.20.2",
+    "@babel/plugin-proposal-decorators": "^7.20.2",
     "@babel/plugin-transform-react-inline-elements": "^7.18.6",
     "@babel/plugin-transform-runtime": "^7.19.6",
-    "@babel/preset-env": "^7.19.4",
+    "@babel/preset-env": "^7.20.2",
     "@babel/preset-react": "^7.18.6",
-    "@babel/runtime": "^7.19.4",
+    "@babel/runtime": "^7.20.1",
     "@gamestdio/websocket": "^0.3.2",
     "@github/webauthn-json": "^0.5.7",
     "@rails/ujs": "^6.1.7",
     "abortcontroller-polyfill": "^1.7.5",
-    "array-includes": "^3.1.5",
+    "array-includes": "^3.1.6",
     "atrament": "0.2.4",
     "arrow-key-navigation": "^1.2.0",
     "atrament": "0.2.4",
     "autoprefixer": "^9.8.8",
     "axios": "^1.1.3",
-    "babel-loader": "^8.2.5",
+    "babel-loader": "^8.3.0",
     "babel-plugin-lodash": "^3.3.4",
     "babel-plugin-preval": "^5.1.0",
     "babel-plugin-react-intl": "^6.2.0",
     "babel-plugin-transform-react-remove-prop-types": "^0.4.24",
-    "blurhash": "^2.0.3",
+    "blurhash": "^2.0.4",
     "classnames": "^2.3.2",
     "cocoon-js-vanilla": "^1.3.0",
     "color-blend": "^3.0.1",
@@ -76,7 +76,7 @@
     "intl-relativeformat": "^6.4.3",
     "is-nan": "^1.3.2",
     "js-yaml": "^4.1.0",
-    "jsdom": "^20.0.1",
+    "jsdom": "^20.0.3",
     "lodash": "^4.17.21",
     "mark-loader": "^0.1.6",
     "marky": "^1.2.5",
@@ -85,13 +85,13 @@
     "npmlog": "^7.0.1",
     "object-assign": "^4.1.1",
     "object-fit-images": "^3.2.3",
-    "object.values": "^1.1.5",
+    "object.values": "^1.1.6",
     "path-complete-extname": "^1.0.0",
     "pg": "^8.5.0",
-    "postcss": "^8.4.18",
+    "postcss": "^8.4.19",
     "postcss-loader": "^3.0.0",
     "postcss-object-fit-images": "^1.1.2",
-    "promise.prototype.finally": "^3.1.3",
+    "promise.prototype.finally": "^3.1.4",
     "prop-types": "^15.8.1",
     "punycode": "^2.1.0",
     "react": "^16.14.0",
@@ -116,12 +116,12 @@
     "redis": "^4.0.6 <4.1.0",
     "redux": "^4.2.0",
     "redux-immutable": "^4.0.0",
-    "redux-thunk": "^2.4.1",
-    "regenerator-runtime": "^0.13.10",
+    "redux-thunk": "^2.4.2",
+    "regenerator-runtime": "^0.13.11",
     "requestidlecallback": "^0.3.0",
-    "reselect": "^4.1.6",
+    "reselect": "^4.1.7",
     "rimraf": "^3.0.2",
-    "sass": "^1.55.0",
+    "sass": "^1.56.1",
     "sass-loader": "^10.2.0",
     "stacktrace-js": "^2.0.2",
     "stringz": "^2.1.0",
@@ -134,7 +134,7 @@
     "uuid": "^8.3.1",
     "webpack": "^4.46.0",
     "webpack-assets-manifest": "^4.0.6",
-    "webpack-bundle-analyzer": "^4.6.1",
+    "webpack-bundle-analyzer": "^4.7.0",
     "webpack-cli": "^3.3.12",
     "webpack-merge": "^5.8.0",
     "wicg-inert": "^3.1.2",
@@ -155,7 +155,7 @@
     "eslint-plugin-import": "~2.26.0",
     "eslint-plugin-jsx-a11y": "~6.6.1",
     "eslint-plugin-promise": "~6.1.1",
-    "eslint-plugin-react": "~7.31.10",
+    "eslint-plugin-react": "~7.31.11",
     "jest": "^29.2.2",
     "jest-environment-jsdom": "^29.2.1",
     "postcss-scss": "^4.0.5",
@@ -166,7 +166,7 @@
     "stylelint": "^14.14.0",
     "stylelint-config-standard-scss": "^5.0.0",
     "webpack-dev-server": "^3.11.3",
-    "yargs": "^17.6.0"
+    "yargs": "^17.6.2"
   },
   "resolutions": {
     "kind-of": "^6.0.3"
diff --git a/spec/controllers/admin/statuses_controller_spec.rb b/spec/controllers/admin/statuses_controller_spec.rb
index 227688e23..7f912c1c0 100644
--- a/spec/controllers/admin/statuses_controller_spec.rb
+++ b/spec/controllers/admin/statuses_controller_spec.rb
@@ -41,7 +41,7 @@ describe Admin::StatusesController do
 
   describe 'POST #batch' do
     before do
-      post :batch, params: { :account_id => account.id, action => '', :admin_status_batch_action => { status_ids: status_ids } }
+      post :batch, params: { account_id: account.id, action => '', admin_status_batch_action: { status_ids: status_ids } }
     end
 
     let(:status_ids) { [media_attached_status.id] }
diff --git a/spec/controllers/api/v1/tags_controller_spec.rb b/spec/controllers/api/v1/tags_controller_spec.rb
index ac42660df..216faad87 100644
--- a/spec/controllers/api/v1/tags_controller_spec.rb
+++ b/spec/controllers/api/v1/tags_controller_spec.rb
@@ -33,7 +33,11 @@ RSpec.describe Api::V1::TagsController, type: :controller do
   end
 
   describe 'POST #follow' do
+    let!(:unrelated_tag) { Fabricate(:tag) }
+
     before do
+      TagFollow.create!(account: user.account, tag: unrelated_tag)
+
       post :follow, params: { id: name }
     end
 
diff --git a/spec/models/account/field_spec.rb b/spec/models/account/field_spec.rb
index b4beec048..0ac9769bc 100644
--- a/spec/models/account/field_spec.rb
+++ b/spec/models/account/field_spec.rb
@@ -67,7 +67,15 @@ RSpec.describe Account::Field, type: :model do
       end
 
       context 'for an IDN URL' do
-        let(:value) { 'http://twitter.com∕dougallj∕status∕1590357240443437057.ê.cc/twitter.html' }
+        let(:value) { 'https://twitter.com∕dougallj∕status∕1590357240443437057.ê.cc/twitter.html' }
+
+        it 'returns false' do
+          expect(subject.verifiable?).to be false
+        end
+      end
+
+      context 'for a URL with a non-normalized path' do
+        let(:value) { 'https://github.com/octocatxxxxxxxx/../mastodon' }
 
         it 'returns false' do
           expect(subject.verifiable?).to be false
diff --git a/spec/services/activitypub/process_status_update_service_spec.rb b/spec/services/activitypub/process_status_update_service_spec.rb
index 481572742..750369d57 100644
--- a/spec/services/activitypub/process_status_update_service_spec.rb
+++ b/spec/services/activitypub/process_status_update_service_spec.rb
@@ -331,7 +331,7 @@ RSpec.describe ActivityPub::ProcessStatusUpdateService, type: :service do
 
     context 'originally without media attachments' do
       before do
-        allow(RedownloadMediaWorker).to receive(:perform_async)
+        stub_request(:get, 'https://example.com/foo.png').to_return(body: attachment_fixture('emojo.png'))
         subject.call(status, json)
       end
 
@@ -355,8 +355,8 @@ RSpec.describe ActivityPub::ProcessStatusUpdateService, type: :service do
         expect(media_attachment.remote_url).to eq 'https://example.com/foo.png'
       end
 
-      it 'queues download of media attachments' do
-        expect(RedownloadMediaWorker).to have_received(:perform_async)
+      it 'fetches the attachment' do
+        expect(a_request(:get, 'https://example.com/foo.png')).to have_been_made
       end
 
       it 'records media change in edit' do
diff --git a/spec/services/favourite_service_spec.rb b/spec/services/favourite_service_spec.rb
index 94a8111dd..9781f0d78 100644
--- a/spec/services/favourite_service_spec.rb
+++ b/spec/services/favourite_service_spec.rb
@@ -23,7 +23,7 @@ RSpec.describe FavouriteService, type: :service do
     let(:status) { Fabricate(:status, account: bob) }
 
     before do
-      stub_request(:post, "http://example.com/inbox").to_return(:status => 200, :body => "", :headers => {})
+      stub_request(:post, "http://example.com/inbox").to_return(status: 200, body: "", headers: {})
       subject.call(sender, status)
     end
 
diff --git a/spec/services/follow_service_spec.rb b/spec/services/follow_service_spec.rb
index 88346ec54..412c04d76 100644
--- a/spec/services/follow_service_spec.rb
+++ b/spec/services/follow_service_spec.rb
@@ -140,7 +140,7 @@ RSpec.describe FollowService, type: :service do
     let(:bob) { Fabricate(:account, username: 'bob', domain: 'example.com', protocol: :activitypub, inbox_url: 'http://example.com/inbox') }
 
     before do
-      stub_request(:post, "http://example.com/inbox").to_return(:status => 200, :body => "", :headers => {})
+      stub_request(:post, "http://example.com/inbox").to_return(status: 200, body: "", headers: {})
       subject.call(sender, bob)
     end
 
diff --git a/spec/services/verify_link_service_spec.rb b/spec/services/verify_link_service_spec.rb
index 3fc88e60e..52ba454cc 100644
--- a/spec/services/verify_link_service_spec.rb
+++ b/spec/services/verify_link_service_spec.rb
@@ -76,7 +76,25 @@ RSpec.describe VerifyLinkService, type: :service do
     context 'when a link does not contain a link back' do
       let(:html) { '' }
 
-      it 'marks the field as verified' do
+      it 'does not mark the field as verified' do
+        expect(field.verified?).to be false
+      end
+    end
+
+    context 'when link has no `href` attribute' do
+      let(:html) do
+        <<-HTML
+          <!doctype html>
+          <head>
+            <link type="text/html" rel="me" />
+          </head>
+          <body>
+            <a rel="me" target="_blank">Follow me on Mastodon</a>
+          </body>
+        HTML
+      end
+
+      it 'does not mark the field as verified' do
         expect(field.verified?).to be false
       end
     end
diff --git a/spec/views/statuses/show.html.haml_spec.rb b/spec/views/statuses/show.html.haml_spec.rb
index eeea2f698..ca5bb2ae8 100644
--- a/spec/views/statuses/show.html.haml_spec.rb
+++ b/spec/views/statuses/show.html.haml_spec.rb
@@ -4,7 +4,7 @@ require 'rails_helper'
 
 describe 'statuses/show.html.haml', without_verify_partial_doubles: true do
   before do
-    double(:api_oembed_url => '')
+    double(api_oembed_url: '')
     allow(view).to receive(:show_landing_strip?).and_return(true)
     allow(view).to receive(:site_title).and_return('example site')
     allow(view).to receive(:site_hostname).and_return('example.com')
diff --git a/yarn.lock b/yarn.lock
index 98875dbee..42f479b8a 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -37,26 +37,26 @@
   dependencies:
     "@babel/highlight" "^7.18.6"
 
-"@babel/compat-data@^7.17.7", "@babel/compat-data@^7.19.3", "@babel/compat-data@^7.19.4":
-  version "7.19.4"
-  resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.19.4.tgz#95c86de137bf0317f3a570e1b6e996b427299747"
-  integrity sha512-CHIGpJcUQ5lU9KrPHTjBMhVwQG6CQjxfg36fGXl3qk/Gik1WwWachaXFuo0uCWJT/mStOKtcbFJCaVLihC1CMw==
+"@babel/compat-data@^7.17.7", "@babel/compat-data@^7.20.0", "@babel/compat-data@^7.20.1":
+  version "7.20.1"
+  resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.20.1.tgz#f2e6ef7790d8c8dbf03d379502dcc246dcce0b30"
+  integrity sha512-EWZ4mE2diW3QALKvDMiXnbZpRvlj+nayZ112nK93SnhqOtpdsbVD4W+2tEoT3YNBAG9RBR0ISY758ZkOgsn6pQ==
 
-"@babel/core@^7.11.1", "@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.19.6", "@babel/core@^7.7.2":
-  version "7.19.6"
-  resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.19.6.tgz#7122ae4f5c5a37c0946c066149abd8e75f81540f"
-  integrity sha512-D2Ue4KHpc6Ys2+AxpIx1BZ8+UegLLLE2p3KJEuJRKmokHOtl49jQ5ny1773KsGLZs8MQvBidAF6yWUJxRqtKtg==
+"@babel/core@^7.11.1", "@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.20.2", "@babel/core@^7.7.2":
+  version "7.20.2"
+  resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.20.2.tgz#8dc9b1620a673f92d3624bd926dc49a52cf25b92"
+  integrity sha512-w7DbG8DtMrJcFOi4VrLm+8QM4az8Mo+PuLBKLp2zrYRCow8W/f9xiXm5sN53C8HksCyDQwCKha9JiDoIyPjT2g==
   dependencies:
     "@ampproject/remapping" "^2.1.0"
     "@babel/code-frame" "^7.18.6"
-    "@babel/generator" "^7.19.6"
-    "@babel/helper-compilation-targets" "^7.19.3"
-    "@babel/helper-module-transforms" "^7.19.6"
-    "@babel/helpers" "^7.19.4"
-    "@babel/parser" "^7.19.6"
+    "@babel/generator" "^7.20.2"
+    "@babel/helper-compilation-targets" "^7.20.0"
+    "@babel/helper-module-transforms" "^7.20.2"
+    "@babel/helpers" "^7.20.1"
+    "@babel/parser" "^7.20.2"
     "@babel/template" "^7.18.10"
-    "@babel/traverse" "^7.19.6"
-    "@babel/types" "^7.19.4"
+    "@babel/traverse" "^7.20.1"
+    "@babel/types" "^7.20.2"
     convert-source-map "^1.7.0"
     debug "^4.1.0"
     gensync "^1.0.0-beta.2"
@@ -72,12 +72,12 @@
     eslint-visitor-keys "^2.1.0"
     semver "^6.3.0"
 
-"@babel/generator@^7.19.6", "@babel/generator@^7.7.2":
-  version "7.19.6"
-  resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.19.6.tgz#9e481a3fe9ca6261c972645ae3904ec0f9b34a1d"
-  integrity sha512-oHGRUQeoX1QrKeJIKVe0hwjGqNnVYsM5Nep5zo0uE0m42sLH+Fsd2pStJ5sRM1bNyTUUoz0pe2lTeMJrb/taTA==
+"@babel/generator@^7.20.1", "@babel/generator@^7.20.2", "@babel/generator@^7.7.2":
+  version "7.20.3"
+  resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.20.3.tgz#e58c9ae2f7bf7fdf4899160cf1e04400a82cd641"
+  integrity sha512-Wl5ilw2UD1+ZYprHVprxHZJCFeBWlzZYOovE4SDYLZnqCOD11j+0QzNeEWKLLTWM7nixrZEh7vNIyb76MyJg3A==
   dependencies:
-    "@babel/types" "^7.19.4"
+    "@babel/types" "^7.20.2"
     "@jridgewell/gen-mapping" "^0.3.2"
     jsesc "^2.5.1"
 
@@ -104,27 +104,27 @@
     "@babel/helper-annotate-as-pure" "^7.18.6"
     "@babel/types" "^7.18.6"
 
-"@babel/helper-compilation-targets@^7.17.7", "@babel/helper-compilation-targets@^7.18.9", "@babel/helper-compilation-targets@^7.19.0", "@babel/helper-compilation-targets@^7.19.3":
-  version "7.19.3"
-  resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.19.3.tgz#a10a04588125675d7c7ae299af86fa1b2ee038ca"
-  integrity sha512-65ESqLGyGmLvgR0mst5AdW1FkNlj9rQsCKduzEoEPhBCDFGXvz2jW6bXFG6i0/MrV2s7hhXjjb2yAzcPuQlLwg==
+"@babel/helper-compilation-targets@^7.17.7", "@babel/helper-compilation-targets@^7.18.9", "@babel/helper-compilation-targets@^7.20.0":
+  version "7.20.0"
+  resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.0.tgz#6bf5374d424e1b3922822f1d9bdaa43b1a139d0a"
+  integrity sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ==
   dependencies:
-    "@babel/compat-data" "^7.19.3"
+    "@babel/compat-data" "^7.20.0"
     "@babel/helper-validator-option" "^7.18.6"
     browserslist "^4.21.3"
     semver "^6.3.0"
 
-"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.19.0":
-  version "7.19.0"
-  resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.19.0.tgz#bfd6904620df4e46470bae4850d66be1054c404b"
-  integrity sha512-NRz8DwF4jT3UfrmUoZjd0Uph9HQnP30t7Ash+weACcyNkiYTywpIjDBgReJMKgr+n86sn2nPVVmJ28Dm053Kqw==
+"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.20.2":
+  version "7.20.2"
+  resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.20.2.tgz#3c08a5b5417c7f07b5cf3dfb6dc79cbec682e8c2"
+  integrity sha512-k22GoYRAHPYr9I+Gvy2ZQlAe5mGy8BqWst2wRt8cwIufWTxrsVshhIBvYNqC80N0GSFWTsqRVexOtfzlgOEDvA==
   dependencies:
     "@babel/helper-annotate-as-pure" "^7.18.6"
     "@babel/helper-environment-visitor" "^7.18.9"
     "@babel/helper-function-name" "^7.19.0"
     "@babel/helper-member-expression-to-functions" "^7.18.9"
     "@babel/helper-optimise-call-expression" "^7.18.6"
-    "@babel/helper-replace-supers" "^7.18.9"
+    "@babel/helper-replace-supers" "^7.19.1"
     "@babel/helper-split-export-declaration" "^7.18.6"
 
 "@babel/helper-create-regexp-features-plugin@^7.18.6":
@@ -217,19 +217,19 @@
   dependencies:
     "@babel/types" "^7.18.6"
 
-"@babel/helper-module-transforms@^7.18.6", "@babel/helper-module-transforms@^7.19.0", "@babel/helper-module-transforms@^7.19.6":
-  version "7.19.6"
-  resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.19.6.tgz#6c52cc3ac63b70952d33ee987cbee1c9368b533f"
-  integrity sha512-fCmcfQo/KYr/VXXDIyd3CBGZ6AFhPFy1TfSEJ+PilGVlQT6jcbqtHAM4C1EciRqMza7/TpOUZliuSH+U6HAhJw==
+"@babel/helper-module-transforms@^7.18.6", "@babel/helper-module-transforms@^7.19.6", "@babel/helper-module-transforms@^7.20.2":
+  version "7.20.2"
+  resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.20.2.tgz#ac53da669501edd37e658602a21ba14c08748712"
+  integrity sha512-zvBKyJXRbmK07XhMuujYoJ48B5yvvmM6+wcpv6Ivj4Yg6qO7NOZOSnvZN9CRl1zz1Z4cKf8YejmCMh8clOoOeA==
   dependencies:
     "@babel/helper-environment-visitor" "^7.18.9"
     "@babel/helper-module-imports" "^7.18.6"
-    "@babel/helper-simple-access" "^7.19.4"
+    "@babel/helper-simple-access" "^7.20.2"
     "@babel/helper-split-export-declaration" "^7.18.6"
     "@babel/helper-validator-identifier" "^7.19.1"
     "@babel/template" "^7.18.10"
-    "@babel/traverse" "^7.19.6"
-    "@babel/types" "^7.19.4"
+    "@babel/traverse" "^7.20.1"
+    "@babel/types" "^7.20.2"
 
 "@babel/helper-optimise-call-expression@^7.18.6":
   version "7.18.6"
@@ -238,10 +238,10 @@
   dependencies:
     "@babel/types" "^7.18.6"
 
-"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.16.7", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.18.9", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3":
-  version "7.19.0"
-  resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.19.0.tgz#4796bb14961521f0f8715990bee2fb6e51ce21bf"
-  integrity sha512-40Ryx7I8mT+0gaNxm8JGTZFUITNqdLAgdg0hXzeVZxVD6nFsdhQvip6v8dqkRHzsz1VFpFAaOCHNn0vKBL7Czw==
+"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.16.7", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.18.9", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3":
+  version "7.20.2"
+  resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz#d1b9000752b18d0877cff85a5c376ce5c3121629"
+  integrity sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==
 
 "@babel/helper-remap-async-to-generator@^7.18.6":
   version "7.18.6"
@@ -263,7 +263,7 @@
     "@babel/helper-wrap-function" "^7.18.9"
     "@babel/types" "^7.18.9"
 
-"@babel/helper-replace-supers@^7.18.6", "@babel/helper-replace-supers@^7.18.9", "@babel/helper-replace-supers@^7.19.1":
+"@babel/helper-replace-supers@^7.18.6", "@babel/helper-replace-supers@^7.19.1":
   version "7.19.1"
   resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.19.1.tgz#e1592a9b4b368aa6bdb8784a711e0bcbf0612b78"
   integrity sha512-T7ahH7wV0Hfs46SFh5Jz3s0B6+o8g3c+7TMxu7xKfmHikg7EAZ3I2Qk9LFhjxXq8sL7UkP5JflezNwoZa8WvWw==
@@ -274,19 +274,12 @@
     "@babel/traverse" "^7.19.1"
     "@babel/types" "^7.19.0"
 
-"@babel/helper-simple-access@^7.18.6":
-  version "7.18.6"
-  resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz#d6d8f51f4ac2978068df934b569f08f29788c7ea"
-  integrity sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==
-  dependencies:
-    "@babel/types" "^7.18.6"
-
-"@babel/helper-simple-access@^7.19.4":
-  version "7.19.4"
-  resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.19.4.tgz#be553f4951ac6352df2567f7daa19a0ee15668e7"
-  integrity sha512-f9Xq6WqBFqaDfbCzn2w85hwklswz5qsKlh7f08w4Y9yhJHpnNC0QemtSkK5YyOY8kPGvyiwdzZksGUhnGdaUIg==
+"@babel/helper-simple-access@^7.19.4", "@babel/helper-simple-access@^7.20.2":
+  version "7.20.2"
+  resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz#0ab452687fe0c2cfb1e2b9e0015de07fc2d62dd9"
+  integrity sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==
   dependencies:
-    "@babel/types" "^7.19.4"
+    "@babel/types" "^7.20.2"
 
 "@babel/helper-skip-transparent-expression-wrappers@^7.18.9":
   version "7.18.9"
@@ -347,14 +340,14 @@
     "@babel/traverse" "^7.18.10"
     "@babel/types" "^7.18.10"
 
-"@babel/helpers@^7.19.4":
-  version "7.19.4"
-  resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.19.4.tgz#42154945f87b8148df7203a25c31ba9a73be46c5"
-  integrity sha512-G+z3aOx2nfDHwX/kyVii5fJq+bgscg89/dJNWpYeKeBv3v9xX8EIabmx1k6u9LS04H7nROFVRVK+e3k0VHp+sw==
+"@babel/helpers@^7.20.1":
+  version "7.20.1"
+  resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.20.1.tgz#2ab7a0fcb0a03b5bf76629196ed63c2d7311f4c9"
+  integrity sha512-J77mUVaDTUJFZ5BpP6mMn6OIl3rEWymk2ZxDBQJUG3P+PbmyMcF3bYWvz0ma69Af1oobDqT/iAsvzhB58xhQUg==
   dependencies:
     "@babel/template" "^7.18.10"
-    "@babel/traverse" "^7.19.4"
-    "@babel/types" "^7.19.4"
+    "@babel/traverse" "^7.20.1"
+    "@babel/types" "^7.20.0"
 
 "@babel/highlight@^7.10.4":
   version "7.12.13"
@@ -374,10 +367,10 @@
     chalk "^2.0.0"
     js-tokens "^4.0.0"
 
-"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.18.10", "@babel/parser@^7.19.6":
-  version "7.19.6"
-  resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.19.6.tgz#b923430cb94f58a7eae8facbffa9efd19130e7f8"
-  integrity sha512-h1IUp81s2JYJ3mRkdxJgs4UvmSsRvDrx5ICSJbPvtWYv5i1nTBGcBpnog+89rAFMwvvru6E5NUHdBe01UeSzYA==
+"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.18.10", "@babel/parser@^7.20.1", "@babel/parser@^7.20.2":
+  version "7.20.3"
+  resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.20.3.tgz#5358cf62e380cf69efcb87a7bb922ff88bfac6e2"
+  integrity sha512-OP/s5a94frIPXwjzEcv5S/tpQfc6XhxYUnmWpgdqMWGgYCuErA3SzozaRAMQgSZWKeTJxht9aWAkUY+0UzvOFg==
 
 "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.18.6":
   version "7.18.6"
@@ -395,10 +388,10 @@
     "@babel/helper-skip-transparent-expression-wrappers" "^7.18.9"
     "@babel/plugin-proposal-optional-chaining" "^7.18.9"
 
-"@babel/plugin-proposal-async-generator-functions@^7.19.1":
-  version "7.19.1"
-  resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.19.1.tgz#34f6f5174b688529342288cd264f80c9ea9fb4a7"
-  integrity sha512-0yu8vNATgLy4ivqMNBIwb1HebCelqN7YX8SL3FDXORv/RqT0zEEWUCH4GH44JsSrvCu6GqnAdR5EBFAPeNBB4Q==
+"@babel/plugin-proposal-async-generator-functions@^7.20.1":
+  version "7.20.1"
+  resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.1.tgz#352f02baa5d69f4e7529bdac39aaa02d41146af9"
+  integrity sha512-Gh5rchzSwE4kC+o/6T8waD0WHEQIsDmjltY8WnWRXHUdH8axZhuH86Ov9M72YhJfDrZseQwuuWaaIT/TmePp3g==
   dependencies:
     "@babel/helper-environment-visitor" "^7.18.9"
     "@babel/helper-plugin-utils" "^7.19.0"
@@ -422,13 +415,13 @@
     "@babel/helper-plugin-utils" "^7.18.6"
     "@babel/plugin-syntax-class-static-block" "^7.14.5"
 
-"@babel/plugin-proposal-decorators@^7.19.6":
-  version "7.19.6"
-  resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.19.6.tgz#0f1af5c21957e9a438cc1d08d2a6a6858af127b7"
-  integrity sha512-PKWforYpkVkogpOW0RaPuh7eQ7AoFgBJP+d87tQCRY2LVbvyGtfRM7RtrhCBsNgZb+2EY28SeWB6p2xe1Z5oAw==
+"@babel/plugin-proposal-decorators@^7.20.2":
+  version "7.20.2"
+  resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.20.2.tgz#1c6c32b2a44b154ebeec2bb534f9eaebdb541fb6"
+  integrity sha512-nkBH96IBmgKnbHQ5gXFrcmez+Z9S2EIDKDQGp005ROqBigc88Tky4rzCnlP/lnlj245dCEQl4/YyV0V1kYh5dw==
   dependencies:
-    "@babel/helper-create-class-features-plugin" "^7.19.0"
-    "@babel/helper-plugin-utils" "^7.19.0"
+    "@babel/helper-create-class-features-plugin" "^7.20.2"
+    "@babel/helper-plugin-utils" "^7.20.2"
     "@babel/helper-replace-supers" "^7.19.1"
     "@babel/helper-split-export-declaration" "^7.18.6"
     "@babel/plugin-syntax-decorators" "^7.19.0"
@@ -481,16 +474,16 @@
     "@babel/helper-plugin-utils" "^7.18.6"
     "@babel/plugin-syntax-numeric-separator" "^7.10.4"
 
-"@babel/plugin-proposal-object-rest-spread@^7.19.4":
-  version "7.19.4"
-  resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.19.4.tgz#a8fc86e8180ff57290c91a75d83fe658189b642d"
-  integrity sha512-wHmj6LDxVDnL+3WhXteUBaoM1aVILZODAUjg11kHqG4cOlfgMQGxw6aCgvrXrmaJR3Bn14oZhImyCPZzRpC93Q==
+"@babel/plugin-proposal-object-rest-spread@^7.20.2":
+  version "7.20.2"
+  resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.2.tgz#a556f59d555f06961df1e572bb5eca864c84022d"
+  integrity sha512-Ks6uej9WFK+fvIMesSqbAto5dD8Dz4VuuFvGJFKgIGSkJuRGcrwGECPA1fDgQK3/DbExBJpEkTeYeB8geIFCSQ==
   dependencies:
-    "@babel/compat-data" "^7.19.4"
-    "@babel/helper-compilation-targets" "^7.19.3"
-    "@babel/helper-plugin-utils" "^7.19.0"
+    "@babel/compat-data" "^7.20.1"
+    "@babel/helper-compilation-targets" "^7.20.0"
+    "@babel/helper-plugin-utils" "^7.20.2"
     "@babel/plugin-syntax-object-rest-spread" "^7.8.3"
-    "@babel/plugin-transform-parameters" "^7.18.8"
+    "@babel/plugin-transform-parameters" "^7.20.1"
 
 "@babel/plugin-proposal-optional-catch-binding@^7.18.6":
   version "7.18.6"
@@ -584,12 +577,12 @@
   dependencies:
     "@babel/helper-plugin-utils" "^7.8.3"
 
-"@babel/plugin-syntax-import-assertions@^7.18.6":
-  version "7.18.6"
-  resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.18.6.tgz#cd6190500a4fa2fe31990a963ffab4b63e4505e4"
-  integrity sha512-/DU3RXad9+bZwrgWJQKbr39gYbJpLJHezqEzRzi/BHRlJ9zsQb4CK2CA/5apllXNomwA1qHwzvHl+AdEmC5krQ==
+"@babel/plugin-syntax-import-assertions@^7.20.0":
+  version "7.20.0"
+  resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz#bb50e0d4bea0957235390641209394e87bdb9cc4"
+  integrity sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.18.6"
+    "@babel/helper-plugin-utils" "^7.19.0"
 
 "@babel/plugin-syntax-import-meta@^7.8.3":
   version "7.10.4"
@@ -705,25 +698,25 @@
   dependencies:
     "@babel/helper-plugin-utils" "^7.18.6"
 
-"@babel/plugin-transform-block-scoping@^7.19.4":
-  version "7.19.4"
-  resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.19.4.tgz#315d70f68ce64426db379a3d830e7ac30be02e9b"
-  integrity sha512-934S2VLLlt2hRJwPf4MczaOr4hYF0z+VKPwqTNxyKX7NthTiPfhuKFWQZHXRM0vh/wo/VyXB3s4bZUNA08l+tQ==
+"@babel/plugin-transform-block-scoping@^7.20.2":
+  version "7.20.2"
+  resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.20.2.tgz#f59b1767e6385c663fd0bce655db6ca9c8b236ed"
+  integrity sha512-y5V15+04ry69OV2wULmwhEA6jwSWXO1TwAtIwiPXcvHcoOQUqpyMVd2bDsQJMW8AurjulIyUV8kDqtjSwHy1uQ==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.19.0"
+    "@babel/helper-plugin-utils" "^7.20.2"
 
-"@babel/plugin-transform-classes@^7.19.0":
-  version "7.19.0"
-  resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.19.0.tgz#0e61ec257fba409c41372175e7c1e606dc79bb20"
-  integrity sha512-YfeEE9kCjqTS9IitkgfJuxjcEtLUHMqa8yUJ6zdz8vR7hKuo6mOy2C05P0F1tdMmDCeuyidKnlrw/iTppHcr2A==
+"@babel/plugin-transform-classes@^7.20.2":
+  version "7.20.2"
+  resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.20.2.tgz#c0033cf1916ccf78202d04be4281d161f6709bb2"
+  integrity sha512-9rbPp0lCVVoagvtEyQKSo5L8oo0nQS/iif+lwlAz29MccX2642vWDlSZK+2T2buxbopotId2ld7zZAzRfz9j1g==
   dependencies:
     "@babel/helper-annotate-as-pure" "^7.18.6"
-    "@babel/helper-compilation-targets" "^7.19.0"
+    "@babel/helper-compilation-targets" "^7.20.0"
     "@babel/helper-environment-visitor" "^7.18.9"
     "@babel/helper-function-name" "^7.19.0"
     "@babel/helper-optimise-call-expression" "^7.18.6"
-    "@babel/helper-plugin-utils" "^7.19.0"
-    "@babel/helper-replace-supers" "^7.18.9"
+    "@babel/helper-plugin-utils" "^7.20.2"
+    "@babel/helper-replace-supers" "^7.19.1"
     "@babel/helper-split-export-declaration" "^7.18.6"
     globals "^11.1.0"
 
@@ -734,12 +727,12 @@
   dependencies:
     "@babel/helper-plugin-utils" "^7.18.9"
 
-"@babel/plugin-transform-destructuring@^7.19.4":
-  version "7.19.4"
-  resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.19.4.tgz#46890722687b9b89e1369ad0bd8dc6c5a3b4319d"
-  integrity sha512-t0j0Hgidqf0aM86dF8U+vXYReUgJnlv4bZLsyoPnwZNrGY+7/38o8YjaELrvHeVfTZao15kjR0PVv0nju2iduA==
+"@babel/plugin-transform-destructuring@^7.20.2":
+  version "7.20.2"
+  resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.20.2.tgz#c23741cfa44ddd35f5e53896e88c75331b8b2792"
+  integrity sha512-mENM+ZHrvEgxLTBXUiQ621rRXZes3KWUv6NdQlrnr1TkWVw+hUjQBZuP2X32qKlrlG2BzgR95gkuCRSkJl8vIw==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.19.0"
+    "@babel/helper-plugin-utils" "^7.20.2"
 
 "@babel/plugin-transform-dotall-regex@^7.18.6", "@babel/plugin-transform-dotall-regex@^7.4.4":
   version "7.18.6"
@@ -794,35 +787,32 @@
   dependencies:
     "@babel/helper-plugin-utils" "^7.18.6"
 
-"@babel/plugin-transform-modules-amd@^7.18.6":
-  version "7.18.6"
-  resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.18.6.tgz#8c91f8c5115d2202f277549848874027d7172d21"
-  integrity sha512-Pra5aXsmTsOnjM3IajS8rTaLCy++nGM4v3YR4esk5PCsyg9z8NA5oQLwxzMUtDBd8F+UmVza3VxoAaWCbzH1rg==
+"@babel/plugin-transform-modules-amd@^7.19.6":
+  version "7.19.6"
+  resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.19.6.tgz#aca391801ae55d19c4d8d2ebfeaa33df5f2a2cbd"
+  integrity sha512-uG3od2mXvAtIFQIh0xrpLH6r5fpSQN04gIVovl+ODLdUMANokxQLZnPBHcjmv3GxRjnqwLuHvppjjcelqUFZvg==
   dependencies:
-    "@babel/helper-module-transforms" "^7.18.6"
-    "@babel/helper-plugin-utils" "^7.18.6"
-    babel-plugin-dynamic-import-node "^2.3.3"
+    "@babel/helper-module-transforms" "^7.19.6"
+    "@babel/helper-plugin-utils" "^7.19.0"
 
-"@babel/plugin-transform-modules-commonjs@^7.18.6":
-  version "7.18.6"
-  resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.6.tgz#afd243afba166cca69892e24a8fd8c9f2ca87883"
-  integrity sha512-Qfv2ZOWikpvmedXQJDSbxNqy7Xr/j2Y8/KfijM0iJyKkBTmWuvCA1yeH1yDM7NJhBW/2aXxeucLj6i80/LAJ/Q==
+"@babel/plugin-transform-modules-commonjs@^7.19.6":
+  version "7.19.6"
+  resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.19.6.tgz#25b32feef24df8038fc1ec56038917eacb0b730c"
+  integrity sha512-8PIa1ym4XRTKuSsOUXqDG0YaOlEuTVvHMe5JCfgBMOtHvJKw/4NGovEGN33viISshG/rZNVrACiBmPQLvWN8xQ==
   dependencies:
-    "@babel/helper-module-transforms" "^7.18.6"
-    "@babel/helper-plugin-utils" "^7.18.6"
-    "@babel/helper-simple-access" "^7.18.6"
-    babel-plugin-dynamic-import-node "^2.3.3"
+    "@babel/helper-module-transforms" "^7.19.6"
+    "@babel/helper-plugin-utils" "^7.19.0"
+    "@babel/helper-simple-access" "^7.19.4"
 
-"@babel/plugin-transform-modules-systemjs@^7.19.0":
-  version "7.19.0"
-  resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.19.0.tgz#5f20b471284430f02d9c5059d9b9a16d4b085a1f"
-  integrity sha512-x9aiR0WXAWmOWsqcsnrzGR+ieaTMVyGyffPVA7F8cXAGt/UxefYv6uSHZLkAFChN5M5Iy1+wjE+xJuPt22H39A==
+"@babel/plugin-transform-modules-systemjs@^7.19.6":
+  version "7.19.6"
+  resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.19.6.tgz#59e2a84064b5736a4471b1aa7b13d4431d327e0d"
+  integrity sha512-fqGLBepcc3kErfR9R3DnVpURmckXP7gj7bAlrTQyBxrigFqszZCkFkcoxzCp2v32XmwXLvbw+8Yq9/b+QqksjQ==
   dependencies:
     "@babel/helper-hoist-variables" "^7.18.6"
-    "@babel/helper-module-transforms" "^7.19.0"
+    "@babel/helper-module-transforms" "^7.19.6"
     "@babel/helper-plugin-utils" "^7.19.0"
-    "@babel/helper-validator-identifier" "^7.18.6"
-    babel-plugin-dynamic-import-node "^2.3.3"
+    "@babel/helper-validator-identifier" "^7.19.1"
 
 "@babel/plugin-transform-modules-umd@^7.18.6":
   version "7.18.6"
@@ -855,12 +845,12 @@
     "@babel/helper-plugin-utils" "^7.18.6"
     "@babel/helper-replace-supers" "^7.18.6"
 
-"@babel/plugin-transform-parameters@^7.18.8":
-  version "7.18.8"
-  resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.18.8.tgz#ee9f1a0ce6d78af58d0956a9378ea3427cccb48a"
-  integrity sha512-ivfbE3X2Ss+Fj8nnXvKJS6sjRG4gzwPMsP+taZC+ZzEGjAYlvENixmt1sZ5Ca6tWls+BlKSGKPJ6OOXvXCbkFg==
+"@babel/plugin-transform-parameters@^7.20.1":
+  version "7.20.3"
+  resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.20.3.tgz#7b3468d70c3c5b62e46be0a47b6045d8590fb748"
+  integrity sha512-oZg/Fpx0YDrj13KsLyO8I/CX3Zdw7z0O9qOd95SqcoIzuqy/WTGWvePeHAnZCN54SfdyjHcb1S30gc8zlzlHcA==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.18.6"
+    "@babel/helper-plugin-utils" "^7.20.2"
 
 "@babel/plugin-transform-property-literals@^7.18.6":
   version "7.18.6"
@@ -988,18 +978,18 @@
     "@babel/helper-create-regexp-features-plugin" "^7.18.6"
     "@babel/helper-plugin-utils" "^7.18.6"
 
-"@babel/preset-env@^7.11.0", "@babel/preset-env@^7.19.4":
-  version "7.19.4"
-  resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.19.4.tgz#4c91ce2e1f994f717efb4237891c3ad2d808c94b"
-  integrity sha512-5QVOTXUdqTCjQuh2GGtdd7YEhoRXBMVGROAtsBeLGIbIz3obCBIfRMT1I3ZKkMgNzwkyCkftDXSSkHxnfVf4qg==
+"@babel/preset-env@^7.11.0", "@babel/preset-env@^7.20.2":
+  version "7.20.2"
+  resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.20.2.tgz#9b1642aa47bb9f43a86f9630011780dab7f86506"
+  integrity sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg==
   dependencies:
-    "@babel/compat-data" "^7.19.4"
-    "@babel/helper-compilation-targets" "^7.19.3"
-    "@babel/helper-plugin-utils" "^7.19.0"
+    "@babel/compat-data" "^7.20.1"
+    "@babel/helper-compilation-targets" "^7.20.0"
+    "@babel/helper-plugin-utils" "^7.20.2"
     "@babel/helper-validator-option" "^7.18.6"
     "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.18.6"
     "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.18.9"
-    "@babel/plugin-proposal-async-generator-functions" "^7.19.1"
+    "@babel/plugin-proposal-async-generator-functions" "^7.20.1"
     "@babel/plugin-proposal-class-properties" "^7.18.6"
     "@babel/plugin-proposal-class-static-block" "^7.18.6"
     "@babel/plugin-proposal-dynamic-import" "^7.18.6"
@@ -1008,7 +998,7 @@
     "@babel/plugin-proposal-logical-assignment-operators" "^7.18.9"
     "@babel/plugin-proposal-nullish-coalescing-operator" "^7.18.6"
     "@babel/plugin-proposal-numeric-separator" "^7.18.6"
-    "@babel/plugin-proposal-object-rest-spread" "^7.19.4"
+    "@babel/plugin-proposal-object-rest-spread" "^7.20.2"
     "@babel/plugin-proposal-optional-catch-binding" "^7.18.6"
     "@babel/plugin-proposal-optional-chaining" "^7.18.9"
     "@babel/plugin-proposal-private-methods" "^7.18.6"
@@ -1019,7 +1009,7 @@
     "@babel/plugin-syntax-class-static-block" "^7.14.5"
     "@babel/plugin-syntax-dynamic-import" "^7.8.3"
     "@babel/plugin-syntax-export-namespace-from" "^7.8.3"
-    "@babel/plugin-syntax-import-assertions" "^7.18.6"
+    "@babel/plugin-syntax-import-assertions" "^7.20.0"
     "@babel/plugin-syntax-json-strings" "^7.8.3"
     "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4"
     "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3"
@@ -1032,10 +1022,10 @@
     "@babel/plugin-transform-arrow-functions" "^7.18.6"
     "@babel/plugin-transform-async-to-generator" "^7.18.6"
     "@babel/plugin-transform-block-scoped-functions" "^7.18.6"
-    "@babel/plugin-transform-block-scoping" "^7.19.4"
-    "@babel/plugin-transform-classes" "^7.19.0"
+    "@babel/plugin-transform-block-scoping" "^7.20.2"
+    "@babel/plugin-transform-classes" "^7.20.2"
     "@babel/plugin-transform-computed-properties" "^7.18.9"
-    "@babel/plugin-transform-destructuring" "^7.19.4"
+    "@babel/plugin-transform-destructuring" "^7.20.2"
     "@babel/plugin-transform-dotall-regex" "^7.18.6"
     "@babel/plugin-transform-duplicate-keys" "^7.18.9"
     "@babel/plugin-transform-exponentiation-operator" "^7.18.6"
@@ -1043,14 +1033,14 @@
     "@babel/plugin-transform-function-name" "^7.18.9"
     "@babel/plugin-transform-literals" "^7.18.9"
     "@babel/plugin-transform-member-expression-literals" "^7.18.6"
-    "@babel/plugin-transform-modules-amd" "^7.18.6"
-    "@babel/plugin-transform-modules-commonjs" "^7.18.6"
-    "@babel/plugin-transform-modules-systemjs" "^7.19.0"
+    "@babel/plugin-transform-modules-amd" "^7.19.6"
+    "@babel/plugin-transform-modules-commonjs" "^7.19.6"
+    "@babel/plugin-transform-modules-systemjs" "^7.19.6"
     "@babel/plugin-transform-modules-umd" "^7.18.6"
     "@babel/plugin-transform-named-capturing-groups-regex" "^7.19.1"
     "@babel/plugin-transform-new-target" "^7.18.6"
     "@babel/plugin-transform-object-super" "^7.18.6"
-    "@babel/plugin-transform-parameters" "^7.18.8"
+    "@babel/plugin-transform-parameters" "^7.20.1"
     "@babel/plugin-transform-property-literals" "^7.18.6"
     "@babel/plugin-transform-regenerator" "^7.18.6"
     "@babel/plugin-transform-reserved-words" "^7.18.6"
@@ -1062,7 +1052,7 @@
     "@babel/plugin-transform-unicode-escapes" "^7.18.10"
     "@babel/plugin-transform-unicode-regex" "^7.18.6"
     "@babel/preset-modules" "^0.1.5"
-    "@babel/types" "^7.19.4"
+    "@babel/types" "^7.20.2"
     babel-plugin-polyfill-corejs2 "^0.3.3"
     babel-plugin-polyfill-corejs3 "^0.6.0"
     babel-plugin-polyfill-regenerator "^0.4.1"
@@ -1107,12 +1097,12 @@
   dependencies:
     regenerator-runtime "^0.12.0"
 
-"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.10.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.13.10", "@babel/runtime@^7.15.4", "@babel/runtime@^7.18.9", "@babel/runtime@^7.19.4", "@babel/runtime@^7.2.0", "@babel/runtime@^7.3.1", "@babel/runtime@^7.5.5", "@babel/runtime@^7.7.2", "@babel/runtime@^7.8.4", "@babel/runtime@^7.9.2":
-  version "7.19.4"
-  resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.19.4.tgz#a42f814502ee467d55b38dd1c256f53a7b885c78"
-  integrity sha512-EXpLCrk55f+cYqmHsSR+yD/0gAIMxxA9QK9lnQWzhMCvt+YmoBN7Zx94s++Kv0+unHk39vxNO8t+CMA2WSS3wA==
+"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.10.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.13.10", "@babel/runtime@^7.15.4", "@babel/runtime@^7.18.9", "@babel/runtime@^7.2.0", "@babel/runtime@^7.20.1", "@babel/runtime@^7.3.1", "@babel/runtime@^7.5.5", "@babel/runtime@^7.7.2", "@babel/runtime@^7.8.4", "@babel/runtime@^7.9.2":
+  version "7.20.1"
+  resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.20.1.tgz#1148bb33ab252b165a06698fde7576092a78b4a9"
+  integrity sha512-mrzLkl6U9YLF8qpqI7TB82PESyEGjm/0Ly91jG575eVxMMlb8fYfOXFZIJ8XfLrJZQbm7dlKry2bJmXBUEkdFg==
   dependencies:
-    regenerator-runtime "^0.13.4"
+    regenerator-runtime "^0.13.10"
 
 "@babel/runtime@^7.8.7":
   version "7.16.7"
@@ -1130,26 +1120,26 @@
     "@babel/parser" "^7.18.10"
     "@babel/types" "^7.18.10"
 
-"@babel/traverse@^7.18.10", "@babel/traverse@^7.18.6", "@babel/traverse@^7.19.1", "@babel/traverse@^7.19.4", "@babel/traverse@^7.19.6", "@babel/traverse@^7.7.2":
-  version "7.19.6"
-  resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.19.6.tgz#7b4c865611df6d99cb131eec2e8ac71656a490dc"
-  integrity sha512-6l5HrUCzFM04mfbG09AagtYyR2P0B71B1wN7PfSPiksDPz2k5H9CBC1tcZpz2M8OxbKTPccByoOJ22rUKbpmQQ==
+"@babel/traverse@^7.18.10", "@babel/traverse@^7.18.6", "@babel/traverse@^7.19.1", "@babel/traverse@^7.20.1", "@babel/traverse@^7.7.2":
+  version "7.20.1"
+  resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.20.1.tgz#9b15ccbf882f6d107eeeecf263fbcdd208777ec8"
+  integrity sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA==
   dependencies:
     "@babel/code-frame" "^7.18.6"
-    "@babel/generator" "^7.19.6"
+    "@babel/generator" "^7.20.1"
     "@babel/helper-environment-visitor" "^7.18.9"
     "@babel/helper-function-name" "^7.19.0"
     "@babel/helper-hoist-variables" "^7.18.6"
     "@babel/helper-split-export-declaration" "^7.18.6"
-    "@babel/parser" "^7.19.6"
-    "@babel/types" "^7.19.4"
+    "@babel/parser" "^7.20.1"
+    "@babel/types" "^7.20.0"
     debug "^4.1.0"
     globals "^11.1.0"
 
-"@babel/types@^7.0.0", "@babel/types@^7.0.0-beta.49", "@babel/types@^7.18.10", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.19.4", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4":
-  version "7.19.4"
-  resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.19.4.tgz#0dd5c91c573a202d600490a35b33246fed8a41c7"
-  integrity sha512-M5LK7nAeS6+9j7hAq+b3fQs+pNfUtTGq+yFFfHnauFA8zQtLRfmuipmsKDKKLuyG+wC8ABW43A153YNawNTEtw==
+"@babel/types@^7.0.0", "@babel/types@^7.0.0-beta.49", "@babel/types@^7.18.10", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.20.0", "@babel/types@^7.20.2", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4":
+  version "7.20.2"
+  resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.20.2.tgz#67ac09266606190f496322dbaff360fdaa5e7842"
+  integrity sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog==
   dependencies:
     "@babel/helper-string-parser" "^7.19.4"
     "@babel/helper-validator-identifier" "^7.19.1"
@@ -2309,12 +2299,7 @@ acorn-jsx@^5.3.1:
   resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz"
   integrity sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==
 
-acorn-walk@^8.0.0:
-  version "8.0.0"
-  resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.0.0.tgz"
-  integrity sha512-oZRad/3SMOI/pxbbmqyurIx7jHw1wZDcR9G44L8pUVFEomX/0dH89SrM1KaDXuv1NpzAXz6Op/Xu/Qd5XXzdEA==
-
-acorn-walk@^8.0.2:
+acorn-walk@^8.0.0, acorn-walk@^8.0.2:
   version "8.2.0"
   resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1"
   integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==
@@ -2329,10 +2314,10 @@ acorn@^7.4.0:
   resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz"
   integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==
 
-acorn@^8.0.4, acorn@^8.1.0, acorn@^8.5.0, acorn@^8.8.0:
-  version "8.8.0"
-  resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.0.tgz#88c0187620435c7f6015803f5539dae05a9dbea8"
-  integrity sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==
+acorn@^8.0.4, acorn@^8.1.0, acorn@^8.5.0, acorn@^8.8.1:
+  version "8.8.1"
+  resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.1.tgz#0a3f9cbecc4ec3bea6f0a80b66ae8dd2da250b73"
+  integrity sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==
 
 agent-base@6:
   version "6.0.2"
@@ -2540,15 +2525,15 @@ array-flatten@^2.1.0:
   resolved "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz"
   integrity sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==
 
-array-includes@^3.1.4, array-includes@^3.1.5:
-  version "3.1.5"
-  resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.5.tgz#2c320010db8d31031fd2a5f6b3bbd4b1aad31bdb"
-  integrity sha512-iSDYZMMyTPkiFasVqfuAQnWAYcvO/SeBSCGKePoEthjp4LEMTe4uLc7b025o4jAZpHhihh8xPo99TNWUWWkGDQ==
+array-includes@^3.1.4, array-includes@^3.1.5, array-includes@^3.1.6:
+  version "3.1.6"
+  resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.6.tgz#9e9e720e194f198266ba9e18c29e6a9b0e4b225f"
+  integrity sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==
   dependencies:
     call-bind "^1.0.2"
     define-properties "^1.1.4"
-    es-abstract "^1.19.5"
-    get-intrinsic "^1.1.1"
+    es-abstract "^1.20.4"
+    get-intrinsic "^1.1.3"
     is-string "^1.0.7"
 
 array-union@^1.0.1:
@@ -2582,16 +2567,27 @@ array.prototype.flat@^1.2.5:
     define-properties "^1.1.3"
     es-abstract "^1.19.0"
 
-array.prototype.flatmap@^1.3.0:
-  version "1.3.0"
-  resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.0.tgz#a7e8ed4225f4788a70cd910abcf0791e76a5534f"
-  integrity sha512-PZC9/8TKAIxcWKdyeb77EzULHPrIX/tIZebLJUQOMR1OwYosT8yggdfWScfTBCDj5utONvOuPQQumYsU2ULbkg==
+array.prototype.flatmap@^1.3.1:
+  version "1.3.1"
+  resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz#1aae7903c2100433cb8261cd4ed310aab5c4a183"
+  integrity sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==
   dependencies:
     call-bind "^1.0.2"
-    define-properties "^1.1.3"
-    es-abstract "^1.19.2"
+    define-properties "^1.1.4"
+    es-abstract "^1.20.4"
     es-shim-unscopables "^1.0.0"
 
+array.prototype.tosorted@^1.1.1:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/array.prototype.tosorted/-/array.prototype.tosorted-1.1.1.tgz#ccf44738aa2b5ac56578ffda97c03fd3e23dd532"
+  integrity sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==
+  dependencies:
+    call-bind "^1.0.2"
+    define-properties "^1.1.4"
+    es-abstract "^1.20.4"
+    es-shim-unscopables "^1.0.0"
+    get-intrinsic "^1.1.3"
+
 arrify@^1.0.1:
   version "1.0.1"
   resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d"
@@ -2735,23 +2731,16 @@ babel-jest@^29.2.2:
     graceful-fs "^4.2.9"
     slash "^3.0.0"
 
-babel-loader@^8.2.5:
-  version "8.2.5"
-  resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.2.5.tgz#d45f585e654d5a5d90f5350a779d7647c5ed512e"
-  integrity sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==
+babel-loader@^8.3.0:
+  version "8.3.0"
+  resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.3.0.tgz#124936e841ba4fe8176786d6ff28add1f134d6a8"
+  integrity sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==
   dependencies:
     find-cache-dir "^3.3.1"
     loader-utils "^2.0.0"
     make-dir "^3.1.0"
     schema-utils "^2.6.5"
 
-babel-plugin-dynamic-import-node@^2.3.3:
-  version "2.3.3"
-  resolved "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz"
-  integrity sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==
-  dependencies:
-    object.assign "^4.1.0"
-
 babel-plugin-istanbul@^6.1.1:
   version "6.1.1"
   resolved "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz"
@@ -2950,10 +2939,10 @@ blueimp-load-image@^3.0.0:
   resolved "https://registry.npmjs.org/blueimp-load-image/-/blueimp-load-image-3.0.0.tgz"
   integrity sha512-Q9rFbd4ZUNvzSFmRXx9MoG0RwWwJeMjjEUbG7WIOJgUg22Jgkow0wL5b35B6qwiBscxACW9OHdrP5s2vQ3x8DQ==
 
-blurhash@^2.0.3:
-  version "2.0.3"
-  resolved "https://registry.yarnpkg.com/blurhash/-/blurhash-2.0.3.tgz#5c1166bf5b65e09e337fe5b8c6b53e1218085b0b"
-  integrity sha512-nTnJTOheiaV3b189f7rH5AbbrnQB2r3CcOZBg47GUDaE9DrxyBPD2w0HYp4ME2UBlTP7LMIa6nMWqg/58oyIzA==
+blurhash@^2.0.4:
+  version "2.0.4"
+  resolved "https://registry.yarnpkg.com/blurhash/-/blurhash-2.0.4.tgz#60642a823b50acaaf3732ddb6c7dfd721bdfef2a"
+  integrity sha512-r/As72u2FbucLoK5NTegM/GucxJc3d8GvHc4ngo13IO/nt2HU4gONxNLq1XPN6EM/V8Y9URIa7PcSz2RZu553A==
 
 bmp-js@^0.1.0:
   version "0.1.0"
@@ -4136,10 +4125,10 @@ decamelize@^1.1.0, decamelize@^1.2.0:
   resolved "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz"
   integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=
 
-decimal.js@^10.4.1:
-  version "10.4.1"
-  resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.1.tgz#be75eeac4a2281aace80c1a8753587c27ef053e7"
-  integrity sha512-F29o+vci4DodHYT9UrR5IEbfBw9pE5eSapIJdTqXK5+6hq+t8VRxwQyKlW2i+KDKFkkJQRvFyI/QXD83h8LyQw==
+decimal.js@^10.4.2:
+  version "10.4.2"
+  resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.2.tgz#0341651d1d997d86065a2ce3a441fbd0d8e8b98e"
+  integrity sha512-ic1yEvwT6GuvaYwBLLY6/aFFgjZdySKTE8en/fkU3QICTmRtgtSlFn0u0BXN06InZwtfCelR7j8LRiDI/02iGA==
 
 decode-uri-component@^0.2.0:
   version "0.2.0"
@@ -4557,31 +4546,32 @@ error-stack-parser@^2.0.6:
   dependencies:
     stackframe "^1.1.1"
 
-es-abstract@^1.17.0-next.1, es-abstract@^1.19.2:
-  version "1.20.1"
-  resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.20.1.tgz#027292cd6ef44bd12b1913b828116f54787d1814"
-  integrity sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA==
+es-abstract@^1.17.0-next.1, es-abstract@^1.20.4:
+  version "1.20.4"
+  resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.20.4.tgz#1d103f9f8d78d4cf0713edcd6d0ed1a46eed5861"
+  integrity sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==
   dependencies:
     call-bind "^1.0.2"
     es-to-primitive "^1.2.1"
     function-bind "^1.1.1"
     function.prototype.name "^1.1.5"
-    get-intrinsic "^1.1.1"
+    get-intrinsic "^1.1.3"
     get-symbol-description "^1.0.0"
     has "^1.0.3"
     has-property-descriptors "^1.0.0"
     has-symbols "^1.0.3"
     internal-slot "^1.0.3"
-    is-callable "^1.2.4"
+    is-callable "^1.2.7"
     is-negative-zero "^2.0.2"
     is-regex "^1.1.4"
     is-shared-array-buffer "^1.0.2"
     is-string "^1.0.7"
     is-weakref "^1.0.2"
-    object-inspect "^1.12.0"
+    object-inspect "^1.12.2"
     object-keys "^1.1.1"
-    object.assign "^4.1.2"
+    object.assign "^4.1.4"
     regexp.prototype.flags "^1.4.3"
+    safe-regex-test "^1.0.0"
     string.prototype.trimend "^1.0.5"
     string.prototype.trimstart "^1.0.5"
     unbox-primitive "^1.0.2"
@@ -4753,25 +4743,26 @@ eslint-plugin-promise@~6.1.1:
   resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-6.1.1.tgz#269a3e2772f62875661220631bd4dafcb4083816"
   integrity sha512-tjqWDwVZQo7UIPMeDReOpUgHCmCiH+ePnVT+5zVapL0uuHnegBUs2smM13CzOs2Xb5+MHMRFTs9v24yjba4Oig==
 
-eslint-plugin-react@~7.31.10:
-  version "7.31.10"
-  resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.31.10.tgz#6782c2c7fe91c09e715d536067644bbb9491419a"
-  integrity sha512-e4N/nc6AAlg4UKW/mXeYWd3R++qUano5/o+t+wnWxIf+bLsOaH3a4q74kX3nDjYym3VBN4HyO9nEn1GcAqgQOA==
+eslint-plugin-react@~7.31.11:
+  version "7.31.11"
+  resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.31.11.tgz#011521d2b16dcf95795df688a4770b4eaab364c8"
+  integrity sha512-TTvq5JsT5v56wPa9OYHzsrOlHzKZKjV+aLgS+55NJP/cuzdiQPC7PfYoUjMoxlffKtvijpk7vA/jmuqRb9nohw==
   dependencies:
-    array-includes "^3.1.5"
-    array.prototype.flatmap "^1.3.0"
+    array-includes "^3.1.6"
+    array.prototype.flatmap "^1.3.1"
+    array.prototype.tosorted "^1.1.1"
     doctrine "^2.1.0"
     estraverse "^5.3.0"
     jsx-ast-utils "^2.4.1 || ^3.0.0"
     minimatch "^3.1.2"
-    object.entries "^1.1.5"
-    object.fromentries "^2.0.5"
-    object.hasown "^1.1.1"
-    object.values "^1.1.5"
+    object.entries "^1.1.6"
+    object.fromentries "^2.0.6"
+    object.hasown "^1.1.2"
+    object.values "^1.1.6"
     prop-types "^15.8.1"
     resolve "^2.0.0-next.3"
     semver "^6.3.0"
-    string.prototype.matchall "^4.0.7"
+    string.prototype.matchall "^4.0.8"
 
 eslint-scope@5.1.1, eslint-scope@^5.1.1:
   version "5.1.1"
@@ -5439,14 +5430,14 @@ get-caller-file@^2.0.1, get-caller-file@^2.0.5:
   resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz"
   integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==
 
-get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1:
-  version "1.1.1"
-  resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz"
-  integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==
+get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3:
+  version "1.1.3"
+  resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.3.tgz#063c84329ad93e83893c7f4f243ef63ffa351385"
+  integrity sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==
   dependencies:
     function-bind "^1.1.1"
     has "^1.0.3"
-    has-symbols "^1.0.1"
+    has-symbols "^1.0.3"
 
 get-own-enumerable-property-symbols@^3.0.0:
   version "3.0.2"
@@ -6253,11 +6244,21 @@ is-boolean-object@^1.1.0:
     call-bind "^1.0.2"
     has-tostringtag "^1.0.0"
 
-is-callable@^1.1.4, is-callable@^1.2.4:
+is-callable@^1.1.4:
+  version "1.2.2"
+  resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.2.tgz#c7c6715cd22d4ddb48d3e19970223aceabb080d9"
+  integrity sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA==
+
+is-callable@^1.2.4:
   version "1.2.4"
   resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz"
   integrity sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==
 
+is-callable@^1.2.7:
+  version "1.2.7"
+  resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055"
+  integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==
+
 is-color-stop@^1.0.0:
   version "1.1.0"
   resolved "https://registry.npmjs.org/is-color-stop/-/is-color-stop-1.1.0.tgz"
@@ -7073,18 +7074,18 @@ js-yaml@^4.1.0:
   dependencies:
     argparse "^2.0.1"
 
-jsdom@^20.0.0, jsdom@^20.0.1:
-  version "20.0.1"
-  resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-20.0.1.tgz#d95b4a3b6e1eec6520aa01d9d908eade8c6ba153"
-  integrity sha512-pksjj7Rqoa+wdpkKcLzQRHhJCEE42qQhl/xLMUKHgoSejaKOdaXEAnqs6uDNwMl/fciHTzKeR8Wm8cw7N+g98A==
+jsdom@^20.0.0, jsdom@^20.0.3:
+  version "20.0.3"
+  resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-20.0.3.tgz#886a41ba1d4726f67a8858028c99489fed6ad4db"
+  integrity sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ==
   dependencies:
     abab "^2.0.6"
-    acorn "^8.8.0"
+    acorn "^8.8.1"
     acorn-globals "^7.0.0"
     cssom "^0.5.0"
     cssstyle "^2.3.0"
     data-urls "^3.0.2"
-    decimal.js "^10.4.1"
+    decimal.js "^10.4.2"
     domexception "^4.0.0"
     escodegen "^2.0.0"
     form-data "^4.0.0"
@@ -7097,12 +7098,12 @@ jsdom@^20.0.0, jsdom@^20.0.1:
     saxes "^6.0.0"
     symbol-tree "^3.2.4"
     tough-cookie "^4.1.2"
-    w3c-xmlserializer "^3.0.0"
+    w3c-xmlserializer "^4.0.0"
     webidl-conversions "^7.0.0"
     whatwg-encoding "^2.0.0"
     whatwg-mimetype "^3.0.0"
     whatwg-url "^11.0.0"
-    ws "^8.9.0"
+    ws "^8.11.0"
     xml-name-validator "^4.0.0"
 
 jsesc@^2.5.1:
@@ -7277,9 +7278,9 @@ loader-runner@^2.4.0:
   integrity sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==
 
 loader-utils@^1.1.0, loader-utils@^1.2.3, loader-utils@^1.4.0:
-  version "1.4.0"
-  resolved "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz"
-  integrity sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==
+  version "1.4.2"
+  resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.4.2.tgz#29a957f3a63973883eb684f10ffd3d151fec01a3"
+  integrity sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==
   dependencies:
     big.js "^5.2.2"
     emojis-list "^3.0.0"
@@ -7702,7 +7703,12 @@ minimist-options@4.1.0:
     is-plain-obj "^1.1.0"
     kind-of "^6.0.3"
 
-minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6:
+minimist@^1.2.0:
+  version "1.2.7"
+  resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.7.tgz#daa1c4d91f507390437c6a8bc01078e7000c4d18"
+  integrity sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==
+
+minimist@^1.2.5, minimist@^1.2.6:
   version "1.2.6"
   resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44"
   integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==
@@ -8044,10 +8050,10 @@ object-fit-images@^3.2.3:
   resolved "https://registry.npmjs.org/object-fit-images/-/object-fit-images-3.2.4.tgz"
   integrity sha512-G+7LzpYfTfqUyrZlfrou/PLLLAPNC52FTy5y1CBywX+1/FkxIloOyQXBmZ3Zxa2AWO+lMF0JTuvqbr7G5e5CWg==
 
-object-inspect@^1.12.0:
-  version "1.12.0"
-  resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0"
-  integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==
+object-inspect@^1.12.0, object-inspect@^1.12.2:
+  version "1.12.2"
+  resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.2.tgz#c0641f26394532f28ab8d796ab954e43c009a8ea"
+  integrity sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==
 
 object-inspect@^1.9.0:
   version "1.9.0"
@@ -8074,7 +8080,7 @@ object-visit@^1.0.0:
   dependencies:
     isobject "^3.0.0"
 
-object.assign@^4.1.0, object.assign@^4.1.2:
+object.assign@^4.1.2:
   version "4.1.2"
   resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz"
   integrity sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==
@@ -8084,23 +8090,33 @@ object.assign@^4.1.0, object.assign@^4.1.2:
     has-symbols "^1.0.1"
     object-keys "^1.1.1"
 
-object.entries@^1.1.5:
-  version "1.1.5"
-  resolved "https://registry.npmjs.org/object.entries/-/object.entries-1.1.5.tgz"
-  integrity sha512-TyxmjUoZggd4OrrU1W66FMDG6CuqJxsFvymeyXI51+vQLN67zYfZseptRge703kKQdo4uccgAKebXFcRCzk4+g==
+object.assign@^4.1.4:
+  version "4.1.4"
+  resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.4.tgz#9673c7c7c351ab8c4d0b516f4343ebf4dfb7799f"
+  integrity sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==
   dependencies:
     call-bind "^1.0.2"
-    define-properties "^1.1.3"
-    es-abstract "^1.19.1"
+    define-properties "^1.1.4"
+    has-symbols "^1.0.3"
+    object-keys "^1.1.1"
 
-object.fromentries@^2.0.5:
-  version "2.0.5"
-  resolved "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.5.tgz"
-  integrity sha512-CAyG5mWQRRiBU57Re4FKoTBjXfDoNwdFVH2Y1tS9PqCsfUTymAohOkEMSG3aRNKmv4lV3O7p1et7c187q6bynw==
+object.entries@^1.1.6:
+  version "1.1.6"
+  resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.6.tgz#9737d0e5b8291edd340a3e3264bb8a3b00d5fa23"
+  integrity sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==
   dependencies:
     call-bind "^1.0.2"
-    define-properties "^1.1.3"
-    es-abstract "^1.19.1"
+    define-properties "^1.1.4"
+    es-abstract "^1.20.4"
+
+object.fromentries@^2.0.6:
+  version "2.0.6"
+  resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.6.tgz#cdb04da08c539cffa912dcd368b886e0904bfa73"
+  integrity sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==
+  dependencies:
+    call-bind "^1.0.2"
+    define-properties "^1.1.4"
+    es-abstract "^1.20.4"
 
 object.getownpropertydescriptors@^2.1.0:
   version "2.1.3"
@@ -8111,13 +8127,13 @@ object.getownpropertydescriptors@^2.1.0:
     define-properties "^1.1.3"
     es-abstract "^1.19.1"
 
-object.hasown@^1.1.1:
-  version "1.1.1"
-  resolved "https://registry.yarnpkg.com/object.hasown/-/object.hasown-1.1.1.tgz#ad1eecc60d03f49460600430d97f23882cf592a3"
-  integrity sha512-LYLe4tivNQzq4JdaWW6WO3HMZZJWzkkH8fnI6EebWl0VZth2wL2Lovm74ep2/gZzlaTdV62JZHEqHQ2yVn8Q/A==
+object.hasown@^1.1.2:
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/object.hasown/-/object.hasown-1.1.2.tgz#f919e21fad4eb38a57bc6345b3afd496515c3f92"
+  integrity sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==
   dependencies:
     define-properties "^1.1.4"
-    es-abstract "^1.19.5"
+    es-abstract "^1.20.4"
 
 object.pick@^1.3.0:
   version "1.3.0"
@@ -8126,14 +8142,14 @@ object.pick@^1.3.0:
   dependencies:
     isobject "^3.0.1"
 
-object.values@^1.1.0, object.values@^1.1.5:
-  version "1.1.5"
-  resolved "https://registry.npmjs.org/object.values/-/object.values-1.1.5.tgz"
-  integrity sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg==
+object.values@^1.1.0, object.values@^1.1.5, object.values@^1.1.6:
+  version "1.1.6"
+  resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.6.tgz#4abbaa71eba47d63589d402856f908243eea9b1d"
+  integrity sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==
   dependencies:
     call-bind "^1.0.2"
-    define-properties "^1.1.3"
-    es-abstract "^1.19.1"
+    define-properties "^1.1.4"
+    es-abstract "^1.20.4"
 
 obuf@^1.0.0, obuf@^1.1.2:
   version "1.1.2"
@@ -8977,10 +8993,10 @@ postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.27, postcss@^7.0.32:
     picocolors "^0.2.1"
     source-map "^0.6.1"
 
-postcss@^8.2.15, postcss@^8.4.17, postcss@^8.4.18:
-  version "8.4.18"
-  resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.18.tgz#6d50046ea7d3d66a85e0e782074e7203bc7fbca2"
-  integrity sha512-Wi8mWhncLJm11GATDaQKobXSNEYGUHeQLiQqDFG1qQ5UTDPTEvKw0Xt5NsTpktGTwLps3ByrWsBrG0rB8YQ9oA==
+postcss@^8.2.15, postcss@^8.4.17, postcss@^8.4.19:
+  version "8.4.19"
+  resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.19.tgz#61178e2add236b17351897c8bcc0b4c8ecab56fc"
+  integrity sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==
   dependencies:
     nanoid "^3.3.4"
     picocolors "^1.0.0"
@@ -9077,14 +9093,14 @@ promise-inflight@^1.0.1:
   resolved "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz"
   integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM=
 
-promise.prototype.finally@^3.1.3:
-  version "3.1.3"
-  resolved "https://registry.npmjs.org/promise.prototype.finally/-/promise.prototype.finally-3.1.3.tgz"
-  integrity sha512-EXRF3fC9/0gz4qkt/f5EP5iW4kj9oFpBICNpCNOb/52+8nlHIX07FPLbi/q4qYBQ1xZqivMzTpNQSnArVASolQ==
+promise.prototype.finally@^3.1.4:
+  version "3.1.4"
+  resolved "https://registry.yarnpkg.com/promise.prototype.finally/-/promise.prototype.finally-3.1.4.tgz#4e756a154e4db27fae24c6b18703495c31da3927"
+  integrity sha512-nNc3YbgMfLzqtqvO/q5DP6RR0SiHI9pUPGzyDf1q+usTwCN2kjvAnJkBb7bHe3o+fFSBPpsGMoYtaSi+LTNqng==
   dependencies:
     call-bind "^1.0.2"
-    define-properties "^1.1.3"
-    es-abstract "^1.19.1"
+    define-properties "^1.1.4"
+    es-abstract "^1.20.4"
 
 prompts@^2.0.1:
   version "2.4.2"
@@ -9661,10 +9677,10 @@ redux-immutable@^4.0.0:
   resolved "https://registry.npmjs.org/redux-immutable/-/redux-immutable-4.0.0.tgz"
   integrity sha1-Ohoy32Y2ZGK2NpHw4dw15HK7yfM=
 
-redux-thunk@^2.4.1:
-  version "2.4.1"
-  resolved "https://registry.npmjs.org/redux-thunk/-/redux-thunk-2.4.1.tgz"
-  integrity sha512-OOYGNY5Jy2TWvTL1KgAlVy6dcx3siPJ1wTq741EPyUKfn6W6nChdICjZwCd0p8AZBs5kWpZlbkXW2nE/zjUa+Q==
+redux-thunk@^2.4.2:
+  version "2.4.2"
+  resolved "https://registry.yarnpkg.com/redux-thunk/-/redux-thunk-2.4.2.tgz#b9d05d11994b99f7a91ea223e8b04cf0afa5ef3b"
+  integrity sha512-+P3TjtnP0k/FEjcBL5FZpoovtvrTNT/UXd4/sluaSyrURlSlhLSzEdfsTBW7WsKB6yPvgd7q/iZPICFjW4o57Q==
 
 redux@^4.0.0, redux@^4.2.0:
   version "4.2.0"
@@ -9690,10 +9706,10 @@ regenerator-runtime@^0.12.0:
   resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.12.1.tgz"
   integrity sha512-odxIc1/vDlo4iZcfXqRYFj0vpXFNoGdKMAUieAlFYO6m/nl5e9KR/beGf41z4a1FI+aQgtjhuaSlDxQ0hmkrHg==
 
-regenerator-runtime@^0.13.10, regenerator-runtime@^0.13.3, regenerator-runtime@^0.13.4:
-  version "0.13.10"
-  resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.10.tgz#ed07b19616bcbec5da6274ebc75ae95634bfc2ee"
-  integrity sha512-KepLsg4dU12hryUO7bp/axHAKvwGOCV0sGloQtpagJ12ai+ojVDqkeGSiRX1zlq+kjIMZ1t7gpze+26QqtdGqw==
+regenerator-runtime@^0.13.10, regenerator-runtime@^0.13.11, regenerator-runtime@^0.13.3, regenerator-runtime@^0.13.4:
+  version "0.13.11"
+  resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9"
+  integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==
 
 regenerator-transform@^0.15.0:
   version "0.15.0"
@@ -9801,10 +9817,10 @@ requires-port@^1.0.0:
   resolved "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz"
   integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=
 
-reselect@^4.1.6:
-  version "4.1.6"
-  resolved "https://registry.yarnpkg.com/reselect/-/reselect-4.1.6.tgz#19ca2d3d0b35373a74dc1c98692cdaffb6602656"
-  integrity sha512-ZovIuXqto7elwnxyXbBtCPo9YFEr3uJqj2rRbcOOog1bmu2Ag85M4hixSwFWyaBMKXNgvPaJ9OSu9SkBPIeJHQ==
+reselect@^4.1.7:
+  version "4.1.7"
+  resolved "https://registry.yarnpkg.com/reselect/-/reselect-4.1.7.tgz#56480d9ff3d3188970ee2b76527bd94a95567a42"
+  integrity sha512-Zu1xbUt3/OPwsXL46hvOOoQrap2azE7ZQbokq61BQfiXvhewsKDwhMeZjTX9sX0nvw1t/U5Audyn1I9P/m9z0A==
 
 resolve-cwd@^2.0.0:
   version "2.0.0"
@@ -9963,6 +9979,15 @@ safe-buffer@5.2.1, safe-buffer@^5.2.0, safe-buffer@~5.2.0:
   resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz"
   integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
 
+safe-regex-test@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.0.tgz#793b874d524eb3640d1873aad03596db2d4f2295"
+  integrity sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==
+  dependencies:
+    call-bind "^1.0.2"
+    get-intrinsic "^1.1.3"
+    is-regex "^1.1.4"
+
 safe-regex@^1.1.0:
   version "1.1.0"
   resolved "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz"
@@ -9986,10 +10011,10 @@ sass-loader@^10.2.0:
     schema-utils "^3.0.0"
     semver "^7.3.2"
 
-sass@^1.55.0:
-  version "1.55.0"
-  resolved "https://registry.yarnpkg.com/sass/-/sass-1.55.0.tgz#0c4d3c293cfe8f8a2e8d3b666e1cf1bff8065d1c"
-  integrity sha512-Pk+PMy7OGLs9WaxZGJMn7S96dvlyVBwwtToX895WmCpAOr5YiJYEUJfiJidMuKb613z2xNWcXCHEuOvjZbqC6A==
+sass@^1.56.1:
+  version "1.56.1"
+  resolved "https://registry.yarnpkg.com/sass/-/sass-1.56.1.tgz#94d3910cd468fd075fa87f5bb17437a0b617d8a7"
+  integrity sha512-VpEyKpyBPCxE7qGDtOcdJ6fFbcpOM+Emu7uZLxVrkX8KVU/Dp5UF7WLvzqRuUhB6mqqQt1xffLoG+AndxTZrCQ==
   dependencies:
     chokidar ">=3.0.0 <4.0.0"
     immutable "^4.0.0"
@@ -10585,18 +10610,18 @@ string-width@^3.0.0, string-width@^3.1.0:
     is-fullwidth-code-point "^2.0.0"
     strip-ansi "^5.1.0"
 
-string.prototype.matchall@^4.0.6, string.prototype.matchall@^4.0.7:
-  version "4.0.7"
-  resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.7.tgz#8e6ecb0d8a1fb1fda470d81acecb2dba057a481d"
-  integrity sha512-f48okCX7JiwVi1NXCVWcFnZgADDC/n2vePlQ/KUCNqCikLLilQvwjMO8+BHVKvgzH0JB0J9LEPgxOGT02RoETg==
+string.prototype.matchall@^4.0.6, string.prototype.matchall@^4.0.8:
+  version "4.0.8"
+  resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz#3bf85722021816dcd1bf38bb714915887ca79fd3"
+  integrity sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==
   dependencies:
     call-bind "^1.0.2"
-    define-properties "^1.1.3"
-    es-abstract "^1.19.1"
-    get-intrinsic "^1.1.1"
+    define-properties "^1.1.4"
+    es-abstract "^1.20.4"
+    get-intrinsic "^1.1.3"
     has-symbols "^1.0.3"
     internal-slot "^1.0.3"
-    regexp.prototype.flags "^1.4.1"
+    regexp.prototype.flags "^1.4.3"
     side-channel "^1.0.4"
 
 string.prototype.trimend@^1.0.5:
@@ -11550,10 +11575,10 @@ vm-browserify@^1.0.1:
   resolved "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz"
   integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==
 
-w3c-xmlserializer@^3.0.0:
-  version "3.0.0"
-  resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-3.0.0.tgz#06cdc3eefb7e4d0b20a560a5a3aeb0d2d9a65923"
-  integrity sha512-3WFqGEgSXIyGhOmAFtlicJNMjEps8b1MG31NCA0/vOF9+nKMUW1ckhi9cnNHmf88Rzw5V+dwIwsm2C7X8k9aQg==
+w3c-xmlserializer@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz#aebdc84920d806222936e3cdce408e32488a3073"
+  integrity sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==
   dependencies:
     xml-name-validator "^4.0.0"
 
@@ -11633,10 +11658,10 @@ webpack-assets-manifest@^4.0.6:
     tapable "^1.0"
     webpack-sources "^1.0"
 
-webpack-bundle-analyzer@^4.6.1:
-  version "4.6.1"
-  resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.6.1.tgz#bee2ee05f4ba4ed430e4831a319126bb4ed9f5a6"
-  integrity sha512-oKz9Oz9j3rUciLNfpGFjOb49/jEpXNmWdVH8Ls//zNcnLlQdTGXQQMsBbb/gR7Zl8WNLxVCq+0Hqbx3zv6twBw==
+webpack-bundle-analyzer@^4.7.0:
+  version "4.7.0"
+  resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.7.0.tgz#33c1c485a7fcae8627c547b5c3328b46de733c66"
+  integrity sha512-j9b8ynpJS4K+zfO5GGwsAcQX4ZHpWV+yRiHDiL+bE0XHJ8NiPYLTNVQdlFYWxtpg9lfAQNlwJg16J9AJtFSXRg==
   dependencies:
     acorn "^8.0.4"
     acorn-walk "^8.0.0"
@@ -12090,10 +12115,10 @@ ws@^7.3.1:
   resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c"
   integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==
 
-ws@^8.10.0, ws@^8.9.0:
-  version "8.10.0"
-  resolved "https://registry.yarnpkg.com/ws/-/ws-8.10.0.tgz#00a28c09dfb76eae4eb45c3b565f771d6951aa51"
-  integrity sha512-+s49uSmZpvtAsd2h37vIPy1RBusaLawVe8of+GyEPsaJTCMpj/2v8NpeK1SHXjBlQ95lQTmQofOJnFiLoaN3yw==
+ws@^8.10.0, ws@^8.11.0:
+  version "8.11.0"
+  resolved "https://registry.yarnpkg.com/ws/-/ws-8.11.0.tgz#6a0d36b8edfd9f96d8b25683db2f8d7de6e8e143"
+  integrity sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==
 
 xml-name-validator@^4.0.0:
   version "4.0.0"
@@ -12148,10 +12173,10 @@ yargs-parser@^20.2.1, yargs-parser@^20.2.3:
   resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz"
   integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==
 
-yargs-parser@^21.0.0:
-  version "21.0.0"
-  resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.0.0.tgz"
-  integrity sha512-z9kApYUOCwoeZ78rfRYYWdiU/iNL6mwwYlkkZfJoyMR1xps+NEBX5X7XmRpxkZHhXJ6+Ey00IwKxBBSW9FIjyA==
+yargs-parser@^21.1.1:
+  version "21.1.1"
+  resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35"
+  integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==
 
 yargs@^13.3.2:
   version "13.3.2"
@@ -12169,10 +12194,10 @@ yargs@^13.3.2:
     y18n "^4.0.0"
     yargs-parser "^13.1.2"
 
-yargs@^17.3.1, yargs@^17.6.0:
-  version "17.6.0"
-  resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.6.0.tgz#e134900fc1f218bc230192bdec06a0a5f973e46c"
-  integrity sha512-8H/wTDqlSwoSnScvV2N/JHfLWOKuh5MVla9hqLjK3nsfyy6Y4kDSYSvkU5YCUEPOSnRXfIyx3Sq+B/IWudTo4g==
+yargs@^17.3.1, yargs@^17.6.2:
+  version "17.6.2"
+  resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.6.2.tgz#2e23f2944e976339a1ee00f18c77fedee8332541"
+  integrity sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==
   dependencies:
     cliui "^8.0.1"
     escalade "^3.1.1"
@@ -12180,7 +12205,7 @@ yargs@^17.3.1, yargs@^17.6.0:
     require-directory "^2.1.1"
     string-width "^4.2.3"
     y18n "^5.0.5"
-    yargs-parser "^21.0.0"
+    yargs-parser "^21.1.1"
 
 yocto-queue@^0.1.0:
   version "0.1.0"