From beb7ddbcee03270e833b2f74927ccfc8027aa693 Mon Sep 17 00:00:00 2001
From: Claude Paroz <claude@2xlibre.net>
Date: Sat, 29 Jan 2022 18:59:17 +0100
Subject: [PATCH] Updated translations from Transifex.

Updated Bulgarian, Czech, German, Uzbek, and Vietnamese translations.

Forwardport of 7a1c6533eb72c3e6faa308796ba7f8d7d447d3b9 from stable/4.0.x.
---
 django/conf/locale/bg/LC_MESSAGES/django.mo   | Bin 23422 -> 33758 bytes
 django/conf/locale/bg/LC_MESSAGES/django.po   | 421 ++++++++++--------
 .../admin/locale/bg/LC_MESSAGES/django.mo     | Bin 15320 -> 21397 bytes
 .../admin/locale/bg/LC_MESSAGES/django.po     | 153 ++++---
 .../admin/locale/bg/LC_MESSAGES/djangojs.mo   | Bin 5565 -> 6230 bytes
 .../admin/locale/bg/LC_MESSAGES/djangojs.po   | 123 +++--
 .../admin/locale/cs/LC_MESSAGES/django.mo     | Bin 17448 -> 17659 bytes
 .../admin/locale/cs/LC_MESSAGES/django.po     |  24 +-
 .../admin/locale/de/LC_MESSAGES/django.mo     | Bin 17720 -> 17714 bytes
 .../admin/locale/de/LC_MESSAGES/django.po     |   8 +-
 .../admin/locale/uz/LC_MESSAGES/django.mo     | Bin 3984 -> 4610 bytes
 .../admin/locale/uz/LC_MESSAGES/django.po     |  46 +-
 .../admin/locale/uz/LC_MESSAGES/djangojs.mo   | Bin 4517 -> 3783 bytes
 .../admin/locale/uz/LC_MESSAGES/djangojs.po   |  85 +++-
 .../admin/locale/vi/LC_MESSAGES/django.mo     | Bin 14860 -> 18077 bytes
 .../admin/locale/vi/LC_MESSAGES/django.po     | 216 +++++----
 .../admin/locale/vi/LC_MESSAGES/djangojs.mo   | Bin 3733 -> 5302 bytes
 .../admin/locale/vi/LC_MESSAGES/djangojs.po   | 144 ++++--
 .../admindocs/locale/bg/LC_MESSAGES/django.mo | Bin 7837 -> 8236 bytes
 .../admindocs/locale/bg/LC_MESSAGES/django.po |  86 ++--
 .../auth/locale/bg/LC_MESSAGES/django.mo      | Bin 8751 -> 9466 bytes
 .../auth/locale/bg/LC_MESSAGES/django.po      |  49 +-
 .../auth/locale/cs/LC_MESSAGES/django.mo      | Bin 7786 -> 7836 bytes
 .../auth/locale/cs/LC_MESSAGES/django.po      |   9 +-
 .../auth/locale/vi/LC_MESSAGES/django.mo      | Bin 4703 -> 7892 bytes
 .../auth/locale/vi/LC_MESSAGES/django.po      |  67 +--
 .../locale/bg/LC_MESSAGES/django.mo           | Bin 1267 -> 1225 bytes
 .../locale/bg/LC_MESSAGES/django.po           |  11 +-
 .../flatpages/locale/bg/LC_MESSAGES/django.mo | Bin 2569 -> 2802 bytes
 .../flatpages/locale/bg/LC_MESSAGES/django.po |  33 +-
 .../humanize/locale/bg/LC_MESSAGES/django.mo  | Bin 4645 -> 4823 bytes
 .../humanize/locale/bg/LC_MESSAGES/django.po  | 295 +++++++-----
 .../postgres/locale/bg/LC_MESSAGES/django.mo  | Bin 2969 -> 3515 bytes
 .../postgres/locale/bg/LC_MESSAGES/django.po  |  23 +-
 .../redirects/locale/bg/LC_MESSAGES/django.mo | Bin 1268 -> 1279 bytes
 .../redirects/locale/bg/LC_MESSAGES/django.po |  23 +-
 .../sessions/locale/bg/LC_MESSAGES/django.mo  | Bin 783 -> 759 bytes
 .../sessions/locale/bg/LC_MESSAGES/django.po  |   7 +-
 docs/releases/4.0.2.txt                       |   3 +-
 39 files changed, 1096 insertions(+), 730 deletions(-)

diff --git a/django/conf/locale/bg/LC_MESSAGES/django.mo b/django/conf/locale/bg/LC_MESSAGES/django.mo
index a7886df827b87f777f2f1faa1b12b030f94a3ee2..5b85f3380fcf4c58a812007ddc7b2f4c5239879b 100644
GIT binary patch
literal 33758
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
TN3^4ojOn}oIzw}FbMSuw2(L0A

delta 9032
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

diff --git a/django/conf/locale/bg/LC_MESSAGES/django.po b/django/conf/locale/bg/LC_MESSAGES/django.po
index e911c00aa6..0d4bf7a366 100644
--- a/django/conf/locale/bg/LC_MESSAGES/django.po
+++ b/django/conf/locale/bg/LC_MESSAGES/django.po
@@ -1,11 +1,12 @@
 # This file is distributed under the same license as the Django package.
 #
 # Translators:
+# arneatec <arneatec@gmail.com>, 2022
 # Boris Chervenkov <office@sentido.bg>, 2012
 # Claude Paroz <claude@2xlibre.net>, 2020
 # Jannis Leidel <jannis@leidel.info>, 2011
 # Lyuboslav  Petrov <petrov.lyuboslav@gmail.com>, 2014
-# Todor Lubenov <tgl.sysdev@gmail.com>, 2013-2015
+# Todor Lubenov <tlubenov@gmail.com>, 2013-2015
 # Venelin Stoykov <vkstoykov@gmail.com>, 2015-2017
 # vestimir <vestimir@gmail.com>, 2014
 # Alexander Atanasov <aatanasov@gmail.com>, 2012
@@ -13,9 +14,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: django\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-05-19 20:23+0200\n"
-"PO-Revision-Date: 2020-07-14 21:42+0000\n"
-"Last-Translator: Transifex Bot <>\n"
+"POT-Creation-Date: 2021-09-21 10:22+0200\n"
+"PO-Revision-Date: 2022-01-14 11:26+0000\n"
+"Last-Translator: arneatec <arneatec@gmail.com>\n"
 "Language-Team: Bulgarian (http://www.transifex.com/django/django/language/"
 "bg/)\n"
 "MIME-Version: 1.0\n"
@@ -25,13 +26,13 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 msgid "Afrikaans"
-msgstr "Африкански"
+msgstr "африкаански"
 
 msgid "Arabic"
 msgstr "арабски език"
 
 msgid "Algerian Arabic"
-msgstr ""
+msgstr "алжирски арабски"
 
 msgid "Asturian"
 msgstr "Астурийски"
@@ -55,82 +56,82 @@ msgid "Bosnian"
 msgstr "босненски език"
 
 msgid "Catalan"
-msgstr "каталунски език"
+msgstr "каталански"
 
 msgid "Czech"
-msgstr "чешки език"
+msgstr "чешки"
 
 msgid "Welsh"
-msgstr "уелски език"
+msgstr "уелски"
 
 msgid "Danish"
-msgstr "датски език"
+msgstr "датски"
 
 msgid "German"
-msgstr "немски език"
+msgstr "немски"
 
 msgid "Lower Sorbian"
-msgstr ""
+msgstr "долносорбски"
 
 msgid "Greek"
-msgstr "гръцки език"
+msgstr "гръцки"
 
 msgid "English"
-msgstr "английски език"
+msgstr "английски"
 
 msgid "Australian English"
-msgstr "Австралийски Английски"
+msgstr "австралийски английски"
 
 msgid "British English"
 msgstr "британски английски"
 
 msgid "Esperanto"
-msgstr "Есперанто"
+msgstr "есперанто"
 
 msgid "Spanish"
-msgstr "испански език"
+msgstr "испански"
 
 msgid "Argentinian Spanish"
 msgstr "кастилски"
 
 msgid "Colombian Spanish"
-msgstr "Колумбийски Испански"
+msgstr "колумбийски испански"
 
 msgid "Mexican Spanish"
-msgstr "Мексикански испански"
+msgstr "мексикански испански"
 
 msgid "Nicaraguan Spanish"
 msgstr "никарагуански испански"
 
 msgid "Venezuelan Spanish"
-msgstr "Испански Венецуелски"
+msgstr "венецуелски испански"
 
 msgid "Estonian"
-msgstr "естонски език"
+msgstr "естонски"
 
 msgid "Basque"
 msgstr "баски"
 
 msgid "Persian"
-msgstr "персийски език"
+msgstr "персийски"
 
 msgid "Finnish"
-msgstr "финландски език"
+msgstr "финландски"
 
 msgid "French"
-msgstr "френски език"
+msgstr "френски"
 
 msgid "Frisian"
-msgstr "фризийски език"
+msgstr "фризийски"
 
 msgid "Irish"
-msgstr "ирландски език"
+msgstr "ирландски"
 
 msgid "Scottish Gaelic"
-msgstr ""
+msgstr "шотландски галски"
 
 msgid "Galician"
-msgstr "галицейски език"
+msgstr "галицейски"
 
 msgid "Hebrew"
 msgstr "иврит"
@@ -139,175 +140,178 @@ msgid "Hindi"
 msgstr "хинди"
 
 msgid "Croatian"
-msgstr "хърватски език"
+msgstr "хърватски"
 
 msgid "Upper Sorbian"
-msgstr ""
+msgstr "горносорбски"
 
 msgid "Hungarian"
-msgstr "унгарски език"
+msgstr "унгарски"
 
 msgid "Armenian"
-msgstr ""
+msgstr "арменски"
 
 msgid "Interlingua"
-msgstr "Международен"
+msgstr "интерлингва"
 
 msgid "Indonesian"
-msgstr "индонезийски език"
+msgstr "индонезийски"
 
 msgid "Igbo"
-msgstr ""
+msgstr "игбо"
 
 msgid "Ido"
-msgstr "Идо"
+msgstr "идо"
 
 msgid "Icelandic"
-msgstr "исландски език"
+msgstr "исландски"
 
 msgid "Italian"
-msgstr "италиански език"
+msgstr "италиански"
 
 msgid "Japanese"
-msgstr "японски език"
+msgstr "японски"
 
 msgid "Georgian"
-msgstr "грузински език"
+msgstr "грузински"
 
 msgid "Kabyle"
-msgstr ""
+msgstr "кабилски"
 
 msgid "Kazakh"
-msgstr "Казахски"
+msgstr "казахски"
 
 msgid "Khmer"
-msgstr "кхмерски език"
+msgstr "кхмерски"
 
 msgid "Kannada"
 msgstr "каннада"
 
 msgid "Korean"
-msgstr "Корейски"
+msgstr "корейски"
 
 msgid "Kyrgyz"
-msgstr ""
+msgstr "киргизки"
 
 msgid "Luxembourgish"
-msgstr "Люксембургски"
+msgstr "люксембургски"
 
 msgid "Lithuanian"
-msgstr "Литовски"
+msgstr "литовски"
 
 msgid "Latvian"
-msgstr "Латвийски"
+msgstr "латвийски"
 
 msgid "Macedonian"
-msgstr "Македонски"
+msgstr "македонски"
 
 msgid "Malayalam"
 msgstr "малаялам"
 
 msgid "Mongolian"
-msgstr "Монголски"
+msgstr "монголски"
 
 msgid "Marathi"
-msgstr "Марати"
+msgstr "марати"
+
+msgid "Malay"
+msgstr "малайски"
 
 msgid "Burmese"
-msgstr "Бурмесе"
+msgstr "бирмански"
 
 msgid "Norwegian Bokmål"
-msgstr ""
+msgstr "норвежки букмол"
 
 msgid "Nepali"
-msgstr "Непалски"
+msgstr "непалски"
 
 msgid "Dutch"
-msgstr "холандски"
+msgstr "нидерландски"
 
 msgid "Norwegian Nynorsk"
-msgstr "норвежки съвременен език"
+msgstr "съвременен норвежки"
 
 msgid "Ossetic"
-msgstr "Осетски"
+msgstr "осетски"
 
 msgid "Punjabi"
-msgstr "пенджаби"
+msgstr "панджабски"
 
 msgid "Polish"
-msgstr "полски език"
+msgstr "полски"
 
 msgid "Portuguese"
-msgstr "португалски език"
+msgstr "португалски"
 
 msgid "Brazilian Portuguese"
 msgstr "бразилски португалски"
 
 msgid "Romanian"
-msgstr "румънски език"
+msgstr "румънски"
 
 msgid "Russian"
-msgstr "руски език"
+msgstr "руски"
 
 msgid "Slovak"
-msgstr "словашки език"
+msgstr "словашки"
 
 msgid "Slovenian"
-msgstr "словенски език"
+msgstr "словенски"
 
 msgid "Albanian"
-msgstr "албански език"
+msgstr "албански"
 
 msgid "Serbian"
-msgstr "сръбски език"
+msgstr "сръбски"
 
 msgid "Serbian Latin"
-msgstr "сръбски с латински букви"
+msgstr "сръбски - латиница"
 
 msgid "Swedish"
-msgstr "шведски език"
+msgstr "шведски"
 
 msgid "Swahili"
-msgstr "Суахили"
+msgstr "суахили"
 
 msgid "Tamil"
-msgstr "тамил"
+msgstr "тамилски"
 
 msgid "Telugu"
 msgstr "телугу"
 
 msgid "Tajik"
-msgstr ""
+msgstr "таджикски"
 
 msgid "Thai"
-msgstr "тайландски език"
+msgstr "тайландски"
 
 msgid "Turkmen"
-msgstr ""
+msgstr "туркменски"
 
 msgid "Turkish"
-msgstr "турски език"
+msgstr "турски"
 
 msgid "Tatar"
-msgstr "Татарски"
+msgstr "татарски"
 
 msgid "Udmurt"
-msgstr "Удмурт"
+msgstr "удмурт"
 
 msgid "Ukrainian"
-msgstr "украински език"
+msgstr "украински"
 
 msgid "Urdu"
-msgstr "Урду"
+msgstr "урду"
 
 msgid "Uzbek"
-msgstr ""
+msgstr "узбекски"
 
 msgid "Vietnamese"
-msgstr "виетнамски език"
+msgstr "виетнамски"
 
 msgid "Simplified Chinese"
-msgstr "китайски език"
+msgstr "китайски"
 
 msgid "Traditional Chinese"
 msgstr "традиционен китайски"
@@ -316,13 +320,18 @@ msgid "Messages"
 msgstr "Съобщения"
 
 msgid "Site Maps"
-msgstr "Бързи Maps"
+msgstr "Карти на сайта"
 
 msgid "Static Files"
 msgstr "Статични файлове"
 
 msgid "Syndication"
-msgstr "Syndication"
+msgstr "Синдикация"
+
+#. Translators: String used to replace omitted page numbers in elided page
+#. range generated by paginators, e.g. [1, 2, '…', 5, 6, 7, '…', 9, 10].
+msgid "…"
+msgstr "..."
 
 msgid "That page number is not an integer"
 msgstr "Номерът на страницата не е цяло число"
@@ -340,7 +349,7 @@ msgid "Enter a valid URL."
 msgstr "Въведете валиден URL адрес."
 
 msgid "Enter a valid integer."
-msgstr "Въведете валидно число."
+msgstr "Въведете валидно целочислено число."
 
 msgid "Enter a valid email address."
 msgstr "Въведете валиден имейл адрес."
@@ -349,11 +358,14 @@ msgstr "Въведете валиден имейл адрес."
 msgid ""
 "Enter a valid “slug” consisting of letters, numbers, underscores or hyphens."
 msgstr ""
+"Въведете валиден 'слъг', състоящ се от букви, цифри, тирета или долни тирета."
 
 msgid ""
 "Enter a valid “slug” consisting of Unicode letters, numbers, underscores, or "
 "hyphens."
 msgstr ""
+"Въведете валиден 'слъг', състоящ се от Уникод букви, цифри, тирета или долни "
+"тирета."
 
 msgid "Enter a valid IPv4 address."
 msgstr "Въведете валиден IPv4 адрес."
@@ -414,7 +426,7 @@ msgstr "Въведете число."
 #, python-format
 msgid "Ensure that there are no more than %(max)s digit in total."
 msgid_plural "Ensure that there are no more than %(max)s digits in total."
-msgstr[0] "Уверете се, че има не повече от %(max)s цифри в общо."
+msgstr[0] "Уверете се, че има не повече от %(max)s цифри общо."
 msgstr[1] "Уверете се, че има не повече от %(max)s цифри общо."
 
 #, python-format
@@ -431,7 +443,7 @@ msgid ""
 msgid_plural ""
 "Ensure that there are no more than %(max)s digits before the decimal point."
 msgstr[0] ""
-"Уверете се, че има не повече от %(max)s цифри преди десетичната запетая."
+"Уверете се, че има не повече от %(max)s цифра преди десетичната запетая."
 msgstr[1] ""
 "Уверете се, че има не повече от %(max)s цифри преди десетичната запетая."
 
@@ -440,16 +452,18 @@ msgid ""
 "File extension “%(extension)s” is not allowed. Allowed extensions are: "
 "%(allowed_extensions)s."
 msgstr ""
+"Не са разрешени файлове с раширение \"%(extension)s\". Позволените "
+"разширения са:  %(allowed_extensions)s."
 
 msgid "Null characters are not allowed."
-msgstr ""
+msgstr "Празни знаци не са разрешени."
 
 msgid "and"
 msgstr "и"
 
 #, python-format
 msgid "%(model_name)s with this %(field_labels)s already exists."
-msgstr "%(model_name)s с тези %(field_labels)s вече съществува."
+msgstr "%(model_name)s с този %(field_labels)s вече съществува."
 
 #, python-format
 msgid "Value %(value)r is not a valid choice."
@@ -471,8 +485,7 @@ msgstr "%(model_name)s с този %(field_label)s вече съществува
 msgid ""
 "%(field_label)s must be unique for %(date_field_label)s %(lookup_type)s."
 msgstr ""
-"%(field_label)s трябва да са уникални за %(date_field_label)s "
-"%(lookup_type)s."
+"%(field_label)s трябва да е уникално за %(date_field_label)s %(lookup_type)s."
 
 #, python-format
 msgid "Field of type: %(field_type)s"
@@ -480,14 +493,14 @@ msgstr "Поле от тип: %(field_type)s"
 
 #, python-format
 msgid "“%(value)s” value must be either True or False."
-msgstr ""
+msgstr "Стойността на \"%(value)s\" трябва да бъде или True, или False."
 
 #, python-format
 msgid "“%(value)s” value must be either True, False, or None."
-msgstr ""
+msgstr "Стойност \"%(value)s\" трябва да бъде или True, или False или None."
 
 msgid "Boolean (Either True or False)"
-msgstr "Boolean (True или False)"
+msgstr "Булево (True или False)"
 
 #, python-format
 msgid "String (up to %(max_length)s)"
@@ -501,12 +514,16 @@ msgid ""
 "“%(value)s” value has an invalid date format. It must be in YYYY-MM-DD "
 "format."
 msgstr ""
+"Стойността \"%(value)s\" е с невалиден формат за дата. Тя трябва да бъде в "
+"ГГГГ-ММ-ДД формат."
 
 #, python-format
 msgid ""
 "“%(value)s” value has the correct format (YYYY-MM-DD) but it is an invalid "
 "date."
 msgstr ""
+"Стойността \"%(value)s\" е в правилния формат (ГГГГ-ММ-ДД), но самата дата е "
+"невалидна."
 
 msgid "Date (without time)"
 msgstr "Дата (без час)"
@@ -516,19 +533,23 @@ msgid ""
 "“%(value)s” value has an invalid format. It must be in YYYY-MM-DD HH:MM[:ss[."
 "uuuuuu]][TZ] format."
 msgstr ""
+"Стойността '%(value)s' е с невалиден формат. Трябва да бъде във формат ГГГГ-"
+"ММ-ДД ЧЧ:ММ[:сс[.uuuuuu]][TZ]"
 
 #, python-format
 msgid ""
 "“%(value)s” value has the correct format (YYYY-MM-DD HH:MM[:ss[.uuuuuu]]"
 "[TZ]) but it is an invalid date/time."
 msgstr ""
+"Стойността '%(value)s' е с правилен формат ( ГГГГ-ММ-ДД ЧЧ:ММ[:сс[.μμμμμμ]]"
+"[TZ]), но датата/часът са невалидни"
 
 msgid "Date (with time)"
 msgstr "Дата (и час)"
 
 #, python-format
 msgid "“%(value)s” value must be a decimal number."
-msgstr ""
+msgstr "Стойността \"%(value)s\" трябва да е десетично число."
 
 msgid "Decimal number"
 msgstr "Десетична дроб"
@@ -538,26 +559,28 @@ msgid ""
 "“%(value)s” value has an invalid format. It must be in [DD] [[HH:]MM:]ss[."
 "uuuuuu] format."
 msgstr ""
+"Стойността “%(value)s” е с невалиден формат. Трябва да бъде във формат [ДД] "
+"[[ЧЧ:]ММ:]сс[.uuuuuu] format."
 
 msgid "Duration"
 msgstr "Продължителност"
 
 msgid "Email address"
-msgstr "Email адрес"
+msgstr "Имейл адрес"
 
 msgid "File path"
 msgstr "Път към файл"
 
 #, python-format
 msgid "“%(value)s” value must be a float."
-msgstr ""
+msgstr "Стойността '%(value)s' трябва да е число с плаваща запетая."
 
 msgid "Floating point number"
 msgstr "Число с плаваща запетая"
 
 #, python-format
 msgid "“%(value)s” value must be an integer."
-msgstr ""
+msgstr "Стойността \"%(value)s\" трябва да е цяло число."
 
 msgid "Integer"
 msgstr "Цяло число"
@@ -565,6 +588,9 @@ msgstr "Цяло число"
 msgid "Big (8 byte) integer"
 msgstr "Голямо (8 байта) цяло число"
 
+msgid "Small integer"
+msgstr "2 байта цяло число"
+
 msgid "IPv4 address"
 msgstr "IPv4 адрес"
 
@@ -573,13 +599,13 @@ msgstr "IP адрес"
 
 #, python-format
 msgid "“%(value)s” value must be either None, True or False."
-msgstr ""
+msgstr "Стойността '%(value)s' трябва да бъде None, True или False."
 
 msgid "Boolean (Either True, False or None)"
-msgstr "Boolean (Възможните стойности са True, False или None)"
+msgstr "булев (възможните стойности са True, False или None)"
 
 msgid "Positive big integer"
-msgstr ""
+msgstr "Положително голямо цяло число."
 
 msgid "Positive integer"
 msgstr "Положително цяло число"
@@ -589,10 +615,7 @@ msgstr "Положително 2 байта цяло число"
 
 #, python-format
 msgid "Slug (up to %(max_length)s)"
-msgstr "Slug (до %(max_length)s )"
-
-msgid "Small integer"
-msgstr "2 байта цяло число"
+msgstr "Слъг (до %(max_length)s )"
 
 msgid "Text"
 msgstr "Текст"
@@ -602,12 +625,16 @@ msgid ""
 "“%(value)s” value has an invalid format. It must be in HH:MM[:ss[.uuuuuu]] "
 "format."
 msgstr ""
+"Стойността \"%(value)s\"  е с невалиден формат. Тя трябва да бъде в ЧЧ:ММ [:"
+"сс[.μμμμμμ]]"
 
 #, python-format
 msgid ""
 "“%(value)s” value has the correct format (HH:MM[:ss[.uuuuuu]]) but it is an "
 "invalid time."
 msgstr ""
+"Стойността \"%(value)s\" е в правилния формат (ЧЧ:ММ [:сс[.μμμμμμ]]), но "
+"часът е невалиден."
 
 msgid "Time"
 msgstr "Време"
@@ -620,10 +647,10 @@ msgstr "сурови двоични данни"
 
 #, python-format
 msgid "“%(value)s” is not a valid UUID."
-msgstr ""
+msgstr "\"%(value)s\" не е валиден UUID."
 
 msgid "Universally unique identifier"
-msgstr ""
+msgstr "Универсално уникален идентификатор"
 
 msgid "File"
 msgstr "Файл"
@@ -632,10 +659,10 @@ msgid "Image"
 msgstr "Изображение"
 
 msgid "A JSON object"
-msgstr ""
+msgstr "Обект във формат JSON"
 
 msgid "Value must be valid JSON."
-msgstr ""
+msgstr "Стойността трябва да е валиден JSON."
 
 #, python-format
 msgid "%(model)s instance with %(field)s %(value)r does not exist."
@@ -645,18 +672,18 @@ msgid "Foreign Key (type determined by related field)"
 msgstr "Външен ключ (тип, определен от свързаното поле)"
 
 msgid "One-to-one relationship"
-msgstr "словенски език"
+msgstr "едно-към-едно релация "
 
 #, python-format
 msgid "%(from)s-%(to)s relationship"
-msgstr ""
+msgstr "%(from)s-%(to)s релация"
 
 #, python-format
 msgid "%(from)s-%(to)s relationships"
-msgstr ""
+msgstr "%(from)s-%(to)s релации"
 
 msgid "Many-to-many relationship"
-msgstr "Много-към-много връзка"
+msgstr "Много-към-много релация"
 
 #. Translators: If found as last label character, these punctuation
 #. characters will prevent the default label_suffix to be appended to the
@@ -671,7 +698,7 @@ msgid "Enter a whole number."
 msgstr "Въведете цяло число.  "
 
 msgid "Enter a valid date."
-msgstr "Въведете валидна дата.  "
+msgstr "Въведете валидна дата."
 
 msgid "Enter a valid time."
 msgstr "Въведете валиден час."
@@ -684,16 +711,16 @@ msgstr "Въведете валидна продължителност."
 
 #, python-brace-format
 msgid "The number of days must be between {min_days} and {max_days}."
-msgstr ""
+msgstr "Броят на дните трябва да е между {min_days} и {max_days}."
 
 msgid "No file was submitted. Check the encoding type on the form."
-msgstr "Не е получен файл.  Проверете типа кодиране на формата.  "
+msgstr "Няма изпратен файл.  Проверете типа кодиране на формата.  "
 
 msgid "No file was submitted."
 msgstr "Няма изпратен файл."
 
 msgid "The submitted file is empty."
-msgstr "Каченият файл е празен.  "
+msgstr "Изпратеният файл е празен.  "
 
 #, python-format
 msgid "Ensure this filename has at most %(max)d character (it has %(length)d)."
@@ -729,7 +756,7 @@ msgid "Enter a valid UUID."
 msgstr "Въведете валиден UUID."
 
 msgid "Enter a valid JSON."
-msgstr ""
+msgstr "Въведете валиден JSON."
 
 #. Translators: This is the default suffix added to form field labels
 msgid ":"
@@ -739,20 +766,26 @@ msgstr ":"
 msgid "(Hidden field %(name)s) %(error)s"
 msgstr "(Скрито поле %(name)s) %(error)s"
 
-msgid "ManagementForm data is missing or has been tampered with"
-msgstr "Данни за мениджърската форма липсват или са били променени."
+#, python-format
+msgid ""
+"ManagementForm data is missing or has been tampered with. Missing fields: "
+"%(field_names)s. You may need to file a bug report if the issue persists."
+msgstr ""
+"ManagementForm данните липсват или са променяни неправомерно. Липсващи "
+"полета: %(field_names)s. Трябва да изпратите уведомление за бъг, ако този "
+"проблем продължава."
 
 #, python-format
-msgid "Please submit %d or fewer forms."
-msgid_plural "Please submit %d or fewer forms."
-msgstr[0] "Моля, въведете %d по-малко форми."
-msgstr[1] "Моля, въведете %d по-малко форми."
+msgid "Please submit at most %d form."
+msgid_plural "Please submit at most %d forms."
+msgstr[0] "Моля изпратете не повече от %d формуляр."
+msgstr[1] "Моля изпратете не повече от %d формуляри."
 
 #, python-format
-msgid "Please submit %d or more forms."
-msgid_plural "Please submit %d or more forms."
-msgstr[0] "Моля, въведете %d или по-вече форми."
-msgstr[1] "Моля, въведете %d или по-вече форми."
+msgid "Please submit at least %d form."
+msgid_plural "Please submit at least %d forms."
+msgstr[0] "Моля изпратете поне %d формуляр."
+msgstr[1] "Моля изпратете поне %d формуляра."
 
 msgid "Order"
 msgstr "Ред"
@@ -782,20 +815,22 @@ msgid "Please correct the duplicate values below."
 msgstr "Моля, коригирайте повтарящите се стойности по-долу."
 
 msgid "The inline value did not match the parent instance."
-msgstr ""
+msgstr "Стойността в реда не отговаря на родителската инстанция."
 
 msgid "Select a valid choice. That choice is not one of the available choices."
 msgstr "Направете валиден избор. Този не е един от възможните избори.  "
 
 #, python-format
 msgid "“%(pk)s” is not a valid value."
-msgstr ""
+msgstr "“%(pk)s” не е валидна стойност."
 
 #, python-format
 msgid ""
 "%(datetime)s couldn’t be interpreted in time zone %(current_timezone)s; it "
 "may be ambiguous or it may not exist."
 msgstr ""
+"%(datetime)s не може да се интерпретира в часова зона %(current_timezone)s; "
+"вероятно стойността е нееднозначна или не съществува изобщо."
 
 msgid "Clear"
 msgstr "Изчисти"
@@ -823,19 +858,19 @@ msgstr "да,не,може би"
 msgid "%(size)d byte"
 msgid_plural "%(size)d bytes"
 msgstr[0] "%(size)d, байт"
-msgstr[1] "%(size)d, байта"
+msgstr[1] "%(size)d байта"
 
 #, python-format
 msgid "%s KB"
-msgstr "%s KB"
+msgstr "%s KБ"
 
 #, python-format
 msgid "%s MB"
-msgstr "%s MB"
+msgstr "%s МБ"
 
 #, python-format
 msgid "%s GB"
-msgstr "%s GB"
+msgstr "%s ГБ"
 
 #, python-format
 msgid "%s TB"
@@ -843,7 +878,7 @@ msgstr "%s ТБ"
 
 #, python-format
 msgid "%s PB"
-msgstr "%s PB"
+msgstr "%s ПБ"
 
 msgid "p.m."
 msgstr "след обяд"
@@ -972,7 +1007,7 @@ msgid "oct"
 msgstr "окт"
 
 msgid "nov"
-msgstr "ноев"
+msgstr "ноем"
 
 msgid "dec"
 msgstr "дек"
@@ -991,7 +1026,7 @@ msgstr "Март"
 
 msgctxt "abbrev. month"
 msgid "April"
-msgstr "Април"
+msgstr "Апр."
 
 msgctxt "abbrev. month"
 msgid "May"
@@ -1019,7 +1054,7 @@ msgstr "Окт."
 
 msgctxt "abbrev. month"
 msgid "Nov."
-msgstr "Ноев."
+msgstr "Ноем."
 
 msgctxt "abbrev. month"
 msgid "Dec."
@@ -1063,7 +1098,7 @@ msgstr "Септември"
 
 msgctxt "alt. month"
 msgid "October"
-msgstr "след обяд"
+msgstr "Октомври"
 
 msgctxt "alt. month"
 msgid "November"
@@ -1079,7 +1114,7 @@ msgstr "Въведете валиден IPv6 адрес."
 #, python-format
 msgctxt "String to return when truncating text"
 msgid "%(truncated_text)s…"
-msgstr ""
+msgstr "%(truncated_text)s…"
 
 msgid "or"
 msgstr "или"
@@ -1089,40 +1124,40 @@ msgid ", "
 msgstr ","
 
 #, python-format
-msgid "%d year"
-msgid_plural "%d years"
-msgstr[0] "%d година"
-msgstr[1] "%d години"
+msgid "%(num)d year"
+msgid_plural "%(num)d years"
+msgstr[0] "%(num)d година"
+msgstr[1] "%(num)d години"
 
 #, python-format
-msgid "%d month"
-msgid_plural "%d months"
-msgstr[0] "%d месец"
-msgstr[1] "%d месеца"
+msgid "%(num)d month"
+msgid_plural "%(num)d months"
+msgstr[0] "%(num)d месец"
+msgstr[1] "%(num)d месеца"
 
 #, python-format
-msgid "%d week"
-msgid_plural "%d weeks"
-msgstr[0] "%d седмица"
-msgstr[1] "%d седмици"
+msgid "%(num)d week"
+msgid_plural "%(num)d weeks"
+msgstr[0] "%(num)d седмица"
+msgstr[1] "%(num)d седмици"
 
 #, python-format
-msgid "%d day"
-msgid_plural "%d days"
-msgstr[0] "%d дни"
-msgstr[1] "%d дни"
+msgid "%(num)d day"
+msgid_plural "%(num)d days"
+msgstr[0] "%(num)d ден"
+msgstr[1] "%(num)d дни"
 
 #, python-format
-msgid "%d hour"
-msgid_plural "%d hours"
-msgstr[0] "%d час"
-msgstr[1] "%d часа"
+msgid "%(num)d hour"
+msgid_plural "%(num)d hours"
+msgstr[0] "%(num)d час"
+msgstr[1] "%(num)d часа"
 
 #, python-format
-msgid "%d minute"
-msgid_plural "%d minutes"
-msgstr[0] "%d минута"
-msgstr[1] "%d минути"
+msgid "%(num)d minute"
+msgid_plural "%(num)d minutes"
+msgstr[0] "%(num)d минута"
+msgstr[1] "%(num)d минути"
 
 msgid "Forbidden"
 msgstr "Забранен"
@@ -1132,16 +1167,23 @@ msgstr "CSRF проверката се провали. Заявката прек
 
 msgid ""
 "You are seeing this message because this HTTPS site requires a “Referer "
-"header” to be sent by your Web browser, but none was sent. This header is "
+"header” to be sent by your web browser, but none was sent. This header is "
 "required for security reasons, to ensure that your browser is not being "
 "hijacked by third parties."
 msgstr ""
+"Вие виждате това съобщение, защото този HTTPS сайт изисква да бъде изпратен "
+"'Referer header'  от вашият уеб браузър, но такъв не бе изпратен. Този "
+"header  е задължителен от съображения за сигурност, за да се гарантира, че "
+"вашият браузър не е компрометиран от трети страни."
 
 msgid ""
 "If you have configured your browser to disable “Referer” headers, please re-"
 "enable them, at least for this site, or for HTTPS connections, or for “same-"
 "origin” requests."
 msgstr ""
+"Ако сте настроили вашия браузър да деактивира 'Referer' headers, моля да ги "
+"активирате отново, поне за този сайт, или за HTTPS връзки, или за 'same-"
+"origin' заявки."
 
 msgid ""
 "If you are using the <meta name=\"referrer\" content=\"no-referrer\"> tag or "
@@ -1150,13 +1192,18 @@ msgid ""
 "If you’re concerned about privacy, use alternatives like <a rel=\"noreferrer"
 "\" …> for links to third-party sites."
 msgstr ""
+"Ако използвате <meta name=\"referrer\" content=\"no-referrer\"> таг или "
+"включвате “Referrer-Policy: no-referrer” header, моля премахнете ги. CSRF "
+"защитата изисква “Referer” header, за да извърши стриктна проверка на "
+"изпращача. Ако сте притеснени за поверителността, използвайте алтернативи "
+"като <a rel=\"noreferrer\" …> за връзки към сайтове на трети страни."
 
 msgid ""
 "You are seeing this message because this site requires a CSRF cookie when "
 "submitting forms. This cookie is required for security reasons, to ensure "
 "that your browser is not being hijacked by third parties."
 msgstr ""
-"Вие виждате това съобщение, защото този сайт изисква CSRF бисквитка когато "
+"Вие виждате това съобщение, защото този сайт изисква CSRF бисквитка, когато "
 "се подават формуляри. Тази бисквитка е задължителна от съображения за "
 "сигурност, за да се гарантира, че вашият браузър не е компрометиран от трети "
 "страни."
@@ -1165,6 +1212,8 @@ msgid ""
 "If you have configured your browser to disable cookies, please re-enable "
 "them, at least for this site, or for “same-origin” requests."
 msgstr ""
+"Ако сте конфигурирали браузъра си да забрани бисквитките, моля да ги "
+"активирате отново, поне за този сайт, или за \"same-origin\" заявки."
 
 msgid "More information is available with DEBUG=True."
 msgstr "Повече информация е на разположение с DEBUG=True."
@@ -1173,13 +1222,13 @@ msgid "No year specified"
 msgstr "Не е посочена година"
 
 msgid "Date out of range"
-msgstr ""
+msgstr "Датата е в невалиден диапазон"
 
 msgid "No month specified"
 msgstr "Не е посочен месец"
 
 msgid "No day specified"
-msgstr "ноев"
+msgstr "Не е посочен ден"
 
 msgid "No week specified"
 msgstr "Не е посочена седмица"
@@ -1193,19 +1242,22 @@ msgid ""
 "Future %(verbose_name_plural)s not available because %(class_name)s."
 "allow_future is False."
 msgstr ""
-"Бъдещo %(verbose_name_plural)s е достъпно, тъй като %(class_name)s."
+"Бъдещo %(verbose_name_plural)s е недостъпно, тъй като %(class_name)s."
 "allow_future е False."
 
 #, python-format
 msgid "Invalid date string “%(datestr)s” given format “%(format)s”"
 msgstr ""
+"Невалидна текстова стойност на датата “%(datestr)s” при зададен формат "
+"“%(format)s”"
 
 #, python-format
 msgid "No %(verbose_name)s found matching the query"
-msgstr "Няма %(verbose_name)s , съвпадащи със заявката"
+msgstr "Няма %(verbose_name)s, съвпадащи със заявката"
 
 msgid "Page is not “last”, nor can it be converted to an int."
 msgstr ""
+"Страницата не е \"последна\", нито може да се преобразува в цяло число."
 
 #, python-format
 msgid "Invalid page (%(page_number)s): %(message)s"
@@ -1213,30 +1265,29 @@ msgstr "Невалидна страница (%(page_number)s): %(message)s"
 
 #, python-format
 msgid "Empty list and “%(class_name)s.allow_empty” is False."
-msgstr ""
+msgstr "Празен списък и \"%(class_name)s.allow_empty\" e False."
 
 msgid "Directory indexes are not allowed here."
 msgstr "Тук не е позволено индексиране на директория."
 
 #, python-format
 msgid "“%(path)s” does not exist"
-msgstr ""
+msgstr "\"%(path)s\" не съществува"
 
 #, python-format
 msgid "Index of %(directory)s"
 msgstr "Индекс %(directory)s"
 
-msgid "Django: the Web framework for perfectionists with deadlines."
-msgstr "Django: Фреймуоркът за перфекционисти с крайни срокове."
+msgid "The install worked successfully! Congratulations!"
+msgstr "Инсталацията Ви заработи успешно! Поздравления!"
 
 #, python-format
 msgid ""
 "View <a href=\"https://docs.djangoproject.com/en/%(version)s/releases/\" "
 "target=\"_blank\" rel=\"noopener\">release notes</a> for Django %(version)s"
 msgstr ""
-
-msgid "The install worked successfully! Congratulations!"
-msgstr ""
+"Разгледайте <a href=\"https://docs.djangoproject.com/en/%(version)s/releases/"
+"\" target=\"_blank\" rel=\"noopener\">release notes</a> за Django %(version)s"
 
 #, python-format
 msgid ""
@@ -1245,25 +1296,25 @@ msgid ""
 "\">DEBUG=True</a> is in your settings file and you have not configured any "
 "URLs."
 msgstr ""
-"Вие виждате тази страница защото <a href=\"https://docs.djangoproject.com/en/"
-"%(version)s/ref/settings/#debug\" target=\"_blank\" rel=\"noopener"
-"\">DEBUG=True</a> е във вашият settings файл и не сте конфигурирали никакви "
-"URL-и"
+"Вие виждате тази страница, защото <a href=\"https://docs.djangoproject.com/"
+"en/%(version)s/ref/settings/#debug\" target=\"_blank\" rel=\"noopener"
+"\">DEBUG=True</a> е във вашия файл с настройки и не сте конфигурирали "
+"никакви URL-и."
 
 msgid "Django Documentation"
-msgstr "Django Документация"
+msgstr "Django документация"
 
 msgid "Topics, references, &amp; how-to’s"
-msgstr ""
+msgstr "Теми, наръчници, &amp; друга документация"
 
 msgid "Tutorial: A Polling App"
-msgstr ""
+msgstr "Урок: Приложение за анкета"
 
 msgid "Get started with Django"
 msgstr "Започнете с Django"
 
 msgid "Django Community"
-msgstr ""
+msgstr "Django общност"
 
 msgid "Connect, get help, or contribute"
-msgstr ""
+msgstr "Свържете се, получете помощ или допринесете"
diff --git a/django/contrib/admin/locale/bg/LC_MESSAGES/django.mo b/django/contrib/admin/locale/bg/LC_MESSAGES/django.mo
index 4a04342fc20ecf850f1f9b0f2e2fd981fa9eff81..340a88042e58c499d630f9a104adc40739575261 100644
GIT binary patch
literal 21397
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
Yq19PiFXYC8GCvw_b6YmrY8%1-0%oaQ#{d8T

delta 4624
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
M0J$gZ+<Djh4<q5_kN^Mx

diff --git a/django/contrib/admin/locale/bg/LC_MESSAGES/django.po b/django/contrib/admin/locale/bg/LC_MESSAGES/django.po
index 767c727f2a..111d7094eb 100644
--- a/django/contrib/admin/locale/bg/LC_MESSAGES/django.po
+++ b/django/contrib/admin/locale/bg/LC_MESSAGES/django.po
@@ -1,6 +1,7 @@
 # This file is distributed under the same license as the Django package.
 #
 # Translators:
+# arneatec <arneatec@gmail.com>, 2022
 # Boris Chervenkov <office@sentido.bg>, 2012
 # Claude Paroz <claude@2xlibre.net>, 2014
 # Jannis Leidel <jannis@leidel.info>, 2011
@@ -12,9 +13,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: django\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-01-15 09:00+0100\n"
-"PO-Revision-Date: 2020-12-06 05:54+0000\n"
-"Last-Translator: Todor Lubenov <tlubenov@gmail.com>\n"
+"POT-Creation-Date: 2021-09-21 10:22+0200\n"
+"PO-Revision-Date: 2022-01-14 09:41+0000\n"
+"Last-Translator: arneatec <arneatec@gmail.com>\n"
 "Language-Team: Bulgarian (http://www.transifex.com/django/django/language/"
 "bg/)\n"
 "MIME-Version: 1.0\n"
@@ -78,7 +79,7 @@ msgid "Empty"
 msgstr "Празно"
 
 msgid "Not empty"
-msgstr ""
+msgstr "Не е празно"
 
 #, python-format
 msgid ""
@@ -86,7 +87,7 @@ msgid ""
 "that both fields may be case-sensitive."
 msgstr ""
 "Моля въведете правилния %(username)s и парола за администраторски акаунт. "
-"Моля забележете, че и двете полета са с главни и малки букви."
+"Моля забележете, че и двете полета могат да са с главни и малки букви."
 
 msgid "Action:"
 msgstr "Действие:"
@@ -99,7 +100,7 @@ msgid "Remove"
 msgstr "Премахване"
 
 msgid "Addition"
-msgstr ""
+msgstr "Добавка"
 
 msgid "Change"
 msgstr "Промени"
@@ -131,29 +132,29 @@ msgid "change message"
 msgstr "промени съобщение"
 
 msgid "log entry"
-msgstr "записка"
+msgstr "записка в журнала"
 
 msgid "log entries"
-msgstr "записки"
+msgstr "записки в журнала"
 
 #, python-format
 msgid "Added “%(object)s”."
-msgstr ""
+msgstr "Добавен “%(object)s”."
 
 #, python-format
 msgid "Changed “%(object)s” — %(changes)s"
-msgstr ""
+msgstr "Променени “%(object)s” — %(changes)s"
 
 #, python-format
 msgid "Deleted “%(object)s.”"
-msgstr ""
+msgstr "Изтрити “%(object)s.”"
 
 msgid "LogEntry Object"
 msgstr "LogEntry обект"
 
 #, python-brace-format
 msgid "Added {name} “{object}”."
-msgstr ""
+msgstr "Добавен {name} “{object}”."
 
 msgid "Added."
 msgstr "Добавено."
@@ -163,7 +164,7 @@ msgstr "и"
 
 #, python-brace-format
 msgid "Changed {fields} for {name} “{object}”."
-msgstr ""
+msgstr "Променени {fields} за {name} “{object}”."
 
 #, python-brace-format
 msgid "Changed {fields}."
@@ -171,7 +172,7 @@ msgstr "Променени {fields}."
 
 #, python-brace-format
 msgid "Deleted {name} “{object}”."
-msgstr ""
+msgstr "Изтрит {name} “{object}”."
 
 msgid "No fields changed."
 msgstr "Няма променени полета."
@@ -181,37 +182,46 @@ msgstr "Празно"
 
 msgid "Hold down “Control”, or “Command” on a Mac, to select more than one."
 msgstr ""
+"Задръжте “Control”, или “Command” на Mac, за да изберете повече от едно."
 
 #, python-brace-format
 msgid "The {name} “{obj}” was added successfully."
-msgstr ""
+msgstr "Обектът {name} “{obj}” бе успешно добавен."
 
 msgid "You may edit it again below."
-msgstr ""
+msgstr "Можете отново да го промените по-долу."
 
 #, python-brace-format
 msgid ""
 "The {name} “{obj}” was added successfully. You may add another {name} below."
 msgstr ""
+"Обектът {name} “{obj}” бе успешно добавен. Можете да добавите друг {name} по-"
+"долу."
 
 #, python-brace-format
 msgid ""
 "The {name} “{obj}” was changed successfully. You may edit it again below."
 msgstr ""
+"Обектът {name} “{obj}” бе успешно променен. Можете да го промените отново по-"
+"долу."
 
 #, python-brace-format
 msgid "The {name} “{obj}” was added successfully. You may edit it again below."
 msgstr ""
+"Обектът {name} “{obj}” бе успешно добавен. Можете да го промените отново по-"
+"долу."
 
 #, python-brace-format
 msgid ""
 "The {name} “{obj}” was changed successfully. You may add another {name} "
 "below."
 msgstr ""
+"Обектът {name} “{obj}” бе успешно променен. Можете да добавите друг {name} "
+"по-долу."
 
 #, python-brace-format
 msgid "The {name} “{obj}” was changed successfully."
-msgstr ""
+msgstr "Обектът {name} “{obj}” бе успешно променен."
 
 msgid ""
 "Items must be selected in order to perform actions on them. No items have "
@@ -221,15 +231,15 @@ msgstr ""
 "променени елементи."
 
 msgid "No action selected."
-msgstr "Няма избрани действия."
+msgstr "Няма избрано действие."
 
 #, python-format
 msgid "The %(name)s “%(obj)s” was deleted successfully."
-msgstr ""
+msgstr "%(name)s “%(obj)s” беше успешно изтрит."
 
 #, python-format
 msgid "%(name)s with ID “%(key)s” doesn’t exist. Perhaps it was deleted?"
-msgstr ""
+msgstr "%(name)s с ID “%(key)s” не съществува. Може би е изтрит?"
 
 #, python-format
 msgid "Add %s"
@@ -250,17 +260,17 @@ msgstr "Грешка в базата данни"
 msgid "%(count)s %(name)s was changed successfully."
 msgid_plural "%(count)s %(name)s were changed successfully."
 msgstr[0] "%(count)s %(name)s беше променено успешно."
-msgstr[1] "%(count)s %(name)s бяха променени успешно."
+msgstr[1] "%(count)s %(name)s бяха успешно променени."
 
 #, python-format
 msgid "%(total_count)s selected"
 msgid_plural "All %(total_count)s selected"
 msgstr[0] "%(total_count)s е избран"
-msgstr[1] "Всички %(total_count)s са избрани"
+msgstr[1] "Избрани са всички %(total_count)s"
 
 #, python-format
 msgid "0 of %(cnt)s selected"
-msgstr "0 от %(cnt)s са избрани"
+msgstr "Избрани са 0 от %(cnt)s"
 
 #, python-format
 msgid "Change history: %s"
@@ -281,10 +291,10 @@ msgstr ""
 "на следните защитени и свързани обекти: %(related_objects)s"
 
 msgid "Django site admin"
-msgstr "Административен панел"
+msgstr "Django административен сайт"
 
 msgid "Django administration"
-msgstr "Административен панел"
+msgstr "Администрация на Django"
 
 msgid "Site administration"
 msgstr "Администрация на сайта"
@@ -318,9 +328,12 @@ msgid ""
 "There’s been an error. It’s been reported to the site administrators via "
 "email and should be fixed shortly. Thanks for your patience."
 msgstr ""
+"Получи се грешка. Администраторите на сайта са уведомени за това чрез "
+"електронна поща и грешката трябва да бъде поправена скоро. Благодарим ви за "
+"търпението."
 
 msgid "Run the selected action"
-msgstr "Стартирай избраните действия"
+msgstr "Изпълни избраното действие"
 
 msgid "Go"
 msgstr "Напред"
@@ -333,11 +346,11 @@ msgid "Select all %(total_count)s %(module_name)s"
 msgstr "Избери всички %(total_count)s %(module_name)s"
 
 msgid "Clear selection"
-msgstr "Изтрий избраното"
+msgstr "Изчисти избраното"
 
 #, python-format
 msgid "Models in the %(name)s application"
-msgstr "Моделите в %(name)s приложение"
+msgstr "Модели в приложението %(name)s "
 
 msgid "Add"
 msgstr "Добави"
@@ -346,12 +359,14 @@ msgid "View"
 msgstr "Изглед"
 
 msgid "You don’t have permission to view or edit anything."
-msgstr "Вие нямате права да разглеждате или редактирате нищо."
+msgstr "Нямате права да разглеждате или редактирате каквото и да е."
 
 msgid ""
 "First, enter a username and password. Then, you’ll be able to edit more user "
 "options."
 msgstr ""
+"Първо въведете потребител и парола. След това ще можете да редактирате "
+"повече детайли. "
 
 msgid "Enter a username and password."
 msgstr "Въведете потребителско име и парола."
@@ -360,7 +375,7 @@ msgid "Change password"
 msgstr "Промени парола"
 
 msgid "Please correct the error below."
-msgstr "Моля коригирайте грешката долу"
+msgstr "Моля, поправете грешката по-долу"
 
 msgid "Please correct the errors below."
 msgstr "Моля поправете грешките по-долу."
@@ -405,7 +420,7 @@ msgid "Sorting priority: %(priority_number)s"
 msgstr "Ред на подреждане: %(priority_number)s"
 
 msgid "Toggle sorting"
-msgstr "Обърни подреждането"
+msgstr "Превключи подреждането"
 
 msgid "Delete"
 msgstr "Изтрий"
@@ -416,31 +431,31 @@ msgid ""
 "related objects, but your account doesn't have permission to delete the "
 "following types of objects:"
 msgstr ""
-"Изтриването на обекта %(object_name)s '%(escaped_object)s' не може да бъде "
-"извършено без да се изтрият и някои свързани обекти, върху които обаче "
-"нямате права: "
+"Изтриването на %(object_name)s '%(escaped_object)s' би причинило изтриване "
+"на свързани обекти, но вашият потребител няма право да изтрива следните "
+"видове обекти:"
 
 #, python-format
 msgid ""
 "Deleting the %(object_name)s '%(escaped_object)s' would require deleting the "
 "following protected related objects:"
 msgstr ""
-"Изтриването на %(object_name)s '%(escaped_object)s' ще доведе до "
-"заличаването на следните защитени свързани обекти:"
+"Изтриването на %(object_name)s '%(escaped_object)s' изисква изтриването на "
+"следните защитени свързани обекти:"
 
 #, python-format
 msgid ""
 "Are you sure you want to delete the %(object_name)s \"%(escaped_object)s\"? "
 "All of the following related items will be deleted:"
 msgstr ""
-"Наистина ли искате да изтриете обектите %(object_name)s \"%(escaped_object)s"
-"\"? Следните свързани елементи също ще бъдат изтрити:"
+"Наистина ли искате да изтриете %(object_name)s \"%(escaped_object)s\"? "
+"Следните свързани елементи също ще бъдат изтрити:"
 
 msgid "Objects"
 msgstr "Обекти"
 
 msgid "Yes, I’m sure"
-msgstr "Да сигурен съм"
+msgstr "Да, сигурен съм"
 
 msgid "No, take me back"
 msgstr "Не, върни ме обратно"
@@ -455,15 +470,15 @@ msgid ""
 "types of objects:"
 msgstr ""
 "Изтриването на избраните %(objects_name)s ще доведе до изтриване на свързани "
-"обекти. Вашият профил няма права за изтриване на следните типове обекти:"
+"обекти, но вашият потребител няма право да изтрива следните типове обекти:"
 
 #, python-format
 msgid ""
 "Deleting the selected %(objects_name)s would require deleting the following "
 "protected related objects:"
 msgstr ""
-"Изтриването на избраните %(objects_name)s ще доведе до заличаването на "
-"следните защитени свързани обекти:"
+"Изтриването на избраните %(objects_name)s изисква изтриването на следните "
+"защитени свързани обекти:"
 
 #, python-format
 msgid ""
@@ -500,14 +515,16 @@ msgid ""
 "database tables have been created, and make sure the database is readable by "
 "the appropriate user."
 msgstr ""
+"Проблем с вашата база данни. Убедете се, че необходимите таблици в базата са "
+"създадени и че съответния потребител има необходимите права за достъп.  "
 
 #, python-format
 msgid ""
 "You are authenticated as %(username)s, but are not authorized to access this "
 "page. Would you like to login to a different account?"
 msgstr ""
-"Вие сте се автентикиран като %(username)s, но не сте оторизиран да достъпите "
-"тази страница. Бихте ли желали да влезе с друг профил."
+"Вие сте се удостоверен като %(username)s, но не сте оторизиран да достъпите "
+"тази страница. Бихте ли желали да влезе с друг профил?"
 
 msgid "Forgotten your password or username?"
 msgstr "Забравена парола или потребителско име?"
@@ -515,6 +532,12 @@ msgstr "Забравена парола или потребителско име
 msgid "Toggle navigation"
 msgstr "Превключи навигацията"
 
+msgid "Start typing to filter…"
+msgstr "Започнете да пишете за филтър..."
+
+msgid "Filter navigation items"
+msgstr "Филтриране на навигационните елементи"
+
 msgid "Date/time"
 msgstr "Дата/час"
 
@@ -528,6 +551,8 @@ msgid ""
 "This object doesn’t have a change history. It probably wasn’t added via this "
 "admin site."
 msgstr ""
+"Този обект няма история на промените. Вероятно не е бил добавен чрез този "
+"административен сайт."
 
 msgid "Show all"
 msgstr "Покажи всички"
@@ -536,7 +561,7 @@ msgid "Save"
 msgstr "Запис"
 
 msgid "Popup closing…"
-msgstr ""
+msgstr "Изскачащият прозорец се затваря..."
 
 msgid "Search"
 msgstr "Търсене"
@@ -552,13 +577,13 @@ msgid "%(full_result_count)s total"
 msgstr "%(full_result_count)s общо"
 
 msgid "Save as new"
-msgstr "Запис като нов"
+msgstr "Запиши като нов"
 
 msgid "Save and add another"
-msgstr "Запис и нов"
+msgstr "Запиши и добави нов"
 
 msgid "Save and continue editing"
-msgstr "Запис и продължение"
+msgstr "Запиши и продължи"
 
 msgid "Save and view"
 msgstr "Запиши и прегледай"
@@ -578,8 +603,8 @@ msgstr "Добавяне на друг %(model)s"
 msgid "Delete selected %(model)s"
 msgstr "Изтриване на избрания %(model)s"
 
-msgid "Thanks for spending some quality time with the Web site today."
-msgstr "Благодарим Ви, че използвахте този сайт днес."
+msgid "Thanks for spending some quality time with the web site today."
+msgstr "Благодарим ви за добре прекараното време с този сайт днес."
 
 msgid "Log in again"
 msgstr "Влез пак"
@@ -594,25 +619,27 @@ msgid ""
 "Please enter your old password, for security’s sake, and then enter your new "
 "password twice so we can verify you typed it in correctly."
 msgstr ""
+"Въведете старата си парола /от съображения за сигурност/. След това въведете "
+"желаната нова парола два пъти, за да сверим дали е написана правилно."
 
 msgid "Change my password"
-msgstr "Промяна на парола"
+msgstr "Промяна на паролата ми"
 
 msgid "Password reset"
 msgstr "Нова парола"
 
 msgid "Your password has been set.  You may go ahead and log in now."
-msgstr "Паролата е променена. Вече можете да се впишете"
+msgstr "Паролата е променена. Вече можете да се впишете."
 
 msgid "Password reset confirmation"
-msgstr "Парола за потвърждение"
+msgstr "Потвърждение за смяна на паролата"
 
 msgid ""
 "Please enter your new password twice so we can verify you typed it in "
 "correctly."
 msgstr ""
-"Моля, въведете новата парола два пъти, за да може да се потвърди, че сте я "
-"написали правилно."
+"Моля, въведете новата парола два пъти, за да се уверим, че сте я написали "
+"правилно."
 
 msgid "New password:"
 msgstr "Нова парола:"
@@ -631,25 +658,29 @@ msgid ""
 "We’ve emailed you instructions for setting your password, if an account "
 "exists with the email you entered. You should receive them shortly."
 msgstr ""
+"По имейл изпратихме инструкции за смяна на паролата, ако съществува профил с "
+"въведения от вас адрес. Би трябвало скоро да ги получите.   "
 
 msgid ""
 "If you don’t receive an email, please make sure you’ve entered the address "
 "you registered with, and check your spam folder."
 msgstr ""
+"Ако не получите имейл, моля уверете се, че сте попълнили правилно адреса, с "
+"който сте се регистрирали, също проверете спам папката във вашата поща."
 
 #, python-format
 msgid ""
 "You're receiving this email because you requested a password reset for your "
 "user account at %(site_name)s."
 msgstr ""
-"Вие сте получили този имейл, защото сте поискали да промените паролата за "
+"Вие получавати този имейл, защото сте поискали да промените паролата за "
 "вашия потребителски акаунт в %(site_name)s."
 
 msgid "Please go to the following page and choose a new password:"
 msgstr "Моля, отидете на следната страница и изберете нова парола:"
 
 msgid "Your username, in case you’ve forgotten:"
-msgstr "Вашето потребителско име в случай че сте го забравили:"
+msgstr "Вашето потребителско име, в случай че сте го забравили:"
 
 msgid "Thanks for using our site!"
 msgstr "Благодарим, че ползвате сайта ни!"
@@ -662,12 +693,14 @@ msgid ""
 "Forgotten your password? Enter your email address below, and we’ll email "
 "instructions for setting a new one."
 msgstr ""
+"Забравили сте си паролата? Въведете своя имейл адрес по-долу, и ние ще ви "
+"изпратим инструкции как да я смените с нова."
 
 msgid "Email address:"
-msgstr "E-mail адреси:"
+msgstr "Имейл адреси:"
 
 msgid "Reset my password"
-msgstr "Нова парола"
+msgstr "Задай новата ми парола"
 
 msgid "All dates"
 msgstr "Всички дати"
@@ -697,4 +730,4 @@ msgid "Currently:"
 msgstr "Сега:"
 
 msgid "Change:"
-msgstr "Промени"
+msgstr "Промяна:"
diff --git a/django/contrib/admin/locale/bg/LC_MESSAGES/djangojs.mo b/django/contrib/admin/locale/bg/LC_MESSAGES/djangojs.mo
index 4940bb9f4e717d1ffce8e341d7a5f5dc0effc4b1..2a8686389307e9b1aa903f6000c309d4843a0dff 100644
GIT binary patch
delta 2298
zcmai!QB0gg5P+9*6$(g!D@biA2Nr4z2M5+x5DOS=BTB1nO*E;RA986?IPkc`lBjo}
zrpClJ<+l-|wGyKy^+5^}59ELcqt>L&USg`I32I;TK~s&!`cRDD{47npnz*^yZ)bL9
zcXoIFi&tFmMHcd0Clsv-Sue6esYiq^I$Ct4QrqDmya7%b&O?6cbEBVwS?FIG{RhLJ
z;EmWX8!j4VvRH;v5w(`VDjYV#Vps*s;cl1?!-mg6e(DIF<aQLMLEGqW7`_eJL%j=A
z;RjIG`OwVA;KS%~xS#!10jr3^lTZReP!>K+hmVRvGF3;QBsvTwfj8l+a1<Vg+gL<4
z{sPK+=jrZ*Uqgv=)4c_Y;0T<7z3i_ZV)dKgXRr`1z?<O}!@NwT)}ni10o-Ny7?ij$
z%!jW)iF*f%|14YwzkzP}hhaMJB>wARL?&vDVJBRJegMiwPr)ZrlzIuaq5sZ9=E3Id
zr3Lpxa#V*PE~*da!l<zi8~aHp37v+L(5HsqXUqFzxQam%DOk<B!!6K)126|(H2fLL
zMvG83&R|mXd?-&<YPcE76Zni?2iZb3K`F*Pa1K72!~M@QC?aifSb!4v3&cnLX_&^b
z%h3y=+(09pY`hm1azl^9VtANSNc;%bC>({o@HCW!*KzL`U^)C7E=Cw!VsMrFrjFEi
zJgD$T!^=>L=L(eKN})jHq-loPP&Udp`UWWeWl+|sHu`qRm#vx&TMQ$+%%Ih<&F}%k
zeUO7WZL^_3PG4&D8Yo``IjRz56C$^_6)8fhkXsPB`W=YWfEVFLr2dzRM(RM?Mx-9O
z6_F~HM&Vv-O=cvglvc3>r(iv1ERa95+YmYRHslUOZe+PpLaI*omv6MeSmkY{4$6#v
z7rY(WV013S`9kD>LfRIj5vdi0CQl=6`w~<&lxM3%q<-Y7e29Fe#fW2&%2yL%*O#fO
zm!hxRP3e^myVJWJUQEBw;igr`B365Q(BEI>>Fx=H4tbh;gPmP2dX;1k9}M?}T+QKw
zNfRyp4u5yMKj>nRG_}*;9t>N-0T+X$sa7lC%(PmOK=M?$YrxeS?z+w#@MBK)ZnJ_N
zhg|eY?rqip)`2AJ?w<aoWEq&L>gAK~=?L}6Ibc%MK7Vg$DU6Xlx$5k_-o5_*&c4o`
zfVag8`RhHkzS>%^uf|)m)#IzH-&$AUqh;K0^@Y6qgI1ug%L?@b>pfO5;K#qi)37|6
z_$y;aN={-h@qA(^5!EprPYmfXyFTl|m6M{|!&!IRv8<Ab-?Gl7tVj&n@$7jp@yzNI
zDJ6tS(4_uEPwO!W^pxrm{jolyo#0ZtGPf{uPS4^n>8#t9Tb(+jC+%l*-z)pi=u^&m
zGpzQaj_cU<EBN!q>|fm_cB9*ETkd-roc-n!FS7;y9(_hm!j5r0R_P%j29y7?dh~00
zOwZ{UhdJ;5wme3@*WwAq`y-AtCF$vLZbUMlwa>13y7d2D?F0F3{j8pdRw;HF*Aq~d
zo32uc7vQ+eB#!Ag{ZVp`2}oRNIde2I<P7wb!Z?fn4DqviIx&R*Ao`q)^eN{zs`N>v
L-&cBA=~49$igpPa

delta 1652
zcmb8vZ)lrE9Ki95?d+1;tpCzZt=+Tgx@ns%N#ja8CsO|mr?YB{sL0?!LMdyT(uTOa
zN?k?4y(n^1r{XKYO=Kfonl{#^+Z$!-z<XXOOk_C0$$X<PHiYhlet*d!?4`%^yU*R_
z?w)(@uKh7u?#W$lu6<XL5<~~F=2L1vzEVR*I#R1tKW6cET(p*O6ZLbp{uSOq{i3a3
zvi^b%wEu3sVXa|sK&hN+qTr`P2X4b|?8YZ>GfrAFC=19TbEr454v*Qoww^#9^)Z=z
z!zU>7oJ1Ly#}~1Pqr6`QnN>QxiZWmVW#Vb%QAfyFsmh@&^lg-hj^lCs0N=p~gP2pD
zN15+y+>76%jH{>dLkyve%i}cfSC8{+3ocu~#Srz&wtn5#H?xXX+B>lg`|u-<>i{04
zezm^3-~{I&^X)}`Qo|@m^D<czj@kAs=7Kc5LE%o+csHKLcKpV+UqPAhCO(5(I8YZ4
zVI!WmdPo=bE6R)iwDk>SlT;lq6N4x_6biEc($Gl*kJ>>-UzNZ$9KtgGgFLFdr8@8;
z%8P%nUd3+ee`7Ot@}n#yhK=md!`P0)e7?MRj85WoGy6YHAxnd-_z(OEZ{P+RKKp0<
zj(xukPjN2d=hidUMeCAv#kz{TS8XLE#j8|uPD}28b)^xMEtjv@PDqj?ktCN*&RvpR
zu$_dQV<#btk<?SAvYS#2+q!&|qz4G@p}I#ZBsQdya<UD4tlCBN5`Bc+0om^R35Q@;
zRg94T4?74+QQ}@AL39z4?y918BX_p)*Te=?lH8wdwtOGT1?H#=xlI>pd^`04e=m8~
zKS_Sg{}g$DU_oE6zmOXZKRT0i)8nbB@MCT|Iq1Zru|47FgW*`e6Ym?0#e1UhXf*Kb
zaQOLTW_<RRe*NL-KsYww#P$p(Vm(n(;AwX@9Uh%=r)DSIbZTbMc_BHKoEV>SM$)P5
z;Z(+XD06tWT6|<|(j6}Z8U}o|Ze%i|M}p7QmApBVH*5N{;E=CW_$zqLr}s7a^>2;K
zV&P=dG2gx}bHc2cMYHbBbvfSa-ciOB&6j4?<Q=m{aoH?+^Nv|EXHC&NYKo3o_2wy*
zOevxdH9PwKmY{DzpKAG3yR9v||K}9?z1Dn3p4p40EN_&;7ZlfJo?ge~^-H1c^<{5C
z7DSxYnb4EF_NN@PSXsroDN8ShA*}4bHd;p9Oj6$rU20fi;5jCIOZw<5Z6UqU_FBg+
Xt<~>Z^5(pGQ!wjVw;$9)TU-AHCqPT@

diff --git a/django/contrib/admin/locale/bg/LC_MESSAGES/djangojs.po b/django/contrib/admin/locale/bg/LC_MESSAGES/djangojs.po
index ded64ac3d0..84a6141234 100644
--- a/django/contrib/admin/locale/bg/LC_MESSAGES/djangojs.po
+++ b/django/contrib/admin/locale/bg/LC_MESSAGES/djangojs.po
@@ -1,15 +1,16 @@
 # This file is distributed under the same license as the Django package.
 #
 # Translators:
+# arneatec <arneatec@gmail.com>, 2022
 # Jannis Leidel <jannis@leidel.info>, 2011
 # Venelin Stoykov <vkstoykov@gmail.com>, 2015-2016
 msgid ""
 msgstr ""
 "Project-Id-Version: django\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2016-05-17 23:12+0200\n"
-"PO-Revision-Date: 2017-09-19 16:41+0000\n"
-"Last-Translator: Venelin Stoykov <vkstoykov@gmail.com>\n"
+"POT-Creation-Date: 2021-01-15 09:00+0100\n"
+"PO-Revision-Date: 2022-01-14 09:49+0000\n"
+"Last-Translator: arneatec <arneatec@gmail.com>\n"
 "Language-Team: Bulgarian (http://www.transifex.com/django/django/language/"
 "bg/)\n"
 "MIME-Version: 1.0\n"
@@ -28,8 +29,8 @@ msgid ""
 "the box below and then clicking the \"Choose\" arrow between the two boxes."
 msgstr ""
 "Това е списък на наличните %s . Можете да изберете някои, като ги изберете в "
-"полето по-долу и след това кликнете върху \"Избор\" стрелка между двете "
-"кутии."
+"полето по-долу и след това кликнете върху стрелката \"Избери\" между двете "
+"полета."
 
 #, javascript-format
 msgid "Type into this box to filter down the list of available %s."
@@ -46,7 +47,7 @@ msgid "Click to choose all %s at once."
 msgstr "Кликнете, за да изберете всички %s наведнъж."
 
 msgid "Choose"
-msgstr "Избирам"
+msgstr "Избери"
 
 msgid "Remove"
 msgstr "Премахни"
@@ -60,9 +61,9 @@ msgid ""
 "This is the list of chosen %s. You may remove some by selecting them in the "
 "box below and then clicking the \"Remove\" arrow between the two boxes."
 msgstr ""
-"Това е списък на избрания %s. Можете да премахнете някои, като ги изберете в "
-"полето по-долу и след това щракнете върху \"Премахни\" стрелка между двете "
-"кутии."
+"Това е списък на избраните %s. Можете да премахнете някои, като ги изберете "
+"в полето по-долу и след това щракнете върху стрелката \"Премахни\" между "
+"двете полета."
 
 msgid "Remove all"
 msgstr "Премахване на всички"
@@ -80,51 +81,33 @@ msgid ""
 "You have unsaved changes on individual editable fields. If you run an "
 "action, your unsaved changes will be lost."
 msgstr ""
-"Имате незапазени промени по отделни полета за редактиране. Ако започнете "
-"друго, незаписаните промени ще бъдат загубени."
+"Имате незапазени промени по отделни полета за редактиране. Ако изпълните "
+"действие, незаписаните промени ще бъдат загубени."
 
 msgid ""
-"You have selected an action, but you haven't saved your changes to "
-"individual fields yet. Please click OK to save. You'll need to re-run the "
+"You have selected an action, but you haven’t saved your changes to "
+"individual fields yet. Please click OK to save. You’ll need to re-run the "
 "action."
 msgstr ""
 "Вие сте избрали действие, но не сте записали промените по полета. Моля, "
-"кликнете ОК, за да се запишат. Трябва отново да започнете действие."
+"кликнете ОК, за да се запишат. Трябва отново да изпълните действието."
 
 msgid ""
-"You have selected an action, and you haven't made any changes on individual "
-"fields. You're probably looking for the Go button rather than the Save "
+"You have selected an action, and you haven’t made any changes on individual "
+"fields. You’re probably looking for the Go button rather than the Save "
 "button."
 msgstr ""
-"Вие сте избрали дадена дейност, а не сте направили някакви промени по "
-"полетата. Вероятно търсите Go бутон, а не бутона Save."
-
-#, javascript-format
-msgid "Note: You are %s hour ahead of server time."
-msgid_plural "Note: You are %s hours ahead of server time."
-msgstr[0] "Бележка: Вие сте %s час напред от времето на сървъра."
-msgstr[1] "Бележка: Вие сте %s часа напред от времето на сървъра"
-
-#, javascript-format
-msgid "Note: You are %s hour behind server time."
-msgid_plural "Note: You are %s hours behind server time."
-msgstr[0] "Внимание: Вие сте %s час назад от времето на сървъра."
-msgstr[1] "Внимание: Вие сте %s часа назад от времето на сървъра."
+"Вие сте избрали действие, но не сте направили промени по полетата. Вероятно "
+"търсите Изпълни бутона, а не бутона Запис."
 
 msgid "Now"
 msgstr "Сега"
 
-msgid "Choose a Time"
-msgstr "Изберете време"
-
-msgid "Choose a time"
-msgstr "Избери време"
-
 msgid "Midnight"
 msgstr "Полунощ"
 
 msgid "6 a.m."
-msgstr "6 a.m."
+msgstr "6 сутринта"
 
 msgid "Noon"
 msgstr "По обяд"
@@ -132,6 +115,24 @@ msgstr "По обяд"
 msgid "6 p.m."
 msgstr "6 след обяд"
 
+#, javascript-format
+msgid "Note: You are %s hour ahead of server time."
+msgid_plural "Note: You are %s hours ahead of server time."
+msgstr[0] "Бележка: Вие сте %s час напред от времето на сървъра."
+msgstr[1] "Бележка: Вие сте с %s часа напред от времето на сървъра"
+
+#, javascript-format
+msgid "Note: You are %s hour behind server time."
+msgid_plural "Note: You are %s hours behind server time."
+msgstr[0] "Внимание: Вие сте %s час назад от времето на сървъра."
+msgstr[1] "Внимание: Вие сте с %s часа назад от времето на сървъра."
+
+msgid "Choose a Time"
+msgstr "Изберете време"
+
+msgid "Choose a time"
+msgstr "Изберете време"
+
 msgid "Cancel"
 msgstr "Отказ"
 
@@ -183,6 +184,54 @@ msgstr "Ноември"
 msgid "December"
 msgstr "Декември"
 
+msgctxt "abbrev. month January"
+msgid "Jan"
+msgstr "ян."
+
+msgctxt "abbrev. month February"
+msgid "Feb"
+msgstr "февр."
+
+msgctxt "abbrev. month March"
+msgid "Mar"
+msgstr "март"
+
+msgctxt "abbrev. month April"
+msgid "Apr"
+msgstr "апр."
+
+msgctxt "abbrev. month May"
+msgid "May"
+msgstr "май"
+
+msgctxt "abbrev. month June"
+msgid "Jun"
+msgstr "юни"
+
+msgctxt "abbrev. month July"
+msgid "Jul"
+msgstr "юли"
+
+msgctxt "abbrev. month August"
+msgid "Aug"
+msgstr "авг."
+
+msgctxt "abbrev. month September"
+msgid "Sep"
+msgstr "септ."
+
+msgctxt "abbrev. month October"
+msgid "Oct"
+msgstr "окт."
+
+msgctxt "abbrev. month November"
+msgid "Nov"
+msgstr "ноем."
+
+msgctxt "abbrev. month December"
+msgid "Dec"
+msgstr "дек."
+
 msgctxt "one letter Sunday"
 msgid "S"
 msgstr "Н"
diff --git a/django/contrib/admin/locale/cs/LC_MESSAGES/django.mo b/django/contrib/admin/locale/cs/LC_MESSAGES/django.mo
index 3329fe2bdc8d502a2cae0b4e102da1a93ccb4a9b..0dd0b0c3f55935535b2fb1b825d5584f23c5076a 100644
GIT binary patch
delta 4193
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
W%qbYCuiDVt5~!uOF0yF$Ip5C$Y|g^~

delta 3984
zcmY+`32;qU0LJkX+lwt!gv1grXoMgUB1qI8Vu_ThCA9Wb5KCfdEU$KnruMbA&{`YH
zGo8|C&4j7eS{>R@RWt2$EY-1$j<z%U|L#3z^o;NQ&bjZtd(U>S{F4{3Z+U?4=NjeK
z8_F?Kj}(_T<{=KR%m>9=&6p63z*?Aqbukr(VJ1f68GHOb_M{zH-I#bxL;Zd!R=}<3
z!QEKa7@s*vr3wcQ+Y^dWKPW+UsMPutYts&X#l2882GWkhAWTFqXnJEsOts$+!FjYt
z;bOdnRdH+$4ajHAbSmmu9_ojykbh>2wFnuMIfY?(88w2t7>$pRYnt$2W1=t?)gFra
z-9&7KbCAh3MfQ6?R^tBV3>A&wGO7c&P$%9&b?i^n$e*G*5LDBcCK!e4NE(LY5Y+dx
za5k>SX;_KrJcM&`JVvvQyKxQrG=*)sx~9Ans^^1HQ<Q<~*bG#M7Gr13N8Ruos)KiN
zFh0b_m=bDC7G_}?yotKcFQ^XR!M^w~l=&}5<u$skndpYPPzmb7b?dl$qao^tF{mj`
zKz-j68)7O}!fB|E&qduhADJ{$fckwQvRY<8vYkwE9qy_QT;PC4dIhxvw^2X1XOBNd
z-M9=}U+2|8Jp~bb=t1d-4KM}0I017oAJgzT=3yE;x&vNEbs)r7-@RZYYDDp<9w(ue
zA`O{UGaA*=Tx3~|ey6owhZ^xAR7Z+Y*Ex$C$R*VEN>SJQ1DoM<q)*1zjD^(WmyDX4
zfvB|_kNV*hJc5hxRg7ntO)(ucLrd^AEI=m7oX0l!JL-K=&&&S7*4PsFqh{ns?4wn0
z8o?vOff+ae_h3JKhMKaTEU?!0I~<Nbp+?rek-I6oSyNCW?2lTaQK$}1MJ?TI)C?}S
z7C7Jgcnqj$2DYFsycabCN3cDfzyf@NWpQC+_kv4tA?*zqk6}!YUReDx6DMIu`~fvH
zA(8IX$D)=hU2=buK}8qNM)iCaszXb40<J}MY=?EfJ?=-1=qo%PV9aUMUYQ?d3{RNZ
zfa=g;yo%>>DDG<N9{(48y*LoYj@X5xk$<Lqv^#aN7)ZOFZFfOUaSB$(bkruyK;3Ww
zvaie*>*rXB_BHEm)RNpsb^J**>#yDWj01WcJk41S48?prh?<eME!-DW57Y(Hu`-T9
zZQ3bV6&G4pA%ivBQRjb+8rUV&rv4kbv<Yg-{A<b**_zrU15vwo3~J<??D0a>4UgFN
zNvuNq0#?B5s3p3MdaUlDZs>_&_Am}L6BCgK!^}kXvDx6GvWd!ZT!aI76i(qa%)^bX
zjQIp3;@lfvM0NNEY9x<Q9rLtyXCfH2M3LA9+adeU<YIZ;iCMS@_0;)7816(W$*2(@
zMUCVO+dhM%X<tNLpcPyF2qxfIyn{iQ+ScvR2-M6>L+$$cs2SR9+dI*@K60MVoS{;N
z6RseSyt#_%$X}?bG70Vtyr|<bsHdeJ24fOxjniy<2&w~<uo}LLwJ{HCU?K7@GshfR
z|L>_}a^MlB;0P9M1n$KoEYC~8i(OG89fP{zbkq%Uu`1?c7;Zv+e-yRGC#*M79ngOO
z+9SbOf%}^nD%u=vQ9bK|UL1+ZxB&GWpGDp1H`K@<+qNgs9dQWm<#<Dk#BY&}ZXTj$
zt^uQIj!_tegV3jU_k1dK@g!zoDQeet;q^5Eb8$HSiq3I<<QzxmIOgg6PHqR!;XAZT
zu_AWu?CzbusONqFY9<DEX8l#k<bY0`hnmu5w!IP6^Fq`vKY%*_Gt_zCU`;H=7<_;$
zFr2NgJ#ql`{UKb4C8%AW+|~UHYF1Ytqvya54ltW0yqh}{L$L|%8K}o;8){P>#sDm~
z$G=1^-DOnAZdf0nIvmj5eX&(V4KN(_`$D49n)^FF<S}=8sGANWp+w~^GM3C!gAzib
z2`gdJiONu-<<me^v`6X_Ex{hrkbFvbpv-!rl1dn}@oiJf79Me@Oyg6}dJ17_ofl9z
zE+yJvQ^@<|0MWF6K$uzQkIQ}7lDu3r<<-e<qFHH7Z1I`i)U?J^Nd*!`R+5dR4jDvv
zGR-8S*;09fFvHH$%)-TF0a2MldO9`!0>%%?Oj1BHh@ZSDhjhhWw6>B)L~Fd9EFnci
z<uFNhYP?LWdi+%Cxj1h`RrixLGD;1~n`Dtw<6Vz>998rb^(D^V|Ldr1B9n<qE@?(a
zke!4*<GjPcDe-)EcB{_kK|Wt6+er^nmMkNy$Pki6J|-`h+B61`7c=U7H=57EWR27M
z|Hm<!dO~)+ba(~z24pVL?p8@6L1c#-6kd8xnP3%O5=P4C{+p?&WRlsWAE`!ECX(hP
zTMf!uGR~>-Up0D2K6#srA$kPMkqDxa=wkZgd$!&OJCQA9xX#G2Ure{=VN+ZG2#?zO
zNQ@(qWCp3_A6M;KpnqWK1kc)Q4MqkG_9u8#Jyl{`#3r<ei}l8~?-1u--DG7Ie`1?H
ofoqGBx`&=F7?thK&Y50PICET9$w_avH>ad%a?TXLx8n`Ze;Wvt<p2Nx

diff --git a/django/contrib/admin/locale/cs/LC_MESSAGES/django.po b/django/contrib/admin/locale/cs/LC_MESSAGES/django.po
index be87f4a47b..ce5d6f8a85 100644
--- a/django/contrib/admin/locale/cs/LC_MESSAGES/django.po
+++ b/django/contrib/admin/locale/cs/LC_MESSAGES/django.po
@@ -5,14 +5,14 @@
 # Jirka Vejrazka <Jirka.Vejrazka@gmail.com>, 2011
 # Tomáš Ehrlich <tomas.ehrlich@gmail.com>, 2015
 # Vláďa Macek <macek@sandbox.cz>, 2013-2014
-# Vláďa Macek <macek@sandbox.cz>, 2015-2020
+# Vláďa Macek <macek@sandbox.cz>, 2015-2020,2022
 # yedpodtrzitko <yed@vanyli.net>, 2016
 msgid ""
 msgstr ""
 "Project-Id-Version: django\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-07-14 19:53+0200\n"
-"PO-Revision-Date: 2020-07-20 09:24+0000\n"
+"POT-Creation-Date: 2021-09-21 10:22+0200\n"
+"PO-Revision-Date: 2022-01-04 18:54+0000\n"
 "Last-Translator: Vláďa Macek <macek@sandbox.cz>\n"
 "Language-Team: Czech (http://www.transifex.com/django/django/language/cs/)\n"
 "MIME-Version: 1.0\n"
@@ -22,6 +22,10 @@ msgstr ""
 "Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n "
 "<= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"
 
+#, python-format
+msgid "Delete selected %(verbose_name_plural)s"
+msgstr "Odstranit vybrané položky typu %(verbose_name_plural)s"
+
 #, python-format
 msgid "Successfully deleted %(count)d %(items)s."
 msgstr "Úspěšně odstraněno: %(count)d %(items)s."
@@ -33,10 +37,6 @@ msgstr "Nelze smazat %(name)s"
 msgid "Are you sure?"
 msgstr "Jste si jisti?"
 
-#, python-format
-msgid "Delete selected %(verbose_name_plural)s"
-msgstr "Odstranit vybrané položky typu %(verbose_name_plural)s"
-
 msgid "Administration"
 msgstr "Správa"
 
@@ -536,6 +536,12 @@ msgstr "Zapomněli jste heslo nebo uživatelské jméno?"
 msgid "Toggle navigation"
 msgstr "Přehodit navigaci"
 
+msgid "Start typing to filter…"
+msgstr "Filtrovat začnete vepsáním textu..."
+
+msgid "Filter navigation items"
+msgstr "Filtrace položek navigace"
+
 msgid "Date/time"
 msgstr "Datum a čas"
 
@@ -603,8 +609,8 @@ msgstr "Přidat další %(model)s"
 msgid "Delete selected %(model)s"
 msgstr "Odstranit vybrané položky typu %(model)s"
 
-msgid "Thanks for spending some quality time with the Web site today."
-msgstr "Děkujeme za čas strávený s tímto webem."
+msgid "Thanks for spending some quality time with the web site today."
+msgstr "Děkujeme za dnešní čas strávený s tímto neobyčejným webem."
 
 msgid "Log in again"
 msgstr "Přihlaste se znovu"
diff --git a/django/contrib/admin/locale/de/LC_MESSAGES/django.mo b/django/contrib/admin/locale/de/LC_MESSAGES/django.mo
index fe08e8aad4d2c7f8c9823e981dbe2ef9067de728..7b6bae067f85f57a3520c49baf886d9f38bf935a 100644
GIT binary patch
delta 1565
zcmXxjduYvJ9LMqR%#2+yyD&TEusDpf?HsplW_Ap@tjwJnIc2V=o$YKZw|49wLm@;W
zD~VS7XERCik3=mJrC9kxid^@HC`x#L{C@V&>-T-mp6B^~zt8jBKAv#nctX$Pq<AdB
ztkP#T*35dRndM+V=HYAHhQDwIZkcZ8!DCpB*RcXWVlMg$&4ytJlW`fQVl8H29gf5%
z%*Mlo7XP>4c?Jp?=tFJr0@Lvurr{8F*Thjc6!S3!3tWrvB5@g>!RI&{cg}Ry+lNZ%
z9BSTW9EV*q<4z{`7|?_ln2+yqI41keif}Y$;zA@RTZ^i=4aeXGoQvJ44c?$C{DN91
zkwr#f8tQiss#Cr=ANq$PR7Ue~BGw{vtr16HCwj39bu|5W3E$!oY%ex@io;9H4&eYk
zzzqRsz9(pwK|B?8)TNk?@mfBV*;Z6*8*n2w<7|9{%G72#8z&=8vjUugSFr>8QI)M`
zk`}H*#d|P<t(b&w@F>2=W-Zk;$LYXZR3d|J{M(I_>8lbLi#nQo9El51|6hYjybg6F
zVbsP4QI#ISZ0tnty4^(0yM-w#<sl!s9M3Qd2T*rm5OeSk`Y>mnQ&}a_RjYArL$$mI
zqv$U+yM~uhucW%nNvs34?iJLL-awC9d6y5J=>V$2@2G^b%AIi!P9QGDOx%E~U=OM@
z2T(0<N3C-TbFmwX@qs)39n*+2<~x@*ALD9Oz#XW-d&H|ymoS6JJxRY~A+AMj+=d(R
zBy#`k9di7Zy})cdF2{?w9l1XC2kS9dX|@J0pc4C3N&h$Vk++bluoX|^V^pSFtIS$(
zFQ(#a)Ft}t`W3a|56r{Nkki^?979}&dR;ZBj;==)yan~zc7@{3nY1&Y4bI>S?8I*T
zfJ5-yBKMu+N#btYgykIYR6L6@yn{?J|6=FJqBxoO1S+8()E&EziTJXV553D*sLTdY
zmH%|(VN0BfGEirnhpK3L-~QAz&&r^`B;XIs@dg6r!QhM%{!(hf%`N_Qv2a6kB-|2>
sm3x;)qOslK25+b_8i_<3>SNxD9nMfy`2SE*eQVznUvF+-N2oXPFD{S5-v9sr

delta 1572
zcmXZbduYvJ9LMqRa9nm}7i<pBFk{=X9hYrpX2&&)3Cm>^2S-~S#yKNu`K8<vib<GA
zp`<XA<R63<DN@>hOGs`-$RBchfA%~3=k<J_v*&rf-|zGMZX8UweK6trQ;)MH!K^CZ
zY>1g%8)r5cJ8>9x<68WMg}7?GnHTrtEWCh~_#U${ufVJ?&cJ>+7n86SGqE01u?e$q
zSAjV_8y;t3G!yNp172bZe#2zc=~|eAeb9@Em>ahUPZO8nF?@joF<j*Cw;h#GD{5UE
z4#i7Fj+@C{CbZxsj=*==A3c7v37Co*I33B!7NaU|!E`)<rFa>2z$;XRpHTZGut^#w
zqJGaobt=zcpnoVrWi$mxVlA@PHsb(1gFd{3x|&XG!#B7Oono`+*tdkFunQkyUBF$R
zGtq1i@fg%qmtqP!wG5QmYE)|@xE#0QWPFUu^e^gQ&m<OMF6QBR+>f28$`-Lm8`q=a
z28>_~J@^U_;5&?ItEMS#2i~9(`5cdb$72tDRRUS4tMOtgPDA~F4Jz?^)RnA39lR4&
z=^o6&Gss)F8>n?RF;S&FWT40K3^TC{^%g$kVElvmm|5mlR*7`gYT~w_T7DIqu&~_h
zBDSHvlHgP~vAw8$&!MjLI(pU0I}Fs?E>wlzQ3<72xbrzUoVXM-untv01FADSu;(sO
z`y9q>yo|;8AU^*clZn%&xsTS1j#^b5pQyn5#0yc6FpZBpSHEKcE=C>Pg3Iv`^8V~C
za{ZPuotKUC@HDPNo{jy%FqTxAEx{A0#6DEf|CJ1~XP7O+7#_tZs7zN^n>Ax2CSf<~
z5q*sN6?NcG9EO8}ZfpIRPF#lix@u4zU5YAr73yo-7<Al$!-Nhvi8XiuuizK#g>5t4
z4bS2c;&xnt)m-pcJcUubhb*y4v)wD(hNFmEQ3>5by|KsG8@tOH=(~K4%IpWK@_+F-
zd5&Ar5Y!##qADux*qM~<ogeTA0{)5RzCc+;U~*vze~Al1v1Wf=G_*Mu2{kuGD||~r
xTN*;)h;L!z`Ua@n6l#oAN8QOyJ#!N_ggc(+w`cbcZrkYF5RUpfb_d&g{|8TM#E<|0

diff --git a/django/contrib/admin/locale/de/LC_MESSAGES/django.po b/django/contrib/admin/locale/de/LC_MESSAGES/django.po
index 83549e69e4..a1425c58b1 100644
--- a/django/contrib/admin/locale/de/LC_MESSAGES/django.po
+++ b/django/contrib/admin/locale/de/LC_MESSAGES/django.po
@@ -4,7 +4,7 @@
 # André Hagenbruch, 2012
 # Florian Apolloner <florian@apolloner.eu>, 2011
 # Dimitris Glezos <glezos@transifex.com>, 2012
-# Florian Apolloner <florian@apolloner.eu>, 2020-2021
+# Florian Apolloner <florian@apolloner.eu>, 2020-2022
 # Jannis Vajen, 2013
 # Jannis Leidel <jannis@leidel.info>, 2013-2018,2020
 # Jannis Vajen, 2016
@@ -15,8 +15,8 @@ msgstr ""
 "Project-Id-Version: django\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2021-09-21 10:22+0200\n"
-"PO-Revision-Date: 2021-11-28 17:14+0000\n"
-"Last-Translator: Raphael Michel <mail@raphaelmichel.de>\n"
+"PO-Revision-Date: 2022-01-15 11:22+0000\n"
+"Last-Translator: Florian Apolloner <florian@apolloner.eu>\n"
 "Language-Team: German (http://www.transifex.com/django/django/language/de/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -392,7 +392,7 @@ msgid "Welcome,"
 msgstr "Willkommen,"
 
 msgid "View site"
-msgstr "Auf der Website anzeigen"
+msgstr "Website anzeigen"
 
 msgid "Documentation"
 msgstr "Dokumentation"
diff --git a/django/contrib/admin/locale/uz/LC_MESSAGES/django.mo b/django/contrib/admin/locale/uz/LC_MESSAGES/django.mo
index 6fa33743d7e00183beac970117622487daf08476..67c6d07e41c1907ecf3954af2808ed41927634f3 100644
GIT binary patch
delta 2237
zcmYk-TWl0n9LMof=)JTBw18X(XlX&Jv_Qc{gaRUHA>2YxNc6NjSq5fz%FJwKOG1q%
zl4uh!BgO|WF%n~=i6YSlLkt*VqL6rbP#@I9h)Bc`62%xX==WE)rYG~C&*_<&bNQc{
z?Xg);HV*tSvGlm1Y$m1?gJX=@kN=c%qP$sdOa%_%SUid2@O|VkA9K=kpW<Y^gq3&`
z>#%}{_1q+^!l|h1jaX~UfN7;NiG~%(GiDp=#)q*UdyvCKoLcY@R^tiO0PkQKeuR4d
z95&;5<S@T;x&v>Z25#WQz-A_vF}_(yWhM>ns1CLwhuOtR9oS;KhZ?vSNs>8KynYy!
ztfx^Ee->--IL7!IYNC_4sQ#PqHe84k7~ia>qSS3eb+iw4V}Kl{kJB`K0+srga3T)j
zd_0Ys=p|f&S8)-}Wwx5|4o)<gM^TybiUv3^frdO4b#MeVfuqI0pU2?=Q5_5+i!rBA
zdwLqR(lbRb6x+W=t@u0C^H+-3|3dXs%0sfQhWx98DV#KLBW@{SRj7gbd0IY&<8csm
z|I0WBhftZjfa>rf>YcfYTF_0@M9SH4s-^)Oa1Ktz<+bEr7q-)&Ogx6SV~8B)2&X&o
zIBFtiu?aszrSckT;6G6**JxBt8&1JhsO!6mcB7v2QD03sKt&xNMY3aFM9utl)I0DN
z>ScKkm7z~i890yX=o{2?-=h|C8DGHbs09s@4o&D4RHoiWwV%UA9Qc}w2E2h9a4dON
zN7bmWVlr~cbf8kV9$Rq_>i%c21)sx(_#tXRzo1rr4K>lfi)wVGz8tx4z|5wi2`oUZ
zq#c>OSy{BJ=x)?!w-4#dWKk<STx=giZQW5+hEAaFdlz-zS=0hPNA>^na69||2NmAA
z;i8F*6s2pVY^I|9)Bq0<>xhwZU$LUW?j|(J*@OnsXL~=P3@D2ZF}kGm{VyYy6SIm}
zHWVE}+o4pC6n%PnDfO#)FQGK6bP#KZm4x1v2MKLSGoh`VK`1jS`u$KD&|YZ2^pfe5
z(of}Ggx*dPW9AZ@2yM**Vg;cWXLNaJ)E_O>+lekh?}<t$v6@i&7ZXbfm3#DWXAzY)
zVxw9p+N)K>JVL)_^NIC@N)xeGmCl~n3vwybnNBO5rk0$|y7QxCu<Vga-*?hBcBABC
z+0K$wvbcP~thM<tbaSy^NSSpuw%s;z9XAYvP=C6qWKa1U<y}FrKi`{_RD3nwjojGD
z7MxxiMUMwzI{C7qxx#mQVy7ueu2)={?q%JS*%72|fpaF~yH3vbc^Ru&B^N8VEw#C{
z>Dg;@8Q00WQDif&=?QW%b8zB9uWS4u<M2o5xzYdiLbA2Wt!Zm-ZR>E_+Ea@<lCxEl
z>pFe+ptG?%v>7iO^d<jR{aQ7$+5^dt)l*BH<VN+*x-~XrJSVa_>)SBdQqwi9Dav_H
z(A=M~VeExowAXC0Vc@GVIaV`;)SRhlU9utQ_rkPInN7CY&u4>}$DMB5ZzIn+Xyd^5
zGM-b&_dDHgnD)$e21q5p)qGI8vER3+ULDs^Qa{|Sm!;#_+wa@tWbLxb;lX2@OMa@o
zJa4Bx5U0$Vd?ueWn{Op5@(Pv*te>^f-dod4zNquZ^x0%Z{hS&5@*xXx3PFFqj|q8Z
KbVIVce(8TBoiK_3

delta 1627
zcmYk+TS!zv9LMp=tWDQdcdfQ8b4zXQ;&si+tTgB$dI(E`E(X>@yQFQoZcr3kJ_OOl
zU@9nj3W6RYx)%h2P((>YLRX?ILJ1ZH8AK0#f9o+C_CKF<nKSdBnRB+Q_;_LRtuOtg
zp)?Rv6=}w-lj&5H{bP)A;Q<_thj1(&MYTVHe!PO?@F8YnAFBNa=XyVSIRA<h@ek5Z
z(&SNRa3LRauoz3R2Kkv5svw3@i5$Vncmg%xB~-_^kUq_QoQA!~&kRth-FMXUzcCZj
zI7wrC<KaLza;Y@wNvMPh(2YUt#1Lv`7f>DF!aTf-T7f>)^8?QPZ#aeXA<RM_S@^IJ
zXJIwE7~gE<pa#QOiKkH+K0+n(3^lWNNMEKOHPE1Q{sT3@Z&Z616^F))+Jb!4M5Z~;
zMopv^lX`GD2mH)xDmC1Q8X$tvQO2~RI($J^@;$2E7o3hiQ7ho*B27&NYAY9_5?+BC
zrwJ$ECd|i9H|wt(-CWQEXK_4U#5vf5>TnRXGQUuJUCKj~uoiWHmE$_pN^L>CoKaN5
z2az02H!7hssI5Df#rkWeH@QIH<_@ZZ2dD=gBR}(!>J;{)7x$8d5;;btnV-dCyp9^+
z73v-NfO;7}qbBHL-L(RKEW@%S2Wq$hOK~&K#lxt~Z=+_|gG#K|x&9P2&}&qpACaFK
zbo}G!W>mgtlaIMrfaGGzQ7fIS=Rh-WLS@#1>L`wC*oC|TCPd66<`7C`5uuLf6MA`7
z$_cGzHK9I=h$TdjP+3aoi_q50ASlVyG87D-{Hp^TEp*QGXQ7p-b<Ri7a%*X|9psoQ
z+NxPZ{qSk3uA`n!X!hE36-`X5s_|3HuRW|Fv?Nu8Ubc~<)%m~7<3wAeZ&^ievWm80
zaq4JzEA{E=B^@aZ9F!3HVhRbZ_5uy8e>3f+Y24Bojcu<pjp4BE8N1$=xSH(&SCPHv
zI&XK3durEYl-RC}&*`yn>u!56bG3bwIn`#n!|uvZS#>B-RaI9Nviscr;F?HcTSua;
zEf#1_bZkv*kL?Q7$49O;B-&e}ZRLqQOYAxKfUhYQj7OsJNT4Kcmc`<covrqA)>=Ek
zvodE@aL?A(j?QSu@NK)(Gtr*(%(X+F8`rL8`$pO4IW^Xw`)SOw1cTUsx6O8Yr`spq
F&|iwKs+<4-

diff --git a/django/contrib/admin/locale/uz/LC_MESSAGES/django.po b/django/contrib/admin/locale/uz/LC_MESSAGES/django.po
index b5cdb16d39..80dd7971a6 100644
--- a/django/contrib/admin/locale/uz/LC_MESSAGES/django.po
+++ b/django/contrib/admin/locale/uz/LC_MESSAGES/django.po
@@ -1,9 +1,11 @@
 # This file is distributed under the same license as the Django package.
 #
 # Translators:
+# Alex Ibragimov, 2021
 # Anvar Ulugov <wasatiyatm@gmail.com>, 2020
 # Bedilbek Khamidov <bedilbek@gmail.com>, 2019
 # Claude Paroz <claude@2xlibre.net>, 2019
+# Nuriddin Islamov, 2021
 # Shukrullo Turgunov <shukrullo@umail.uz>, 2021
 # Sukhrobbek Ismatov <isukhrobbek@gmail.com>, 2019
 # Yet Sum <sotuvchicom@gmail.com>, 2019
@@ -11,9 +13,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: django\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-01-15 09:00+0100\n"
-"PO-Revision-Date: 2021-03-23 11:13+0000\n"
-"Last-Translator: Shukrullo Turgunov <shukrullo@umail.uz>\n"
+"POT-Creation-Date: 2021-09-21 10:22+0200\n"
+"PO-Revision-Date: 2021-12-16 12:06+0000\n"
+"Last-Translator: Alex Ibragimov\n"
 "Language-Team: Uzbek (http://www.transifex.com/django/django/language/uz/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -91,7 +93,7 @@ msgstr "Harakat:"
 
 #, python-format
 msgid "Add another %(verbose_name)s"
-msgstr "Boshqa%(verbose_name)s qo‘shish"
+msgstr "Boshqa %(verbose_name)s qo‘shish"
 
 msgid "Remove"
 msgstr "Olib tashlash"
@@ -129,10 +131,10 @@ msgid "change message"
 msgstr "xabarni o'zgartirish"
 
 msgid "log entry"
-msgstr ""
+msgstr "jurnal yozuvi"
 
 msgid "log entries"
-msgstr ""
+msgstr "jurnal yozuvlari"
 
 #, python-format
 msgid "Added “%(object)s”."
@@ -157,7 +159,7 @@ msgid "Added."
 msgstr ""
 
 msgid "and"
-msgstr ""
+msgstr "va"
 
 #, python-brace-format
 msgid "Changed {fields} for {name} “{object}”."
@@ -233,14 +235,14 @@ msgstr "Qo'shish %s"
 
 #, python-format
 msgid "Change %s"
-msgstr "O'zgartirish %s"
+msgstr "%sni o'zgartirish"
 
 #, python-format
 msgid "View %s"
 msgstr "Ko'rish %s"
 
 msgid "Database error"
-msgstr ""
+msgstr "Ma'lumotlar bazasi xatoligi yuz berdi"
 
 #, python-format
 msgid "%(count)s %(name)s was changed successfully."
@@ -375,7 +377,7 @@ msgstr "Chiqish"
 
 #, python-format
 msgid "Add %(name)s"
-msgstr ""
+msgstr "%(name)sqo'shish"
 
 msgid "History"
 msgstr ""
@@ -490,6 +492,12 @@ msgid "Forgotten your password or username?"
 msgstr ""
 
 msgid "Toggle navigation"
+msgstr "Navigatsiyani almashtirish"
+
+msgid "Start typing to filter…"
+msgstr ""
+
+msgid "Filter navigation items"
 msgstr ""
 
 msgid "Date/time"
@@ -554,7 +562,7 @@ msgstr ""
 msgid "Delete selected %(model)s"
 msgstr ""
 
-msgid "Thanks for spending some quality time with the Web site today."
+msgid "Thanks for spending some quality time with the web site today."
 msgstr ""
 
 msgid "Log in again"
@@ -637,14 +645,14 @@ msgid "Email address:"
 msgstr ""
 
 msgid "Reset my password"
-msgstr ""
+msgstr "Parolimni tiklash"
 
 msgid "All dates"
-msgstr ""
+msgstr "Barcha sanalar"
 
 #, python-format
 msgid "Select %s"
-msgstr ""
+msgstr "%sni tanlash"
 
 #, python-format
 msgid "Select %s to change"
@@ -655,16 +663,16 @@ msgid "Select %s to view"
 msgstr ""
 
 msgid "Date:"
-msgstr ""
+msgstr "Sana:"
 
 msgid "Time:"
-msgstr ""
+msgstr "Vaqt:"
 
 msgid "Lookup"
-msgstr ""
+msgstr "Izlash"
 
 msgid "Currently:"
-msgstr ""
+msgstr "Hozirda:"
 
 msgid "Change:"
-msgstr ""
+msgstr "O'zgartirish:"
diff --git a/django/contrib/admin/locale/uz/LC_MESSAGES/djangojs.mo b/django/contrib/admin/locale/uz/LC_MESSAGES/djangojs.mo
index 914da08102611ea693bb8c5e88f35a979639fd20..7c922f69173f5f96c983a7a856ed85df6f4bf2a4 100644
GIT binary patch
delta 1194
zcmXxjOGwmF6vy%7_{dk2X=*Rivh1bROj%G0qEZ^9ks)QY7*d+4G|476(d43t2r3*~
zg#{I;wMd632n3;M9kvSu7ZF4tv}hT9e|o&k`G4;H^S`fi@4Tw~QkIx2%os6BnAk|X
zNi%E0x^y0tmJG8)*os*=<le(f+7G=wg88(cdVAb`iz|8m-u>*(Vy;=j=BecH!EY?b
zzgUGOjGm44?oreN+L2GJ6Ib9lZ(neu$j^FtXb%IZaRyQSZsQregQuC_=KO>GjIIuK
zsDT?$6SnYRrPhvGXcuarZcJhfALBn{D0@U_P51<l;4@Ue@7Rw&un0T(sEGOP5|v`S
zr5Bj=_86|AJ&h$ei>ElAU#O$1XI0E;U2X)mfT*|oP!q>dN0UJ2wg(u*BqmgO;V-7J
zkoF9!!#AwPd2GO7o*#kRiJIU%vL?Ie@B2|18gy^EL#PbjMfJO%NB*f>lE*%Lj(hPd
zYG-MzLOaSvwS%aR#i-1bqjq!vS)<kA1Rldl{DbQMk{hW06WE56sP`5m|F1ENGz4(U
zedm5~Kf2TIjQa^Wk)^?~n$W_k2$eEInb|;Sq1q%}Y#p(S(EVFXiPEJrRas4x6Q#sv
zLWPYi-VN22q2;oj%5HD0M`cH4%My$CM%5jJ{^HAp1Y3wWv6jawLc3QAm8Ly}?m;D?
zQbTMd$eI-px~w~iZG_6EC9EP9&lpcnwdFLX1;e45P`D;kTM;^VxHddInp;}X7QYtj
z?vC|Uv<_T}^j^J@`k5ODWH$C(j$KbJ<c|i17YfFTkH@V!ZXHoO8?loS>*%qjsQm{$
CDrb=Z

delta 1905
zcmZvbTWB0r7{^a8y~LQUZEfSFtw(FKRg<Zk1T-q8AWgkTNW2sTIlD968FqFinak46
z%RVTA_QjHltx~0yq9{U3@B#|)MTH`WZwgWs1yNrF6~Pz%eY2-UZO_g(zjK-IJOA^2
zXFuI~YJ2D0hW-~6Z4%ppeb}SaKKMi*FWSL=rEY_5xEh|Zd>^i2ykf^6!^;_eX2)My
zehY_~|IzXf%RZbhQ>vrZ(;47{E$})x0!QF9Tnn3)EhqvykQnM2xCS1w<0Z?ZkVhTo
zC1*GZCC=+m{7%Ei;X81S{Z)ym@<9!XLkK1CJmgUad7)Hwpa^{qN}wa~2s{Q4LkA~f
zs*j+=`vl$zKZoKs$mC0K6BNJGaGw3uURF24cP-DtO^nak@$YuL78O@AzYT7N6ELG(
z_dzM$%3xRU*OuQy5%jYi{|X7E{)AGh9$p>9sS=$M+-$kSauRM}{%**l9_2L(Yj6*I
z9&&i~h2@t}Hu%Q!Cp-Tel#Kml`L|{N5c!vs4{$@oaR?$#4Z~aEcDM`9LD}eOC?`5(
z$A_W#9fgva*PtBeJxEg23Vaiug=b*SDaF6Mt{ZP`T|=pdn3!Zj7M_Bq;Ir@pxa$g~
z-h#hCGOb=*-{mpOmo1N5zG`{G@}%We_^PGv`Zh|vi(EQz7#qQ^$E01|MUg8xj<iB9
zB#_#M^<vU)>7q!BbjR#ijxFtGOj5B`1~d*Jty5f0De6va6q~@V#pD9qglUY^s|qH!
zY6m8*s0W<HZjcGuHC+@nk~&B&<>pG08!i85X*XhWV~5o8bpIQDozx4xTIRXhMB3D{
zAdW`qy1E_b+BYpPDrdTBT#w1NuK6aad#R2i9Yk)>3f$a;`as}?ZtCd$ab8Y5J)gu?
zQw`fXjN?WS)%Afm(V6e*eX*|QS%!0B7|W#TM8(o9JK04?5vSN%UrHMh{-Z6$vrwB{
zP?yCQtJ7^SbM(WZXHrks!l2gBGxzH(-l-)(S9=)h$Rim3i8q$yU1{B<ILkk*d7!6M
znHsB%k5wl0c;$}C+n06^43E!brs_5HBh5TnG>y2W@5;}2ow!(YDpONad+JRSgibAP
z?q2o=dV5#zH>n>a%i-WFy&c~qreU%u(3y!s<C3*tQMZgXVeAL4p#p6;W+kETdo^D#
zP$SdUae1+Bk}ODq)Mr&U=w+0v2;k_weik(2P^UzjH47nI>MTb|8nBlKM|IVNokpN%
z${8{KwYm_vLDGyDTs~fO)GQ$`DRWeZ9%W`R40tvFuc?s2ZWkS;Zpb~Fn&!##dhZQI
zZ`z$lO<wb<0)@iA8Y8;y=zA{YYQeNKqft$yEKmJhvd~Rk!y}=%lqH$Y(yG$irD^q`
Ln&mgg?=kfcqWosY

diff --git a/django/contrib/admin/locale/uz/LC_MESSAGES/djangojs.po b/django/contrib/admin/locale/uz/LC_MESSAGES/djangojs.po
index 05e46414e6..d731b22efd 100644
--- a/django/contrib/admin/locale/uz/LC_MESSAGES/djangojs.po
+++ b/django/contrib/admin/locale/uz/LC_MESSAGES/djangojs.po
@@ -1,14 +1,15 @@
 # This file is distributed under the same license as the Django package.
 #
 # Translators:
+# Nuriddin Islamov, 2021
 # Otabek Umurzakov <umurzakov.otabek.1999@gmail.com>, 2019
 msgid ""
 msgstr ""
 "Project-Id-Version: django\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-05-17 11:50+0200\n"
-"PO-Revision-Date: 2019-12-13 21:48+0000\n"
-"Last-Translator: Otabek Umurzakov <umurzakov.otabek.1999@gmail.com>\n"
+"POT-Creation-Date: 2021-01-15 09:00+0100\n"
+"PO-Revision-Date: 2021-12-15 16:52+0000\n"
+"Last-Translator: Nuriddin Islamov\n"
 "Language-Team: Uzbek (http://www.transifex.com/django/django/language/uz/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -84,22 +85,16 @@ msgstr ""
 "o'zgarishlaringiz yo'qotiladi."
 
 msgid ""
-"You have selected an action, but you haven't saved your changes to "
-"individual fields yet. Please click OK to save. You'll need to re-run the "
+"You have selected an action, but you haven’t saved your changes to "
+"individual fields yet. Please click OK to save. You’ll need to re-run the "
 "action."
 msgstr ""
-"Siz harakatni tanladingiz, lekin hali ham o'zgartirishlaringizni alohida "
-"maydonlarga saqlamadingiz. Iltimos saqlash uchun OK ni bosing. Harakatni "
-"qayta ishga tushurishingiz kerak bo'ladi."
 
 msgid ""
-"You have selected an action, and you haven't made any changes on individual "
-"fields. You're probably looking for the Go button rather than the Save "
+"You have selected an action, and you haven’t made any changes on individual "
+"fields. You’re probably looking for the Go button rather than the Save "
 "button."
 msgstr ""
-"Siz harakatni tanladingiz va alohida maydonlarda hech qanday o'zgartirishlar "
-"kiritmadingiz. Ehtimol siz Saqlash tugmasini emas, balki O'tish tugmasini "
-"qidirmoqdasiz."
 
 msgid "Now"
 msgstr "Hozir"
@@ -183,36 +178,84 @@ msgstr "Noyabr"
 msgid "December"
 msgstr "Dekabr"
 
+msgctxt "abbrev. month January"
+msgid "Jan"
+msgstr ""
+
+msgctxt "abbrev. month February"
+msgid "Feb"
+msgstr ""
+
+msgctxt "abbrev. month March"
+msgid "Mar"
+msgstr ""
+
+msgctxt "abbrev. month April"
+msgid "Apr"
+msgstr ""
+
+msgctxt "abbrev. month May"
+msgid "May"
+msgstr ""
+
+msgctxt "abbrev. month June"
+msgid "Jun"
+msgstr ""
+
+msgctxt "abbrev. month July"
+msgid "Jul"
+msgstr ""
+
+msgctxt "abbrev. month August"
+msgid "Aug"
+msgstr ""
+
+msgctxt "abbrev. month September"
+msgid "Sep"
+msgstr ""
+
+msgctxt "abbrev. month October"
+msgid "Oct"
+msgstr ""
+
+msgctxt "abbrev. month November"
+msgid "Nov"
+msgstr ""
+
+msgctxt "abbrev. month December"
+msgid "Dec"
+msgstr ""
+
 msgctxt "one letter Sunday"
 msgid "S"
-msgstr "S"
+msgstr "Ya"
 
 msgctxt "one letter Monday"
 msgid "M"
-msgstr "M"
+msgstr "Du"
 
 msgctxt "one letter Tuesday"
 msgid "T"
-msgstr "T"
+msgstr "Se"
 
 msgctxt "one letter Wednesday"
 msgid "W"
-msgstr "W"
+msgstr "Ch"
 
 msgctxt "one letter Thursday"
 msgid "T"
-msgstr "T"
+msgstr "Pa"
 
 msgctxt "one letter Friday"
 msgid "F"
-msgstr "F"
+msgstr "Ju"
 
 msgctxt "one letter Saturday"
 msgid "S"
-msgstr "S"
+msgstr "Sh"
 
 msgid "Show"
 msgstr "Ko'rsatish"
 
 msgid "Hide"
-msgstr "Yashirish"
+msgstr "Bekitish"
diff --git a/django/contrib/admin/locale/vi/LC_MESSAGES/django.mo b/django/contrib/admin/locale/vi/LC_MESSAGES/django.mo
index 298498a4a85187377a302e9490b0dd63c5573aae..1091b6fcd50b0d8a1b6abb73a19f7bbfb5ee4fb2 100644
GIT binary patch
delta 7313
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

delta 4276
zcmZwJ4^R}>9l-H-L`_iCh$x^UE66|L4h{hkF{1bnjfzIZKeh3Ile@^>>D`GjsHb8g
zYHZZ4F{5VGQAeXDYR}jaGELG`(`n5#wUav5sWX?Drjypm#5PS$XKcT}+od6Gclhn+
zy|?>z-=E*!@cM4c%fZmy#9sRq$39{NajutA*RV346Gv@=QbTY)4#j31j+<~P9>i??
z+H4=uU#U{+<tY8U*ax@a<G2eSLmlZ7QU}Z%PM~x+i!zY+aWLM+6nud4pne0C;!h=V
zk_U}K8EY0kfrYpc%W)fCM!KpA1C0sPpgd;<#`AvFOd*kmHKyB;KXrhUjQA90;CZwC
zCfccgf`c&WNu~N?Hu5fIM;TBR_QqK#FRaC6tjARJVGi$CJ1EGDE~2c!6?`6ljcafw
zZ+QzlaV5GL?Q#4F<^CYcBm>!rGSkB-1380Lcm+q|w<rTiO;V~3H4KfW&`O~N4`CcW
z!Bb^G{ctJ{M$$qp#x`7z^>`cQfp!vuy;S8W{iY#{qvoJoUyibZO(+B0j`E)ULs@?Y
zrCy^!w%{Dfi{3?<!Bvz8{?@GDL3!{OX8l`~WQ=EB`(YNQqa8Jzk3sZfEq;#Mv7Cge
z!1q#Ee;MIFX^?@$u`#lgLy>z`F3Nzaki}8ckUzDQle{p9(tk6`o^MBa&R!gYCs79Y
z5y}ev1!bZSQIa(wG|cEQ1kcluhgo<V^YCBzl(h2{ipqsW*p5tIUBb2aD|`_r^XW)3
zet?VdCd$C_(~M*+HJyO6!lB6&WQl80mUc19j9n-r_TV^t0cFHLLHX>uQ1<d&+=?IK
zb688JO_b{>1Ad6Pn8d!wicK`FL7o#*brfVIOHf|uGH+OmGV(2^yUh0exXGf_F_bOR
zMj1<5jx2(jjg{Dpa{UDIr{3XIh<A~$Y5*D8U%r1E1(|sz%F;cJvWN93GhT%xx(Xtb
zR6EV<r!k-UJ1G7CgpwowKzUC8Oru{4O1lmBVKtt{-(foMk9~u(R7XY|OVo+7BG*x7
z^f8j3>MN9i^(8@MrADF*ARi@Z>v18vQJ(iRlqJ87GULz8dhcu_X$N7b7Z*|}kS8h)
zrDFwJu?{6$+tH4%;%fW_Zou(5%pNbJ?0tZZzKC~GR%#C!EJ^wn%0RB6OyD=T2tUhX
z{R=2mjxm<ZjR&X)Q3jB}^bTVM_QhK$OZ^ExgAcGDPUj&<aRKW1SB(A8@DO?7e(Zy9
zp!C0hGV%AUtUn2=uF)Vfy=UI|4VF@Wgshq>u^A6oiu@`o2g-x|C^OxPvPDNtuOMSn
zH&O0?grtQUSZI6=#rQ1sWg!Yd3SD>xi}<)_;T?>}Y}Q?}xX5%Svf63|%8GQLB$tll
zlR9m--#}TJTPV-@6eXALV;RO58#xiGq97w&fwEU?a1eHwHyp%!)H{*<Q%A<C*p^+z
z@zlS<37B7^6h+mHl0%2^2wujWxQOMH0Yz~$-bcQ!kn%Dd*_(ApgW80$l-n^8kDB!`
z4xoMm2jd-_gkPHV!g0nAQ#DHe8F&#_pbQ|f-1s_PN9Lj)V3mCTSxh5|hLtEC+wd{`
zF%HGoP*&tT%8TE}{`j$3{}iSFH)z3ng58T9@=NF>b`d_JmWU&k5<x=VAKS+js1XfB
zfS5}p5aeI%c!~2X#1Duc##)S11xzQ_5|fENgd8;n%+NTRLGnWeD)}H2l+_He3bFlK
zgd2%;qWjoOp~S2-;&QY6EP4qSAuBV3NG9aSCMFU5%EpeBoYxVXjH+6XFPmlZE)@H%
zo<_qMvr)dwCSnO8`?Q&mLq5aySjjleGt2vWv^`E)_IjY%wi?$ETL^v<{&UEx*AWY3
z{ZlE}i9A9wlzdVz5G{mc^n8M?jr~iu808pYpr+uD2y!fTY~w6B@}g0V{VJM8HPb9S
zg@r^bktQSQKIFTWgD*o>6Ow$AXx+z#?gF}rXNVz$eAgaAe#r8PWrUyTP3#~#2s!2u
zs|ZPQ`DC9aoHkAlLJs--x{s;d1xzGz&H5}{NbDv?6KzBWv6a|P^dY*B+1&*_ZQy-<
z!INjK8Cki$hUc7(!Ms3*O-*iUayDsgUWdoIQOjsEu59eSU<+3aI&8_TP}MGnx0xGz
zcGj#~R&HbLLLg6f51yu98hoyQk2`D`;XO&G;`FNIY5K0@{gxa(Gi4{|3n}(ocOdBV
zuU9jDElpaJZ=F}msP=h-eqT#Qf#&l|&Es)+n=<rasblF<o0`kHE%opEhGDsxE8WhP
zrhsO=yUC{J`n=BANprM1+%1lV7H9a2Vf!p}35|GFFHH;SKTj*x`;2^vmRCl8sJEu)
z>8H{QE%o}X^l|aVkXa6WxOO(#@5~8k4Nj+5b9gnU-|zF=w3;AK%IKhX-^@JDWtoi$
zn$N2R+(D<Rcjo9HWR6R0Y4mxV1!{>iAW@*z<md-R@7C94-JwTawqL)IT~f2qTJ3i_
zf^MJJI@J+$R%pdV_VLytyVYJsv7)3nzsO!x)VFq?b%C?h9r!=@m1{*s6=TbEEhl-v
z0*A-#_i1x{en*Ql5T2fM$f6hL{c_$ySLBT6dz)ob|Fg&1)xDA9oUUJpb{%ijg0ViW
zk)uAFy1J)lqb*!JrZ`SNQ80K|kKN7q-u?&lDOQ($(fa$+XxCo17L4`xHuoHZE#tr5
z_`EN2%%&Dc!VXQJJ8*dTkG9isx^A!2zqH>>&>Eth$Gn;++I7gSS4~O{e_q_jGI2_@
z^SD=QcDXgLiz{k|JKA+#TkVRx$#lQVAeS%N`P0VlvPcX1BWJw&%#w!CDtfegXmDsP
zyur<wqFuWjBvZ6&hvxK<Kbj|U)O>wY<O-9JTiQ8aZKtv-@}_1!zsIvkU9JUP*DuJB
zPc~|S)ecXgKXR;5&56~6?#P+7+G@S1^qy`jTc#f@8#PGHc114HtuYeT0@2R5z2S#t
zZ^!9>9)DJUqoO?gbw!s&zg}t8A5~ft);Sv_+ca<F=z6_$;`AO_+cEJE;Vo4i7CmW7
z;sUpqd37Cd8xt6%E%fu{_L$Ln8AfBY^VC{xmGSmq<Q(haigun{Z{tHJ0b~ki=@r|8
V0)2k<2#ZbkR9^`noccG*zX5vV$prua

diff --git a/django/contrib/admin/locale/vi/LC_MESSAGES/django.po b/django/contrib/admin/locale/vi/LC_MESSAGES/django.po
index 68fd78c640..60fe2ce82c 100644
--- a/django/contrib/admin/locale/vi/LC_MESSAGES/django.po
+++ b/django/contrib/admin/locale/vi/LC_MESSAGES/django.po
@@ -6,15 +6,16 @@
 # Thanh Le Viet <lethanhx2k@gmail.com>, 2013
 # Tran <hongdiepkien@gmail.com>, 2011
 # Tran Van <vantxm@yahoo.co.uk>, 2011-2013,2016,2018
+# tinnguyen121221, 2021
 # Vuong Nguyen <autalpha@gmail.com>, 2011
 # xgenvn <xgenvn@gmail.com>, 2014
 msgid ""
 msgstr ""
 "Project-Id-Version: django\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-01-16 20:42+0100\n"
-"PO-Revision-Date: 2019-01-18 00:36+0000\n"
-"Last-Translator: Ramiro Morales\n"
+"POT-Creation-Date: 2021-09-21 10:22+0200\n"
+"PO-Revision-Date: 2021-12-23 17:57+0000\n"
+"Last-Translator: tinnguyen121221\n"
 "Language-Team: Vietnamese (http://www.transifex.com/django/django/language/"
 "vi/)\n"
 "MIME-Version: 1.0\n"
@@ -23,6 +24,10 @@ msgstr ""
 "Language: vi\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
 
+#, python-format
+msgid "Delete selected %(verbose_name_plural)s"
+msgstr "Xóa các %(verbose_name_plural)s đã chọn"
+
 #, python-format
 msgid "Successfully deleted %(count)d %(items)s."
 msgstr "Đã xóa thành công %(count)d %(items)s ."
@@ -34,10 +39,6 @@ msgstr "Không thể xóa %(name)s"
 msgid "Are you sure?"
 msgstr "Bạn có chắc chắn không?"
 
-#, python-format
-msgid "Delete selected %(verbose_name_plural)s"
-msgstr "Xóa các %(verbose_name_plural)s đã chọn"
-
 msgid "Administration"
 msgstr "Quản trị website"
 
@@ -69,10 +70,16 @@ msgid "This year"
 msgstr "Năm nay"
 
 msgid "No date"
-msgstr ""
+msgstr "Không có ngày"
 
 msgid "Has date"
-msgstr ""
+msgstr "Có ngày"
+
+msgid "Empty"
+msgstr "Rỗng"
+
+msgid "Not empty"
+msgstr "Không rỗng"
 
 #, python-format
 msgid ""
@@ -92,19 +99,19 @@ msgid "Remove"
 msgstr "Gỡ bỏ"
 
 msgid "Addition"
-msgstr ""
+msgstr "Thêm"
 
 msgid "Change"
 msgstr "Thay đổi"
 
 msgid "Deletion"
-msgstr ""
+msgstr "Xóa"
 
 msgid "action time"
 msgstr "Thời gian tác động"
 
 msgid "user"
-msgstr ""
+msgstr "người dùng"
 
 msgid "content type"
 msgstr "kiểu nội dung"
@@ -130,23 +137,23 @@ msgid "log entries"
 msgstr "mục đăng nhập"
 
 #, python-format
-msgid "Added \"%(object)s\"."
-msgstr "Thêm \"%(object)s\"."
+msgid "Added “%(object)s”."
+msgstr "Đã thêm “%(object)s”."
 
 #, python-format
-msgid "Changed \"%(object)s\" - %(changes)s"
-msgstr "Đã thay đổi \"%(object)s\" - %(changes)s"
+msgid "Changed “%(object)s” — %(changes)s"
+msgstr "Đã thay đổi “%(object)s” — %(changes)s"
 
 #, python-format
-msgid "Deleted \"%(object)s.\""
-msgstr "Đối tượng \"%(object)s.\" đã được xoá."
+msgid "Deleted “%(object)s.”"
+msgstr "Đã xóa “%(object)s.”"
 
 msgid "LogEntry Object"
 msgstr "LogEntry Object"
 
 #, python-brace-format
-msgid "Added {name} \"{object}\"."
-msgstr "{name} \"{object}\" đã được thêm vào."
+msgid "Added {name} “{object}”."
+msgstr "Đã thêm {name} “{object}”."
 
 msgid "Added."
 msgstr "Được thêm."
@@ -155,16 +162,16 @@ msgid "and"
 msgstr "và"
 
 #, python-brace-format
-msgid "Changed {fields} for {name} \"{object}\"."
-msgstr ""
+msgid "Changed {fields} for {name} “{object}”."
+msgstr "Đã thay đổi {fields} cho {name} “{object}”."
 
 #, python-brace-format
 msgid "Changed {fields}."
-msgstr ""
+msgstr "Đã thay đổi {fields}."
 
 #, python-brace-format
-msgid "Deleted {name} \"{object}\"."
-msgstr ""
+msgid "Deleted {name} “{object}”."
+msgstr "Đã xóa {name} “{object}”."
 
 msgid "No fields changed."
 msgstr "Không có trường nào thay đổi"
@@ -172,43 +179,46 @@ msgstr "Không có trường nào thay đổi"
 msgid "None"
 msgstr "Không"
 
-msgid ""
-"Hold down \"Control\", or \"Command\" on a Mac, to select more than one."
+msgid "Hold down “Control”, or “Command” on a Mac, to select more than one."
 msgstr ""
-"Giữ phím \"Control\", hoặc \"Command\" trên Mac, để chọn nhiều hơn một."
+"Nhấn giữ phím “Control”, hoặc “Command” trên máy Mac, để chọn nhiều hơn một."
 
 #, python-brace-format
-msgid "The {name} \"{obj}\" was added successfully."
-msgstr ""
+msgid "The {name} “{obj}” was added successfully."
+msgstr "{name} “{obj}” được thêm vào thành công."
 
 msgid "You may edit it again below."
-msgstr ""
+msgstr "Bạn có thể chỉnh sửa lại bên dưới."
 
 #, python-brace-format
 msgid ""
-"The {name} \"{obj}\" was added successfully. You may add another {name} "
+"The {name} “{obj}” was added successfully. You may add another {name} below."
+msgstr ""
+"{name} “{obj}” được thêm vào thành công. Bạn có thể thêm một {name} khác bên "
+"dưới."
+
+#, python-brace-format
+msgid ""
+"The {name} “{obj}” was changed successfully. You may edit it again below."
+msgstr ""
+"{name} “{obj}” được chỉnh sửa thành công. Bạn có thể chỉnh sửa lại bên dưới."
+
+#, python-brace-format
+msgid "The {name} “{obj}” was added successfully. You may edit it again below."
+msgstr ""
+"{name} “{obj}” được thêm vào thành công. Bạn có thể chỉnh sửa lại bên dưới."
+
+#, python-brace-format
+msgid ""
+"The {name} “{obj}” was changed successfully. You may add another {name} "
 "below."
 msgstr ""
+"{name} “{obj}” được chỉnh sửa thành công. Bạn có thể thêm một {name} khác "
+"bên dưới."
 
 #, python-brace-format
-msgid ""
-"The {name} \"{obj}\" was changed successfully. You may edit it again below."
-msgstr ""
-
-#, python-brace-format
-msgid ""
-"The {name} \"{obj}\" was added successfully. You may edit it again below."
-msgstr ""
-
-#, python-brace-format
-msgid ""
-"The {name} \"{obj}\" was changed successfully. You may add another {name} "
-"below."
-msgstr ""
-
-#, python-brace-format
-msgid "The {name} \"{obj}\" was changed successfully."
-msgstr ""
+msgid "The {name} “{obj}” was changed successfully."
+msgstr "{name} “{obj}” đã được thay đổi thành công."
 
 msgid ""
 "Items must be selected in order to perform actions on them. No items have "
@@ -221,12 +231,12 @@ msgid "No action selected."
 msgstr "Không có hoạt động nào được lựa chọn."
 
 #, python-format
-msgid "The %(name)s \"%(obj)s\" was deleted successfully."
-msgstr "%(name)s \"%(obj)s\" đã được xóa thành công."
+msgid "The %(name)s “%(obj)s” was deleted successfully."
+msgstr "%(name)s “%(obj)s” đã được xóa thành công."
 
 #, python-format
-msgid "%(name)s with ID \"%(key)s\" doesn't exist. Perhaps it was deleted?"
-msgstr ""
+msgid "%(name)s with ID “%(key)s” doesn’t exist. Perhaps it was deleted?"
+msgstr "%(name)s với ID “%(key)s” không tồn tại. Có lẽ nó đã bị xóa?"
 
 #, python-format
 msgid "Add %s"
@@ -238,7 +248,7 @@ msgstr "Thay đổi %s"
 
 #, python-format
 msgid "View %s"
-msgstr ""
+msgstr "Xem %s"
 
 msgid "Database error"
 msgstr "Cơ sở dữ liệu bị lỗi"
@@ -294,8 +304,8 @@ msgstr "Quản lý %(app)s"
 msgid "Page not found"
 msgstr "Không tìm thấy trang nào"
 
-msgid "We're sorry, but the requested page could not be found."
-msgstr "Xin lỗi bạn! Trang mà bạn yêu cầu không tìm thấy."
+msgid "We’re sorry, but the requested page could not be found."
+msgstr "Rất tiếc, không thể tìm thấy trang được yêu cầu."
 
 msgid "Home"
 msgstr "Trang chủ"
@@ -310,7 +320,7 @@ msgid "Server Error <em>(500)</em>"
 msgstr "Lỗi máy chủ <em>(500)</em>"
 
 msgid ""
-"There's been an error. It's been reported to the site administrators via "
+"There’s been an error. It’s been reported to the site administrators via "
 "email and should be fixed shortly. Thanks for your patience."
 msgstr ""
 "Có lỗi xảy ra. Lỗi sẽ được gửi đến quản trị website qua email và sẽ được "
@@ -332,11 +342,24 @@ msgstr "Hãy chọn tất cả %(total_count)s %(module_name)s"
 msgid "Clear selection"
 msgstr "Xóa lựa chọn"
 
+#, python-format
+msgid "Models in the %(name)s application"
+msgstr "Các mô models trong %(name)s"
+
+msgid "Add"
+msgstr "Thêm vào"
+
+msgid "View"
+msgstr "Xem"
+
+msgid "You don’t have permission to view or edit anything."
+msgstr "Bạn không có quyền xem hoặc chỉnh sửa bất cứ gì."
+
 msgid ""
-"First, enter a username and password. Then, you'll be able to edit more user "
+"First, enter a username and password. Then, you’ll be able to edit more user "
 "options."
 msgstr ""
-"Đầu tiên, điền tên đăng nhập và mật khẩu. Sau đó bạn mới có thể chỉnh sửa "
+"Đầu tiên, điền tên đăng nhập và mật khẩu. Sau đó, bạn mới có thể chỉnh sửa "
 "nhiều hơn lựa chọn của người dùng."
 
 msgid "Enter a username and password."
@@ -359,7 +382,7 @@ msgid "Welcome,"
 msgstr "Chào mừng bạn,"
 
 msgid "View site"
-msgstr ""
+msgstr "Xem trang web"
 
 msgid "Documentation"
 msgstr "Tài liệu"
@@ -380,6 +403,9 @@ msgstr "Xem trên trang web"
 msgid "Filter"
 msgstr "Bộ lọc"
 
+msgid "Clear all filters"
+msgstr "Xóa tất cả bộ lọc"
+
 msgid "Remove from sorting"
 msgstr "Bỏ khỏi sắp xếp"
 
@@ -421,11 +447,11 @@ msgstr ""
 msgid "Objects"
 msgstr "Đối tượng"
 
-msgid "Yes, I'm sure"
-msgstr "Có, tôi chắc chắn."
+msgid "Yes, I’m sure"
+msgstr "Có, tôi chắc chắn"
 
 msgid "No, take me back"
-msgstr ""
+msgstr "Không, đưa tôi trở lại"
 
 msgid "Delete multiple objects"
 msgstr "Xóa nhiều đối tượng"
@@ -455,9 +481,6 @@ msgstr ""
 "Bạn chắc chắn muốn xóa những lựa chọn %(objects_name)s? Tất cả những đối "
 "tượng sau và những đối tượng liên quan sẽ được xóa:"
 
-msgid "View"
-msgstr ""
-
 msgid "Delete?"
 msgstr "Bạn muốn xóa?"
 
@@ -466,23 +489,13 @@ msgid " By %(filter_title)s "
 msgstr "Bởi %(filter_title)s "
 
 msgid "Summary"
-msgstr ""
-
-#, python-format
-msgid "Models in the %(name)s application"
-msgstr "Các mô models trong %(name)s"
-
-msgid "Add"
-msgstr "Thêm vào"
-
-msgid "You don't have permission to view or edit anything."
-msgstr ""
+msgstr "Tóm tắt"
 
 msgid "Recent actions"
-msgstr ""
+msgstr "Hoạt động gần đây"
 
 msgid "My actions"
-msgstr ""
+msgstr "Hoạt động của tôi"
 
 msgid "None available"
 msgstr "Không có sẵn"
@@ -491,7 +504,7 @@ msgid "Unknown content"
 msgstr "Không biết nội dung"
 
 msgid ""
-"Something's wrong with your database installation. Make sure the appropriate "
+"Something’s wrong with your database installation. Make sure the appropriate "
 "database tables have been created, and make sure the database is readable by "
 "the appropriate user."
 msgstr ""
@@ -510,6 +523,15 @@ msgstr ""
 msgid "Forgotten your password or username?"
 msgstr "Bạn quên mật khẩu hoặc tài khoản?"
 
+msgid "Toggle navigation"
+msgstr ""
+
+msgid "Start typing to filter…"
+msgstr "Nhập để lọc..."
+
+msgid "Filter navigation items"
+msgstr ""
+
 msgid "Date/time"
 msgstr "Ngày/giờ"
 
@@ -520,7 +542,7 @@ msgid "Action"
 msgstr "Hành động"
 
 msgid ""
-"This object doesn't have a change history. It probably wasn't added via this "
+"This object doesn’t have a change history. It probably wasn’t added via this "
 "admin site."
 msgstr ""
 "Đối tượng này không có một lịch sử thay đổi. Nó có lẽ đã không được thêm vào "
@@ -533,7 +555,7 @@ msgid "Save"
 msgstr "Lưu lại"
 
 msgid "Popup closing…"
-msgstr ""
+msgstr "Đang đóng cửa sổ popup ..."
 
 msgid "Search"
 msgstr "Tìm kiếm"
@@ -557,14 +579,14 @@ msgid "Save and continue editing"
 msgstr "Lưu và tiếp tục chỉnh sửa"
 
 msgid "Save and view"
-msgstr ""
+msgstr "Lưu lại và xem"
 
 msgid "Close"
-msgstr ""
+msgstr "Đóng"
 
 #, python-format
 msgid "Change selected %(model)s"
-msgstr ""
+msgstr "Thay đổi %(model)s đã chọn"
 
 #, python-format
 msgid "Add another %(model)s"
@@ -574,8 +596,8 @@ msgstr "Thêm %(model)s khác"
 msgid "Delete selected %(model)s"
 msgstr "Xóa %(model)s đã chọn"
 
-msgid "Thanks for spending some quality time with the Web site today."
-msgstr "Cảm ơn bạn đã dành thời gian với website này"
+msgid "Thanks for spending some quality time with the web site today."
+msgstr "Cảm ơn bạn đã dành thời gian với trang web."
 
 msgid "Log in again"
 msgstr "Đăng nhập lại"
@@ -587,7 +609,7 @@ msgid "Your password was changed."
 msgstr "Mật khẩu của bạn đã được thay đổi"
 
 msgid ""
-"Please enter your old password, for security's sake, and then enter your new "
+"Please enter your old password, for security’s sake, and then enter your new "
 "password twice so we can verify you typed it in correctly."
 msgstr ""
 "Hãy nhập lại mật khẩu cũ và sau đó nhập mật khẩu mới hai lần để chúng tôi có "
@@ -626,16 +648,18 @@ msgstr ""
 "vui lòng yêu cầu đặt lại mật khẩu mới."
 
 msgid ""
-"We've emailed you instructions for setting your password, if an account "
+"We’ve emailed you instructions for setting your password, if an account "
 "exists with the email you entered. You should receive them shortly."
 msgstr ""
+"Chúng tôi đã gửi cho bạn hướng dẫn thiết lập mật khẩu của bạn qua email, nếu "
+"tài khoản tồn tại với email bạn đã nhập. Bạn sẽ nhận được chúng sớm."
 
 msgid ""
-"If you don't receive an email, please make sure you've entered the address "
+"If you don’t receive an email, please make sure you’ve entered the address "
 "you registered with, and check your spam folder."
 msgstr ""
-"Nếu bạn không nhận được email, hãy kiểm tra lại địa chỉ email mà bạn dùng để "
-"đăng kí hoặc kiểm tra trong thư mục spam/rác"
+"Nếu bạn không nhận được email, hãy đảm bảo rằng bạn đã nhập địa chỉ mà bạn "
+"đã đăng ký và kiểm tra thư mục spam của mình."
 
 #, python-format
 msgid ""
@@ -648,7 +672,7 @@ msgstr ""
 msgid "Please go to the following page and choose a new password:"
 msgstr "Hãy vào đường link dưới đây và chọn một mật khẩu mới"
 
-msgid "Your username, in case you've forgotten:"
+msgid "Your username, in case you’ve forgotten:"
 msgstr "Tên đăng nhập của bạn, trường hợp bạn quên nó:"
 
 msgid "Thanks for using our site!"
@@ -659,7 +683,7 @@ msgid "The %(site_name)s team"
 msgstr "Đội của %(site_name)s"
 
 msgid ""
-"Forgotten your password? Enter your email address below, and we'll email "
+"Forgotten your password? Enter your email address below, and we’ll email "
 "instructions for setting a new one."
 msgstr ""
 "Quên mật khẩu? Nhập địa chỉ email vào ô dưới đây. Chúng tôi sẽ email cho bạn "
@@ -684,7 +708,7 @@ msgstr "Chọn %s để thay đổi"
 
 #, python-format
 msgid "Select %s to view"
-msgstr ""
+msgstr "Chọn %s để xem"
 
 msgid "Date:"
 msgstr "Ngày:"
diff --git a/django/contrib/admin/locale/vi/LC_MESSAGES/djangojs.mo b/django/contrib/admin/locale/vi/LC_MESSAGES/djangojs.mo
index 7588ed6ca7c58ef58f24022066ed6cd0056b04ba..c9d57cda5cf7ba98faa34c97f47471a6b8276552 100644
GIT binary patch
literal 5302
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
CRC*f#

delta 1225
zcmY+CU1$_n6vyvI6U`bEn~fjUMz6stX`HaTQKK=0l8BWUF{Gh{zQ|-dX2;CV>SlH&
zf-Y1a1Sw@Z3G{<P)=)|%h`Qp#E|`Z|^WsAv+J}~s;ykqIgCOXGpb!4;W(7UWxxYPU
z?>+x>?##XR+1Bj8&8uexwjKWnZwLs{4qroMb2UPA!#u2mf5Qg&s2V@5@&#N^{uK<u
z`c*h=fji)KxEuCCRmXs<g~$qvA8SdRTS<ruaEv$$N8w+PM`-L;2P04k9E3b#fMo_A
zgE_biYhjW_)lI|0@DfxF72%Jt3}?_6r>J_C#0&TxQyXi9*hBo1(`q8gDK&8?RKka$
zYUF4&e*%6${3YZO7E2q<z>nb%5G}C?dBg*jb?|rCfWG*L9~1B~9EZcGD4_z2n(#hs
zf*xdx_yb;n%kTmmr<$5{8LI#PhyCzbHQz<|4~cu>bGVkNzK5@2R=sBR-dk`rt@;j>
zHR4<GRuy1eO2tA|QoADdAymyNQ%!8dH>jX$n<1Zs*i?<xO{m*aMn7$pce{<C8Q+4d
zt5s9KwV->kcEJ6!c9+{yr>{F|T8@zt$IPz`_h#K<=)4#)63L8Fh14yp@Y9-wKwytM
zSihHbx<0}Br2aT-cko;HYQw(ls5X!?bjM8E+7aC`dSo;lIiQ92Ymsgl?dpj{JHpX$
zI5>P#8!<BG)O-87weTS=+9e|gd-m_^2xGw^eag{BQ@TB6=}t1$BL{WcHmBr}L6?^7
zJyQukwJKq!X|Fn+>?_o)4+Y%b#@+7Mjgw77e(9T-IN}$7Ny~E1biZi&Z%4m(eOgYK
ze(7g1<`r}?mh|${VT&VUesR8VZ9_UxYx$+yy1Uri>TYW`2Fp3!o{)~WkdTw6UtCN`
z+bcS9oI?ruSyDQ2eOhL`g?H1R>lvd{^!vrUjkGr}-<JF&I~n)xQqNktm0meo&iSQT
z6Zz7wx~f_^f{ra?UOpzR@^5xrW@ss<64H))*HzJ_TYhOihUks7OzE9+%(P`DZA#0#
wL;09x#wO*-<81Uxmsiv*YMX9fD75ozoLP|s`DuD1zakd*<`66ATq8912CzF5Z~y=R

diff --git a/django/contrib/admin/locale/vi/LC_MESSAGES/djangojs.po b/django/contrib/admin/locale/vi/LC_MESSAGES/djangojs.po
index d2155ca4c9..a3faf74ed7 100644
--- a/django/contrib/admin/locale/vi/LC_MESSAGES/djangojs.po
+++ b/django/contrib/admin/locale/vi/LC_MESSAGES/djangojs.po
@@ -4,15 +4,16 @@
 # Jannis Leidel <jannis@leidel.info>, 2011
 # Tran <hongdiepkien@gmail.com>, 2011
 # Tran Van <vantxm@yahoo.co.uk>, 2013
+# tinnguyen121221, 2021
 # Vuong Nguyen <autalpha@gmail.com>, 2011
 # xgenvn <xgenvn@gmail.com>, 2014
 msgid ""
 msgstr ""
 "Project-Id-Version: django\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2016-05-17 23:12+0200\n"
-"PO-Revision-Date: 2017-09-23 18:54+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
+"POT-Creation-Date: 2021-01-15 09:00+0100\n"
+"PO-Revision-Date: 2021-12-23 17:25+0000\n"
+"Last-Translator: tinnguyen121221\n"
 "Language-Team: Vietnamese (http://www.transifex.com/django/django/language/"
 "vi/)\n"
 "MIME-Version: 1.0\n"
@@ -84,21 +85,35 @@ msgstr ""
 "chỉnh sửa chưa được lưu sẽ bị mất."
 
 msgid ""
-"You have selected an action, but you haven't saved your changes to "
-"individual fields yet. Please click OK to save. You'll need to re-run the "
+"You have selected an action, but you haven’t saved your changes to "
+"individual fields yet. Please click OK to save. You’ll need to re-run the "
 "action."
 msgstr ""
-"Bạn đã lựa chọn một hành động, nhưng bạn không lưu thay đổi của bạn đến các "
-"lĩnh vực cá nhân được nêu ra. Xin vui lòng click OK để lưu lại. Bạn sẽ cần "
-"phải chạy lại các hành động."
+"Bạn đã chọn một hành động, nhưng bạn chưa lưu các thay đổi trên các trường. "
+"Vui lòng bấm OK để lưu lại. Bạn sẽ cần chạy lại hành dộng."
 
 msgid ""
-"You have selected an action, and you haven't made any changes on individual "
-"fields. You're probably looking for the Go button rather than the Save "
+"You have selected an action, and you haven’t made any changes on individual "
+"fields. You’re probably looking for the Go button rather than the Save "
 "button."
 msgstr ""
-"Bạn đã lựa chọn một hành động, và bạn đã không thực hiện bất kỳ thay đổi nào "
-"trên các trường. Có lẽ bạn đang tìm kiếm nút bấm Go thay vì nút bấm Save."
+"Bạn đã chọn một hành động và bạn đã không thực hiện bất kỳ thay đổi nào trên "
+"các trường. Có lẽ bạn nên bấm nút Đi đến hơn là nút Lưu lại."
+
+msgid "Now"
+msgstr "Bây giờ"
+
+msgid "Midnight"
+msgstr "Nửa đêm"
+
+msgid "6 a.m."
+msgstr "6 giờ sáng"
+
+msgid "Noon"
+msgstr "Buổi trưa"
+
+msgid "6 p.m."
+msgstr "6 giờ chiều"
 
 #, javascript-format
 msgid "Note: You are %s hour ahead of server time."
@@ -113,27 +128,12 @@ msgid_plural "Note: You are %s hours behind server time."
 msgstr[0] ""
 "Lưu ý: Hiện tại bạn đang thấy thời gian sau %s giờ so với thời gian máy chủ."
 
-msgid "Now"
-msgstr "Bây giờ"
-
 msgid "Choose a Time"
-msgstr ""
+msgstr "Chọn Thời gian"
 
 msgid "Choose a time"
 msgstr "Chọn giờ"
 
-msgid "Midnight"
-msgstr "Nửa đêm"
-
-msgid "6 a.m."
-msgstr "6 giờ sáng"
-
-msgid "Noon"
-msgstr "Buổi trưa"
-
-msgid "6 p.m."
-msgstr ""
-
 msgid "Cancel"
 msgstr "Hủy bỏ"
 
@@ -141,7 +141,7 @@ msgid "Today"
 msgstr "Hôm nay"
 
 msgid "Choose a Date"
-msgstr ""
+msgstr "Chọn Ngày"
 
 msgid "Yesterday"
 msgstr "Hôm qua"
@@ -150,68 +150,116 @@ msgid "Tomorrow"
 msgstr "Ngày mai"
 
 msgid "January"
-msgstr ""
+msgstr "Tháng Một"
 
 msgid "February"
-msgstr ""
+msgstr "Tháng Hai"
 
 msgid "March"
-msgstr ""
+msgstr "Tháng Ba"
 
 msgid "April"
-msgstr ""
+msgstr "Tháng Tư"
 
 msgid "May"
-msgstr ""
+msgstr "Tháng Năm"
 
 msgid "June"
-msgstr ""
+msgstr "Tháng Sáu"
 
 msgid "July"
-msgstr ""
+msgstr "Tháng Bảy"
 
 msgid "August"
-msgstr ""
+msgstr "Tháng Tám"
 
 msgid "September"
-msgstr ""
+msgstr "Tháng Chín"
 
 msgid "October"
-msgstr ""
+msgstr "Tháng Mười"
 
 msgid "November"
-msgstr ""
+msgstr "Tháng Mười Một"
 
 msgid "December"
-msgstr ""
+msgstr "Tháng Mười Hai"
+
+msgctxt "abbrev. month January"
+msgid "Jan"
+msgstr "Tháng Một"
+
+msgctxt "abbrev. month February"
+msgid "Feb"
+msgstr "Tháng Hai"
+
+msgctxt "abbrev. month March"
+msgid "Mar"
+msgstr "Tháng Ba"
+
+msgctxt "abbrev. month April"
+msgid "Apr"
+msgstr "Tháng Tư"
+
+msgctxt "abbrev. month May"
+msgid "May"
+msgstr "Tháng Năm"
+
+msgctxt "abbrev. month June"
+msgid "Jun"
+msgstr "Tháng Sáu"
+
+msgctxt "abbrev. month July"
+msgid "Jul"
+msgstr "Tháng Bảy"
+
+msgctxt "abbrev. month August"
+msgid "Aug"
+msgstr "Tháng Tám"
+
+msgctxt "abbrev. month September"
+msgid "Sep"
+msgstr "Tháng Chín"
+
+msgctxt "abbrev. month October"
+msgid "Oct"
+msgstr "Tháng Mười"
+
+msgctxt "abbrev. month November"
+msgid "Nov"
+msgstr "Tháng Mười Một"
+
+msgctxt "abbrev. month December"
+msgid "Dec"
+msgstr "Tháng Mười Hai"
 
 msgctxt "one letter Sunday"
 msgid "S"
-msgstr ""
+msgstr "CN"
 
 msgctxt "one letter Monday"
 msgid "M"
-msgstr ""
+msgstr "2"
 
 msgctxt "one letter Tuesday"
 msgid "T"
-msgstr ""
+msgstr "3"
 
 msgctxt "one letter Wednesday"
 msgid "W"
-msgstr ""
+msgstr "4"
 
 msgctxt "one letter Thursday"
 msgid "T"
-msgstr ""
+msgstr "5"
 
 msgctxt "one letter Friday"
 msgid "F"
-msgstr ""
+msgstr "6"
 
 msgctxt "one letter Saturday"
 msgid "S"
-msgstr ""
+msgstr "7"
 
 msgid "Show"
 msgstr "Hiện ra"
diff --git a/django/contrib/admindocs/locale/bg/LC_MESSAGES/django.mo b/django/contrib/admindocs/locale/bg/LC_MESSAGES/django.mo
index 49fbe0aeed5ffab1d375a3d0c4071981574a7a2f..035677857484d82c441d13d3cdb220f641c0f8c6 100644
GIT binary patch
delta 2373
zcmZvcYiyHM7=TaN&2_-Gj?orq_c;YNp<6d@vO5<EA!89Cia@|JhE}!})}fh*EsR@;
zD9OPDNtB?5L}J3WQdop-KQvJy%J(Hoh$j3X7=I`l;ip;jdB1hphMer(bI$2`?{E82
z?H3KPJFfH(6l(=C3t2cxsh446I{#Qb8A`2#y>LEE%Ty{42BExP24}*pFdM!F3*n*E
z{TVoe^JO?0T2S=wz$r?_)L(3#;9?l&z|1WB1LcCEXh3mL4L^l1!Cd$cBqo)EGO8*c
za-}?QBQ&7o&;|41J8(Tb2`k|}n2CSoChX~4_~8P$2o}IFl!*63ad;exqciXvJO|gn
z6;5ox_h2bJ55=(weefqJ89#)QP&!$XxhjG#{Hp*PFKmF=RGT1g)eg8BMqm<t2c<O!
zh)Oc~1=hlHtck-m=z<+^Dm)COLZ_eyo`F)y1e8Q>!kCooR_fvol#G9c<?sO%!^Kz&
z!nsfkZiKHp=s65=zD{{0ka?sj4#IE=JPhmM0F=OnVHwP$AIo8VKJ{P8<{%g1_!}rC
z`!U4_kUy1&HoB@9N+t{7eAo!ZQ5UQxpk7$X`9A%ly~>z2Vz)HK#c+uG6{&MtA@!HY
z^BCE)unBI3e?n=&S_Y#SZiJiQKKKm01!ejjG#*>Z4<&&GPy%Uyan5fOt-K$G;-`c@
z%e$Sh8b)JmB;$*zi|<qCY$gRCYA%$|>mb!uTc8Z%E_fd9gVKs(>VA>)38MNO)}nM8
z{syJjasNmlN1@p5gJLgsoy{sXx1sc;sA$B&c1ZhG2W0M4JjHk6GR~)=%+AkHGPw)o
zz2BfJP}(Me%V!3%1d;dB|JjHvDjc)RD_=WtE+v(6%C|t)VnnhXUGgI(eXT(x3t1Gv
zUP1m(LS#<J#U50k8suMU)kA5AEcuF8h;<pLawH9TRy#5ZVoZ_!8wTt#tAg~!E~MOz
zt|!?%g_IzY`%*;4PwF)XVF>J6)j?T{kXn1k?<}NeYF_FbfHE0;-*(wo@>3$~X=E-U
z-BM12^<uc?O=IWY_U6uTq`k_hX^!k@sheH0b8l<ww)Rk4OKG&G+`cO_nmCTV*xT{w
z1E-E>By&Q|yNu3=Z8tGHb2u%xW)Jp8P3@`E^PORR!I__rsYgEPbFNIk8~-q>Z)O__
zPtF6!Oo=XPZ0|BeKe{{A++vK{(%DnKULSa&<&AKZ$O9`wodj1ItgH+KD*_b@jf!AZ
zaN)cl%h?!;b_O<dgxaI6q0UH0l@aP_Z{dBjQ8T)0c(pAQZY^t$wCSd)_g=9}W1cpz
zm<jW$nKUmM)*-9g95BDMj+p({`(tHzT%l0BW+unp{J&H>n7iCDprg4<b;#@1U*#s}
zTrqnL)CSE<_`7QMEAwNs*NU4x)<OIZ8n`}gUenvW-s#-%)>ar7qCS>aoA@>_%i-%E
zi@VGipM`bYI;bD!N1TS)k3pRE>piZulg+c@2(1AwelIB1f4KH%_whPz9k#l4k-JcL
z7i`FtS4r!DC|XB(d9UEU&pL);F98ptjJhGgQMEy{&rIrv)2b&~2XwG-w+{OJB@@!q
zSnoE6B$9!Nx%VV)7nV32N&WBi=dwhH7U;F^)iM|QihHx~k-@1_<|pHvmidbGXC9Z{
z;#sZNz{?(w?(z8bu*dzFq091~&3wMA^R-Aj=8F?QcrQ3Ik|dGTf9JUM$(g4noK|Ix
yq}QWQ%(|gB`@FizH)ERQFeE)1no!3Q*SPki-ca5-*<(X|!`GELQZc>G-}oP{Ll#W{

delta 2066
zcmZA1d1zck9Ki9}Z4z@d=jJ|N(<5n;O?HzWZqn3Ldr|5i+Ww)n9-F$_Ey*S{t5QXh
zno_(V;82NROiQ6CEfTw3x~6RkwuqHlXN8JFlnMsH5}_2aB?x|hZ#O17?9AuQy!Yn#
z&AdI+HP$)!b3w{6Md~6~N_Hysq?kfM8cJ2F2@hi)ev0zkWvswy%)onCgwC`?dnqoZ
zz6RyJO_+_3V>&*ESxOD6VDiRGSk8@Ml#V~blQ@aF_{;-JF@_2uO)8B1)N2$^;4sRZ
zr!gOY!CiP4TX7qs%6qS3F&@S?##f_UxM;YJGUHn)1J0tn@Hd{o6qdOIPhkn(!4;U1
znHabktEji3toSjM1$CpW{B<nEcd!7DV+P}^2p9a+B?<}sR~W@w;v@ARP*&2)>^ku%
z%1W=IbaV}Ka2h2-x3LuOpe!Jh(FuaeN2!+~x0Hp0EnK*{kPe?l4|bz;q;b@t)CVX7
zw-OfFntoi5@8Uyv6=fnREV~&?@L}AFGSFKnk$E32JcqJHH}i-;*XlP4nejbr!hG(^
z02^@|6L=XLsZTKqyP<wZ>G*C^*}n_avr*cwVF!MX<5)o4_u*NTNEdTbYjIf-@!!M6
zW*U~`IPz0hC}gjGMCtGk^f8e+JVJdf2cQ8bQ6@TrvISMFLI!R^S@Hg4{V0}E{{s1`
zX$pzhpMzY;i|O1YimC)pVI3Y|z#Dj)x{tVjf-^XZBYcChm-UPy5o<v?)q7DQI)K~p
z2ui=-AiJo3LXMNVopkUoE;iAyq&o4y7L*n2O4dh^dDxwFp(L8rTCz+)l0<GLnYk&8
zEJ@CVoPJrQY?-7rWSPW#^2zrvC$oht;g%%fkt7F6l0--TaO8kW>P%pl8z}3ObvaO8
zvP8j6=6_7BBX1<nC)R35hht%<2KoLU<dW^PPkf>|QP#jR@+z`~O!nDB=CilIdyax?
zCrh*>wUOnJN@^vub859zNU}w8@Rmr0RF}a1#O+HtWZIb)jeM6jyCk!AWqrus8(2M1
zt8Zim7gw9IDs^{OhodfXJj><O-)3J~wcGv3!GJ#;><hU!`@?~DtJULO@Ai1zUZ3S%
z*S^Nr=<#|ydL*Z4tF-&(+dYjQQsz$oK-j(epg%Ow;}7>8Y`1p!L!sb+wKEWWKG0)r
zIAB-1dhBX*F!Vy7p2_)DH|BLY#&l1fPcP3e(HHZgd6&$DWiFa2bIwG~1v8<)%<puX
zvk_-Ox?@F@)|k0uQJgmsZqv|gnbCzBFVwmEa+`R>GLv)@i@#x}^l{gtsatyc!-w>J
z*QwOW_}k{9{<tuhJ!U4%<@gZgS)Q_rW@}B97h=3>YZ;kO{7oMCjNzuFsvC+soF=AU
zEbh<vaDJlt*@B9~e`}VB#E0U;=CX-Js!Hk|dRyt{3@UUzVLsRIm2P*Ms6LUkOwX0>
zDOuPjWsWV3uD>p8(<jTe>+IqxonD@;=gP`!+O0)T?+*0#6K*zZey8<Q<>P7nhr;{&
zLUeCMtco)ZM@+{nPuu0*rHhxRXR5C2o7K5`s(NYbI8lhs$JE4>`CmgK63Jklx8rc%
QRj>Eeyz<{ZZ`JJl2mTnJK>z>%

diff --git a/django/contrib/admindocs/locale/bg/LC_MESSAGES/django.po b/django/contrib/admindocs/locale/bg/LC_MESSAGES/django.po
index aa3b1b99e0..124d843720 100644
--- a/django/contrib/admindocs/locale/bg/LC_MESSAGES/django.po
+++ b/django/contrib/admindocs/locale/bg/LC_MESSAGES/django.po
@@ -1,18 +1,19 @@
 # This file is distributed under the same license as the Django package.
 #
 # Translators:
+# arneatec <arneatec@gmail.com>, 2022
 # Boris Chervenkov <office@sentido.bg>, 2012
 # Jannis Leidel <jannis@leidel.info>, 2011
 # Lyuboslav  Petrov <petrov.lyuboslav@gmail.com>, 2014
-# Todor Lubenov <tgl.sysdev@gmail.com>, 2011,2015
+# Todor Lubenov <tlubenov@gmail.com>, 2011,2015
 # Venelin Stoykov <vkstoykov@gmail.com>, 2016
 msgid ""
 msgstr ""
 "Project-Id-Version: django\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2017-01-19 16:49+0100\n"
-"PO-Revision-Date: 2017-09-19 16:40+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
+"POT-Creation-Date: 2021-01-15 09:00+0100\n"
+"PO-Revision-Date: 2022-01-14 10:04+0000\n"
+"Last-Translator: arneatec <arneatec@gmail.com>\n"
 "Language-Team: Bulgarian (http://www.transifex.com/django/django/language/"
 "bg/)\n"
 "MIME-Version: 1.0\n"
@@ -22,7 +23,7 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 msgid "Administrative Documentation"
-msgstr "Административна Документация"
+msgstr "Административна документация"
 
 msgid "Home"
 msgstr "Начало"
@@ -57,10 +58,10 @@ msgstr ""
 "е генерирал."
 
 msgid "Tags"
-msgstr "Етикети"
+msgstr "Тагове"
 
 msgid "List of all the template tags and their functions."
-msgstr "Списък на всички етикети на шаблона и техните функции."
+msgstr "Списък на всички шаблонни тагове и техните функции."
 
 msgid "Filters"
 msgstr "Филтри"
@@ -69,7 +70,7 @@ msgid ""
 "Filters are actions which can be applied to variables in a template to alter "
 "the output."
 msgstr ""
-"Филтрите са действия, които могат да се използват към променливи в даден "
+"Филтрите са действия, които могат да се използват върху променливи в даден "
 "шаблон, за да променят изхода."
 
 msgid "Models"
@@ -81,20 +82,20 @@ msgid ""
 "template variables"
 msgstr ""
 "Моделите са описания на всички обекти в системата и свързаните с тях полета. "
-"Всеки модел си има списък на полетата, които могат да бъдат достъпни както "
+"Всеки модел си има списък на полетата, които могат да бъдат достъпени както "
 "шаблонни променливи"
 
 msgid "Views"
-msgstr "Прегледи"
+msgstr "Изгледи"
 
 msgid ""
 "Each page on the public site is generated by a view. The view defines which "
 "template is used to generate the page and which objects are available to "
 "that template."
 msgstr ""
-"Всяка страница на публичния сайт се генерира от един изглед. Изгледа "
-"определя кой шаблон се използва за генериране на страницата, и които обекти "
-"са на разположение за този шаблон."
+"Всяка страница на публичния сайт се генерира от изглед. Изгледът определя "
+"кой шаблон се използва за генериране на страницата и кои обекти са на "
+"разположение за този шаблон."
 
 msgid "Tools for your browser to quickly access admin functionality."
 msgstr ""
@@ -106,17 +107,17 @@ msgstr "Моля инсталирайте docutils"
 
 #, python-format
 msgid ""
-"The admin documentation system requires Python's <a href=\"%(link)s"
+"The admin documentation system requires Python’s <a href=\"%(link)s"
 "\">docutils</a> library."
 msgstr ""
-"Системата за администраторска документация изисква библиотеката за python <a "
+"Системата за администраторска документация изисква библиотеката за Python <a "
 "href=\"%(link)s\">docutils</a>."
 
 #, python-format
 msgid ""
 "Please ask your administrators to install <a href=\"%(link)s\">docutils</a>."
 msgstr ""
-"Моля, попитайте вашите администратори да инсталирате <a href=\"%(link)s"
+"Моля, помолете вашите администратори да инсталират <a href=\"%(link)s"
 "\">docutils</a> ."
 
 #, python-format
@@ -136,7 +137,7 @@ msgid "Description"
 msgstr "Описание"
 
 msgid "Methods with arguments"
-msgstr "Методи и аргументи"
+msgstr "Методи с аргументи"
 
 msgid "Method"
 msgstr "Метод"
@@ -145,32 +146,32 @@ msgid "Arguments"
 msgstr "Аргументи"
 
 msgid "Back to Model documentation"
-msgstr " Върни се в документацията на модела"
+msgstr " Върни се в документацията за модели"
 
 msgid "Model documentation"
-msgstr "Модел документация"
+msgstr "Документация за модели"
 
 msgid "Model groups"
-msgstr "Модел групи"
+msgstr "Групи на модела"
 
 msgid "Templates"
 msgstr "Шаблони"
 
 #, python-format
 msgid "Template: %(name)s"
-msgstr "Template: %(name)s"
+msgstr "Шаблон: %(name)s"
 
 #, python-format
-msgid "Template: \"%(name)s\""
-msgstr "Шаблон: \"%(name)s\""
+msgid "Template: <q>%(name)s</q>"
+msgstr "Шаблон: <q>%(name)s</q>"
 
 #. Translators: Search is not a verb here, it qualifies path (a search path)
 #, python-format
-msgid "Search path for template \"%(name)s\":"
-msgstr "Път за търсене на шаблон \"%(name)s\""
+msgid "Search path for template <q>%(name)s</q>:"
+msgstr "Път за търсене на шаблон <q>%(name)s</q>:"
 
 msgid "(does not exist)"
-msgstr "(Не съществува)"
+msgstr "(не съществува)"
 
 msgid "Back to Documentation"
 msgstr "Назад към Документацията"
@@ -179,7 +180,7 @@ msgid "Template filters"
 msgstr "Шаблонни филтри"
 
 msgid "Template filter documentation"
-msgstr "Документация за Шаблонни филтри"
+msgstr "Документация за шаблонни филтри"
 
 msgid "Built-in filters"
 msgstr "Вградени филтри"
@@ -189,25 +190,25 @@ msgid ""
 "To use these filters, put <code>%(code)s</code> in your template before "
 "using the filter."
 msgstr ""
-"За да използвате тези филтри, сложи <code>%(code)s</code> във вашия шаблон, "
-"преди да използвате филтъра."
+"За да използвате тези филтри, сложете <code>%(code)s</code> във вашия "
+"шаблон, преди да използвате филтъра."
 
 msgid "Template tags"
-msgstr "Шаблон тагове"
+msgstr "Шаблонни тагове"
 
 msgid "Template tag documentation"
-msgstr "Документация за шаблонни тагове"
+msgstr "Документация за Шаблонни тагове"
 
 msgid "Built-in tags"
-msgstr "Вградени в тагове"
+msgstr "Вградени тагове"
 
 #, python-format
 msgid ""
 "To use these tags, put <code>%(code)s</code> in your template before using "
 "the tag."
 msgstr ""
-"За да използвате тези тагове, сложи <code>%(code)s</code> във вашия шаблон, "
-"преди да използвате етикет."
+"За да използвате тези тагове, сложете <code>%(code)s</code> във вашия "
+"шаблон, преди да използвате тага."
 
 #, python-format
 msgid "View: %(name)s"
@@ -220,23 +221,23 @@ msgid "Templates:"
 msgstr "Шаблони:"
 
 msgid "Back to View documentation"
-msgstr ""
+msgstr "Обратно към документацията за Изглед"
 
 msgid "View documentation"
-msgstr "Документация за Изгледи"
+msgstr "Документация за Изглед"
 
 msgid "Jump to namespace"
-msgstr "Направо към именни пространства"
+msgstr "Прескочи към именни пространства"
 
 msgid "Empty namespace"
-msgstr "Empty именни пространства"
+msgstr "Празни именни пространства"
 
 #, python-format
 msgid "Views by namespace %(name)s"
-msgstr ""
+msgstr "Изгледи по именни пространства %(name)s"
 
 msgid "Views by empty namespace"
-msgstr "Прегледи на празна именни пространства"
+msgstr "Изгледи по празни именни пространства"
 
 #, python-format
 msgid ""
@@ -244,9 +245,12 @@ msgid ""
 "    View function: <code>%(full_name)s</code>. Name: <code>%(url_name)s</"
 "code>.\n"
 msgstr ""
+"\n"
+"    Изглед функция: <code>%(full_name)s</code>. Име: <code>%(url_name)s</"
+"code>.\n"
 
 msgid "tag:"
-msgstr "етикет:"
+msgstr "таг:"
 
 msgid "filter:"
 msgstr "филтър:"
diff --git a/django/contrib/auth/locale/bg/LC_MESSAGES/django.mo b/django/contrib/auth/locale/bg/LC_MESSAGES/django.mo
index 1418c1f080aa123ba75a49c3aa742ecf26304af0..1d682adb8ac0ed184622ebd13c5230ee1393d837 100644
GIT binary patch
delta 2702
zcmY+EeN0tl7{FgX6$Bw9MNoM`%`ZSeNg*IVNKq+G%B@+}5sz?@d#~MdiQ&gCYR)p7
zy1UZK>2S_JTrK27C_Zenx#`+GCubj9GjlcP%B}xux>~>I+>7Z8&-uOYbKduPp7(j4
zb3d=SzbbSyBmM)$coCU`oQYM+3kwo>Fm5F(wHW>a=fLbSN@-XFCqNUfgYB>!UWF!%
zAFGs@Xoih&JA57f05jm?B&8NA6;f-Mq@n15W$*}0hL>Rqbl_xo6Q;wzqxvK^VM|Sf
zqR)k5rx<3#C2$(t2%m&I;COfhPJ*XkF8)<N6S>LvFbDn)$H6f?QsD%+3Fg70umi4u
z8ALZ7z5)%n8*(G{Gn@r8IV^!!!hE;^N`~9vN%$dLihor`Sf#KH&V}b-ExZAD!D(EJ
z?5j^8msh7DF{)3YWS~FFuOPnF6-bQgJBSZ;8_NDap_JqS6ninGEfmjWEECy~8f6v~
zN7JDgDulAHJi4xi;&?TbbM;aECMf%wp#<WG{Ht9&#NPW*-XDwVPo$H7G4vS<iR=QT
zf7DQvUqcDt8`vB}^T2x6%juv7cnlW92QU{FP{$Ln4z|O)@JHB?840wCM(Af<3p=5j
zNdBLKrzb|b^9tmQnnQ=Q!74Zv_CaZ)>u?dg3*}s1R-~C~q1^ZlC_Utb8omol;5k?g
ze}Y9YhsKbASBID^VA34rNm$AHTeuje(aMtIS||tV;dN+1O-5GYZ7b_0I%^rc27iSa
zL|p^_f-7JppF#oL2cL#rQ2d7OFuBJh2kQn*(vk0Z8(hnJ2=0U_c}iV^??C!e)zQ*q
zU2TN;R6Z#B_h2IY7|wv5P%?EHN(S#i?xy1SbhubZO^r;{Y$yj8K+2^mAimUEC<ot!
zWL+JAvhNh6TIwv6)DJ_+)YT|&KxwvH5TEKdD5V%nRAQ$BX3F=!o(cb|(N!pQ2#VoO
zNV(Ji6bBBJ+TMgQ5V$E`0r{fbv;s8`k#jOgt~(?HbC4zON~u^Vmk|GMhih3dq}i4t
z(u8%0{GiB?6iYT_NOojMJ>|1nhDa%-T-C^IWG*5@e%4nb@^wl7lp`{pL0&+_zdPhJ
znu%0ImTszKDorBwikAgLK2J#}{io(5Wyt7Q$3#jcjT?tNfjl}S?Te7w|CP;d&8kpH
zYS$oq;_7+iIpkSnIU<c!gsenL5&2ac9hK3Elt_mBo=EvtA(UJdA~I(6yq0(-K4i4%
z?S^Hw`2$-lZ3Im1^9QvR^aso>1={lKV3Uc`W1-h=M!OFBwPl*9QMFoT;C9DH)<X*g
zdUI<~xBFXlgW=N+O@^;gwwez&aKz(l)Rl&A3Yc4~@^_~1&aZZDZS@DdmGh12o_~{d
zOdM8wa#LP*C*juAVo`+8rp|VGE%j3J<`#d$Hf?!!nBk-2+opI;uRqYP8~j#K`3$eA
zwi^MXrNwOVSl)0-T1`^W<2Bva;k9YA5{-bz47P`ZX{+iB*PCy7ERWw;SYrgu3SC-U
zT3T3KQdqK3mlRi&ESy)&NUk%iVBt#v!)LV^<fej5`AqgVaFyt6Nu$^Bv=lY?y*<_G
zhvHs!_S#)`zdfMs5vD_SAI~rCE>Ra~yW7?5VKt)dUb{=%19rc&*Xe-W?yf#<Ut~Gr
zyp3wm9w<`waXDmvVGs7?X5NWS;F#UpGj5U<6ZTBXiqm#~_;^-%OkdBntZ6Z^&Ytie
zlM6$qFoqSefHRB^^KkaK59gq>pO;<suyZ)#mB6%ffUQI(K@Qlx1zJLu(B%yVA~x)9
z=OEV`!t@1fj^4sOGV1E0-IW$~?%o^c;m&Lw;{NW5$YDtgHr*t+H+FA1{D_gqY&Zv4
z_SyZ9G!Z={iFC6~x<=SA<m|Htox@It^c1N(Cb=TwL89%MnSDPYNA4~0_c<LB4iz}h
z+Yz~Fc&h%V3?poC_M_^h6fE2tDssX^iN@VBNH8Rqtq1L)u+EziZy7DY@ant`S&y6O
fX4&VS4I2|O!@YUyqZ=d{{GE?%$5dZ9A%E_FXH|28

delta 2027
zcmZwHS!`5Q7{Kvw$}nO}+kx7>(Ax#t+D@HL2fBy?rHd^jtxDY<fE%5fkzty2#=2*q
zAyHy|@hTWKY7-J;d~k4RT0>hz)R<I~+r+5B<v}n}qtS#XaEbr#&eizfNxu1=bM8IM
zJ<D7he5W_{?RxKvLfTDK5y>2p2!872hjhRv(upQE;mc^?hggK);|N~GE*!cp+x{r7
zru-8=h`-@}yl0KbdYs3wNJ^H;6jCAAi);Zu=3+mt#oMtQ_n{vjb?c8IP35>-|2k?v
zX{^BaaU*_(#dr-1&`;;3SdG<;FCAp`OYX)>JcxPtH0Gm)`)~&PQ6JX90GfCZ`4YK+
zn=pr2>x3Jz7JE=vHiEC=6z;?tIuA0w+)t(vUqBsT5uZda(`8lV2r_wj2K9@dcYOuv
zOHLwV%PFL(EFyE2Wz;SB9JQaXQFrx{`}_w?>5Es$=m3AYFRWo5b)bCI=Ow5E)Sz|{
zKpi-Qx+UA)`VqH0irRh*bpqqa_RGVl{XB&)c|?vCvi^5cQM-;+z)1|^MXbg=PRgs;
zjE~_b_yzW`U)piS4I*=B;0%6=oAGfrTo2m}>ehNnL>|Fn+<?!ao{6_hbpOemqe2^A
z#Zol*(J$;oJrjLspowibg}35qY{e_66Rs^2X~!N6;Uwy<cndr666%UpaX|F_h7=i_
z%m9vI8ArDVQ+OFaz+QZlS@h%2*n;hxsI7Pab-)w&3ofIH@9~)<SjiO_#uz?<3wRzo
z8J*ph)E{J6Rmn556&uk<Ie_&TMqQbEQJ3s6GFLf{`Xy=CGpOx8Ms`6iU=4nU+RjTs
zpI4x+Yz@*rC9T<vbh$6|qF$Tbs7oD3?eGoM3C+6Yi^y)tuc#gRXrx<JgdWtS19lL%
zXo18o$qvo@n^Gb-Q_$1jMd(cF&pCwp)tZ_KR?WG?TGsvkZ_;hhiRcN})JJS_a@l`X
zU8PlSxdnB#ZzBeY0mgUs7o4PD+CXpt<VHfTiykDs*P0BXiQrf`soRwsB{_tb(5u%^
z=<4+l|D;W1wiCMVn)KX6_5N-nb`gz)UJt!mb%ZYG5V4ccrPqDe#0oqAcmb!By$O1{
zZz6On^vYEenmF*;l=;SY(wiw-yTRjW$h7B=g7s`ckl&?(Mt*-RIB(4rPI}|!p@=o;
z@3l_&H(MY12U2?jyCx!LGCCd)^qR>?w-E}qbp(Q4fl%0JYwr$kZ4QQl!Q7GIz#Wmv
zXyX6h3wMXY%|TM`9y5^)?42;<iI|xjpXfG*%y>MSF!n^E4@6?dwuhYJj+j$yjmC4v
z#xwiZO|KfY7wxoR&)akMDSK(<uokptWy)T%-?h^%2EPmT?8*_XG3?XMGv1r0ZpxlD
z?6VY>R*q6}#!k0N-yt&^vt~+)GWQjKmb3b-ownyP?PUp1g*{8p8Vo_THq$1IXPqnW
z%KTYg<*}+NTQboqpU;}E{oO~GjBG8`)%zL}W-QrYU9P*!nyxRkqV>bpN`2GcFIOeo

diff --git a/django/contrib/auth/locale/bg/LC_MESSAGES/django.po b/django/contrib/auth/locale/bg/LC_MESSAGES/django.po
index 8277d9d1d4..63b556eed6 100644
--- a/django/contrib/auth/locale/bg/LC_MESSAGES/django.po
+++ b/django/contrib/auth/locale/bg/LC_MESSAGES/django.po
@@ -1,20 +1,21 @@
 # This file is distributed under the same license as the Django package.
 #
 # Translators:
+# arneatec <arneatec@gmail.com>, 2022
 # Boris Chervenkov <office@sentido.bg>, 2012
 # Georgi Kostadinov <grgkostadinov@gmail.com>, 2012
 # Jannis Leidel <jannis@leidel.info>, 2011
 # Lyuboslav  Petrov <petrov.lyuboslav@gmail.com>, 2014
-# Todor Lubenov <tgl.sysdev@gmail.com>, 2015
+# Todor Lubenov <tlubenov@gmail.com>, 2015
 # Venelin Stoykov <vkstoykov@gmail.com>, 2015-2016
 # vestimir <vestimir@gmail.com>, 2014
 msgid ""
 msgstr ""
 "Project-Id-Version: django\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2017-09-24 13:46+0200\n"
-"PO-Revision-Date: 2017-09-24 14:24+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
+"POT-Creation-Date: 2021-09-21 10:22+0200\n"
+"PO-Revision-Date: 2022-01-14 10:14+0000\n"
+"Last-Translator: arneatec <arneatec@gmail.com>\n"
 "Language-Team: Bulgarian (http://www.transifex.com/django/django/language/"
 "bg/)\n"
 "MIME-Version: 1.0\n"
@@ -53,12 +54,12 @@ msgid "last login"
 msgstr "последно вписване"
 
 msgid "No password set."
-msgstr "Не е запазена парола."
+msgstr "Не е зададена парола."
 
 msgid "Invalid password format or unknown hashing algorithm."
 msgstr "Невалиден формат за парола или неизвестен алгоритъм за хеширане."
 
-msgid "The two password fields didn't match."
+msgid "The two password fields didn’t match."
 msgstr "Двете полета за паролата не съвпадат.  "
 
 msgid "Password"
@@ -71,9 +72,12 @@ msgid "Enter the same password as before, for verification."
 msgstr "Въведете същата парола като преди, за да потвърдите."
 
 msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
+"Raw passwords are not stored, so there is no way to see this user’s "
 "password, but you can change the password using <a href=\"{}\">this form</a>."
 msgstr ""
+"Паролите не се съхраняват в чист вид, така че е невъзможно да видите "
+"паролата на този потребител, но можете да промените паролата чрез <a href="
+"\"{}\">този формуляр</a>."
 
 #, python-format
 msgid ""
@@ -81,13 +85,13 @@ msgid ""
 "be case-sensitive."
 msgstr ""
 "Моля, въведете правилните %(username)s и парола. Имайте предвид, че и двете "
-"полета могат да бъдат малки или главни букви."
+"полета могат да бъдат с малки или главни букви."
 
 msgid "This account is inactive."
 msgstr "Този профил е неактивен."
 
 msgid "Email"
-msgstr "Email"
+msgstr "Имейл"
 
 msgid "New password"
 msgstr "Нова парола"
@@ -111,25 +115,25 @@ msgid "iterations"
 msgstr "повторения"
 
 msgid "salt"
-msgstr "'salt'"
+msgstr "salt"
 
 msgid "hash"
 msgstr "хеш"
 
 msgid "variety"
-msgstr ""
+msgstr "разнообразие"
 
 msgid "version"
 msgstr "версия"
 
 msgid "memory cost"
-msgstr ""
+msgstr "разход памет"
 
 msgid "time cost"
-msgstr ""
+msgstr "разход време"
 
 msgid "parallelism"
-msgstr ""
+msgstr "паралелизъм"
 
 msgid "work factor"
 msgstr "работен фактор"
@@ -137,6 +141,9 @@ msgstr "работен фактор"
 msgid "checksum"
 msgstr "чексума"
 
+msgid "block size"
+msgstr "размер на блока"
+
 msgid "name"
 msgstr "име"
 
@@ -212,8 +219,8 @@ msgid ""
 "Designates whether this user should be treated as active. Unselect this "
 "instead of deleting accounts."
 msgstr ""
-"Указва дали този потребител трябва да се третира като активен. Премахнете на "
-"избора на това, вместо да триете профила."
+"Указва дали този потребител трябва да се третира като активен. Премахнете "
+"тази отметката, вместо да изтривате профили."
 
 msgid "date joined"
 msgstr "дата на регистриране"
@@ -246,24 +253,24 @@ msgstr[1] "Вашата парола трябва да съдържа поне %
 msgid "The password is too similar to the %(verbose_name)s."
 msgstr "Паролата е много подобна на %(verbose_name)s."
 
-msgid "Your password can't be too similar to your other personal information."
+msgid "Your password can’t be too similar to your other personal information."
 msgstr "Вашата парола не може да прилича на останалата Ви лична информация."
 
 msgid "This password is too common."
 msgstr "Тази парола е често срещана."
 
-msgid "Your password can't be a commonly used password."
+msgid "Your password can’t be a commonly used password."
 msgstr "Вашата парола не може да бъде често срещана."
 
 msgid "This password is entirely numeric."
 msgstr "Тази парола е изцяло от цифри."
 
-msgid "Your password can't be entirely numeric."
+msgid "Your password can’t be entirely numeric."
 msgstr "Вашата парола не може да бъде само от цифри."
 
 #, python-format
 msgid "Password reset on %(site_name)s"
-msgstr "Променена парола на %(site_name)s"
+msgstr "Промяна на парола за %(site_name)s"
 
 msgid ""
 "Enter a valid username. This value may contain only English letters, "
@@ -286,7 +293,7 @@ msgid "Password reset"
 msgstr "Забравена парола"
 
 msgid "Password reset sent"
-msgstr "Нулиране на паролата изпратено"
+msgstr "Нулиране на паролата е изпратено"
 
 msgid "Enter new password"
 msgstr "Въведете нова парола"
diff --git a/django/contrib/auth/locale/cs/LC_MESSAGES/django.mo b/django/contrib/auth/locale/cs/LC_MESSAGES/django.mo
index fcbece08401fb953b41beadd581c8c93cca9b05c..71403aec1303aa1edc4c6313e452fa701c2de854 100644
GIT binary patch
delta 1856
zcmYk-ZA^`E7{~D|q7I^xBGDmFQJhk$qbN$p^V67zjj5ekoyc~=3Ol_t8_Tn;#=^WX
zUY(6G8!wDyX0zmRE4=6hGd3?6v-$q+?#6$v`}4o=bD#gi^}kL&m3EXxdXr<%8f`t1
zL0lbTwg+>DaiP5*ZdQyRFdNh3%)D5MV=;*9uo+A62?jAX-b_Q(<8IuCJMlFpW3k7q
zz${`b>5Sn)D;8oKj=)Da3ZLTy?8QX<=|1=H5@T5^>Ukz=93Q4*IZnpyI1XEIG`3+H
zUcyY~x7&2IlUFzqKjTP@<C1`5aR*Mplh}&OFqze5;a1#*N01#^AI`)SzO03p;#Ay>
z%5XDY#B*4|{8q@a^6?<f#_Jfs9z2Yb*%sNic4YH*8Cj#<KxN>z>jPwN>q6FOFOfOy
zBkKKcs3ZA}8ZU;lMPlj1)6okFuH#V?WuXSjMZH(z-Y-H;yaM&TjqdXusQ2no3u#3D
z*<mgk?>Or7^X~JGMDnkJZt_4YyM@$`-E)12TEJ7h6GQP}Irpcipls~M@%RV5n94bB
z!6K~0HVk18YR45Rd=~?#=kHR;Kc87O6{54-j?7_gScaXb1@yUoMostwnbQ(e2j0&@
zZJ+>^az82q0i1-JP{kNVjeiO`1-lZVqXk59IzC42><g-B(kN98<VVWEs&OA~#v}L`
zH((X3nu8bc06s+h92Zi7Y}WRpiu)L9+-s;}jC9fQk=lN&;6WO1$*q`+?O2Un_yUvo
zmX53+b@pFT3;Tu2h==WJXBnu^b5J`j!Xym1_uG)8j#y}*V_{Tr9CGhlQK>$PI)YBr
z05?%*c^{RTN2t_yyZ3Kg`(3{ydvo%yg{E^3T2MB6^!xYI(I1RTRH}BOCTv0#V=HQc
zqo}hzfh5eP5h}7}gm%1uP}4DJ;cC3<v>9A=tmV#~*$~twG`};MS2r{k>!e>bv5HVp
zs*zor;`9a<scsITpVbmVsb5PhB4!b@2{rv$UqNUCnM4VpwvbpuXnv>pxT*mC1Gkpv
zIv<rj9gUhYq5@LJ<`IR&U|UCrABOY)#Zc67{oklnD<T5_9!8uZDdPe4Wh)7t&1#~G
zSWGM>bZ&DA6=FW2V;F3uZb!ACrsCwsW6KHsc~%jt&D3T3ti8MT1hd25#+v$IZIkz4
z^zHDw@gr&)8f!z|a9v9<dU{M<OhSIHFE7_u;LR)c7nDRjNzX=(J`ilE3pIwDyu2IQ
KAAOl|Cgv||&ZBq$

delta 1785
zcmYk+YiP}J9LMqRW_EF#&2BE^m@~WBI6KEUn+?a<1)FsqEJ`%BEKBnMO)f`ypp<f%
z2Wn^~@<eio6^#@lmj_m)EKih{OF|0C`}6lxe(n2z{r>;`&+qd6eb4Eu9j%FtWG0<5
zS}QSw=u0%~QhzKL+EB7t7$0H@CZ?GAunebQGwQSLScO-y1K*>Dh^Crt#r3!u?_ehS
z(##f`#VkZ8od=y*i9I+DFXIFpz^Qm2C*vFU{4+9^{dUh&_>jiQ!)aKIGqDb{aSKku
z9?ZqVIE(r193Aas5U1mF9FL!HBL2ipn8w57*opP{1Lt6bRkmXXvLkzdMfeM~a6f|-
z;8IkE+wm+OzzFkOKFbQ?W-P@M*oe1rA11RcvTuiw&Ds&v&U>9_kh$yvYT<EYY#T(@
zZck80@e(!82qxiMjOm3@I`SK80_9l)jYGYd<L;-UCN4s~A8^l?px$dhEo3e7XB)U^
zyltre?{v@ipvE~enfz;ICwV}<*lA}!Y5|vUAi?Z9F6X|R$|=Dsn1`>>hhK0#W^s-y
zaXWV5Rn(4WW|37aL_NQWI&yzD`PZ3+sSxI{?O2NkPz$)_970VvjLc;pQ14sL-_&NH
zQl5*-Kq2O15LJY&sQ0^(B-=sM0*=M#6w*15+Swyiv3x}hluM~n2Ij{d7{dK{9-~;m
zs^;M?+>QOHuVEgQ$0jX`D(bDMaSx%2@B#+NZ0sJL2oJvUoso-pyBvG4K`-Jkeng$w
zJwC0oe~ik+3)GHA-SZ!)osMPu8JL5*FGd}4l{13WM9iApgBDbZ+fb?RMh&nRb%sY#
z8R<pUOuxIo=)C5<i|omsqB8dmwSe!aVoc>c^!t#BS^EB$)6s-0P%CUfP0)rq(~U@`
zyf%ib>P1b9QwG%7wD+S@hWgBELamyhRJ^vBYlvVtTT8SOn%^t9<+zMUB-FGZRdO*=
zLHyr*?naBPbA4q-yPQwxt5!p(E>r_LF4a~Q@vp6M9nJ4Gr7Yn3WXfwgSJi;hSW1Km
z710WUa`5U!zksS29bJ%6<`xn4gqn`d@Advxyt=Ch>RT;pv$-xMT8Jj1kXT1F63v9p
zOijf%i&&r=+FYWN&{-A{YD;v9zfOLZ8o!a=nJ}@UJP<0c2>XJe>QH68EaU0;cv}9+
Fgg^Q_k*ELw

diff --git a/django/contrib/auth/locale/cs/LC_MESSAGES/django.po b/django/contrib/auth/locale/cs/LC_MESSAGES/django.po
index ec7130da70..78b6fc49e2 100644
--- a/django/contrib/auth/locale/cs/LC_MESSAGES/django.po
+++ b/django/contrib/auth/locale/cs/LC_MESSAGES/django.po
@@ -5,13 +5,13 @@
 # Jannis Leidel <jannis@leidel.info>, 2011
 # Tomáš Ehrlich <tomas.ehrlich@gmail.com>, 2015
 # Vláďa Macek <macek@sandbox.cz>, 2013-2014
-# Vláďa Macek <macek@sandbox.cz>, 2015-2017,2019,2021
+# Vláďa Macek <macek@sandbox.cz>, 2015-2017,2019,2021-2022
 msgid ""
 msgstr ""
 "Project-Id-Version: django\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-09-08 17:27+0200\n"
-"PO-Revision-Date: 2021-03-18 23:35+0000\n"
+"POT-Creation-Date: 2021-09-21 10:22+0200\n"
+"PO-Revision-Date: 2022-01-04 18:49+0000\n"
 "Last-Translator: Vláďa Macek <macek@sandbox.cz>\n"
 "Language-Team: Czech (http://www.transifex.com/django/django/language/cs/)\n"
 "MIME-Version: 1.0\n"
@@ -137,6 +137,9 @@ msgstr "faktor práce"
 msgid "checksum"
 msgstr "kontrolní součet"
 
+msgid "block size"
+msgstr "velikost bloku"
+
 msgid "name"
 msgstr "název"
 
diff --git a/django/contrib/auth/locale/vi/LC_MESSAGES/django.mo b/django/contrib/auth/locale/vi/LC_MESSAGES/django.mo
index 3eb1a55970ac47956265fd920b726ddac13eb7c1..eb319783c9f87ef83b1d55f0f840eb54aa537553 100644
GIT binary patch
literal 7892
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

delta 1606
zcmZwHU2Kz89LMof86tCR-DHk-bUdRVFQc>V%H|q|bIzC{vN3nzP>gkb3J;d2rmZX*
zlSWO%L@(46BVH(1#_5f5O)v&7G<u18!)`Px#0z84cp(?~lIZu>J~Li;(*N^0=R7ax
zod0>AUK;y;TkX59me&m>OKc{74jD6z7uIl~TyHUE7ygb8#@8Bi3r^w;K8U0E9=iAg
z@-tI68q<Z-*nyAXUMyoPE@7K7HB+Y&q2m(_<JZj-<|^Jq`+CqHTGxC~7e?vdihVeS
z-S{xJV;Ot!S=@qeVlRG-H{%L!z$^F&<C|Zp#OXN1Xxp)jn$Q`%3zv~Om}|Hm|3rRf
zEe+X@dT<Zw!Ew|IQ>aYrL)|}tB+*O-=MPE7H}h2ZnLGzw;G-T~K|Sah)BvZ0^A<^+
zIfKgBJ3;@spnV>7|3%aUR#5kUgRil@KjI$RPt#e`p1(^)evT!)g7@QLMtKR(q8>EB
z@|2krY76eeBUnIgF`uIL{0r39Tt;30H)^60_D2)njp`q1C;ywM9Hv95KN0u}s{dSY
z;a9kW_D`6=PTr{7@J?j+OaV8dk8k1gn8JQW9mEF$pTh~-AEG95ElmEIoC$R{Q{90|
zT@)G1#8E3sqqgQAR3;9fwq_>ie+ZR<M^Tw62K}c4Uq%i1Dw2KkcHmNtiUwRprQ|&7
z?Oj1l;1}GAf1xI_g@aa_MqPI=vZakT92)1O-h3@=H{lSPyq>RT3=q2rEu^-S!w``o
zlu8YzPhX$Z2=U*dmEBJ4A+*|ILfeudlEfW^COt}M`?OX1vQ~@!H&n7sbgVW098^;}
zwO1<JnwS`BmCBIPr#-)wSS{(GqCb|^q8Cr4zlkAnjg+(Hjd$#ZpkJTlW<#qUS$8zl
z=DUl|6S+!du~g32YwM4N>>sT!*!i}dk?LaU-!o3ZbBp<kllSue4m-3VZuhoN^ye0;
z-YM7QipNT2uX_BXSvc-4JYIQ{N-6L9xs&!%$9xOAb}Bq+-w1EF7sKPVxy0RNH&^va
zequ6Lb+b-7nHotXM-%CclN!oqh6j@AWU_T;Ix*{>@+$v-T_&5(3?wP72XmEbVy>L?
zE5%&3RL(jFa=!0XoP(~HcZ<%x6OHD0vC$m#{56HremmRwZT+dPk3x2TcdY(m_irKl
xLC<Bo97)@=(LwuVbj&XG4%=v~*N(?F+Ct20nfvU0-(HO!wX=Ok?1jEf{{Y}v$ddp7

diff --git a/django/contrib/auth/locale/vi/LC_MESSAGES/django.po b/django/contrib/auth/locale/vi/LC_MESSAGES/django.po
index 4790c7e84b..a6b540a06e 100644
--- a/django/contrib/auth/locale/vi/LC_MESSAGES/django.po
+++ b/django/contrib/auth/locale/vi/LC_MESSAGES/django.po
@@ -5,14 +5,15 @@
 # Anh Phan <vietnamesel10n@gmail.com>, 2013
 # Tran <hongdiepkien@gmail.com>, 2011
 # Tran Van <vantxm@yahoo.co.uk>, 2012
+# tinnguyen121221, 2021
 # xgenvn <xgenvn@gmail.com>, 2014
 msgid ""
 msgstr ""
 "Project-Id-Version: django\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2017-09-24 13:46+0200\n"
-"PO-Revision-Date: 2017-09-24 14:24+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
+"POT-Creation-Date: 2021-09-21 10:22+0200\n"
+"PO-Revision-Date: 2021-12-23 17:49+0000\n"
+"Last-Translator: tinnguyen121221\n"
 "Language-Team: Vietnamese (http://www.transifex.com/django/django/language/"
 "vi/)\n"
 "MIME-Version: 1.0\n"
@@ -32,7 +33,7 @@ msgstr "Những ngày quan trọng"
 
 #, python-format
 msgid "%(name)s object with primary key %(key)r does not exist."
-msgstr ""
+msgstr " Đối tượng %(name)s  với khóa chính %(key)r không tồn tại."
 
 msgid "Password changed successfully."
 msgstr "Mật khẩu thay đổi thành công"
@@ -56,8 +57,8 @@ msgstr "Chưa đặt mật khẩu"
 msgid "Invalid password format or unknown hashing algorithm."
 msgstr "Định dạng của mật khẩu không đúng hoặc thuật toán hash chưa rõ ràng."
 
-msgid "The two password fields didn't match."
-msgstr "Hai trường mật khẩu không giống nhau"
+msgid "The two password fields didn’t match."
+msgstr "Hai trường mật khẩu không giống nhau."
 
 msgid "Password"
 msgstr "Mật khẩu"
@@ -66,12 +67,15 @@ msgid "Password confirmation"
 msgstr "Xác nhận mật khẩu"
 
 msgid "Enter the same password as before, for verification."
-msgstr ""
+msgstr "Nhập lại mật khẩu để xác nhận."
 
 msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
+"Raw passwords are not stored, so there is no way to see this user’s "
 "password, but you can change the password using <a href=\"{}\">this form</a>."
 msgstr ""
+"Mật khẩu không được lưu trữ, vì vậy không có cách nào để xem mật khẩu của "
+"người dùng, nhưng bạn có thể dùng <a href=\"{}\">biểu mẫu</a> này để thay "
+"đổi."
 
 #, python-format
 msgid ""
@@ -115,19 +119,19 @@ msgid "hash"
 msgstr "băm"
 
 msgid "variety"
-msgstr ""
+msgstr "variety"
 
 msgid "version"
-msgstr ""
+msgstr "version"
 
 msgid "memory cost"
-msgstr ""
+msgstr "memory cost"
 
 msgid "time cost"
-msgstr ""
+msgstr "time cost"
 
 msgid "parallelism"
-msgstr ""
+msgstr "parallelism"
 
 msgid "work factor"
 msgstr "yếu tố công việc"
@@ -135,11 +139,14 @@ msgstr "yếu tố công việc"
 msgid "checksum"
 msgstr "kiểm tra"
 
+msgid "block size"
+msgstr "block size"
+
 msgid "name"
 msgstr "Tên"
 
 msgid "content type"
-msgstr ""
+msgstr "kiểu nội dung"
 
 msgid "codename"
 msgstr "tên mã"
@@ -170,6 +177,8 @@ msgid ""
 "The groups this user belongs to. A user will get all permissions granted to "
 "each of their groups."
 msgstr ""
+"Các nhóm người dùng này thuộc về. Người dùng sẽ nhận được tất cả các quyền "
+"được cấp cho mỗi nhóm."
 
 msgid "user permissions"
 msgstr "quyền của người sử dụng"
@@ -181,7 +190,7 @@ msgid "username"
 msgstr "Tên đăng nhập"
 
 msgid "Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
+msgstr "Yêu cầu. 150 ký tự hoặc ít hơn. Chỉ là chữ cái, chữ số và @/./+/-/_."
 
 msgid "A user with that username already exists."
 msgstr "Tên đăng nhập đã được sử dụng"
@@ -227,31 +236,31 @@ msgid ""
 msgid_plural ""
 "This password is too short. It must contain at least %(min_length)d "
 "characters."
-msgstr[0] ""
+msgstr[0] "Mật khẩu quá ngắn. Nó phải chứa ít nhất %(min_length)d ký tự."
 
 #, python-format
 msgid "Your password must contain at least %(min_length)d character."
 msgid_plural "Your password must contain at least %(min_length)d characters."
-msgstr[0] ""
+msgstr[0] "Mật khẩu của bạn phải chứa ít nhất %(min_length)d ký tự."
 
 #, python-format
 msgid "The password is too similar to the %(verbose_name)s."
-msgstr ""
+msgstr "Mật khẩu quá giống với %(verbose_name)s."
 
-msgid "Your password can't be too similar to your other personal information."
-msgstr ""
+msgid "Your password can’t be too similar to your other personal information."
+msgstr "Mật khẩu của bạn không được quá giống với thông tin cá nhân khác."
 
 msgid "This password is too common."
-msgstr ""
+msgstr "Mật khẩu này quá phổ biến."
 
-msgid "Your password can't be a commonly used password."
-msgstr ""
+msgid "Your password can’t be a commonly used password."
+msgstr "Mật khẩu của bạn không được là mật khẩu được dùng phổ biến."
 
 msgid "This password is entirely numeric."
-msgstr ""
+msgstr "Mật khẩu này hoàn toàn là số."
 
-msgid "Your password can't be entirely numeric."
-msgstr ""
+msgid "Your password can’t be entirely numeric."
+msgstr "Mật khẩu của bạn không được hoàn toàn bằng số."
 
 #, python-format
 msgid "Password reset on %(site_name)s"
@@ -261,11 +270,15 @@ msgid ""
 "Enter a valid username. This value may contain only English letters, "
 "numbers, and @/./+/-/_ characters."
 msgstr ""
+"Điền tên đăng nhập hợp lệ. Giá trị này chỉ có thể chứa các chữ cái tiếng "
+"Anh, số, và các ký tự @/./+/-/_"
 
 msgid ""
 "Enter a valid username. This value may contain only letters, numbers, and "
 "@/./+/-/_ characters."
 msgstr ""
+"Điền tên đăng nhập hợp lệ. Giá trị này chỉ có thể chứa các chữ cái, số, và "
+"các ký tự @/./+/-/_"
 
 msgid "Logged out"
 msgstr "Đã thoát"
@@ -274,7 +287,7 @@ msgid "Password reset"
 msgstr "Đặt lại mật khẩu"
 
 msgid "Password reset sent"
-msgstr ""
+msgstr "Đã gửi hướng dẫn đặt lại mật khẩu"
 
 msgid "Enter new password"
 msgstr "Nhập mật khẩu mới"
diff --git a/django/contrib/contenttypes/locale/bg/LC_MESSAGES/django.mo b/django/contrib/contenttypes/locale/bg/LC_MESSAGES/django.mo
index a861e2f65ba98a3c621a982db0528d2aacad6379..20e9b668ea986fa33a0e7a44035f6f2713efddc4 100644
GIT binary patch
delta 280
zcmey&d6IL2O1%vO1H(xm<^^IlMg|58AT0u<O@Xv8kmdo>%|IF?KLJRK1L=7{Itz%m
z0kJcXugDC<KspsjCjsepAe{oFUjb<qAnnfrkuL$#MnL{FAPv+C0uEr39ZUip0Hm3K
z7%0!c3d9^h3^ap*K~*EUBt9=OH&wG(AwMZAHMyi%AtgWWQNzrM5967E)MQ7-rSiH#
zsb!hPnfZCTE{P?nRtiQ2Mn<{@hPsBv3WgR|Mw9iJBxDkc@=}44$qF_wmP2}OVrGtB
Ma(?dSbfz9A0KEk=fdBvi

delta 354
zcmY+*%}T>S5C`x{T0dI!qJq~IDpktLZm|sw3PP)(7W|-h*)}Vtv>Qm4f~UMdL8TY*
z;LQh6U%+dh$GiAX@Z!LKe>2R^y!2gqtfW2>&5>24=nysG8f?H*xB^p{?Wb@PzQAYX
z18HMEFA#0P2iS-2Fn}9Hq6)l++5Q#Q;TOayffHIlvxH=|h~PFa7w__4Pun{Kdt=mC
z?<Oqj5B0z%EQn0ivO6`=OwFze>rX!&r#d@!-qId#$6DDiGQ6X#_E}xX1{ab`k4fnZ
zuO_4r<;x3xttVmf@1Ms-i^~?1O@Ck11ghLsiRHamnPjAF6#MK<851U~tHVH#*ugL#
Rk4E{p7aI3A`aE=}?k}HSMT-Cc

diff --git a/django/contrib/contenttypes/locale/bg/LC_MESSAGES/django.po b/django/contrib/contenttypes/locale/bg/LC_MESSAGES/django.po
index ac56556672..9169509aaa 100644
--- a/django/contrib/contenttypes/locale/bg/LC_MESSAGES/django.po
+++ b/django/contrib/contenttypes/locale/bg/LC_MESSAGES/django.po
@@ -1,6 +1,7 @@
 # This file is distributed under the same license as the Django package.
 #
 # Translators:
+# arneatec <arneatec@gmail.com>, 2022
 # Boris Chervenkov <office@sentido.bg>, 2012
 # Georgi Kostadinov <grgkostadinov@gmail.com>, 2012
 # Jannis Leidel <jannis@leidel.info>, 2011
@@ -9,9 +10,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: django\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2015-01-17 11:07+0100\n"
-"PO-Revision-Date: 2017-09-19 16:40+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
+"POT-Creation-Date: 2019-09-08 17:27+0200\n"
+"PO-Revision-Date: 2022-01-13 18:20+0000\n"
+"Last-Translator: arneatec <arneatec@gmail.com>\n"
 "Language-Team: Bulgarian (http://www.transifex.com/django/django/language/"
 "bg/)\n"
 "MIME-Version: 1.0\n"
@@ -37,9 +38,9 @@ msgid "Content type %(ct_id)s object has no associated model"
 msgstr "Обект с тип на съдържанието %(ct_id)s няма асоцииран модел."
 
 #, python-format
-msgid "Content type %(ct_id)s object %(obj_id)s doesn't exist"
+msgid "Content type %(ct_id)s object %(obj_id)s doesn’t exist"
 msgstr "Обект %(obj_id)s с тип на съдържанието %(ct_id)s не съществува."
 
 #, python-format
-msgid "%(ct_name)s objects don't have a get_absolute_url() method"
+msgid "%(ct_name)s objects don’t have a get_absolute_url() method"
 msgstr "%(ct_name)s обекти нямат метода get_absolute_url()"
diff --git a/django/contrib/flatpages/locale/bg/LC_MESSAGES/django.mo b/django/contrib/flatpages/locale/bg/LC_MESSAGES/django.mo
index 456d4caed237d613f5701129170d6055001dde91..e7633dd88aa1d89b6a176ae2084430b941888934 100644
GIT binary patch
delta 1045
zcmaLTPe@cj90%}urt7-)&wpfK`D5#1`JTJ0r!9h@kOd<Uy9F}2qx<r?EBj_OySRBN
z4T5}iD3VS=r&#<`D=Hp3)UA1^4nfe;(Nl*Cg6cb)OQq4U^FH(Ex4-$#%r<{&nSS3`
zeV?H<qqm{2qaQ)PY~X{Y;6doai?9UG!dMk!lTgAC+=6lV1@`LwJ;(vCL;ToVeA?kV
zNbno1Wo(+YRWo(~3&&v{?14Jr8Q207um%poeNb%AU3eA6Ou=JV|A?U5Fc@Gg2k*g$
zFoaV&;1k#f-#{JL7G!J_=d-66pct0I>H204?1j&uewEMAg7v7X1ID*a!V{R^f&1Yq
zY=y6(ez6Y_^_4FN%EdRpMs#eIFI%Gn@nZTZ7%sw^y}L$}xfdhdblOTom8>3J|D&n0
z2m{`RakQnBf7HdVWOA}=D3g|aNOqO-3*MG-YI@fWHY~cpM+LdLtRR`86rT{p$q_th
zr$@+jxSO)r`D=V^+!1j?hGB=xaXup4O8P-Pvr=-*DW^*elT6tz*>1X&e;{c*o0+ha
zBH2k1nZiL+t`uW5X*&+(T=93tq!{KoM^=(8%~icL5@x@cuw6ToHqUX18e)-H%#1|M
zXb(lB@$Tr!2wJF*yV4xU@-#}8nQWYRHZ2f8M5imGrB~HtG=z6NPT2ce<8(6h*w3q?
zT30K6K2E!WEK&=q;NMgQwdNfTm<hE)>IG)Y{+wD<&sEW%Q7ag2sDed1v;F7I!rpvf
zpf&tE;?Fk-d*1_g(7%CmR{fc!(b_|XCxhJ)oK?hG%c^LxOZ|OJ%@ZIj71buf7gd3D
kCBN!b8(w>$y`y0LJ5JwX(Vz44{w@7Se^y6(p}HSG0R)ID<^TWy

delta 771
zcmZY6O=uHA6u|M>HBFjotxX$StJXo0rRpY|&^8!72nt#(RBP+WORTFdjahKF5$U1P
zixl<ZB7!}L2ajqoEeIAr&}(5MUOZUOdQ=c^^*>21h>yJa%@?z8CO?w1oii(m$bCU{
zkUPi)awj>g(GYKO3%<jX_z|yQuP#Ij-oZRRz~gEi&tcC7A^3@FG`nybCC*_Cm#|HU
z8S#NmoQY4U4qU+`e#0hQ#a3*JG{zk`M-kg_5A%y`x{IIjAzq3K(T6%;Ie`c8HcsJF
z)S4TGJ;y%2FRFCXEPTOEY^9nM?nZUc={2WuALA#u8AI&Guc%(=H&R!94a6o=&9{>*
z368G^4<x9u9+4w!9d&c{7pPFTRl&vALp|9>k|z_1^;updSk`*mjdbC>JLRV*+>&3I
z@YBXU{g7q^6@7b~k&;6frGMG+q~n#0;F&I2sp(raqxxNcuMLfvN3Yri-*HRkv4U^s
zW!B0Jm>J8o4$4d}-=E!YWi6}a)QCB1mmTk)eK|In8TJk4`>kL(($#a;F4;w=B+vNn
z^+~rZ50@vsMz{JaBDMc34UA|pA*Bc()hgl3a4B4@Rr0c4J9Q4k#{O0tJdQaL&++YQ
zqPa^8a`C-`zEiwldnqwKI;>KLuQ=gN?MC<_oR>7O!v&6;Wl+1N&aK@H=TjnZ<H=w=
K+8z9iul@mK{FN*K

diff --git a/django/contrib/flatpages/locale/bg/LC_MESSAGES/django.po b/django/contrib/flatpages/locale/bg/LC_MESSAGES/django.po
index 0b00b8e442..f7e3535011 100644
--- a/django/contrib/flatpages/locale/bg/LC_MESSAGES/django.po
+++ b/django/contrib/flatpages/locale/bg/LC_MESSAGES/django.po
@@ -1,6 +1,7 @@
 # This file is distributed under the same license as the Django package.
 #
 # Translators:
+# arneatec <arneatec@gmail.com>, 2022
 # Jannis Leidel <jannis@leidel.info>, 2011
 # Venelin Stoykov <vkstoykov@gmail.com>, 2016
 # vestimir <vestimir@gmail.com>, 2014
@@ -8,9 +9,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: django\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2015-10-09 17:42+0200\n"
-"PO-Revision-Date: 2017-09-19 16:40+0000\n"
-"Last-Translator: Venelin Stoykov <vkstoykov@gmail.com>\n"
+"POT-Creation-Date: 2019-09-08 17:27+0200\n"
+"PO-Revision-Date: 2022-01-14 11:31+0000\n"
+"Last-Translator: arneatec <arneatec@gmail.com>\n"
 "Language-Team: Bulgarian (http://www.transifex.com/django/django/language/"
 "bg/)\n"
 "MIME-Version: 1.0\n"
@@ -29,27 +30,31 @@ msgid "URL"
 msgstr "URL"
 
 msgid ""
-"Example: '/about/contact/'. Make sure to have leading and trailing slashes."
+"Example: “/about/contact/”. Make sure to have leading and trailing slashes."
 msgstr ""
-"Пример: '/about/contact/'.  Началната и крайната наклонена чертичка са "
-"задължителни.  "
+"Пример: \"/about/contact/\".  Началната и крайната наклонена чертичка са "
+"задължителни."
 
 msgid ""
 "This value must contain only letters, numbers, dots, underscores, dashes, "
 "slashes or tildes."
 msgstr ""
 "Тази стойност трябва да съдържа само букви, цифри, точки, долни тирета, "
-"наклонени черти или tildes."
+"тирета, наклонени черти или тилди."
+
+msgid "Example: “/about/contact”. Make sure to have a leading slash."
+msgstr ""
+"Пример: \"/about/contact/\". Началната наклонена чертичка е задължителна. "
 
 msgid "URL is missing a leading slash."
-msgstr "URL липсва водеща черта."
+msgstr "В URL липсва начална наклонена черта."
 
 msgid "URL is missing a trailing slash."
-msgstr "URL липсва наклонена черта."
+msgstr "В URL липсва завършваща наклонена черта."
 
 #, python-format
 msgid "Flatpage with url %(url)s already exists for site %(site)s"
-msgstr "Flatpage с url %(url)s вече съществува за site %(site)s"
+msgstr "Flatpage с url %(url)s вече съществува за сайт %(site)s"
 
 msgid "title"
 msgstr "заглавие"
@@ -64,11 +69,11 @@ msgid "template name"
 msgstr "име на шаблон"
 
 msgid ""
-"Example: 'flatpages/contact_page.html'. If this isn't provided, the system "
-"will use 'flatpages/default.html'."
+"Example: “flatpages/contact_page.html”. If this isn’t provided, the system "
+"will use “flatpages/default.html”."
 msgstr ""
-"Пример: 'flatpages/contact_page.html'.  Ако това не е указано, системата ще "
-"използва 'flatpages/default.html'.  "
+"Пример: \"flatpages/contact_page.html\".  Ако това не е указано, системата "
+"ще използва \"flatpages/default.html\".  "
 
 msgid "registration required"
 msgstr "изисква се регистрация"
diff --git a/django/contrib/humanize/locale/bg/LC_MESSAGES/django.mo b/django/contrib/humanize/locale/bg/LC_MESSAGES/django.mo
index fb3f047b643a985a3a41d8b0285da161208adcdd..85cdff8ffe6d49c9c51440b8c5bfa93f3598b093 100644
GIT binary patch
literal 4823
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

literal 4645
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

diff --git a/django/contrib/humanize/locale/bg/LC_MESSAGES/django.po b/django/contrib/humanize/locale/bg/LC_MESSAGES/django.po
index 994549d74c..a4f6ad6605 100644
--- a/django/contrib/humanize/locale/bg/LC_MESSAGES/django.po
+++ b/django/contrib/humanize/locale/bg/LC_MESSAGES/django.po
@@ -1,17 +1,18 @@
 # This file is distributed under the same license as the Django package.
 #
 # Translators:
+# arneatec <arneatec@gmail.com>, 2022
 # Georgi Kostadinov <grgkostadinov@gmail.com>, 2012
 # Jannis Leidel <jannis@leidel.info>, 2011
-# Todor Lubenov <tgl.sysdev@gmail.com>, 2011,2015
+# Todor Lubenov <tlubenov@gmail.com>, 2011,2015
 # Venelin Stoykov <vkstoykov@gmail.com>, 2015
 msgid ""
 msgstr ""
 "Project-Id-Version: django\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2015-01-17 11:07+0100\n"
-"PO-Revision-Date: 2017-09-19 16:40+0000\n"
-"Last-Translator: Venelin Stoykov <vkstoykov@gmail.com>\n"
+"POT-Creation-Date: 2021-04-07 14:40+0200\n"
+"PO-Revision-Date: 2022-01-14 11:48+0000\n"
+"Last-Translator: arneatec <arneatec@gmail.com>\n"
 "Language-Team: Bulgarian (http://www.transifex.com/django/django/language/"
 "bg/)\n"
 "MIME-Version: 1.0\n"
@@ -21,25 +22,62 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 msgid "Humanize"
-msgstr "Облагородявам"
+msgstr "Очовечаване"
 
-msgid "th"
-msgstr "и"
+#. Translators: Ordinal format for 11 (11th), 12 (12th), and 13 (13th).
+msgctxt "ordinal 11, 12, 13"
+msgid "{}th"
+msgstr "{}ти"
 
-msgid "st"
-msgstr "ви"
+#. Translators: Ordinal format when value ends with 0, e.g. 80th.
+msgctxt "ordinal 0"
+msgid "{}th"
+msgstr "{}ен"
 
-msgid "nd"
-msgstr "ри"
+#. Translators: Ordinal format when value ends with 1, e.g. 81st, except 11.
+msgctxt "ordinal 1"
+msgid "{}st"
+msgstr "{}ви"
 
-msgid "rd"
-msgstr "ти"
+#. Translators: Ordinal format when value ends with 2, e.g. 82nd, except 12.
+msgctxt "ordinal 2"
+msgid "{}nd"
+msgstr "{}ри"
 
-#, python-format
-msgid "%(value).1f million"
-msgid_plural "%(value).1f million"
-msgstr[0] "%(value).1f милион"
-msgstr[1] "%(value).1f милиона"
+#. Translators: Ordinal format when value ends with 3, e.g. 83th, except 13.
+msgctxt "ordinal 3"
+msgid "{}rd"
+msgstr "{}ти"
+
+#. Translators: Ordinal format when value ends with 4, e.g. 84th.
+msgctxt "ordinal 4"
+msgid "{}th"
+msgstr "{}ти"
+
+#. Translators: Ordinal format when value ends with 5, e.g. 85th.
+msgctxt "ordinal 5"
+msgid "{}th"
+msgstr "{}ти"
+
+#. Translators: Ordinal format when value ends with 6, e.g. 86th.
+msgctxt "ordinal 6"
+msgid "{}th"
+msgstr "{}ти"
+
+#. Translators: Ordinal format when value ends with 7, e.g. 87th.
+msgctxt "ordinal 7"
+msgid "{}th"
+msgstr "{}ми"
+
+#. Translators: Ordinal format when value ends with 8, e.g. 88th.
+msgctxt "ordinal 8"
+msgid "{}th"
+msgstr "{}ми"
+
+#. Translators: Ordinal format when value ends with 9, e.g. 89th.
+msgctxt "ordinal 9"
+msgid "{}th"
+msgstr "{}ти"
 
 #, python-format
 msgid "%(value)s million"
@@ -47,120 +85,60 @@ msgid_plural "%(value)s million"
 msgstr[0] "%(value)s милион"
 msgstr[1] "%(value)s милиона"
 
-#, python-format
-msgid "%(value).1f billion"
-msgid_plural "%(value).1f billion"
-msgstr[0] "%(value).1f милиард"
-msgstr[1] "%(value).1f милиарда"
-
 #, python-format
 msgid "%(value)s billion"
 msgid_plural "%(value)s billion"
 msgstr[0] "%(value)s милиард"
 msgstr[1] "%(value)s милиарда"
 
-#, python-format
-msgid "%(value).1f trillion"
-msgid_plural "%(value).1f trillion"
-msgstr[0] "%(value).1f трилион"
-msgstr[1] "%(value).1f трилиона"
-
 #, python-format
 msgid "%(value)s trillion"
 msgid_plural "%(value)s trillion"
 msgstr[0] "%(value)s трилион"
 msgstr[1] "%(value)s трилиона"
 
-#, python-format
-msgid "%(value).1f quadrillion"
-msgid_plural "%(value).1f quadrillion"
-msgstr[0] "%(value).1f квадрилион"
-msgstr[1] "%(value).1f квадрилиона"
-
 #, python-format
 msgid "%(value)s quadrillion"
 msgid_plural "%(value)s quadrillion"
 msgstr[0] "%(value)s квадрилион"
 msgstr[1] "%(value)s квадрилиона"
 
-#, python-format
-msgid "%(value).1f quintillion"
-msgid_plural "%(value).1f quintillion"
-msgstr[0] "%(value).1f квинтилион"
-msgstr[1] "%(value).1f квинтилиона"
-
 #, python-format
 msgid "%(value)s quintillion"
 msgid_plural "%(value)s quintillion"
 msgstr[0] "%(value)s квинтилион"
 msgstr[1] "%(value)s квинтилиона"
 
-#, python-format
-msgid "%(value).1f sextillion"
-msgid_plural "%(value).1f sextillion"
-msgstr[0] "%(value).1f секстилион"
-msgstr[1] "%(value).1f секстилиона"
-
 #, python-format
 msgid "%(value)s sextillion"
 msgid_plural "%(value)s sextillion"
 msgstr[0] "%(value)s секстилион"
 msgstr[1] "%(value)s секстилиона"
 
-#, python-format
-msgid "%(value).1f septillion"
-msgid_plural "%(value).1f septillion"
-msgstr[0] "%(value).1f септилион"
-msgstr[1] "%(value).1f септилиона"
-
 #, python-format
 msgid "%(value)s septillion"
 msgid_plural "%(value)s septillion"
 msgstr[0] "%(value)s септилион"
 msgstr[1] "%(value)s септилиона"
 
-#, python-format
-msgid "%(value).1f octillion"
-msgid_plural "%(value).1f octillion"
-msgstr[0] "%(value).1f октилион"
-msgstr[1] "%(value).1f октилиона"
-
 #, python-format
 msgid "%(value)s octillion"
 msgid_plural "%(value)s octillion"
 msgstr[0] "%(value)s октилион"
 msgstr[1] "%(value)s октилиона"
 
-#, python-format
-msgid "%(value).1f nonillion"
-msgid_plural "%(value).1f nonillion"
-msgstr[0] "%(value).1f нонилион"
-msgstr[1] "%(value).1f нонилиона"
-
 #, python-format
 msgid "%(value)s nonillion"
 msgid_plural "%(value)s nonillion"
 msgstr[0] "%(value)s нонилион"
 msgstr[1] "%(value)s нонилиона"
 
-#, python-format
-msgid "%(value).1f decillion"
-msgid_plural "%(value).1f decillion"
-msgstr[0] "%(value).1f децилион"
-msgstr[1] "%(value).1f децилиона"
-
 #, python-format
 msgid "%(value)s decillion"
 msgid_plural "%(value)s decillion"
 msgstr[0] "%(value)s децилион"
 msgstr[1] "%(value)s децилиона"
 
-#, python-format
-msgid "%(value).1f googol"
-msgid_plural "%(value).1f googol"
-msgstr[0] "%(value).1f гугол"
-msgstr[1] "%(value).1f гугола"
-
 #, python-format
 msgid "%(value)s googol"
 msgid_plural "%(value)s googol"
@@ -198,68 +176,157 @@ msgid "today"
 msgstr "днес"
 
 msgid "tomorrow"
-msgstr "Утре"
+msgstr "утре"
 
 msgid "yesterday"
 msgstr "вчера"
 
+#. Translators: delta will contain a string like '2 months' or '1 month, 2
+#. weeks'
 #, python-format
-msgctxt "naturaltime"
 msgid "%(delta)s ago"
 msgstr "преди %(delta)s"
 
-msgid "now"
-msgstr "сега"
-
-#. Translators: please keep a non-breaking space (U+00A0)
-#. between count and time unit.
-#, python-format
-msgid "a second ago"
-msgid_plural "%(count)s seconds ago"
-msgstr[0] "преди секунда"
-msgstr[1] "преди %(count)s секунди"
-
-#. Translators: please keep a non-breaking space (U+00A0)
-#. between count and time unit.
-#, python-format
-msgid "a minute ago"
-msgid_plural "%(count)s minutes ago"
-msgstr[0] "преди минута"
-msgstr[1] "преди %(count)s минути"
-
-#. Translators: please keep a non-breaking space (U+00A0)
-#. between count and time unit.
+#. Translators: please keep a non-breaking space (U+00A0) between count
+#. and time unit.
 #, python-format
 msgid "an hour ago"
 msgid_plural "%(count)s hours ago"
 msgstr[0] "преди един час"
-msgstr[1] "преди %(count)s часа"
+msgstr[1] "преди %(count)s часа"
 
+#. Translators: please keep a non-breaking space (U+00A0) between count
+#. and time unit.
 #, python-format
-msgctxt "naturaltime"
-msgid "%(delta)s from now"
-msgstr "%(delta)s от сега"
+msgid "a minute ago"
+msgid_plural "%(count)s minutes ago"
+msgstr[0] "преди минута"
+msgstr[1] "преди %(count)s минути"
 
-#. Translators: please keep a non-breaking space (U+00A0)
-#. between count and time unit.
+#. Translators: please keep a non-breaking space (U+00A0) between count
+#. and time unit.
+#, python-format
+msgid "a second ago"
+msgid_plural "%(count)s seconds ago"
+msgstr[0] "преди секунда"
+msgstr[1] "преди %(count)s секунди"
+
+msgid "now"
+msgstr "сега"
+
+#. Translators: please keep a non-breaking space (U+00A0) between count
+#. and time unit.
 #, python-format
 msgid "a second from now"
 msgid_plural "%(count)s seconds from now"
 msgstr[0] "след секунда"
-msgstr[1] "%(count)s секунди от сега"
+msgstr[1] "след %(count)s секунди"
 
-#. Translators: please keep a non-breaking space (U+00A0)
-#. between count and time unit.
+#. Translators: please keep a non-breaking space (U+00A0) between count
+#. and time unit.
 #, python-format
 msgid "a minute from now"
 msgid_plural "%(count)s minutes from now"
 msgstr[0] "след минута"
-msgstr[1] "%(count)s минути от сега"
+msgstr[1] "след %(count)s минути"
 
-#. Translators: please keep a non-breaking space (U+00A0)
-#. between count and time unit.
+#. Translators: please keep a non-breaking space (U+00A0) between count
+#. and time unit.
 #, python-format
 msgid "an hour from now"
 msgid_plural "%(count)s hours from now"
 msgstr[0] "след един час"
-msgstr[1] "%(count)s часа от сега"
+msgstr[1] "след %(count)s часа"
+
+#. Translators: delta will contain a string like '2 months' or '1 month, 2
+#. weeks'
+#, python-format
+msgid "%(delta)s from now"
+msgstr "след %(delta)s"
+
+#. Translators: 'naturaltime-past' strings will be included in '%(delta)s ago'
+#, python-format
+msgctxt "naturaltime-past"
+msgid "%(num)d year"
+msgid_plural "%(num)d years"
+msgstr[0] "%(num)d година"
+msgstr[1] "%(num)d години"
+
+#, python-format
+msgctxt "naturaltime-past"
+msgid "%(num)d month"
+msgid_plural "%(num)d months"
+msgstr[0] "%(num)d месец"
+msgstr[1] "%(num)d месеца"
+
+#, python-format
+msgctxt "naturaltime-past"
+msgid "%(num)d week"
+msgid_plural "%(num)d weeks"
+msgstr[0] "%(num)d седмица"
+msgstr[1] "%(num)d седмици"
+
+#, python-format
+msgctxt "naturaltime-past"
+msgid "%(num)d day"
+msgid_plural "%(num)d days"
+msgstr[0] "%(num)d ден"
+msgstr[1] "%(num)d дни"
+
+#, python-format
+msgctxt "naturaltime-past"
+msgid "%(num)d hour"
+msgid_plural "%(num)d hours"
+msgstr[0] "%(num)d час"
+msgstr[1] "%(num)d часа"
+
+#, python-format
+msgctxt "naturaltime-past"
+msgid "%(num)d minute"
+msgid_plural "%(num)d minutes"
+msgstr[0] "%(num)d минута"
+msgstr[1] "%(num)d минути"
+
+#. Translators: 'naturaltime-future' strings will be included in '%(delta)s
+#. from now'
+#, python-format
+msgctxt "naturaltime-future"
+msgid "%(num)d year"
+msgid_plural "%(num)d years"
+msgstr[0] "%(num)d година"
+msgstr[1] "%(num)d години"
+
+#, python-format
+msgctxt "naturaltime-future"
+msgid "%(num)d month"
+msgid_plural "%(num)d months"
+msgstr[0] "%(num)d месец"
+msgstr[1] "%(num)d месеца"
+
+#, python-format
+msgctxt "naturaltime-future"
+msgid "%(num)d week"
+msgid_plural "%(num)d weeks"
+msgstr[0] "%(num)d седмица"
+msgstr[1] "%(num)d седмици"
+
+#, python-format
+msgctxt "naturaltime-future"
+msgid "%(num)d day"
+msgid_plural "%(num)d days"
+msgstr[0] "%(num)d ден"
+msgstr[1] "%(num)d дни"
+
+#, python-format
+msgctxt "naturaltime-future"
+msgid "%(num)d hour"
+msgid_plural "%(num)d hours"
+msgstr[0] "%(num)d час"
+msgstr[1] "%(num)d часа"
+
+#, python-format
+msgctxt "naturaltime-future"
+msgid "%(num)d minute"
+msgid_plural "%(num)d minutes"
+msgstr[0] "%(num)d минута"
+msgstr[1] "%(num)d минути"
diff --git a/django/contrib/postgres/locale/bg/LC_MESSAGES/django.mo b/django/contrib/postgres/locale/bg/LC_MESSAGES/django.mo
index f4aceb9b0e7df2384596106898ea023a452ccc13..57979ba3adef063c319165036f3153def946001f 100644
GIT binary patch
delta 1074
zcmZvZOGs2v7{|}m8K0Tvl#kRr6oQgYj#-OAFrpUPo7yBr+;q|@y<;<X3M<eVu)s~w
z;KDE{f@l?k)5J9Dv<nvn=e94%+PN%(7D2yzN0Xuh-~F9)zSsXdcdmA^Ve(V8YgVwf
zV~yAn)`VTq_^=eLhZZ~u*WfYeFA$;{-h~Zt4%WaltcCAj9sCL<`~~;IU4=qChyC!G
z5R>8?n`SN^x`b$jS-1m!ffD|NZE&Ysh#q(Z?uRjW6)|bp$ypW)aT}h2ci?-t2lkf;
z(F+aO1z$iv{0!UaFB(gQILbvIJPhx{HTVG*(;!zyQ_gS8g*Xq(x8wx}pj~hp4!{h&
z2t5_lg4ZGGf;49p@#PVmh09s))9af`ScUNze=UX(9t;g)>$(Tw&hO%3oL@j+v2EQ~
znu=<j+VMVPJZj3ZXvCD415%g$XHT7!L%~5a7&7$mgje*Lfic<AYM3K!5g9b3IYL-C
ztWOX%B#n?MZ|I}JA>9o46ORjbCqjj_sgDJ9TJs5gT!ya5h#3wV!x3qQHn#hW=;&x9
z@x5@R>m0>Mj|S|>)v5WG)@y-@w#e$#BN>c1#r5?p8461~FOhZiRdjW9`Z|2w(&zIZ
z=uT9*Ya8{j5kSJA?Ah2I8XnVwqu#;LSn8nLqt$qYda4#w+M2@RDlM&;O1CF271g+`
z87rQ;S+t@x5%j>CRyp-jEvt+Z#x}`;V<J}K86Yc}e<Y{SJ=>wO<jtx@l~zmGvK9aH
zU}`~fmn17g^Q0s^-&xv6QZm%fP%7z9^_Kk52IskbBUO$XR?Ldy$&iym656H8S~F_t
zKOW~zJMvM?K;fKvWoy}(VpD`YM|~yraob}iRaPyeZk07_{ptxL=hSO%b58eoUUKrE
Ue}f+__8^-IB|;g;`AJ^!8{KzU^Z)<=

delta 540
zcmY+=KS<j_6u|L!CK^rSA7ZVE7Cq>qXyliuP|}oE9UK%3(n1k3WKa;qfQg_WM6(n{
zr^7*TRk{>He*{WZoJ7aFp%f{U;_6uJ+I}OY&<F4Ld3W61yZfDVA9R+!M}zx9w2_a=
zL$b40D?Y>;#&I2I(BKr_U=)YyM7nVdA7K`2`->REU3`y6c#Javkv_b`4v~`d1VuCx
zBiN5`FoPw`(&QAAjJq1R3{K+)Uf>fP4~e|M1x(>FrtumF@L{9KExyDM=M6TAyk$HR
z7U`wG>`~M<e!w~WfmwX^K!o-8QTsbBBzKWkvYw>BuvB=MaOS^=Q1LjSzcl}y<*5IH
zyNFEWSC{-Rs!y4pfv4tc;JG;ud^4Yem!?`jIqW68(L^$(Q(oFj4tPX(I#(zrUa#bq
z3ro3TekHB%>&1onH9ej$>WrUhXje*`SD}uWcJFLe+fVk)m2K5++K;wkPi)06g|3wE
fntmx0iS(#J^E(`Gc4h6h+>YC}6<79WBfaVm$Jksj

diff --git a/django/contrib/postgres/locale/bg/LC_MESSAGES/django.po b/django/contrib/postgres/locale/bg/LC_MESSAGES/django.po
index 4ee210ec8d..c4a0dbf4f0 100644
--- a/django/contrib/postgres/locale/bg/LC_MESSAGES/django.po
+++ b/django/contrib/postgres/locale/bg/LC_MESSAGES/django.po
@@ -1,15 +1,16 @@
 # This file is distributed under the same license as the Django package.
 #
 # Translators:
-# Todor Lubenov <tgl.sysdev@gmail.com>, 2015
+# arneatec <arneatec@gmail.com>, 2022
+# Todor Lubenov <tlubenov@gmail.com>, 2015
 # Venelin Stoykov <vkstoykov@gmail.com>, 2015
 msgid ""
 msgstr ""
 "Project-Id-Version: django\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2020-05-11 20:56+0200\n"
-"PO-Revision-Date: 2020-05-12 20:01+0000\n"
-"Last-Translator: Transifex Bot <>\n"
+"PO-Revision-Date: 2022-01-14 11:54+0000\n"
+"Last-Translator: arneatec <arneatec@gmail.com>\n"
 "Language-Team: Bulgarian (http://www.transifex.com/django/django/language/"
 "bg/)\n"
 "MIME-Version: 1.0\n"
@@ -23,23 +24,23 @@ msgstr "PostgreSQL разширения"
 
 #, python-format
 msgid "Item %(nth)s in the array did not validate:"
-msgstr ""
+msgstr "Елемент %(nth)s в масива не се валидира:"
 
 msgid "Nested arrays must have the same length."
-msgstr "Вложените масиви, трябва да имат същата дължина."
+msgstr "Вложените масиви трябва да имат еднаква дължина."
 
 msgid "Map of strings to strings/nulls"
-msgstr ""
+msgstr "Мап от стрингове към стрингове/null-ове"
 
 #, python-format
 msgid "The value of “%(key)s” is not a string or null."
-msgstr ""
+msgstr "Стойността на “%(key)s” не е стринг или null."
 
 msgid "Could not load JSON data."
-msgstr "Не можа да зареди JSON данни ."
+msgstr "Не можа да зареди JSON данни."
 
 msgid "Input must be a JSON dictionary."
-msgstr ""
+msgstr "Входните данни трябва да са JSON речник."
 
 msgid "Enter two valid values."
 msgstr "Въведете две валидни стойности."
@@ -48,7 +49,7 @@ msgid "The start of the range must not exceed the end of the range."
 msgstr "Началото на обхвата не трябва да превишава края му."
 
 msgid "Enter two whole numbers."
-msgstr "Въведете две цели числа"
+msgstr "Въведете две цели числа."
 
 msgid "Enter two numbers."
 msgstr "Въведете две числа."
@@ -106,4 +107,4 @@ msgid ""
 "Ensure that this range is completely greater than or equal to "
 "%(limit_value)s."
 msgstr ""
-"Уверете се че интервала е изцяло по-голям от или равен на %(limit_value)s."
+"Уверете се, че интервалът е изцяло по-голям от или равен на %(limit_value)s."
diff --git a/django/contrib/redirects/locale/bg/LC_MESSAGES/django.mo b/django/contrib/redirects/locale/bg/LC_MESSAGES/django.mo
index d3e35e4dc528cb6d57e39f7cc19ef56f79bfc4cd..f47e60460faabb974b75bf5192fb7cb19522501b 100644
GIT binary patch
delta 400
zcmZ9`y-UMD7zXf58$Y5rD5yAjWHlil*d+)qf(Q;Gf{4=*4pKi-$;FD3>7as>rGtz5
zH&jc(q2jF5WpNXv;^Zo>`Xt)LgD1bcCr9#rYTw$qakNbc`9L<2b%l^Y*n%Ul1Bc-g
z)ZjBz;Vaxi-jOk!SBiw(LLZ*O30%thYd8sS;1qoP>)&AZpD&fT1m7V22)eukq<{=$
z8?3%x@@F<gvHr3#&8YALzRRiD_XElV?IxE&9PbIwvbxDtV_sPtM`iIU4`X2o&LTg^
z-&`oclDW#OWl^q#<^qekM_t=>P1`Y@S?V}msWf9_4J|Vfn`;pZ#SV)rkw;k+a@_an
zTyNJpESxAtdY0B`T1$^*TXtmApz>Ze<wKgtJDl5TLiOHkdP7qWM)iMl>5aPT{{Wi&
BXEp!;

delta 394
zcmey*`Gs?WPJJi?1H)?|4hLdKMg|5BAUzXE^8)EbK$;s!ZvfJqKza|5W&zU2fb?u2
zJ`Kb|Kz=$i1H%L$T?M4ufiyQz5lDP8kQN8h%Yd{bklqIszX7B{_Pl0cFk%3j0XCc!
zNP`4HfC-4%!7PY{P$mP=d<M3OcOyB~GfGMdtn~HOCx<e+3##j<mZj#E6zdnKCKe@U
z07W-4X4Hr1Iv1rTmSpDV>AEDAq*^H$85o-C8XD*tSSlErTbUSX8yFcFa0U452Bnr|
z7Ne*$2P)Dv1gbN$GBMCL00J(b#Nra&kfOxA;+({i{30ubu++TNoXk9h;FA2x?EEqX
ho3iX;2-6`wH!*W_I#VMfmjc42A}r-tTsns(830*QQWXFI

diff --git a/django/contrib/redirects/locale/bg/LC_MESSAGES/django.po b/django/contrib/redirects/locale/bg/LC_MESSAGES/django.po
index 12ffedd058..0fc628b06c 100644
--- a/django/contrib/redirects/locale/bg/LC_MESSAGES/django.po
+++ b/django/contrib/redirects/locale/bg/LC_MESSAGES/django.po
@@ -1,6 +1,7 @@
 # This file is distributed under the same license as the Django package.
 #
 # Translators:
+# arneatec <arneatec@gmail.com>, 2022
 # Jannis Leidel <jannis@leidel.info>, 2011
 # Venelin Stoykov <vkstoykov@gmail.com>, 2015
 # vestimir <vestimir@gmail.com>, 2014
@@ -8,9 +9,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: django\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2015-10-09 17:42+0200\n"
-"PO-Revision-Date: 2017-09-19 16:40+0000\n"
-"Last-Translator: Venelin Stoykov <vkstoykov@gmail.com>\n"
+"POT-Creation-Date: 2021-01-15 09:00+0100\n"
+"PO-Revision-Date: 2022-01-14 11:55+0000\n"
+"Last-Translator: arneatec <arneatec@gmail.com>\n"
 "Language-Team: Bulgarian (http://www.transifex.com/django/django/language/"
 "bg/)\n"
 "MIME-Version: 1.0\n"
@@ -29,21 +30,21 @@ msgid "redirect from"
 msgstr "препратка от"
 
 msgid ""
-"This should be an absolute path, excluding the domain name. Example: '/"
-"events/search/'."
+"This should be an absolute path, excluding the domain name. Example: “/"
+"events/search/”."
 msgstr ""
-"Това трябва да бъде абсолютен път, без името на домейна.  Пример: '/events/"
-"search/'."
+"Това трябва да бъде абсолютен път, без името на домейна.  Пример: \"/events/"
+"search/\"."
 
 msgid "redirect to"
 msgstr "препратка към"
 
 msgid ""
-"This can be either an absolute path (as above) or a full URL starting with "
-"'http://'."
+"This can be either an absolute path (as above) or a full URL starting with a "
+"scheme such as “https://”."
 msgstr ""
-"Това може да бъде или абсолютен път (като горното) или пълен URL, започващ с "
-"'http://'."
+"Това може да бъде или абсолютен път (като горното) или пълен URL, започващ "
+"със схема, например \"https://\"."
 
 msgid "redirect"
 msgstr "препратка"
diff --git a/django/contrib/sessions/locale/bg/LC_MESSAGES/django.mo b/django/contrib/sessions/locale/bg/LC_MESSAGES/django.mo
index 574320d8f59a4b34932641c24f5129fe346eda0a..68e4b05f05447a90ff0f1b89d5f342a42a0b36ca 100644
GIT binary patch
delta 172
zcmeBY`_4Kc#4L-Ef#C-O0|OTjCo?fHm;vcLAPwR#1=4ardIOM_0n+E8;%}HHb}b6l
z4N5J`EY8f&({)KKNwrciGB7gIH89jQG*K`#v@$i*HUI)HpTy!4-H@WhyyBe1lKdho
zg~Xz~RG|7~1sfR4Aw4%SGe<8uKX>w4#((@fE^NQpbYaKE_6r*>?7gsc@)D+O01dJ;
A@c;k-

delta 203
zcmey)+Rrv2#B2s51H%sn1_mx5p2)<&pa7)j0BI0^FOZf4(kFnl43K^f6=z|d*tMuW
zMAx|}HL)Z!KTp>su_V<>!N|bSRM)^z*U((S(9p`jT-(6Vz<?{jUpFYVEVCFzow=@o
zrLLi+f}xp}iGj8O5ODb<7MJLT6eZ>r=OmWo7g;HICFbR27AyFqW~QX(DA;6yxehsC
Uu3lyyQ(FGydd7c~Co`o00I<e1sQ>@~

diff --git a/django/contrib/sessions/locale/bg/LC_MESSAGES/django.po b/django/contrib/sessions/locale/bg/LC_MESSAGES/django.po
index d4187bc51e..aeab9b8b35 100644
--- a/django/contrib/sessions/locale/bg/LC_MESSAGES/django.po
+++ b/django/contrib/sessions/locale/bg/LC_MESSAGES/django.po
@@ -1,6 +1,7 @@
 # This file is distributed under the same license as the Django package.
 #
 # Translators:
+# arneatec <arneatec@gmail.com>, 2022
 # Jannis Leidel <jannis@leidel.info>, 2011
 # vestimir <vestimir@gmail.com>, 2014
 msgid ""
@@ -8,8 +9,8 @@ msgstr ""
 "Project-Id-Version: django\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2015-01-17 11:07+0100\n"
-"PO-Revision-Date: 2017-09-19 16:40+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
+"PO-Revision-Date: 2022-01-14 11:56+0000\n"
+"Last-Translator: arneatec <arneatec@gmail.com>\n"
 "Language-Team: Bulgarian (http://www.transifex.com/django/django/language/"
 "bg/)\n"
 "MIME-Version: 1.0\n"
@@ -28,7 +29,7 @@ msgid "session data"
 msgstr "данни от сесията"
 
 msgid "expire date"
-msgstr "дата на валидност"
+msgstr "дата на изтичане на валидност"
 
 msgid "session"
 msgstr "сесия"
diff --git a/docs/releases/4.0.2.txt b/docs/releases/4.0.2.txt
index af0f728c54..c60dc68224 100644
--- a/docs/releases/4.0.2.txt
+++ b/docs/releases/4.0.2.txt
@@ -5,7 +5,8 @@ Django 4.0.2 release notes
 *February 1, 2022*
 
 Django 4.0.2 fixes two security issues with severity "medium" and several bugs
-in 4.0.1.
+in 4.0.1. Also, the latest string translations from Transifex are incorporated,
+with a special mention for Bulgarian (fully translated).
 
 Bugfixes
 ========