dm 3 mesi fa
parent
commit
45fba5517a
100 ha cambiato i file con 20425 aggiunte e 0 eliminazioni
  1. 247 0
      courses/django_kind/env/bin/Activate.ps1
  2. 70 0
      courses/django_kind/env/bin/activate
  3. 27 0
      courses/django_kind/env/bin/activate.csh
  4. 69 0
      courses/django_kind/env/bin/activate.fish
  5. 8 0
      courses/django_kind/env/bin/django-admin
  6. 8 0
      courses/django_kind/env/bin/pip
  7. 8 0
      courses/django_kind/env/bin/pip3
  8. 8 0
      courses/django_kind/env/bin/pip3.12
  9. 1 0
      courses/django_kind/env/bin/python
  10. 1 0
      courses/django_kind/env/bin/python3
  11. 1 0
      courses/django_kind/env/bin/python3.12
  12. 8 0
      courses/django_kind/env/bin/sqlformat
  13. 1106 0
      courses/django_kind/env/lib/python3.12/site-packages/Django-5.1.4.dist-info/AUTHORS
  14. 1 0
      courses/django_kind/env/lib/python3.12/site-packages/Django-5.1.4.dist-info/INSTALLER
  15. 27 0
      courses/django_kind/env/lib/python3.12/site-packages/Django-5.1.4.dist-info/LICENSE
  16. 288 0
      courses/django_kind/env/lib/python3.12/site-packages/Django-5.1.4.dist-info/LICENSE.python
  17. 101 0
      courses/django_kind/env/lib/python3.12/site-packages/Django-5.1.4.dist-info/METADATA
  18. 4540 0
      courses/django_kind/env/lib/python3.12/site-packages/Django-5.1.4.dist-info/RECORD
  19. 0 0
      courses/django_kind/env/lib/python3.12/site-packages/Django-5.1.4.dist-info/REQUESTED
  20. 5 0
      courses/django_kind/env/lib/python3.12/site-packages/Django-5.1.4.dist-info/WHEEL
  21. 2 0
      courses/django_kind/env/lib/python3.12/site-packages/Django-5.1.4.dist-info/entry_points.txt
  22. 1 0
      courses/django_kind/env/lib/python3.12/site-packages/Django-5.1.4.dist-info/top_level.txt
  23. 1 0
      courses/django_kind/env/lib/python3.12/site-packages/asgiref-3.8.1.dist-info/INSTALLER
  24. 27 0
      courses/django_kind/env/lib/python3.12/site-packages/asgiref-3.8.1.dist-info/LICENSE
  25. 246 0
      courses/django_kind/env/lib/python3.12/site-packages/asgiref-3.8.1.dist-info/METADATA
  26. 27 0
      courses/django_kind/env/lib/python3.12/site-packages/asgiref-3.8.1.dist-info/RECORD
  27. 5 0
      courses/django_kind/env/lib/python3.12/site-packages/asgiref-3.8.1.dist-info/WHEEL
  28. 1 0
      courses/django_kind/env/lib/python3.12/site-packages/asgiref-3.8.1.dist-info/top_level.txt
  29. 1 0
      courses/django_kind/env/lib/python3.12/site-packages/asgiref/__init__.py
  30. BIN
      courses/django_kind/env/lib/python3.12/site-packages/asgiref/__pycache__/__init__.cpython-312.pyc
  31. BIN
      courses/django_kind/env/lib/python3.12/site-packages/asgiref/__pycache__/compatibility.cpython-312.pyc
  32. BIN
      courses/django_kind/env/lib/python3.12/site-packages/asgiref/__pycache__/current_thread_executor.cpython-312.pyc
  33. BIN
      courses/django_kind/env/lib/python3.12/site-packages/asgiref/__pycache__/local.cpython-312.pyc
  34. BIN
      courses/django_kind/env/lib/python3.12/site-packages/asgiref/__pycache__/server.cpython-312.pyc
  35. BIN
      courses/django_kind/env/lib/python3.12/site-packages/asgiref/__pycache__/sync.cpython-312.pyc
  36. BIN
      courses/django_kind/env/lib/python3.12/site-packages/asgiref/__pycache__/testing.cpython-312.pyc
  37. BIN
      courses/django_kind/env/lib/python3.12/site-packages/asgiref/__pycache__/timeout.cpython-312.pyc
  38. BIN
      courses/django_kind/env/lib/python3.12/site-packages/asgiref/__pycache__/typing.cpython-312.pyc
  39. BIN
      courses/django_kind/env/lib/python3.12/site-packages/asgiref/__pycache__/wsgi.cpython-312.pyc
  40. 48 0
      courses/django_kind/env/lib/python3.12/site-packages/asgiref/compatibility.py
  41. 115 0
      courses/django_kind/env/lib/python3.12/site-packages/asgiref/current_thread_executor.py
  42. 128 0
      courses/django_kind/env/lib/python3.12/site-packages/asgiref/local.py
  43. 0 0
      courses/django_kind/env/lib/python3.12/site-packages/asgiref/py.typed
  44. 157 0
      courses/django_kind/env/lib/python3.12/site-packages/asgiref/server.py
  45. 613 0
      courses/django_kind/env/lib/python3.12/site-packages/asgiref/sync.py
  46. 103 0
      courses/django_kind/env/lib/python3.12/site-packages/asgiref/testing.py
  47. 118 0
      courses/django_kind/env/lib/python3.12/site-packages/asgiref/timeout.py
  48. 278 0
      courses/django_kind/env/lib/python3.12/site-packages/asgiref/typing.py
  49. 166 0
      courses/django_kind/env/lib/python3.12/site-packages/asgiref/wsgi.py
  50. 24 0
      courses/django_kind/env/lib/python3.12/site-packages/django/__init__.py
  51. 10 0
      courses/django_kind/env/lib/python3.12/site-packages/django/__main__.py
  52. BIN
      courses/django_kind/env/lib/python3.12/site-packages/django/__pycache__/__init__.cpython-312.pyc
  53. BIN
      courses/django_kind/env/lib/python3.12/site-packages/django/__pycache__/__main__.cpython-312.pyc
  54. BIN
      courses/django_kind/env/lib/python3.12/site-packages/django/__pycache__/shortcuts.cpython-312.pyc
  55. 4 0
      courses/django_kind/env/lib/python3.12/site-packages/django/apps/__init__.py
  56. BIN
      courses/django_kind/env/lib/python3.12/site-packages/django/apps/__pycache__/__init__.cpython-312.pyc
  57. BIN
      courses/django_kind/env/lib/python3.12/site-packages/django/apps/__pycache__/config.cpython-312.pyc
  58. BIN
      courses/django_kind/env/lib/python3.12/site-packages/django/apps/__pycache__/registry.cpython-312.pyc
  59. 274 0
      courses/django_kind/env/lib/python3.12/site-packages/django/apps/config.py
  60. 437 0
      courses/django_kind/env/lib/python3.12/site-packages/django/apps/registry.py
  61. 272 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/__init__.py
  62. BIN
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/__pycache__/__init__.cpython-312.pyc
  63. BIN
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/__pycache__/global_settings.cpython-312.pyc
  64. 0 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/app_template/__init__.py-tpl
  65. 3 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/app_template/admin.py-tpl
  66. 6 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/app_template/apps.py-tpl
  67. 0 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/app_template/migrations/__init__.py-tpl
  68. 3 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/app_template/models.py-tpl
  69. 3 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/app_template/tests.py-tpl
  70. 3 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/app_template/views.py-tpl
  71. 667 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/global_settings.py
  72. 629 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/__init__.py
  73. BIN
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/__pycache__/__init__.cpython-312.pyc
  74. BIN
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/af/LC_MESSAGES/django.mo
  75. 1335 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/af/LC_MESSAGES/django.po
  76. BIN
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar/LC_MESSAGES/django.mo
  77. 1389 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar/LC_MESSAGES/django.po
  78. 0 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar/__init__.py
  79. BIN
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar/__pycache__/__init__.cpython-312.pyc
  80. BIN
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar/__pycache__/formats.cpython-312.pyc
  81. 21 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar/formats.py
  82. BIN
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar_DZ/LC_MESSAGES/django.mo
  83. 1397 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar_DZ/LC_MESSAGES/django.po
  84. 0 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar_DZ/__init__.py
  85. BIN
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar_DZ/__pycache__/__init__.cpython-312.pyc
  86. BIN
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar_DZ/__pycache__/formats.cpython-312.pyc
  87. 29 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar_DZ/formats.py
  88. BIN
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ast/LC_MESSAGES/django.mo
  89. 1237 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ast/LC_MESSAGES/django.po
  90. BIN
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/az/LC_MESSAGES/django.mo
  91. 1347 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/az/LC_MESSAGES/django.po
  92. 0 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/az/__init__.py
  93. BIN
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/az/__pycache__/__init__.cpython-312.pyc
  94. BIN
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/az/__pycache__/formats.cpython-312.pyc
  95. 30 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/az/formats.py
  96. BIN
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/be/LC_MESSAGES/django.mo
  97. 1391 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/be/LC_MESSAGES/django.po
  98. BIN
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/bg/LC_MESSAGES/django.mo
  99. 1353 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/bg/LC_MESSAGES/django.po
  100. 0 0
      courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/bg/__init__.py

+ 247 - 0
courses/django_kind/env/bin/Activate.ps1

@@ -0,0 +1,247 @@
+<#
+.Synopsis
+Activate a Python virtual environment for the current PowerShell session.
+
+.Description
+Pushes the python executable for a virtual environment to the front of the
+$Env:PATH environment variable and sets the prompt to signify that you are
+in a Python virtual environment. Makes use of the command line switches as
+well as the `pyvenv.cfg` file values present in the virtual environment.
+
+.Parameter VenvDir
+Path to the directory that contains the virtual environment to activate. The
+default value for this is the parent of the directory that the Activate.ps1
+script is located within.
+
+.Parameter Prompt
+The prompt prefix to display when this virtual environment is activated. By
+default, this prompt is the name of the virtual environment folder (VenvDir)
+surrounded by parentheses and followed by a single space (ie. '(.venv) ').
+
+.Example
+Activate.ps1
+Activates the Python virtual environment that contains the Activate.ps1 script.
+
+.Example
+Activate.ps1 -Verbose
+Activates the Python virtual environment that contains the Activate.ps1 script,
+and shows extra information about the activation as it executes.
+
+.Example
+Activate.ps1 -VenvDir C:\Users\MyUser\Common\.venv
+Activates the Python virtual environment located in the specified location.
+
+.Example
+Activate.ps1 -Prompt "MyPython"
+Activates the Python virtual environment that contains the Activate.ps1 script,
+and prefixes the current prompt with the specified string (surrounded in
+parentheses) while the virtual environment is active.
+
+.Notes
+On Windows, it may be required to enable this Activate.ps1 script by setting the
+execution policy for the user. You can do this by issuing the following PowerShell
+command:
+
+PS C:\> Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
+
+For more information on Execution Policies: 
+https://go.microsoft.com/fwlink/?LinkID=135170
+
+#>
+Param(
+    [Parameter(Mandatory = $false)]
+    [String]
+    $VenvDir,
+    [Parameter(Mandatory = $false)]
+    [String]
+    $Prompt
+)
+
+<# Function declarations --------------------------------------------------- #>
+
+<#
+.Synopsis
+Remove all shell session elements added by the Activate script, including the
+addition of the virtual environment's Python executable from the beginning of
+the PATH variable.
+
+.Parameter NonDestructive
+If present, do not remove this function from the global namespace for the
+session.
+
+#>
+function global:deactivate ([switch]$NonDestructive) {
+    # Revert to original values
+
+    # The prior prompt:
+    if (Test-Path -Path Function:_OLD_VIRTUAL_PROMPT) {
+        Copy-Item -Path Function:_OLD_VIRTUAL_PROMPT -Destination Function:prompt
+        Remove-Item -Path Function:_OLD_VIRTUAL_PROMPT
+    }
+
+    # The prior PYTHONHOME:
+    if (Test-Path -Path Env:_OLD_VIRTUAL_PYTHONHOME) {
+        Copy-Item -Path Env:_OLD_VIRTUAL_PYTHONHOME -Destination Env:PYTHONHOME
+        Remove-Item -Path Env:_OLD_VIRTUAL_PYTHONHOME
+    }
+
+    # The prior PATH:
+    if (Test-Path -Path Env:_OLD_VIRTUAL_PATH) {
+        Copy-Item -Path Env:_OLD_VIRTUAL_PATH -Destination Env:PATH
+        Remove-Item -Path Env:_OLD_VIRTUAL_PATH
+    }
+
+    # Just remove the VIRTUAL_ENV altogether:
+    if (Test-Path -Path Env:VIRTUAL_ENV) {
+        Remove-Item -Path env:VIRTUAL_ENV
+    }
+
+    # Just remove VIRTUAL_ENV_PROMPT altogether.
+    if (Test-Path -Path Env:VIRTUAL_ENV_PROMPT) {
+        Remove-Item -Path env:VIRTUAL_ENV_PROMPT
+    }
+
+    # Just remove the _PYTHON_VENV_PROMPT_PREFIX altogether:
+    if (Get-Variable -Name "_PYTHON_VENV_PROMPT_PREFIX" -ErrorAction SilentlyContinue) {
+        Remove-Variable -Name _PYTHON_VENV_PROMPT_PREFIX -Scope Global -Force
+    }
+
+    # Leave deactivate function in the global namespace if requested:
+    if (-not $NonDestructive) {
+        Remove-Item -Path function:deactivate
+    }
+}
+
+<#
+.Description
+Get-PyVenvConfig parses the values from the pyvenv.cfg file located in the
+given folder, and returns them in a map.
+
+For each line in the pyvenv.cfg file, if that line can be parsed into exactly
+two strings separated by `=` (with any amount of whitespace surrounding the =)
+then it is considered a `key = value` line. The left hand string is the key,
+the right hand is the value.
+
+If the value starts with a `'` or a `"` then the first and last character is
+stripped from the value before being captured.
+
+.Parameter ConfigDir
+Path to the directory that contains the `pyvenv.cfg` file.
+#>
+function Get-PyVenvConfig(
+    [String]
+    $ConfigDir
+) {
+    Write-Verbose "Given ConfigDir=$ConfigDir, obtain values in pyvenv.cfg"
+
+    # Ensure the file exists, and issue a warning if it doesn't (but still allow the function to continue).
+    $pyvenvConfigPath = Join-Path -Resolve -Path $ConfigDir -ChildPath 'pyvenv.cfg' -ErrorAction Continue
+
+    # An empty map will be returned if no config file is found.
+    $pyvenvConfig = @{ }
+
+    if ($pyvenvConfigPath) {
+
+        Write-Verbose "File exists, parse `key = value` lines"
+        $pyvenvConfigContent = Get-Content -Path $pyvenvConfigPath
+
+        $pyvenvConfigContent | ForEach-Object {
+            $keyval = $PSItem -split "\s*=\s*", 2
+            if ($keyval[0] -and $keyval[1]) {
+                $val = $keyval[1]
+
+                # Remove extraneous quotations around a string value.
+                if ("'""".Contains($val.Substring(0, 1))) {
+                    $val = $val.Substring(1, $val.Length - 2)
+                }
+
+                $pyvenvConfig[$keyval[0]] = $val
+                Write-Verbose "Adding Key: '$($keyval[0])'='$val'"
+            }
+        }
+    }
+    return $pyvenvConfig
+}
+
+
+<# Begin Activate script --------------------------------------------------- #>
+
+# Determine the containing directory of this script
+$VenvExecPath = Split-Path -Parent $MyInvocation.MyCommand.Definition
+$VenvExecDir = Get-Item -Path $VenvExecPath
+
+Write-Verbose "Activation script is located in path: '$VenvExecPath'"
+Write-Verbose "VenvExecDir Fullname: '$($VenvExecDir.FullName)"
+Write-Verbose "VenvExecDir Name: '$($VenvExecDir.Name)"
+
+# Set values required in priority: CmdLine, ConfigFile, Default
+# First, get the location of the virtual environment, it might not be
+# VenvExecDir if specified on the command line.
+if ($VenvDir) {
+    Write-Verbose "VenvDir given as parameter, using '$VenvDir' to determine values"
+}
+else {
+    Write-Verbose "VenvDir not given as a parameter, using parent directory name as VenvDir."
+    $VenvDir = $VenvExecDir.Parent.FullName.TrimEnd("\\/")
+    Write-Verbose "VenvDir=$VenvDir"
+}
+
+# Next, read the `pyvenv.cfg` file to determine any required value such
+# as `prompt`.
+$pyvenvCfg = Get-PyVenvConfig -ConfigDir $VenvDir
+
+# Next, set the prompt from the command line, or the config file, or
+# just use the name of the virtual environment folder.
+if ($Prompt) {
+    Write-Verbose "Prompt specified as argument, using '$Prompt'"
+}
+else {
+    Write-Verbose "Prompt not specified as argument to script, checking pyvenv.cfg value"
+    if ($pyvenvCfg -and $pyvenvCfg['prompt']) {
+        Write-Verbose "  Setting based on value in pyvenv.cfg='$($pyvenvCfg['prompt'])'"
+        $Prompt = $pyvenvCfg['prompt'];
+    }
+    else {
+        Write-Verbose "  Setting prompt based on parent's directory's name. (Is the directory name passed to venv module when creating the virtual environment)"
+        Write-Verbose "  Got leaf-name of $VenvDir='$(Split-Path -Path $venvDir -Leaf)'"
+        $Prompt = Split-Path -Path $venvDir -Leaf
+    }
+}
+
+Write-Verbose "Prompt = '$Prompt'"
+Write-Verbose "VenvDir='$VenvDir'"
+
+# Deactivate any currently active virtual environment, but leave the
+# deactivate function in place.
+deactivate -nondestructive
+
+# Now set the environment variable VIRTUAL_ENV, used by many tools to determine
+# that there is an activated venv.
+$env:VIRTUAL_ENV = $VenvDir
+
+if (-not $Env:VIRTUAL_ENV_DISABLE_PROMPT) {
+
+    Write-Verbose "Setting prompt to '$Prompt'"
+
+    # Set the prompt to include the env name
+    # Make sure _OLD_VIRTUAL_PROMPT is global
+    function global:_OLD_VIRTUAL_PROMPT { "" }
+    Copy-Item -Path function:prompt -Destination function:_OLD_VIRTUAL_PROMPT
+    New-Variable -Name _PYTHON_VENV_PROMPT_PREFIX -Description "Python virtual environment prompt prefix" -Scope Global -Option ReadOnly -Visibility Public -Value $Prompt
+
+    function global:prompt {
+        Write-Host -NoNewline -ForegroundColor Green "($_PYTHON_VENV_PROMPT_PREFIX) "
+        _OLD_VIRTUAL_PROMPT
+    }
+    $env:VIRTUAL_ENV_PROMPT = $Prompt
+}
+
+# Clear PYTHONHOME
+if (Test-Path -Path Env:PYTHONHOME) {
+    Copy-Item -Path Env:PYTHONHOME -Destination Env:_OLD_VIRTUAL_PYTHONHOME
+    Remove-Item -Path Env:PYTHONHOME
+}
+
+# Add the venv to the PATH
+Copy-Item -Path Env:PATH -Destination Env:_OLD_VIRTUAL_PATH
+$Env:PATH = "$VenvExecDir$([System.IO.Path]::PathSeparator)$Env:PATH"

+ 70 - 0
courses/django_kind/env/bin/activate

@@ -0,0 +1,70 @@
+# This file must be used with "source bin/activate" *from bash*
+# You cannot run it directly
+
+deactivate () {
+    # reset old environment variables
+    if [ -n "${_OLD_VIRTUAL_PATH:-}" ] ; then
+        PATH="${_OLD_VIRTUAL_PATH:-}"
+        export PATH
+        unset _OLD_VIRTUAL_PATH
+    fi
+    if [ -n "${_OLD_VIRTUAL_PYTHONHOME:-}" ] ; then
+        PYTHONHOME="${_OLD_VIRTUAL_PYTHONHOME:-}"
+        export PYTHONHOME
+        unset _OLD_VIRTUAL_PYTHONHOME
+    fi
+
+    # Call hash to forget past commands. Without forgetting
+    # past commands the $PATH changes we made may not be respected
+    hash -r 2> /dev/null
+
+    if [ -n "${_OLD_VIRTUAL_PS1:-}" ] ; then
+        PS1="${_OLD_VIRTUAL_PS1:-}"
+        export PS1
+        unset _OLD_VIRTUAL_PS1
+    fi
+
+    unset VIRTUAL_ENV
+    unset VIRTUAL_ENV_PROMPT
+    if [ ! "${1:-}" = "nondestructive" ] ; then
+    # Self destruct!
+        unset -f deactivate
+    fi
+}
+
+# unset irrelevant variables
+deactivate nondestructive
+
+# on Windows, a path can contain colons and backslashes and has to be converted:
+if [ "${OSTYPE:-}" = "cygwin" ] || [ "${OSTYPE:-}" = "msys" ] ; then
+    # transform D:\path\to\venv to /d/path/to/venv on MSYS
+    # and to /cygdrive/d/path/to/venv on Cygwin
+    export VIRTUAL_ENV=$(cygpath /home/dm/projects/codewars/courses/django_kind/env)
+else
+    # use the path as-is
+    export VIRTUAL_ENV=/home/dm/projects/codewars/courses/django_kind/env
+fi
+
+_OLD_VIRTUAL_PATH="$PATH"
+PATH="$VIRTUAL_ENV/"bin":$PATH"
+export PATH
+
+# unset PYTHONHOME if set
+# this will fail if PYTHONHOME is set to the empty string (which is bad anyway)
+# could use `if (set -u; : $PYTHONHOME) ;` in bash
+if [ -n "${PYTHONHOME:-}" ] ; then
+    _OLD_VIRTUAL_PYTHONHOME="${PYTHONHOME:-}"
+    unset PYTHONHOME
+fi
+
+if [ -z "${VIRTUAL_ENV_DISABLE_PROMPT:-}" ] ; then
+    _OLD_VIRTUAL_PS1="${PS1:-}"
+    PS1='(env) '"${PS1:-}"
+    export PS1
+    VIRTUAL_ENV_PROMPT='(env) '
+    export VIRTUAL_ENV_PROMPT
+fi
+
+# Call hash to forget past commands. Without forgetting
+# past commands the $PATH changes we made may not be respected
+hash -r 2> /dev/null

+ 27 - 0
courses/django_kind/env/bin/activate.csh

@@ -0,0 +1,27 @@
+# This file must be used with "source bin/activate.csh" *from csh*.
+# You cannot run it directly.
+
+# Created by Davide Di Blasi <davidedb@gmail.com>.
+# Ported to Python 3.3 venv by Andrew Svetlov <andrew.svetlov@gmail.com>
+
+alias deactivate 'test $?_OLD_VIRTUAL_PATH != 0 && setenv PATH "$_OLD_VIRTUAL_PATH" && unset _OLD_VIRTUAL_PATH; rehash; test $?_OLD_VIRTUAL_PROMPT != 0 && set prompt="$_OLD_VIRTUAL_PROMPT" && unset _OLD_VIRTUAL_PROMPT; unsetenv VIRTUAL_ENV; unsetenv VIRTUAL_ENV_PROMPT; test "\!:*" != "nondestructive" && unalias deactivate'
+
+# Unset irrelevant variables.
+deactivate nondestructive
+
+setenv VIRTUAL_ENV /home/dm/projects/codewars/courses/django_kind/env
+
+set _OLD_VIRTUAL_PATH="$PATH"
+setenv PATH "$VIRTUAL_ENV/"bin":$PATH"
+
+
+set _OLD_VIRTUAL_PROMPT="$prompt"
+
+if (! "$?VIRTUAL_ENV_DISABLE_PROMPT") then
+    set prompt = '(env) '"$prompt"
+    setenv VIRTUAL_ENV_PROMPT '(env) '
+endif
+
+alias pydoc python -m pydoc
+
+rehash

+ 69 - 0
courses/django_kind/env/bin/activate.fish

@@ -0,0 +1,69 @@
+# This file must be used with "source <venv>/bin/activate.fish" *from fish*
+# (https://fishshell.com/). You cannot run it directly.
+
+function deactivate  -d "Exit virtual environment and return to normal shell environment"
+    # reset old environment variables
+    if test -n "$_OLD_VIRTUAL_PATH"
+        set -gx PATH $_OLD_VIRTUAL_PATH
+        set -e _OLD_VIRTUAL_PATH
+    end
+    if test -n "$_OLD_VIRTUAL_PYTHONHOME"
+        set -gx PYTHONHOME $_OLD_VIRTUAL_PYTHONHOME
+        set -e _OLD_VIRTUAL_PYTHONHOME
+    end
+
+    if test -n "$_OLD_FISH_PROMPT_OVERRIDE"
+        set -e _OLD_FISH_PROMPT_OVERRIDE
+        # prevents error when using nested fish instances (Issue #93858)
+        if functions -q _old_fish_prompt
+            functions -e fish_prompt
+            functions -c _old_fish_prompt fish_prompt
+            functions -e _old_fish_prompt
+        end
+    end
+
+    set -e VIRTUAL_ENV
+    set -e VIRTUAL_ENV_PROMPT
+    if test "$argv[1]" != "nondestructive"
+        # Self-destruct!
+        functions -e deactivate
+    end
+end
+
+# Unset irrelevant variables.
+deactivate nondestructive
+
+set -gx VIRTUAL_ENV /home/dm/projects/codewars/courses/django_kind/env
+
+set -gx _OLD_VIRTUAL_PATH $PATH
+set -gx PATH "$VIRTUAL_ENV/"bin $PATH
+
+# Unset PYTHONHOME if set.
+if set -q PYTHONHOME
+    set -gx _OLD_VIRTUAL_PYTHONHOME $PYTHONHOME
+    set -e PYTHONHOME
+end
+
+if test -z "$VIRTUAL_ENV_DISABLE_PROMPT"
+    # fish uses a function instead of an env var to generate the prompt.
+
+    # Save the current fish_prompt function as the function _old_fish_prompt.
+    functions -c fish_prompt _old_fish_prompt
+
+    # With the original prompt function renamed, we can override with our own.
+    function fish_prompt
+        # Save the return status of the last command.
+        set -l old_status $status
+
+        # Output the venv prompt; color taken from the blue of the Python logo.
+        printf "%s%s%s" (set_color 4B8BBE) '(env) ' (set_color normal)
+
+        # Restore the return status of the previous command.
+        echo "exit $old_status" | .
+        # Output the original/"old" prompt.
+        _old_fish_prompt
+    end
+
+    set -gx _OLD_FISH_PROMPT_OVERRIDE "$VIRTUAL_ENV"
+    set -gx VIRTUAL_ENV_PROMPT '(env) '
+end

+ 8 - 0
courses/django_kind/env/bin/django-admin

@@ -0,0 +1,8 @@
+#!/home/dm/projects/codewars/courses/django_kind/env/bin/python3
+# -*- coding: utf-8 -*-
+import re
+import sys
+from django.core.management import execute_from_command_line
+if __name__ == '__main__':
+    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
+    sys.exit(execute_from_command_line())

+ 8 - 0
courses/django_kind/env/bin/pip

@@ -0,0 +1,8 @@
+#!/home/dm/projects/codewars/courses/django_kind/env/bin/python3
+# -*- coding: utf-8 -*-
+import re
+import sys
+from pip._internal.cli.main import main
+if __name__ == '__main__':
+    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
+    sys.exit(main())

+ 8 - 0
courses/django_kind/env/bin/pip3

@@ -0,0 +1,8 @@
+#!/home/dm/projects/codewars/courses/django_kind/env/bin/python3
+# -*- coding: utf-8 -*-
+import re
+import sys
+from pip._internal.cli.main import main
+if __name__ == '__main__':
+    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
+    sys.exit(main())

+ 8 - 0
courses/django_kind/env/bin/pip3.12

@@ -0,0 +1,8 @@
+#!/home/dm/projects/codewars/courses/django_kind/env/bin/python3
+# -*- coding: utf-8 -*-
+import re
+import sys
+from pip._internal.cli.main import main
+if __name__ == '__main__':
+    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
+    sys.exit(main())

+ 1 - 0
courses/django_kind/env/bin/python

@@ -0,0 +1 @@
+python3

+ 1 - 0
courses/django_kind/env/bin/python3

@@ -0,0 +1 @@
+/usr/bin/python3

+ 1 - 0
courses/django_kind/env/bin/python3.12

@@ -0,0 +1 @@
+python3

+ 8 - 0
courses/django_kind/env/bin/sqlformat

@@ -0,0 +1,8 @@
+#!/home/dm/projects/codewars/courses/django_kind/env/bin/python3
+# -*- coding: utf-8 -*-
+import re
+import sys
+from sqlparse.__main__ import main
+if __name__ == '__main__':
+    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
+    sys.exit(main())

+ 1106 - 0
courses/django_kind/env/lib/python3.12/site-packages/Django-5.1.4.dist-info/AUTHORS

@@ -0,0 +1,1106 @@
+Django was originally created in late 2003 at World Online, the web division
+of the Lawrence Journal-World newspaper in Lawrence, Kansas.
+
+Here is an inevitably incomplete list of MUCH-APPRECIATED CONTRIBUTORS --
+people who have submitted patches, reported bugs, added translations, helped
+answer newbie questions, and generally made Django that much better:
+
+    Aaron Cannon <cannona@fireantproductions.com>
+    Aaron Linville <aaron@linville.org>
+    Aaron Swartz <http://www.aaronsw.com/>
+    Aaron T. Myers <atmyers@gmail.com>
+    Abeer Upadhyay <ab.esquarer@gmail.com>
+    Abhijeet Viswa <abhijeetviswa@gmail.com>
+    Abhinav Patil <https://github.com/ubadub/>
+    Abhinav Yadav <abhinav.sny.2002+django@gmail.com>
+    Abhishek Gautam <abhishekg1128@yahoo.com>
+    Abhyudai <https://github.com/abhiabhi94>
+    Adam Allred <adam.w.allred@gmail.com>
+    Adam Bogdał <adam@bogdal.pl>
+    Adam Donaghy
+    Adam Johnson <https://github.com/adamchainz>
+    Adam Malinowski <https://adammalinowski.co.uk/>
+    Adam Vandenberg
+    Adam Zapletal <https://adamzap.com/>
+    Ade Lee <alee@redhat.com>
+    Adiyat Mubarak <adiyatmubarak@gmail.com>
+    Adnan Umer <u.adnan@outlook.com>
+    Arslan Noor <arslannoorpansota@gmail.com>
+    Adrian Holovaty <adrian@holovaty.com>
+    Adrian Torres <atorresj@redhat.com>
+    Adrien Lemaire <lemaire.adrien@gmail.com>
+    Afonso Fernández Nogueira <fonzzo.django@gmail.com>
+    AgarFu <heaven@croasanaso.sytes.net>
+    Ahmad Alhashemi <trans@ahmadh.com>
+    Ahmad Al-Ibrahim
+    Ahmed Eltawela <https://github.com/ahmedabt>
+    ajs <adi@sieker.info>
+    Akash Agrawal <akashrocksha@gmail.com>
+    Akash Kumar Sen <akashkumarsen4@gmail.com>
+    Akis Kesoglou <akiskesoglou@gmail.com>
+    Aksel Ethem <aksel.ethem@gmail.com>
+    Akshesh Doshi <aksheshdoshi+django@gmail.com>
+    alang@bright-green.com
+    Alasdair Nicol <https://al.sdair.co.uk/>
+    Albert Defler <albert.defler@gmail.com>
+    Albert Wang <https://github.com/albertyw/>
+    Alcides Fonseca
+    Aldian Fazrihady <mobile@aldian.net>
+    Alejandro García Ruiz de Oteiza <https://github.com/AlexOteiza>
+    Aleksander Milinkevich <milinsoft@gmail.com>
+    Aleksandra Sendecka <asendecka@hauru.eu>
+    Aleksi Häkli <aleksi.hakli@iki.fi>
+    Alex Dutton <django@alexdutton.co.uk>
+    Alexander Lazarević <laza@e11bits.com>
+    Alexander Myodov <alex@myodov.com>
+    Alexandr Tatarinov <tatarinov.dev@gmail.com>
+    Alex Aktsipetrov <alex.akts@gmail.com>
+    Alex Becker <https://alexcbecker.net/>
+    Alex Couper <http://alexcouper.com/>
+    Alex Dedul
+    Alex Gaynor <alex.gaynor@gmail.com>
+    Alex Hill <alex@hill.net.au>
+    Alex Ogier <alex.ogier@gmail.com>
+    Alex Robbins <alexander.j.robbins@gmail.com>
+    Alexey Boriskin <alex@boriskin.me>
+    Alexey Tsivunin <most-208@yandex.ru>
+    Ali Vakilzade <ali@vakilzade.com>
+    Aljaž Košir <aljazkosir5@gmail.com>
+    Aljosa Mohorovic <aljosa.mohorovic@gmail.com>
+    Alokik Vijay <alokik.roe@gmail.com>
+    Amir Karimi <amk9978@gmail.com>
+    Amit Chakradeo <https://amit.chakradeo.net/>
+    Amit Ramon <amit.ramon@gmail.com>
+    Amit Upadhyay <http://www.amitu.com/blog/>
+    A. Murat Eren <meren@pardus.org.tr>
+    Ana Belen Sarabia <belensarabia@gmail.com>
+    Ana Krivokapic <https://github.com/infraredgirl>
+    Andi Albrecht <albrecht.andi@gmail.com>
+    André Ericson <de.ericson@gmail.com>
+    Andrei Kulakov <andrei.avk@gmail.com>
+    Andreas
+    Andreas Mock <andreas.mock@web.de>
+    Andreas Pelme <andreas@pelme.se>
+    Andrés Torres Marroquín <andres.torres.marroquin@gmail.com>
+    Andrew Brehaut <https://brehaut.net/blog>
+    Andrew Clark <amclark7@gmail.com>
+    Andrew Durdin <adurdin@gmail.com>
+    Andrew Godwin <andrew@aeracode.org>
+    Andrew Miller <info+django@akmiller.co.uk>
+    Andrew Pinkham <http://AndrewsForge.com>
+    Andrews Medina <andrewsmedina@gmail.com>
+    Andrew Northall <andrew@northall.me.uk>
+    Andriy Sokolovskiy <me@asokolovskiy.com>
+    Andy Chosak <andy@chosak.org>
+    Andy Dustman <farcepest@gmail.com>
+    Andy Gayton <andy-django@thecablelounge.com>
+    andy@jadedplanet.net
+    Anssi Kääriäinen <akaariai@gmail.com>
+    ant9000@netwise.it
+    Anthony Briggs <anthony.briggs@gmail.com>
+    Anthony Wright <ryow.college@gmail.com>
+    Antoine Chéneau <antoine.cheneau@outlook.com>
+    Anton Samarchyan <desecho@gmail.com>
+    Antoni Aloy
+    Antonio Cavedoni <http://cavedoni.com/>
+    Antonis Christofides <anthony@itia.ntua.gr>
+    Antti Haapala <antti@industrialwebandmagic.com>
+    Antti Kaihola <http://djangopeople.net/akaihola/>
+    Anubhav Joshi <anubhav9042@gmail.com>
+    Anvesh Mishra <anveshgreat11@gmail.com>
+    Anže Pečar <anze@pecar.me>
+    Aram Dulyan
+    arien <regexbot@gmail.com>
+    Armin Ronacher
+    Aron Podrigal <aronp@guaranteedplus.com>
+    Arsalan Ghassemi <arsalan.ghassemi@gmail.com>
+    Artem Gnilov <boobsd@gmail.com>
+    Arthur <avandorp@gmail.com>
+    Arthur Jovart <arthur@jovart.com>
+    Arthur Koziel <http://arthurkoziel.com>
+    Arthur Moreira <moreirarthur96@gmail.com>
+    Arthur Rio <arthur.rio44@gmail.com>
+    Arvis Bickovskis <viestards.lists@gmail.com>
+    Arya Khaligh <bartararya@gmail.com>
+    Aryeh Leib Taurog <http://www.aryehleib.com/>
+    A S Alam <aalam@users.sf.net>
+    Asif Saif Uddin <auvipy@gmail.com>
+    atlithorn <atlithorn@gmail.com>
+    Audrey Roy <http://audreymroy.com/>
+    av0000@mail.ru
+    Axel Haustant <noirbizarre@gmail.com>
+    Aymeric Augustin <aymeric.augustin@m4x.org>
+    Bahadır Kandemir <bahadir@pardus.org.tr>
+    Baishampayan Ghose
+    Baptiste Mispelon <bmispelon@gmail.com>
+    Barry Pederson <bp@barryp.org>
+    Bartolome Sanchez Salado <i42sasab@uco.es>
+    Barton Ip <notbartonip@gmail.com>
+    Bartosz Grabski <bartosz.grabski@gmail.com>
+    Bashar Al-Abdulhadi
+    Bastian Kleineidam <calvin@debian.org>
+    Batiste Bieler <batiste.bieler@gmail.com>
+    Batman
+    Batuhan Taskaya <batuhanosmantaskaya@gmail.com>
+    Baurzhan Ismagulov <ibr@radix50.net>
+    Ben Dean Kawamura <ben.dean.kawamura@gmail.com>
+    Ben Firshman <ben@firshman.co.uk>
+    Ben Godfrey <http://aftnn.org>
+    Benjamin Wohlwend <piquadrat@gmail.com>
+    Ben Khoo <khoobks@westnet.com.au>
+    Ben Lomax <lomax.on.the.run@gmail.com>
+    Ben Slavin <benjamin.slavin@gmail.com>
+    Ben Sturmfels <ben@sturm.com.au>
+    Berker Peksag <berker.peksag@gmail.com>
+    Bernd Schlapsi
+    Bernhard Essl <me@bernhardessl.com>
+    berto
+    Bhuvnesh Sharma <bhuvnesh875@gmail.com>
+    Bill Fenner <fenner@gmail.com>
+    Bjørn Stabell <bjorn@exoweb.net>
+    Bo Marchman <bo.marchman@gmail.com>
+    Bogdan Mateescu
+    Bojan Mihelac <bmihelac@mihelac.org>
+    Bouke Haarsma <bouke@haarsma.eu>
+    Božidar Benko <bbenko@gmail.com>
+    Brad Melin <melinbrad@gmail.com>
+    Brandon Chinn <https://brandonchinn178.github.io/>
+    Brant Harris
+    Brendan Hayward <brendanhayward85@gmail.com>
+    Brendan Quinn <brendan@cluefulmedia.com>
+    Brenton Simpson <http://theillustratedlife.com>
+    Brett Cannon <brett@python.org>
+    Brett Hoerner <bretthoerner@bretthoerner.com>
+    Brian Beck <http://blog.brianbeck.com/>
+    Brian Fabian Crain <http://www.bfc.do/>
+    Brian Harring <ferringb@gmail.com>
+    Brian Helba <brian.helba@kitware.com>
+    Brian Ray <http://brianray.chipy.org/>
+    Brian Rosner <brosner@gmail.com>
+    Bruce Kroeze <https://coderseye.com/>
+    Bruno Alla <alla.brunoo@gmail.com>
+    Bruno Renié <buburno@gmail.com>
+    brut.alll@gmail.com
+    Bryan Chow <bryan at verdjn dot com>
+    Bryan Veloso <bryan@revyver.com>
+    bthomas
+    btoll@bestweb.net
+    C8E
+    Caio Ariede <caio.ariede@gmail.com>
+    Calvin Spealman <ironfroggy@gmail.com>
+    Cameron Curry
+    Cameron Knight (ckknight)
+    Can Burak Çilingir <canburak@cs.bilgi.edu.tr>
+    Can Sarıgöl <ertugrulsarigol@gmail.com>
+    Carl Meyer <carl@oddbird.net>
+    Carles Pina i Estany <carles@pina.cat>
+    Carlos Eduardo de Paula <carlosedp@gmail.com>
+    Carlos Matías de la Torre <cmdelatorre@gmail.com>
+    Carlton Gibson <carlton.gibson@noumenal.es>
+    cedric@terramater.net
+    Chad Whitman <chad.whitman@icloud.com>
+    ChaosKCW
+    Charlie Leifer <coleifer@gmail.com>
+    charly.wilhelm@gmail.com
+    Chason Chaffin <chason@gmail.com>
+    Cheng Zhang
+    Chinmoy Chakraborty <chinmoy12c@gmail.com>
+    Chris Adams
+    Chris Beaven <smileychris@gmail.com>
+    Chris Bennett <chrisrbennett@yahoo.com>
+    Chris Cahoon <chris.cahoon@gmail.com>
+    Chris Chamberlin <dja@cdc.msbx.net>
+    Chris Jerdonek
+    Chris Jones <chris@brack3t.com>
+    Chris Lamb <chris@chris-lamb.co.uk>
+    Chris Streeter <chris@chrisstreeter.com>
+    Christian Barcenas <christian@cbarcenas.com>
+    Christian Metts
+    Christian Oudard <christian.oudard@gmail.com>
+    Christian Tanzer <tanzer@swing.co.at>
+    Christoffer Sjöbergsson
+    Christophe Pettus <xof@thebuild.com>
+    Christopher Adams <http://christopheradams.info>
+    Christopher Babiak <chrisbabiak@gmail.com>
+    Christopher Lenz <https://www.cmlenz.net/>
+    Christoph Mędrela <chris.medrela@gmail.com>
+    Chris Wagner <cw264701@ohio.edu>
+    Chris Wesseling <Chris.Wesseling@cwi.nl>
+    Chris Wilson <chris+github@qwirx.com>
+    Ciaran McCormick <ciaran@ciaranmccormick.com>
+    Claude Paroz <claude@2xlibre.net>
+    Clint Ecker
+    colin@owlfish.com
+    Colin Wood <cwood06@gmail.com>
+    Collin Anderson <cmawebsite@gmail.com>
+    Collin Grady <collin@collingrady.com>
+    Colton Hicks <coltonbhicks@gmail.com>
+    Craig Blaszczyk <masterjakul@gmail.com>
+    crankycoder@gmail.com
+    Curtis Maloney (FunkyBob) <curtis@tinbrain.net>
+    dackze+django@gmail.com
+    Dagur Páll Ammendrup <dagurp@gmail.com>
+    Dane Springmeyer
+    Dan Fairs <dan@fezconsulting.com>
+    Daniel Alves Barbosa de Oliveira Vaz <danielvaz@gmail.com>
+    Daniel Duan <DaNmarner@gmail.com>
+    Daniele Procida <daniele@vurt.org>
+    Daniel Fairhead <danthedeckie@gmail.com>
+    Daniel Greenfeld
+    dAniel hAhler
+    Daniel Jilg <daniel@breakthesystem.org>
+    Daniel Lindsley <daniel@toastdriven.com>
+    Daniel Poelzleithner <https://poelzi.org/>
+    Daniel Pyrathon <pirosb3@gmail.com>
+    Daniel Roseman <http://roseman.org.uk/>
+    Daniel Tao <https://philosopherdeveloper.com/>
+    Daniel Wiesmann <daniel.wiesmann@gmail.com>
+    Danilo Bargen
+    Dan Johnson <danj.py@gmail.com>
+    Dan Palmer <dan@danpalmer.me>
+    Dan Poirier <poirier@pobox.com>
+    Dan Stephenson <http://dan.io/>
+    Dan Watson <http://danwatson.net/>
+    dave@thebarproject.com
+    David Ascher <https://ascher.ca/>
+    David Avsajanishvili <avsd05@gmail.com>
+    David Blewett <david@dawninglight.net>
+    David Brenneman <http://davidbrenneman.com>
+    David Cramer <dcramer@gmail.com>
+    David Danier <david.danier@team23.de>
+    David Eklund
+    David Foster <david@dafoster.net>
+    David Gouldin <dgouldin@gmail.com>
+    david@kazserve.org
+    David Krauth
+    David Larlet <https://larlet.fr/david/>
+    David Reynolds <david@reynoldsfamily.org.uk>
+    David Sanders <dsanders11@ucsbalum.com>
+    David Schein
+    David Tulig <david.tulig@gmail.com>
+    David Winterbottom <david.winterbottom@gmail.com>
+    David Wobrock <david.wobrock@gmail.com>
+    Davide Ceretti <dav.ceretti@gmail.com>
+    Deep L. Sukhwani <deepsukhwani@gmail.com>
+    Deepak Thukral <deep.thukral@gmail.com>
+    Denis Kuzmichyov <kuzmichyov@gmail.com>
+    Dennis Schwertel <dennisschwertel@gmail.com>
+    Derek Willis <http://blog.thescoop.org/>
+    Deric Crago <deric.crago@gmail.com>
+    deric@monowerks.com
+    Deryck Hodge <http://www.devurandom.org/>
+    Dimitris Glezos <dimitris@glezos.com>
+    Dirk Datzert <dummy@habmalnefrage.de>
+    Dirk Eschler <dirk.eschler@gmx.net>
+    Dmitri Fedortchenko <zeraien@gmail.com>
+    Dmitry Jemerov <intelliyole@gmail.com>
+    dne@mayonnaise.net
+    Dolan Antenucci <antenucci.d@gmail.com>
+    Donald Harvey <donald@donaldharvey.co.uk>
+    Donald Stufft <donald@stufft.io>
+    Don Spaulding <donspauldingii@gmail.com>
+    Doug Beck <doug@douglasbeck.com>
+    Doug Napoleone <doug@dougma.com>
+    dready <wil@mojipage.com>
+    Durval Carvalho de Souza <dudurval2@gmail.com>
+    dusk@woofle.net
+    Dustyn Gibson <miigotu@gmail.com>
+    Ed Morley <https://github.com/edmorley>
+    Egidijus Macijauskas <e.macijauskas@outlook.com>
+    eibaan@gmail.com
+    elky <http://elky.me/>
+    Emmanuelle Delescolle <https://github.com/nanuxbe>
+    Emil Stenström <em@kth.se>
+    enlight
+    Enrico <rico.bl@gmail.com>
+    Eric Boersma <eric.boersma@gmail.com>
+    Eric Brandwein <brandweineric@gmail.com>
+    Eric Floehr <eric@intellovations.com>
+    Eric Florenzano <floguy@gmail.com>
+    Eric Holscher <http://ericholscher.com>
+    Eric Moritz <http://eric.themoritzfamily.com/>
+    Eric Palakovich Carr <carreric@gmail.com>
+    Erik Karulf <erik@karulf.com>
+    Erik Romijn <django@solidlinks.nl>
+    eriks@win.tue.nl
+    Erin Kelly <erin.ch.kelly@gmail.com>
+    Erwin Junge <erwin@junge.nl>
+    Esdras Beleza <linux@esdrasbeleza.com>
+    Espen Grindhaug <http://grindhaug.org/>
+    Étienne Beaulé <beauleetienne0@gmail.com>
+    Eugene Lazutkin <http://lazutkin.com/blog/>
+    Evan Grim <https://github.com/egrim>
+    Fabian Büchler <fabian.buechler@inoqo.com>
+    Fabian Braun <fsbraun@gmx.de>
+    Fabrice Aneche <akh@nobugware.com>
+    Faishal Manzar <https://github.com/faishal882>
+    Farhaan Bukhsh <farhaan.bukhsh@gmail.com>
+    favo@exoweb.net
+    fdr <drfarina@gmail.com>
+    Federico Capoano <nemesis@ninux.org>
+    Felipe Lee <felipe.lee.garcia@gmail.com>
+    Filip Noetzel <http://filip.noetzel.co.uk/>
+    Filip Wasilewski <filip.wasilewski@gmail.com>
+    Finn Gruwier Larsen <finn@gruwier.dk>
+    Fiza Ashraf <fizaashraf37@gmail.com>
+    Flávio Juvenal da Silva Junior <flavio@vinta.com.br>
+    flavio.curella@gmail.com
+    Florian Apolloner <florian@apolloner.eu>
+    Florian Demmer <fdemmer@gmail.com>
+    Florian Moussous <florian.moussous@gmail.com>
+    fnaimi66 <https://github.com/fnaimi66>
+    Fran Hrženjak <fran.hrzenjak@gmail.com>
+    Francesco Panico <panico.francesco@gmail.com>
+    Francisco Albarran Cristobal <pahko.xd@gmail.com>
+    Francisco Couzo <franciscouzo@gmail.com>
+    François Freitag <mail@franek.fr>
+    Frank Tegtmeyer <fte@fte.to>
+    Frank Wierzbicki
+    Frank Wiles <frank@revsys.com>
+    František Malina <https://unilexicon.com/fm/>
+    Fraser Nevett <mail@nevett.org>
+    Gabriel Grant <g@briel.ca>
+    Gabriel Hurley <gabriel@strikeawe.com>
+    gandalf@owca.info
+    Garry Lawrence
+    Garry Polley <garrympolley@gmail.com>
+    Garth Kidd <http://www.deadlybloodyserious.com/>
+    Gary Wilson <gary.wilson@gmail.com>
+    Gasper Koren
+    Gasper Zejn <zejn@kiberpipa.org>
+    Gav O'Connor <https://github.com/Scalamoosh>
+    Gavin Wahl <gavinwahl@gmail.com>
+    Ge Hanbin <xiaomiba0904@gmail.com>
+    geber@datacollect.com
+    Geert Vanderkelen
+    George Karpenkov <george@metaworld.ru>
+    George Song <george@damacy.net>
+    George Vilches <gav@thataddress.com>
+    George Y. Kussumoto <georgeyk.dev@gmail.com>
+    Georg "Hugo" Bauer <gb@hugo.westfalen.de>
+    Georgi Stanojevski <glisha@gmail.com>
+    Gerardo Orozco <gerardo.orozco.mosqueda@gmail.com>
+    Gil Gonçalves <lursty@gmail.com>
+    Girish Kumar <girishkumarkh@gmail.com>
+    Girish Sontakke <girishsontakke7@gmail.com>
+    Gisle Aas <gisle@aas.no>
+    Glenn Maynard <glenn@zewt.org>
+    glin@seznam.cz
+    GomoX <gomo@datafull.com>
+    Gonzalo Saavedra <gonzalosaavedra@gmail.com>
+    Gopal Narayanan <gopastro@gmail.com>
+    Graham Carlyle <graham.carlyle@maplecroft.net>
+    Grant Jenks <contact@grantjenks.com>
+    Greg Chapple <gregchapple1@gmail.com>
+    Greg Twohig
+    Gregor Allensworth <greg.allensworth@gmail.com>
+    Gregor Müllegger <gregor@muellegger.de>
+    Grigory Fateyev <greg@dial.com.ru>
+    Grzegorz Ślusarek <grzegorz.slusarek@gmail.com>
+    Guilherme Mesquita Gondim <semente@taurinus.org>
+    Guillaume Pannatier <guillaume.pannatier@gmail.com>
+    Gustavo Picon
+    hambaloney
+    Hang Park <hangpark@kaist.ac.kr>
+    Hannes Ljungberg <hannes.ljungberg@gmail.com>
+    Hannes Struß <x@hannesstruss.de>
+    Hao Dong <https://github.com/RelaxedDong>
+    Harm Geerts <hgeerts@gmail.com>
+    Hasan Ramezani <hasan.r67@gmail.com>
+    Hawkeye
+    Helen Sherwood-Taylor <helen@rrdlabs.co.uk>
+    Henrique Romano <onaiort@gmail.com>
+    Henry Dang <henrydangprg@gmail.com>
+    Hidde Bultsma
+    Himanshu Chauhan <hchauhan1404@outlook.com>
+    hipertracker@gmail.com
+    Hiroki Kiyohara <hirokiky@gmail.com>
+    Hisham Mahmood <hishammahmood41@gmail.com>
+    Honza Král <honza.kral@gmail.com>
+    Horst Gutmann <zerok@zerokspot.com>
+    Hugo Osvaldo Barrera <hugo@barrera.io>
+    HyukJin Jang <wkdgurwls00@naver.com>
+    Hyun Mi Ae
+    Iacopo Spalletti <i.spalletti@nephila.it>
+    Ian A Wilson <http://ianawilson.com>
+    Ian Clelland <clelland@gmail.com>
+    Ian Holsman <http://feh.holsman.net/>
+    Ian Lee <IanLee1521@gmail.com>
+    Ibon <ibonso@gmail.com>
+    Idan Gazit <idan@gazit.me>
+    Idan Melamed
+    Ifedapo Olarewaju <ifedapoolarewaju@gmail.com>
+    Igor Kolar <ike@email.si>
+    Illia Volochii <illia.volochii@gmail.com>
+    Ilya Bass
+    Ilya Semenov <semenov@inetss.com>
+    Ingo Klöcker <djangoproject@ingo-kloecker.de>
+    I.S. van Oostveen <v.oostveen@idca.nl>
+    Iuri de Silvio <https://github.com/iurisilvio>
+    ivan.chelubeev@gmail.com
+    Ivan Sagalaev (Maniac) <http://www.softwaremaniacs.org/>
+    Jaap Roes <jaap.roes@gmail.com>
+    Jack Moffitt <https://metajack.im/>
+    Jacob Burch <jacobburch@gmail.com>
+    Jacob Green
+    Jacob Kaplan-Moss <jacob@jacobian.org>
+    Jacob Rief <jacob.rief@gmail.com>
+    Jacob Walls <http://www.jacobtylerwalls.com/>
+    Jakub Bagiński <https://github.com/Jacob1507>
+    Jakub Paczkowski <jakub@paczkowski.eu>
+    Jakub Wilk <jwilk@jwilk.net>
+    Jakub Wiśniowski <restless.being@gmail.com>
+    james_027@yahoo.com
+    James Aylett
+    James Bennett <james@b-list.org>
+    James Gillard <jamesgillard@live.co.uk>
+    James Murty
+    James Tauber <jtauber@jtauber.com>
+    James Timmins <jameshtimmins@gmail.com>
+    James Turk <dev@jamesturk.net>
+    James Wheare <django@sparemint.com>
+    Jamie Matthews <jamie@mtth.org>
+    Jannis Leidel <jannis@leidel.info>
+    Janos Guljas
+    Jan Pazdziora
+    Jan Rademaker
+    Jarek Głowacki <jarekwg@gmail.com>
+    Jarek Zgoda <jarek.zgoda@gmail.com>
+    Jarosław Wygoda <jaroslaw@wygoda.me>
+    Jason Davies (Esaj) <https://www.jasondavies.com/>
+    Jason Huggins <http://www.jrandolph.com/blog/>
+    Jason McBrayer <http://www.carcosa.net/jason/>
+    jason.sidabras@gmail.com
+    Jason Yan <tailofthesun@gmail.com>
+    Javier Mansilla <javimansilla@gmail.com>
+    Jay Parlar <parlar@gmail.com>
+    Jay Welborn <jesse.welborn@gmail.com>
+    Jay Wineinger <jay.wineinger@gmail.com>
+    J. Clifford Dyer <jcd@sdf.lonestar.org>
+    jcrasta@gmail.com
+    jdetaeye
+    Jeff Anderson <jefferya@programmerq.net>
+    Jeff Balogh <jbalogh@mozilla.com>
+    Jeff Hui <jeffkhui@gmail.com>
+    Jeffrey Gelens <jeffrey@gelens.org>
+    Jeff Triplett <jeff.triplett@gmail.com>
+    Jeffrey Yancey <jeffrey.yancey@gmail.com>
+    Jens Diemer <django@htfx.de>
+    Jens Page
+    Jensen Cochran <jensen.cochran@gmail.com>
+    Jeong-Min Lee <falsetru@gmail.com>
+    Jérémie Blaser <blaserje@gmail.com>
+    Jeremy Bowman <https://github.com/jmbowman>
+    Jeremy Carbaugh <jcarbaugh@gmail.com>
+    Jeremy Dunck <jdunck@gmail.com>
+    Jeremy Lainé <jeremy.laine@m4x.org>
+    Jerin Peter George <jerinpetergeorge@gmail.com>
+    Jesse Young <adunar@gmail.com>
+    Jezeniel Zapanta <jezeniel.zapanta@gmail.com>
+    jhenry <jhenry@theonion.com>
+    Jim Dalton <jim.dalton@gmail.com>
+    Jimmy Song <jaejoon@gmail.com>
+    Jiri Barton
+    Joachim Jablon <ewjoachim@gmail.com>
+    Joao Oliveira <joaoxsouls@gmail.com>
+    Joao Pedro Silva <j.pedro004@gmail.com>
+    Joe Heck <http://www.rhonabwy.com/wp/>
+    Joe Jackson <joe@joejackson.me>
+    Joel Bohman <mail@jbohman.com>
+    Joel Heenan <joelh-django@planetjoel.com>
+    Joel Watts <joel@joelwatts.com>
+    Joe Topjian <http://joe.terrarum.net/geek/code/python/django/>
+    Johan C. Stöver <johan@nilling.nl>
+    Johann Queuniet <johann.queuniet@adh.naellia.eu>
+    Johannes Westphal <jojo@w-hat.de>
+    john@calixto.net
+    John D'Agostino <john.dagostino@gmail.com>
+    John D'Ambrosio <dambrosioj@gmail.com>
+    John Huddleston <huddlej@wwu.edu>
+    John Moses <moses.john.r@gmail.com>
+    John Paulett <john@paulett.org>
+    John Shaffer <jshaffer2112@gmail.com>
+    Jökull Sólberg Auðunsson <jokullsolberg@gmail.com>
+    Jon Dufresne <jon.dufresne@gmail.com>
+    Jon Janzen <jon@jonjanzen.com>
+    Jonas Haag <jonas@lophus.org>
+    Jonas Lundberg <jonas.lundberg@gmail.com>
+    Jonathan Davis <jonathandavis47780@gmail.com>
+    Jonatas C. D. <jonatas.cd@gmail.com>
+    Jonathan Buchanan <jonathan.buchanan@gmail.com>
+    Jonathan Daugherty (cygnus) <http://www.cprogrammer.org/>
+    Jonathan Feignberg <jdf@pobox.com>
+    Jonathan Slenders
+    Jonny Park <jonnythebard9@gmail.com>
+    Jordan Bae <qoentlr37@gmail.com>
+    Jordan Dimov <s3x3y1@gmail.com>
+    Jordi J. Tablada <jordi.joan@gmail.com>
+    Jorge Bastida <me@jorgebastida.com>
+    Jorge Gajon <gajon@gajon.org>
+    José Tomás Tocino García <josetomas.tocino@gmail.com>
+    Josef Rousek <josef.rousek@gmail.com>
+    Joseph Kocherhans <joseph@jkocherhans.com>
+    Josh Smeaton <josh.smeaton@gmail.com>
+    Joshua Cannon <joshdcannon@gmail.com>
+    Joshua Ginsberg <jag@flowtheory.net>
+    Jozko Skrablin <jozko.skrablin@gmail.com>
+    J. Pablo Fernandez <pupeno@pupeno.com>
+    jpellerin@gmail.com
+    Juan Catalano <catalanojuan@gmail.com>
+    Juan Manuel Caicedo <juan.manuel.caicedo@gmail.com>
+    Juan Pedro Fisanotti <fisadev@gmail.com>
+    Julia Elman
+    Julia Matsieva <julia.matsieva@gmail.com>
+    Julian Bez
+    Julie Rymer <rymerjulie.pro@gmail.com>
+    Julien Phalip <jphalip@gmail.com>
+    Junyoung Choi <cupjoo@gmail.com>
+    junzhang.jn@gmail.com
+    Jure Cuhalev <gandalf@owca.info>
+    Justin Bronn <jbronn@gmail.com>
+    Justine Tunney <jtunney@gmail.com>
+    Justin Lilly <justinlilly@gmail.com>
+    Justin Michalicek <jmichalicek@gmail.com>
+    Justin Myles Holmes <justin@slashrootcafe.com>
+    Jyrki Pulliainen <jyrki.pulliainen@gmail.com>
+    Kacper Wolkiewicz <kac.wolkiewicz@gmail.com>
+    Kadesarin Sanjek
+    Kapil Bansal <kapilbansal.gbpecdelhi@gmail.com>
+    Karderio <karderio@gmail.com>
+    Karen Tracey <kmtracey@gmail.com>
+    Karol Sikora <elektrrrus@gmail.com>
+    Kasun Herath <kasunh01@gmail.com>
+    Katherine “Kati” Michel <kthrnmichel@gmail.com>
+    Kathryn Killebrew <kathryn.killebrew@gmail.com>
+    Katie Miller <katie@sub50.com>
+    Keith Bussell <kbussell@gmail.com>
+    Kenneth Love <kennethlove@gmail.com>
+    Kent Hauser <kent@khauser.net>
+    Keryn Knight <keryn@kerynknight.com>
+    Kevin Grinberg <kevin@kevingrinberg.com>
+    Kevin Kubasik <kevin@kubasik.net>
+    Kevin McConnell <kevin.mcconnell@gmail.com>
+    Kieran Holland <http://www.kieranholland.com>
+    kilian <kilian.cavalotti@lip6.fr>
+    Kim Joon Hwan 김준환 <xncbf12@gmail.com>
+    Kim Soung Ryoul 김성렬 <kimsoungryoul@gmail.com>
+    Klaas van Schelven <klaas@vanschelven.com>
+    knox <christobzr@gmail.com>
+    konrad@gwu.edu
+    Kowito Charoenratchatabhan <kowito@felspar.com>
+    Krišjānis Vaiders <krisjanisvaiders@gmail.com>
+    krzysiek.pawlik@silvermedia.pl
+    Krzysztof Jagiello <me@kjagiello.com>
+    Krzysztof Jurewicz <krzysztof.jurewicz@gmail.com>
+    Krzysztof Kulewski <kulewski@gmail.com>
+    kurtiss@meetro.com
+    Lakin Wecker <lakin@structuredabstraction.com>
+    Lars Yencken <lars.yencken@gmail.com>
+    Lau Bech Lauritzen
+    Laurent Luce <https://www.laurentluce.com/>
+    Laurent Rahuel <laurent.rahuel@gmail.com>
+    lcordier@point45.com
+    Leah Culver <leah.culver@gmail.com>
+    Leandra Finger <leandra.finger@gmail.com>
+    Lee Reilly <lee@leereilly.net>
+    Lee Sanghyuck <shlee322@elab.kr>
+    Lemuel Sta Ana <https://github.com/lstaana>
+    Leo "hylje" Honkanen <sealage@gmail.com>
+    Leo Shklovskii
+    Leo Soto <leo.soto@gmail.com>
+    lerouxb@gmail.com
+    Lex Berezhny <lex@damoti.com>
+    Liang Feng <hutuworm@gmail.com>
+    Lily Foote
+    limodou
+    Lincoln Smith <lincoln.smith@anu.edu.au>
+    Liu Yijie <007gzs@gmail.com>
+    Loek van Gent <loek@barakken.nl>
+    Loïc Bistuer <loic.bistuer@sixmedia.com>
+    Lowe Thiderman <lowe.thiderman@gmail.com>
+    Luan Pablo <luanpab@gmail.com>
+    Lucas Connors <https://www.revolutiontech.ca/>
+    Luciano Ramalho
+    Lucidiot <lucidiot@brainshit.fr>
+    Ludvig Ericson <ludvig.ericson@gmail.com>
+    Luis C. Berrocal <luis.berrocal.1942@gmail.com>
+    Łukasz Langa <lukasz@langa.pl>
+    Łukasz Rekucki <lrekucki@gmail.com>
+    Luke Granger-Brown <django@lukegb.com>
+    Luke Plant <L.Plant.98@cantab.net>
+    Maciej Fijalkowski
+    Maciej Wiśniowski <pigletto@gmail.com>
+    Mads Jensen <https://github.com/atombrella>
+    Makoto Tsuyuki <mtsuyuki@gmail.com>
+    Malcolm Tredinnick
+    Manav Agarwal <dpsman13016@gmail.com>
+    Manuel Saelices <msaelices@yaco.es>
+    Manuzhai
+    Marc Aymerich Gubern
+    Marc Egli <frog32@me.com>
+    Marcel Telka <marcel@telka.sk>
+    Marcelo Galigniana <marcelogaligniana@gmail.com>
+    Marc Fargas <telenieko@telenieko.com>
+    Marc Garcia <marc.garcia@accopensys.com>
+    Marcin Wróbel
+    Marc Remolt <m.remolt@webmasters.de>
+    Marc Seguí Coll <metarizard@gmail.com>
+    Marc Tamlyn <marc.tamlyn@gmail.com>
+    Marc-Aurèle Brothier <ma.brothier@gmail.com>
+    Marian Andre <django@andre.sk>
+    Marijke Luttekes <mail@marijkeluttekes.dev>
+    Marijn Vriens <marijn@metronomo.cl>
+    Mario Gonzalez <gonzalemario@gmail.com>
+    Mariusz Felisiak <felisiak.mariusz@gmail.com>
+    Mark Biggers <biggers@utsl.com>
+    Mark Evans <mark@meltdownlabs.com>
+    Mark Gensler <mark.gensler@protonmail.com>
+    mark@junklight.com
+    Mark Lavin <markdlavin@gmail.com>
+    Mark Sandstrom <mark@deliciouslynerdy.com>
+    Markus Amalthea Magnuson <markus.magnuson@gmail.com>
+    Markus Holtermann <https://markusholtermann.eu>
+    Marten Kenbeek <marten.knbk+django@gmail.com>
+    Marti Raudsepp <marti@juffo.org>
+    martin.glueck@gmail.com
+    Martin Green
+    Martin Kosír <martin@martinkosir.net>
+    Martin Mahner <https://www.mahner.org/>
+    Martin Maney <http://www.chipy.org/Martin_Maney>
+    Martin von Gagern <gagern@google.com>
+    Mart Sõmermaa <https://github.com/mrts>
+    Marty Alchin <gulopine@gamemusic.org>
+    Masashi Shibata <m.shibata1020@gmail.com>
+    masonsimon+django@gmail.com
+    Massimiliano Ravelli <massimiliano.ravelli@gmail.com>
+    Massimo Scamarcia <massimo.scamarcia@gmail.com>
+    Mathieu Agopian <mathieu.agopian@gmail.com>
+    Matías Bordese
+    Matt Boersma <matt@sprout.org>
+    Matt Brewer <matt.brewer693@gmail.com>
+    Matt Croydon <http://www.postneo.com/>
+    Matt Deacalion Stevens <matt@dirtymonkey.co.uk>
+    Matt Dennenbaum
+    Matthew Flanagan <https://wadofstuff.blogspot.com/>
+    Matthew Schinckel <matt@schinckel.net>
+    Matthew Somerville <matthew-django@dracos.co.uk>
+    Matthew Tretter <m@tthewwithanm.com>
+    Matthew Wilkes <matt@matthewwilkes.name>
+    Matthias Kestenholz <mk@406.ch>
+    Matthias Pronk <django@masida.nl>
+    Matt Hoskins <skaffenuk@googlemail.com>
+    Matt McClanahan <https://mmcc.cx/>
+    Matt Riggott
+    Matt Robenolt <m@robenolt.com>
+    Mattia Larentis <mattia@laretis.eu>
+    Mattia Procopio <promat85@gmail.com>
+    Mattias Loverot <mattias@stubin.se>
+    mattycakes@gmail.com
+    Max Burstein <http://maxburstein.com>
+    Max Derkachev <mderk@yandex.ru>
+    Max Smolens <msmolens@gmail.com>
+    Maxime Lorant <maxime.lorant@gmail.com>
+    Maxime Toussaint <m.toussaint@mail.com>
+    Maxime Turcotte <maxocub@riseup.net>
+    Maximilian Merz <django@mxmerz.de>
+    Maximillian Dornseif <md@hudora.de>
+    mccutchen@gmail.com
+    Meghana Bhange <meghanabhange13@gmail.com>
+    Meir Kriheli <http://mksoft.co.il/>
+    Michael S. Brown <michael@msbrown.net>
+    Michael Hall <mhall1@ualberta.ca>
+    Michael Josephson <http://www.sdjournal.com/>
+    Michael Lissner <mike@free.law>
+    Michael Manfre <mmanfre@gmail.com>
+    michael.mcewan@gmail.com
+    Michael Placentra II <someone@michaelplacentra2.net>
+    Michael Radziej <mir@noris.de>
+    Michael Sanders <m.r.sanders@gmail.com>
+    Michael Schwarz <michi.schwarz@gmail.com>
+    Michael Sinov <sihaelov@gmail.com>
+    Michael Thornhill <michael.thornhill@gmail.com>
+    Michal Chruszcz <troll@pld-linux.org>
+    michal@plovarna.cz
+    Michał Modzelewski <michal.modzelewski@gmail.com>
+    Mihai Damian <yang_damian@yahoo.com>
+    Mihai Preda <mihai_preda@yahoo.com>
+    Mikaël Barbero <mikael.barbero nospam at nospam free.fr>
+    Mike Axiak <axiak@mit.edu>
+    Mike Grouchy <https://mikegrouchy.com/>
+    Mike Malone <mjmalone@gmail.com>
+    Mike Richardson
+    Mike Wiacek <mjwiacek@google.com>
+    Mikhail Korobov <kmike84@googlemail.com>
+    Mikko Hellsing <mikko@sorl.net>
+    Mikołaj Siedlarek <mikolaj.siedlarek@gmail.com>
+    milkomeda
+    Milton Waddams
+    mitakummaa@gmail.com
+    mmarshall
+    Moayad Mardini <moayad.m@gmail.com>
+    Morgan Aubert <morgan.aubert@zoho.com>
+    Moritz Sichert <moritz.sichert@googlemail.com>
+    Morten Bagai <m@bagai.com>
+    msaelices <msaelices@gmail.com>
+    msundstr
+    Mushtaq Ali <mushtaak@gmail.com>
+    Mykola Zamkovoi <nickzam@gmail.com>
+    Nadège Michel <michel.nadege@gmail.com>
+    Nagy Károly <charlie@rendszergazda.com>
+    Nasimul Haque <nasim.haque@gmail.com>
+    Nasir Hussain <nasirhjafri@gmail.com>
+    Natalia Bidart <nataliabidart@gmail.com>
+    Nate Bragg <jonathan.bragg@alum.rpi.edu>
+    Nathan Gaberel <nathan@gnab.fr>
+    Neal Norwitz <nnorwitz@google.com>
+    Nebojša Dorđević
+    Ned Batchelder <https://nedbatchelder.com/>
+    Nena Kojadin <nena@kiberpipa.org>
+    Niall Dalton <niall.dalton12@gmail.com>
+    Niall Kelly <duke.sam.vimes@gmail.com>
+    Nick Efford <nick@efford.org>
+    Nick Lane <nick.lane.au@gmail.com>
+    Nick Pope <nick@nickpope.me.uk>
+    Nick Presta <nick@nickpresta.ca>
+    Nick Sandford <nick.sandford@gmail.com>
+    Nick Sarbicki <nick.a.sarbicki@gmail.com>
+    Niclas Olofsson <n@niclasolofsson.se>
+    Nicola Larosa <nico@teknico.net>
+    Nicolas Lara <nicolaslara@gmail.com>
+    Nicolas Noé <nicolas@niconoe.eu>
+    Nikita Marchant <nikita.marchant@gmail.com>
+    Nikita Sobolev <mail@sobolevn.me>
+    Nina Menezes <https://github.com/nmenezes0>
+    Niran Babalola <niran@niran.org>
+    Nis Jørgensen <nis@superlativ.dk>
+    Nowell Strite <https://nowell.strite.org/>
+    Nuno Mariz <nmariz@gmail.com>
+    Octavio Peri <octaperi@gmail.com>
+    oggie rob <oz.robharvey@gmail.com>
+    oggy <ognjen.maric@gmail.com>
+    Oguzhan Akan <oakan118@gmail.com>
+    Oliver Beattie <oliver@obeattie.com>
+    Oliver Rutherfurd <http://rutherfurd.net/>
+    Olivier Le Thanh Duong <olivier@lethanh.be>
+    Olivier Sels <olivier.sels@gmail.com>
+    Olivier Tabone <olivier.tabone@ripplemotion.fr>
+    Orestis Markou <orestis@orestis.gr>
+    Orne Brocaar <http://brocaar.com/>
+    Oscar Ramirez <tuxskar@gmail.com>
+    Ossama M. Khayat <okhayat@yahoo.com>
+    Owen Griffiths
+    Ömer Faruk Abacı <https://github.com/omerfarukabaci/>
+    Pablo Martín <goinnn@gmail.com>
+    Panos Laganakos <panos.laganakos@gmail.com>
+    Paolo Melchiorre <paolo@melchiorre.org>
+    Pascal Hartig <phartig@rdrei.net>
+    Pascal Varet
+    Patrik Sletmo <patrik.sletmo@gmail.com>
+    Paul Bissex <http://e-scribe.com/>
+    Paul Collier <paul@paul-collier.com>
+    Paul Collins <paul.collins.iii@gmail.com>
+    Paul Donohue <django@PaulSD.com>
+    Paul Lanier <planier@google.com>
+    Paul McLanahan <paul@mclanahan.net>
+    Paul McMillan <Paul@McMillan.ws>
+    Paulo Poiati <paulogpoiati@gmail.com>
+    Paulo Scardine <paulo@scardine.com.br>
+    Paul Smith <blinkylights23@gmail.com>
+    Pavel Kulikov <kulikovpavel@gmail.com>
+    pavithran s <pavithran.s@gmail.com>
+    Pavlo Kapyshin <i@93z.org>
+    permonik@mesias.brnonet.cz
+    Petar Marić <http://www.petarmaric.com/>
+    Pete Crosier <pete.crosier@gmail.com>
+    peter@mymart.com
+    Peter Sheats <sheats@gmail.com>
+    Peter van Kampen
+    Peter Zsoldos <http://zsoldosp.eu>
+    Pete Shinners <pete@shinners.org>
+    Petr Marhoun <petr.marhoun@gmail.com>
+    Petter Strandmark
+    pgross@thoughtworks.com
+    phaedo <http://phaedo.cx/>
+    phil.h.smith@gmail.com
+    Philip Lindborg <philip.lindborg@gmail.com>
+    Philippe Raoult <philippe.raoult@n2nsoft.com>
+    phil@produxion.net
+    Piotr Jakimiak <piotr.jakimiak@gmail.com>
+    Piotr Lewandowski <piotr.lewandowski@gmail.com>
+    plisk
+    polpak@yahoo.com
+    pradeep.gowda@gmail.com
+    Prashant Pandey <https://prashantpandey9.in>
+    Preston Holmes <preston@ptone.com>
+    Preston Timmons <prestontimmons@gmail.com>
+    Priyank Panchal <priyankpanchal872000@gmail.com>
+    Priyansh Saxena <askpriyansh@gmail.com>
+    Przemysław Buczkowski <przemub@przemub.pl>
+    Przemysław Suliga <http://suligap.net>
+    Qi Zhao <zhaoqi99@outlook.com>
+    Rachel Tobin <rmtobin@me.com>
+    Rachel Willmer <http://www.willmer.com/kb/>
+    Radek Švarz <https://www.svarz.cz/translate/>
+    Rafael Giebisch <rafael@giebisch-mail.de>
+    Raffaele Salmaso <raffaele@salmaso.org>
+    Rahmat Faisal <mad.skidipap@gmail.com>
+    Rajesh Dhawan <rajesh.dhawan@gmail.com>
+    Ramez Ashraf <ramezashraf@gmail.com>
+    Ramil Yanbulatov <rayman1104@gmail.com>
+    Ramin Farajpour Cami <ramin.blackhat@gmail.com>
+    Ramiro Morales <ramiro@rmorales.net>
+    Ramon Saraiva <ramonsaraiva@gmail.com>
+    Ram Rachum <ram@rachum.com>
+    Randy Barlow <randy@electronsweatshop.com>
+    Raphaël Barrois <raphael.barrois@m4x.org>
+    Raphael Michel <mail@raphaelmichel.de>
+    Raúl Cumplido <raulcumplido@gmail.com>
+    Rebecca Smith <rebkwok@gmail.com>
+    Remco Wendt <remco.wendt@gmail.com>
+    Renaud Parent <renaud.parent@gmail.com>
+    Renbi Yu <averybigant@gmail.com>
+    Reza Mohammadi <reza@zeerak.ir>
+    rhettg@gmail.com
+    Ricardo Javier Cárdenes Medina <ricardo.cardenes@gmail.com>
+    ricardojbarrios@gmail.com
+    Riccardo Di Virgilio
+    Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
+    Richard Davies <richard.davies@elastichosts.com>
+    Richard House <Richard.House@i-logue.com>
+    Rick Wagner <rwagner@physics.ucsd.edu>
+    Rigel Di Scala <rigel.discala@propylon.com>
+    Robert Coup
+    Robert Myers <myer0052@gmail.com>
+    Roberto Aguilar <roberto@baremetal.io>
+    Robert Rock Howard <http://djangomojo.com/>
+    Robert Wittams
+    Rob Golding-Day <rob@golding-day.com>
+    Rob Hudson <https://rob.cogit8.org/>
+    Rob Nguyen <tienrobertnguyenn@gmail.com>
+    Robin Munn <http://www.geekforgod.com/>
+    Rodrigo Pinheiro Marques de Araújo <fenrrir@gmail.com>
+    Rohith P R <https://rohithpr.com>
+    Romain Garrigues <romain.garrigues.cs@gmail.com>
+    Ronnie van den Crommenacker
+    Ronny Haryanto <https://ronny.haryan.to/>
+    Ross Poulton <ross@rossp.org>
+    Roxane Bellot <https://github.com/roxanebellot/>
+    Rozza <ross.lawley@gmail.com>
+    Rudolph Froger <rfroger@estrate.nl>
+    Rudy Mutter
+    Rune Rønde Laursen <runerl@skjoldhoej.dk>
+    Russell Cloran <russell@rucus.net>
+    Russell Keith-Magee <russell@keith-magee.com>
+    Russ Webber
+    Ryan Hall <ryanhall989@gmail.com>
+    Ryan Heard <ryanwheard@gmail.com>
+    ryankanno
+    Ryan Kelly <ryan@rfk.id.au>
+    Ryan Niemeyer <https://profiles.google.com/ryan.niemeyer/about>
+    Ryan Petrello <ryan@ryanpetrello.com>
+    Ryan Rubin <ryanmrubin@gmail.com>
+    Ryno Mathee <rmathee@gmail.com>
+    Sachin Jat <sanch.jat@gmail.com>
+    Sage M. Abdullah <https://github.com/laymonage>
+    Sam Newman <http://www.magpiebrain.com/>
+    Sander Dijkhuis <sander.dijkhuis@gmail.com>
+    Sanket Saurav <sanketsaurav@gmail.com>
+    Sanyam Khurana <sanyam.khurana01@gmail.com>
+    Sarah Abderemane <https://github.com/sabderemane>
+    Sarah Boyce <https://github.com/sarahboyce>
+    Sarthak Mehrish <sarthakmeh03@gmail.com>
+    schwank@gmail.com
+    Scot Hacker <shacker@birdhouse.org>
+    Scott Barr <scott@divisionbyzero.com.au>
+    Scott Cranfill <scott@scottcranfill.com>
+    Scott Fitsimones <scott@airgara.ge>
+    Scott Pashley <github@scottpashley.co.uk>
+    scott@staplefish.com
+    Sean Brant
+    Sebastian Hillig <sebastian.hillig@gmail.com>
+    Sebastian Spiegel <https://www.tivix.com/>
+    Segyo Myung <myungsekyo@gmail.com>
+    Selwin Ong <selwin@ui.co.id>
+    Sengtha Chay <sengtha@e-khmer.com>
+    Senko Rašić <senko.rasic@dobarkod.hr>
+    serbaut@gmail.com
+    Sergei Maertens <sergeimaertens@gmail.com>
+    Sergey Fedoseev <fedoseev.sergey@gmail.com>
+    Sergey Kolosov <m17.admin@gmail.com>
+    Seth Hill <sethrh@gmail.com>
+    Shafiya Adzhani <adz.arsym@gmail.com>
+    Shai Berger <shai@platonix.com>
+    Shannon -jj Behrens <https://www.jjinux.com/>
+    Shawn Milochik <shawn@milochik.com>
+    Shreya Bamne <shreya.bamne@gmail.com>
+    Silvan Spross <silvan.spross@gmail.com>
+    Simeon Visser <http://simeonvisser.com>
+    Simon Blanchard
+    Simon Charette <charette.s@gmail.com>
+    Simon Greenhill <dev@simon.net.nz>
+    Simon Litchfield <simon@quo.com.au>
+    Simon Meers <simon@simonmeers.com>
+    Simon Williams
+    Simon Willison <simon@simonwillison.net>
+    Sjoerd Job Postmus
+    Slawek Mikula <slawek dot mikula at gmail dot com>
+    sloonz <simon.lipp@insa-lyon.fr>
+    smurf@smurf.noris.de
+    sopel
+    Sreehari K V <sreeharivijayan619@gmail.com>
+    Sridhar Marella <sridhar562345@gmail.com>
+    Srinivas Reddy Thatiparthy <thatiparthysreenivas@gmail.com>
+    Stanislas Guerra <stan@slashdev.me>
+    Stanislaus Madueke
+    Stanislav Karpov <work@stkrp.ru>
+    starrynight <cmorgh@gmail.com>
+    Stefan R. Filipek
+    Stefane Fermgier <sf@fermigier.com>
+    Stefano Rivera <stefano@rivera.za.net>
+    Stéphane Raimbault <stephane.raimbault@gmail.com>
+    Stephan Jaekel <steph@rdev.info>
+    Stephen Burrows <stephen.r.burrows@gmail.com>
+    Steven L. Smith (fvox13) <steven@stevenlsmith.com>
+    Steven Noorbergen (Xaroth) <xaroth+django@xaroth.nl>
+    Stuart Langridge <https://www.kryogenix.org/>
+    Subhav Gautam <subhavgautam@yahoo.co.uk>
+    Sujay S Kumar <sujay.skumar141295@gmail.com>
+    Sune Kirkeby <https://ibofobi.dk/>
+    Sung-Jin Hong <serialx.net@gmail.com>
+    SuperJared
+    Susan Tan <susan.tan.fleckerl@gmail.com>
+    Sutrisno Efendi <kangfend@gmail.com>
+    Swaroop C H <http://www.swaroopch.info>
+    Szilveszter Farkas <szilveszter.farkas@gmail.com>
+    Taavi Teska <taaviteska@gmail.com>
+    Tai Lee <real.human@mrmachine.net>
+    Takashi Matsuo <matsuo.takashi@gmail.com>
+    Tareque Hossain <http://www.codexn.com>
+    Taylor Mitchell <taylor.mitchell@gmail.com>
+    tell-k <ffk2005@gmail.com>
+    Terry Huang <terryh.tp@gmail.com>
+    thebjorn <bp@datakortet.no>
+    Thejaswi Puthraya <thejaswi.puthraya@gmail.com>
+    Thijs van Dien <thijs@vandien.net>
+    Thom Wiggers
+    Thomas Chaumeny <t.chaumeny@gmail.com>
+    Thomas Güttler <hv@tbz-pariv.de>
+    Thomas Kerpe <thomas@kerpe.net>
+    Thomas Sorrel
+    Thomas Steinacher <http://www.eggdrop.ch/>
+    Thomas Stromberg <tstromberg@google.com>
+    Thomas Tanner <tanner@gmx.net>
+    tibimicu@gmx.net
+    Ties Jan Hefting <hello@tiesjan.com>
+    Tim Allen <tim@pyphilly.org>
+    Tim Givois <tim.givois.mendez@gmail.com>
+    Tim Graham <timograham@gmail.com>
+    Tim Heap <tim@timheap.me>
+    Tim McCurrach <tim.mccurrach@gmail.com>
+    Tim Saylor <tim.saylor@gmail.com>
+    Toan Vuong <me@toanvuong.io>
+    Tobias Kunze <rixx@cutebit.de>
+    Tobias McNulty <https://www.caktusgroup.com/blog/>
+    tobias@neuyork.de
+    Todd O'Bryan <toddobryan@mac.com>
+    Tom Carrick <https://www.carrick.eu>
+    Tom Christie <tom@tomchristie.com>
+    Tom Forbes <tom@tomforb.es>
+    Tom Insam
+    Tom Tobin
+    Tom Wojcik <me@tomwojcik.com>
+    Tomáš Ehrlich <tomas.ehrlich@gmail.com>
+    Tomáš Kopeček <permonik@m6.cz>
+    Tome Cvitan <tome@cvitan.com>
+    Tomek Paczkowski <tomek@hauru.eu>
+    Tomer Chachamu
+    Tommy Beadle <tbeadle@gmail.com>
+    Tore Lundqvist <tore.lundqvist@gmail.com>
+    torne-django@wolfpuppy.org.uk
+    Travis Cline <travis.cline@gmail.com>
+    Travis Pinney
+    Travis Swicegood <travis@domain51.com>
+    Travis Terry <tdterry7@gmail.com>
+    Trevor Caira <trevor@caira.com>
+    Trey Long <trey@ktrl.com>
+    tstromberg@google.com
+    tt@gurgle.no
+    Tyler Tarabula <tyler.tarabula@gmail.com>
+    Tyson Clugg <tyson@clugg.net>
+    Tyson Tate <tyson@fallingbullets.com>
+    Unai Zalakain <unai@gisa-elkartea.org>
+    Valentina Mukhamedzhanova <umirra@gmail.com>
+    valtron
+    Vasiliy Stavenko <stavenko@gmail.com>
+    Vasil Vangelovski
+    Vibhu Agarwal <vibhu-agarwal.github.io>
+    Victor Andrée
+    viestards.lists@gmail.com
+    Viktor Danyliuk <v.v.danyliuk@gmail.com>
+    Viktor Grabov <viktor@grabov.ru>
+    Ville Säävuori <https://www.unessa.net/>
+    Vinay Karanam <https://github.com/vinayinvicible>
+    Vinay Sajip <vinay_sajip@yahoo.co.uk>
+    Vincent Foley <vfoleybourgon@yahoo.ca>
+    Vinny Do <vdo.code@gmail.com>
+    Vitaly Babiy <vbabiy86@gmail.com>
+    Vitaliy Yelnik <velnik@gmail.com>
+    Vladimir Kuzma <vladimirkuzma.ch@gmail.com>
+    Vlado <vlado@labath.org>
+    Vsevolod Solovyov
+    Vytis Banaitis <vytis.banaitis@gmail.com>
+    wam-djangobug@wamber.net
+    Wang Chun <wangchun@exoweb.net>
+    Warren Smith <warren@wandrsmith.net>
+    Waylan Limberg <waylan@gmail.com>
+    Wiktor Kołodziej <wiktor@pykonik.org>
+    Wiley Kestner <wiley.kestner@gmail.com>
+    Wiliam Alves de Souza <wiliamsouza83@gmail.com>
+    Will Ayd <william.ayd@icloud.com>
+    William Schwartz <wkschwartz@gmail.com>
+    Will Hardy <django@willhardy.com.au>
+    Will Zhao <www.gnomeek@gmail.com>
+    Wilson Miner <wminer@gmail.com>
+    Wim Glenn <hey@wimglenn.com>
+    wojtek
+    Wu Haotian <whtsky@gmail.com>
+    Xavier Francisco <xavier.n.francisco@gmail.com>
+    Xia Kai <https://blog.xiaket.org/>
+    Yann Fouillat <gagaro42@gmail.com>
+    Yann Malet
+    Yash Jhunjhunwala
+    Yasushi Masuda <whosaysni@gmail.com>
+    ye7cakf02@sneakemail.com
+    ymasuda@ethercube.com
+    Yoong Kang Lim <yoongkang.lim@gmail.com>
+    Yury V. Zaytsev <yury@shurup.com>
+    Yusuke Miyazaki <miyazaki.dev@gmail.com>
+    Yves Weissig <yves@weissig.me>
+    yyyyyyyan <contact@yyyyyyyan.tech>
+    Zac Hatfield-Dodds <zac.hatfield.dodds@gmail.com>
+    Zachary Voase <zacharyvoase@gmail.com>
+    Zach Liu <zachliu@gmail.com>
+    Zach Thompson <zthompson47@gmail.com>
+    Zain Memon
+    Zain Patel <zain.patel06@gmail.com>
+    Zak Johnson <zakj@nox.cx>
+    Žan Anderle <zan.anderle@gmail.com>
+    Zbigniew Siciarz <zbigniew@siciarz.net>
+    zegor
+    Zeynel Özdemir <ozdemir.zynl@gmail.com>
+    Zlatko Mašek <zlatko.masek@gmail.com>
+    zriv <https://github.com/zriv>
+    <Please alphabetize new entries>
+
+A big THANK YOU goes to:
+
+    Rob Curley and Ralph Gage for letting us open-source Django.
+
+    Frank Wiles for making excellent arguments for open-sourcing, and for
+    his sage sysadmin advice.
+
+    Ian Bicking for convincing Adrian to ditch code generation.
+
+    Mark Pilgrim for "Dive Into Python" (https://diveintopython3.net/).
+
+    Guido van Rossum for creating Python.

+ 1 - 0
courses/django_kind/env/lib/python3.12/site-packages/Django-5.1.4.dist-info/INSTALLER

@@ -0,0 +1 @@
+pip

+ 27 - 0
courses/django_kind/env/lib/python3.12/site-packages/Django-5.1.4.dist-info/LICENSE

@@ -0,0 +1,27 @@
+Copyright (c) Django Software Foundation and individual contributors.
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+    1. Redistributions of source code must retain the above copyright notice,
+       this list of conditions and the following disclaimer.
+
+    2. Redistributions in binary form must reproduce the above copyright
+       notice, this list of conditions and the following disclaimer in the
+       documentation and/or other materials provided with the distribution.
+
+    3. Neither the name of Django nor the names of its contributors may be used
+       to endorse or promote products derived from this software without
+       specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

+ 288 - 0
courses/django_kind/env/lib/python3.12/site-packages/Django-5.1.4.dist-info/LICENSE.python

@@ -0,0 +1,288 @@
+Django is licensed under the three-clause BSD license; see the file
+LICENSE for details.
+
+Django includes code from the Python standard library, which is licensed under
+the Python license, a permissive open source license. The copyright and license
+is included below for compliance with Python's terms.
+
+----------------------------------------------------------------------
+
+Copyright (c) 2001-present Python Software Foundation; All Rights Reserved
+
+A. HISTORY OF THE SOFTWARE
+==========================
+
+Python was created in the early 1990s by Guido van Rossum at Stichting
+Mathematisch Centrum (CWI, see https://www.cwi.nl) in the Netherlands
+as a successor of a language called ABC.  Guido remains Python's
+principal author, although it includes many contributions from others.
+
+In 1995, Guido continued his work on Python at the Corporation for
+National Research Initiatives (CNRI, see https://www.cnri.reston.va.us)
+in Reston, Virginia where he released several versions of the
+software.
+
+In May 2000, Guido and the Python core development team moved to
+BeOpen.com to form the BeOpen PythonLabs team.  In October of the same
+year, the PythonLabs team moved to Digital Creations, which became
+Zope Corporation.  In 2001, the Python Software Foundation (PSF, see
+https://www.python.org/psf/) was formed, a non-profit organization
+created specifically to own Python-related Intellectual Property.
+Zope Corporation was a sponsoring member of the PSF.
+
+All Python releases are Open Source (see https://opensource.org for
+the Open Source Definition).  Historically, most, but not all, Python
+releases have also been GPL-compatible; the table below summarizes
+the various releases.
+
+    Release         Derived     Year        Owner       GPL-
+                    from                                compatible? (1)
+
+    0.9.0 thru 1.2              1991-1995   CWI         yes
+    1.3 thru 1.5.2  1.2         1995-1999   CNRI        yes
+    1.6             1.5.2       2000        CNRI        no
+    2.0             1.6         2000        BeOpen.com  no
+    1.6.1           1.6         2001        CNRI        yes (2)
+    2.1             2.0+1.6.1   2001        PSF         no
+    2.0.1           2.0+1.6.1   2001        PSF         yes
+    2.1.1           2.1+2.0.1   2001        PSF         yes
+    2.1.2           2.1.1       2002        PSF         yes
+    2.1.3           2.1.2       2002        PSF         yes
+    2.2 and above   2.1.1       2001-now    PSF         yes
+
+Footnotes:
+
+(1) GPL-compatible doesn't mean that we're distributing Python under
+    the GPL.  All Python licenses, unlike the GPL, let you distribute
+    a modified version without making your changes open source.  The
+    GPL-compatible licenses make it possible to combine Python with
+    other software that is released under the GPL; the others don't.
+
+(2) According to Richard Stallman, 1.6.1 is not GPL-compatible,
+    because its license has a choice of law clause.  According to
+    CNRI, however, Stallman's lawyer has told CNRI's lawyer that 1.6.1
+    is "not incompatible" with the GPL.
+
+Thanks to the many outside volunteers who have worked under Guido's
+direction to make these releases possible.
+
+
+B. TERMS AND CONDITIONS FOR ACCESSING OR OTHERWISE USING PYTHON
+===============================================================
+
+Python software and documentation are licensed under the
+Python Software Foundation License Version 2.
+
+Starting with Python 3.8.6, examples, recipes, and other code in
+the documentation are dual licensed under the PSF License Version 2
+and the Zero-Clause BSD license.
+
+Some software incorporated into Python is under different licenses.
+The licenses are listed with code falling under that license.
+
+
+PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2
+--------------------------------------------
+
+1. This LICENSE AGREEMENT is between the Python Software Foundation
+("PSF"), and the Individual or Organization ("Licensee") accessing and
+otherwise using this software ("Python") in source or binary form and
+its associated documentation.
+
+2. Subject to the terms and conditions of this License Agreement, PSF hereby
+grants Licensee a nonexclusive, royalty-free, world-wide license to reproduce,
+analyze, test, perform and/or display publicly, prepare derivative works,
+distribute, and otherwise use Python alone or in any derivative version,
+provided, however, that PSF's License Agreement and PSF's notice of copyright,
+i.e., "Copyright (c) 2001-2024 Python Software Foundation; All Rights Reserved"
+are retained in Python alone or in any derivative version prepared by Licensee.
+
+3. In the event Licensee prepares a derivative work that is based on
+or incorporates Python or any part thereof, and wants to make
+the derivative work available to others as provided herein, then
+Licensee hereby agrees to include in any such work a brief summary of
+the changes made to Python.
+
+4. PSF is making Python available to Licensee on an "AS IS"
+basis.  PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
+IMPLIED.  BY WAY OF EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND
+DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS
+FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON WILL NOT
+INFRINGE ANY THIRD PARTY RIGHTS.
+
+5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON
+FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS
+A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON,
+OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.
+
+6. This License Agreement will automatically terminate upon a material
+breach of its terms and conditions.
+
+7. Nothing in this License Agreement shall be deemed to create any
+relationship of agency, partnership, or joint venture between PSF and
+Licensee.  This License Agreement does not grant permission to use PSF
+trademarks or trade name in a trademark sense to endorse or promote
+products or services of Licensee, or any third party.
+
+8. By copying, installing or otherwise using Python, Licensee
+agrees to be bound by the terms and conditions of this License
+Agreement.
+
+
+BEOPEN.COM LICENSE AGREEMENT FOR PYTHON 2.0
+-------------------------------------------
+
+BEOPEN PYTHON OPEN SOURCE LICENSE AGREEMENT VERSION 1
+
+1. This LICENSE AGREEMENT is between BeOpen.com ("BeOpen"), having an
+office at 160 Saratoga Avenue, Santa Clara, CA 95051, and the
+Individual or Organization ("Licensee") accessing and otherwise using
+this software in source or binary form and its associated
+documentation ("the Software").
+
+2. Subject to the terms and conditions of this BeOpen Python License
+Agreement, BeOpen hereby grants Licensee a non-exclusive,
+royalty-free, world-wide license to reproduce, analyze, test, perform
+and/or display publicly, prepare derivative works, distribute, and
+otherwise use the Software alone or in any derivative version,
+provided, however, that the BeOpen Python License is retained in the
+Software, alone or in any derivative version prepared by Licensee.
+
+3. BeOpen is making the Software available to Licensee on an "AS IS"
+basis.  BEOPEN MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
+IMPLIED.  BY WAY OF EXAMPLE, BUT NOT LIMITATION, BEOPEN MAKES NO AND
+DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS
+FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE WILL NOT
+INFRINGE ANY THIRD PARTY RIGHTS.
+
+4. BEOPEN SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF THE
+SOFTWARE FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS
+AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THE SOFTWARE, OR ANY
+DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.
+
+5. This License Agreement will automatically terminate upon a material
+breach of its terms and conditions.
+
+6. This License Agreement shall be governed by and interpreted in all
+respects by the law of the State of California, excluding conflict of
+law provisions.  Nothing in this License Agreement shall be deemed to
+create any relationship of agency, partnership, or joint venture
+between BeOpen and Licensee.  This License Agreement does not grant
+permission to use BeOpen trademarks or trade names in a trademark
+sense to endorse or promote products or services of Licensee, or any
+third party.  As an exception, the "BeOpen Python" logos available at
+http://www.pythonlabs.com/logos.html may be used according to the
+permissions granted on that web page.
+
+7. By copying, installing or otherwise using the software, Licensee
+agrees to be bound by the terms and conditions of this License
+Agreement.
+
+
+CNRI LICENSE AGREEMENT FOR PYTHON 1.6.1
+---------------------------------------
+
+1. This LICENSE AGREEMENT is between the Corporation for National
+Research Initiatives, having an office at 1895 Preston White Drive,
+Reston, VA 20191 ("CNRI"), and the Individual or Organization
+("Licensee") accessing and otherwise using Python 1.6.1 software in
+source or binary form and its associated documentation.
+
+2. Subject to the terms and conditions of this License Agreement, CNRI
+hereby grants Licensee a nonexclusive, royalty-free, world-wide
+license to reproduce, analyze, test, perform and/or display publicly,
+prepare derivative works, distribute, and otherwise use Python 1.6.1
+alone or in any derivative version, provided, however, that CNRI's
+License Agreement and CNRI's notice of copyright, i.e., "Copyright (c)
+1995-2001 Corporation for National Research Initiatives; All Rights
+Reserved" are retained in Python 1.6.1 alone or in any derivative
+version prepared by Licensee.  Alternately, in lieu of CNRI's License
+Agreement, Licensee may substitute the following text (omitting the
+quotes): "Python 1.6.1 is made available subject to the terms and
+conditions in CNRI's License Agreement.  This Agreement together with
+Python 1.6.1 may be located on the internet using the following
+unique, persistent identifier (known as a handle): 1895.22/1013.  This
+Agreement may also be obtained from a proxy server on the internet
+using the following URL: http://hdl.handle.net/1895.22/1013".
+
+3. In the event Licensee prepares a derivative work that is based on
+or incorporates Python 1.6.1 or any part thereof, and wants to make
+the derivative work available to others as provided herein, then
+Licensee hereby agrees to include in any such work a brief summary of
+the changes made to Python 1.6.1.
+
+4. CNRI is making Python 1.6.1 available to Licensee on an "AS IS"
+basis.  CNRI MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
+IMPLIED.  BY WAY OF EXAMPLE, BUT NOT LIMITATION, CNRI MAKES NO AND
+DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS
+FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON 1.6.1 WILL NOT
+INFRINGE ANY THIRD PARTY RIGHTS.
+
+5. CNRI SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON
+1.6.1 FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS
+A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON 1.6.1,
+OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.
+
+6. This License Agreement will automatically terminate upon a material
+breach of its terms and conditions.
+
+7. This License Agreement shall be governed by the federal
+intellectual property law of the United States, including without
+limitation the federal copyright law, and, to the extent such
+U.S. federal law does not apply, by the law of the Commonwealth of
+Virginia, excluding Virginia's conflict of law provisions.
+Notwithstanding the foregoing, with regard to derivative works based
+on Python 1.6.1 that incorporate non-separable material that was
+previously distributed under the GNU General Public License (GPL), the
+law of the Commonwealth of Virginia shall govern this License
+Agreement only as to issues arising under or with respect to
+Paragraphs 4, 5, and 7 of this License Agreement.  Nothing in this
+License Agreement shall be deemed to create any relationship of
+agency, partnership, or joint venture between CNRI and Licensee.  This
+License Agreement does not grant permission to use CNRI trademarks or
+trade name in a trademark sense to endorse or promote products or
+services of Licensee, or any third party.
+
+8. By clicking on the "ACCEPT" button where indicated, or by copying,
+installing or otherwise using Python 1.6.1, Licensee agrees to be
+bound by the terms and conditions of this License Agreement.
+
+        ACCEPT
+
+
+CWI LICENSE AGREEMENT FOR PYTHON 0.9.0 THROUGH 1.2
+--------------------------------------------------
+
+Copyright (c) 1991 - 1995, Stichting Mathematisch Centrum Amsterdam,
+The Netherlands.  All rights reserved.
+
+Permission to use, copy, modify, and distribute this software and its
+documentation for any purpose and without fee is hereby granted,
+provided that the above copyright notice appear in all copies and that
+both that copyright notice and this permission notice appear in
+supporting documentation, and that the name of Stichting Mathematisch
+Centrum or CWI not be used in advertising or publicity pertaining to
+distribution of the software without specific, written prior
+permission.
+
+STICHTING MATHEMATISCH CENTRUM DISCLAIMS ALL WARRANTIES WITH REGARD TO
+THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
+FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH CENTRUM BE LIABLE
+FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
+OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+ZERO-CLAUSE BSD LICENSE FOR CODE IN THE PYTHON DOCUMENTATION
+----------------------------------------------------------------------
+
+Permission to use, copy, modify, and/or distribute this software for any
+purpose with or without fee is hereby granted.
+
+THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
+REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
+AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
+INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
+LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
+OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+PERFORMANCE OF THIS SOFTWARE.

+ 101 - 0
courses/django_kind/env/lib/python3.12/site-packages/Django-5.1.4.dist-info/METADATA

@@ -0,0 +1,101 @@
+Metadata-Version: 2.1
+Name: Django
+Version: 5.1.4
+Summary: A high-level Python web framework that encourages rapid development and clean, pragmatic design.
+Author-email: Django Software Foundation <foundation@djangoproject.com>
+License: BSD-3-Clause
+Project-URL: Homepage, https://www.djangoproject.com/
+Project-URL: Documentation, https://docs.djangoproject.com/
+Project-URL: Release notes, https://docs.djangoproject.com/en/stable/releases/
+Project-URL: Funding, https://www.djangoproject.com/fundraising/
+Project-URL: Source, https://github.com/django/django
+Project-URL: Tracker, https://code.djangoproject.com/
+Classifier: Development Status :: 5 - Production/Stable
+Classifier: Environment :: Web Environment
+Classifier: Framework :: Django
+Classifier: Intended Audience :: Developers
+Classifier: License :: OSI Approved :: BSD License
+Classifier: Operating System :: OS Independent
+Classifier: Programming Language :: Python
+Classifier: Programming Language :: Python :: 3
+Classifier: Programming Language :: Python :: 3 :: Only
+Classifier: Programming Language :: Python :: 3.10
+Classifier: Programming Language :: Python :: 3.11
+Classifier: Programming Language :: Python :: 3.12
+Classifier: Programming Language :: Python :: 3.13
+Classifier: Topic :: Internet :: WWW/HTTP
+Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
+Classifier: Topic :: Internet :: WWW/HTTP :: WSGI
+Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
+Classifier: Topic :: Software Development :: Libraries :: Python Modules
+Requires-Python: >=3.10
+Description-Content-Type: text/x-rst
+License-File: LICENSE
+License-File: LICENSE.python
+License-File: AUTHORS
+Requires-Dist: asgiref<4,>=3.8.1
+Requires-Dist: sqlparse>=0.3.1
+Requires-Dist: tzdata; sys_platform == "win32"
+Provides-Extra: argon2
+Requires-Dist: argon2-cffi>=19.1.0; extra == "argon2"
+Provides-Extra: bcrypt
+Requires-Dist: bcrypt; extra == "bcrypt"
+
+======
+Django
+======
+
+Django is a high-level Python web framework that encourages rapid development
+and clean, pragmatic design. Thanks for checking it out.
+
+All documentation is in the "``docs``" directory and online at
+https://docs.djangoproject.com/en/stable/. If you're just getting started,
+here's how we recommend you read the docs:
+
+* First, read ``docs/intro/install.txt`` for instructions on installing Django.
+
+* Next, work through the tutorials in order (``docs/intro/tutorial01.txt``,
+  ``docs/intro/tutorial02.txt``, etc.).
+
+* If you want to set up an actual deployment server, read
+  ``docs/howto/deployment/index.txt`` for instructions.
+
+* You'll probably want to read through the topical guides (in ``docs/topics``)
+  next; from there you can jump to the HOWTOs (in ``docs/howto``) for specific
+  problems, and check out the reference (``docs/ref``) for gory details.
+
+* See ``docs/README`` for instructions on building an HTML version of the docs.
+
+Docs are updated rigorously. If you find any problems in the docs, or think
+they should be clarified in any way, please take 30 seconds to fill out a
+ticket here: https://code.djangoproject.com/newticket
+
+To get more help:
+
+* Join the ``#django`` channel on ``irc.libera.chat``. Lots of helpful people
+  hang out there. `Webchat is available <https://web.libera.chat/#django>`_.
+
+* Join the django-users mailing list, or read the archives, at
+  https://groups.google.com/group/django-users.
+
+* Join the `Django Discord community <https://discord.gg/xcRH6mN4fa>`_.
+
+* Join the community on the `Django Forum <https://forum.djangoproject.com/>`_.
+
+To contribute to Django:
+
+* Check out https://docs.djangoproject.com/en/dev/internals/contributing/ for
+  information about getting involved.
+
+To run Django's test suite:
+
+* Follow the instructions in the "Unit tests" section of
+  ``docs/internals/contributing/writing-code/unit-tests.txt``, published online at
+  https://docs.djangoproject.com/en/dev/internals/contributing/writing-code/unit-tests/#running-the-unit-tests
+
+Supporting the Development of Django
+====================================
+
+Django's development depends on your contributions.
+
+If you depend on Django, remember to support the Django Software Foundation: https://www.djangoproject.com/fundraising/

+ 4540 - 0
courses/django_kind/env/lib/python3.12/site-packages/Django-5.1.4.dist-info/RECORD

@@ -0,0 +1,4540 @@
+../../../bin/django-admin,sha256=3TbjkpC-qDRGsHaCRMDYvDO7ZaSuQXHp94IBHxpG9jE,309
+Django-5.1.4.dist-info/AUTHORS,sha256=PRqRG0Fm9_wNJAoFDQo51gEVArm104sUEQB5GRGBSxw,43110
+Django-5.1.4.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
+Django-5.1.4.dist-info/LICENSE,sha256=uEZBXRtRTpwd_xSiLeuQbXlLxUbKYSn5UKGM0JHipmk,1552
+Django-5.1.4.dist-info/LICENSE.python,sha256=ktIAtrhtqXpPighr74DsWGJ6aCryy_ks3CvX6ekGLlE,14261
+Django-5.1.4.dist-info/METADATA,sha256=3ncFfKogmIzQS6ntokf-X0bIta6zFv69XX3XnSidlAg,4218
+Django-5.1.4.dist-info/RECORD,,
+Django-5.1.4.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+Django-5.1.4.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
+Django-5.1.4.dist-info/entry_points.txt,sha256=hi1U04jQDqr9xaV6Gklnqh-d69jiCZdS73E0l_671L4,82
+Django-5.1.4.dist-info/top_level.txt,sha256=V_goijg9tfO20ox_7os6CcnPvmBavbxu46LpJiNLwjA,7
+django/__init__.py,sha256=iqYpigt8VA3UAufWgjUounVu0J838XIrUxKIJ6LDAdk,799
+django/__main__.py,sha256=XO-CRvbZFCKtIvAT6Jvbn32dWnv2pnNszRVS-1nKX0I,212
+django/__pycache__/__init__.cpython-312.pyc,,
+django/__pycache__/__main__.cpython-312.pyc,,
+django/__pycache__/shortcuts.cpython-312.pyc,,
+django/apps/__init__.py,sha256=8WZTI_JnNuP4tyfuimH3_pKQYbDAy2haq-xkQT1UXkc,90
+django/apps/__pycache__/__init__.cpython-312.pyc,,
+django/apps/__pycache__/config.cpython-312.pyc,,
+django/apps/__pycache__/registry.cpython-312.pyc,,
+django/apps/config.py,sha256=1Zhxt4OrwRnOmsT_B_BurImz3oi8330TJG0rRRJ58bQ,11482
+django/apps/registry.py,sha256=rdexON5JuhKAMWAZv4k2DH0fRSKdPZoi6_tTjOUgFRA,17693
+django/conf/__init__.py,sha256=z-39ierCs_8FYomobh9PWESoZI5RJ-TgzEuew8B9kJM,9809
+django/conf/__pycache__/__init__.cpython-312.pyc,,
+django/conf/__pycache__/global_settings.cpython-312.pyc,,
+django/conf/app_template/__init__.py-tpl,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/app_template/admin.py-tpl,sha256=suMo4x8I3JBxAFBVIdE-5qnqZ6JAZV0FESABHOSc-vg,63
+django/conf/app_template/apps.py-tpl,sha256=jrRjsh9lSkUvV4NnKdlAhLDtvydwBNjite0w2J9WPtI,171
+django/conf/app_template/migrations/__init__.py-tpl,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/app_template/models.py-tpl,sha256=Vjc0p2XbAPgE6HyTF6vll98A4eDhA5AvaQqsc4kQ9AQ,57
+django/conf/app_template/tests.py-tpl,sha256=mrbGGRNg5jwbTJtWWa7zSKdDyeB4vmgZCRc2nk6VY-g,60
+django/conf/app_template/views.py-tpl,sha256=xc1IQHrsij7j33TUbo-_oewy3vs03pw_etpBWaMYJl0,63
+django/conf/global_settings.py,sha256=UaMjYpMCgVGN3h2uxsLYnxk5t7hXfvq5650ctiy-BWM,22889
+django/conf/locale/__init__.py,sha256=QHDK8QIAcRjGMtWL8QVgYA_6psetuZuWBJkPwumTeI8,13864
+django/conf/locale/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/af/LC_MESSAGES/django.mo,sha256=xpMB1OGspYCduAEidr_EPfAJon5f1JrF_WCQFokkoBo,27068
+django/conf/locale/af/LC_MESSAGES/django.po,sha256=sQd5MkwXD8R2o28JFbnp4pIwqvz_thflWmBo9a_4QjY,29915
+django/conf/locale/ar/LC_MESSAGES/django.mo,sha256=qBaEPhfJxd2mK1uPH7J06hPI3_leRPsWkVgcKtJSAvQ,35688
+django/conf/locale/ar/LC_MESSAGES/django.po,sha256=MQeB4q0H-uDLurniJP5b2SBOTETAUl9k9NHxtaw0nnU,38892
+django/conf/locale/ar/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/ar/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/ar/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/ar/formats.py,sha256=EI9DAiGt1avNY-a6luMnAqKISKGHXHiKE4QLRx7wGHU,696
+django/conf/locale/ar_DZ/LC_MESSAGES/django.mo,sha256=QosXYYYvQjGu13pLrC9LIVwUQXVwdJpIYn7RB9QCJY8,33960
+django/conf/locale/ar_DZ/LC_MESSAGES/django.po,sha256=2iT_sY4XedSSiHagu03OgpYXWNJVaKDwKUfxgEN4k3k,37626
+django/conf/locale/ar_DZ/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/ar_DZ/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/ar_DZ/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/ar_DZ/formats.py,sha256=T84q3oMKng-L7_xymPqYwpzs78LvvfHy2drfSRj8XjE,901
+django/conf/locale/ast/LC_MESSAGES/django.mo,sha256=XSStt50HP-49AJ8wFcnbn55SLncJCsS2lx_4UwK-h-8,15579
+django/conf/locale/ast/LC_MESSAGES/django.po,sha256=7qZUb5JjfrWLqtXPRjpNOMNycbcsEYpNO-oYmazLTk4,23675
+django/conf/locale/az/LC_MESSAGES/django.mo,sha256=EJI2hYCCFFJb0YhaS7b5LrHOG6TGT_lJSOYQ2K7VAbY,28595
+django/conf/locale/az/LC_MESSAGES/django.po,sha256=44nzF7PPC0Ax1QI-PSpwvAGyyKQBwoLyZKJlPfJ9vfw,30893
+django/conf/locale/az/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/az/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/az/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/az/formats.py,sha256=JQoS2AYHKJxiH6TJas1MoeYgTeUv5XcNtYUHF7ulDmw,1087
+django/conf/locale/be/LC_MESSAGES/django.mo,sha256=rcdijOhkdSXs8BoQZN5jQDB-pkWYlgWF3m5VfJjCssI,37554
+django/conf/locale/be/LC_MESSAGES/django.po,sha256=7h7Z5qvjhD3BYgmbF1G7-Z2I70t1figiFlvMAz6twA4,40172
+django/conf/locale/bg/LC_MESSAGES/django.mo,sha256=x22bBhceDhNZXSoXiTKnc7w_HvtmW3EfWrZgsomUv6A,34729
+django/conf/locale/bg/LC_MESSAGES/django.po,sha256=xTU8GIhvPPuU7K4G8lZq8FXFsWiloT2u-118KtxkxBc,37283
+django/conf/locale/bg/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/bg/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/bg/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/bg/formats.py,sha256=LC7P_5yjdGgsxLQ_GDtC8H2bz9NTxUze_CAtzlm37TA,705
+django/conf/locale/bn/LC_MESSAGES/django.mo,sha256=sB0RIFrGS11Z8dx5829oOFw55vuO4vty3W4oVzIEe8Q,16660
+django/conf/locale/bn/LC_MESSAGES/django.po,sha256=rF9vML3LDOqXkmK6R_VF3tQaFEoZI7besJAPx5qHNM0,26877
+django/conf/locale/bn/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/bn/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/bn/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/bn/formats.py,sha256=jynhZ9XNNuxTXeF7f2FrJYYZuFwlLY58fGfQ6gVs7s8,964
+django/conf/locale/br/LC_MESSAGES/django.mo,sha256=Xow2-sd55CZJsvfF8axtxXNRe27EDwxKixCGelVQ4aU,14009
+django/conf/locale/br/LC_MESSAGES/django.po,sha256=ODCUDdEDAvsOVOAr49YiWT2YQaBZmc-38brdgYWc8Bs,24293
+django/conf/locale/bs/LC_MESSAGES/django.mo,sha256=Xa5QAbsHIdLkyG4nhLCD4UHdCngrw5Oh120abCNdWlA,10824
+django/conf/locale/bs/LC_MESSAGES/django.po,sha256=IB-2VvrQKUivAMLMpQo1LGRAxw3kj-7kB6ckPai0fug,22070
+django/conf/locale/bs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/bs/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/bs/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/bs/formats.py,sha256=760m-h4OHpij6p_BAD2dr3nsWaTb6oR1Y5culX9Gxqw,705
+django/conf/locale/ca/LC_MESSAGES/django.mo,sha256=v6lEJTUbXyEUBsctIdNFOg-Ck5MVFbuz-JgjqkUe32c,27707
+django/conf/locale/ca/LC_MESSAGES/django.po,sha256=16M-EtYLbfKnquh-IPRjWxTdHAqtisDc46Dzo5n-ZMc,30320
+django/conf/locale/ca/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/ca/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/ca/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/ca/formats.py,sha256=s7N6Ns3yIqr_KDhatnUvfjbPhUbrhvemB5HtCeodGZo,940
+django/conf/locale/ckb/LC_MESSAGES/django.mo,sha256=-Wk2cPQA7s-zQQKuzxnrQ18w-9LnAOfT3Ji5htLgbqI,34015
+django/conf/locale/ckb/LC_MESSAGES/django.po,sha256=OlbnQh93KtkGZ0yQKi8_r-BQQceL5EvAiB30f3Z84Vw,36195
+django/conf/locale/ckb/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/ckb/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/ckb/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/ckb/formats.py,sha256=EbmQC-dyQl8EqVQOVGwy1Ra5-P1n-J3UF4K55p3VzOM,728
+django/conf/locale/cs/LC_MESSAGES/django.mo,sha256=7_tvOmbJAdC-A1yk1503fdzjBxpwA9QJmfRcyPsmTBw,30186
+django/conf/locale/cs/LC_MESSAGES/django.po,sha256=wDPx3mYbrjmdTJEjNJM9odEpMT3j-xSkHqx1FARKMF0,33138
+django/conf/locale/cs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/cs/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/cs/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/cs/formats.py,sha256=3MA70CW0wfr0AIYvYqE0ACmX79tNOx-ZdlR6Aetp9e8,1539
+django/conf/locale/cy/LC_MESSAGES/django.mo,sha256=s7mf895rsoiqrPrXpyWg2k85rN8umYB2aTExWMTux7s,18319
+django/conf/locale/cy/LC_MESSAGES/django.po,sha256=S-1PVWWVgYmugHoYUlmTFAzKCpI81n9MIAhkETbpUoo,25758
+django/conf/locale/cy/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/cy/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/cy/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/cy/formats.py,sha256=NY1pYPfpu7XjLMCCuJk5ggdpLcufV1h101ojyxfPUrY,1355
+django/conf/locale/da/LC_MESSAGES/django.mo,sha256=V5XqSSfkF19P9QbNWPVlF-x3_3di8YohxNlbCRyyeG4,27799
+django/conf/locale/da/LC_MESSAGES/django.po,sha256=8Wkt220nr-BgTKMXzFK_y4o6v8wrz4mof_sI30vJlVs,30236
+django/conf/locale/da/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/da/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/da/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/da/formats.py,sha256=-y3033Fo7COyY0NbxeJVYGFybrnLbgXtRf1yBGlouys,876
+django/conf/locale/de/LC_MESSAGES/django.mo,sha256=-J6VqvJeSF8tk4rjb1aI5MSWwyV372EPzwI3O18vecE,29167
+django/conf/locale/de/LC_MESSAGES/django.po,sha256=RZMqmCY1nUVapY7ryTBN3vFNlEsuhw8mQC7b5M6IV9c,31680
+django/conf/locale/de/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/de/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/de/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/de/formats.py,sha256=fysX8z5TkbPUWAngoy_sMeFGWp2iaNU6ftkBz8cqplg,996
+django/conf/locale/de_CH/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/de_CH/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/de_CH/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/de_CH/formats.py,sha256=22UDF62ESuU0Jp_iNUqAj-Bhq4_-frpji0-ynBdHXYk,1377
+django/conf/locale/dsb/LC_MESSAGES/django.mo,sha256=bk6Zro_bOi3XJbPqJmSQm9CmN03uBxzbplR_GvviOD4,30724
+django/conf/locale/dsb/LC_MESSAGES/django.po,sha256=7t1URhKYbg8wl7Z_SXbkuuRkZtNvtPSTnijIFiAAxUA,33248
+django/conf/locale/el/LC_MESSAGES/django.mo,sha256=P5lTOPFcl9x6_j69ZN3hM_mQbhW7Fbbx02RtTNJwfS0,33648
+django/conf/locale/el/LC_MESSAGES/django.po,sha256=rZCComPQcSSr8ZDLPgtz958uBeBZsmV_gEP-sW88kRA,37123
+django/conf/locale/el/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/el/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/el/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/el/formats.py,sha256=RON2aqQaQK3DYVF_wGlBQJDHrhANxypcUW_udYKI-ro,1241
+django/conf/locale/en/LC_MESSAGES/django.mo,sha256=mVpSj1AoAdDdW3zPZIg5ZDsDbkSUQUMACg_BbWHGFig,356
+django/conf/locale/en/LC_MESSAGES/django.po,sha256=5rdKpzn7YKtjU3sGEHcCGPD9j0c907Xo9k_noqnTglo,30401
+django/conf/locale/en/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/en/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/en/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/en/formats.py,sha256=VTQUhaZ_WFhS5rQj0PxbnoMySK0nzUSqrd6Gx-DtXxI,2438
+django/conf/locale/en_AU/LC_MESSAGES/django.mo,sha256=SntsKx21R2zdjj0D73BkOXGTDnoN5unsLMJ3y06nONM,25633
+django/conf/locale/en_AU/LC_MESSAGES/django.po,sha256=6Qh4Z6REzhUdG5KwNPNK9xgLlgq3VbAJuoSXyd_eHdE,28270
+django/conf/locale/en_AU/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/en_AU/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/en_AU/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/en_AU/formats.py,sha256=BoI5UviKGZ4TccqLmxpcdMf0Yk1YiEhY_iLQUddjvi0,1650
+django/conf/locale/en_CA/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/en_CA/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/en_CA/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/en_CA/formats.py,sha256=joB2Dy7XYhlii_PBJfuzHNLbOPmRXW2JjYkmxFr6KxI,1166
+django/conf/locale/en_GB/LC_MESSAGES/django.mo,sha256=jSIe44HYGfzQlPtUZ8tWK2vCYM9GqCKs-CxLURn4e1o,12108
+django/conf/locale/en_GB/LC_MESSAGES/django.po,sha256=PTXvOpkxgZFRoyiqftEAuMrFcYRLfLDd6w0K8crN8j4,22140
+django/conf/locale/en_GB/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/en_GB/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/en_GB/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/en_GB/formats.py,sha256=cJN8YNthkIOHCIMnwiTaSZ6RCwgSHkjWYMcfw8VFScE,1650
+django/conf/locale/en_IE/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/en_IE/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/en_IE/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/en_IE/formats.py,sha256=aKEIT96Y6tzbGHFu3qsFzFc4Qw_uzhNjB69GpmP6qX8,1484
+django/conf/locale/eo/LC_MESSAGES/django.mo,sha256=TPgHTDrh1amnOQjA7sY-lQvicdFewMutOfoptV3OKkU,27676
+django/conf/locale/eo/LC_MESSAGES/django.po,sha256=IPo-3crOWkp5dDQPDAFSzgCbf9OHjWB1zE3mklhTexk,30235
+django/conf/locale/eo/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/eo/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/eo/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/eo/formats.py,sha256=zIEAk-SiLX0cvQVmRc3LpmV69jwRrejMMdC7vtVsSh0,1715
+django/conf/locale/es/LC_MESSAGES/django.mo,sha256=obYxux5pMwwbgMs6c_I5T-3CR7e_07d0h-JwmzwsKWU,29265
+django/conf/locale/es/LC_MESSAGES/django.po,sha256=77fpBrwtaZ3nvcXyLrf5k4Psq22dHuN0iR7OPn0MUTs,33344
+django/conf/locale/es/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/es/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/es/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/es/formats.py,sha256=7SusO1dPErY68h5g4lpxvPbsJYdrbTcr_0EX7uDKYNo,978
+django/conf/locale/es_AR/LC_MESSAGES/django.mo,sha256=Bopydg7VICPh0jmrCT7REwC6nBQJG_-42PlTIE5l1eA,29668
+django/conf/locale/es_AR/LC_MESSAGES/django.po,sha256=RHzG_jk2J-AkjkTfwN3Ai_Sq3nGbDk3XpLI9j3DjvLc,32071
+django/conf/locale/es_AR/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/es_AR/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/es_AR/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/es_AR/formats.py,sha256=4qgOJoR2K5ZE-pA2-aYRwFW7AbK-M9F9u3zVwgebr2w,935
+django/conf/locale/es_CO/LC_MESSAGES/django.mo,sha256=ehUwvqz9InObH3fGnOLuBwivRTVMJriZmJzXcJHsfjc,18079
+django/conf/locale/es_CO/LC_MESSAGES/django.po,sha256=XRgn56QENxEixlyix3v4ZSTSjo4vn8fze8smkrv_gc4,25107
+django/conf/locale/es_CO/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/es_CO/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/es_CO/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/es_CO/formats.py,sha256=0uAbBvOkdJZKjvhrrd0htScdO7sTgbofOkkC8A35_a8,691
+django/conf/locale/es_MX/LC_MESSAGES/django.mo,sha256=UkpQJeGOs_JQRmpRiU6kQmmYGL_tizL4JQOWb9i35M4,18501
+django/conf/locale/es_MX/LC_MESSAGES/django.po,sha256=M0O6o1f3V-EIY9meS3fXP_c7t144rXWZuERF5XeG5Uo,25870
+django/conf/locale/es_MX/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/es_MX/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/es_MX/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/es_MX/formats.py,sha256=fBvyAqBcAXARptSE3hxwzFYNx3lEE8QrhNrCWuuGNlA,768
+django/conf/locale/es_NI/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/es_NI/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/es_NI/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/es_NI/formats.py,sha256=UiOadPoMrNt0iTp8jZVq65xR_4LkOwp-fjvFb8MyNVg,711
+django/conf/locale/es_PR/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/es_PR/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/es_PR/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/es_PR/formats.py,sha256=VVTlwyekX80zCKlg1P4jhaAdKNpN5I64pW_xgrhpyVs,675
+django/conf/locale/es_VE/LC_MESSAGES/django.mo,sha256=h-h1D_Kr-LI_DyUJuIG4Zbu1HcLWTM1s5X515EYLXO8,18840
+django/conf/locale/es_VE/LC_MESSAGES/django.po,sha256=Xj38imu4Yw-Mugwge5CqAqWlcnRWnAKpVBPuL06Twjs,25494
+django/conf/locale/et/LC_MESSAGES/django.mo,sha256=G4JFXVc99Y4GDRrqMb6LRH4Iprg_EmEYMZFW6zSwKBk,27273
+django/conf/locale/et/LC_MESSAGES/django.po,sha256=Hi-kAoqksNbFYkGda0_kphd34Oy9Ti78-oPBiYpV1lg,30056
+django/conf/locale/et/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/et/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/et/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/et/formats.py,sha256=DyFSZVuGSYGoImrRI2FodeM51OtvIcCkKzkI0KvYTQw,707
+django/conf/locale/eu/LC_MESSAGES/django.mo,sha256=EdncCA6Qp76DsqkyEYygaZFrnKRYzJ6LEucQqIjCsSM,21725
+django/conf/locale/eu/LC_MESSAGES/django.po,sha256=6T-yCAeg_8ntlqD_KJyjbqY0qgKPTwi3J46j0J6Ld1I,27752
+django/conf/locale/eu/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/eu/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/eu/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/eu/formats.py,sha256=-PuRA6eHeXP8R3YV0aIEQRbk2LveaZk-_kjHlBT-Drg,749
+django/conf/locale/fa/LC_MESSAGES/django.mo,sha256=i9wWfM-zV76dkEoItqgfDniZ8qI66htM3cw48bBnvNg,31655
+django/conf/locale/fa/LC_MESSAGES/django.po,sha256=yry0L0s1KLG-NZ5T6rAAiQ1j7vhc3vXG24Knzn141eo,35114
+django/conf/locale/fa/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/fa/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/fa/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/fa/formats.py,sha256=v0dLaIh6-CWCAQHkmX0PaIlA499gTeRcJEi7lVJzw9o,722
+django/conf/locale/fi/LC_MESSAGES/django.mo,sha256=_Co3hzTYSaAMnKp8sNnxlX73AtEfjdUaqK46fiV7LdA,27865
+django/conf/locale/fi/LC_MESSAGES/django.po,sha256=_vBbAfxE0j-qD8PKwyxalip51sRZpA1NRpDnQwsyzXY,30420
+django/conf/locale/fi/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/fi/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/fi/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/fi/formats.py,sha256=CO_wD5ZBHwAVgjxArXktLCD7M-PPhtHbayX_bBKqhlA,1213
+django/conf/locale/fr/LC_MESSAGES/django.mo,sha256=7VGI5GSSsL83Z7rrN5r5BcRGKVcN0sTLe4cXygpzr5w,30291
+django/conf/locale/fr/LC_MESSAGES/django.po,sha256=ubj47GdaMGdh5ureglmUxmouEWF_jI9aSXz-0j3KMPI,32907
+django/conf/locale/fr/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/fr/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/fr/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/fr/formats.py,sha256=0uO3NMUAc2rRZOtr9SMJgFHTNNhr8t2xrGruVBRHTmw,938
+django/conf/locale/fr_BE/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/fr_BE/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/fr_BE/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/fr_BE/formats.py,sha256=DB7W-i5BYeRjMRGWMWmm5oK4FNOTy4H4LL_xx6Ztk00,1154
+django/conf/locale/fr_CA/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/fr_CA/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/fr_CA/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/fr_CA/formats.py,sha256=uSZ4s7XJmcutcbx51DVRu2Sh9ZkOhlTU1RHI37NQqQs,1171
+django/conf/locale/fr_CH/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/fr_CH/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/fr_CH/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/fr_CH/formats.py,sha256=DB7W-i5BYeRjMRGWMWmm5oK4FNOTy4H4LL_xx6Ztk00,1154
+django/conf/locale/fy/LC_MESSAGES/django.mo,sha256=9P7zoJtaYHfXly8d6zBoqkxLM98dO8uI6nmWtsGu-lM,2286
+django/conf/locale/fy/LC_MESSAGES/django.po,sha256=jveK-2MjopbqC9jWcrYbttIb4DUmFyW1_-0tYaD6R0I,19684
+django/conf/locale/fy/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/fy/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/fy/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/fy/formats.py,sha256=mJXj1dHUnO883PYWPwuI07CNbjmnfBTQVRXZMg2hmOk,658
+django/conf/locale/ga/LC_MESSAGES/django.mo,sha256=AE9Vz07y6hXsV3gP-E3uboUU1nWLREpQYUBhKXI0UZY,31429
+django/conf/locale/ga/LC_MESSAGES/django.po,sha256=3biGJaUwzLN_q9b1Pe3_lpQ4-zlT8qEGhCGIU1bMzGo,34517
+django/conf/locale/ga/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/ga/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/ga/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/ga/formats.py,sha256=Qh7R3UMfWzt7QIdMZqxY0o4OMpVsqlchHK7Z0QnDWds,682
+django/conf/locale/gd/LC_MESSAGES/django.mo,sha256=2VKzI7Nqd2NjABVQGdcduWHjj0h2b3UBGQub7xaTVPs,30752
+django/conf/locale/gd/LC_MESSAGES/django.po,sha256=3PfuhhmosuarfPjvM2TVf2kHhZaw5_G8oIM2VWTc3gI,33347
+django/conf/locale/gd/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/gd/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/gd/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/gd/formats.py,sha256=7doL7JIoCqA_o-lpCwM3jDHMpptA3BbSgeLRqdZk8Lc,715
+django/conf/locale/gl/LC_MESSAGES/django.mo,sha256=UJY2CZtRqTkiPz5CgV1y1qPbcxZ6tPZvYtAWhwCNGgQ,28464
+django/conf/locale/gl/LC_MESSAGES/django.po,sha256=ZT-YXU4N4Z6qYkUPm84IXPqLznbOsOEE-PQJN9FCzIc,30925
+django/conf/locale/gl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/gl/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/gl/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/gl/formats.py,sha256=ygSFv-YTS8htG_LW0awegkkOarPRTZNPbUck5sxkAwI,757
+django/conf/locale/he/LC_MESSAGES/django.mo,sha256=pAzuekmiofxdO7eLRThdsoghuHLWhzaeIrrNy0s6eCQ,32301
+django/conf/locale/he/LC_MESSAGES/django.po,sha256=JHeqYJDlX7s9sAkx1voy68XF_w21sopMLypB3I_ioqs,35086
+django/conf/locale/he/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/he/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/he/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/he/formats.py,sha256=M-tu-LmTZd_oYPNH6CZEsdxJN526RUOfnLHlQxRL0N0,712
+django/conf/locale/hi/LC_MESSAGES/django.mo,sha256=8pV5j5q8VbrxdVkcS0qwhVx6DmXRRXPKfRsm3nWhI2g,19712
+django/conf/locale/hi/LC_MESSAGES/django.po,sha256=DPV-I1aXgIiZB7zHdEgAHShZFyb9zlNmMXlyjH5ug0I,29221
+django/conf/locale/hi/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/hi/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/hi/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/hi/formats.py,sha256=JArVM9dMluSP-cwpZydSVXHB5Vs9QKyR9c-bftI9hds,684
+django/conf/locale/hr/LC_MESSAGES/django.mo,sha256=HP4PCb-i1yYsl5eqCamg5s3qBxZpS_aXDDKZ4Hlbbcc,19457
+django/conf/locale/hr/LC_MESSAGES/django.po,sha256=qeVJgKiAv5dKR2msD2iokSOApZozB3Gp0xqzC09jnvs,26329
+django/conf/locale/hr/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/hr/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/hr/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/hr/formats.py,sha256=F4mIdDoaOYJ_lPmsJ_6bQo4Zj8pOSVwuldm92zRy4Fo,1723
+django/conf/locale/hsb/LC_MESSAGES/django.mo,sha256=5MHc26OtRFQ2dUfzDiB-wSqIkS42A9sCe2I_Z_dbR10,30380
+django/conf/locale/hsb/LC_MESSAGES/django.po,sha256=GqEREqt7jWVckUK57SH6VSrz9WjCOlQcAY7lm9FZnAI,32876
+django/conf/locale/hu/LC_MESSAGES/django.mo,sha256=6rkADx1TKbehAEauc_lga5Yo43l26UAG83jrlHmUEiE,29197
+django/conf/locale/hu/LC_MESSAGES/django.po,sha256=kpqAkbZlMHbIY4hfPj230Rssvp8v7OrTpm7FTxbfbwY,31802
+django/conf/locale/hu/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/hu/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/hu/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/hu/formats.py,sha256=xAD7mNsC5wFA2_KGRbBMPKwj884pq0jCKmXhEenGAEk,1001
+django/conf/locale/hy/LC_MESSAGES/django.mo,sha256=KfmTnB-3ZUKDHeNgLiego2Af0WZoHTuNKss3zE-_XOE,22207
+django/conf/locale/hy/LC_MESSAGES/django.po,sha256=kNKlJ5NqZmeTnnxdqhmU3kXiqT9t8MgAFgxM2V09AIc,28833
+django/conf/locale/ia/LC_MESSAGES/django.mo,sha256=JcrpersrDAoJXrD3AnPYBCQyGJ-6kUzH_Q8StbqmMeE,21428
+django/conf/locale/ia/LC_MESSAGES/django.po,sha256=LG0juYDjf3KkscDxwjY3ac6H1u5BBwGHljW3QWvr1nc,26859
+django/conf/locale/id/LC_MESSAGES/django.mo,sha256=yvfilgl_Bt8BXM4bFbQACjS1Nx4vbkcJk3juYpocu7M,27405
+django/conf/locale/id/LC_MESSAGES/django.po,sha256=bLzDlWUNQPsloIlto2GVuStzGJtjiUuDZ3ky3U-R47Q,29999
+django/conf/locale/id/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/id/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/id/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/id/formats.py,sha256=kYyOxWHN3Jyif3rFxLFyBUjTzFUwmuaLrkw5JvGbEz8,1644
+django/conf/locale/ig/LC_MESSAGES/django.mo,sha256=tAZG5GKhEbrUCJtLrUxzmrROe1RxOhep8w-RR7DaDYo,27188
+django/conf/locale/ig/LC_MESSAGES/django.po,sha256=DB_I4JXKMY4M7PdAeIsdqnLSFpq6ImkGPCuY82rNBpY,28931
+django/conf/locale/ig/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/ig/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/ig/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/ig/formats.py,sha256=P3IsxhF5rNFZ5nCWUSyJfFLb0V1QdX_Xn-tYdrcll5Q,1119
+django/conf/locale/io/LC_MESSAGES/django.mo,sha256=uI78C7Qkytf3g1A6kVWiri_CbS55jReO2XmRfLTeNs0,14317
+django/conf/locale/io/LC_MESSAGES/django.po,sha256=FyN4ZTfNPV5TagM8NEhRts8y_FhehIPPouh_MfslnWY,23124
+django/conf/locale/is/LC_MESSAGES/django.mo,sha256=1pFU-dTPg2zs87L0ZqFFGS9q-f-XrzTOlhKujlyNL2E,24273
+django/conf/locale/is/LC_MESSAGES/django.po,sha256=76cQ_9DLg1jR53hiKSc1tLUMeKn8qTdPwpHwutEK014,28607
+django/conf/locale/is/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/is/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/is/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/is/formats.py,sha256=scsNfP4vVacxWIoN03qc2Fa3R8Uh5Izr1MqBicrAl3A,688
+django/conf/locale/it/LC_MESSAGES/django.mo,sha256=39GKwsSkjlL1h4vVysTWMuo4hq2UGQEC-kqJcaVW54A,28587
+django/conf/locale/it/LC_MESSAGES/django.po,sha256=t973TArDuAfpRpPgSTyc-bU6CPti2xkST9O2tVb8vFc,31670
+django/conf/locale/it/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/it/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/it/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/it/formats.py,sha256=KzkSb3KXBwfM3gk2FezyR-W8_RYKpnlFeFuIi5zl-S0,1774
+django/conf/locale/ja/LC_MESSAGES/django.mo,sha256=2Ye0yCvw0i_rJuhaPU4PmXMytkvUPh0eFAr2mcj3QAo,30945
+django/conf/locale/ja/LC_MESSAGES/django.po,sha256=E3n4fgr5Hje_J0OfnatKyGHkduYHigwuywmLRwynZHo,33466
+django/conf/locale/ja/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/ja/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/ja/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/ja/formats.py,sha256=COUuaXo5zCSNzEwJ0smjbm9Qj28YNBcGxm8qFCJv4sE,729
+django/conf/locale/ka/LC_MESSAGES/django.mo,sha256=4e8at-KNaxYJKIJd8r6iPrYhEdnaJ1qtPw-QHPMh-Sc,24759
+django/conf/locale/ka/LC_MESSAGES/django.po,sha256=pIgaLU6hXgVQ2WJp1DTFoubI7zHOUkkKMddwV3PTdt8,32088
+django/conf/locale/ka/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/ka/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/ka/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/ka/formats.py,sha256=elTGOjS-mxuoSCAKOm8Wz2aLfh4pWvNyClUFcrYq9ng,1861
+django/conf/locale/kab/LC_MESSAGES/django.mo,sha256=x5Kyq2Uf3XNlQP06--4lT8Q1MacA096hZbyMJRrHYIc,7139
+django/conf/locale/kab/LC_MESSAGES/django.po,sha256=DsFL3IzidcAnPoAWIfIbGJ6Teop1yKPBRALeLYrdiFA,20221
+django/conf/locale/kk/LC_MESSAGES/django.mo,sha256=krjcDvA5bu591zcP76bWp2mD2FL1VUl7wutaZjgD668,13148
+django/conf/locale/kk/LC_MESSAGES/django.po,sha256=RgM4kzn46ZjkSDHMAsyOoUg7GdxGiZ-vaEOdf7k0c5A,23933
+django/conf/locale/km/LC_MESSAGES/django.mo,sha256=kEvhZlH7lkY1DUIHTHhFVQzOMAPd_-QMItXTYX0j1xY,7223
+django/conf/locale/km/LC_MESSAGES/django.po,sha256=QgRxEiJMopO14drcmeSG6XEXQpiAyfQN0Ot6eH4gca8,21999
+django/conf/locale/km/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/km/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/km/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/km/formats.py,sha256=0UMLrZz1aI2sdRPkJ0YzX99co2IV6tldP7pEvGEPdP0,750
+django/conf/locale/kn/LC_MESSAGES/django.mo,sha256=fQ7AD5tUiV_PZFBxUjNPQN79dWBJKqfoYwRdrOaQjU4,17515
+django/conf/locale/kn/LC_MESSAGES/django.po,sha256=fS4Z7L4NGVQ6ipZ7lMHAqAopTBP0KkOc-eBK0IYdbBE,28133
+django/conf/locale/kn/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/kn/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/kn/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/kn/formats.py,sha256=X5j9VHIW2XRdeTzDFEyS8tG05OBFzP2R7sEGUQa_INg,680
+django/conf/locale/ko/LC_MESSAGES/django.mo,sha256=21a6D_pZTeyP9B7n19gLYBPuweAdWawAZFPYzVrUaRY,29175
+django/conf/locale/ko/LC_MESSAGES/django.po,sha256=_0oYJJD8RcPEkuyQ48xCuH60EINzVdCopTzIysYJIiM,32054
+django/conf/locale/ko/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/ko/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/ko/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/ko/formats.py,sha256=qn36EjiO4Bu12D_6qitjMDkBfy4M0LgFE-FhK8bPOto,2061
+django/conf/locale/ky/LC_MESSAGES/django.mo,sha256=IBVfwPwaZmaoljMRBGww_wWGMJqbF_IOHHnH2j-yJw8,31395
+django/conf/locale/ky/LC_MESSAGES/django.po,sha256=5ACTPMMbXuPJbU7Rfzs0yZHh3xy483pqo5DwSBQp4s4,33332
+django/conf/locale/ky/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/ky/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/ky/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/ky/formats.py,sha256=QCq7vxAD5fe9VhcjRhG6C3N28jNvdzKR-c-EvDSJ1Pg,1178
+django/conf/locale/lb/LC_MESSAGES/django.mo,sha256=tQSJLQUeD5iUt-eA2EsHuyYqsCSYFtbGdryATxisZsc,8008
+django/conf/locale/lb/LC_MESSAGES/django.po,sha256=GkKPLO3zfGTNync-xoYTf0vZ2GUSAotAjfPSP01SDMU,20622
+django/conf/locale/lt/LC_MESSAGES/django.mo,sha256=cdUzK5RYW-61Upf8Sd8ydAg9wXg21pJaIRWFSKPv17c,21421
+django/conf/locale/lt/LC_MESSAGES/django.po,sha256=Lvpe_xlbxSa5vWEossxBCKryDVT7Lwz0EnuL1kSO6OY,28455
+django/conf/locale/lt/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/lt/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/lt/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/lt/formats.py,sha256=C9ScR3gYswT1dQXFedUUnYe6DQPVGAS_nLxs0h2E3dE,1637
+django/conf/locale/lv/LC_MESSAGES/django.mo,sha256=EYHx-u3LwFcMCO9oHR1IAhAfm5axFLatAqe7CMNaszo,29213
+django/conf/locale/lv/LC_MESSAGES/django.po,sha256=920CMyfWRaJVTO6hJjiAJN33GTRcymBga7FjlqrcZhI,32015
+django/conf/locale/lv/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/lv/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/lv/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/lv/formats.py,sha256=k8owdq0U7-x6yl8ll1W5VjRoKdp8a1G2enH04G5_nvU,1713
+django/conf/locale/mk/LC_MESSAGES/django.mo,sha256=uQKmcys0rOsRynEa812XDAaeiNTeBMkqhR4LZ_cfdAk,22737
+django/conf/locale/mk/LC_MESSAGES/django.po,sha256=4K11QRb493wD-FM6-ruCxks9_vl_jB59V1c1rx-TdKg,29863
+django/conf/locale/mk/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/mk/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/mk/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/mk/formats.py,sha256=xwnJsXLXGogOqpP18u6GozjehpWAwwKmXbELolYV_k4,1451
+django/conf/locale/ml/LC_MESSAGES/django.mo,sha256=MGvV0e3LGUFdVIA-h__BuY8Ckom2dAhSFvAtZ8FiAXU,30808
+django/conf/locale/ml/LC_MESSAGES/django.po,sha256=iLllS6vlCpBNZfy9Xd_2Cuwi_1-Vz9fW4G1lUNOuZ6k,37271
+django/conf/locale/ml/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/ml/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/ml/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/ml/formats.py,sha256=ZR7tMdJF0U6K1H95cTqrFH4gop6ZuSQ7vD2h0yKq6mo,1597
+django/conf/locale/mn/LC_MESSAGES/django.mo,sha256=T8B76Nv_h6nCsTENPSAag_oGc67uj-fMy0jfHyQ7WLI,33282
+django/conf/locale/mn/LC_MESSAGES/django.po,sha256=uaXe-9Y8KcNBAij69nU0Id1ABE6q_pyNRhqigKGlzZY,35852
+django/conf/locale/mn/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/mn/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/mn/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/mn/formats.py,sha256=fsexJU9_UTig2PS_o11hcEmrbPBS8voI4ojuAVPOd_U,676
+django/conf/locale/mr/LC_MESSAGES/django.mo,sha256=wDaS4FOhKcxM7mhzwItieazQ_qBp97ZaKhTZgETDXt0,27608
+django/conf/locale/mr/LC_MESSAGES/django.po,sha256=6eBOK9ZgqrvD1pdIa3NtXojHx-qw_WJLxtNdCkEelrg,34449
+django/conf/locale/ms/LC_MESSAGES/django.mo,sha256=U4_kzfbYF7u78DesFRSReOIeVbOnq8hi_pReFfHfyUQ,27066
+django/conf/locale/ms/LC_MESSAGES/django.po,sha256=49pG3cykGjVfC9N8WPyskz-m7r6KmQiq5i8MR6eOi54,28985
+django/conf/locale/ms/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/ms/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/ms/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/ms/formats.py,sha256=YtOBs6s4j4SOmfB3cpp2ekcxVFoVGgUN8mThoSueCt0,1522
+django/conf/locale/my/LC_MESSAGES/django.mo,sha256=SjYOewwnVim3-GrANk2RNanOjo6Hy2omw0qnpkMzTlM,2589
+django/conf/locale/my/LC_MESSAGES/django.po,sha256=b_QSKXc3lS2Xzb45yVYVg307uZNaAnA0eoXX2ZmNiT0,19684
+django/conf/locale/nb/LC_MESSAGES/django.mo,sha256=qX1Z1F3YXVavlrECVkHXek9tsvJEXbWNrogdjjY3jCg,27007
+django/conf/locale/nb/LC_MESSAGES/django.po,sha256=QQ_adZsyp2BfzcJS-LXnZL0EMmUZLbnHsBB1pRRfV-8,29500
+django/conf/locale/nb/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/nb/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/nb/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/nb/formats.py,sha256=y1QLE-SG00eHwje0lkAToHtz4t621Rz_HQRyBWCgK8c,1552
+django/conf/locale/ne/LC_MESSAGES/django.mo,sha256=BcK8z38SNWDXXWVWUmOyHEzwk2xHEeaW2t7JwrxehKM,27248
+django/conf/locale/ne/LC_MESSAGES/django.po,sha256=_Kj_i2zMb7JLU7EN7Z7JcUn89YgonJf6agSFCjXa49w,33369
+django/conf/locale/nl/LC_MESSAGES/django.mo,sha256=1nQqA4PEgduFpzunMFi0pFVn2qmDPtI76umGzOlgoMU,28191
+django/conf/locale/nl/LC_MESSAGES/django.po,sha256=j5ZwYFj2voEYEybwkH5tPEYkn99g6xnCNH1Ej288yVw,31031
+django/conf/locale/nl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/nl/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/nl/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/nl/formats.py,sha256=cKaaOvRdeauORjvuZ1xyVcVsl36J3Zk4FSE-lnx2Xwg,3927
+django/conf/locale/nn/LC_MESSAGES/django.mo,sha256=Ccj8kjvjTefC8H6TuDCOdSrTmtkYXkmRR2V42HBMYo4,26850
+django/conf/locale/nn/LC_MESSAGES/django.po,sha256=oaVJTl0NgZ92XJv9DHdsXVaKAc81ky_R3CA6HljTH-8,29100
+django/conf/locale/nn/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/nn/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/nn/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/nn/formats.py,sha256=y1QLE-SG00eHwje0lkAToHtz4t621Rz_HQRyBWCgK8c,1552
+django/conf/locale/os/LC_MESSAGES/django.mo,sha256=LBpf_dyfBnvGOvthpn5-oJuFiSNHrgiVHBzJBR-FxOw,17994
+django/conf/locale/os/LC_MESSAGES/django.po,sha256=WYlAnNYwGFnH76Elnnth6YP2TWA-fEtvV5UinnNj7AA,26278
+django/conf/locale/pa/LC_MESSAGES/django.mo,sha256=H1hCnQzcq0EiSEaayT6t9H-WgONO5V4Cf7l25H2930M,11253
+django/conf/locale/pa/LC_MESSAGES/django.po,sha256=26ifUdCX9fOiXfWvgMkOXlsvS6h6nNskZcIBoASJec4,23013
+django/conf/locale/pl/LC_MESSAGES/django.mo,sha256=8vp8b354Fc7VM1YuOJlOZLf4befel3MDCK-NybFMBtA,30667
+django/conf/locale/pl/LC_MESSAGES/django.po,sha256=v4-ZzdKIL3nYVUxTszG9up4pK1dkxaUiIjFrksu3DAo,34616
+django/conf/locale/pl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/pl/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/pl/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/pl/formats.py,sha256=KREhPtHuzKS_ZsAqXs5LqYPGhn6O-jLd4WZQ-39BA8I,1032
+django/conf/locale/pt/LC_MESSAGES/django.mo,sha256=nlj_L7Z2FkXs1w6wCGGseuZ_U-IecnlfYRtG5jPkGrs,20657
+django/conf/locale/pt/LC_MESSAGES/django.po,sha256=ETTedbjU2J4FLi2QDHNN8C7zlAsvLWNUlYzkEV1WB6s,26224
+django/conf/locale/pt/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/pt/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/pt/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/pt/formats.py,sha256=RQ9MuIwUPhiY2u-1hFU2abs9Wqv1qZE2AUAfYVK-NU8,1520
+django/conf/locale/pt_BR/LC_MESSAGES/django.mo,sha256=4mM2UEHa1sbwQjlHbxhpGRafRyWyQs56zJ8d3nzNMD4,29218
+django/conf/locale/pt_BR/LC_MESSAGES/django.po,sha256=SvnvurlGJ2QutJGKbGmdAQ55QllPuDqAyDjF0ZYadSA,33298
+django/conf/locale/pt_BR/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/pt_BR/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/pt_BR/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/pt_BR/formats.py,sha256=J1IKV7cS2YMJ5_qlT9h1dDYUX9tLFvqA95l_GpZTLUY,1285
+django/conf/locale/ro/LC_MESSAGES/django.mo,sha256=9RSlC_3Ipn_Vm31ALaGHsrOA1IKmKJ5sN2m6iy5Hk60,21493
+django/conf/locale/ro/LC_MESSAGES/django.po,sha256=XoGlHKEnGlno_sbUTnbkg9nGkRfPIpxv7Wfm3hHGu9w,28099
+django/conf/locale/ro/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/ro/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/ro/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/ro/formats.py,sha256=e_dp0zyfFfoydrGyn6Kk3DnQIj7RTRuvRc6rQ6tSxzA,928
+django/conf/locale/ru/LC_MESSAGES/django.mo,sha256=Y9QMees4Kj3WQDoAtCcugQh2Ky1_ZoaU-vSyTckDxnk,38774
+django/conf/locale/ru/LC_MESSAGES/django.po,sha256=zWmJpjWwpKPnoCjIEKOjclbxBjWf6dwgwoJdnTEx0Jc,42141
+django/conf/locale/ru/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/ru/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/ru/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/ru/formats.py,sha256=lTfYbecdSmHCxebog_2bd0N32iD3nEq_f5buh9il-nI,1098
+django/conf/locale/sk/LC_MESSAGES/django.mo,sha256=2UgS2LCSCPEhJV4R2LQXxGw1LvAZMvi6B1ITaVD_x_U,29965
+django/conf/locale/sk/LC_MESSAGES/django.po,sha256=vt-A2Ayh5r-a49x3lLxe8FU7tm-S2YQHRk-N15smi9k,32799
+django/conf/locale/sk/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/sk/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/sk/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/sk/formats.py,sha256=bWj0FNpYfOAgi9J-L4VuiN6C_jsgPsKNdLYd9gTnFs0,1051
+django/conf/locale/sl/LC_MESSAGES/django.mo,sha256=1mzO4ZC9IYwbKM7iavLJfb2bYaLaC1UVmm4T37Xil7g,23147
+django/conf/locale/sl/LC_MESSAGES/django.po,sha256=EDR734fFO7UM_F-4Q-psEHc-VF2po7fl6n5akKdWYyY,29440
+django/conf/locale/sl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/sl/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/sl/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/sl/formats.py,sha256=Nq4IfEUnlGebMZeRvB2l9aps-5G5b4y1kQ_3MiJTfe8,1642
+django/conf/locale/sq/LC_MESSAGES/django.mo,sha256=resBCLeu82Vp4LMPj8HJCOFKPxXqpmDJtZq9orfGh34,28679
+django/conf/locale/sq/LC_MESSAGES/django.po,sha256=kO8LFug9I9JdqNDta9pybyN659LMJTlA0vxFkUHN7Io,31128
+django/conf/locale/sq/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/sq/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/sq/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/sq/formats.py,sha256=SA_jCSNwI8-p79skHoLxrPLZnkyq1PVadwT6gMt7n_M,688
+django/conf/locale/sr/LC_MESSAGES/django.mo,sha256=bqJfj3QMTIUFiMxYWBUBGXdjZFLrz1HXMoEINi_Z04I,35035
+django/conf/locale/sr/LC_MESSAGES/django.po,sha256=NGxxpRU-9gqj2I0yPzRuE3alMaUAgOhD_pteaLIhB6A,37561
+django/conf/locale/sr/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/sr/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/sr/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/sr/formats.py,sha256=F3_gYopOXINcllaPFzTqZrZ2oZ1ye3xzR0NQtlqXYp0,1729
+django/conf/locale/sr_Latn/LC_MESSAGES/django.mo,sha256=GHilyEVbIGQt6ItMgQJVk-m6TF8tgHI4rtidYmOwUGI,28715
+django/conf/locale/sr_Latn/LC_MESSAGES/django.po,sha256=FegpyTDYtB-kPG8d8EmK_lK3C7PSxhc2p9xLAZadO74,41466
+django/conf/locale/sr_Latn/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/sr_Latn/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/sr_Latn/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/sr_Latn/formats.py,sha256=BDZm-ajQgCIxQ8mCcckEH32IoCN9233TvAOXkg4mc38,1728
+django/conf/locale/sv/LC_MESSAGES/django.mo,sha256=sLEVlvxPVNVms8Tfmhxs84Ltbx7ryDZtwU54SGJXKRc,28006
+django/conf/locale/sv/LC_MESSAGES/django.po,sha256=Emb4MrDT_fsFdZRhixZztQVgYb5Wl-YpsR8bC9yY3hs,30872
+django/conf/locale/sv/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/sv/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/sv/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/sv/formats.py,sha256=9o8ZtaSq1UOa5y6Du3rQsLAAl5ZOEdVY1OVVMbj02RA,1311
+django/conf/locale/sw/LC_MESSAGES/django.mo,sha256=aUmIVLANgSCTK5Lq8QZPEKWjZWnsnBvm_-ZUcih3J6g,13534
+django/conf/locale/sw/LC_MESSAGES/django.po,sha256=GOE6greXZoLhpccsfPZjE6lR3G4vpK230EnIOdjsgPk,22698
+django/conf/locale/ta/LC_MESSAGES/django.mo,sha256=WeM8tElbcmL11P_D60y5oHKtDxUNWZM9UNgXe1CsRQ4,7094
+django/conf/locale/ta/LC_MESSAGES/django.po,sha256=kgHTFqysEMj1hqktLr-bnL1NRM715zTpiwhelqC232s,22329
+django/conf/locale/ta/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/ta/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/ta/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/ta/formats.py,sha256=vmjfiM54oJJxqcdgZJUNNQN7oMS-XLVBYJ4lWBb5ctY,682
+django/conf/locale/te/LC_MESSAGES/django.mo,sha256=Sk45kPC4capgRdW5ImOKYEVxiBjHXsosNyhVIDtHLBc,13259
+django/conf/locale/te/LC_MESSAGES/django.po,sha256=IQxpGTpsKUtBGN1P-KdGwvE7ojNCqKqPXEvYD3qT5A4,25378
+django/conf/locale/te/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/te/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/te/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/te/formats.py,sha256=-HOoZgmnME4--4CuXzcnhXqNma0Wh7Ninof3RCCGZkU,680
+django/conf/locale/tg/LC_MESSAGES/django.mo,sha256=ePzS2pD84CTkHBaiaMyXBxiizxfFBjHdsGH7hCt5p_4,28497
+django/conf/locale/tg/LC_MESSAGES/django.po,sha256=oSKu3YT3griCrDLPqptZmHcuviI99wvlfX6I6nLJnDk,33351
+django/conf/locale/tg/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/tg/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/tg/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/tg/formats.py,sha256=TG5TGfLNy4JSjl-QAWk46gIEb0ijdBpqPrDtwfJzshw,1160
+django/conf/locale/th/LC_MESSAGES/django.mo,sha256=SJeeJWbdF-Lae5BendxlyMKqx5zdDmh3GCQa8ER5FyY,18629
+django/conf/locale/th/LC_MESSAGES/django.po,sha256=K4ITjzHLq6DyTxgMAfu3CoGxrTd3aG2J6-ZxQj2KG1U,27507
+django/conf/locale/th/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/th/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/th/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/th/formats.py,sha256=SmCUD-zVgI1QE2HwqkFtAO87rJ-FoCjw1s-2-cfl1h0,1072
+django/conf/locale/tk/LC_MESSAGES/django.mo,sha256=qtFLB9rBkpUDv5LtNAZqkkCKtquMySyg3dzQ8x_Nb-Y,27792
+django/conf/locale/tk/LC_MESSAGES/django.po,sha256=dEjcfeYmvjKbAPFVCmrlh7rVOU90MgiYpoo1cHfPj2E,30232
+django/conf/locale/tk/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/tk/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/tk/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/tk/formats.py,sha256=TG5TGfLNy4JSjl-QAWk46gIEb0ijdBpqPrDtwfJzshw,1160
+django/conf/locale/tr/LC_MESSAGES/django.mo,sha256=38GDWb1p0LnWAwXC5CaRYrMgBDgB1O68Jrzer-2Z6Ko,28842
+django/conf/locale/tr/LC_MESSAGES/django.po,sha256=6dCHOghUd4tr14G3ylLQRLkjOZcmY8RDjfSuL6FMq8A,31433
+django/conf/locale/tr/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/tr/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/tr/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/tr/formats.py,sha256=yJg-7hmevD1gvj9iBRMCiYGgd5DxKZcL7T_C3K3ztME,1019
+django/conf/locale/tt/LC_MESSAGES/django.mo,sha256=r554DvdPjD_S8hBRjW8ehccEjEk8h7czQsp46FZZ_Do,14500
+django/conf/locale/tt/LC_MESSAGES/django.po,sha256=W8QgEAH7yXNmjWoF-UeqyVAu5jEMHZ5MXE60e5sawJc,24793
+django/conf/locale/udm/LC_MESSAGES/django.mo,sha256=cIf0i3TjY-yORRAcSev3mIsdGYT49jioTHZtTLYAEyc,12822
+django/conf/locale/udm/LC_MESSAGES/django.po,sha256=n9Az_8M8O5y16yE3iWmK20R9F9VoKBh3jR3iKwMgFlY,23113
+django/conf/locale/ug/LC_MESSAGES/django.mo,sha256=iaFelEuogA9O-dWIUlp_Zjpq33zMNaFCsOpuZT26LfM,35467
+django/conf/locale/ug/LC_MESSAGES/django.po,sha256=Zd3j_J7Su7VTe6TGd8ghDBD2bxX1NLKfA2wsrHPvS2w,37731
+django/conf/locale/ug/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/ug/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/ug/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/ug/formats.py,sha256=qoSAkaWqJ7FW2OTGaZs_CfiMN9PxAVxHecZfwNCzdUo,454
+django/conf/locale/uk/LC_MESSAGES/django.mo,sha256=WD7WRpvZXYTPDagVTbqdpVJSVM4zP8xAmJXKs30tP4I,29855
+django/conf/locale/uk/LC_MESSAGES/django.po,sha256=QeMUwkqdBdnpYt1c2kkAh65HWLMKcHsgfAV1Ca-C_6w,36185
+django/conf/locale/uk/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/uk/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/uk/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/uk/formats.py,sha256=ZmeYmL0eooFwQgmE054V36RQ469ZTfAv6k8SUJrDYQ8,1241
+django/conf/locale/ur/LC_MESSAGES/django.mo,sha256=M6R2DYFRBvcVRAsgVxVOLvH3e8v14b2mJs650UlUb2I,12291
+django/conf/locale/ur/LC_MESSAGES/django.po,sha256=Lr0DXaPqWtCFAxn10BQ0vlvZIMNRvCg_QJQxAC01eWk,23479
+django/conf/locale/uz/LC_MESSAGES/django.mo,sha256=CJSRoHJANkNevG-6QM-TL5VJ9UgS63dWPHeGHan9Ano,26443
+django/conf/locale/uz/LC_MESSAGES/django.po,sha256=u6En3LJg7x7VKsCNff3haprDlsizPxBukfWomKXaMak,29725
+django/conf/locale/uz/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/uz/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/uz/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/uz/formats.py,sha256=cdmqOUBVnPSyi2k9AkOGl27s89PymFePG2gtnYzYbiw,1176
+django/conf/locale/vi/LC_MESSAGES/django.mo,sha256=TMsBzDnf9kZndozqVUnEKtKxfH2N1ajLdrm8hJ4HkYI,17396
+django/conf/locale/vi/LC_MESSAGES/django.po,sha256=tL2rvgunvaN_yqpPSBYAKImFDaFaeqbnpEw_egI11Lo,25342
+django/conf/locale/vi/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/vi/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/vi/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/vi/formats.py,sha256=_xIugkqLnjN9dzIhefMpsJXaTPldr4blKSGS-c3swg0,762
+django/conf/locale/zh_Hans/LC_MESSAGES/django.mo,sha256=pc4Tj52sDX136DQQsxtNKQ2pqCnmLZdZlVlTtyfz124,26944
+django/conf/locale/zh_Hans/LC_MESSAGES/django.po,sha256=qzXCLkD580Q8MzmbBFtTzaMecalBsMrZFzJiNJrD_sk,30141
+django/conf/locale/zh_Hans/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/zh_Hans/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/zh_Hans/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/zh_Hans/formats.py,sha256=iMb9Taj6xQQA3l_NWCC7wUlQuh4YfNUgs2mHcQ6XUEo,1598
+django/conf/locale/zh_Hant/LC_MESSAGES/django.mo,sha256=IdUhxMJtFZAzsKuTKsG_ehCT9xMss31d-KoVf7GkWQg,26802
+django/conf/locale/zh_Hant/LC_MESSAGES/django.po,sha256=yZ1jlfTF9Do5TayisoXES41toj-m_Nb4jauJm73NITg,29034
+django/conf/locale/zh_Hant/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/locale/zh_Hant/__pycache__/__init__.cpython-312.pyc,,
+django/conf/locale/zh_Hant/__pycache__/formats.cpython-312.pyc,,
+django/conf/locale/zh_Hant/formats.py,sha256=iMb9Taj6xQQA3l_NWCC7wUlQuh4YfNUgs2mHcQ6XUEo,1598
+django/conf/project_template/manage.py-tpl,sha256=JDuGG02670bELmn3XLUSxHFZ8VFhqZTT_oN9VbT5Acc,674
+django/conf/project_template/project_name/__init__.py-tpl,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/conf/project_template/project_name/asgi.py-tpl,sha256=q_6Jo5tLy6ba-S7pLs3YTK7byxSBmU0oYylYJlNvwHI,428
+django/conf/project_template/project_name/settings.py-tpl,sha256=JskIPIEWPSX2p7_rlsPr60JDjmFC0bVEeMChmq--0OY,3342
+django/conf/project_template/project_name/urls.py-tpl,sha256=5en0vlo3TdXdQquXZVNENrmX2DZJxje156HqcRbySKU,789
+django/conf/project_template/project_name/wsgi.py-tpl,sha256=OCfjjCsdEeXPkJgFIrMml_FURt7msovNUPnjzb401fs,428
+django/conf/urls/__init__.py,sha256=qmpaRi5Gn2uaY9h3g9RNu0z3LDEpEeNL9JlfSLed9s0,292
+django/conf/urls/__pycache__/__init__.cpython-312.pyc,,
+django/conf/urls/__pycache__/i18n.cpython-312.pyc,,
+django/conf/urls/__pycache__/static.cpython-312.pyc,,
+django/conf/urls/i18n.py,sha256=M_lO6q_92QrrPoTY9oui95BQgJfPla9edRNuN5Vc4GM,1166
+django/conf/urls/static.py,sha256=gZOYaiIf3SxQ75N69GyVm9C0OmQv1r1IDrUJ0E7zMe0,908
+django/contrib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/admin/__init__.py,sha256=i0TwjHWq6qfZJ0e9pVWAZXxVHZ-eOPewGjtdwHljbOM,1203
+django/contrib/admin/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/admin/__pycache__/actions.cpython-312.pyc,,
+django/contrib/admin/__pycache__/apps.cpython-312.pyc,,
+django/contrib/admin/__pycache__/checks.cpython-312.pyc,,
+django/contrib/admin/__pycache__/decorators.cpython-312.pyc,,
+django/contrib/admin/__pycache__/exceptions.cpython-312.pyc,,
+django/contrib/admin/__pycache__/filters.cpython-312.pyc,,
+django/contrib/admin/__pycache__/forms.cpython-312.pyc,,
+django/contrib/admin/__pycache__/helpers.cpython-312.pyc,,
+django/contrib/admin/__pycache__/models.cpython-312.pyc,,
+django/contrib/admin/__pycache__/options.cpython-312.pyc,,
+django/contrib/admin/__pycache__/sites.cpython-312.pyc,,
+django/contrib/admin/__pycache__/tests.cpython-312.pyc,,
+django/contrib/admin/__pycache__/utils.cpython-312.pyc,,
+django/contrib/admin/__pycache__/widgets.cpython-312.pyc,,
+django/contrib/admin/actions.py,sha256=Rdz8-2cPMklSQoPuPBrhWY0MzgllGS6jHVDR0Mq2U48,3171
+django/contrib/admin/apps.py,sha256=BOiulA4tsb3wuAUtLGTGjrbywpSXX0dLo2pUCGV8URw,840
+django/contrib/admin/checks.py,sha256=KkyUfKtosw8cRETN3RSvPO2NOPgdEUjOt1ilnFMYvBM,50474
+django/contrib/admin/decorators.py,sha256=dki7GLFKOPT-mB5rxsYX12rox18BywroxmrzjG_VJXM,3481
+django/contrib/admin/exceptions.py,sha256=VJhzurallXV322hhZklmvp3OmDIZZQpbEOuE-CX7938,507
+django/contrib/admin/filters.py,sha256=xWca0wsA_fGlkgV9mAXA3RipmXvj8EKaumU4f_Kyk9s,27668
+django/contrib/admin/forms.py,sha256=0UCJstmmBfp_c_0AqlALJQYy9bxXo9fqoQQICQONGEo,1023
+django/contrib/admin/helpers.py,sha256=MBXCdcywfCWHUSymxYBNW8VyJ7u_lzpmz8ZISayYMR0,18622
+django/contrib/admin/locale/af/LC_MESSAGES/django.mo,sha256=pYiZtE4_lsLZTy0g4XzY3wx8DCNiDZXfRkSpGrDHyd4,17407
+django/contrib/admin/locale/af/LC_MESSAGES/django.po,sha256=yIx87yG_CHe1cWnimDcKnalK65_qaPqe3AAuDCpMjso,18838
+django/contrib/admin/locale/af/LC_MESSAGES/djangojs.mo,sha256=mvjNbeoFfpyc8aHeOi3-X7QGeY6o29IZPXMZT7BnOGU,5773
+django/contrib/admin/locale/af/LC_MESSAGES/djangojs.po,sha256=KdjKyHdgLPDj09K4IgTJ_KWU47ZlNSnuPklRZDT1bHo,6546
+django/contrib/admin/locale/am/LC_MESSAGES/django.mo,sha256=UOwMxYH1r5AEBpu-P9zxHazk3kwI4CtsPosGIYtl6Hs,8309
+django/contrib/admin/locale/am/LC_MESSAGES/django.po,sha256=NmsIZoBEQwyBIqbKjkwCJ2_iMHnMKB87atoT0iuNXrw,14651
+django/contrib/admin/locale/ar/LC_MESSAGES/django.mo,sha256=tzGQ8jSJc406IBBwtAErlXVqaA10glxB8krZtWp1Rq4,19890
+django/contrib/admin/locale/ar/LC_MESSAGES/django.po,sha256=RBJbiYNDy57K592OKghugZFYiHpTvxUoEQ_B26-5i8A,21339
+django/contrib/admin/locale/ar/LC_MESSAGES/djangojs.mo,sha256=xoI2xNKgspuuJe1UCUB9H6Kyp3AGhj5aeo_WEg5e23A,6545
+django/contrib/admin/locale/ar/LC_MESSAGES/djangojs.po,sha256=jwehFDFk3lMIEH43AEU_JyHOm84Seo-OLd5FmGBbaxo,7281
+django/contrib/admin/locale/ar_DZ/LC_MESSAGES/django.mo,sha256=ipELNNGQYb_nHTEQbUFED8IT26L9c2UXsELf4wk0q6k,19947
+django/contrib/admin/locale/ar_DZ/LC_MESSAGES/django.po,sha256=2mGF2NfofR8WgSJPShF5CrMjECXj0dGFcFaZ2lriulc,21378
+django/contrib/admin/locale/ar_DZ/LC_MESSAGES/djangojs.mo,sha256=L3N1U9OFXYZ8OfrvKHLbVvXa40biIDdmon0ZV8BOIvY,6423
+django/contrib/admin/locale/ar_DZ/LC_MESSAGES/djangojs.po,sha256=Atzp95E2dFtSHZHHna0pBCqU_2V7partODX675OBkQs,7206
+django/contrib/admin/locale/ast/LC_MESSAGES/django.mo,sha256=3uffu2zPbQ1rExUsG_ambggq854Vy8HbullkCYdazA4,2476
+django/contrib/admin/locale/ast/LC_MESSAGES/django.po,sha256=wCWFh9viYUhTGOX0mW3fpN2z0kdE6b7IaA-A5zzb3Yo,11676
+django/contrib/admin/locale/ast/LC_MESSAGES/djangojs.mo,sha256=kiG-lzQidkXER5s_6POO1G91mcAv9VAkAXI25jdYBLE,2137
+django/contrib/admin/locale/ast/LC_MESSAGES/djangojs.po,sha256=s4s6aHocTlzGcFi0p7cFGTi3K8AgoPvFCv7-Hji6At0,4085
+django/contrib/admin/locale/az/LC_MESSAGES/django.mo,sha256=iuElxhnD6K_xzp4WhuYrM6-EREY6WBWHntASQFOhFQ8,18963
+django/contrib/admin/locale/az/LC_MESSAGES/django.po,sha256=GiPWzcWbxWjfzDA4F_ed2j1Uce2Ktri8ZXm7ecF9jbk,20383
+django/contrib/admin/locale/az/LC_MESSAGES/djangojs.mo,sha256=sre90ULGTqwvLUyrrTJrj3kEPwlbP-VDg-fqT_02fsE,5225
+django/contrib/admin/locale/az/LC_MESSAGES/djangojs.po,sha256=-o9woCOf9ikbIptd9uTej6G-TtTQPKRSuK86N0Ta0yU,5968
+django/contrib/admin/locale/be/LC_MESSAGES/django.mo,sha256=ndFEwhHu8GP4EZQoJNSqH-oWNLWdEYcbleaFYCU74nI,23275
+django/contrib/admin/locale/be/LC_MESSAGES/django.po,sha256=QAwFZJpkz-Hm6vS5AHyQ8rxowt_LVhMAYC-cS78F9Qg,24597
+django/contrib/admin/locale/be/LC_MESSAGES/djangojs.mo,sha256=e1xbTtl47sBU5ZCUEf4fHN6E7rRkz_HIYCObX0lWDug,7703
+django/contrib/admin/locale/be/LC_MESSAGES/djangojs.po,sha256=DBSHPnSZm7AVqxg1fINkRQ89QVp_cdi4VhQ7Ynd1NWs,8466
+django/contrib/admin/locale/bg/LC_MESSAGES/django.mo,sha256=fNYcFUCFOnBEH_lR4t80bUN6IwkjS5tIs7xWRNxu80I,22994
+django/contrib/admin/locale/bg/LC_MESSAGES/django.po,sha256=1HZYpZgHwqJsPMwasK1O8zv7mDgX3t-2JTdtV_lzM_w,24461
+django/contrib/admin/locale/bg/LC_MESSAGES/djangojs.mo,sha256=IRQMah9wBmq0g9RZ5hBH_dvQD4Q_pmNG4jJHxCGWwZI,7195
+django/contrib/admin/locale/bg/LC_MESSAGES/djangojs.po,sha256=zv5xU9wS1PCdsmmWaV8txSdY4JduEse7w4iWd3QkzsE,7900
+django/contrib/admin/locale/bn/LC_MESSAGES/django.mo,sha256=I3KUX53ePEC-8x_bwkR5spx3WbJRR8Xf67_2Xrr7Ccg,18585
+django/contrib/admin/locale/bn/LC_MESSAGES/django.po,sha256=UvKCBSa5MuxxZ7U5pRWXH6CEQ9WCJH2cQND0jjBmgpQ,22889
+django/contrib/admin/locale/bn/LC_MESSAGES/djangojs.mo,sha256=t_OiMyPMsR2IdH65qfD9qvQfpWbwFueNuY72XSed2Io,2313
+django/contrib/admin/locale/bn/LC_MESSAGES/djangojs.po,sha256=iFwEJi4k3ULklCq9eQNUhKVblivQPJIoC_6lbyEkotY,4576
+django/contrib/admin/locale/br/LC_MESSAGES/django.mo,sha256=yCuMwrrEB_H44UsnKwY0E87sLpect_AMo0GdBjMZRPs,6489
+django/contrib/admin/locale/br/LC_MESSAGES/django.po,sha256=WMU_sN0ENWgyEbKOm8uVQfTQh9sabvKihtSdMt4XQBM,13717
+django/contrib/admin/locale/br/LC_MESSAGES/djangojs.mo,sha256=n7Yx2k9sAVSNtdY-2Ao6VFsnsx4aiExZ3TF_DnnrKU0,1658
+django/contrib/admin/locale/br/LC_MESSAGES/djangojs.po,sha256=gjg-VapbI9n_827CqNYhbtIQ8W9UcMmMObCsxCzReUU,4108
+django/contrib/admin/locale/bs/LC_MESSAGES/django.mo,sha256=44D550fxiO59Pczu5HZ6gvWEClsfmMuaxQWbA4lCW2M,8845
+django/contrib/admin/locale/bs/LC_MESSAGES/django.po,sha256=FrieR1JB4ssdWwYitJVpZO-odzPBKrW4ZsGK9LA595I,14317
+django/contrib/admin/locale/bs/LC_MESSAGES/djangojs.mo,sha256=SupUK-RLDcqJkpLEsOVjgZOWBRKQMALZLRXGEnA623M,1183
+django/contrib/admin/locale/bs/LC_MESSAGES/djangojs.po,sha256=TOtcfw-Spn5Y8Yugv2OlPoaZ5DRwJjRIl-YKiyU092U,3831
+django/contrib/admin/locale/ca/LC_MESSAGES/django.mo,sha256=Wj8KdBSUuUtebE45FK3kvzl155GdTv4KgecoMxFi0_g,17535
+django/contrib/admin/locale/ca/LC_MESSAGES/django.po,sha256=5s5RIsOY5uL1oQQ5IrOhsOgAWWFZ25vTcYURO2dlR8g,19130
+django/contrib/admin/locale/ca/LC_MESSAGES/djangojs.mo,sha256=HjPaPtF5TZGtRu1P40X2YIuRAoKndwurWE4nlZlc7sE,6075
+django/contrib/admin/locale/ca/LC_MESSAGES/djangojs.po,sha256=G7jxAwjnpvvlGinLWDx_awUBu6XwVrdIFqdxBDMVfJQ,6906
+django/contrib/admin/locale/ckb/LC_MESSAGES/django.mo,sha256=ZVy1U4xWrNSU7lUL2mfdqx9MMQODgbi5B5g7Cea_26M,23234
+django/contrib/admin/locale/ckb/LC_MESSAGES/django.po,sha256=TDGnHwoHvZbYmOvsQEU8rHAgzjp5dY1jAwyu3VGblbo,24560
+django/contrib/admin/locale/ckb/LC_MESSAGES/djangojs.mo,sha256=-Czkr04TLjKYmob6CyoJxuS3YcUs7z-I9Sgh6rOyOdc,7671
+django/contrib/admin/locale/ckb/LC_MESSAGES/djangojs.po,sha256=L1r7AcAvTOFO3_uzQ_9oRHEIYAcnDWd_oIIqX133mjU,8392
+django/contrib/admin/locale/cs/LC_MESSAGES/django.mo,sha256=w2IX5ZS8RaBtWWIvlPiAbcUDpmjiFD2ZGiqEkCzBSdc,19004
+django/contrib/admin/locale/cs/LC_MESSAGES/django.po,sha256=ijy86d9djUVhsRGT52tuLbrKRN3ETNQzo8bSxEdlmhs,20670
+django/contrib/admin/locale/cs/LC_MESSAGES/djangojs.mo,sha256=ArA6qnVlUAsj7EugF0GM4XW494VpTEj3Uu__Qu9jIig,6596
+django/contrib/admin/locale/cs/LC_MESSAGES/djangojs.po,sha256=DKsC0k5i9t3i77uxR_h99MOip-fc3JPDIV9EriGr7qw,7587
+django/contrib/admin/locale/cy/LC_MESSAGES/django.mo,sha256=7ifUyqraN1n0hbyTVb_UjRIG1jdn1HcwehugHBiQvHs,12521
+django/contrib/admin/locale/cy/LC_MESSAGES/django.po,sha256=bS_gUoKklZwd3Vs0YlRTt24-k5ure5ObTu-b5nB5qCA,15918
+django/contrib/admin/locale/cy/LC_MESSAGES/djangojs.mo,sha256=fOCA1fXEmJw_QaXEISLkuBhaMnEmP1ssP9lhqdCCC3c,3801
+django/contrib/admin/locale/cy/LC_MESSAGES/djangojs.po,sha256=OVcS-3tlMJS_T58qnZbWLGczHwFyAjbuWr35YwuxAVM,5082
+django/contrib/admin/locale/da/LC_MESSAGES/django.mo,sha256=UDegq2r-2A-LjbDNaiKxMhVAzZwoKyumfoJE-Y5rMPg,18085
+django/contrib/admin/locale/da/LC_MESSAGES/django.po,sha256=7UqmqCRnGeBRt-RnTa0UMjGVncSjWhddlOdYo0XS6iU,19498
+django/contrib/admin/locale/da/LC_MESSAGES/djangojs.mo,sha256=Y-_2QRAeQ3Mtl3stD2J4eHXdNyuzHcUcpIlvTEuDs6k,5984
+django/contrib/admin/locale/da/LC_MESSAGES/djangojs.po,sha256=tiONUqX3jJnHZ1BbMIOzuQH-SMp2ESlA0RuGJSumy_U,6866
+django/contrib/admin/locale/de/LC_MESSAGES/django.mo,sha256=v2tKhZL-KDMv4UDzNuUgXDEIIoE787wFfpKHk0PUTHU,18731
+django/contrib/admin/locale/de/LC_MESSAGES/django.po,sha256=lNY-xVF6alq55oF3Jn6wj2WWb2j9HO52OUVVxxqDHOQ,20259
+django/contrib/admin/locale/de/LC_MESSAGES/djangojs.mo,sha256=kdve4d181AhGDekHiaxt79iyVWvahp3k9SN3H6Xx_9w,6130
+django/contrib/admin/locale/de/LC_MESSAGES/djangojs.po,sha256=tb25boxPrggqnB7mB2M5iyZ6CEM87PBZNa_JzaOXFF4,6921
+django/contrib/admin/locale/dsb/LC_MESSAGES/django.mo,sha256=Gui7I3Hu5IIGSXXNUXFoaH6ovffmBiDqOSWnytGhZRM,19122
+django/contrib/admin/locale/dsb/LC_MESSAGES/django.po,sha256=Zt8PMJQeG4fJhMMqyroXMj-HNTPwSQ_f4eDjm4Q7QPQ,20379
+django/contrib/admin/locale/dsb/LC_MESSAGES/djangojs.mo,sha256=y9yhJ8ITu5uRDID0AX6dpqWLE5-0bqDuVmUBJ-JJ6H8,6609
+django/contrib/admin/locale/dsb/LC_MESSAGES/djangojs.po,sha256=ca5XVYaT4H4kK-LvvBL1fcpCxRbd1OrbSNk5DAZcfaM,7335
+django/contrib/admin/locale/el/LC_MESSAGES/django.mo,sha256=54kG_94nJigDgJpZM8Cy58G_AGLdS5csJFEjTTvJBfM,22968
+django/contrib/admin/locale/el/LC_MESSAGES/django.po,sha256=f2gUQtedb0sZCBxAoy3hP2rGXT9ysP5UTOlCBvu2NvI,24555
+django/contrib/admin/locale/el/LC_MESSAGES/djangojs.mo,sha256=cix1Bkj2hYO_ofRvtPDhJ9rBnTR6-cnKCFKpZrsxJ34,6509
+django/contrib/admin/locale/el/LC_MESSAGES/djangojs.po,sha256=R05tMMuQEjVQpioy_ayQgFBlLM4WdwXthkMguW6ga24,7339
+django/contrib/admin/locale/en/LC_MESSAGES/django.mo,sha256=U0OV81NfbuNL9ctF-gbGUG5al1StqN-daB-F-gFBFC8,356
+django/contrib/admin/locale/en/LC_MESSAGES/django.po,sha256=_LT1ydmUGadrxathYSS-mZOSmW1hdbKisiEhmTjU8Aw,25103
+django/contrib/admin/locale/en/LC_MESSAGES/djangojs.mo,sha256=U0OV81NfbuNL9ctF-gbGUG5al1StqN-daB-F-gFBFC8,356
+django/contrib/admin/locale/en/LC_MESSAGES/djangojs.po,sha256=XwjM4uE51Mw04zU5xdyW86VlEKYR25s3JxZIO6e8oEM,8920
+django/contrib/admin/locale/en_AU/LC_MESSAGES/django.mo,sha256=QEvxPxDqNUmq8NxN-8c_F6KMEcWWum3YzERlc3_S_DM,16191
+django/contrib/admin/locale/en_AU/LC_MESSAGES/django.po,sha256=BoVuGaPoGdQcF3zdgGRxrNKSq2XLHTvKfINCyU8t86Y,17548
+django/contrib/admin/locale/en_AU/LC_MESSAGES/djangojs.mo,sha256=s0qPS8TjODtPo4miSznQfS6M8CQK9URDeMKeQsp7DK4,5001
+django/contrib/admin/locale/en_AU/LC_MESSAGES/djangojs.po,sha256=YecPU6VmUDDNNIzZVl2Wgd6lNRp3msJaW8FhdHMtEyc,5553
+django/contrib/admin/locale/en_GB/LC_MESSAGES/django.mo,sha256=pFkTMRDDj76WA91wtGPjUB7Pq2PN7IJEC54Tewobrlc,11159
+django/contrib/admin/locale/en_GB/LC_MESSAGES/django.po,sha256=REUJMGLGRyDMkqh4kJdYXO9R0Y6CULFVumJ_P3a0nv0,15313
+django/contrib/admin/locale/en_GB/LC_MESSAGES/djangojs.mo,sha256=hW325c2HlYIIdvNE308c935_IaDu7_qeP-NlwPnklhQ,3147
+django/contrib/admin/locale/en_GB/LC_MESSAGES/djangojs.po,sha256=Ol5j1-BLbtSIDgbcC0o7tg_uHImcjJQmkA4-kSmZY9o,4581
+django/contrib/admin/locale/eo/LC_MESSAGES/django.mo,sha256=zAeGKzSNit2LNNX97WXaARyzxKIasOmTutcTPqpRKAE,14194
+django/contrib/admin/locale/eo/LC_MESSAGES/django.po,sha256=LHoYvbenD9A05EkHtOk8raW7aKyyiqN50d6OHMxnAZY,17258
+django/contrib/admin/locale/eo/LC_MESSAGES/djangojs.mo,sha256=hGXULxueBP24xSZ0StxfFCO0vwZZME7OEERxgnWBqcI,4595
+django/contrib/admin/locale/eo/LC_MESSAGES/djangojs.po,sha256=enHGjcvH_B0Z9K2Vk391qHAKT7QamqUcx8xPzYLQltA,5698
+django/contrib/admin/locale/es/LC_MESSAGES/django.mo,sha256=vKcsIAL0TDBolkBdzj0d8N60blUfGIHwTvN1r_tp3h4,19193
+django/contrib/admin/locale/es/LC_MESSAGES/django.po,sha256=5640-lfFYuO7ZsJ41VtaHdhvpqdPNtadbt88SK95xo4,21302
+django/contrib/admin/locale/es/LC_MESSAGES/djangojs.mo,sha256=GH3zJZEVfJc_REXoYwaCNzhL4EHJosWa7qDmeFRWbco,6347
+django/contrib/admin/locale/es/LC_MESSAGES/djangojs.po,sha256=aqR-EZ2XUWNclkSxVa1xKFdaZpw7sQMORSMMINDRjlQ,7290
+django/contrib/admin/locale/es_AR/LC_MESSAGES/django.mo,sha256=4HvVQ4w8m006ltb78ysEVBHfkb8HYQ_fOjKSNjZACVo,19355
+django/contrib/admin/locale/es_AR/LC_MESSAGES/django.po,sha256=SvEsxNt5fMCndJt7EM7wVPffLjZBM9I_6dtTtgFJB-E,20673
+django/contrib/admin/locale/es_AR/LC_MESSAGES/djangojs.mo,sha256=2VDkQJCHtYndAr3kz53BhLwxqbDzkQhoDwNedrGtMEw,6647
+django/contrib/admin/locale/es_AR/LC_MESSAGES/djangojs.po,sha256=MRHZAsXyTEiYtlqmybyuJgwfdHtjNOu4EgcWdzzVF4M,7351
+django/contrib/admin/locale/es_CO/LC_MESSAGES/django.mo,sha256=0k8kSiwIawYCa-Lao0uetNPLUzd4m_me3tCAVBvgcSw,15156
+django/contrib/admin/locale/es_CO/LC_MESSAGES/django.po,sha256=4T_syIsVY-nyvn5gEAtfN-ejPrJSUpNT2dmzufxaBsE,17782
+django/contrib/admin/locale/es_CO/LC_MESSAGES/djangojs.mo,sha256=PLS10KgX10kxyy7MUkiyLjqhMzRgkAFGPmzugx9AGfs,3895
+django/contrib/admin/locale/es_CO/LC_MESSAGES/djangojs.po,sha256=Y4bkC8vkJE6kqLbN8t56dR5670B06sB2fbtVzmQygK8,5176
+django/contrib/admin/locale/es_MX/LC_MESSAGES/django.mo,sha256=O8CbY83U4fTvvPPuONtlMx6jpA-qkrYxNTkLuMrWiRQ,11517
+django/contrib/admin/locale/es_MX/LC_MESSAGES/django.po,sha256=8MSKNxhHMp0ksr5AUUAbs_H6MtMjIqkaFwmaJlBxELs,16307
+django/contrib/admin/locale/es_MX/LC_MESSAGES/djangojs.mo,sha256=2w3CMJFBugP8xMOmXsDU82xUm8cWGRUGZQX5XjiTCpM,3380
+django/contrib/admin/locale/es_MX/LC_MESSAGES/djangojs.po,sha256=OP9cBsdCf3zZAXiKBMJPvY1AHwC_WE1k2vKlzVCtUec,4761
+django/contrib/admin/locale/es_VE/LC_MESSAGES/django.mo,sha256=himCORjsM-U3QMYoURSRbVv09i0P7-cfVh26aQgGnKg,16837
+django/contrib/admin/locale/es_VE/LC_MESSAGES/django.po,sha256=mlmaSYIHpa-Vp3f3NJfdt2RXB88CVZRoPEMfl-tccr0,18144
+django/contrib/admin/locale/es_VE/LC_MESSAGES/djangojs.mo,sha256=Zy-Hj_Mr2FiMiGGrZyssN7GZJrbxRj3_yKQFZKR36Ro,4635
+django/contrib/admin/locale/es_VE/LC_MESSAGES/djangojs.po,sha256=RI8CIdewjL3bAivniMOl7lA9tD7caP4zEo2WK71cX7c,5151
+django/contrib/admin/locale/et/LC_MESSAGES/django.mo,sha256=b1dS8_M7Ehzk0nZlgxMVrVGP7WqKZaGP7P0hRvUIb3E,17574
+django/contrib/admin/locale/et/LC_MESSAGES/django.po,sha256=tN1MhM7VyCCQn7nX5qE5r23hyK28BxEctylyZlIpikY,19239
+django/contrib/admin/locale/et/LC_MESSAGES/djangojs.mo,sha256=VftLeDX1ngXgy3Rvztk21zNcPus9Vbr-Gp4MnChaRbM,5880
+django/contrib/admin/locale/et/LC_MESSAGES/djangojs.po,sha256=yi-8VC9eCScS98u4CIDirsfG_a5-BDnO0XrI9Gm4lK8,6718
+django/contrib/admin/locale/eu/LC_MESSAGES/django.mo,sha256=CBk_9H8S8LlK8hfGQsEB7IgSms-BsURzAFrX9Zrsw4c,15009
+django/contrib/admin/locale/eu/LC_MESSAGES/django.po,sha256=9vnPgJRPcdSa4P5rguB5zqWQC1xAt4POzDw-mSD8UHs,17489
+django/contrib/admin/locale/eu/LC_MESSAGES/djangojs.mo,sha256=vKtO_mbexiW-EO-L-G0PYruvc8N7GOF94HWQCkDnJNQ,4480
+django/contrib/admin/locale/eu/LC_MESSAGES/djangojs.po,sha256=BAWU-6kH8PLBxx_d9ZeeueB_lV5KFXjbRJXgKN43nQ4,5560
+django/contrib/admin/locale/fa/LC_MESSAGES/django.mo,sha256=Y01G4go-V_BZ1aR7u5Z9StnqL0BS5kvj2ZlSfffhToY,20889
+django/contrib/admin/locale/fa/LC_MESSAGES/django.po,sha256=1q914M9N6NfUgP72mIhTRMYukc1r-GpVV5Pt4qESTTM,23054
+django/contrib/admin/locale/fa/LC_MESSAGES/djangojs.mo,sha256=MAje4ub3vWYhiKrVR_LvxAIqkvOlFpVcXQEBz3ezlPs,6050
+django/contrib/admin/locale/fa/LC_MESSAGES/djangojs.po,sha256=1nzEmRuswDmyCCMShGH2CYdjMY7tUuedfN4kDCEnTCM,6859
+django/contrib/admin/locale/fi/LC_MESSAGES/django.mo,sha256=o2bZycvUaAigyMRW2EOSkqJy2Xq0BfvGB2eEWV-h9jg,17289
+django/contrib/admin/locale/fi/LC_MESSAGES/django.po,sha256=dBux4oefCngbb6PCukB-U6XrpY5tym9B0CMIsWk2LIs,18990
+django/contrib/admin/locale/fi/LC_MESSAGES/djangojs.mo,sha256=ZIJoZ4T-2iNfpdHiyqsKTqIC9lgGAPOCbQhk7Lh36N4,5822
+django/contrib/admin/locale/fi/LC_MESSAGES/djangojs.po,sha256=6suDw1Cj_AVqQocM67EN7ZZs6hWgvTa9TP80a7Y9xaM,6742
+django/contrib/admin/locale/fr/LC_MESSAGES/django.mo,sha256=yDGZobllSEwKmcxgbEdivBgJrxcpSgytRR4tdTGsblo,20013
+django/contrib/admin/locale/fr/LC_MESSAGES/django.po,sha256=IjnhRml2Cqxd1Z93vz5CM3GjspM4rIuv9LsjF1YQFQk,21340
+django/contrib/admin/locale/fr/LC_MESSAGES/djangojs.mo,sha256=eSiwCTcZrv3jKlu_KVL9myvW6Yc6lSWx1CcA_T6qSng,6509
+django/contrib/admin/locale/fr/LC_MESSAGES/djangojs.po,sha256=lfTg4_vFyMbkCqTThaSn4f-D2S0sGNdW0PFWJgBz2ck,7226
+django/contrib/admin/locale/fy/LC_MESSAGES/django.mo,sha256=mWnHXGJUtiewo1F0bsuJCE_YBh7-Ak9gjTpwjOAv-HI,476
+django/contrib/admin/locale/fy/LC_MESSAGES/django.po,sha256=oSKEF_DInUC42Xzhw9HiTobJjE2fLNI1VE5_p6rqnCE,10499
+django/contrib/admin/locale/fy/LC_MESSAGES/djangojs.mo,sha256=YQQy7wpjBORD9Isd-p0lLzYrUgAqv770_56-vXa0EOc,476
+django/contrib/admin/locale/fy/LC_MESSAGES/djangojs.po,sha256=efBDCcu43j4SRxN8duO5Yfe7NlpcM88kUPzz-qOkC04,2864
+django/contrib/admin/locale/ga/LC_MESSAGES/django.mo,sha256=2Qn62CmOwgNaeLnV6JE2dNVl9tSZaYGGx5NG8X6g6Z0,19428
+django/contrib/admin/locale/ga/LC_MESSAGES/django.po,sha256=00HFcdeQmjvrTyfUz4I8cFM_bYqF5bLX5pwFht-iPO0,20913
+django/contrib/admin/locale/ga/LC_MESSAGES/djangojs.mo,sha256=Cdx01Gpcs6wYEnpSif1r4O9gKj-YL__IXfBaL-Wx0u0,6910
+django/contrib/admin/locale/ga/LC_MESSAGES/djangojs.po,sha256=7u1ncj7NVTb54Yak8wMFqCKHfjtb6EfFouhT2sbQlIg,7828
+django/contrib/admin/locale/gd/LC_MESSAGES/django.mo,sha256=HEqiGvjMp0NnfIS0Z-c1i8SicEtMPIg8LvNMh-SXiPg,18871
+django/contrib/admin/locale/gd/LC_MESSAGES/django.po,sha256=cZWnJyEoyGFLbk_M4-eddTJLKJ0dqTIlIj4w6YwcjJg,20139
+django/contrib/admin/locale/gd/LC_MESSAGES/djangojs.mo,sha256=QA2_hxHGzt_y0U8sAGQaT27IvvyWrehLPKP2X1jAvEs,5904
+django/contrib/admin/locale/gd/LC_MESSAGES/djangojs.po,sha256=KyYGpFHq2E55dK005xzH0I2RD-C2kD6BlJi8bcMjtRA,6540
+django/contrib/admin/locale/gl/LC_MESSAGES/django.mo,sha256=0sPdq8aidlYj1CYL0on_rwwp80oN1Ex-vw2pehBon-M,18542
+django/contrib/admin/locale/gl/LC_MESSAGES/django.po,sha256=GFJrhH0aQZsLrUe4Dbzwi7BDtp7KRyklnnzZFr2-BqU,20074
+django/contrib/admin/locale/gl/LC_MESSAGES/djangojs.mo,sha256=AePXV8VZToob6vNEsOqyuijJYv-QxRfBO7BrBUgLi_Q,6083
+django/contrib/admin/locale/gl/LC_MESSAGES/djangojs.po,sha256=eDMuV05SuQrACfcovaPb8Zsk8hP4g1GMx6507QNFAko,6868
+django/contrib/admin/locale/he/LC_MESSAGES/django.mo,sha256=DQnjAK201x7Zp_eoZiuq6GJZ7ML2WVeP5dXJNaeSEBs,19856
+django/contrib/admin/locale/he/LC_MESSAGES/django.po,sha256=-YnanZ_omTTjDkO8o-chGB6NSsKGLWmO7aWGnIUiJv8,21341
+django/contrib/admin/locale/he/LC_MESSAGES/djangojs.mo,sha256=E-ZlEnXIeJIkXWcthR9kgNJBzDp6gT7mKKDUpEVqM7k,6893
+django/contrib/admin/locale/he/LC_MESSAGES/djangojs.po,sha256=1tenNpIJmcT5wTRNETkSO7cDlDlL1Mqpnb-klRlHw-s,7809
+django/contrib/admin/locale/hi/LC_MESSAGES/django.mo,sha256=yWjTYyrVxXxwBWgPsC7IJ9IxL_85v378To4PCEEcwuI,13811
+django/contrib/admin/locale/hi/LC_MESSAGES/django.po,sha256=FpKFToDAMsgc1aG6-CVpi5wAxhMQjkZxz_89kCiKmS4,19426
+django/contrib/admin/locale/hi/LC_MESSAGES/djangojs.mo,sha256=yCUHDS17dQDKcAbqCg5q8ualaUgaa9qndORgM-tLCIw,4893
+django/contrib/admin/locale/hi/LC_MESSAGES/djangojs.po,sha256=U9rb5tPMICK50bRyTl40lvn-tvh6xL_6o7xIPkzfKi0,6378
+django/contrib/admin/locale/hr/LC_MESSAGES/django.mo,sha256=3TR3uFcd0pnkDi551WaB9IyKX1aOazH7USxqc0lA0KQ,14702
+django/contrib/admin/locale/hr/LC_MESSAGES/django.po,sha256=qcW7tvZoWZIR8l-nMRexGDD8VlrOD7l5Fah6-ecilMk,17378
+django/contrib/admin/locale/hr/LC_MESSAGES/djangojs.mo,sha256=KR34lviGYh1esCkPE9xcDE1pQ_q-RxK1R2LPjnG553w,3360
+django/contrib/admin/locale/hr/LC_MESSAGES/djangojs.po,sha256=w7AqbYcLtu88R3KIKKKXyRt2gwBBBnr-ulxONWbw01I,4870
+django/contrib/admin/locale/hsb/LC_MESSAGES/django.mo,sha256=z9pekTc31Iln5uwmdJ1AfhF5t2gekcgGE58qjvYKT90,18894
+django/contrib/admin/locale/hsb/LC_MESSAGES/django.po,sha256=XmdQtzpmAhp74NBwh7iY22RLQX5Bu2B-mlWvZLvy_mw,20153
+django/contrib/admin/locale/hsb/LC_MESSAGES/djangojs.mo,sha256=4kIdcgSBZ5ldlS0LKZV8-gh45-AcRTMQc784VmoRmP8,6693
+django/contrib/admin/locale/hsb/LC_MESSAGES/djangojs.po,sha256=7Lx6Be_8i8g2GtqOfc1UKpKgwF2CFXfYG4PrjKV0t-0,7425
+django/contrib/admin/locale/hu/LC_MESSAGES/django.mo,sha256=fMea7oqZDrBAicpyubIq-JCPg_7QBws7N0PdyBwebOo,18629
+django/contrib/admin/locale/hu/LC_MESSAGES/django.po,sha256=eFRlDToCWD_BZVyRxW6L_xLIfItPmHQshxoOFC53iV0,20211
+django/contrib/admin/locale/hu/LC_MESSAGES/djangojs.mo,sha256=tXeG5F6_Yh6qHmNUNrlgzavH1Wc8NZb3fj4oEW9qE_M,6034
+django/contrib/admin/locale/hu/LC_MESSAGES/djangojs.po,sha256=pvn7ae43zgVp3mpjXPI7_JCqvQLaHZZF7hTasP2uZx0,6854
+django/contrib/admin/locale/hy/LC_MESSAGES/django.mo,sha256=Dcx9cOsYBfbgQgoAQoLhn_cG1d2sKGV6dag4DwnUTaY,18274
+django/contrib/admin/locale/hy/LC_MESSAGES/django.po,sha256=CnQlRZ_DUILMIqVEgUTT2sufAseEKJHHjWsYr_LAqi8,20771
+django/contrib/admin/locale/hy/LC_MESSAGES/djangojs.mo,sha256=ttfGmyEN0-3bM-WmfCge2lG8inubMPOzFXfZrfX9sfw,5636
+django/contrib/admin/locale/hy/LC_MESSAGES/djangojs.po,sha256=jf94wzUOMQaKSBR-77aijQXfdRAqiYSeAQopiT_8Obc,6046
+django/contrib/admin/locale/ia/LC_MESSAGES/django.mo,sha256=SRKlr8RqW8FQhzMsXdA9HNqttO3hc0xf4QdQJd4Dy8c,11278
+django/contrib/admin/locale/ia/LC_MESSAGES/django.po,sha256=pBQLQsMinRNh0UzIHBy3qEW0etUWMhFALu4-h-woFyE,15337
+django/contrib/admin/locale/ia/LC_MESSAGES/djangojs.mo,sha256=28MiqUf-0-p3PIaongqgPQp2F3D54MLAujPslVACAls,3177
+django/contrib/admin/locale/ia/LC_MESSAGES/djangojs.po,sha256=CauoEc8Fiowa8k6K-f9N8fQDle40qsgtXdNPDHBiudQ,4567
+django/contrib/admin/locale/id/LC_MESSAGES/django.mo,sha256=mIBWsj9Dy85qvN7d08OhUU1lDsIRoxEDZEoGEua50qY,17877
+django/contrib/admin/locale/id/LC_MESSAGES/django.po,sha256=W4U2GvKuJ0LXHJhoGOGk2uXk1eDCg9LAzmubTKJyIjQ,19387
+django/contrib/admin/locale/id/LC_MESSAGES/djangojs.mo,sha256=aCPmIcwloBrlvfAf95HZfOgVs7XU9Bp064Sn08pQK1E,5275
+django/contrib/admin/locale/id/LC_MESSAGES/djangojs.po,sha256=x_D6AQiyGC-AJL889Q51JkmlqiVHfyAwGdA3Ck9_Z7Q,6589
+django/contrib/admin/locale/io/LC_MESSAGES/django.mo,sha256=URiYZQZpROBedC-AkpVo0q3Tz78VfkmwN1W7j6jYpMo,12624
+django/contrib/admin/locale/io/LC_MESSAGES/django.po,sha256=y0WXY7v_9ff-ZbFasj33loG-xWlFO8ttvCB6YPyF7FQ,15562
+django/contrib/admin/locale/io/LC_MESSAGES/djangojs.mo,sha256=nMu5JhIy8Fjie0g5bT8-h42YElCiS00b4h8ej_Ie-w0,464
+django/contrib/admin/locale/io/LC_MESSAGES/djangojs.po,sha256=WLh40q6yDs-8ZG1hpz6kfMQDXuUzOZa7cqtEPDywxG4,2852
+django/contrib/admin/locale/is/LC_MESSAGES/django.mo,sha256=csD3bmz3iQgLLdSqCKOmY_d893147TvDumrpRVoRTY0,16804
+django/contrib/admin/locale/is/LC_MESSAGES/django.po,sha256=tXgb3ARXP5tPa5iEYwwiHscDGfjS5JgIV2BsUX8OnjE,18222
+django/contrib/admin/locale/is/LC_MESSAGES/djangojs.mo,sha256=Z3ujWoenX5yYTAUmHUSCvHcuV65nQmYKPv6Jo9ygx_c,5174
+django/contrib/admin/locale/is/LC_MESSAGES/djangojs.po,sha256=YPf4XqfnpvrS9irAS8O4G0jgU5PCoQ9C-w3MoDipelk,5847
+django/contrib/admin/locale/it/LC_MESSAGES/django.mo,sha256=N_pVjbd3SkV4xtFMvwtlwRWo_ulGR83SzKcPD8wiFgY,18505
+django/contrib/admin/locale/it/LC_MESSAGES/django.po,sha256=hVYj4UvphkCqlFzH6NtyRAZgGewCKNjVnON0vHtxGKY,20338
+django/contrib/admin/locale/it/LC_MESSAGES/djangojs.mo,sha256=FWtyPVubufiaNKFxy4DQ0KbW93GUt-x1Mc8ZKhqokwg,5640
+django/contrib/admin/locale/it/LC_MESSAGES/djangojs.po,sha256=VRqeY7gYmcP5oWVMgpHL_Br8cAkFXphFQStFpIbWOrc,6578
+django/contrib/admin/locale/ja/LC_MESSAGES/django.mo,sha256=Cvue4zVcYA-3T0l6jKFglMDhzqNeLuGKKdTZ-JsZM4o,19945
+django/contrib/admin/locale/ja/LC_MESSAGES/django.po,sha256=DpjilJj0IrkqRNsegdDCs9_VzokjHA8j8NIXrg6Th4U,21521
+django/contrib/admin/locale/ja/LC_MESSAGES/djangojs.mo,sha256=XBOtJbkByhQEMUxvnqSr1XhBCe-DsII4Ke5pISJZAb8,6233
+django/contrib/admin/locale/ja/LC_MESSAGES/djangojs.po,sha256=SrJeh3-t73Z2gY7nVP01cgZE6H11pryDms1pqrQKjnw,6968
+django/contrib/admin/locale/ka/LC_MESSAGES/django.mo,sha256=M3FBRrXFFa87DlUi0HDD_n7a_0IYElQAOafJoIH_i60,20101
+django/contrib/admin/locale/ka/LC_MESSAGES/django.po,sha256=abkt7pw4Kc-Y74ZCpAk_VpFWIkr7trseCtQdM6IUYpQ,23527
+django/contrib/admin/locale/ka/LC_MESSAGES/djangojs.mo,sha256=GlPU3qUavvU0FXPfvCl-8KboYhDOmMsKM-tv14NqOac,5516
+django/contrib/admin/locale/ka/LC_MESSAGES/djangojs.po,sha256=jDpB9c_edcLoFPHFIogOSPrFkssOjIdxtCA_lum8UCs,6762
+django/contrib/admin/locale/kab/LC_MESSAGES/django.mo,sha256=9QKEWgr8YQV17OJ14rMusgV8b79ZgOOsX4aIFMZrEto,3531
+django/contrib/admin/locale/kab/LC_MESSAGES/django.po,sha256=cSOG_HqsNE4tA5YYDd6txMFoUul8d5UKvk77ZhaqOK0,11711
+django/contrib/admin/locale/kab/LC_MESSAGES/djangojs.mo,sha256=nqwZHJdtjHUSFDJmC0nPNyvWcAdcoRcN3f-4XPIItvs,1844
+django/contrib/admin/locale/kab/LC_MESSAGES/djangojs.po,sha256=tF3RH22p2E236Cv6lpIWQxtuPFeWOvJ-Ery3vBUv6co,3713
+django/contrib/admin/locale/kk/LC_MESSAGES/django.mo,sha256=f2WU3e7dOz0XXHFFe0gnCm1MAPCJ9sva2OUnWYTHOJg,12845
+django/contrib/admin/locale/kk/LC_MESSAGES/django.po,sha256=D1vF3nqANT46f17Gc2D2iGCKyysHAyEmv9nBei6NRA4,17837
+django/contrib/admin/locale/kk/LC_MESSAGES/djangojs.mo,sha256=cBxp5pFJYUF2-zXxPVBIG06UNq6XAeZ72uRLwGeLbiE,2387
+django/contrib/admin/locale/kk/LC_MESSAGES/djangojs.po,sha256=Y30fcDpi31Fn7DU7JGqROAiZY76iumoiW9qGAgPCCbU,4459
+django/contrib/admin/locale/km/LC_MESSAGES/django.mo,sha256=eOe9EcFPzAWrTjbGUr-m6RAz2TryC-qHKbqRP337lPY,10403
+django/contrib/admin/locale/km/LC_MESSAGES/django.po,sha256=RSxy5vY2sgC43h-9sl6eomkFvxClvH_Ka4lFiwTvc2I,17103
+django/contrib/admin/locale/km/LC_MESSAGES/djangojs.mo,sha256=Ja8PIXmw6FMREHZhhBtGrr3nRKQF_rVjgLasGPnU95w,1334
+django/contrib/admin/locale/km/LC_MESSAGES/djangojs.po,sha256=LH4h4toEgpVBb9yjw7d9JQ8sdU0WIZD-M025JNlLXAU,3846
+django/contrib/admin/locale/kn/LC_MESSAGES/django.mo,sha256=955iPq05ru6tm_iPFVMebxwvZMtEa5_7GaFG1mPt6HU,9203
+django/contrib/admin/locale/kn/LC_MESSAGES/django.po,sha256=-4YAm0MyhS-wp4RQmo0TzWvqYqmzHFNpIBtdQlg_8Dw,16059
+django/contrib/admin/locale/kn/LC_MESSAGES/djangojs.mo,sha256=kJsCOGf62XOWTKcB9AF6Oc-GqHl2LFtz-qw0spjcU_w,1847
+django/contrib/admin/locale/kn/LC_MESSAGES/djangojs.po,sha256=zzl7QZ5DfdyNWrkIqYlpUcZiTdlZXx_ktahyXqM2-0Q,5022
+django/contrib/admin/locale/ko/LC_MESSAGES/django.mo,sha256=NJinUQM_vWvXlwT3ek6DL1uFT_gzHWowxKxn_RQVDDA,18815
+django/contrib/admin/locale/ko/LC_MESSAGES/django.po,sha256=AfDcJo95_pYon8nP0Y48pIQGAHcSxKWADk4IkJATaec,20899
+django/contrib/admin/locale/ko/LC_MESSAGES/djangojs.mo,sha256=wZ2hHD7BJgl855rxKburyumBSS7ECkL3kqNv2col5mo,5985
+django/contrib/admin/locale/ko/LC_MESSAGES/djangojs.po,sha256=qvndtDKv_TIoeYuEErRb62oSaCeS2iFYkjyZ4m8YKHI,6899
+django/contrib/admin/locale/ky/LC_MESSAGES/django.mo,sha256=eg-TnIzJO4h3q_FS2a1LnCs7qOf5dpNJwvRD99ZZ0GQ,20129
+django/contrib/admin/locale/ky/LC_MESSAGES/django.po,sha256=dWxU3yUAKHUGKdVJbRLkS6fJEefPBk2XM0i2INcRPms,21335
+django/contrib/admin/locale/ky/LC_MESSAGES/djangojs.mo,sha256=VuBYBwFwIHC27GFZiHY2_4AB0cME2R0Q3juczjOs3G0,5888
+django/contrib/admin/locale/ky/LC_MESSAGES/djangojs.po,sha256=uMk9CxL1wP45goq2093lYMza7LRuO4XbVo5RRWlsbaE,6432
+django/contrib/admin/locale/lb/LC_MESSAGES/django.mo,sha256=8GGM2sYG6GQTQwQFJ7lbg7w32SvqgSzNRZIUi9dIe6M,913
+django/contrib/admin/locale/lb/LC_MESSAGES/django.po,sha256=PZ3sL-HvghnlIdrdPovNJP6wDrdDMSYp_M1ok6dodrw,11078
+django/contrib/admin/locale/lb/LC_MESSAGES/djangojs.mo,sha256=xokesKl7h7k9dXFKIJwGETgwx1Ytq6mk2erBSxkgY-o,474
+django/contrib/admin/locale/lb/LC_MESSAGES/djangojs.po,sha256=fiMelo6K0_RITx8b9k26X1R86Ck2daQXm86FLJpzt20,2862
+django/contrib/admin/locale/lt/LC_MESSAGES/django.mo,sha256=SpaNUiaGtDlX5qngVj0dWdqNLSin8EOXXyBvRM9AnKg,17033
+django/contrib/admin/locale/lt/LC_MESSAGES/django.po,sha256=tHnRrSNG2ENVduP0sOffCIYQUn69O6zIev3Bb7PjKb0,18497
+django/contrib/admin/locale/lt/LC_MESSAGES/djangojs.mo,sha256=vZtnYQupzdTjVHnWrtjkC2QKNpsca5yrpb4SDuFx0_0,5183
+django/contrib/admin/locale/lt/LC_MESSAGES/djangojs.po,sha256=dMjFClA0mh5g0aNFTyHC8nbYxwmFD0-j-7gCKD8NFnw,5864
+django/contrib/admin/locale/lv/LC_MESSAGES/django.mo,sha256=pzm-BGE4jnD7OPob0a6eI_gQYRAMtHJOqmnmJieJwuU,18547
+django/contrib/admin/locale/lv/LC_MESSAGES/django.po,sha256=9BAd3sT-aFEeUupwGWxIjT4YLoA2OC3lN2hqdXGayiM,20103
+django/contrib/admin/locale/lv/LC_MESSAGES/djangojs.mo,sha256=TfQupQgc6UMUbj_6MoEEO87VmZTsh2McSDl_4Dsqgvo,6446
+django/contrib/admin/locale/lv/LC_MESSAGES/djangojs.po,sha256=cT0J4Bvh8UEdNq2HphcOwJBkgXwXNXl-xhwNt6GBcqg,7336
+django/contrib/admin/locale/mk/LC_MESSAGES/django.mo,sha256=xcKetKf7XcO-4vbWEIoI2c40gRE2twuiINaby6ypO7Q,17948
+django/contrib/admin/locale/mk/LC_MESSAGES/django.po,sha256=hx2peq-wztDHtiST_zZ58c7rjZ6jSvDDXhVOTmyUDzI,21063
+django/contrib/admin/locale/mk/LC_MESSAGES/djangojs.mo,sha256=8BkWjadml2f1lDeH-IULdxsogXSK8NpVuu293GvcQc8,4719
+django/contrib/admin/locale/mk/LC_MESSAGES/djangojs.po,sha256=u9mVSzbIgA1uRgV_L8ZOZLelyknoKFvXH0HbBurezf8,6312
+django/contrib/admin/locale/ml/LC_MESSAGES/django.mo,sha256=4Y1KAip3NNsoRc9Zz3k0YFLzes3DNRFvAXWSTBivXDk,20830
+django/contrib/admin/locale/ml/LC_MESSAGES/django.po,sha256=jL9i3kmOnoKYDq2RiF90WCc55KeA8EBN9dmPHjuUfmo,24532
+django/contrib/admin/locale/ml/LC_MESSAGES/djangojs.mo,sha256=COohY0mAHAOkv1eNzLkaGZy8mimXzcDK1EgRd3tTB_E,6200
+django/contrib/admin/locale/ml/LC_MESSAGES/djangojs.po,sha256=NvN0sF_w5tkc3bND4lBtCHsIDLkwqdEPo-8wi2MTQ14,7128
+django/contrib/admin/locale/mn/LC_MESSAGES/django.mo,sha256=6Jhz8HVVnFDWT1kYR0QemGIK2C3AFIyLO34uqG0-zus,22236
+django/contrib/admin/locale/mn/LC_MESSAGES/django.po,sha256=uh2ZAdEdbTkIU3ORSOvgaetcF3kgR5WlA1f_2nWJ0ow,23694
+django/contrib/admin/locale/mn/LC_MESSAGES/djangojs.mo,sha256=H7fIPdWTK3_iuC0WRBJdfXN8zO77p7-IzTviEUVQJ2U,5228
+django/contrib/admin/locale/mn/LC_MESSAGES/djangojs.po,sha256=vJIqqVG34Zd7q8-MhTgZcXTtl6gukOSb6egt70AOyAc,5757
+django/contrib/admin/locale/mr/LC_MESSAGES/django.mo,sha256=4aUjTWqmtElJ-byWRVmaj4EI0TQIExyU68EB-VS6vnE,21488
+django/contrib/admin/locale/mr/LC_MESSAGES/django.po,sha256=svc6n_Jsn8vrL0hY7tRCl7YLrBVHDSLTrM2phQO5mHI,24801
+django/contrib/admin/locale/mr/LC_MESSAGES/djangojs.mo,sha256=2Z5jaGJzpiJTCnhCk8ulCDeAdj-WwR99scdHFPRoHoA,468
+django/contrib/admin/locale/mr/LC_MESSAGES/djangojs.po,sha256=uGe9kH2mwrab97Ue77oggJBlrpzZNckKGRUMU1vaigs,2856
+django/contrib/admin/locale/ms/LC_MESSAGES/django.mo,sha256=Xj5v1F4_m1ZFUn42Rbep9eInxIV-NE-oA_NyfQkbp00,16840
+django/contrib/admin/locale/ms/LC_MESSAGES/django.po,sha256=ykFH-mPbv2plm2NIvKgaj3WVukJ3SquU8nQIAXuOrWA,17967
+django/contrib/admin/locale/ms/LC_MESSAGES/djangojs.mo,sha256=9VY_MrHK-dGOIkucLCyR9psy4o5p4nHd8kN_5N2E-gY,5018
+django/contrib/admin/locale/ms/LC_MESSAGES/djangojs.po,sha256=P4GvM17rlX1Vl-7EbCyfWVasAJBEv_RvgWEvfJqcErA,5479
+django/contrib/admin/locale/my/LC_MESSAGES/django.mo,sha256=xvlgM0vdYxZuA7kPQR7LhrLzgmyVCHAvqaqvFhKX9wY,3677
+django/contrib/admin/locale/my/LC_MESSAGES/django.po,sha256=zdUCYcyq2-vKudkYvFcjk95YUtbMDDSKQHCysmQ-Pvc,12522
+django/contrib/admin/locale/my/LC_MESSAGES/djangojs.mo,sha256=1fS9FfWi8b9NJKm3DBKETmuffsrTX-_OHo9fkCCXzpg,3268
+django/contrib/admin/locale/my/LC_MESSAGES/djangojs.po,sha256=-z1j108uoswi9YZfh3vSIswLXu1iUKgDXNdZNEA0yrA,5062
+django/contrib/admin/locale/nb/LC_MESSAGES/django.mo,sha256=viQKBFH6ospYn2sE-DokVJGGYhSqosTgbNMn5sBVnmM,16244
+django/contrib/admin/locale/nb/LC_MESSAGES/django.po,sha256=x0ANRpDhe1rxxAH0qjpPxRfccCvR73_4g5TNUdJqmrc,17682
+django/contrib/admin/locale/nb/LC_MESSAGES/djangojs.mo,sha256=KwrxBpvwveERK4uKTIgh-DCc9aDLumpHQYh5YroqxhQ,4939
+django/contrib/admin/locale/nb/LC_MESSAGES/djangojs.po,sha256=ygn6a5zkHkoIYMC8Hgup8Uw1tMbZcLGgwwDu3x33M-o,5555
+django/contrib/admin/locale/ne/LC_MESSAGES/django.mo,sha256=yrm85YXwXIli7eNaPyBTtV7y3TxQuH4mokKuHdAja2A,15772
+django/contrib/admin/locale/ne/LC_MESSAGES/django.po,sha256=F8vfWKvSNngkLPZUIwik_qDYu0UAnrWepbI9Z9Iz35g,20400
+django/contrib/admin/locale/ne/LC_MESSAGES/djangojs.mo,sha256=mJdtpLT9k4vDbN9fk2fOeiy4q720B3pLD3OjLbAjmUI,5362
+django/contrib/admin/locale/ne/LC_MESSAGES/djangojs.po,sha256=N91RciTV1m7e8-6Ihod5U2xR9K0vrLoFnyXjn2ta098,6458
+django/contrib/admin/locale/nl/LC_MESSAGES/django.mo,sha256=FKCQ39RbxWddBA-Id8W-hxgH0tkixJkVctP1laEXJEU,18565
+django/contrib/admin/locale/nl/LC_MESSAGES/django.po,sha256=zRaeZKxUZbi-0CL9BBr-X0j5HOJvvrJ94u8jw3sbaaA,20308
+django/contrib/admin/locale/nl/LC_MESSAGES/djangojs.mo,sha256=iWjyDgay1LIiS6C-Zl33inFKxzM2LFQPIWyKEw2x6Is,6122
+django/contrib/admin/locale/nl/LC_MESSAGES/djangojs.po,sha256=xZjgzxEEWMG2ofgSfLNUU0abr9Y_cUpXIHsmjKBGyig,7217
+django/contrib/admin/locale/nn/LC_MESSAGES/django.mo,sha256=yAdb8Yew1ARlnAnvd5gHL7-SDzpkXedBwCSSPEzGCKk,16504
+django/contrib/admin/locale/nn/LC_MESSAGES/django.po,sha256=sFxr3UYzltQRqiotm_d5Qqtf8iLXI0LgCw_V6kYffJ0,17932
+django/contrib/admin/locale/nn/LC_MESSAGES/djangojs.mo,sha256=RsDri1DmCwrby8m7mLWkFdCe6HK7MD7GindOarVYPWc,4939
+django/contrib/admin/locale/nn/LC_MESSAGES/djangojs.po,sha256=koVTt2mmdku1j7SUDRbnug8EThxXuCIF2XPnGckMi7A,5543
+django/contrib/admin/locale/os/LC_MESSAGES/django.mo,sha256=c51PwfOeLU2YcVNEEPCK6kG4ZyNc79jUFLuNopmsRR8,14978
+django/contrib/admin/locale/os/LC_MESSAGES/django.po,sha256=yugDw7iziHto6s6ATNDK4yuG6FN6yJUvYKhrGxvKmcY,18188
+django/contrib/admin/locale/os/LC_MESSAGES/djangojs.mo,sha256=0gMkAyO4Zi85e9qRuMYmxm6JV98WvyRffOKbBVJ_fLQ,3806
+django/contrib/admin/locale/os/LC_MESSAGES/djangojs.po,sha256=skiTlhgUEN8uKk7ihl2z-Rxr1ZXqu5qV4wB4q9qXVq0,5208
+django/contrib/admin/locale/pa/LC_MESSAGES/django.mo,sha256=EEitcdoS-iQ9QWHPbJBK2ajdN56mBi0BzGnVl3KTmU4,8629
+django/contrib/admin/locale/pa/LC_MESSAGES/django.po,sha256=xscRlOkn9Jc8bDsSRM5bzQxEsCLMVsV-Wwin0rfkHDI,16089
+django/contrib/admin/locale/pa/LC_MESSAGES/djangojs.mo,sha256=Hub-6v7AfF-tWhw53abpyhnVHo76h_xBgGIhlGIcS70,1148
+django/contrib/admin/locale/pa/LC_MESSAGES/djangojs.po,sha256=7L8D4qqhq53XG83NJUZNoM8zCCScwMwzsrzzsyO4lHY,4357
+django/contrib/admin/locale/pl/LC_MESSAGES/django.mo,sha256=Lg8aJUDeJy2F4HJ0sHzexRSi6rVhAxfNxUMjWsLAZKU,19372
+django/contrib/admin/locale/pl/LC_MESSAGES/django.po,sha256=MM8TxQU-rsr0ZznLDZZ10ZbO9et8i63QC6A4iXWVkoY,21310
+django/contrib/admin/locale/pl/LC_MESSAGES/djangojs.mo,sha256=J06UuQkB2V4E8XAeUfTHbbjGVeNWAu328oFIeieb588,6655
+django/contrib/admin/locale/pl/LC_MESSAGES/djangojs.po,sha256=E084nmFnaWDKZHwwSVIjBdNc-9tIfgGWCl58GqbVRP8,7808
+django/contrib/admin/locale/pt/LC_MESSAGES/django.mo,sha256=jZNC62eFhnXnFY9MmqXGoELL7aH8OaJZ2h3cAYWnOWU,18681
+django/contrib/admin/locale/pt/LC_MESSAGES/django.po,sha256=ZGTP8N_3zvTyHBPXnmIch3pA4vafqalk__-lqyhkJps,20270
+django/contrib/admin/locale/pt/LC_MESSAGES/djangojs.mo,sha256=RlsEslBxu8-1AJUz6olYHOVpqnV2kXrYXjxsMPHWGHs,5392
+django/contrib/admin/locale/pt/LC_MESSAGES/djangojs.po,sha256=D1sNOYDTY1DsaGC09V4nAaMea-FvW6UWOpnknP2F5uE,6716
+django/contrib/admin/locale/pt_BR/LC_MESSAGES/django.mo,sha256=VFGVGpK6iSfh1bIwz_99Ioah4LOQR0GHdKCIaSFuQKs,18810
+django/contrib/admin/locale/pt_BR/LC_MESSAGES/django.po,sha256=qW8ZpwonsMz1PhLPDMPKNCoz05S2Yczl4t-njKxH-ZQ,21437
+django/contrib/admin/locale/pt_BR/LC_MESSAGES/djangojs.mo,sha256=xvi5ZdYPvbQ9xDFLn8B_twhZeP77rPUOj42nEoeI1IY,6329
+django/contrib/admin/locale/pt_BR/LC_MESSAGES/djangojs.po,sha256=-8OovJeLBnTxCEXDf8IPlhoMB_k6De6dxMcV9Jzr1Yw,7492
+django/contrib/admin/locale/ro/LC_MESSAGES/django.mo,sha256=SEbnJ1aQ3m2nF7PtqzKvYYCdvgg_iG5hzrdO_Xxiv_k,15157
+django/contrib/admin/locale/ro/LC_MESSAGES/django.po,sha256=wPfGo9yi3j28cwikkogZ_erQKtUZ9WmzdZ2FuMVugFE,18253
+django/contrib/admin/locale/ro/LC_MESSAGES/djangojs.mo,sha256=voEqSN3JUgJM9vumLxE_QNPV7kA0XOoTktN7E7AYV6o,4639
+django/contrib/admin/locale/ro/LC_MESSAGES/djangojs.po,sha256=SO7FAqNnuvIDfZ_tsWRiwSv91mHx5NZHyR2VnmoYBWY,5429
+django/contrib/admin/locale/ru/LC_MESSAGES/django.mo,sha256=scHv1IpdVCHwdVVxWAdW1Q0yT7SgoLz6paIYWiLZIEA,24187
+django/contrib/admin/locale/ru/LC_MESSAGES/django.po,sha256=OeUyRdR9uihQ912OU1cPPCD1nnkVqt_y46ENTI6SlUE,25938
+django/contrib/admin/locale/ru/LC_MESSAGES/djangojs.mo,sha256=TE4M5XbCJ3tX4pTzyTbLG_xjtCtqZzVg1ZXSxeSXgcU,8392
+django/contrib/admin/locale/ru/LC_MESSAGES/djangojs.po,sha256=owCCQnZqwfIOG3zZucZPwOh47TnDS59ItQwzYeEexvM,9546
+django/contrib/admin/locale/sk/LC_MESSAGES/django.mo,sha256=W1zA58jQsXhHMxwHi6m99yEwV3ku6MtlJgMxdQwpz-E,18945
+django/contrib/admin/locale/sk/LC_MESSAGES/django.po,sha256=p603cCupx37wBIStl1wGm7m_FEmNiZT25aPULwyb18o,20578
+django/contrib/admin/locale/sk/LC_MESSAGES/djangojs.mo,sha256=sl2PRwXLtikrOiHJ_EEltZivpV5IwT5lmbyfpGCSrLo,6305
+django/contrib/admin/locale/sk/LC_MESSAGES/djangojs.po,sha256=-ZcKl0UxOObVuB_8My20fdjCrV51drP4w-yan3X-RKk,7275
+django/contrib/admin/locale/sl/LC_MESSAGES/django.mo,sha256=rBSsaXNtCo43Cri9Gq_Ueq2IUNMBmzOV6lgMm7xF_p0,15077
+django/contrib/admin/locale/sl/LC_MESSAGES/django.po,sha256=ywIn4PB3xg6Q27NARZ3JRmSvNhcRFKU8nF_gbgA93qg,18281
+django/contrib/admin/locale/sl/LC_MESSAGES/djangojs.mo,sha256=chhBmd2IkeOONuRlRsOnrPAEbS0tlH4w-G8YKVNRsNI,6146
+django/contrib/admin/locale/sl/LC_MESSAGES/djangojs.po,sha256=8mrwhJ1Geg5TEvJY40COC7bZl7cyIecRhLyqLjBqBAQ,6975
+django/contrib/admin/locale/sq/LC_MESSAGES/django.mo,sha256=12ltn7X_iHVHreOt0Eev86XolcxoFxfORBOf48yuTDk,18886
+django/contrib/admin/locale/sq/LC_MESSAGES/django.po,sha256=sYkz3gXb7QU2hwinqakJb0EcibH-IgOMcoNUq4E5mxM,20193
+django/contrib/admin/locale/sq/LC_MESSAGES/djangojs.mo,sha256=JZd4AaMh0TPnT1bCSyDLWwRMMCVN9C8w3Ubd-UkLDWI,6122
+django/contrib/admin/locale/sq/LC_MESSAGES/djangojs.po,sha256=h0TU4rJnZ4KwpaL1mt8SiNvAQGuGVIFB1j4nh7vb7UI,6864
+django/contrib/admin/locale/sr/LC_MESSAGES/django.mo,sha256=7eF4L3TQMaMFXh2m1RkCdt4KZpICmgyvH15U9mLDrRA,23216
+django/contrib/admin/locale/sr/LC_MESSAGES/django.po,sha256=iKYVmh2UQk1Vf1qyhwD7WF_h9G9UaqL2bhnVKIV9BCs,24565
+django/contrib/admin/locale/sr/LC_MESSAGES/djangojs.mo,sha256=1GW3zhwJYBiH5c0dmy4sXOsnt1r88LiHSZdlJ5IP1bI,7234
+django/contrib/admin/locale/sr/LC_MESSAGES/djangojs.po,sha256=AY4qY7h8JdA4WgOam0lSeVp0nUz2fdiLNHrFRNh2jLQ,8013
+django/contrib/admin/locale/sr_Latn/LC_MESSAGES/django.mo,sha256=8wcRn4O2WYMFJal760MvjtSPBNoDgHAEYtedg8CC7Ao,12383
+django/contrib/admin/locale/sr_Latn/LC_MESSAGES/django.po,sha256=N4fPEJTtUrQnc8q1MioPZ2a7E55YXrE-JvfAcWZubfA,16150
+django/contrib/admin/locale/sr_Latn/LC_MESSAGES/djangojs.mo,sha256=HBndv8hTWMFpfJizmF-CkSmFr_-QPhdq-AziTaZCOOY,6021
+django/contrib/admin/locale/sr_Latn/LC_MESSAGES/djangojs.po,sha256=4m55hUurXwpzT968ifHH2FXAlt-ZmoqyjuLfUj8PpW8,10955
+django/contrib/admin/locale/sv/LC_MESSAGES/django.mo,sha256=-H1w7_y2w3bCRddOEq49tWofGGqbrJM8rmgdQWcAAFU,18004
+django/contrib/admin/locale/sv/LC_MESSAGES/django.po,sha256=Aq3NjhpgY7Ni2paOrWpeMB0zbm3zeK02JkHl-_dNYW8,19752
+django/contrib/admin/locale/sv/LC_MESSAGES/djangojs.mo,sha256=o0ExbIeEhV8xPC62BLMaaNEw8vQ1JSeYVwUTY4SZjwo,5938
+django/contrib/admin/locale/sv/LC_MESSAGES/djangojs.po,sha256=J7KNDezuRJfGIt4-z1-Mm2cKf9lGODrEScs3w3n88y0,6937
+django/contrib/admin/locale/sw/LC_MESSAGES/django.mo,sha256=kiy4ZiBR6SIzF3SIqC3dNLTUDncZ9qjTdiG1AkIuuXk,17698
+django/contrib/admin/locale/sw/LC_MESSAGES/django.po,sha256=Km7ETJkQTpQUyp1r4mEpa3d_rCLbwh4n5DnYF6JLCxc,19082
+django/contrib/admin/locale/sw/LC_MESSAGES/djangojs.mo,sha256=p0pi6-Zg-qsDVMDjNHO4aav3GfJ3tKKhy6MK7mPtC50,3647
+django/contrib/admin/locale/sw/LC_MESSAGES/djangojs.po,sha256=lZFP7Po4BM_QMTj-SXGlew1hqyJApZxu0lxMP-YduHI,4809
+django/contrib/admin/locale/ta/LC_MESSAGES/django.mo,sha256=ZdtNRZLRqquwMk7mE0XmTzEjTno9Zni3mV6j4DXL4nI,10179
+django/contrib/admin/locale/ta/LC_MESSAGES/django.po,sha256=D0TCLM4FFF7K9NqUGXNFE2KfoEzx5IHcJQ6-dYQi2Eg,16881
+django/contrib/admin/locale/ta/LC_MESSAGES/djangojs.mo,sha256=2-37FOw9Bge0ahIRxFajzxvMkAZL2zBiQFaELmqyhhY,1379
+django/contrib/admin/locale/ta/LC_MESSAGES/djangojs.po,sha256=Qs-D7N3ZVzpZVxXtMWKOzJfSmu_Mk9pge5W15f21ihI,3930
+django/contrib/admin/locale/te/LC_MESSAGES/django.mo,sha256=aIAG0Ey4154R2wa-vNe2x8X4fz2L958zRmTpCaXZzds,10590
+django/contrib/admin/locale/te/LC_MESSAGES/django.po,sha256=-zJYrDNmIs5fp37VsG4EAOVefgbBNl75c-Pp3RGBDAM,16941
+django/contrib/admin/locale/te/LC_MESSAGES/djangojs.mo,sha256=VozLzWQwrY-USvin5XyVPtUUKEmCr0dxaWC6J14BReo,1362
+django/contrib/admin/locale/te/LC_MESSAGES/djangojs.po,sha256=HI8IfXqJf4I6i-XZB8ELGyp5ZNr-oi5hW9h7n_8XSaQ,3919
+django/contrib/admin/locale/tg/LC_MESSAGES/django.mo,sha256=gJfgsEn9doTT0erBK77OBDi7_0O7Rb6PF9tRPacliXU,15463
+django/contrib/admin/locale/tg/LC_MESSAGES/django.po,sha256=Wkx7Hk2a9OzZymgrt9N91OL9K5HZXTbpPBXMhyE0pjI,19550
+django/contrib/admin/locale/tg/LC_MESSAGES/djangojs.mo,sha256=SEaBcnnKupXbTKCJchkSu_dYFBBvOTAOQSZNbCYUuHE,5154
+django/contrib/admin/locale/tg/LC_MESSAGES/djangojs.po,sha256=CfUjLtwMmz1h_MLE7c4UYv05ZTz_SOclyKKWmVEP9Jg,5978
+django/contrib/admin/locale/th/LC_MESSAGES/django.mo,sha256=EVlUISdKOvNkGMG4nbQFzSn5p7d8c9zOGpXwoHsHNlY,16394
+django/contrib/admin/locale/th/LC_MESSAGES/django.po,sha256=OqhGCZ87VX-WKdC2EQ8A8WeXdWXu9mj6k8mG9RLZMpM,20187
+django/contrib/admin/locale/th/LC_MESSAGES/djangojs.mo,sha256=ukj5tyDor9COi5BT9oRLucO2wVTI6jZWclOM-wNpXHM,6250
+django/contrib/admin/locale/th/LC_MESSAGES/djangojs.po,sha256=3L5VU3BNcmfiqzrAWK0tvRRVOtgR8Ceg9YIxL54RGBc,6771
+django/contrib/admin/locale/tk/LC_MESSAGES/django.mo,sha256=f51Ug7txuVeDo1WAywl6oi1aVi1ZJrv94rD4svUobm8,2845
+django/contrib/admin/locale/tk/LC_MESSAGES/django.po,sha256=AXMpn9mSO24azMC5CPHqPZRq-cbk6IpPpaF3Ab3K54k,13309
+django/contrib/admin/locale/tr/LC_MESSAGES/django.mo,sha256=2TG5asYEJCqGPGNofytA2qfjGxNVz3GwdOvkgbbHI-s,18745
+django/contrib/admin/locale/tr/LC_MESSAGES/django.po,sha256=CjXcGzi8vK12O_03qtUKTG8IPjOnKGP-08zoQjaNfzM,20255
+django/contrib/admin/locale/tr/LC_MESSAGES/djangojs.mo,sha256=ZD3OYJSFuhPLrYZbAHb3tPhIxWK_tW1F8DOt7UwDR6g,6044
+django/contrib/admin/locale/tr/LC_MESSAGES/djangojs.po,sha256=bmh2K3ZxUnvAy_OdQB-NOE2injry30mzKGlwCsigIjg,6789
+django/contrib/admin/locale/tt/LC_MESSAGES/django.mo,sha256=ObJ8zwVLhFsS6XZK_36AkNRCeznoJJwLTMh4_LLGPAA,12952
+django/contrib/admin/locale/tt/LC_MESSAGES/django.po,sha256=VDjg5nDrLqRGXpxCyQudEC_n-6kTCIYsOl3izt1Eblc,17329
+django/contrib/admin/locale/tt/LC_MESSAGES/djangojs.mo,sha256=Sz5qnMHWfLXjaCIHxQNrwac4c0w4oeAAQubn5R7KL84,2607
+django/contrib/admin/locale/tt/LC_MESSAGES/djangojs.po,sha256=_Uh3yH_RXVB3PP75RFztvSzVykVq0SQjy9QtTnyH3Qk,4541
+django/contrib/admin/locale/udm/LC_MESSAGES/django.mo,sha256=2Q_lfocM7OEjFKebqNR24ZBqUiIee7Lm1rmS5tPGdZA,622
+django/contrib/admin/locale/udm/LC_MESSAGES/django.po,sha256=L4TgEk2Fm2mtKqhZroE6k_gfz1VC-_dXe39CiJvaOPE,10496
+django/contrib/admin/locale/udm/LC_MESSAGES/djangojs.mo,sha256=CNmoKj9Uc0qEInnV5t0Nt4ZnKSZCRdIG5fyfSsqwky4,462
+django/contrib/admin/locale/udm/LC_MESSAGES/djangojs.po,sha256=ZLYr0yHdMYAl7Z7ipNSNjRFIMNYmzIjT7PsKNMT6XVk,2811
+django/contrib/admin/locale/ug/LC_MESSAGES/django.mo,sha256=1U-qjdk6839W4p5g4PL0l5GsehEwM-iPgMgzbvlmZ8Y,23241
+django/contrib/admin/locale/ug/LC_MESSAGES/django.po,sha256=0--xGDGJR01cIhmxISWl23PnRY2xvkKSHUMJLqfCyeA,24559
+django/contrib/admin/locale/ug/LC_MESSAGES/djangojs.mo,sha256=xC3-Xz8R95NL6EkVKvUuPX4jCwnNA_0sq6PvWEKbZ5I,7306
+django/contrib/admin/locale/ug/LC_MESSAGES/djangojs.po,sha256=V3UuGjeYLnfV151Yn_X0QrAYwfqMe6WvoyWJ1QnKsjo,7927
+django/contrib/admin/locale/uk/LC_MESSAGES/django.mo,sha256=LwO4uX79ZynANx47kGLijkDJ-DAdYWlmW3nYOqbXuuo,22319
+django/contrib/admin/locale/uk/LC_MESSAGES/django.po,sha256=9vEMtbw4ck4Sipdu-Y8mYOufWOTWpu7PVrMDu71GT9g,24335
+django/contrib/admin/locale/uk/LC_MESSAGES/djangojs.mo,sha256=_YwTcBttv3DZNYkBq4Rsl6oq30o8nDvUHPI5Yx0GaA4,5787
+django/contrib/admin/locale/uk/LC_MESSAGES/djangojs.po,sha256=4lYvm_LDX5xha4Qj1dXE5tGs4BjGPUgjigvG2n6y1S4,6993
+django/contrib/admin/locale/ur/LC_MESSAGES/django.mo,sha256=HvyjnSeLhUf1JVDy759V_TI7ygZfLaMhLnoCBJxhH_s,13106
+django/contrib/admin/locale/ur/LC_MESSAGES/django.po,sha256=BFxxLbHs-UZWEmbvtWJNA7xeuvO9wDc32H2ysKZQvF4,17531
+django/contrib/admin/locale/ur/LC_MESSAGES/djangojs.mo,sha256=eYN9Q9KKTV2W0UuqRc-gg7y42yFAvJP8avMeZM-W7mw,2678
+django/contrib/admin/locale/ur/LC_MESSAGES/djangojs.po,sha256=Nj-6L6axLrqA0RHUQbidNAT33sXYfVdGcX4egVua-Pk,4646
+django/contrib/admin/locale/uz/LC_MESSAGES/django.mo,sha256=yKpKebwX6RzUwCkvHzEQ_DFRr7x_nGeACRBP0PljTCQ,4634
+django/contrib/admin/locale/uz/LC_MESSAGES/django.po,sha256=bf_EhEV0c-H8MAdvRFb8TrXjgAAFfl8xif2Sw9uip_A,13776
+django/contrib/admin/locale/uz/LC_MESSAGES/djangojs.mo,sha256=LpuFvNKqNRCCiV5VyRnJoZ8gY3Xieb05YV9KakNU7o8,3783
+django/contrib/admin/locale/uz/LC_MESSAGES/djangojs.po,sha256=joswozR3I1ijRapf50FZMzQQhI_aU2XiiSTLeSxkL64,5235
+django/contrib/admin/locale/vi/LC_MESSAGES/django.mo,sha256=coCDRhju7xVvdSaounXO5cMqCmLWICZPJth6JI3Si2c,18077
+django/contrib/admin/locale/vi/LC_MESSAGES/django.po,sha256=Q1etVmaAb1f79f4uVjbNjPkn-_3m2Spz1buNAV3y9lk,19543
+django/contrib/admin/locale/vi/LC_MESSAGES/djangojs.mo,sha256=45E-fCQkq-BRLzRzsGkw1-AvWlvjL1rdsRFqfsvAq98,5302
+django/contrib/admin/locale/vi/LC_MESSAGES/djangojs.po,sha256=k87QvFnt8psnwMXXrFO6TyH6xCyXIDd_rlnWDfl2FAA,5958
+django/contrib/admin/locale/zh_Hans/LC_MESSAGES/django.mo,sha256=Mqf-2H_QUW3Ex30n_KSWdWufO6gFUYSUsBxdW418huM,17143
+django/contrib/admin/locale/zh_Hans/LC_MESSAGES/django.po,sha256=0rSHQ8jJ5OuiX5zgBwhswSqM6Z90NO5WASbZkFjTNy4,19234
+django/contrib/admin/locale/zh_Hans/LC_MESSAGES/djangojs.mo,sha256=-oaPtoS-K1iBfmpOtn-_XFuqJaFLFDDFzZ6EToaC8g0,5715
+django/contrib/admin/locale/zh_Hans/LC_MESSAGES/djangojs.po,sha256=lpJDxzzdngESFzW38Al5DbfQFfTmM59GCGpj8u9f4rA,6853
+django/contrib/admin/locale/zh_Hant/LC_MESSAGES/django.mo,sha256=XnlgIwrF5lx8UX3uH2x2mTvruwywKo1w2lJ2e07D1AQ,16991
+django/contrib/admin/locale/zh_Hant/LC_MESSAGES/django.po,sha256=t1qEsnnUFNko1aWiln7HpRxIgy7uQy_GlsVrKJ25vfw,18404
+django/contrib/admin/locale/zh_Hant/LC_MESSAGES/djangojs.mo,sha256=yFwS8aTJUAG5lN4tYLCxx-FLfTsiOxXrCEhlIA-9vcs,4230
+django/contrib/admin/locale/zh_Hant/LC_MESSAGES/djangojs.po,sha256=C4Yk5yuYcmaovVs_CS8YFYY2iS4RGi0oNaUpTm7akeU,4724
+django/contrib/admin/migrations/0001_initial.py,sha256=9HFpidmBW2Ix8NcpF1SDXgCMloGER_5XmEu_iYWIMzU,2507
+django/contrib/admin/migrations/0002_logentry_remove_auto_add.py,sha256=LBJ-ZZoiNu3qDtV-zNOHhq6E42V5CoC5a3WMYX9QvkM,553
+django/contrib/admin/migrations/0003_logentry_add_action_flag_choices.py,sha256=AnAKgnGQcg5cQXSVo5UHG2uqKKNOdLyPkIJK-q_AGEE,538
+django/contrib/admin/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/admin/migrations/__pycache__/0001_initial.cpython-312.pyc,,
+django/contrib/admin/migrations/__pycache__/0002_logentry_remove_auto_add.cpython-312.pyc,,
+django/contrib/admin/migrations/__pycache__/0003_logentry_add_action_flag_choices.cpython-312.pyc,,
+django/contrib/admin/migrations/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/admin/models.py,sha256=c7KbDRElgwaEL479ZXHJPSa0mfcnZ7E7utzvEK0o6RM,8444
+django/contrib/admin/options.py,sha256=TRxEYp_9eBshk0E8IXr9-VE5bswkEvNGGb9JSYxxXKA,100242
+django/contrib/admin/sites.py,sha256=1I1B-JMkFk0eoACp8cxRDY1OKrnFaJzvLsL1TdQ0M-c,23204
+django/contrib/admin/static/admin/css/autocomplete.css,sha256=oZCQKaJleVU68lo5A1fRD1iGzqNgSgtollAc2gVWbaw,9185
+django/contrib/admin/static/admin/css/base.css,sha256=RO7kMJW2rLFbd-D9yY8GrwV-Co2V9XFBajNAS592Olc,22092
+django/contrib/admin/static/admin/css/changelists.css,sha256=qaNfxJlI_NarKm0IjyTkmtRoNXvOoVHfMhoOvVjbE4M,6878
+django/contrib/admin/static/admin/css/dark_mode.css,sha256=VexPq1oTRQFmQUvDWA5TXs113B3DonxjM1dVq3jWItE,2804
+django/contrib/admin/static/admin/css/dashboard.css,sha256=iCz7Kkr5Ld3Hyjx_O1r_XfZ2LcpxOpVjcDZS1wbqHWs,441
+django/contrib/admin/static/admin/css/forms.css,sha256=La0DBLZdAOZL6KCO6lXWahkNLpiYDssCFG1HJdVMhcE,8794
+django/contrib/admin/static/admin/css/login.css,sha256=f8lbZQdAWt1rGdvNrIf1kciQPVcBJX4zYHf81JrqXnI,951
+django/contrib/admin/static/admin/css/nav_sidebar.css,sha256=4wmBb5tVT5_fcnP_UtS16jal0QiqgOKq_yz162Hr_C4,2810
+django/contrib/admin/static/admin/css/responsive.css,sha256=jmrf-FGu2q4Fx6GshvgFoxaWeYvH6YZ48W25Gz6Y89Y,17972
+django/contrib/admin/static/admin/css/responsive_rtl.css,sha256=-rFxMozuMebKa4cF-mnIX4rc0BQ618-ErK8eAEmEHBw,2544
+django/contrib/admin/static/admin/css/rtl.css,sha256=1bBNLRcIPTteBElXxSRY1ctni3Fytx5jtCvKNyuaRnU,4696
+django/contrib/admin/static/admin/css/unusable_password_field.css,sha256=c-s6fSgH5n2hrZO6jopy__T9_VHX0YZJnnGTEfWNjRA,663
+django/contrib/admin/static/admin/css/vendor/select2/LICENSE-SELECT2.md,sha256=TuDLxRNwr941hlKg-XeXIFNyntV4tqQvXioDfRFPCzk,1124
+django/contrib/admin/static/admin/css/vendor/select2/select2.css,sha256=kalgQ55Pfy9YBkT-4yYYd5N8Iobe-iWeBuzP7LjVO0o,17358
+django/contrib/admin/static/admin/css/vendor/select2/select2.min.css,sha256=FdatTf20PQr_rWg-cAKfl6j4_IY3oohFAJ7gVC3M34E,14966
+django/contrib/admin/static/admin/css/widgets.css,sha256=NZBu1UEPYtta6ThHX9CFDIt2DflTjrSsBu5B5Me3QMw,11564
+django/contrib/admin/static/admin/img/LICENSE,sha256=0RT6_zSIwWwxmzI13EH5AjnT1j2YU3MwM9j3U19cAAQ,1081
+django/contrib/admin/static/admin/img/README.txt,sha256=Z5Y_AuG3V72qXRo_hS7JTHAid6deKUQKfLHgWP5hQHw,321
+django/contrib/admin/static/admin/img/calendar-icons.svg,sha256=VPzjt0-CwhFaiF2JyX2SjEkPuELU7QlhH4UhuWZmWX0,2455
+django/contrib/admin/static/admin/img/gis/move_vertex_off.svg,sha256=ou-ppUNyy5QZCKFYlcrzGBwEEiTDX5mmJvM8rpwC5DM,1129
+django/contrib/admin/static/admin/img/gis/move_vertex_on.svg,sha256=DgmcezWDms_3VhgqgYUGn-RGFHyScBP0MeX8PwHy_nE,1129
+django/contrib/admin/static/admin/img/icon-addlink.svg,sha256=_5bRQvExVwSP4DsRzIb-yDwutuft2RkHLqcifdlWypE,331
+django/contrib/admin/static/admin/img/icon-alert.svg,sha256=aXtd9PA66tccls-TJfyECQrmdWrj8ROWKC0tJKa7twA,504
+django/contrib/admin/static/admin/img/icon-calendar.svg,sha256=_bcF7a_R94UpOfLf-R0plVobNUeeTto9UMiUIHBcSHY,1086
+django/contrib/admin/static/admin/img/icon-changelink.svg,sha256=pjCclLDG8vvQmfZkFVzFMw1CLer930zafI8XgvDN86c,380
+django/contrib/admin/static/admin/img/icon-clock.svg,sha256=k55Yv6R6-TyS8hlL3Kye0IMNihgORFjoJjHY21vtpEA,677
+django/contrib/admin/static/admin/img/icon-deletelink.svg,sha256=06XOHo5y59UfNBtO8jMBHQqmXt8UmohlSMloUuZ6d0A,392
+django/contrib/admin/static/admin/img/icon-hidelink.svg,sha256=4MGicntOFkPurB9LW_IC-0N88WXKvrQxVyBB9p5gMTA,784
+django/contrib/admin/static/admin/img/icon-no.svg,sha256=QqBaTrrp3KhYJxLYB5E-0cn_s4A_Y8PImYdWjfQSM-c,560
+django/contrib/admin/static/admin/img/icon-unknown-alt.svg,sha256=LyL9oJtR0U49kGHYKMxmmm1vAw3qsfXR7uzZH76sZ_g,655
+django/contrib/admin/static/admin/img/icon-unknown.svg,sha256=ePcXlyi7cob_IcJOpZ66uiymyFgMPHl8p9iEn_eE3fc,655
+django/contrib/admin/static/admin/img/icon-viewlink.svg,sha256=NL7fcy7mQOQ91sRzxoVRLfzWzXBRU59cFANOrGOwWM0,581
+django/contrib/admin/static/admin/img/icon-yes.svg,sha256=_H4JqLywJ-NxoPLqSqk9aGJcxEdZwtSFua1TuI9kIcM,436
+django/contrib/admin/static/admin/img/inline-delete.svg,sha256=Ni1z8eDYBOveVDqtoaGyEMWG5Mdnt9dniiuBWTlnr5Y,560
+django/contrib/admin/static/admin/img/search.svg,sha256=HgvLPNT7FfgYvmbt1Al1yhXgmzYHzMg8BuDLnU9qpMU,458
+django/contrib/admin/static/admin/img/selector-icons.svg,sha256=0RJyrulJ_UR9aYP7Wbvs5jYayBVhLoXR26zawNMZ0JQ,3291
+django/contrib/admin/static/admin/img/sorting-icons.svg,sha256=cCvcp4i3MAr-mo8LE_h8ZRu3LD7Ma9BtpK-p24O3lVA,1097
+django/contrib/admin/static/admin/img/tooltag-add.svg,sha256=fTZCouGMJC6Qq2xlqw_h9fFodVtLmDMrpmZacGVJYZQ,331
+django/contrib/admin/static/admin/img/tooltag-arrowright.svg,sha256=GIAqy_4Oor9cDMNC2fSaEGh-3gqScvqREaULnix3wHc,280
+django/contrib/admin/static/admin/js/SelectBox.js,sha256=b42sGVqaCDqlr0ibFiZus9FbrUweRcKD_y61HDAdQuc,4530
+django/contrib/admin/static/admin/js/SelectFilter2.js,sha256=KHZTz9X8P7s1a_4Di1rpNfmnobP1Z49-JizDDDkqzLE,15502
+django/contrib/admin/static/admin/js/actions.js,sha256=KZnmpiDCroO8EcCawROJdHAdUFL87Xu9pqYUL5jHIxM,8076
+django/contrib/admin/static/admin/js/admin/DateTimeShortcuts.js,sha256=ryJhtM9SN0fMdfnhV_m2Hv2pc6a9B0Zpc37ocZ82_-0,19319
+django/contrib/admin/static/admin/js/admin/RelatedObjectLookups.js,sha256=XXtBFmKGeHSwL0SxEKKvzhbeLA1jax8ZasQobouWfGc,9097
+django/contrib/admin/static/admin/js/autocomplete.js,sha256=OAqSTiHZnTWZzJKEvOm-Z1tdAlLjPWX9jKpYkmH0Ozo,1060
+django/contrib/admin/static/admin/js/calendar.js,sha256=cj6qPrSqdWeq_OnWUUKWy4jVGCiy4YxsbXa5KhUw_r4,9141
+django/contrib/admin/static/admin/js/cancel.js,sha256=UEZdvvWu5s4ZH16lFfxa8UPgWXJ3i8VseK5Lcw2Kreg,884
+django/contrib/admin/static/admin/js/change_form.js,sha256=zOTeORCq1i9XXV_saSBBDOXbou5UtZvxYFpVPqxQ02Q,606
+django/contrib/admin/static/admin/js/core.js,sha256=H4_YZp2B3Y9JxMZPpHKVutrUZJbAZd4H6Gc-ilSb4_E,6208
+django/contrib/admin/static/admin/js/filters.js,sha256=T-JlrqZEBSWbiFw_e5lxkMykkACWqWXd_wMy-b3TnaE,978
+django/contrib/admin/static/admin/js/inlines.js,sha256=yWB-KSw_aZmVZpIitKde7imygAa36LBdqoBfB7lTvJQ,15526
+django/contrib/admin/static/admin/js/jquery.init.js,sha256=uM_Kf7EOBMipcCmuQHbyubQkycleSWDCS8-c3WevFW0,347
+django/contrib/admin/static/admin/js/nav_sidebar.js,sha256=1xzV95R3GaqQ953sVmkLIuZJrzFNoDJMHBqwQePp6-Q,3063
+django/contrib/admin/static/admin/js/popup_response.js,sha256=IKRg0dCpW_gkwT-l6yy3hIFxEwbaA5tw0XEckpPaHvE,532
+django/contrib/admin/static/admin/js/prepopulate.js,sha256=UYkWrHNK1-OWp1a5IWZdg0udfo_dcR-jKSn5AlxxqgU,1531
+django/contrib/admin/static/admin/js/prepopulate_init.js,sha256=mJIPAgn8QHji_rSqO6WKNREbpkCILFrjRCCOQ1-9SoQ,586
+django/contrib/admin/static/admin/js/theme.js,sha256=gG6whuLXbtdF-t_pvUO1O7LfVlNZDuzMZONENrOuZp4,1653
+django/contrib/admin/static/admin/js/unusable_password_field.js,sha256=tcGj7GAhLMohHLtxGOAsaZH1t0Fu3fTQk2l3vFV9AY4,1480
+django/contrib/admin/static/admin/js/urlify.js,sha256=8oC4Bcxt8oJY4uy9O4NjPws5lXzDkdfwI2Xo3MxpBTo,7887
+django/contrib/admin/static/admin/js/vendor/jquery/LICENSE.txt,sha256=1Nuevm8p9RaOrEWtcT8FViOsXQ3NW6ktoj1lCuASAg0,1097
+django/contrib/admin/static/admin/js/vendor/jquery/jquery.js,sha256=eKhayi8LEQwp4NKxN-CfCh-3qOVUtJn3QNZ0TciWLP4,285314
+django/contrib/admin/static/admin/js/vendor/jquery/jquery.min.js,sha256=_JqT3SQfawRcv_BIHPThkBvs0OEvtFFmqPF_lYI_Cxo,87533
+django/contrib/admin/static/admin/js/vendor/select2/LICENSE.md,sha256=TuDLxRNwr941hlKg-XeXIFNyntV4tqQvXioDfRFPCzk,1124
+django/contrib/admin/static/admin/js/vendor/select2/i18n/af.js,sha256=IpI3uo19fo77jMtN5R3peoP0OriN-nQfPY2J4fufd8g,866
+django/contrib/admin/static/admin/js/vendor/select2/i18n/ar.js,sha256=zxQ3peSnbVIfrH1Ndjx4DrHDsmbpqu6mfeylVWFM5mY,905
+django/contrib/admin/static/admin/js/vendor/select2/i18n/az.js,sha256=N_KU7ftojf2HgvJRlpP8KqG6hKIbqigYN3K0YH_ctuQ,721
+django/contrib/admin/static/admin/js/vendor/select2/i18n/bg.js,sha256=5Z6IlHmuk_6IdZdAVvdigXnlj7IOaKXtcjuI0n0FmYQ,968
+django/contrib/admin/static/admin/js/vendor/select2/i18n/bn.js,sha256=wdQbgaxZ47TyGlwvso7GOjpmTXUKaWzvVUr_oCRemEE,1291
+django/contrib/admin/static/admin/js/vendor/select2/i18n/bs.js,sha256=g56kWSu9Rxyh_rarLSDa_8nrdqL51JqZai4QQx20jwQ,965
+django/contrib/admin/static/admin/js/vendor/select2/i18n/ca.js,sha256=DSyyAXJUI0wTp_TbFhLNGrgvgRsGWeV3IafxYUGBggM,900
+django/contrib/admin/static/admin/js/vendor/select2/i18n/cs.js,sha256=t_8OWVi6Yy29Kabqs_l1sM2SSrjUAgZTwbTX_m0MCL8,1292
+django/contrib/admin/static/admin/js/vendor/select2/i18n/da.js,sha256=tF2mvzFYSWYOU3Yktl3G93pCkf-V9gonCxk7hcA5J1o,828
+django/contrib/admin/static/admin/js/vendor/select2/i18n/de.js,sha256=5bspfcihMp8yXDwfcqvC_nV3QTbtBuQDmR3c7UPQtFw,866
+django/contrib/admin/static/admin/js/vendor/select2/i18n/dsb.js,sha256=KtP2xNoP75oWnobUrS7Ep_BOFPzcMNDt0wyPnkbIF_Q,1017
+django/contrib/admin/static/admin/js/vendor/select2/i18n/el.js,sha256=IdvD8eY_KpX9fdHvld3OMvQfYsnaoJjDeVkgbIemfn8,1182
+django/contrib/admin/static/admin/js/vendor/select2/i18n/en.js,sha256=C66AO-KOXNuXEWwhwfjYBFa3gGcIzsPFHQAZ9qSh3Go,844
+django/contrib/admin/static/admin/js/vendor/select2/i18n/es.js,sha256=IhZaIy8ufTduO2-vBrivswMCjlPk7vrk4P81pD6B0SM,922
+django/contrib/admin/static/admin/js/vendor/select2/i18n/et.js,sha256=LgLgdOkKjc63svxP1Ua7A0ze1L6Wrv0X6np-8iRD5zw,801
+django/contrib/admin/static/admin/js/vendor/select2/i18n/eu.js,sha256=rLmtP7bA_atkNIj81l_riTM7fi5CXxVrFBHFyddO-Hw,868
+django/contrib/admin/static/admin/js/vendor/select2/i18n/fa.js,sha256=fqZkE9e8tt2rZ7OrDGPiOsTNdj3S2r0CjbddVUBDeMA,1023
+django/contrib/admin/static/admin/js/vendor/select2/i18n/fi.js,sha256=KVGirhGGNee_iIpMGLX5EzH_UkNe-FOPC_0484G-QQ0,803
+django/contrib/admin/static/admin/js/vendor/select2/i18n/fr.js,sha256=aj0q2rdJN47BRBc9LqvsgxkuPOcWAbZsUFUlbguwdY0,924
+django/contrib/admin/static/admin/js/vendor/select2/i18n/gl.js,sha256=HSJafI85yKp4WzjFPT5_3eZ_-XQDYPzzf4BWmu6uXHk,924
+django/contrib/admin/static/admin/js/vendor/select2/i18n/he.js,sha256=DIPRKHw0NkDuUtLNGdTnYZcoCiN3ustHY-UMmw34V_s,984
+django/contrib/admin/static/admin/js/vendor/select2/i18n/hi.js,sha256=m6ZqiKZ_jzwzVFgC8vkYiwy4lH5fJEMV-LTPVO2Wu40,1175
+django/contrib/admin/static/admin/js/vendor/select2/i18n/hr.js,sha256=NclTlDTiNFX1y0W1Llj10-ZIoXUYd7vDXqyeUJ7v3B4,852
+django/contrib/admin/static/admin/js/vendor/select2/i18n/hsb.js,sha256=FTLszcrGaelTW66WV50u_rS6HV0SZxQ6Vhpi2tngC6M,1018
+django/contrib/admin/static/admin/js/vendor/select2/i18n/hu.js,sha256=3PdUk0SpHY-H-h62womw4AyyRMujlGc6_oxW-L1WyOs,831
+django/contrib/admin/static/admin/js/vendor/select2/i18n/hy.js,sha256=BLh0fntrwtwNwlQoiwLkdQOVyNXHdmRpL28p-W5FsDg,1028
+django/contrib/admin/static/admin/js/vendor/select2/i18n/id.js,sha256=fGJ--Aw70Ppzk3EgLjF1V_QvqD2q_ufXjnQIIyZqYgc,768
+django/contrib/admin/static/admin/js/vendor/select2/i18n/is.js,sha256=gn0ddIqTnJX4wk-tWC5gFORJs1dkgIH9MOwLljBuQK0,807
+django/contrib/admin/static/admin/js/vendor/select2/i18n/it.js,sha256=kGxtapwhRFj3u_IhY_7zWZhKgR5CrZmmasT5w-aoXRM,897
+django/contrib/admin/static/admin/js/vendor/select2/i18n/ja.js,sha256=tZ4sqdx_SEcJbiW5-coHDV8FVmElJRA3Z822EFHkjLM,862
+django/contrib/admin/static/admin/js/vendor/select2/i18n/ka.js,sha256=DH6VrnVdR8SX6kso2tzqnJqs32uCpBNyvP9Kxs3ssjI,1195
+django/contrib/admin/static/admin/js/vendor/select2/i18n/km.js,sha256=x9hyjennc1i0oeYrFUHQnYHakXpv7WD7MSF-c9AaTjg,1088
+django/contrib/admin/static/admin/js/vendor/select2/i18n/ko.js,sha256=ImmB9v7g2ZKEmPFUQeXrL723VEjbiEW3YelxeqHEgHc,855
+django/contrib/admin/static/admin/js/vendor/select2/i18n/lt.js,sha256=ZT-45ibVwdWnTyo-TqsqW2NjIp9zw4xs5So78KMb_s8,944
+django/contrib/admin/static/admin/js/vendor/select2/i18n/lv.js,sha256=hHpEK4eYSoJj_fvA2wl8QSuJluNxh-Tvp6UZm-ZYaeE,900
+django/contrib/admin/static/admin/js/vendor/select2/i18n/mk.js,sha256=PSpxrnBpL4SSs9Tb0qdWD7umUIyIoR2V1fpqRQvCXcA,1038
+django/contrib/admin/static/admin/js/vendor/select2/i18n/ms.js,sha256=NCz4RntkJZf8YDDC1TFBvK-nkn-D-cGNy7wohqqaQD4,811
+django/contrib/admin/static/admin/js/vendor/select2/i18n/nb.js,sha256=eduKCG76J3iIPrUekCDCq741rnG4xD7TU3E7Lib7sPE,778
+django/contrib/admin/static/admin/js/vendor/select2/i18n/ne.js,sha256=QQjDPQE6GDKXS5cxq2JRjk3MGDvjg3Izex71Zhonbj8,1357
+django/contrib/admin/static/admin/js/vendor/select2/i18n/nl.js,sha256=JctLfTpLQ5UFXtyAmgbCvSPUtW0fy1mE7oNYcMI90bI,904
+django/contrib/admin/static/admin/js/vendor/select2/i18n/pl.js,sha256=6gEuKYnJdf8cbPERsw-mtdcgdByUJuLf1QUH0aSajMo,947
+django/contrib/admin/static/admin/js/vendor/select2/i18n/ps.js,sha256=4J4sZtSavxr1vZdxmnub2J0H0qr1S8WnNsTehfdfq4M,1049
+django/contrib/admin/static/admin/js/vendor/select2/i18n/pt-BR.js,sha256=0DFe1Hu9fEDSXgpjPOQrA6Eq0rGb15NRbsGh1U4vEr0,876
+django/contrib/admin/static/admin/js/vendor/select2/i18n/pt.js,sha256=L5jqz8zc5BF8ukrhpI2vvGrNR34X7482dckX-IUuUpA,878
+django/contrib/admin/static/admin/js/vendor/select2/i18n/ro.js,sha256=Aadb6LV0u2L2mCOgyX2cYZ6xI5sDT9OI3V7HwuueivM,938
+django/contrib/admin/static/admin/js/vendor/select2/i18n/ru.js,sha256=bV6emVCE9lY0LzbVN87WKAAAFLUT3kKqEzn641pJ29o,1171
+django/contrib/admin/static/admin/js/vendor/select2/i18n/sk.js,sha256=MnbUcP6pInuBzTW_L_wmXY8gPLGCOcKyzQHthFkImZo,1306
+django/contrib/admin/static/admin/js/vendor/select2/i18n/sl.js,sha256=LPIKwp9gp_WcUc4UaVt_cySlNL5_lmfZlt0bgtwnkFk,925
+django/contrib/admin/static/admin/js/vendor/select2/i18n/sq.js,sha256=oIxJLYLtK0vG2g3s5jsGLn4lHuDgSodxYAWL0ByHRHo,903
+django/contrib/admin/static/admin/js/vendor/select2/i18n/sr-Cyrl.js,sha256=BoT2KdiceZGgxhESRz3W2J_7CFYqWyZyov2YktUo_2w,1109
+django/contrib/admin/static/admin/js/vendor/select2/i18n/sr.js,sha256=7EELYXwb0tISsuvL6eorxzTviMK-oedSvZvEZCMloGU,980
+django/contrib/admin/static/admin/js/vendor/select2/i18n/sv.js,sha256=c6nqUmitKs4_6AlYDviCe6HqLyOHqot2IrvJRGjj1JE,786
+django/contrib/admin/static/admin/js/vendor/select2/i18n/th.js,sha256=saDPLk-2dq5ftKCvW1wddkJOg-mXA-GUoPPVOlSZrIY,1074
+django/contrib/admin/static/admin/js/vendor/select2/i18n/tk.js,sha256=mUEGlb-9nQHvzcTYI-1kjsB7JsPRGpLxWbjrJ8URthU,771
+django/contrib/admin/static/admin/js/vendor/select2/i18n/tr.js,sha256=dDz8iSp07vbx9gciIqz56wmc2TLHj5v8o6es75vzmZU,775
+django/contrib/admin/static/admin/js/vendor/select2/i18n/uk.js,sha256=MixhFDvdRda-wj-TjrN018s7R7E34aQhRjz4baxrdKw,1156
+django/contrib/admin/static/admin/js/vendor/select2/i18n/vi.js,sha256=mwTeySsUAgqu_IA6hvFzMyhcSIM1zGhNYKq8G7X_tpM,796
+django/contrib/admin/static/admin/js/vendor/select2/i18n/zh-CN.js,sha256=olAdvPQ5qsN9IZuxAKgDVQM-blexUnWTDTXUtiorygI,768
+django/contrib/admin/static/admin/js/vendor/select2/i18n/zh-TW.js,sha256=DnDBG9ywBOfxVb2VXg71xBR_tECPAxw7QLhZOXiJ4fo,707
+django/contrib/admin/static/admin/js/vendor/select2/select2.full.js,sha256=ugZkER5OAEGzCwwb_4MvhBKE5Gvmc0S59MKn-dooZaI,173566
+django/contrib/admin/static/admin/js/vendor/select2/select2.full.min.js,sha256=XG_auAy4aieWldzMImofrFDiySK-pwJC7aoo9St7rS0,79212
+django/contrib/admin/static/admin/js/vendor/xregexp/LICENSE.txt,sha256=c68pSb_5KWyw-BbDvhmk2k6VrclMH5JHlui60_A_Lyk,1106
+django/contrib/admin/static/admin/js/vendor/xregexp/xregexp.js,sha256=FM2fFr4a9mVscQobpyNQG1Bu4_8exjunQglEoPSP5uo,325171
+django/contrib/admin/static/admin/js/vendor/xregexp/xregexp.min.js,sha256=-FQXGywOGwW-5DdFMWIq0QWpGX3rQFuQpIDe6N_9eVI,163184
+django/contrib/admin/templates/admin/404.html,sha256=zyawWu1I9IxDGBRsks6-DgtLUGDDYOKHfj9YQqPl0AA,282
+django/contrib/admin/templates/admin/500.html,sha256=rZNmFXr9POnc9TdZwD06qkY8h2W5K05vCyssrIzbZGE,551
+django/contrib/admin/templates/admin/actions.html,sha256=B2s3wWt4g_uhd7CZdmXp4ZGZlMfh6K9RAH4Bv6Ud9nQ,1235
+django/contrib/admin/templates/admin/app_index.html,sha256=7NPb0bdLKOdja7FoIERyRZRYK-ldX3PcxMoydguWfzc,493
+django/contrib/admin/templates/admin/app_list.html,sha256=jiS-lqU3wzxA804jf-eR16GGXSKtiwok2BmGl9PXVcE,2054
+django/contrib/admin/templates/admin/auth/user/add_form.html,sha256=iZ8T3RZHTxB-RR1xVwEaajcmfgro7JOVJY_wXeL3aGg,633
+django/contrib/admin/templates/admin/auth/user/change_password.html,sha256=GVfOxP3n9o4VDcGfhugsfQrfnmIX3t39eUMVIWnYTZo,3788
+django/contrib/admin/templates/admin/base.html,sha256=afBV1wJ-8BcoXeTHr2mZ2enpRZ1ARk_FFvydsWWOWJo,6081
+django/contrib/admin/templates/admin/base_site.html,sha256=GCiXgXwC_ZZ1goTKnrbdNfWONojGxTatiD5hCsA8HTg,450
+django/contrib/admin/templates/admin/change_form.html,sha256=_SItPLxgcpREl0hhVXt92ZUoBbwFRjMxrLIe5lSAqt0,3097
+django/contrib/admin/templates/admin/change_form_object_tools.html,sha256=C0l0BJF2HuSjIvtY-Yr-ByZ9dePFRrTc-MR-OVJD-AI,403
+django/contrib/admin/templates/admin/change_list.html,sha256=S-i0XcBZuY00idddX6w1ZKyD33thTFASFQk39mQ5JSA,3808
+django/contrib/admin/templates/admin/change_list_object_tools.html,sha256=-AX0bYTxDsdLtEpAEK3RFpY89tdvVChMAWPYBLqPn48,378
+django/contrib/admin/templates/admin/change_list_results.html,sha256=yOpb1o-L5Ys9GiRA_nCXoFhIzREDVXLBuYzZk1xrx1w,1502
+django/contrib/admin/templates/admin/color_theme_toggle.html,sha256=a2uh7_c2umbLLGRD_cVdVmfp291TwQYkD_87sYCotIU,703
+django/contrib/admin/templates/admin/date_hierarchy.html,sha256=Hug06L1uQzPQ-NAeixTtKRtDu2lAWh96o6f8ElnyU0c,453
+django/contrib/admin/templates/admin/delete_confirmation.html,sha256=3eMxQPSITd7Mae22TALXtCvJR4YMwfzNG_iAtuyF0PI,2539
+django/contrib/admin/templates/admin/delete_selected_confirmation.html,sha256=5yyaNqfiK1evhJ7px7gmMqjFwYrrMaKNDvQJ3-Lu4mo,2241
+django/contrib/admin/templates/admin/edit_inline/stacked.html,sha256=q4DUCiTfrlVypMV6TrvkN4zl1QDe57l-VTvYcO6yl1Q,3108
+django/contrib/admin/templates/admin/edit_inline/tabular.html,sha256=Dk0R0Hb9a4Dwl_F9G5W7GMxvLiUeOCcnk04_khbzeeA,4436
+django/contrib/admin/templates/admin/filter.html,sha256=cvjazGEln3BL_0iyz8Kcsend5WhT9y-gXKRN2kHqejU,395
+django/contrib/admin/templates/admin/includes/fieldset.html,sha256=xYpl4rTle6p8pNgEUDQ6x5b2nhRRI6Tu3clY0_hiT_8,2672
+django/contrib/admin/templates/admin/includes/object_delete_summary.html,sha256=OC7VhKQiczmi01Gt_3jyemelerSNrGyDiWghUK6xKEI,192
+django/contrib/admin/templates/admin/index.html,sha256=TQxZdAy2ZyeXBLA_KZMXus7e2TGezFAUTsYHJBMLPl8,2070
+django/contrib/admin/templates/admin/invalid_setup.html,sha256=F5FS3o7S3l4idPrX29OKlM_azYmCRKzFdYjV_jpTqhE,447
+django/contrib/admin/templates/admin/login.html,sha256=ShZFbs_ITw6YoOBI_L6B-zekHJqjlR14h8WHIo-g5Ro,1899
+django/contrib/admin/templates/admin/nav_sidebar.html,sha256=OfI8XJn3_Q_Wf2ymc1IH61eTGZNMFwkkGwXXTDqeuP8,486
+django/contrib/admin/templates/admin/object_history.html,sha256=5e6ki7C94YKBoFyCvDOfqt4YzCyhNmNMy8NM4aKqiHc,2136
+django/contrib/admin/templates/admin/pagination.html,sha256=OBvC2HWFaH3wIuk6gzKSyCli51NTaW8vnJFyBOpNo_8,549
+django/contrib/admin/templates/admin/popup_response.html,sha256=Lj8dfQrg1XWdA-52uNtWJ9hwBI98Wt2spSMkO4YBjEk,327
+django/contrib/admin/templates/admin/prepopulated_fields_js.html,sha256=PShGpqQWBBVwQ86r7b-SimwJS0mxNiz8AObaiDOSfvY,209
+django/contrib/admin/templates/admin/search_form.html,sha256=GImO4ldr2iVMDKPa2prQzrJyrZEQS1Zy6guNfF6VbQ8,1357
+django/contrib/admin/templates/admin/submit_line.html,sha256=yI7XWZCjvY5JtDAvbzx8hpXZi4vRYWx0mty7Zt5uWjY,1093
+django/contrib/admin/templates/admin/widgets/clearable_file_input.html,sha256=3g3JbkQmjgjl_Lyz6DzkvNBxlJT0GJAuQGV4MAGSyJ0,666
+django/contrib/admin/templates/admin/widgets/date.html,sha256=uJME8ir5DrcrWze9ikzlspoaCudQqxyMMGr6azIMkMc,71
+django/contrib/admin/templates/admin/widgets/foreign_key_raw_id.html,sha256=s5BiNQDbL9GcEVzYMwPfoYRFdnMiSeoyLKvyAzMqGnw,339
+django/contrib/admin/templates/admin/widgets/many_to_many_raw_id.html,sha256=w18JMKnPKrw6QyqIXBcdPs3YJlTRtHK5HGxj0lVkMlY,54
+django/contrib/admin/templates/admin/widgets/radio.html,sha256=-ob26uqmvrEUMZPQq6kAqK4KBk2YZHTCWWCM6BnaL0w,57
+django/contrib/admin/templates/admin/widgets/related_widget_wrapper.html,sha256=YwUzzVO2VBxqBJ-s0Aa9O5i1RDbo-HLqi1y-bbhvLWM,2102
+django/contrib/admin/templates/admin/widgets/split_datetime.html,sha256=BQ9XNv3eqtvNqZZGW38VBM2Nan-5PBxokbo2Fm_wwCQ,238
+django/contrib/admin/templates/admin/widgets/time.html,sha256=oiXCD1IvDhALK3w0fCrVc7wBOFMJhvPNTG2_NNz9H7A,71
+django/contrib/admin/templates/admin/widgets/url.html,sha256=Tf7PwdoKAiimfmDTVbWzRVxxUeyfhF0OlsuiOZ1tHgI,218
+django/contrib/admin/templates/registration/logged_out.html,sha256=PuviqzJh7C6SZJl9yKZXDcxxqXNCTDVfRuEpqvwJiPE,425
+django/contrib/admin/templates/registration/password_change_done.html,sha256=Ukca5IPY_VhtO3wfu9jABgY7SsbB3iIGp2KCSJqihlQ,745
+django/contrib/admin/templates/registration/password_change_form.html,sha256=vOyAdwDe7ajx0iFQR-dbWK7Q3bo6NVejWEFIoNlRYbQ,2428
+django/contrib/admin/templates/registration/password_reset_complete.html,sha256=_fc5bDeYBaI5fCUJZ0ZFpmOE2CUqlbk3npGk63uc_Ks,417
+django/contrib/admin/templates/registration/password_reset_confirm.html,sha256=r8SneE3ofcZkm38eV1FPBfyNyKXKNqGci-hdqifV_3k,1498
+django/contrib/admin/templates/registration/password_reset_done.html,sha256=SQsksjWN8vPLpvtFYPBFMMqZtLeiB4nesPq2VxpB3Y8,588
+django/contrib/admin/templates/registration/password_reset_email.html,sha256=rqaoGa900-rsUasaGYP2W9nBd6KOGZTyc1PsGTFozHo,612
+django/contrib/admin/templates/registration/password_reset_form.html,sha256=_Grf7jbOWrdT5RR8ypvCNv0j_huX5O_EiNwAO_NF0jc,955
+django/contrib/admin/templatetags/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/admin/templatetags/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/admin/templatetags/__pycache__/admin_list.cpython-312.pyc,,
+django/contrib/admin/templatetags/__pycache__/admin_modify.cpython-312.pyc,,
+django/contrib/admin/templatetags/__pycache__/admin_urls.cpython-312.pyc,,
+django/contrib/admin/templatetags/__pycache__/base.cpython-312.pyc,,
+django/contrib/admin/templatetags/__pycache__/log.cpython-312.pyc,,
+django/contrib/admin/templatetags/admin_list.py,sha256=qWMkhfkrHzdpwpgprgV3anG_BW0Be0lKV3H34tj0Ogw,18871
+django/contrib/admin/templatetags/admin_modify.py,sha256=DGE-YaZB1-bUqvjOwmnWJTrIRiR1qYdY6NyPDj1Hj3U,4978
+django/contrib/admin/templatetags/admin_urls.py,sha256=fIWcZ4zhPURSQ0DliyMzmzALO5kshFyWG6YhIPvUx9A,2038
+django/contrib/admin/templatetags/base.py,sha256=0jlMfZu-IZkTJsnJQUtqBX2ceqCaVeClTTS1wdxn73w,1465
+django/contrib/admin/templatetags/log.py,sha256=vL2TNhgFsCH-4JXDE-2I_BhB2xQQLwx4GkHKx7m8Rz4,2050
+django/contrib/admin/tests.py,sha256=jItB0bAMHtTkDmsPXmg8UZue09a5zGV_Ws2hYH_bL80,8524
+django/contrib/admin/utils.py,sha256=d7m5I_5lC9JbrOXCNd_PCHefWmT-jc41HS3kTrFY3_0,21733
+django/contrib/admin/views/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/admin/views/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/admin/views/__pycache__/autocomplete.cpython-312.pyc,,
+django/contrib/admin/views/__pycache__/decorators.cpython-312.pyc,,
+django/contrib/admin/views/__pycache__/main.cpython-312.pyc,,
+django/contrib/admin/views/autocomplete.py,sha256=PjC8db25zhYgwLS_4pq6PApTD_YRn4muIH0A_VN7kCg,4385
+django/contrib/admin/views/decorators.py,sha256=4ndYdYoPLhWsdutME0Lxsmcf6UFP5Z2ou3_pMjgNbw8,639
+django/contrib/admin/views/main.py,sha256=CzHtJVnFBREIxEv04n2gLKnWKwZDTlpK9B5p6y5Cq5Y,25866
+django/contrib/admin/widgets.py,sha256=ujOuEp7Db12KIEcje7_ry55q_FISyheBF-7E3z8drFg,19637
+django/contrib/admindocs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/admindocs/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/admindocs/__pycache__/apps.cpython-312.pyc,,
+django/contrib/admindocs/__pycache__/middleware.cpython-312.pyc,,
+django/contrib/admindocs/__pycache__/urls.cpython-312.pyc,,
+django/contrib/admindocs/__pycache__/utils.cpython-312.pyc,,
+django/contrib/admindocs/__pycache__/views.cpython-312.pyc,,
+django/contrib/admindocs/apps.py,sha256=bklhU4oaTSmPdr0QzpVeuNT6iG77QM1AgiKKZDX05t4,216
+django/contrib/admindocs/locale/af/LC_MESSAGES/django.mo,sha256=UVln7JyuWsM6Et_syaOcMINSsBRDQFqOrbEBOy94_mE,3063
+django/contrib/admindocs/locale/af/LC_MESSAGES/django.po,sha256=eGuZrP2iI5iAnvalNJ_aCKBbLtjWF-qFV_f8WJwFyYs,5645
+django/contrib/admindocs/locale/ar/LC_MESSAGES/django.mo,sha256=MwAJ0TMsgRN4wrwlhlw3gYCfZK5IKDzNPuvjfJS_Eug,7440
+django/contrib/admindocs/locale/ar/LC_MESSAGES/django.po,sha256=KSmZCjSEizBx5a6yN_u0FPqG5QoXsTV9gdJkqWC8xC8,8052
+django/contrib/admindocs/locale/ar_DZ/LC_MESSAGES/django.mo,sha256=lW-fKcGwnRtdpJLfVw9i1HiM25TctVK0oA0bGV7yAzU,7465
+django/contrib/admindocs/locale/ar_DZ/LC_MESSAGES/django.po,sha256=c8LOJTCkHd1objwj6Xqh0wF3LwkLJvWg9FIWSWWMI-I,7985
+django/contrib/admindocs/locale/ast/LC_MESSAGES/django.mo,sha256=d4u-2zZXnnueWm9CLSnt4TRWgZk2NMlrA6gaytJ2gdU,715
+django/contrib/admindocs/locale/ast/LC_MESSAGES/django.po,sha256=TUkc-Hm4h1kD0NKyndteW97jH6bWcJMFXUuw2Bd62qo,4578
+django/contrib/admindocs/locale/az/LC_MESSAGES/django.mo,sha256=tuOpw3_db7qJuYYBmlEsi-Zmp8gRVsuxGh23Cb_WQes,6629
+django/contrib/admindocs/locale/az/LC_MESSAGES/django.po,sha256=ayt0aT7rdSJpgu88WSvciCREVhBadKDjQSHgMYwyI-g,7205
+django/contrib/admindocs/locale/be/LC_MESSAGES/django.mo,sha256=VZl0yvgbo0jwQpf-s472jagbUj83A3twnxddQGwGW5c,8163
+django/contrib/admindocs/locale/be/LC_MESSAGES/django.po,sha256=Z8ZtS_t5Tc7iy1p4TTrsKZqiMJl94f1jiTWuv1sep3A,8728
+django/contrib/admindocs/locale/bg/LC_MESSAGES/django.mo,sha256=bNNoMFB0_P1qut4txQqHiXGxJa8-sjIZA8bb_jPaaHk,8242
+django/contrib/admindocs/locale/bg/LC_MESSAGES/django.po,sha256=nJMwR6R19pXmf4u6jBwe8Xn9fObSaAzulNeqsm8bszo,8989
+django/contrib/admindocs/locale/bn/LC_MESSAGES/django.mo,sha256=NOKVcE8id9G1OctSly4C5lm64CgEF8dohX-Pdyt4kCM,3794
+django/contrib/admindocs/locale/bn/LC_MESSAGES/django.po,sha256=6M7LjIEjvDTjyraxz70On_TIsgqJPLW7omQ0Fz_zyfQ,6266
+django/contrib/admindocs/locale/br/LC_MESSAGES/django.mo,sha256=UsPTado4ZNJM_arSMXyuBGsKN-bCHXQZdFbh0GB3dtg,1571
+django/contrib/admindocs/locale/br/LC_MESSAGES/django.po,sha256=SHOxPSgozJbOkm8u5LQJ9VmL58ZSBmlxfOVw1fAGl2s,5139
+django/contrib/admindocs/locale/bs/LC_MESSAGES/django.mo,sha256=clvhu0z3IF5Nt0tZ85hOt4M37pnGEWeIYumE20vLpsI,1730
+django/contrib/admindocs/locale/bs/LC_MESSAGES/django.po,sha256=1-OrVWFqLpeXQFfh7JNjJtvWjVww7iB2s96dcSgLy90,5042
+django/contrib/admindocs/locale/ca/LC_MESSAGES/django.mo,sha256=nI2ctIbZVrsaMbJQGIHQCjwqJNTnH3DKxwI2dWR6G_w,6650
+django/contrib/admindocs/locale/ca/LC_MESSAGES/django.po,sha256=hPjkw0bkoUu-yKU8XYE3ji0NG4z5cE1LGonYPJXeze4,7396
+django/contrib/admindocs/locale/ckb/LC_MESSAGES/django.mo,sha256=QisqerDkDuKrctJ10CspniXNDqBnCI2Wo-CKZUZtsCY,8154
+django/contrib/admindocs/locale/ckb/LC_MESSAGES/django.po,sha256=0adJyGnFg3qoD11s9gZbJlY8O0Dd1mpKF8OLQAkHZHE,8727
+django/contrib/admindocs/locale/cs/LC_MESSAGES/django.mo,sha256=dJ-3fDenE42f6XZFc-yrfWL1pEAmSGt2j1eWAyy-5OQ,6619
+django/contrib/admindocs/locale/cs/LC_MESSAGES/django.po,sha256=uU4n9PsiI96O0UpJzL-inVzB1Kx7OB_SbLkjrFLuyVA,7227
+django/contrib/admindocs/locale/cy/LC_MESSAGES/django.mo,sha256=sYeCCq0CMrFWjT6rKtmFrpC09OEFpYLSI3vu9WtpVTY,5401
+django/contrib/admindocs/locale/cy/LC_MESSAGES/django.po,sha256=GhdikiXtx8Aea459uifQtBjHuTlyUeiKu0_rR_mDKyg,6512
+django/contrib/admindocs/locale/da/LC_MESSAGES/django.mo,sha256=vmsIZeMIVpLkSdJNS0G6alAmBBEtLDBLnOd-P3dSOAs,6446
+django/contrib/admindocs/locale/da/LC_MESSAGES/django.po,sha256=bSoTGPcE7MdRfAtBybZT9jsuww2VDH9t5CssaxSs_GU,7148
+django/contrib/admindocs/locale/de/LC_MESSAGES/django.mo,sha256=ReSz0aH1TKT6AtP13lWoONnwNM2OGo4jK9fXJlo75Hc,6567
+django/contrib/admindocs/locale/de/LC_MESSAGES/django.po,sha256=tVkDIPF_wYb_KaJ7PF9cZyBJoYu6RpznoM9JIk3RYN4,7180
+django/contrib/admindocs/locale/dsb/LC_MESSAGES/django.mo,sha256=K_QuInKk1HrrzQivwJcs_2lc1HreFj7_R7qQh3qMTPY,6807
+django/contrib/admindocs/locale/dsb/LC_MESSAGES/django.po,sha256=flF1D0gfTScuC_RddC9njLe6RrnqnksiRxwODVA9Vqw,7332
+django/contrib/admindocs/locale/el/LC_MESSAGES/django.mo,sha256=1x0sTZwWbGEURyRaSn4ONvTPXHwm7XemNlcun9Nm1QI,8581
+django/contrib/admindocs/locale/el/LC_MESSAGES/django.po,sha256=GebfJfW0QPzAQyBKz1Km9a3saCpAWT7d_Qe2nCBvGn4,9320
+django/contrib/admindocs/locale/en/LC_MESSAGES/django.mo,sha256=U0OV81NfbuNL9ctF-gbGUG5al1StqN-daB-F-gFBFC8,356
+django/contrib/admindocs/locale/en/LC_MESSAGES/django.po,sha256=pEypE71l-Ude2e3XVf0tkBpGx6BSYNqBagWnSYmEbxI,10688
+django/contrib/admindocs/locale/en_AU/LC_MESSAGES/django.mo,sha256=BQ54LF9Tx88m-pG_QVz_nm_vqvoy6pVJzL8urSO4l1Q,486
+django/contrib/admindocs/locale/en_AU/LC_MESSAGES/django.po,sha256=ho7s1uKEs9FGooyZBurvSjvFz1gDSX6R4G2ZKpF1c9Q,5070
+django/contrib/admindocs/locale/en_GB/LC_MESSAGES/django.mo,sha256=xKGbswq1kuWCbn4zCgUQUb58fEGlICIOr00oSdCgtU4,1821
+django/contrib/admindocs/locale/en_GB/LC_MESSAGES/django.po,sha256=No09XHkzYVFBgZqo7bPlJk6QD9heE0oaI3JmnrU_p24,4992
+django/contrib/admindocs/locale/eo/LC_MESSAGES/django.mo,sha256=114OOVg9hP0H0UU2aQngCm0wE7zEEAp7QFMupOuWCfQ,6071
+django/contrib/admindocs/locale/eo/LC_MESSAGES/django.po,sha256=h8P3lmvBaJ8J2xiytReJvI8iGK0gCe-LPK27kWxSNKI,6799
+django/contrib/admindocs/locale/es/LC_MESSAGES/django.mo,sha256=wVt9I5M6DGKZFhPhYuS2yKRGVzSROthx98TFiJvJA80,6682
+django/contrib/admindocs/locale/es/LC_MESSAGES/django.po,sha256=F72OFWbIZXvopNMzy7eIibNKc5EM0jsYgbN4PobD6tc,7602
+django/contrib/admindocs/locale/es_AR/LC_MESSAGES/django.mo,sha256=mZ7OKAmlj2_FOabKsEiWycxiKLSLCPFldponKNxINjs,6658
+django/contrib/admindocs/locale/es_AR/LC_MESSAGES/django.po,sha256=deaOq0YMCb1B1PHWYUbgUrQsyXFutn4wQ2BAXiyzugA,7257
+django/contrib/admindocs/locale/es_CO/LC_MESSAGES/django.mo,sha256=KFjQyWtSxH_kTdSJ-kNUDAFt3qVZI_3Tlpg2pdkvJfs,6476
+django/contrib/admindocs/locale/es_CO/LC_MESSAGES/django.po,sha256=dwrTVjYmueLiVPu2yiJ_fkFF8ZeRntABoVND5H2WIRI,7038
+django/contrib/admindocs/locale/es_MX/LC_MESSAGES/django.mo,sha256=3hZiFFVO8J9cC624LUt4lBweqmpgdksRtvt2TLq5Jqs,1853
+django/contrib/admindocs/locale/es_MX/LC_MESSAGES/django.po,sha256=gNmx1QTbmyMxP3ftGXGWJH_sVGThiSe_VNKkd7M9jOY,5043
+django/contrib/admindocs/locale/es_VE/LC_MESSAGES/django.mo,sha256=sMwJ7t5GqPF496w-PvBYUneZ9uSwmi5jP-sWulhc6BM,6663
+django/contrib/admindocs/locale/es_VE/LC_MESSAGES/django.po,sha256=ZOcE0f95Q6uD9SelK6bQlKtS2c3JX9QxNYCihPdlM5o,7201
+django/contrib/admindocs/locale/et/LC_MESSAGES/django.mo,sha256=JQHVKehV0sxNaBQRqbsN-Of22CMV70bQ9TUId3QDudY,6381
+django/contrib/admindocs/locale/et/LC_MESSAGES/django.po,sha256=qrS3cPEy16hEi1857jvqsmr9zHF9_AkkJUw4mKimg98,7096
+django/contrib/admindocs/locale/eu/LC_MESSAGES/django.mo,sha256=WHgK7vGaqjO4MwjBkWz2Y3ABPXCqfnwSGelazRhOiuo,6479
+django/contrib/admindocs/locale/eu/LC_MESSAGES/django.po,sha256=718XgJN7UQcHgE9ku0VyFp7Frs-cvmCTO1o-xS5kpqc,7099
+django/contrib/admindocs/locale/fa/LC_MESSAGES/django.mo,sha256=Qrkrb_CHPGymnXBoBq5oeTs4W54R6nLz5hLIWH63EHM,7499
+django/contrib/admindocs/locale/fa/LC_MESSAGES/django.po,sha256=L-rxiKqUmlQgrPTLQRaS50woZWB9JuEamJpgDpLvIXw,8251
+django/contrib/admindocs/locale/fi/LC_MESSAGES/django.mo,sha256=SzuPvgeiaBwABvkJbOoTHsbP7juAuyyMWAjENr50gYk,6397
+django/contrib/admindocs/locale/fi/LC_MESSAGES/django.po,sha256=jn4ZMVQ_Gh6I-YLSmBhlyTn5ICP5o3oj7u0VKpV2hnI,6972
+django/contrib/admindocs/locale/fr/LC_MESSAGES/django.mo,sha256=dD92eLXIDeI-a_BrxX1G49qRwLS4Vt56bTP9cha5MeE,6755
+django/contrib/admindocs/locale/fr/LC_MESSAGES/django.po,sha256=hiUeHTul4Z3JWmkClGZmD5Xn4a1Tj1A5OLRfKU5Zdmo,7329
+django/contrib/admindocs/locale/fy/LC_MESSAGES/django.mo,sha256=_xVO-FkPPoTla_R0CzktpRuafD9fuIP_G5N-Q08PxNg,476
+django/contrib/admindocs/locale/fy/LC_MESSAGES/django.po,sha256=b3CRH9bSUl_jjb9s51RlvFXp3bmsmuxTfN_MTmIIVNA,5060
+django/contrib/admindocs/locale/ga/LC_MESSAGES/django.mo,sha256=2kOgyNWHQaNq-cwsh5YmmqWa8z9WN7HHUEEW85hek4A,6786
+django/contrib/admindocs/locale/ga/LC_MESSAGES/django.po,sha256=PEuuqMz1-aW96Lcy72PsVormIrN522Qd6RxSM1VVMTk,7424
+django/contrib/admindocs/locale/gd/LC_MESSAGES/django.mo,sha256=k5-Ov9BkwYHZ_IvIxQdHKVBdOUN7kWGft1l7w5Scd5o,6941
+django/contrib/admindocs/locale/gd/LC_MESSAGES/django.po,sha256=FyvfRNkSrEZo8x1didB6nFHYD54lZfKSoAGcwJ2wLso,7478
+django/contrib/admindocs/locale/gl/LC_MESSAGES/django.mo,sha256=15OYKk17Dlz74RReFrCHP3eHmaxP8VeRE2ylDOeUY8w,6564
+django/contrib/admindocs/locale/gl/LC_MESSAGES/django.po,sha256=mvQmxR4LwDLbCWyIU-xmJEw6oeSY3KFWC1nqnbnuDyc,7197
+django/contrib/admindocs/locale/he/LC_MESSAGES/django.mo,sha256=1_aXtUXx-NISzJmlfprUZ5LieD9BwCcCUQ-DQ_YF-jk,6998
+django/contrib/admindocs/locale/he/LC_MESSAGES/django.po,sha256=aONIl7C_5hgo0agjYleyZAkj4_VPkQVPT0R7wWPhJEs,7589
+django/contrib/admindocs/locale/hi/LC_MESSAGES/django.mo,sha256=sZhObIxqrmFu5Y-ZOQC0JGM3ly4IVFr02yqOOOHnDag,2297
+django/contrib/admindocs/locale/hi/LC_MESSAGES/django.po,sha256=X6UfEc6q0BeaxVP_C4priFt8irhh-YGOUUzNQyVnEYY,5506
+django/contrib/admindocs/locale/hr/LC_MESSAGES/django.mo,sha256=fMsayjODNoCdbpBAk9GHtIUaGJGFz4sD9qYrguj-BQA,2550
+django/contrib/admindocs/locale/hr/LC_MESSAGES/django.po,sha256=qi2IB-fBkGovlEz2JAQRUNE54MDdf5gjNJWXM-dIG1s,5403
+django/contrib/admindocs/locale/hsb/LC_MESSAGES/django.mo,sha256=4CbZ95VHJUg3UNt-FdzPtUtHJLralgnhadz-evigiFA,6770
+django/contrib/admindocs/locale/hsb/LC_MESSAGES/django.po,sha256=ty8zWmqY160ZpSbt1-_2iY2M4RIL7ksh5-ggQGc_TO8,7298
+django/contrib/admindocs/locale/hu/LC_MESSAGES/django.mo,sha256=ATEt9wE2VNQO_NMcwepgxpS7mYXdVD5OySFFPWpnBUA,6634
+django/contrib/admindocs/locale/hu/LC_MESSAGES/django.po,sha256=3XKQrlonyLXXpU8xeS1OLXcKmmE2hiBoMJN-QZ3k82g,7270
+django/contrib/admindocs/locale/ia/LC_MESSAGES/django.mo,sha256=KklX2loobVtA6PqHOZHwF1_A9YeVGlqORinHW09iupI,1860
+django/contrib/admindocs/locale/ia/LC_MESSAGES/django.po,sha256=Z7btOCeARREgdH4CIJlVob_f89r2M9j55IDtTLtgWJU,5028
+django/contrib/admindocs/locale/id/LC_MESSAGES/django.mo,sha256=2HZrdwFeJV4Xk2HIKsxp_rDyBrmxCuRb92HtFtW8MxE,6343
+django/contrib/admindocs/locale/id/LC_MESSAGES/django.po,sha256=O01yt7iDXvEwkebUxUlk-vCrLR26ebuqI51x64uqFl4,7041
+django/contrib/admindocs/locale/io/LC_MESSAGES/django.mo,sha256=5t9Vurrh6hGqKohwsZIoveGeYCsUvRBRMz9M7k9XYY8,464
+django/contrib/admindocs/locale/io/LC_MESSAGES/django.po,sha256=SVZZEmaS1WbXFRlLLGg5bzUe09pXR23TeJtHUbhyl0w,5048
+django/contrib/admindocs/locale/is/LC_MESSAGES/django.mo,sha256=pEr-_MJi4D-WpNyFaQe3tVKVLq_9V-a4eIF18B3Qyko,1828
+django/contrib/admindocs/locale/is/LC_MESSAGES/django.po,sha256=-mD5fFnL6xUqeW4MITzm8Lvx6KXq4C9DGsEM9kDluZ8,5045
+django/contrib/admindocs/locale/it/LC_MESSAGES/django.mo,sha256=AzCkkJ8x-V38XSOdOG2kMSUujcn0mD8TIvdAeNT6Qcw,6453
+django/contrib/admindocs/locale/it/LC_MESSAGES/django.po,sha256=SUsGtCKkCVoj5jaM6z_-JQR8kv8W4Wv_OE26hpOb96s,7171
+django/contrib/admindocs/locale/ja/LC_MESSAGES/django.mo,sha256=KoPwCbH9VlKoP_7zTEjOzPsHZ7jVWl2grQRckQmshw4,7358
+django/contrib/admindocs/locale/ja/LC_MESSAGES/django.po,sha256=6ZTqM2qfBS_j5aLH52yJPYW4e4X5MqiQFdqV1fmEQGg,8047
+django/contrib/admindocs/locale/ka/LC_MESSAGES/django.mo,sha256=w2cHLI1O3pVt43H-h71cnNcjNNvDC8y9uMYxZ_XDBtg,4446
+django/contrib/admindocs/locale/ka/LC_MESSAGES/django.po,sha256=omKVSzNA3evF5Mk_Ud6utHql-Do7s9xDzCVQGQA0pSg,6800
+django/contrib/admindocs/locale/kab/LC_MESSAGES/django.mo,sha256=XTuWnZOdXhCFXEW4Hp0zFtUtAF0wJHaFpQqoDUTWYGw,1289
+django/contrib/admindocs/locale/kab/LC_MESSAGES/django.po,sha256=lQWewMZncWUvGhpkgU_rtwWHcgAyvhIkrDfjFu1l-d8,4716
+django/contrib/admindocs/locale/kk/LC_MESSAGES/django.mo,sha256=mmhLzn9lo4ff_LmlIW3zZuhE77LoSUfpaMMMi3oyi38,1587
+django/contrib/admindocs/locale/kk/LC_MESSAGES/django.po,sha256=72sxLw-QDSFnsH8kuzeQcV5jx7Hf1xisBmxI8XqSCYw,5090
+django/contrib/admindocs/locale/km/LC_MESSAGES/django.mo,sha256=Fff1K0qzialXE_tLiGM_iO5kh8eAmQhPZ0h-eB9iNOU,1476
+django/contrib/admindocs/locale/km/LC_MESSAGES/django.po,sha256=E_CaaYc4GqOPgPh2t7iuo0Uf4HSQQFWAoxSOCG-uEGU,4998
+django/contrib/admindocs/locale/kn/LC_MESSAGES/django.mo,sha256=lisxE1zzW-Spdm7hIzXxDAfS7bM-RdrAG_mQVwz9WMU,1656
+django/contrib/admindocs/locale/kn/LC_MESSAGES/django.po,sha256=u6JnB-mYoYWvLl-2pzKNfeNlT1s6A2I3lRi947R_0yA,5184
+django/contrib/admindocs/locale/ko/LC_MESSAGES/django.mo,sha256=nVBVLfXUlGQCeF2foSQ2kksBmR3KbweXdbD6Kyq-PrU,6563
+django/contrib/admindocs/locale/ko/LC_MESSAGES/django.po,sha256=y2YjuXM3p0haXrGpxRtm6I84o75TQaMeT4xbHCg7zOM,7342
+django/contrib/admindocs/locale/ky/LC_MESSAGES/django.mo,sha256=HEJo4CLoIOWpK-MPcTqLhbNMA8Mt3totYN1YbJ_SNn4,7977
+django/contrib/admindocs/locale/ky/LC_MESSAGES/django.po,sha256=VaSXjz8Qlr2EI8f12gtziN7yA7IWsaVoEzL3G6dERXs,8553
+django/contrib/admindocs/locale/lb/LC_MESSAGES/django.mo,sha256=N0hKFuAdDIq5clRKZirGh4_YDLsxi1PSX3DVe_CZe4k,474
+django/contrib/admindocs/locale/lb/LC_MESSAGES/django.po,sha256=B46-wRHMKUMcbvMCdojOCxqIVL5qVEh4Czo20Qgz6oU,5058
+django/contrib/admindocs/locale/lt/LC_MESSAGES/django.mo,sha256=KOnpaVeomKJIHcVLrkeRVnaqQHzFdYM_wXZbbqxWs4g,6741
+django/contrib/admindocs/locale/lt/LC_MESSAGES/django.po,sha256=-uzCS8193VCZPyhO8VOi11HijtBG9CWVKStFBZSXfI4,7444
+django/contrib/admindocs/locale/lv/LC_MESSAGES/django.mo,sha256=5PAE_peuqlRcc45pm6RsSqnBpG-o8OZpfdt2aasYM2w,6449
+django/contrib/admindocs/locale/lv/LC_MESSAGES/django.po,sha256=_mFvAQT1ZVBuDhnWgKY3bVQUWA8DoEf-HFAEsMfkGuU,7085
+django/contrib/admindocs/locale/mk/LC_MESSAGES/django.mo,sha256=8H9IpRASM7O2-Ql1doVgM9c4ybZ2KcfnJr12PpprgP4,8290
+django/contrib/admindocs/locale/mk/LC_MESSAGES/django.po,sha256=Uew7tEljjgmslgfYJOP9JF9ELp6NbhkZG_v50CZgBg8,8929
+django/contrib/admindocs/locale/ml/LC_MESSAGES/django.mo,sha256=bm4tYwcaT8XyPcEW1PNZUqHJIds9CAq3qX_T1-iD4k4,6865
+django/contrib/admindocs/locale/ml/LC_MESSAGES/django.po,sha256=yNINX5M7JMTbYnFqQGetKGIXqOjGJtbN2DmIW9BKQ_c,8811
+django/contrib/admindocs/locale/mn/LC_MESSAGES/django.mo,sha256=MyPphoXZCl6gPq74TyPBAvbc-aUQdUx5t3cdnj3vn_A,7108
+django/contrib/admindocs/locale/mn/LC_MESSAGES/django.po,sha256=h4GNr_G_lqLCiypMQNaw3ItF8RnHzdLhcrKs6vQVPfE,8058
+django/contrib/admindocs/locale/mr/LC_MESSAGES/django.mo,sha256=LDGC7YRyVBU50W-iH0MuESunlRXrNfNjwjXRCBdfFVg,468
+django/contrib/admindocs/locale/mr/LC_MESSAGES/django.po,sha256=5cUgPltXyS2Z0kIKF5ER8f5DuBhwmAINJQyfHj652d0,5052
+django/contrib/admindocs/locale/ms/LC_MESSAGES/django.mo,sha256=vgoSQlIQeFWaVfJv3YK9_0FOywWwxLhWGICKBdxcqJY,6557
+django/contrib/admindocs/locale/ms/LC_MESSAGES/django.po,sha256=Qy_NjgqwEwLGk4oaHB4Np3dVbPeCK2URdI73S73IZLE,7044
+django/contrib/admindocs/locale/my/LC_MESSAGES/django.mo,sha256=AsdUmou0FjCiML3QOeXMdbHiaSt2GdGMcEKRJFonLOQ,1721
+django/contrib/admindocs/locale/my/LC_MESSAGES/django.po,sha256=c75V-PprKrWzgrHbfrZOpm00U_zZRzxAUr2U_j8MF4w,5189
+django/contrib/admindocs/locale/nb/LC_MESSAGES/django.mo,sha256=qlzN0-deW2xekojbHi2w6mYKeBe1Cf1nm8Z5FVrmYtA,6308
+django/contrib/admindocs/locale/nb/LC_MESSAGES/django.po,sha256=a60vtwHJXhjbRAtUIlO0w3XfQcQ0ljwmwFG3WbQ7PNo,6875
+django/contrib/admindocs/locale/ne/LC_MESSAGES/django.mo,sha256=fWPAUZOX9qrDIxGhVVouJCVDWEQLybZ129wGYymuS-c,2571
+django/contrib/admindocs/locale/ne/LC_MESSAGES/django.po,sha256=wb8pCm141YfGSHVW84FnAvsKt5KnKvzNyzGcPr-Wots,5802
+django/contrib/admindocs/locale/nl/LC_MESSAGES/django.mo,sha256=1-s_SdVm3kci2yLQhv1q6kt7zF5EdbaneGAr6PJ7dQU,6498
+django/contrib/admindocs/locale/nl/LC_MESSAGES/django.po,sha256=7s4RysNYRSisywqqZOrRR0il530jRlbEFP3kr4Hq2PA,7277
+django/contrib/admindocs/locale/nn/LC_MESSAGES/django.mo,sha256=tIOU1WrHkAfxD6JBpdakiMi6pVzzvIg0jun6gii-D08,6299
+django/contrib/admindocs/locale/nn/LC_MESSAGES/django.po,sha256=oekYY3xjjM2sPnHv_ZXxAti1ySPF-HxLrvLLk7Izibk,6824
+django/contrib/admindocs/locale/os/LC_MESSAGES/django.mo,sha256=zSQBgSj4jSu5Km0itNgDtbkb1SbxzRvQeZ5M9sXHI8k,2044
+django/contrib/admindocs/locale/os/LC_MESSAGES/django.po,sha256=hZlMmmqfbGmoiElGbJg7Fp791ZuOpRFrSu09xBXt6z4,5215
+django/contrib/admindocs/locale/pa/LC_MESSAGES/django.mo,sha256=yFeO0eZIksXeDhAl3CrnkL1CF7PHz1PII2kIxGA0opQ,1275
+django/contrib/admindocs/locale/pa/LC_MESSAGES/django.po,sha256=DA5LFFLOXHIJIqrrnj9k_rqL-wr63RYX_i-IJFhBuc0,4900
+django/contrib/admindocs/locale/pl/LC_MESSAGES/django.mo,sha256=DHxRNP6YK8qocDqSd2DZg7n-wPp2hJSbjNBLFti7U8o,6633
+django/contrib/admindocs/locale/pl/LC_MESSAGES/django.po,sha256=mRjleE2-9r9TfseHWeyjvRwzBZP_t2LMvihq8n_baU8,7575
+django/contrib/admindocs/locale/pt/LC_MESSAGES/django.mo,sha256=WcXhSlbGdJgVMvydkPYYee7iOQ9SYdrLkquzgIBhVWU,6566
+django/contrib/admindocs/locale/pt/LC_MESSAGES/django.po,sha256=J98Hxa-ApyzRevBwcAldK9bRYbkn5DFw3Z5P7SMEwx0,7191
+django/contrib/admindocs/locale/pt_BR/LC_MESSAGES/django.mo,sha256=L8t589rbg4vs4HArLpgburmMufZ6BTuwxxkv1QUetBA,6590
+django/contrib/admindocs/locale/pt_BR/LC_MESSAGES/django.po,sha256=EG4xELZ8emUIWB78cw8gFeiqTiN9UdAuEaXHyPyNtIE,7538
+django/contrib/admindocs/locale/ro/LC_MESSAGES/django.mo,sha256=9K8Sapn6sOg1wtt2mxn7u0cnqPjEHH70qjwM-XMPzNA,6755
+django/contrib/admindocs/locale/ro/LC_MESSAGES/django.po,sha256=b4AsPjWBYHQeThAtLP_TH4pJitwidtoPNkJ7dowUuRg,7476
+django/contrib/admindocs/locale/ru/LC_MESSAGES/django.mo,sha256=9pIPv2D0rq29vrBNWZENM_SOdNpaPidxmgT20hWtBis,8434
+django/contrib/admindocs/locale/ru/LC_MESSAGES/django.po,sha256=BTlxkS4C0DdfC9QJCegXwi5ejfG9pMsAdfy6UJzec3s,9175
+django/contrib/admindocs/locale/sk/LC_MESSAGES/django.mo,sha256=QR3Yvh6y6qJLr4umB0_HcVRIrqD-o1z3rnDv38hLkCQ,6670
+django/contrib/admindocs/locale/sk/LC_MESSAGES/django.po,sha256=QPTSNtN-7QBUX7G7d67zs5kPHS3tXoi7WCy_y1nhPfQ,7375
+django/contrib/admindocs/locale/sl/LC_MESSAGES/django.mo,sha256=FMg_s9ZpeRD42OsSF9bpe8pRQ7wP7-a9WWnaVliqXpU,6508
+django/contrib/admindocs/locale/sl/LC_MESSAGES/django.po,sha256=JWO_WZAwBpXw-4FoB7rkWXGhi9aEVq1tH2fOC69rcgg,7105
+django/contrib/admindocs/locale/sq/LC_MESSAGES/django.mo,sha256=XvNDzCc3-Hh5Pz7SHhG8zCT_3dtqGzBLkDqhim4jJpc,6551
+django/contrib/admindocs/locale/sq/LC_MESSAGES/django.po,sha256=0GZvLpxbuYln7GrTsFyzgjIleSw6Z9IRSPgAWWdx6Eo,7165
+django/contrib/admindocs/locale/sr/LC_MESSAGES/django.mo,sha256=wQbXQFTFYjeJvUQ4twmF_O2SYkYkigJ1LQj8xdC5Yu4,8154
+django/contrib/admindocs/locale/sr/LC_MESSAGES/django.po,sha256=KT72y37njw6vgAfXOoY41w_Myv5yrzFC1BQVAd_V79s,8778
+django/contrib/admindocs/locale/sr_Latn/LC_MESSAGES/django.mo,sha256=3ytn9SeRgnbIC8YjYTcgdNKgNrizzDwwmLQhVwjvNCY,6542
+django/contrib/admindocs/locale/sr_Latn/LC_MESSAGES/django.po,sha256=2ojglF82ZPFxdnlICYkwkN_EOLli8QRSCPTbILxug9g,13364
+django/contrib/admindocs/locale/sv/LC_MESSAGES/django.mo,sha256=5i9qxo9V7TghSIpKCOw5PpITYYHMP-0NhFivwc-w0yw,6394
+django/contrib/admindocs/locale/sv/LC_MESSAGES/django.po,sha256=WhABV5B-rhBly6ueJPOMsIBjSiw7i1yCZUQsXWE_jV4,7137
+django/contrib/admindocs/locale/sw/LC_MESSAGES/django.mo,sha256=pyJfGL7UdPrJAVlCB3YimXxTjTfEkoZQWX-CSpDkcWc,1808
+django/contrib/admindocs/locale/sw/LC_MESSAGES/django.po,sha256=SIywrLX1UGx4OiPxoxUYelmQ1YaY2LMa3dxynGQpHp8,4929
+django/contrib/admindocs/locale/ta/LC_MESSAGES/django.mo,sha256=8SjQ9eGGyaZGhkuDoZTdtYKuqcVyEtWrJuSabvNRUVM,1675
+django/contrib/admindocs/locale/ta/LC_MESSAGES/django.po,sha256=k593yzVqpSQOsdpuF-rdsSLwKQU8S_QFMRpZXww__1A,5194
+django/contrib/admindocs/locale/te/LC_MESSAGES/django.mo,sha256=eAzNpYRy_G1erCcKDAMnJC4809ITRHvJjO3vpyAC_mk,1684
+django/contrib/admindocs/locale/te/LC_MESSAGES/django.po,sha256=oDg_J8JxepFKIe5m6lDKVC4YWQ_gDLibgNyQ3508VOM,5204
+django/contrib/admindocs/locale/tg/LC_MESSAGES/django.mo,sha256=jSMmwS6F_ChDAZDyTZxRa3YuxkXWlO-M16osP2NLRc0,7731
+django/contrib/admindocs/locale/tg/LC_MESSAGES/django.po,sha256=mewOHgRsFydk0d5IY3jy3rOWa6uHdatlSIvFNZFONsc,8441
+django/contrib/admindocs/locale/th/LC_MESSAGES/django.mo,sha256=bHK49r45Q1nX4qv0a0jtDja9swKbDHHJVLa3gM13Cb4,2167
+django/contrib/admindocs/locale/th/LC_MESSAGES/django.po,sha256=_GMgPrD8Zs0lPKQOMlBmVu1I59yXSV42kfkrHzeiehY,5372
+django/contrib/admindocs/locale/tr/LC_MESSAGES/django.mo,sha256=L1iBsNGqqfdNkZZmvnnBB-HxogAgngwhanY1FYefveE,6661
+django/contrib/admindocs/locale/tr/LC_MESSAGES/django.po,sha256=D4vmznsY4icyKLXQUgAL4WZL5TOUZYVUSCJ4cvZuFg8,7311
+django/contrib/admindocs/locale/tt/LC_MESSAGES/django.mo,sha256=pQmAQOPbrBVzBqtoQ0dsFWFwC6LxA5mQZ9QPqL6pSFw,1869
+django/contrib/admindocs/locale/tt/LC_MESSAGES/django.po,sha256=NCLv7sSwvEficUOSoMJlHGqjgjYvrvm2V3j1Gkviw80,5181
+django/contrib/admindocs/locale/udm/LC_MESSAGES/django.mo,sha256=hwDLYgadsKrQEPi9HiuMWF6jiiYUSy4y-7PVNJMaNpY,618
+django/contrib/admindocs/locale/udm/LC_MESSAGES/django.po,sha256=29fpfn4p8KxxrBdg4QB0GW_l8genZVV0kYi50zO-qKs,5099
+django/contrib/admindocs/locale/ug/LC_MESSAGES/django.mo,sha256=OIyPz5i48Ab2CVmCe71agW8qMsYMTwTG2E7rJft7P5k,7867
+django/contrib/admindocs/locale/ug/LC_MESSAGES/django.po,sha256=GM6ypRwZ6d6VXM0XVvg9p_334pxhex1yd5-HS8Z1z9U,8380
+django/contrib/admindocs/locale/uk/LC_MESSAGES/django.mo,sha256=G-3yCDj2jK7ZTu80YXGJ_ZR1E7FejbLxTFe866G4Pr0,8468
+django/contrib/admindocs/locale/uk/LC_MESSAGES/django.po,sha256=bbWzP-gpbslzbTBc_AO7WBNmtr3CkLOwkSJHI0Z_dTA,9330
+django/contrib/admindocs/locale/ur/LC_MESSAGES/django.mo,sha256=VNg9o_7M0Z2LC0n3_-iwF3zYmncRJHaFqqpxuPmMq84,1836
+django/contrib/admindocs/locale/ur/LC_MESSAGES/django.po,sha256=QTg85c4Z13hMN_PnhjaLX3wx6TU4SH4hPTzNBfNVaMU,5148
+django/contrib/admindocs/locale/vi/LC_MESSAGES/django.mo,sha256=F6dyo00yeyUND_w1Ocm9SL_MUdXb60QQpmAQPto53IU,1306
+django/contrib/admindocs/locale/vi/LC_MESSAGES/django.po,sha256=JrVKjT848Y1cS4tpH-eRivFNwM-cUs886UEhY2FkTPw,4836
+django/contrib/admindocs/locale/zh_Hans/LC_MESSAGES/django.mo,sha256=ngPlxN85wGOMKoo3OK3wUQeikoaxPKqAIsgw2_0ovN4,6075
+django/contrib/admindocs/locale/zh_Hans/LC_MESSAGES/django.po,sha256=TNdJGJCAi0OijBN6w23SwKieZqNqkgNt2qdlPfY-r20,6823
+django/contrib/admindocs/locale/zh_Hant/LC_MESSAGES/django.mo,sha256=Tx2MdoDy5aGjAGnDhYrV6mHN-inyqa3mA2zDAYPsQc4,6016
+django/contrib/admindocs/locale/zh_Hant/LC_MESSAGES/django.po,sha256=vhYxKhDRm6BkUKkLFetq1zDZ1-08Xe1xVnbUD0ABQuc,6734
+django/contrib/admindocs/middleware.py,sha256=owqLbigBtxKmhPQmz767KOAkN3nKRIJrwZAUuHRIAQM,1329
+django/contrib/admindocs/templates/admin_doc/bookmarklets.html,sha256=fSQP3eErm6R8yD7c8-KVilViI0vww6dqwkLwaAjgCaY,1282
+django/contrib/admindocs/templates/admin_doc/index.html,sha256=6bmIkahIH8CWMhGEytTHUZ7DtrDmcqhomJe48KbzvZY,1369
+django/contrib/admindocs/templates/admin_doc/missing_docutils.html,sha256=sx3z874_SIWPjKndIzfwYl8bQzEpTYMckA11RFFbqRI,788
+django/contrib/admindocs/templates/admin_doc/model_detail.html,sha256=DM5mTGfs1lEKlclSKMldLDsOoyrqRavqkR57hNM-cKE,1922
+django/contrib/admindocs/templates/admin_doc/model_index.html,sha256=sgwiE4Xxz7kcbk_UhHxgxLXyBh8SMHgHHvBucby3pPc,1358
+django/contrib/admindocs/templates/admin_doc/template_detail.html,sha256=sApk1HNa-n41lMIxRZHGoft9S4PvYedDPTtvHWuSsSc,1035
+django/contrib/admindocs/templates/admin_doc/template_filter_index.html,sha256=U2HBVHXtgCqUp9hLuOMVqCxBbXyYMMgAORG8fziN7uc,1775
+django/contrib/admindocs/templates/admin_doc/template_tag_index.html,sha256=S4U-G05yi1YIlFEv-HG20bDiq4rhdiZCgebhVBzNzdY,1731
+django/contrib/admindocs/templates/admin_doc/view_detail.html,sha256=XmsemLe45BpHDKAroqH7dwlmI9npVu2DZGzELA7trgs,914
+django/contrib/admindocs/templates/admin_doc/view_index.html,sha256=ZLfmxMkVlPYETRFnjLmU3bagve4ZvY1Xzsya1Lntgkw,1734
+django/contrib/admindocs/urls.py,sha256=spPSD6wc_B9eABF4mEWIhPSZ3w6W4fM6ERGepo8NRtY,1309
+django/contrib/admindocs/utils.py,sha256=38lwFUI08_m5OK6d-EUzp90qxysM9Da7lAn-rwcSnwI,7554
+django/contrib/admindocs/views.py,sha256=wziiyS5ZKAt2iLnhlBtzQbHheq4zmJqBl7B0YCoSAS8,18858
+django/contrib/auth/__init__.py,sha256=gq2Ba2T4Z5S7-_Vbo_7GVZ6CZAqawLbuUAMB4y4emgk,9587
+django/contrib/auth/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/auth/__pycache__/admin.cpython-312.pyc,,
+django/contrib/auth/__pycache__/apps.cpython-312.pyc,,
+django/contrib/auth/__pycache__/backends.cpython-312.pyc,,
+django/contrib/auth/__pycache__/base_user.cpython-312.pyc,,
+django/contrib/auth/__pycache__/checks.cpython-312.pyc,,
+django/contrib/auth/__pycache__/context_processors.cpython-312.pyc,,
+django/contrib/auth/__pycache__/decorators.cpython-312.pyc,,
+django/contrib/auth/__pycache__/forms.cpython-312.pyc,,
+django/contrib/auth/__pycache__/hashers.cpython-312.pyc,,
+django/contrib/auth/__pycache__/middleware.cpython-312.pyc,,
+django/contrib/auth/__pycache__/mixins.cpython-312.pyc,,
+django/contrib/auth/__pycache__/models.cpython-312.pyc,,
+django/contrib/auth/__pycache__/password_validation.cpython-312.pyc,,
+django/contrib/auth/__pycache__/signals.cpython-312.pyc,,
+django/contrib/auth/__pycache__/tokens.cpython-312.pyc,,
+django/contrib/auth/__pycache__/urls.cpython-312.pyc,,
+django/contrib/auth/__pycache__/validators.cpython-312.pyc,,
+django/contrib/auth/__pycache__/views.cpython-312.pyc,,
+django/contrib/auth/admin.py,sha256=gFrEFlXoSPb276iNUcg73lr2oeTFjAj4bxE43JHWVak,10243
+django/contrib/auth/apps.py,sha256=qpjjFdMH0H3-ialZrRYQ5fnmfCuSh0RiD3bsKzzTEeY,1284
+django/contrib/auth/backends.py,sha256=CimJyPjL4y1hth8WLKg87kJE7WqZYrNRKIZ8qfeaDIM,8535
+django/contrib/auth/base_user.py,sha256=4rB47WSGO4S_W21Tva3JGRq_FYj_cel0Qqqeu5913P0,4919
+django/contrib/auth/checks.py,sha256=yXWvy6kUyj4WfDlkDBtybwEFKuqvNhT9rqHj4FCdTlA,9847
+django/contrib/auth/common-passwords.txt.gz,sha256=MrUGEpphkJZUW9O7s1yYu5g7PnYWd48T5BWySr3CO-c,82262
+django/contrib/auth/context_processors.py,sha256=8BbvdbTVPl8GVgB5-2LTzx6FrGsMzev-E7JMnUgr-rM,1911
+django/contrib/auth/decorators.py,sha256=thqEdZgHN6Sez-O9ki7hUaP839w0QGbpOftxnedTrnk,4800
+django/contrib/auth/forms.py,sha256=L05inb4uSHgqCxneQkLluwhDeCOd3EwGDlTH2s9su7w,20635
+django/contrib/auth/handlers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/auth/handlers/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/auth/handlers/__pycache__/modwsgi.cpython-312.pyc,,
+django/contrib/auth/handlers/modwsgi.py,sha256=bTXKVMezywsn1KA2MVyDWeHvTNa2KrwIxn2olH7o_5I,1248
+django/contrib/auth/hashers.py,sha256=6P2FN1q8DIJfO1yiGRVlI3WmrgXh6dYmrpvCoZ6E85s,23332
+django/contrib/auth/locale/af/LC_MESSAGES/django.mo,sha256=mVOEfY5dw97Eo1JuCOonKhU1p2Sfhi5QCPkvm_ExbOQ,7514
+django/contrib/auth/locale/af/LC_MESSAGES/django.po,sha256=twHhtsP_x0xV_NbCaTUqF4mBzODjmdjkrawlmn1qwbQ,7739
+django/contrib/auth/locale/ar/LC_MESSAGES/django.mo,sha256=7LhxFfL9y6RAfZ8PU-1lKI2V02LbHxXtB1UAf_vXpuc,10040
+django/contrib/auth/locale/ar/LC_MESSAGES/django.po,sha256=2QIaioY0RedAB0CFKVZLhGoCnhLzgUh84sAR7i6QUnQ,10520
+django/contrib/auth/locale/ar_DZ/LC_MESSAGES/django.mo,sha256=0UokSPc3WDs_0PozSalfBaq4JFYgF1Rt7b90CKvY5jE,10228
+django/contrib/auth/locale/ar_DZ/LC_MESSAGES/django.po,sha256=GDvm2m1U7NOY5l7FijKGR77DEZt6rYWoSPCxsY5BZ3Y,10574
+django/contrib/auth/locale/ast/LC_MESSAGES/django.mo,sha256=Pt3gYY3j8Eroo4lAEmf-LR6u9U56mpE3vqLhjR4Uq-o,2250
+django/contrib/auth/locale/ast/LC_MESSAGES/django.po,sha256=Kiq4s8d1HnYpo3DQGlgUl3bOkxmgGW8CvGp9AbryRk8,5440
+django/contrib/auth/locale/az/LC_MESSAGES/django.mo,sha256=lSvutBofai-DGk-5quHnAtUdvm8yMDODXE0mHRdXXG8,8758
+django/contrib/auth/locale/az/LC_MESSAGES/django.po,sha256=SCEXf1r7q8P0dXOM36RUM_vlxKzApsfHiN8U-IMUR_Q,9134
+django/contrib/auth/locale/be/LC_MESSAGES/django.mo,sha256=GiAmNOuVSc5mQ9ne8BGNz1BeK2WLZQPzIHTZsJZP6As,11469
+django/contrib/auth/locale/be/LC_MESSAGES/django.po,sha256=shpzgVhb1UC2uoq1IhlYRqm_b_YfGLXqdO-8pZVPBX0,11784
+django/contrib/auth/locale/bg/LC_MESSAGES/django.mo,sha256=qChURIcNm50ePM5nO-Rh44LO-f8ww7lUro0GQRXE_wY,10717
+django/contrib/auth/locale/bg/LC_MESSAGES/django.po,sha256=9Uo19-kzj6jTyvKGyWFk4KdqbXwZOvX4rucEJXRJFGE,11221
+django/contrib/auth/locale/bn/LC_MESSAGES/django.mo,sha256=cJSawQn3rNh2I57zK9vRi0r1xc598Wr26AyHh6D50ZQ,5455
+django/contrib/auth/locale/bn/LC_MESSAGES/django.po,sha256=5Vqd4n9ab98IMev4GHLxpO7f4r9nnhC3Nfx27HQNd8s,7671
+django/contrib/auth/locale/br/LC_MESSAGES/django.mo,sha256=nxLj88BBhT3Hudev1S_BRC8P6Jv7eoR8b6CHGt5eoPo,1436
+django/contrib/auth/locale/br/LC_MESSAGES/django.po,sha256=rFo68wfXMyju633KCAhg0Jcb3GVm3rk4opFQqI89d6Y,5433
+django/contrib/auth/locale/bs/LC_MESSAGES/django.mo,sha256=jDjP1qIs02k6RixY9xy3V7Cr6zi-henR8nDnhqNG18s,3146
+django/contrib/auth/locale/bs/LC_MESSAGES/django.po,sha256=NOICHHU8eFtltH0OBlnasz9TF0uZGZd3hMibRmn158E,5975
+django/contrib/auth/locale/ca/LC_MESSAGES/django.mo,sha256=lqiOLv_LZDLeXbJZYsrWRHzcnwd1vd00tW5Jrh-HHkY,7643
+django/contrib/auth/locale/ca/LC_MESSAGES/django.po,sha256=v-3t7bDTh1835nZnjYh3_HyN4yw4a1HyHpC3-jX79Z0,8216
+django/contrib/auth/locale/ckb/LC_MESSAGES/django.mo,sha256=JCxL4vCR76rQywGn0bbhs0DGltbj-DOF_GTjcWuk2n8,11066
+django/contrib/auth/locale/ckb/LC_MESSAGES/django.po,sha256=SdmYPkVor_sWdOnLkyclkaR52N1IiXUP-0i7xjZs2hk,11254
+django/contrib/auth/locale/cs/LC_MESSAGES/django.mo,sha256=BXWVPB6GeisxXPEq8Pn8wBw9ByZIW-JQAPomzzzx3vo,8888
+django/contrib/auth/locale/cs/LC_MESSAGES/django.po,sha256=Of36j3TXudwYp8to5RpuAoi-_zLcGHIRNkxcDG91AqA,9367
+django/contrib/auth/locale/cy/LC_MESSAGES/django.mo,sha256=lSfCwEVteW4PDaiGKPDxnSnlDUcGMkPfsxIluExZar0,4338
+django/contrib/auth/locale/cy/LC_MESSAGES/django.po,sha256=-LPAKGXNzB77lVHfCRmFlH3SUaLgOXk_YxfC0BomcEs,6353
+django/contrib/auth/locale/da/LC_MESSAGES/django.mo,sha256=VhiC9Xb7XETvGMN3aSnLOE2-VKMKrU3d_WMXjPrgAaE,8509
+django/contrib/auth/locale/da/LC_MESSAGES/django.po,sha256=AKKwK0cjG4SuQh5Rc1LU0b_rZnboXLHgvPreJv1NEVA,8979
+django/contrib/auth/locale/de/LC_MESSAGES/django.mo,sha256=nvwrbU-uvQonGW_UD5zVh7u70csi_5qCehsI-AlTRx4,7607
+django/contrib/auth/locale/de/LC_MESSAGES/django.po,sha256=MJGIuwfkwEs9oiktL4C2uB0XXG6gh2zCI_jr-DcH5Tk,8158
+django/contrib/auth/locale/dsb/LC_MESSAGES/django.mo,sha256=ogesq9DJTHrKXQu4r9oa0CDo7L3WBZLZOG9aXwX7-JQ,9303
+django/contrib/auth/locale/dsb/LC_MESSAGES/django.po,sha256=CmrZ132Xd77O05fxgwqfECh7Za73uHnjoh6z_0U-TBs,9598
+django/contrib/auth/locale/el/LC_MESSAGES/django.mo,sha256=KaP9RLYThwYWLBx0W90HI0zJZ09iNhZ3tk8UVF63n74,10072
+django/contrib/auth/locale/el/LC_MESSAGES/django.po,sha256=O5JsNCUNr1YcNNqMugoM5epN6nC5pgq3E6nKXDh3OY0,10795
+django/contrib/auth/locale/en/LC_MESSAGES/django.mo,sha256=U0OV81NfbuNL9ctF-gbGUG5al1StqN-daB-F-gFBFC8,356
+django/contrib/auth/locale/en/LC_MESSAGES/django.po,sha256=I3S-zHG_0-rk6CP7Qfv3wPX7U8zJCXfC6yGI_EeYAbY,9064
+django/contrib/auth/locale/en_AU/LC_MESSAGES/django.mo,sha256=7cPKOZX0ZmWCYU2ZwgCp8LwXj7FAdP3lMoI2u4nzgeU,7183
+django/contrib/auth/locale/en_AU/LC_MESSAGES/django.po,sha256=92Q42wfwKhGxDkomv8JlGBHVUdFIc_wvm_LUNBc9Q1k,7467
+django/contrib/auth/locale/en_GB/LC_MESSAGES/django.mo,sha256=p57gDaYVvgEk1x80Hq4Pn2SZbsp9ly3XrJ5Ttlt2yOE,3179
+django/contrib/auth/locale/en_GB/LC_MESSAGES/django.po,sha256=-yDflw5-81VOlyqkmLJN17FRuwDrhYXItFUJwx2aqpE,5787
+django/contrib/auth/locale/eo/LC_MESSAGES/django.mo,sha256=OCEu7qwKb20Cq2UO-dmHjNPXRfDTsQHp9DbyVXCxNMw,7421
+django/contrib/auth/locale/eo/LC_MESSAGES/django.po,sha256=wrvLqKIJycioUFAI7GkCRtDNZ9_OigG_Bf79Dmgpa7c,7868
+django/contrib/auth/locale/es/LC_MESSAGES/django.mo,sha256=c5Z43RTCGGNTYbYlkgLPLM669k5DfWGrqHWDhnB7Dy0,9100
+django/contrib/auth/locale/es/LC_MESSAGES/django.po,sha256=NbzqLfTGlDAQKs-_xBUijLliYyb9FgRA5z4wFnPuo94,9928
+django/contrib/auth/locale/es_AR/LC_MESSAGES/django.mo,sha256=1XY-cVhbpIxWOo3biI56d24QRRJEThPekbzeoz8qcw4,9235
+django/contrib/auth/locale/es_AR/LC_MESSAGES/django.po,sha256=g3YqB09gDHqvCyYhJlErpoOEpPpPzKkIVM_65PaJRWM,9490
+django/contrib/auth/locale/es_CO/LC_MESSAGES/django.mo,sha256=K5VaKTyeV_WoKsLR1x8ZG4VQmk3azj6ZM8Phqjs81So,6529
+django/contrib/auth/locale/es_CO/LC_MESSAGES/django.po,sha256=qJywTaYi7TmeMB1sjwsiwG8GXtxAOaOX0voj7lLVZRw,7703
+django/contrib/auth/locale/es_MX/LC_MESSAGES/django.mo,sha256=dCav1yN5q3bU4PvXZd_NxHQ8cZ9KqQCiNoe4Xi8seoY,7822
+django/contrib/auth/locale/es_MX/LC_MESSAGES/django.po,sha256=_4un21ALfFsFaqpLrkE2_I18iEfJlcAnd_X8YChfdWo,8210
+django/contrib/auth/locale/es_VE/LC_MESSAGES/django.mo,sha256=GwpZytNHtK7Y9dqQKDiVi4SfA1AtPlk824_k7awqrdI,7415
+django/contrib/auth/locale/es_VE/LC_MESSAGES/django.po,sha256=G3mSCo_XGRUfOAKUeP_UNfWVzDPpbQrVYQt8Hv3VZVM,7824
+django/contrib/auth/locale/et/LC_MESSAGES/django.mo,sha256=AeyT2OxqMVsE2qoQz_Q5GTdIIToKgkidn4KA3sTe66s,7216
+django/contrib/auth/locale/et/LC_MESSAGES/django.po,sha256=c9lhLx55iLurFJPybQyEqadVE2hfL_nIpDYazHAkkk4,8370
+django/contrib/auth/locale/eu/LC_MESSAGES/django.mo,sha256=aQfIMZ8FRzP-6OpZCpC2qrd4wbyWiapJOVIWlmyqde0,7181
+django/contrib/auth/locale/eu/LC_MESSAGES/django.po,sha256=AP53NIzFy-aCLnLds70LMg-XW7F_95VSD1ZWCedgkTI,7732
+django/contrib/auth/locale/fa/LC_MESSAGES/django.mo,sha256=yeA_5LAPu7OyQssunvUNlH07bPVCyGLpnvijNenrtHQ,8979
+django/contrib/auth/locale/fa/LC_MESSAGES/django.po,sha256=NChJSgpkXrwAiTrCJzvwlm9mh-LFSD1rR1ESdRQD43o,9513
+django/contrib/auth/locale/fi/LC_MESSAGES/django.mo,sha256=fH_rcYkl9L2dK1G3MjVETXAHunCPhsXQYMTbDcNe-00,7537
+django/contrib/auth/locale/fi/LC_MESSAGES/django.po,sha256=PVwyNBaToxjyHkxy4t4L-kULjJslTe94coSxWNseyn4,7892
+django/contrib/auth/locale/fr/LC_MESSAGES/django.mo,sha256=DUeXSFpP4KknfmgTVyNjdrtAfFGPgvOhcBhdDtvDKcg,9536
+django/contrib/auth/locale/fr/LC_MESSAGES/django.po,sha256=PAV72caHdYNROMLx64MaXJ5u8Tc-s5Vfg0ui0eVlJsE,9894
+django/contrib/auth/locale/fy/LC_MESSAGES/django.mo,sha256=95N-77SHF0AzQEer5LuBKu5n5oWf3pbH6_hQGvDrlP4,476
+django/contrib/auth/locale/fy/LC_MESSAGES/django.po,sha256=8XOzOFx-WerF7whzTie03hgO-dkbUFZneyrpZtat5JY,3704
+django/contrib/auth/locale/ga/LC_MESSAGES/django.mo,sha256=UblN6hhEtT4qBKfH-aMdUKXqOCELTZHp3sCZ8ECxPFM,9476
+django/contrib/auth/locale/ga/LC_MESSAGES/django.po,sha256=X1399hXdhaQLsVQvOr98GYPBWX9l1hY28-SjpT2Ma4Q,9891
+django/contrib/auth/locale/gd/LC_MESSAGES/django.mo,sha256=BLBYJV9Adx1BsXZaM0qZ54mNRAF5s4dxB1TBLtIyMHQ,8743
+django/contrib/auth/locale/gd/LC_MESSAGES/django.po,sha256=rqPK26mtE_U-TG2qyjc5xCR-feI3sGXZR5H6ohNzx4s,9099
+django/contrib/auth/locale/gl/LC_MESSAGES/django.mo,sha256=WTXkzn81WNcJXzDJoPdE3TWDQpKI8WP8GHx1Gq1sHv8,8805
+django/contrib/auth/locale/gl/LC_MESSAGES/django.po,sha256=xl3kbm0rMJ-3UcblwkEmjNLupbUdbNWqXiNNEUYbFYs,9223
+django/contrib/auth/locale/he/LC_MESSAGES/django.mo,sha256=gnP77qGURtGKPgbqmI6JqmX6TExxuCbM6nxZHXwRC58,8716
+django/contrib/auth/locale/he/LC_MESSAGES/django.po,sha256=qlwNJbk638S8p90BiMJyLCHZuReShEJCZTnmbPiJNks,9162
+django/contrib/auth/locale/hi/LC_MESSAGES/django.mo,sha256=7CxV1H37hMbgKIhnAWx-aJmipLRosJe1qg8BH2CABfw,5364
+django/contrib/auth/locale/hi/LC_MESSAGES/django.po,sha256=DU5YM6r1kd5fo40yqFXzEaNh42ezFQFQ-0dmVqkaKQ0,7769
+django/contrib/auth/locale/hr/LC_MESSAGES/django.mo,sha256=GEap3QClwCkuwQZKJE7qOZl93RRxmyyvTTnOTYaAWUo,5894
+django/contrib/auth/locale/hr/LC_MESSAGES/django.po,sha256=ALftoYSaI1U90RNDEvnaFATbw1SL0m8fNXAyl6DkSvo,7355
+django/contrib/auth/locale/hsb/LC_MESSAGES/django.mo,sha256=oJHYLO9gAJHRl_JK1zZYoH17fPpK4E_EynD-HJm09z8,9100
+django/contrib/auth/locale/hsb/LC_MESSAGES/django.po,sha256=-SXqWUuhlp-JLxrAFF7qVpWgkGBU_RlBujdUfII9w14,9386
+django/contrib/auth/locale/hu/LC_MESSAGES/django.mo,sha256=GnQqvpIXhU3emYyLw6MMNbspnvIFzpJsz8Pd-I9jrjg,7714
+django/contrib/auth/locale/hu/LC_MESSAGES/django.po,sha256=zPswCaG-SLvyVa16iRgmPDF6vmd1yxXmTWHbjwhzy0Q,8111
+django/contrib/auth/locale/hy/LC_MESSAGES/django.mo,sha256=zoLe0EqIH8HQYC5XAWd8b8mA2DpbmDSEBsF-WIKX_OQ,8001
+django/contrib/auth/locale/hy/LC_MESSAGES/django.po,sha256=wIWLbz6f0n44ZcjEbZZsgoWTpzXRGND15hudr_DQ3l0,8787
+django/contrib/auth/locale/ia/LC_MESSAGES/django.mo,sha256=OTxh6u0QmsytMrp8IKWBwMnhrYCpyS6qVnF7YBCAWe0,7626
+django/contrib/auth/locale/ia/LC_MESSAGES/django.po,sha256=ue4RXEXweO1-9sZOKkLZsyZe8yxnPWB3JZyyh3qzmlA,7895
+django/contrib/auth/locale/id/LC_MESSAGES/django.mo,sha256=rEtc08pC6VidwzSMWJvZjERYpdTZd6np3-N3YK8uILk,7296
+django/contrib/auth/locale/id/LC_MESSAGES/django.po,sha256=X1pfbeKqnWg-Sw_hycWuXWDqKpdzrDHMt2SVuifAQjQ,7733
+django/contrib/auth/locale/io/LC_MESSAGES/django.mo,sha256=YwAS3aWljAGXWcBhGU_GLVuGJbHJnGY8kUCE89CPdks,464
+django/contrib/auth/locale/io/LC_MESSAGES/django.po,sha256=W36JXuA1HQ72LspixRxeuvxogVxtk7ZBbT0VWI38_oM,3692
+django/contrib/auth/locale/is/LC_MESSAGES/django.mo,sha256=0PBYGqQKJaAG9m2jmJUzcqRVPc16hCe2euECMCrNGgI,7509
+django/contrib/auth/locale/is/LC_MESSAGES/django.po,sha256=o6dQ8WMuPCw4brSzKUU3j8PYhkLBO7XQ3M7RlsIw-VY,7905
+django/contrib/auth/locale/it/LC_MESSAGES/django.mo,sha256=pcBcdOXLqT4shr7Yw5l-pxfYknJyDW6d-jGtkncl24E,7862
+django/contrib/auth/locale/it/LC_MESSAGES/django.po,sha256=f03_tMPiwLF1ZyWfnB_j2vhPR1AXkborGQS2Tbxufzk,8471
+django/contrib/auth/locale/ja/LC_MESSAGES/django.mo,sha256=_iLobe-w4zxA1CQTZ045ZxuUiAsfSM-NL7p9H7C6shU,9229
+django/contrib/auth/locale/ja/LC_MESSAGES/django.po,sha256=JHggNIie2hqLGta327VO0e32U_AL8Ex30bnsS4CXhHY,9564
+django/contrib/auth/locale/ka/LC_MESSAGES/django.mo,sha256=4aJoE1O5jfm5MI7kBqymzb-xOKLDw2mJD5-VhezlMA8,10372
+django/contrib/auth/locale/ka/LC_MESSAGES/django.po,sha256=hvmbD3RS3lOFj2h7A3m23asktwM5zbCdRvs7YvesAkI,11163
+django/contrib/auth/locale/kab/LC_MESSAGES/django.mo,sha256=9qKeQ-gDByoOdSxDpSbLaM4uSP5sIi7qlTn8tJidVDs,2982
+django/contrib/auth/locale/kab/LC_MESSAGES/django.po,sha256=8cq5_rjRXPzTvn1jPo6H_Jcrv6IXkWr8n9fTPvghsS8,5670
+django/contrib/auth/locale/kk/LC_MESSAGES/django.mo,sha256=RJablrXpRba6YVB_8ACSt2q_BjmxrHQZzX6RxMJImlA,3542
+django/contrib/auth/locale/kk/LC_MESSAGES/django.po,sha256=OebwPN9iWBvjDu0P2gQyBbShvIFxFIqCw8DpKuti3xk,6360
+django/contrib/auth/locale/km/LC_MESSAGES/django.mo,sha256=FahcwnCgzEamtWcDEPOiJ4KpXCIHbnSowfSRdRQ2F9U,2609
+django/contrib/auth/locale/km/LC_MESSAGES/django.po,sha256=lvRHHIkClbt_8-9Yn0xY57dMxcS72z4sUkxLb4cohP0,5973
+django/contrib/auth/locale/kn/LC_MESSAGES/django.mo,sha256=u0YygqGJYljBZwI9rm0rRk_DdgaBEMA1etL-Lk-7Mls,4024
+django/contrib/auth/locale/kn/LC_MESSAGES/django.po,sha256=J67MIAas5egVq_FJBNsug3Y7rZ8KakhQt6isyF23HAA,6957
+django/contrib/auth/locale/ko/LC_MESSAGES/django.mo,sha256=8avsa0J96myXPxdFhChPiKpjvMhaQv3EHIjuo6f3jls,7651
+django/contrib/auth/locale/ko/LC_MESSAGES/django.po,sha256=gKhckUZzS1PekOV5Jingxke-3U2dPGRAidkgBbfootg,8422
+django/contrib/auth/locale/ky/LC_MESSAGES/django.mo,sha256=mnBXtpInYxaSNIURJTmx8uBg_PH-NuPN9r54pkQY3q4,8924
+django/contrib/auth/locale/ky/LC_MESSAGES/django.po,sha256=7FeO_Kb2er0S84KnFeXVHO3TgAmEJ0gTQEDHImoxiZ4,9170
+django/contrib/auth/locale/lb/LC_MESSAGES/django.mo,sha256=OFhpMA1ZXhrs5fwZPO5IjubvWDiju4wfwWiV94SFkiA,474
+django/contrib/auth/locale/lb/LC_MESSAGES/django.po,sha256=dOfY9HjTfMQ0nkRYumw_3ZaywbUrTgT-oTXAnrRyfxo,3702
+django/contrib/auth/locale/lt/LC_MESSAGES/django.mo,sha256=-nlZHl7w__TsFUmBb5pQV_XJtKGsi9kzP6CBZXkfM8M,8146
+django/contrib/auth/locale/lt/LC_MESSAGES/django.po,sha256=-rdhB6eroSSemsdZkG1Jl4CruNZc_7dj4m5IVoyRBUQ,8620
+django/contrib/auth/locale/lv/LC_MESSAGES/django.mo,sha256=BRIOgvLPHsfaWGrwYJNGCEKD-erXHTZpI8WNAlVGVBM,8802
+django/contrib/auth/locale/lv/LC_MESSAGES/django.po,sha256=nZJfE5Q4ISl7hsh0MR_vCReE7PGmTJKVYR22cEbHVGE,9322
+django/contrib/auth/locale/mk/LC_MESSAGES/django.mo,sha256=XS9dslnD_YBeD07P8WQkss1gT7GIV-qLiCx4i5_Vd_k,9235
+django/contrib/auth/locale/mk/LC_MESSAGES/django.po,sha256=QOLgcwHub9Uo318P2z6sp69MI8syIIWCcr4VOom9vfs,9799
+django/contrib/auth/locale/ml/LC_MESSAGES/django.mo,sha256=UEaqq7nnGvcZ8vqFicLiuqsuEUhEjd2FpWfyzy2HqdU,12611
+django/contrib/auth/locale/ml/LC_MESSAGES/django.po,sha256=xBROIwJb5h2LmyBLAafZ2tUlPVTAOcMgt-olq5XnPT8,13107
+django/contrib/auth/locale/mn/LC_MESSAGES/django.mo,sha256=hBYT0p3LcvIKKPtIn2NzPk_2di9L8jYrUt9j3TcVvaY,9403
+django/contrib/auth/locale/mn/LC_MESSAGES/django.po,sha256=R3wAEwnefEHZsma8J-XOn4XlLtuWYKDPLwJ99DUYmvE,9913
+django/contrib/auth/locale/mr/LC_MESSAGES/django.mo,sha256=c_W1FsdevGBCJfpcY4MmgSPGUGqFAqWArpXhldn9MA8,10430
+django/contrib/auth/locale/mr/LC_MESSAGES/django.po,sha256=x8RUK6Bymg2o3YDREqEZvaLpw2PIzMbXaQhJqpyGpLA,11068
+django/contrib/auth/locale/ms/LC_MESSAGES/django.mo,sha256=eCAZrzQxsM_pAxr_XQo2fIOsCbj5LjGKpLNCzob2l-I,7654
+django/contrib/auth/locale/ms/LC_MESSAGES/django.po,sha256=FAtyzSGcD1mIhRIg8O_1SHLdisTPGYZK-QUjzgw-wCY,7847
+django/contrib/auth/locale/my/LC_MESSAGES/django.mo,sha256=gYzFJKi15RbphgG1IHbJF3yGz3P2D9vaPoHZpA7LoH8,1026
+django/contrib/auth/locale/my/LC_MESSAGES/django.po,sha256=lH5mrq-MyY8gvrNkH2_20rkjFnbviq23wIUqIjPIgFI,5130
+django/contrib/auth/locale/nb/LC_MESSAGES/django.mo,sha256=vLJ9F73atlexwVRzZJpQjcB9arodHIMCh-z8lP5Ah9w,7023
+django/contrib/auth/locale/nb/LC_MESSAGES/django.po,sha256=c3sTCdzWGZgs94z9dIIpfrFuujBuvWvQ-P0gb1tuqlA,7520
+django/contrib/auth/locale/ne/LC_MESSAGES/django.mo,sha256=pq8dEr1ugF5ldwkCDHOq5sXaXV31InbLHYyXU56U_Ao,7722
+django/contrib/auth/locale/ne/LC_MESSAGES/django.po,sha256=bV-uWvT1ViEejrbRbVTtwC2cZVD2yX-KaESxKBnxeRI,8902
+django/contrib/auth/locale/nl/LC_MESSAGES/django.mo,sha256=mVnVHcT_txoSb49PFTXxGVjtdv6Anmo77Ut7YuXuYU8,8654
+django/contrib/auth/locale/nl/LC_MESSAGES/django.po,sha256=VIN_7kSM-4gJVypjnpuGTvYdtZRHDkpFWtuHnZi1TBQ,9445
+django/contrib/auth/locale/nn/LC_MESSAGES/django.mo,sha256=83HdNOuNQVgJXBZMytPz1jx3wWDy8-e6t_JNEUu6W8w,7147
+django/contrib/auth/locale/nn/LC_MESSAGES/django.po,sha256=4ciwQsZFYSV6CjFqzxxcESAm16huv9XyXvU-nchD-Fs,7363
+django/contrib/auth/locale/os/LC_MESSAGES/django.mo,sha256=DVsYGz-31nofEjZla4YhM5L7qoBnQaYnZ4TBki03AI4,4434
+django/contrib/auth/locale/os/LC_MESSAGES/django.po,sha256=Akc1qelQWRA1DE6xseoK_zsY7SFI8SpiVflsSTUhQLw,6715
+django/contrib/auth/locale/pa/LC_MESSAGES/django.mo,sha256=PeOLukzQ_CZjWBa5FGVyBEysat4Gwv40xGMS29UKRww,3666
+django/contrib/auth/locale/pa/LC_MESSAGES/django.po,sha256=7ts9PUSuvfXGRLpfyVirJLDtsQcsVWFXDepVKUVlmtc,6476
+django/contrib/auth/locale/pl/LC_MESSAGES/django.mo,sha256=NXZZQrnop8eooTdPzfp38tP0EMabV7CfpZgXxhPibyM,9123
+django/contrib/auth/locale/pl/LC_MESSAGES/django.po,sha256=aQho-iU1nlNxHQbCE1kxoz7_qhEHbNNlz4hU3fDl98g,9975
+django/contrib/auth/locale/pt/LC_MESSAGES/django.mo,sha256=wRDb8DfDcvtj6MCrLJ9gxKKF2SlK_QHpqufHfoYaFa8,6953
+django/contrib/auth/locale/pt/LC_MESSAGES/django.po,sha256=suckZxgfaB1G1iXeUI59tc0AsDpdvkLugy52q1qvw9I,7893
+django/contrib/auth/locale/pt_BR/LC_MESSAGES/django.mo,sha256=SbCDXBKvSHkdoVhcfQMXv4U_REmfd_trd6yx1iDUMTE,8790
+django/contrib/auth/locale/pt_BR/LC_MESSAGES/django.po,sha256=CQOyNh0snCEjcdMllEya8aIk3DLo1OJ0xC302hJVnFg,9955
+django/contrib/auth/locale/ro/LC_MESSAGES/django.mo,sha256=GD04tb5R6nEeD6ZMAcZghVhXwr8en1omw0c6BxnyHas,7777
+django/contrib/auth/locale/ro/LC_MESSAGES/django.po,sha256=YfkFuPrMwAR50k6lfOYeBbMosEbvXGWwMBD8B7p_2ZA,8298
+django/contrib/auth/locale/ru/LC_MESSAGES/django.mo,sha256=eCeiUY5awrFu5ih4y-pu8Tvul4vYKmwC0fFi_JXCWNY,11873
+django/contrib/auth/locale/ru/LC_MESSAGES/django.po,sha256=eLgUzuchTermohKhO3WxOHEPdW8IqwqBazgiWDEzkOk,12456
+django/contrib/auth/locale/sk/LC_MESSAGES/django.mo,sha256=FdPkNSXPm8P8iSHY8odyd_m0jFaXLK17SUTodO9FWoA,8862
+django/contrib/auth/locale/sk/LC_MESSAGES/django.po,sha256=K74Uk5HVmd5KRvF87GFL9edBcd0uuHyA8Sv_3qgwMuE,9312
+django/contrib/auth/locale/sl/LC_MESSAGES/django.mo,sha256=_Lx1YcW4tvCpsXXXmcCMhrttpLR4389330tnB1ycCok,7659
+django/contrib/auth/locale/sl/LC_MESSAGES/django.po,sha256=MPEv4Ac5MwcywffmPyLxAzSMLLX1cOdZevPlpIMju28,8136
+django/contrib/auth/locale/sq/LC_MESSAGES/django.mo,sha256=iR5C7Yh5am7z9QLU2jm9V3R9yWawAcu9NbhAvltg_RY,9021
+django/contrib/auth/locale/sq/LC_MESSAGES/django.po,sha256=yWGvT-IIdgXCyJB8dPps02iQDLSS1FVM4yPTckaMFPM,9381
+django/contrib/auth/locale/sr/LC_MESSAGES/django.mo,sha256=70UYT-rE32AZUMPTX2BLVzndmW6PFi9plyuVXV-AmaM,11244
+django/contrib/auth/locale/sr/LC_MESSAGES/django.po,sha256=V4DApTaiWBJmF-a5caRw_F5HZP34kV-N3X7U5IgHQxA,11554
+django/contrib/auth/locale/sr_Latn/LC_MESSAGES/django.mo,sha256=ErH27vBYfkVl7T9TtnaWTxVGdGSrbIC3cflXko3QIbA,8794
+django/contrib/auth/locale/sr_Latn/LC_MESSAGES/django.po,sha256=bNkHPHLgxmKe5biIdPN_Tgo6q7-u7hJaY0Jk36TU8a0,12715
+django/contrib/auth/locale/sv/LC_MESSAGES/django.mo,sha256=Hxy7f19YQMmOTq9YywhUd5p6Y8Wlfu55bXKw-SElw3I,8542
+django/contrib/auth/locale/sv/LC_MESSAGES/django.po,sha256=c_MyD3bQV8NrBYNDP1fvRoGsjXMZl6uPr55n-r5nmUg,9250
+django/contrib/auth/locale/sw/LC_MESSAGES/django.mo,sha256=I_lEsKuMGm07X1vM3-ReGDx2j09PGLkWcG0onC8q1uQ,5029
+django/contrib/auth/locale/sw/LC_MESSAGES/django.po,sha256=TiZS5mh0oN0e6dFEdh-FK81Vk-tdv35ngJ-EbM1yX80,6455
+django/contrib/auth/locale/ta/LC_MESSAGES/django.mo,sha256=T1t5CKEb8hIumvbOtai-z4LKj2et8sX-PgBMd0B3zuA,2679
+django/contrib/auth/locale/ta/LC_MESSAGES/django.po,sha256=X8UDNmk02X9q1leNV1qWWwPNakhvNd45mCKkQ8EpZQQ,6069
+django/contrib/auth/locale/te/LC_MESSAGES/django.mo,sha256=i9hG4thA0P-Hc-S2oX7GufWFDO4Y_LF4RcdQ22cbLyE,2955
+django/contrib/auth/locale/te/LC_MESSAGES/django.po,sha256=txND8Izv2oEjSlcsx3q6l5fEUqsS-zv-sjVVILB1Bmc,6267
+django/contrib/auth/locale/tg/LC_MESSAGES/django.mo,sha256=MwdyYwC4ILX4MFsqCy46NNfPKLbW1GzRhFxMV0uIbLI,7932
+django/contrib/auth/locale/tg/LC_MESSAGES/django.po,sha256=miOPNThjHZODwjXMbON8PTMQhaCGJ0Gy6FZr6Jcj4J8,8938
+django/contrib/auth/locale/th/LC_MESSAGES/django.mo,sha256=zRpZ2xM5JEQoHtfXm2_XYdhe2FtaqH-hULJadLJ1MHU,6013
+django/contrib/auth/locale/th/LC_MESSAGES/django.po,sha256=Yhh_AQS_aM_9f_yHNNSu_3THbrU-gOoMpfiDKhkaSHo,7914
+django/contrib/auth/locale/tk/LC_MESSAGES/django.mo,sha256=5Rl2GMYL11RMSyro83E2oHNaehHjjGJKAJmp0swjV-0,7467
+django/contrib/auth/locale/tk/LC_MESSAGES/django.po,sha256=HAcou6t1zkXVrzyau7gr4i_H0DYpT5HOh9AxV-tnKD0,7763
+django/contrib/auth/locale/tr/LC_MESSAGES/django.mo,sha256=1qo1gGcZFu3rZESoCGfZX97g8j50qLd8AKDhKvxCOjM,8662
+django/contrib/auth/locale/tr/LC_MESSAGES/django.po,sha256=0-q_75Eibqzcew9-t30cueOuPBpekepDi8edFlzzAcA,9236
+django/contrib/auth/locale/tt/LC_MESSAGES/django.mo,sha256=g4pTk8QLQFCOkU29RZvR1wOd1hkOZe_o5GV9Cg5u8N4,1371
+django/contrib/auth/locale/tt/LC_MESSAGES/django.po,sha256=owkJ7iPT-zJYkuKLykfWsw8j7O8hbgzVTOD0DVv956E,5222
+django/contrib/auth/locale/udm/LC_MESSAGES/django.mo,sha256=zey19UQmS79AJFxHGrOziExPDDpJ1AbUegbCRm0x0hM,462
+django/contrib/auth/locale/udm/LC_MESSAGES/django.po,sha256=gLVgaMGg0GA3Tey1_nWIjV1lnM7czLC0XR9NFBgL2Zk,3690
+django/contrib/auth/locale/ug/LC_MESSAGES/django.mo,sha256=XFiEQj2PPtLCPVa1Ecm-yM-G_vTSe_QIY0zkmxWTY5k,10714
+django/contrib/auth/locale/ug/LC_MESSAGES/django.po,sha256=kLIort7Rfnu4S95YXZ10UKX7G8BB5vI6iF6DQrSSizY,10972
+django/contrib/auth/locale/uk/LC_MESSAGES/django.mo,sha256=hjA-VzGMy8ReYSjuELwK3WEliLLjGsi0iRadzoX8UyU,10146
+django/contrib/auth/locale/uk/LC_MESSAGES/django.po,sha256=8R2bP3QC6jhcz_XSpK-GK1OPTCCb7PN6bz-1ZRX37fs,10850
+django/contrib/auth/locale/ur/LC_MESSAGES/django.mo,sha256=rippTNHoh49W19c4HDUF8G5Yo3SknL3C87Afu8YXxzA,698
+django/contrib/auth/locale/ur/LC_MESSAGES/django.po,sha256=gwSd8noEwbcvDE1Q4ZsrftvoWMwhw1J15gvdtK6E9ns,4925
+django/contrib/auth/locale/uz/LC_MESSAGES/django.mo,sha256=bDkhpvduocjekq6eZiuEfWJqnIt5hQmxxoIMhLQWzqM,2549
+django/contrib/auth/locale/uz/LC_MESSAGES/django.po,sha256=tPp8tRZwSMQCQ9AyAeUDtnRfmOk54UQMwok3HH8VNSQ,5742
+django/contrib/auth/locale/vi/LC_MESSAGES/django.mo,sha256=eBMTwnpRWRj8SZVZ1tN592Re_8CPyJzuF4Vtg9IMmFw,7892
+django/contrib/auth/locale/vi/LC_MESSAGES/django.po,sha256=mOr5WgFpwztdW-pEZ4O80MGlltYQyL2cAMhz6-Esfo0,8246
+django/contrib/auth/locale/zh_Hans/LC_MESSAGES/django.mo,sha256=buDfU6thF7o39eMCQadRxNKHprr-41PP-Qjdcp-a2m4,7741
+django/contrib/auth/locale/zh_Hans/LC_MESSAGES/django.po,sha256=qNsSA2WWmC9jrg6ABL9jVG3u95qq4ztnML4Nrh3Gugo,8507
+django/contrib/auth/locale/zh_Hant/LC_MESSAGES/django.mo,sha256=zSv5dAoJH39_y0rvB8TurVwgP3OnEozuOmtoImu5gzA,7683
+django/contrib/auth/locale/zh_Hant/LC_MESSAGES/django.po,sha256=XGPQJfi8A0wHVTkEuIZa6DPr0wLlZr06pMQeAuN12jc,8114
+django/contrib/auth/management/__init__.py,sha256=eeT2I5fsnE23dtfi7UX2ZhUMJ4EeFaGBpZUYmzmuqEY,5391
+django/contrib/auth/management/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/auth/management/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/auth/management/commands/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/auth/management/commands/__pycache__/changepassword.cpython-312.pyc,,
+django/contrib/auth/management/commands/__pycache__/createsuperuser.cpython-312.pyc,,
+django/contrib/auth/management/commands/changepassword.py,sha256=H9onbQvVwzILiRK6Cg96qGrLi8_kdjoxBVMvupX18eI,2686
+django/contrib/auth/management/commands/createsuperuser.py,sha256=cSl8FeoXYBw5DUjtnHRYmybsYIx6WztUkYjgx4ZO1XI,13576
+django/contrib/auth/middleware.py,sha256=0u5YALdQ3V8uD4VMK1Bep5N00sRNn659mKX3djmi0HA,7726
+django/contrib/auth/migrations/0001_initial.py,sha256=hFz_MZYGMy9J7yDOFl0aF-UixCbF5W12FhM-nk6rpe8,7281
+django/contrib/auth/migrations/0002_alter_permission_name_max_length.py,sha256=_q-X4Oj30Ui-w9ubqyNJxeFYiBF8H_KCne_2PvnhbP8,346
+django/contrib/auth/migrations/0003_alter_user_email_max_length.py,sha256=nVZXtNuYctwmwtY0wvWRGj1pqx2FUq9MbWM7xAAd-r8,418
+django/contrib/auth/migrations/0004_alter_user_username_opts.py,sha256=lTjbNCyam-xMoSsxN_uAdyxOpK-4YehkeilisepYNEo,880
+django/contrib/auth/migrations/0005_alter_user_last_login_null.py,sha256=efYKNdwAD91Ce8BchSM65bnEraB4_waI_J94YEv36u4,410
+django/contrib/auth/migrations/0006_require_contenttypes_0002.py,sha256=AMsW40BfFLYtvv-hXGjJAwKR5N3VE9czZIukYNbF54E,369
+django/contrib/auth/migrations/0007_alter_validators_add_error_messages.py,sha256=EV24fcMnUw-14ZZLo9A_l0ZJL5BgBAaUe-OfVPbMBC8,802
+django/contrib/auth/migrations/0008_alter_user_username_max_length.py,sha256=AoV_ZffWSBR6XRJZayAKg-KRRTkdP5hs64SzuGWiw1E,814
+django/contrib/auth/migrations/0009_alter_user_last_name_max_length.py,sha256=GaiVAOfxCKc5famxczGB-SEF91hmOzaFtg9cLaOE124,415
+django/contrib/auth/migrations/0010_alter_group_name_max_length.py,sha256=CWPtZJisCzqEMLbKNMG0pLHV9VtD09uQLxWgP_dLFM0,378
+django/contrib/auth/migrations/0011_update_proxy_permissions.py,sha256=haXd5wjcS2ER4bxxznI-z7p7H4rt7P0TCQD_d4J2VDY,2860
+django/contrib/auth/migrations/0012_alter_user_first_name_max_length.py,sha256=bO-8n4CQN2P_hJKlN6IoNu9p8iJ-GdQCUJuAmdK67LA,411
+django/contrib/auth/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/auth/migrations/__pycache__/0001_initial.cpython-312.pyc,,
+django/contrib/auth/migrations/__pycache__/0002_alter_permission_name_max_length.cpython-312.pyc,,
+django/contrib/auth/migrations/__pycache__/0003_alter_user_email_max_length.cpython-312.pyc,,
+django/contrib/auth/migrations/__pycache__/0004_alter_user_username_opts.cpython-312.pyc,,
+django/contrib/auth/migrations/__pycache__/0005_alter_user_last_login_null.cpython-312.pyc,,
+django/contrib/auth/migrations/__pycache__/0006_require_contenttypes_0002.cpython-312.pyc,,
+django/contrib/auth/migrations/__pycache__/0007_alter_validators_add_error_messages.cpython-312.pyc,,
+django/contrib/auth/migrations/__pycache__/0008_alter_user_username_max_length.cpython-312.pyc,,
+django/contrib/auth/migrations/__pycache__/0009_alter_user_last_name_max_length.cpython-312.pyc,,
+django/contrib/auth/migrations/__pycache__/0010_alter_group_name_max_length.cpython-312.pyc,,
+django/contrib/auth/migrations/__pycache__/0011_update_proxy_permissions.cpython-312.pyc,,
+django/contrib/auth/migrations/__pycache__/0012_alter_user_first_name_max_length.cpython-312.pyc,,
+django/contrib/auth/migrations/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/auth/mixins.py,sha256=rHq9HsX4W8lKtfXsazxM3chhTFLqd3eKI-OVKpbeLjQ,4652
+django/contrib/auth/models.py,sha256=Ye2nx9-YkJI9iaE9jNF74y2N1zvJlwdtrWD-f_zy-ac,16508
+django/contrib/auth/password_validation.py,sha256=bcI_IpJGik69i5evI7ywa9bEPFRSkPTLJZ8Yf1y4mIE,9358
+django/contrib/auth/signals.py,sha256=BFks70O0Y8s6p1fr8SCD4-yk2kjucv7HwTcdRUzVDFM,118
+django/contrib/auth/templates/auth/widgets/read_only_password_hash.html,sha256=xBoBu4pWrFdMbEzkx_5hgVqBrqtrY3YwP3ay6AmXXUo,320
+django/contrib/auth/templates/registration/password_reset_subject.txt,sha256=-TZcy_r0vArBgdPK7feeUY6mr9EkYwy7esQ62_onbBk,132
+django/contrib/auth/tokens.py,sha256=ljqQWO0dAkd45-bBJ6W85oZZU9pEjzNh3VbZfeANwxQ,4328
+django/contrib/auth/urls.py,sha256=Uh8DrSqpJXDA5a17Br9fMmIbEcgLkxdN9FvCRg-vxyg,1185
+django/contrib/auth/validators.py,sha256=VO7MyackTaTiK8OjEm7YyLtsjKrteVjdzPbNZki0irU,722
+django/contrib/auth/views.py,sha256=iZgi5xK8K277BdSj2NIyC_41f1AlC89Ex7vpjZJ6fQ4,14084
+django/contrib/contenttypes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/contenttypes/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/contenttypes/__pycache__/admin.cpython-312.pyc,,
+django/contrib/contenttypes/__pycache__/apps.cpython-312.pyc,,
+django/contrib/contenttypes/__pycache__/checks.cpython-312.pyc,,
+django/contrib/contenttypes/__pycache__/fields.cpython-312.pyc,,
+django/contrib/contenttypes/__pycache__/forms.cpython-312.pyc,,
+django/contrib/contenttypes/__pycache__/models.cpython-312.pyc,,
+django/contrib/contenttypes/__pycache__/prefetch.cpython-312.pyc,,
+django/contrib/contenttypes/__pycache__/views.cpython-312.pyc,,
+django/contrib/contenttypes/admin.py,sha256=a0KrlT8k2aPIKn54fNwCDTaAVdVr1fLY1BDz_FrE3ts,5200
+django/contrib/contenttypes/apps.py,sha256=1Q1mWjPvfYU7EaO50JvsWuDg_3uK8DoCwpvdIdT7iKY,846
+django/contrib/contenttypes/checks.py,sha256=KKB-4FOfPO60TM-uxqK8m9sIXzB3CRx7Imr-jaauM_U,1268
+django/contrib/contenttypes/fields.py,sha256=IKEJyMOlw5wkh0kFggXDml0M3nix_RbTQy8sLg8Lb4k,31144
+django/contrib/contenttypes/forms.py,sha256=zETkgsUcxavK9D78Cy27cwRs1LaGNKTiJfgy2vxYqjg,3944
+django/contrib/contenttypes/locale/af/LC_MESSAGES/django.mo,sha256=93nlniPFfVcxfBCs_PsLtMKrJ2BqpcofPRNYYTTlels,1070
+django/contrib/contenttypes/locale/af/LC_MESSAGES/django.po,sha256=SY04sW55-xpO_qBjv8pHoN7eqB2C5q_9CxQguMz7Q94,1244
+django/contrib/contenttypes/locale/ar/LC_MESSAGES/django.mo,sha256=2t3y_6wxi0khsYi6s9ZyJwjRB8bnRT1PKvazWOKhJcQ,1271
+django/contrib/contenttypes/locale/ar/LC_MESSAGES/django.po,sha256=t6M3XYQLotNMFCjzB8aWFXnlRI8fU744YZvAoFdScQY,1634
+django/contrib/contenttypes/locale/ar_DZ/LC_MESSAGES/django.mo,sha256=upFxoSvOvdmqCvC5irRV_8yYpFidanHfRk6i3tPrFAc,1233
+django/contrib/contenttypes/locale/ar_DZ/LC_MESSAGES/django.po,sha256=jUg-4BVi0arx5v-osaUDAfM6cQgaBh7mE8Mr8aVTp5A,1447
+django/contrib/contenttypes/locale/ast/LC_MESSAGES/django.mo,sha256=y88CPGGbwTVRmZYIipCNIWkn4OuzuxEk2QCYsBhc7RY,643
+django/contrib/contenttypes/locale/ast/LC_MESSAGES/django.po,sha256=H-qMo5ikva84ycnlmBT4XXEWhzMIw-r7J_zuqxo3wu4,1088
+django/contrib/contenttypes/locale/az/LC_MESSAGES/django.mo,sha256=eHIU-L0mRAlCpQaQzrShguFlYg5llOv89KEpj14p6-8,1058
+django/contrib/contenttypes/locale/az/LC_MESSAGES/django.po,sha256=h56r0_NK7YccHKrfBWUirSpkIBf4ckXyq1F8-YP1rvs,1375
+django/contrib/contenttypes/locale/be/LC_MESSAGES/django.mo,sha256=Kp1TpXX1v0IgGp9HZxleXJ6y5ZvMZ6AqJrSIVcDs7xA,1353
+django/contrib/contenttypes/locale/be/LC_MESSAGES/django.po,sha256=Oy5QXZBmBM_OYLT5OeXJQzTBCHXBp8NVMYuKmr_TUm0,1615
+django/contrib/contenttypes/locale/bg/LC_MESSAGES/django.mo,sha256=IFghXuYj0yxP5j-LfRsNJXlyS2b2dUNJXD01uhUqxLg,1225
+django/contrib/contenttypes/locale/bg/LC_MESSAGES/django.po,sha256=y-OpKdDHxHDYATSmi8DAUXuhpIwgujKZUe48G8So8AU,1613
+django/contrib/contenttypes/locale/bn/LC_MESSAGES/django.mo,sha256=2Z1GL6c1ukKQCMcls7R0_n4eNdH3YOXZSR8nCct7SLI,1201
+django/contrib/contenttypes/locale/bn/LC_MESSAGES/django.po,sha256=PLjnppx0FxfGBQMuWVjo0N4sW2QYc2DAEMK6ziGWUc8,1491
+django/contrib/contenttypes/locale/br/LC_MESSAGES/django.mo,sha256=kAlOemlwBvCdktgYoV-4NpC7XFDaIue_XN7GJYzDu88,1419
+django/contrib/contenttypes/locale/br/LC_MESSAGES/django.po,sha256=BQmHVQqOc6xJWJLeAo49rl_Ogfv-lFtx18mj82jT_to,1613
+django/contrib/contenttypes/locale/bs/LC_MESSAGES/django.mo,sha256=klj9n7AKBkTf7pIa9m9b-itsy4UlbYPnHiuvSLcFZXY,700
+django/contrib/contenttypes/locale/bs/LC_MESSAGES/django.po,sha256=pmJaMBLWbYtYFFXYBvPEvwXkTPdjQDv2WkFI5jNGmTI,1151
+django/contrib/contenttypes/locale/ca/LC_MESSAGES/django.mo,sha256=uYq1BXdw1AXjnLusUQfN7ox1ld6siiy41C8yKVTry7Q,1095
+django/contrib/contenttypes/locale/ca/LC_MESSAGES/django.po,sha256=-dsOzvzVzEPVvA9lYsIP-782BbtJxGRo-OHtS3fIjmU,1403
+django/contrib/contenttypes/locale/ckb/LC_MESSAGES/django.mo,sha256=_dJ-2B3tupoUHRS7HjC-EIlghIYLWebwsy4IvEXI13w,1213
+django/contrib/contenttypes/locale/ckb/LC_MESSAGES/django.po,sha256=SrQwgQTltnR7OExi6sP5JsnEOg6qDzd8dSPXjX92B-M,1419
+django/contrib/contenttypes/locale/cs/LC_MESSAGES/django.mo,sha256=QexBQDuGdMFhVBtA9XWUs2geFBROcxyzdU_IBUGQ7x4,1108
+django/contrib/contenttypes/locale/cs/LC_MESSAGES/django.po,sha256=8pdPwZmpGOeSZjILGLZEAzqvmmV69ogpkh0c3tukT2g,1410
+django/contrib/contenttypes/locale/cy/LC_MESSAGES/django.mo,sha256=2QyCWeXFyymoFu0Jz1iVFgOIdLtt4N1rCZATZAwiH-8,1159
+django/contrib/contenttypes/locale/cy/LC_MESSAGES/django.po,sha256=ZWDxQTHJcw1UYav1C3MX08wCFrSeJNNI2mKjzRVd6H0,1385
+django/contrib/contenttypes/locale/da/LC_MESSAGES/django.mo,sha256=EyancRrTWxM6KTpLq65gIQB0sO_PLtVr1ESN2v1pSNU,1038
+django/contrib/contenttypes/locale/da/LC_MESSAGES/django.po,sha256=J09u3IjLgv4g77Kea_WQAhevHb8DskGU-nVxyucYf_0,1349
+django/contrib/contenttypes/locale/de/LC_MESSAGES/django.mo,sha256=MGUZ4Gw8rSFjBO2OfFX9ooGGpJYwAapgNkc-GdBMXa0,1055
+django/contrib/contenttypes/locale/de/LC_MESSAGES/django.po,sha256=T5ucSqa6VyfUcoN6nFWBtjUkrSrz7wxr8t0NGTBrWow,1308
+django/contrib/contenttypes/locale/dsb/LC_MESSAGES/django.mo,sha256=QpdSZObmfb-DQZb3Oh6I1bFRnaPorXMznNZMyVIM7Hc,1132
+django/contrib/contenttypes/locale/dsb/LC_MESSAGES/django.po,sha256=_tNajamEnnf9FEjI-XBRraKjJVilwvpv2TBf9PAzPxw,1355
+django/contrib/contenttypes/locale/el/LC_MESSAGES/django.mo,sha256=1ySEbSEzhH1lDjHQK9Kv59PMA3ZPdqY8EJe6xEQejIM,1286
+django/contrib/contenttypes/locale/el/LC_MESSAGES/django.po,sha256=8rlMKE5SCLTtm1myjLFBtbEIFyuRmSrL9HS2PA7gneQ,1643
+django/contrib/contenttypes/locale/en/LC_MESSAGES/django.mo,sha256=U0OV81NfbuNL9ctF-gbGUG5al1StqN-daB-F-gFBFC8,356
+django/contrib/contenttypes/locale/en/LC_MESSAGES/django.po,sha256=BRgOISCCJb4TU0dNxG4eeQJFe-aIe7U3GKLPip03d_Q,1110
+django/contrib/contenttypes/locale/en_AU/LC_MESSAGES/django.mo,sha256=dTndJxA-F1IE_nMUOtf1sRr7Kq2s_8yjgKk6mkWkVu4,486
+django/contrib/contenttypes/locale/en_AU/LC_MESSAGES/django.po,sha256=wmxyIJtz628AbsxgkB-MjdImcIJWhcW7NV3tWbDpedg,1001
+django/contrib/contenttypes/locale/en_GB/LC_MESSAGES/django.mo,sha256=_uM-jg43W7Pz8RQhMcR_o15wRkDaYD8aRcl2_NFGoNs,1053
+django/contrib/contenttypes/locale/en_GB/LC_MESSAGES/django.po,sha256=SyzwSvqAgKF8BEhXYh4598GYP583OK2GUXH1lc4iDMk,1298
+django/contrib/contenttypes/locale/eo/LC_MESSAGES/django.mo,sha256=4EgHUHPb4TuK2DKf0dWOf7rNzJNsyT8CG39SQixI0oM,1072
+django/contrib/contenttypes/locale/eo/LC_MESSAGES/django.po,sha256=gbxNuagxW01xLd3DY0Lc5UNNSlw1nEiBExzcElrB61E,1350
+django/contrib/contenttypes/locale/es/LC_MESSAGES/django.mo,sha256=KzgypFDwIlVzr_h9Dq2X8dXu3XnsbdSaHwJKJWZ6qc8,1096
+django/contrib/contenttypes/locale/es/LC_MESSAGES/django.po,sha256=Dpn9dTvdy87bVf3It8pZFOdEEKnO91bDeYyY1YujkIA,1456
+django/contrib/contenttypes/locale/es_AR/LC_MESSAGES/django.mo,sha256=WkHABVDmtKidPyo6zaYGVGrgXpe6tZ69EkxaIBu6mtg,1084
+django/contrib/contenttypes/locale/es_AR/LC_MESSAGES/django.po,sha256=yVSu_fJSKwS4zTlRud9iDochIaY0zOPILF59biVfkeY,1337
+django/contrib/contenttypes/locale/es_CO/LC_MESSAGES/django.mo,sha256=aACo1rOrgs_BYK3AWzXEljCdAc4bC3BXpyXrwE4lzAs,1158
+django/contrib/contenttypes/locale/es_CO/LC_MESSAGES/django.po,sha256=vemhoL-sESessGmIlHoRvtWICqF2aO05WvcGesUZBRM,1338
+django/contrib/contenttypes/locale/es_MX/LC_MESSAGES/django.mo,sha256=vD9rSUAZC_rgkwiOOsrrra07Gnx7yEpNHI96tr8xD3U,840
+django/contrib/contenttypes/locale/es_MX/LC_MESSAGES/django.po,sha256=tLgjAi9Z1kZloJFVQuUdAvyiJy1J-5QHfoWmxbqQZCc,1237
+django/contrib/contenttypes/locale/es_VE/LC_MESSAGES/django.mo,sha256=TVGDydYVg_jGfnYghk_cUFjCCtpGchuoTB4Vf0XJPYk,1152
+django/contrib/contenttypes/locale/es_VE/LC_MESSAGES/django.po,sha256=vJW37vuKYb_KpXBPmoNSqtNstFgCDlKmw-8iOoSCenU,1342
+django/contrib/contenttypes/locale/et/LC_MESSAGES/django.mo,sha256=TE84lZl6EP54-pgmv275jiTOW0vIsnsGU97qmtxMEVg,1028
+django/contrib/contenttypes/locale/et/LC_MESSAGES/django.po,sha256=KO9fhmRCx25VeHNDGXVNhoFx3VFH-6PSLVXZJ6ohOSA,1368
+django/contrib/contenttypes/locale/eu/LC_MESSAGES/django.mo,sha256=K0f1cXEhfg_djPzgCL9wC0iHGWF_JGIhWGFL0Y970g0,1077
+django/contrib/contenttypes/locale/eu/LC_MESSAGES/django.po,sha256=sSuVV0o8MeWN6BxlaeKcjKA3h4H29fCo1kKEtkczEp4,1344
+django/contrib/contenttypes/locale/fa/LC_MESSAGES/django.mo,sha256=hW3A3_9b-NlLS4u6qDnPS1dmNdn1UJCt-nihXvnXywI,1130
+django/contrib/contenttypes/locale/fa/LC_MESSAGES/django.po,sha256=TPiYsGGN-j-VD--Rentx1p-IcrNJYoYxrxDO_5xeZHI,1471
+django/contrib/contenttypes/locale/fi/LC_MESSAGES/django.mo,sha256=dWar3g1rJAkUG1xRLlmGkH63Fy_h2YqzhMVv0Z25aWc,1036
+django/contrib/contenttypes/locale/fi/LC_MESSAGES/django.po,sha256=yALWMFU8-gFD2G0NdWqIDIenrAMUY4VCW1oi8TJXFAc,1325
+django/contrib/contenttypes/locale/fr/LC_MESSAGES/django.mo,sha256=CTOu_JOAQeC72VX5z9cg8Bn3HtZsdgbtjA7XKcy681o,1078
+django/contrib/contenttypes/locale/fr/LC_MESSAGES/django.po,sha256=6LArEWoBpdaJa7UPcyv4HJKD3YoKUxrwGQGd16bi9DM,1379
+django/contrib/contenttypes/locale/fy/LC_MESSAGES/django.mo,sha256=YQQy7wpjBORD9Isd-p0lLzYrUgAqv770_56-vXa0EOc,476
+django/contrib/contenttypes/locale/fy/LC_MESSAGES/django.po,sha256=SB07aEGG7n4oX_5rqHB6OnjpK_K0KwFM7YxaWYNpB_4,991
+django/contrib/contenttypes/locale/ga/LC_MESSAGES/django.mo,sha256=7E4WYsYrAh_NhlJva_R0dYG0uX9pTKkYdKRq5seoWAA,1081
+django/contrib/contenttypes/locale/ga/LC_MESSAGES/django.po,sha256=3GcPCINXueCiHWnWJACHrkhiMB07D-36ZkuAWkEBSlo,1425
+django/contrib/contenttypes/locale/gd/LC_MESSAGES/django.mo,sha256=dQz7j45qlY3M1rL2fCVdPnuHMUdUcJ0K6cKgRD7Js2w,1154
+django/contrib/contenttypes/locale/gd/LC_MESSAGES/django.po,sha256=_hwx9XqeX5QYRFtDpEYkChswn8WMdYTQlbzL1LjREbY,1368
+django/contrib/contenttypes/locale/gl/LC_MESSAGES/django.mo,sha256=OS8R8sck0Q__XBw3M9brT4jOHmXYUHH71zU2a0mY0vQ,1080
+django/contrib/contenttypes/locale/gl/LC_MESSAGES/django.po,sha256=i-kmfgIuDtreavYL3mCc_BSRi-GmTklAsqE4AhP3wgk,1417
+django/contrib/contenttypes/locale/he/LC_MESSAGES/django.mo,sha256=oaxWykyc3N63WpxyHPI5CyhCTBqhM5-2Sasp_DNm1xc,1219
+django/contrib/contenttypes/locale/he/LC_MESSAGES/django.po,sha256=wCm08UMCiCa6y1-5E-7bEz-8Kd0oMRMwgzoEJjMwFyw,1486
+django/contrib/contenttypes/locale/hi/LC_MESSAGES/django.mo,sha256=KAZuQMKOvIPj3a7GrNJE3yhT70O2abCEF2GOsbwTE5A,1321
+django/contrib/contenttypes/locale/hi/LC_MESSAGES/django.po,sha256=PcsNgu2YmT0biklhwOF_nSvoGTvWVKw2IsBxIwSVAtI,1577
+django/contrib/contenttypes/locale/hr/LC_MESSAGES/django.mo,sha256=DbOUA8ks3phsEwQvethkwZ9-ymrd36aQ6mP7OnGdpjU,1167
+django/contrib/contenttypes/locale/hr/LC_MESSAGES/django.po,sha256=722KxvayO6YXByAmO4gfsfzyVbT-HqqrLYQsr02KDc8,1445
+django/contrib/contenttypes/locale/hsb/LC_MESSAGES/django.mo,sha256=tPtv_lIzCPIUjGkAYalnNIUxVUQFE3MShhVXTnfVx3Q,1106
+django/contrib/contenttypes/locale/hsb/LC_MESSAGES/django.po,sha256=rbI3G8ARG7DF7uEe82SYCfotBnKTRJJ641bGhjdptTQ,1329
+django/contrib/contenttypes/locale/hu/LC_MESSAGES/django.mo,sha256=2nsylOwBIDOnkUjE2GYU-JRvgs_zxent7q3_PuscdXk,1102
+django/contrib/contenttypes/locale/hu/LC_MESSAGES/django.po,sha256=Dzcf94ZSvJtyNW9EUKpmyNJ1uZbXPvc7dIxCccZrDYc,1427
+django/contrib/contenttypes/locale/hy/LC_MESSAGES/django.mo,sha256=hKOErB5dzj44ThQ1_nZHak2-aXZlwMoxYcDWmPb3Xo8,1290
+django/contrib/contenttypes/locale/hy/LC_MESSAGES/django.po,sha256=UeGzaghsEt9Lt5DsEzRb9KCbuphWUQwLayt4AN194ao,1421
+django/contrib/contenttypes/locale/ia/LC_MESSAGES/django.mo,sha256=9B0XhxH0v3FvkEvS5MOHHqVbgV6KQITPrjzx1Sn76GA,1105
+django/contrib/contenttypes/locale/ia/LC_MESSAGES/django.po,sha256=NX8jpTaIhtVbVlwEsOl5aufZ80ljHZZwqtsVVozQb4M,1318
+django/contrib/contenttypes/locale/id/LC_MESSAGES/django.mo,sha256=4-6RBAvrtA1PY3LNxMrgwzBLZE0ZKwWaXa7SmtmAIyk,1031
+django/contrib/contenttypes/locale/id/LC_MESSAGES/django.po,sha256=xdxEOgfta1kaXyQAngmmbL8wDQzJU6boC9HdbmoM1iI,1424
+django/contrib/contenttypes/locale/io/LC_MESSAGES/django.mo,sha256=3SSRXx4tYiMUc00LZ9kGHuvTgaWpsICEf5G208CEqgg,1051
+django/contrib/contenttypes/locale/io/LC_MESSAGES/django.po,sha256=1ku9WPcenn47DOF05HL2eRqghZeRYfklo2huYUrkeJ0,1266
+django/contrib/contenttypes/locale/is/LC_MESSAGES/django.mo,sha256=ZYWbT4qeaco8h_J9SGF2Bs7Rdu3auZ969xZ0RQ_03go,1049
+django/contrib/contenttypes/locale/is/LC_MESSAGES/django.po,sha256=iNdghSbBVPZmfrHu52hRG8vHMgGUfOjLqie09fYcuso,1360
+django/contrib/contenttypes/locale/it/LC_MESSAGES/django.mo,sha256=GSP0BJc3bGLoNS0tnhiz_5dtSh5NXCrBiZbnwEhWbpk,1075
+django/contrib/contenttypes/locale/it/LC_MESSAGES/django.po,sha256=njEgvhDwWOc-CsGBDz1_mtEsXx2aTU6cP3jZzcLkkYk,1457
+django/contrib/contenttypes/locale/ja/LC_MESSAGES/django.mo,sha256=tVH6RvZ5tXz56lEM3aoJtFp5PKsSR-XXpi8ZNCHjiFw,1211
+django/contrib/contenttypes/locale/ja/LC_MESSAGES/django.po,sha256=5_-Uo7Ia3X9gAWm2f72ezQnNr_pQzf6Ax4AUutULuZU,1534
+django/contrib/contenttypes/locale/ka/LC_MESSAGES/django.mo,sha256=1_yGL68sK0QG_mhwFAVdksiDlB57_1W5QkL7NGGE5L0,1429
+django/contrib/contenttypes/locale/ka/LC_MESSAGES/django.po,sha256=6iUBbKjXsIgrq7Dj_xhxzoxItSSSKwQjIZsDayefGr8,1654
+django/contrib/contenttypes/locale/kk/LC_MESSAGES/django.mo,sha256=SNY0vydwLyR2ExofAHjmg1A2ykoLI7vU5Ryq-QFu5Gs,627
+django/contrib/contenttypes/locale/kk/LC_MESSAGES/django.po,sha256=PU-NAl6xUEeGV0jvJx9siVBTZIzHywL7oKc4DgUjNkc,1130
+django/contrib/contenttypes/locale/km/LC_MESSAGES/django.mo,sha256=BXifukxf48Lr0t0V3Y0GJUMhD1KiHN1wwbueoK0MW1A,678
+django/contrib/contenttypes/locale/km/LC_MESSAGES/django.po,sha256=fTPlBbnaNbLZxjzJutGvqe33t6dWsEKiHQYaw27m7KQ,1123
+django/contrib/contenttypes/locale/kn/LC_MESSAGES/django.mo,sha256=a4sDGaiyiWn-1jFozYI4vdAvuHXrs8gbZErP_SAUk9Y,714
+django/contrib/contenttypes/locale/kn/LC_MESSAGES/django.po,sha256=A6Vss8JruQcPUKQvY-zaubVZDTLEPwHsnd_rXcyzQUs,1168
+django/contrib/contenttypes/locale/ko/LC_MESSAGES/django.mo,sha256=myRfFxf2oKcbpmCboongTsL72RTM95nEmAC938M-ckE,1089
+django/contrib/contenttypes/locale/ko/LC_MESSAGES/django.po,sha256=uui_LhgGTrW0uo4p-oKr4JUzhjvkLbFCqRVLNMrptzY,1383
+django/contrib/contenttypes/locale/ky/LC_MESSAGES/django.mo,sha256=ULoIe36zGKPZZs113CenA6J9HviYcBOKagXrPGxyBUI,1182
+django/contrib/contenttypes/locale/ky/LC_MESSAGES/django.po,sha256=FnW5uO8OrTYqbvoRuZ6gnCD6CHnuLjN00s2Jo1HX1NE,1465
+django/contrib/contenttypes/locale/lb/LC_MESSAGES/django.mo,sha256=xokesKl7h7k9dXFKIJwGETgwx1Ytq6mk2erBSxkgY-o,474
+django/contrib/contenttypes/locale/lb/LC_MESSAGES/django.po,sha256=dwVKpCRYmXTD9h69v5ivkZe-yFtvdZNZ3VfuyIl4olY,989
+django/contrib/contenttypes/locale/lt/LC_MESSAGES/django.mo,sha256=HucsRl-eqfxw6ESTuXvl7IGjPGYSI9dxM5lMly_P1sc,1215
+django/contrib/contenttypes/locale/lt/LC_MESSAGES/django.po,sha256=odzYqHprxKFIrR8TzdxA4WeeMK0W0Nvn2gAVuzAsEqI,1488
+django/contrib/contenttypes/locale/lv/LC_MESSAGES/django.mo,sha256=nWfy7jv2VSsKYT6yhk_xqxjk1TlppJfsQcurC40CeTs,1065
+django/contrib/contenttypes/locale/lv/LC_MESSAGES/django.po,sha256=pHlbzgRpIJumDMp2rh1EKrxFBg_DRcvLLgkQ3mi_L0s,1356
+django/contrib/contenttypes/locale/mk/LC_MESSAGES/django.mo,sha256=KTFZWm0F4S6lmi1FX76YKOyJqIZN5cTsiTBI_D4ADHs,1258
+django/contrib/contenttypes/locale/mk/LC_MESSAGES/django.po,sha256=mQZosS90S-Bil6-EoGjs9BDWYlvOF6mtUDZ8h9NxEdE,1534
+django/contrib/contenttypes/locale/ml/LC_MESSAGES/django.mo,sha256=rtmLWfuxJED-1KuqkUT8F5CU1KGJP0Of718n2Gl_gI0,1378
+django/contrib/contenttypes/locale/ml/LC_MESSAGES/django.po,sha256=Z-kL9X9CD7rYfa4Uoykye2UgCNQlgyql0HTv1eUXAf4,1634
+django/contrib/contenttypes/locale/mn/LC_MESSAGES/django.mo,sha256=J6kKYjUOsQxptNXDcCaY4d3dHJio4HRibRk3qfwO6Xc,1225
+django/contrib/contenttypes/locale/mn/LC_MESSAGES/django.po,sha256=x8aRJH2WQvMBBWlQt3T3vpV4yHeZXLmRTT1U0at4ZIk,1525
+django/contrib/contenttypes/locale/mr/LC_MESSAGES/django.mo,sha256=G7yoBvkVNtyQxT2RCCPjBeI8C3lAzVcPxW0OkDeVyz0,1004
+django/contrib/contenttypes/locale/mr/LC_MESSAGES/django.po,sha256=BKgamLogZ-F3gBYeTZy1rGCkNe5AjOew8Nm1LTVkhEs,1348
+django/contrib/contenttypes/locale/ms/LC_MESSAGES/django.mo,sha256=EIwbOZ0QahW9AFFWRmRdKGKBtYYY_eTcfU4eqDVSVxw,1035
+django/contrib/contenttypes/locale/ms/LC_MESSAGES/django.po,sha256=t7nKsOMxycn_CsXw2nIfU-owJRge3FAixgbTsDhffvo,1225
+django/contrib/contenttypes/locale/my/LC_MESSAGES/django.mo,sha256=YYa2PFe9iJygqL-LZclfpgR6rBmIvx61JRpBkKS6Hrs,1554
+django/contrib/contenttypes/locale/my/LC_MESSAGES/django.po,sha256=6F3nXd9mBc-msMchkC8OwAHME1x1O90xrsZp7xmynpU,1732
+django/contrib/contenttypes/locale/nb/LC_MESSAGES/django.mo,sha256=EHU9Lm49U7WilR5u-Lq0Fg8ChR_OzOce4UyPlkZ6Zs4,1031
+django/contrib/contenttypes/locale/nb/LC_MESSAGES/django.po,sha256=lbktPYsJudrhe4vxnauzpzN9eNwyoVs0ZmZSdkwjkOk,1403
+django/contrib/contenttypes/locale/ne/LC_MESSAGES/django.mo,sha256=-zZAn5cex4PkScoZVqS74PUMThJJuovZSk3WUKZ8hnw,1344
+django/contrib/contenttypes/locale/ne/LC_MESSAGES/django.po,sha256=1ZCUkulQ9Gxb50yMKFKWaTJli2SinBeNj0KpXkKpsNE,1519
+django/contrib/contenttypes/locale/nl/LC_MESSAGES/django.mo,sha256=aXDHgg891TyTiMWNcbNaahfZQ2hqtl5yTkx5gNRocMU,1040
+django/contrib/contenttypes/locale/nl/LC_MESSAGES/django.po,sha256=zDJ_vyQxhP0mP06U-e4p6Uj6v1g863s8oaxc0JIAMjg,1396
+django/contrib/contenttypes/locale/nn/LC_MESSAGES/django.mo,sha256=a_X8e2lMieWwUtENJueBr8wMvkw6at0QSaWXd5AM6yQ,1040
+django/contrib/contenttypes/locale/nn/LC_MESSAGES/django.po,sha256=xFSirHUAKv78fWUpik6xv-6WQSEoUgN5jjPbTOy58C4,1317
+django/contrib/contenttypes/locale/os/LC_MESSAGES/django.mo,sha256=QV533Wu-UpjV3XiCe83jlz7XGuwgRviV0ggoeMaIOIY,1116
+django/contrib/contenttypes/locale/os/LC_MESSAGES/django.po,sha256=UZahnxo8z6oWJfEz4JNHGng0EAifXYtJupB6lx0JB60,1334
+django/contrib/contenttypes/locale/pa/LC_MESSAGES/django.mo,sha256=qacd7eywof8rvJpstNfEmbHgvDiQ9gmkcyG7gfato8s,697
+django/contrib/contenttypes/locale/pa/LC_MESSAGES/django.po,sha256=Kq2NTzdbgq8Q9jLLgV-ZJaSRj43D1dDHcRIgNnJXu-s,1145
+django/contrib/contenttypes/locale/pl/LC_MESSAGES/django.mo,sha256=J5sC36QwKLvrMB4adsojhuw2kYuEckHz6eoTrZwYcnI,1208
+django/contrib/contenttypes/locale/pl/LC_MESSAGES/django.po,sha256=gxP59PjlIHKSiYZcbgIY4PUZSoKYx4YKCpm4W4Gj22g,1577
+django/contrib/contenttypes/locale/pt/LC_MESSAGES/django.mo,sha256=k7cJHLP3avrBD50o5oxaZmLlT9Uv_XgxzDn4YhvNeDM,1154
+django/contrib/contenttypes/locale/pt/LC_MESSAGES/django.po,sha256=O087gXKjUtRwCrYHERr-m8smmuJg-eo4OAOL2vRDBj4,1446
+django/contrib/contenttypes/locale/pt_BR/LC_MESSAGES/django.mo,sha256=qjl-3fBqNcAuoviGejjILC7Z8XmrRd7gHwOgwu1x1zw,1117
+django/contrib/contenttypes/locale/pt_BR/LC_MESSAGES/django.po,sha256=Xp0iBhseS8v13zjDcNQv4BDaroMtDJVs4-BzNc0UOpU,1494
+django/contrib/contenttypes/locale/ro/LC_MESSAGES/django.mo,sha256=sCthDD10v7GY2cui9Jj9HK8cofVEg2WERCm6aktOM-4,1142
+django/contrib/contenttypes/locale/ro/LC_MESSAGES/django.po,sha256=n-BPEfua0Gd6FN0rsP7qAlTGbQEZ14NnDMA8jI2844Y,1407
+django/contrib/contenttypes/locale/ru/LC_MESSAGES/django.mo,sha256=OSf206SFmVLULHmwVhTaRhWTQtyDKsxe03gIzuvAUnY,1345
+django/contrib/contenttypes/locale/ru/LC_MESSAGES/django.po,sha256=xHyJYD66r8We3iN5Hqo69syWkjhz4zM7X9BWPIiI6mU,1718
+django/contrib/contenttypes/locale/sk/LC_MESSAGES/django.mo,sha256=osKXPEE0x-oahNDjgr4aea3dzmLddTT_RLQ8TnbsIOg,1115
+django/contrib/contenttypes/locale/sk/LC_MESSAGES/django.po,sha256=nZBxZH3r93fbtth15iP-Q2tNLrZrYqc8V0B9c4XMRNI,1433
+django/contrib/contenttypes/locale/sl/LC_MESSAGES/django.mo,sha256=sMML-ubI_9YdKptzeri1du8FOdKcEzJbe4Tt0J4ePFI,1147
+django/contrib/contenttypes/locale/sl/LC_MESSAGES/django.po,sha256=0zxiyzRWWDNVpNNLlcwl-OLh5sLukma1vm-kYrGHYrE,1392
+django/contrib/contenttypes/locale/sq/LC_MESSAGES/django.mo,sha256=jYDQH3OpY4Vx9hp6ISFMI88uxBa2GDQK0BkLGm8Qulk,1066
+django/contrib/contenttypes/locale/sq/LC_MESSAGES/django.po,sha256=JIvguXVOFpQ3MRqRXHpxlg8_YhEzCsZBBMdpekYTxlk,1322
+django/contrib/contenttypes/locale/sr/LC_MESSAGES/django.mo,sha256=GUXj97VN15HdY7XMy5jmMLEu13juD3To5NsztcoyPGs,1204
+django/contrib/contenttypes/locale/sr/LC_MESSAGES/django.po,sha256=T1w_EeB6yT-PXr7mrwzqu270linf_KY3_ZCgl4wfLAQ,1535
+django/contrib/contenttypes/locale/sr_Latn/LC_MESSAGES/django.mo,sha256=m2plistrI8O-ztAs5HmDYXG8N_wChaDfXFev0GYWVys,1102
+django/contrib/contenttypes/locale/sr_Latn/LC_MESSAGES/django.po,sha256=lJrhLPDbJAcXgBPco-_lfUXqs31imj_vGwE5p1EXZjk,1390
+django/contrib/contenttypes/locale/sv/LC_MESSAGES/django.mo,sha256=J5ha8X6jnQ4yuafk-JCqPM5eIGNwKpDOpTwIVCrnGNE,1055
+django/contrib/contenttypes/locale/sv/LC_MESSAGES/django.po,sha256=HeKnQJaRNflAbKxTiC_2EFAg2Sx-e3nDXrReJyVoNTQ,1400
+django/contrib/contenttypes/locale/sw/LC_MESSAGES/django.mo,sha256=XLPle0JYPPkmm5xpJRmWztMTF1_3a2ZubWE4ur2sav8,563
+django/contrib/contenttypes/locale/sw/LC_MESSAGES/django.po,sha256=jRc8Eh6VuWgqc4kM-rxjbVE3yV9uip6mOJLdD6yxGLM,1009
+django/contrib/contenttypes/locale/ta/LC_MESSAGES/django.mo,sha256=L3eF4z9QSmIPqzEWrNk8-2uLteQUMsuxiD9VZyRuSfo,678
+django/contrib/contenttypes/locale/ta/LC_MESSAGES/django.po,sha256=iDb9lRU_-YPmO5tEQeXEZeGeFe-wVZy4k444sp_vTgw,1123
+django/contrib/contenttypes/locale/te/LC_MESSAGES/django.mo,sha256=S_UF_mZbYfScD6Z36aB-kwtTflTeX3Wt4k7z_pEcOV8,690
+django/contrib/contenttypes/locale/te/LC_MESSAGES/django.po,sha256=aAGMMoJPg_pF9_rCNZmda5A_TvDCvQfYEL64Xdoa4jo,1135
+django/contrib/contenttypes/locale/tg/LC_MESSAGES/django.mo,sha256=dkLic6fD2EMzrB7m7MQazaGLoJ_pBw55O4nYZc5UYEs,864
+django/contrib/contenttypes/locale/tg/LC_MESSAGES/django.po,sha256=1nv1cVJewfr44gbQh1Szzy3DT4Y9Dy7rUgAZ81otJQs,1232
+django/contrib/contenttypes/locale/th/LC_MESSAGES/django.mo,sha256=qilt-uZMvt0uw-zFz7-eCmkGEx3XYz7NNo9Xbq3s7uI,1186
+django/contrib/contenttypes/locale/th/LC_MESSAGES/django.po,sha256=42F34fNEn_3yQKBBJnCLttNeyktuLVpilhMyepOd6dg,1444
+django/contrib/contenttypes/locale/tk/LC_MESSAGES/django.mo,sha256=0fuA3E487-pceoGpX9vMCwSnCItN_pbLUIUzzcrAGOE,1068
+django/contrib/contenttypes/locale/tk/LC_MESSAGES/django.po,sha256=pS8wX9dzxys3q8Vvz3PyoVJYqplXhNuAqfq7Dsb07fw,1283
+django/contrib/contenttypes/locale/tr/LC_MESSAGES/django.mo,sha256=gKg2FCxs2fHpDB1U6gh9xrP7mOpYG65pB4CNmdPYiDg,1057
+django/contrib/contenttypes/locale/tr/LC_MESSAGES/django.po,sha256=gmI3RDhq39IlDuvNohT_FTPY5QG8JD0gFxG5CTsvVZs,1345
+django/contrib/contenttypes/locale/tt/LC_MESSAGES/django.mo,sha256=_LQ1N04FgosdDLUYXJOEqpCB2Mg92q95cBRgYPi1MyY,659
+django/contrib/contenttypes/locale/tt/LC_MESSAGES/django.po,sha256=L7wMMpxGnpQiKd_mjv2bJpE2iqCJ8XwiXK0IN4EHSbM,1110
+django/contrib/contenttypes/locale/udm/LC_MESSAGES/django.mo,sha256=CNmoKj9Uc0qEInnV5t0Nt4ZnKSZCRdIG5fyfSsqwky4,462
+django/contrib/contenttypes/locale/udm/LC_MESSAGES/django.po,sha256=YVyej0nAhhEf7knk4vCeRQhmSQeGZLhMPPXyIyWObnM,977
+django/contrib/contenttypes/locale/ug/LC_MESSAGES/django.mo,sha256=hddqwGR9yrDZye5FZSatvlBBGerLsxS0x1HRodFmwkk,1182
+django/contrib/contenttypes/locale/ug/LC_MESSAGES/django.po,sha256=DoAswgu8-Ukl5e5TLhMcMQRuWEalnmokpKZsKSN9RYk,1397
+django/contrib/contenttypes/locale/uk/LC_MESSAGES/django.mo,sha256=GgAuuLexfhYl1fRKPfZI5uMTkt2H42Ogil6MQHcejkU,1404
+django/contrib/contenttypes/locale/uk/LC_MESSAGES/django.po,sha256=1HzO_Wmxqk0Kd5gtACKZODiH8ZEpOf5Eh8Mkrg3IMf8,1779
+django/contrib/contenttypes/locale/ur/LC_MESSAGES/django.mo,sha256=OJs_EmDBps-9a_KjFJnrS8IqtJfd25LaSWeyG8u8UfI,671
+django/contrib/contenttypes/locale/ur/LC_MESSAGES/django.po,sha256=f0FnsaAM_qrBuCXzLnkBrW5uFfVc6pUh7S-qp4918Ng,1122
+django/contrib/contenttypes/locale/vi/LC_MESSAGES/django.mo,sha256=kGYgEI1gHkyU4y_73mBJN1hlKC2JujVXMg6iCdWncDg,1155
+django/contrib/contenttypes/locale/vi/LC_MESSAGES/django.po,sha256=RIDUgsElfRF8bvBdUKtshizuMnupdMGAM896s7qZKD4,1439
+django/contrib/contenttypes/locale/zh_Hans/LC_MESSAGES/django.mo,sha256=RviK0bqLZzPrZ46xUpc0f8IKkw3JLtsrt0gNA74Ypj0,1015
+django/contrib/contenttypes/locale/zh_Hans/LC_MESSAGES/django.po,sha256=vSKJDEQ_ANTj3-W8BFJd9u_QGdTMF12iS15rVgeujOs,1380
+django/contrib/contenttypes/locale/zh_Hant/LC_MESSAGES/django.mo,sha256=NMumOJ9dPX-7YjQH5Obm4Yj0-lnGXJmCMN5DGbsLQG4,1046
+django/contrib/contenttypes/locale/zh_Hant/LC_MESSAGES/django.po,sha256=7WIqYRpcs986MjUsegqIido5k6HG8d3FVvkrOQCRVCI,1338
+django/contrib/contenttypes/management/__init__.py,sha256=ZVHVJAYi_jCIXxWUZSkxq0IDECe6bvbFsWayrqbutfc,4937
+django/contrib/contenttypes/management/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/contenttypes/management/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/contenttypes/management/commands/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/contenttypes/management/commands/__pycache__/remove_stale_contenttypes.cpython-312.pyc,,
+django/contrib/contenttypes/management/commands/remove_stale_contenttypes.py,sha256=F6rm6MTMLuZVXCsn6L3ln3ouehsUTaVGaNeaZ4cRW7I,4643
+django/contrib/contenttypes/migrations/0001_initial.py,sha256=Ne2EiaFH4LQqFcIbXU8OiUDeb3P7Mm6dbeqRtNC5U8w,1434
+django/contrib/contenttypes/migrations/0002_remove_content_type_name.py,sha256=fTZJQHV1Dw7TwPaNDLFUjrpZzFk_UvaR9sw3oEMIN2Y,1199
+django/contrib/contenttypes/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/contenttypes/migrations/__pycache__/0001_initial.cpython-312.pyc,,
+django/contrib/contenttypes/migrations/__pycache__/0002_remove_content_type_name.cpython-312.pyc,,
+django/contrib/contenttypes/migrations/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/contenttypes/models.py,sha256=VKXWweIQQ6eX88YX96nlcMo9ESaW7p_wUPJSalGInsc,6844
+django/contrib/contenttypes/prefetch.py,sha256=cORwKClKS-wzGrmRj2BlSBuuJz6iRBWOVl4tBYHRrtA,1358
+django/contrib/contenttypes/views.py,sha256=HBoIbNpgHTQN5pH8mul77UMEMZHbbkEH_Qdln-XFgd0,3549
+django/contrib/flatpages/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/flatpages/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/flatpages/__pycache__/admin.cpython-312.pyc,,
+django/contrib/flatpages/__pycache__/apps.cpython-312.pyc,,
+django/contrib/flatpages/__pycache__/forms.cpython-312.pyc,,
+django/contrib/flatpages/__pycache__/middleware.cpython-312.pyc,,
+django/contrib/flatpages/__pycache__/models.cpython-312.pyc,,
+django/contrib/flatpages/__pycache__/sitemaps.cpython-312.pyc,,
+django/contrib/flatpages/__pycache__/urls.cpython-312.pyc,,
+django/contrib/flatpages/__pycache__/views.cpython-312.pyc,,
+django/contrib/flatpages/admin.py,sha256=ynemOSDgvKoCfRFLXZrPwj27U0mPUXmxdrue7SOZeqQ,701
+django/contrib/flatpages/apps.py,sha256=_OlaDxWbMrUmFNCS4u-RnBsg67rCWs8Qzh_c58wvtXA,252
+django/contrib/flatpages/forms.py,sha256=r9yUG_-zAnI7Ubr836aiWgScYpKxHhJbNLhHRkZQOzY,2492
+django/contrib/flatpages/locale/af/LC_MESSAGES/django.mo,sha256=AG2eKl6o50fG3wWYS7D4-m3gWi9_yfPwEHp-HjB4Sr8,2282
+django/contrib/flatpages/locale/af/LC_MESSAGES/django.po,sha256=EVgUOspHqS4FuFggANzWpyQEutGV4kSx2zUWoOjBF9w,2459
+django/contrib/flatpages/locale/ar/LC_MESSAGES/django.mo,sha256=dBHaqsaKH9QOIZ0h2lIDph8l9Bv2UAcD-Hr9TAxj8Ac,2636
+django/contrib/flatpages/locale/ar/LC_MESSAGES/django.po,sha256=-0ZdfA-sDU8fOucgT2Ow1iM3QnRMuQeslMOSwYhAH9M,2958
+django/contrib/flatpages/locale/ar_DZ/LC_MESSAGES/django.mo,sha256=jp6sS05alESJ4-SbEIf574UPVcbllAd_J-FW802lGyk,2637
+django/contrib/flatpages/locale/ar_DZ/LC_MESSAGES/django.po,sha256=yezpjWcROwloS08TEMo9oPXDKS1mfFE9NYI66FUuLaA,2799
+django/contrib/flatpages/locale/ast/LC_MESSAGES/django.mo,sha256=4SEsEE2hIZJwQUNs8jDgN6qVynnUYJUIE4w-usHKA6M,924
+django/contrib/flatpages/locale/ast/LC_MESSAGES/django.po,sha256=5UlyS59bVo1lccM6ZgdYSgHe9NLt_WeOdXX-swLKubU,1746
+django/contrib/flatpages/locale/az/LC_MESSAGES/django.mo,sha256=s3YhszIU5rdigUVVPB3Jpfn3jbH5L1NXWXky_Q3slvY,2378
+django/contrib/flatpages/locale/az/LC_MESSAGES/django.po,sha256=tDALtASG8n7uaJT7yFsM-rz7FN5rONXlCKqCQIrIcPY,2707
+django/contrib/flatpages/locale/be/LC_MESSAGES/django.mo,sha256=mOQlbfwwIZiwWCrFStwag2irCwsGYsXIn6wZDsPRvyA,2978
+django/contrib/flatpages/locale/be/LC_MESSAGES/django.po,sha256=wlIfhun5Jd6gxbkmmYPSIy_tzPVmSu4CjMwPzBNnvpo,3161
+django/contrib/flatpages/locale/bg/LC_MESSAGES/django.mo,sha256=9Un5mKtsAuNeYWFQKFkIyCpQquE6qVD3zIrFoq8sCDI,2802
+django/contrib/flatpages/locale/bg/LC_MESSAGES/django.po,sha256=Vr6d-9XjgK4_eXdWY3FEpdTlCEGgbCv93bLGyMTE9hs,3104
+django/contrib/flatpages/locale/bn/LC_MESSAGES/django.mo,sha256=2oK2Rm0UtAI7QFRwpUR5aE3-fOltE6kTilsTbah737Y,2988
+django/contrib/flatpages/locale/bn/LC_MESSAGES/django.po,sha256=QrbX69iqXOD6oByLcgPkD1QzAkfthpfTjezIFQ-6kVg,3172
+django/contrib/flatpages/locale/br/LC_MESSAGES/django.mo,sha256=SKbykdilX_NcpkVi_lHF8LouB2G49ZAzdF09xw49ERc,2433
+django/contrib/flatpages/locale/br/LC_MESSAGES/django.po,sha256=O_mwrHIiEwV4oB1gZ7Yua4nVKRgyIf3j5UtedZWAtwk,2783
+django/contrib/flatpages/locale/bs/LC_MESSAGES/django.mo,sha256=bd7ID7OsEhp57JRw_TXoTwsVQNkFYiR_sxSkgi4WvZU,1782
+django/contrib/flatpages/locale/bs/LC_MESSAGES/django.po,sha256=IyFvI5mL_qesEjf6NO1nNQbRHhCAZQm0UhIpmGjrSwQ,2233
+django/contrib/flatpages/locale/ca/LC_MESSAGES/django.mo,sha256=GcMVbg4i5zKCd2Su7oN30WVJN7Q9K7FsFifgTB8jDPI,2237
+django/contrib/flatpages/locale/ca/LC_MESSAGES/django.po,sha256=-aJHSbWPVyNha_uF6R35Q6yn4-Hse3jTInr9jtaxKOI,2631
+django/contrib/flatpages/locale/ckb/LC_MESSAGES/django.mo,sha256=ds26zJRsUHDNdhoUJ8nsLtBdKDhN29Kb51wNiB8Llgo,2716
+django/contrib/flatpages/locale/ckb/LC_MESSAGES/django.po,sha256=jqqMYjrplyX8jtyBLd1ObMEwoFmaETmNXrO3tg2S0BY,2918
+django/contrib/flatpages/locale/cs/LC_MESSAGES/django.mo,sha256=8nwep22P86bMCbW7sj4n0BMGl_XaJIJV0fjnVp-_dqY,2340
+django/contrib/flatpages/locale/cs/LC_MESSAGES/django.po,sha256=1agUeRthwpam1UvZY4vRnZtLLbiop75IEXb6ul_e3mg,2611
+django/contrib/flatpages/locale/cy/LC_MESSAGES/django.mo,sha256=zr_2vsDZsrby3U8AmvlJMU3q1U_4IrrTmz6oS29OWtQ,2163
+django/contrib/flatpages/locale/cy/LC_MESSAGES/django.po,sha256=E_NC_wtuhWKYKB3YvYGB9ccJgKI3AfIZlB2HpXSyOsk,2370
+django/contrib/flatpages/locale/da/LC_MESSAGES/django.mo,sha256=nALoI50EvFPa4f3HTuaHUHATF1zHMjo4v5zcHj4n6sA,2277
+django/contrib/flatpages/locale/da/LC_MESSAGES/django.po,sha256=j4dpnreB7LWdZO7Drj7E9zBwFx_Leuj7ZLyEPi-ccAQ,2583
+django/contrib/flatpages/locale/de/LC_MESSAGES/django.mo,sha256=I4CHFzjYM_Wd-vuIYOMf8E58ntOgkLmgOAg35Chdz3s,2373
+django/contrib/flatpages/locale/de/LC_MESSAGES/django.po,sha256=P6tPVPumP9JwBIv-XXi1QQYJyj1PY3OWoM4yOAmgTRE,2592
+django/contrib/flatpages/locale/dsb/LC_MESSAGES/django.mo,sha256=oTILSe5teHa9XTYWoamstpyPu02yb_xo8S0AtkP7WP8,2391
+django/contrib/flatpages/locale/dsb/LC_MESSAGES/django.po,sha256=1xD2aH5alerranvee6QLZqgxDVXxHThXCHR4kOJAV48,2576
+django/contrib/flatpages/locale/el/LC_MESSAGES/django.mo,sha256=LQ8qIGwzoKwewtLz_1NhnhEeR4dPx2rrQ_hAN4BF6Og,2864
+django/contrib/flatpages/locale/el/LC_MESSAGES/django.po,sha256=gbLO52fcZK7LoG5Rget2Aq5PTFoz467ackXpSsR81kY,3221
+django/contrib/flatpages/locale/en/LC_MESSAGES/django.mo,sha256=U0OV81NfbuNL9ctF-gbGUG5al1StqN-daB-F-gFBFC8,356
+django/contrib/flatpages/locale/en/LC_MESSAGES/django.po,sha256=0bNWKiu-1MkHFJ_UWrCLhp9ENr-pHzBz1lkhBkkrhJM,2169
+django/contrib/flatpages/locale/en_AU/LC_MESSAGES/django.mo,sha256=dTt7KtwiEyMEKYVzkPSqs6VS0CiUfK7ISz2c6rV2erA,2210
+django/contrib/flatpages/locale/en_AU/LC_MESSAGES/django.po,sha256=_V4RTf0JtmyU7DRQv7jIwtPJs05KA2THPid5nKQ0ego,2418
+django/contrib/flatpages/locale/en_GB/LC_MESSAGES/django.mo,sha256=7zyXYOsqFkUGxclW-VPPxrQTZKDuiYQ7MQJy4m8FClo,1989
+django/contrib/flatpages/locale/en_GB/LC_MESSAGES/django.po,sha256=oHrBd6lVnO7-SdnO-Taa7iIyiqp_q2mQZjkuuU3Qa_s,2232
+django/contrib/flatpages/locale/eo/LC_MESSAGES/django.mo,sha256=W8TkkQkV58oOvFdKCPAyoQNyCxSmfErwik1U8a_W5nE,2333
+django/contrib/flatpages/locale/eo/LC_MESSAGES/django.po,sha256=e54WOtIcIQLjB4bJGol51z6d6dwLBiiJN2k-nrTQlaI,2750
+django/contrib/flatpages/locale/es/LC_MESSAGES/django.mo,sha256=9Q7Qf1eSPvAfPTZSGWq7QMWrROY-CnpUkeRpiH8rpJw,2258
+django/contrib/flatpages/locale/es/LC_MESSAGES/django.po,sha256=3vGZ3uVCyWnIkDSUt6DMMOqyphv3EQteTPLx7e9J_sU,2663
+django/contrib/flatpages/locale/es_AR/LC_MESSAGES/django.mo,sha256=bUnFDa5vpxl27kn2ojTbNaCmwRkBCH-z9zKXAvXe3Z0,2275
+django/contrib/flatpages/locale/es_AR/LC_MESSAGES/django.po,sha256=vEg3wjL_7Ee-PK4FZTaGRCXFscthkoH9szJ7H01K8w8,2487
+django/contrib/flatpages/locale/es_CO/LC_MESSAGES/django.mo,sha256=jt8wzeYky5AEnoNuAv8W4nGgd45XsMbpEdRuLnptr3U,2140
+django/contrib/flatpages/locale/es_CO/LC_MESSAGES/django.po,sha256=xrbAayPoxT7yksXOGPb-0Nc-4g14UmWANaKTD4ItAFA,2366
+django/contrib/flatpages/locale/es_MX/LC_MESSAGES/django.mo,sha256=Y5IOKRzooJHIhJzD9q4PKOe39Z4Rrdz8dBKuvmGkqWU,2062
+django/contrib/flatpages/locale/es_MX/LC_MESSAGES/django.po,sha256=Y-EXhw-jISttA9FGMz7gY_kB-hQ3wEyKEaOc2gu2hKQ,2246
+django/contrib/flatpages/locale/es_VE/LC_MESSAGES/django.mo,sha256=EI6WskepXUmbwCPBNFKqLGNcWFVZIbvXayOHxOCLZKo,2187
+django/contrib/flatpages/locale/es_VE/LC_MESSAGES/django.po,sha256=ipG6a0A2d0Pyum8GcknA-aNExVLjSyuUqbgHM9VdRQo,2393
+django/contrib/flatpages/locale/et/LC_MESSAGES/django.mo,sha256=zriqETEWD-DDPiNzXgAzgEhjvPAaTo7KBosyvBebyc0,2233
+django/contrib/flatpages/locale/et/LC_MESSAGES/django.po,sha256=tMuITUlzy6LKJh3X3CxssFpTQogg8OaGHlKExzjwyOI,2525
+django/contrib/flatpages/locale/eu/LC_MESSAGES/django.mo,sha256=FoKazUkuPpDgsEEI6Gm-xnZYVHtxILiy6Yzvnu8y-L0,2244
+django/contrib/flatpages/locale/eu/LC_MESSAGES/django.po,sha256=POPFB5Jd8sE9Z_ivYSdnet14u-aaXneTUNDMuOrJy00,2478
+django/contrib/flatpages/locale/fa/LC_MESSAGES/django.mo,sha256=2rA7-OR8lQbl_ZhlAC4cmHEmQ9mwxnA8q5M-gx3NmVQ,2612
+django/contrib/flatpages/locale/fa/LC_MESSAGES/django.po,sha256=_-yKW2xIN9XSXEwZTdkhEpRHJoacN8f56D3AkCvlFs0,3006
+django/contrib/flatpages/locale/fi/LC_MESSAGES/django.mo,sha256=VsQdof8hE_AKQGS-Qp82o8PTN_7NxxEdxelGenIAE-8,2256
+django/contrib/flatpages/locale/fi/LC_MESSAGES/django.po,sha256=RL7eruNkgDjr1b3cF2yCqeM8eDKHwAqF6h8hYuxl6R4,2552
+django/contrib/flatpages/locale/fr/LC_MESSAGES/django.mo,sha256=ZqD4O3_Ny8p5i6_RVHlANCnPiowMd19Qi_LOPfTHav4,2430
+django/contrib/flatpages/locale/fr/LC_MESSAGES/django.po,sha256=liAoOgT2CfpANL_rYzyzsET1MhsM19o7wA2GBnoDvMA,2745
+django/contrib/flatpages/locale/fy/LC_MESSAGES/django.mo,sha256=DRsFoZKo36F34XaiQg_0KUOr3NS_MG3UHptzOI4uEAU,476
+django/contrib/flatpages/locale/fy/LC_MESSAGES/django.po,sha256=9JIrRVsPL1m0NPN6uHiaAYxJXHp5IghZmQhVSkGo5g8,1523
+django/contrib/flatpages/locale/ga/LC_MESSAGES/django.mo,sha256=f4552jyACX8w17CU4QAwoPmj05A8nNaTiy-2cbmegSk,2351
+django/contrib/flatpages/locale/ga/LC_MESSAGES/django.po,sha256=oPLJhdAZd2zwKo4o12vDJU-7MQ_CiC9wqszFHmV7LXo,2613
+django/contrib/flatpages/locale/gd/LC_MESSAGES/django.mo,sha256=KbaTL8kF9AxDBLDQWlxcP5hZ4zWnbkvY0l2xRKZ9Dg0,2469
+django/contrib/flatpages/locale/gd/LC_MESSAGES/django.po,sha256=DVY_1R0AhIaI1qXIeRej3XSHMtlimeKNUwzFjc4OmwA,2664
+django/contrib/flatpages/locale/gl/LC_MESSAGES/django.mo,sha256=e8hfOxRyLtCsvdd1FVGuI_dnsptVhfW_O9KyuPT0ENk,2256
+django/contrib/flatpages/locale/gl/LC_MESSAGES/django.po,sha256=YqyR8qnKho8jK03igqPv9KlJw5yVIIDCAGc5z2QxckE,2583
+django/contrib/flatpages/locale/he/LC_MESSAGES/django.mo,sha256=PbypHBhT3W_rp37u8wvaCJdtYB4IP-UeE02VUvSHPf0,2517
+django/contrib/flatpages/locale/he/LC_MESSAGES/django.po,sha256=f7phCRqJPFL7CsuSE1xg9xlaBoOpdd-0zoTYotff29M,2827
+django/contrib/flatpages/locale/hi/LC_MESSAGES/django.mo,sha256=w29ukoF48C7iJ6nE045YoWi7Zcrgu_oXoxT-r6gcQy8,2770
+django/contrib/flatpages/locale/hi/LC_MESSAGES/django.po,sha256=nXq5y1FqMGVhpXpQVdV3uU5JcUtBc2BIrf-n__C2q30,3055
+django/contrib/flatpages/locale/hr/LC_MESSAGES/django.mo,sha256=Mt4gpBuUXvcBl8K714ls4PimHQqee82jFxY1BEAYQOE,2188
+django/contrib/flatpages/locale/hr/LC_MESSAGES/django.po,sha256=ZbUMJY6a-os-xDmcDCJNrN4-YqRe9b_zJ4V5gt2wlGI,2421
+django/contrib/flatpages/locale/hsb/LC_MESSAGES/django.mo,sha256=Pk44puT-3LxzNdGYxMALWpFdw6j6W0G-dWwAfv8sopI,2361
+django/contrib/flatpages/locale/hsb/LC_MESSAGES/django.po,sha256=mhnBXgZSK19E4JU8p2qzqyZqozSzltK-3iY5glr9WG8,2538
+django/contrib/flatpages/locale/hu/LC_MESSAGES/django.mo,sha256=rZxICk460iWBubNq53g9j2JfKIw2W7OqyPG5ylGE92s,2363
+django/contrib/flatpages/locale/hu/LC_MESSAGES/django.po,sha256=DDP7OLBkNbWXr-wiulmQgG461qAubJ8VrfCCXbyPk2g,2700
+django/contrib/flatpages/locale/hy/LC_MESSAGES/django.mo,sha256=qocNtyLcQpjmGqQ130VGjJo-ruaOCtfmZehS9If_hWk,2536
+django/contrib/flatpages/locale/hy/LC_MESSAGES/django.po,sha256=WD8ohMnsaUGQItyqQmS46d76tKgzhQ17X_tGevqULO0,2619
+django/contrib/flatpages/locale/ia/LC_MESSAGES/django.mo,sha256=bochtCPlc268n0WLF0bJtUUT-XveZLPOZPQUetnOWfU,500
+django/contrib/flatpages/locale/ia/LC_MESSAGES/django.po,sha256=gOJ850e8sFcjR2G79zGn3_0-9-KSy591i7ketBRFjyw,1543
+django/contrib/flatpages/locale/id/LC_MESSAGES/django.mo,sha256=2kRHbcmfo09pIEuBb8q5AOkgC0sISJrAG37Rb5F0vts,2222
+django/contrib/flatpages/locale/id/LC_MESSAGES/django.po,sha256=1avfX88CkKMh2AjzN7dxRwj9pgohIBgKE0aXB_shZfc,2496
+django/contrib/flatpages/locale/io/LC_MESSAGES/django.mo,sha256=N8R9dXw_cnBSbZtwRbX6Tzw5XMr_ZdRkn0UmsQFDTi4,464
+django/contrib/flatpages/locale/io/LC_MESSAGES/django.po,sha256=_pJveonUOmMu3T6WS-tV1OFh-8egW0o7vU3i5YqgChA,1511
+django/contrib/flatpages/locale/is/LC_MESSAGES/django.mo,sha256=lFtP1N5CN-x2aMtBNpB6j5HsZYZIZYRm6Y-22gNe1Ek,2229
+django/contrib/flatpages/locale/is/LC_MESSAGES/django.po,sha256=9e132zDa-n6IZxB8jO5H8I0Wr7ubYxrFEMBYj2W49vI,2490
+django/contrib/flatpages/locale/it/LC_MESSAGES/django.mo,sha256=oOEG327VGpi0K5P2UOQgQa39ln15t0lAz2Z36MIQQAc,2209
+django/contrib/flatpages/locale/it/LC_MESSAGES/django.po,sha256=ar8i-bTtAKhiXLULCsKMddpmYBjKyg2paYxBI6ImY1s,2526
+django/contrib/flatpages/locale/ja/LC_MESSAGES/django.mo,sha256=Qax3t7FFRonMrszVEeiyQNMtYyWQB3dmOeeIklEmhAg,2469
+django/contrib/flatpages/locale/ja/LC_MESSAGES/django.po,sha256=N6PBvnXLEWELKTx8nHm5KwydDuFFKq5pn6AIHsBSM5M,2848
+django/contrib/flatpages/locale/ka/LC_MESSAGES/django.mo,sha256=R4OSbZ-lGxMdeJYsaXVXpo6-KSZWeKPuErKmEsUvEQE,3022
+django/contrib/flatpages/locale/ka/LC_MESSAGES/django.po,sha256=TWKtkRamM6YD-4WMoqfZ7KY-ZPs5ny7G82Wst6vQRko,3306
+django/contrib/flatpages/locale/kk/LC_MESSAGES/django.mo,sha256=lMPryzUQr21Uy-NAGQhuIZjHz-4LfBHE_zxEc2_UPaw,2438
+django/contrib/flatpages/locale/kk/LC_MESSAGES/django.po,sha256=3y9PbPw-Q8wM7tCq6u3KeYUT6pfTqcQwlNlSxpAXMxQ,2763
+django/contrib/flatpages/locale/km/LC_MESSAGES/django.mo,sha256=FYRfhNSqBtavYb10sHZNfB-xwLwdZEfVEzX116nBs-k,1942
+django/contrib/flatpages/locale/km/LC_MESSAGES/django.po,sha256=d2AfbR78U0rJqbFmJQvwiBl_QvYIeSwsPKEnfYM4JZA,2471
+django/contrib/flatpages/locale/kn/LC_MESSAGES/django.mo,sha256=n5HCZEPYN_YIVCXrgA1qhxvfhZtDbhfiannJy5EkHkI,1902
+django/contrib/flatpages/locale/kn/LC_MESSAGES/django.po,sha256=-CHwu13UuE2-Qg6poG949I_dw3YiPI9ZhMh5h2vP4xw,2443
+django/contrib/flatpages/locale/ko/LC_MESSAGES/django.mo,sha256=M-IInVdIH24ORarb-KgY60tEorJZgrThDfJQOxW-S0c,2304
+django/contrib/flatpages/locale/ko/LC_MESSAGES/django.po,sha256=DjAtWVAN_fwOvZb-7CUSLtO8WN0Sr08z3jQLNqZ98wY,2746
+django/contrib/flatpages/locale/ky/LC_MESSAGES/django.mo,sha256=WmdWR6dRgmJ-nqSzFDUETypf373fj62igDVHC4ww7hQ,2667
+django/contrib/flatpages/locale/ky/LC_MESSAGES/django.po,sha256=0XDF6CjQTGkuaHADytG95lpFRVndlf_136q0lrQiU1U,2907
+django/contrib/flatpages/locale/lb/LC_MESSAGES/django.mo,sha256=Wkvlh5L_7CopayfNM5Z_xahmyVje1nYOBfQJyqucI_0,502
+django/contrib/flatpages/locale/lb/LC_MESSAGES/django.po,sha256=gGeTuniu3ZZ835t9HR-UtwCcd2s_Yr7ihIUm3jgQ7Y0,1545
+django/contrib/flatpages/locale/lt/LC_MESSAGES/django.mo,sha256=es6xV6X1twtqhIMkV-MByA7KZ5SoVsrx5Qh8BuzJS0Q,2506
+django/contrib/flatpages/locale/lt/LC_MESSAGES/django.po,sha256=T__44veTC_u4hpPvkLekDOWfntXYAMzCd5bffRtGxWA,2779
+django/contrib/flatpages/locale/lv/LC_MESSAGES/django.mo,sha256=RJbVUR8qS8iLL3dD5x1TOau4hcdscHUJBfxge3p3dsM,2359
+django/contrib/flatpages/locale/lv/LC_MESSAGES/django.po,sha256=M6GT6S-5-7__RtSbJ9oqkIlxfU3FIWMlGAQ03NEfcKo,2610
+django/contrib/flatpages/locale/mk/LC_MESSAGES/django.mo,sha256=55H8w6fB-B-RYlKKkGw3fg2m-djxUoEp_XpupK-ZL70,2699
+django/contrib/flatpages/locale/mk/LC_MESSAGES/django.po,sha256=OhHJ5OVWb0jvNaOB3wip9tSIZ1yaPPLkfQR--uUEyUI,2989
+django/contrib/flatpages/locale/ml/LC_MESSAGES/django.mo,sha256=VMMeOujp5fiLzrrbDeH24O2qKBPUkvI_YTSPH-LQjZc,3549
+django/contrib/flatpages/locale/ml/LC_MESSAGES/django.po,sha256=KR2CGnZ1sVuRzSGaPj5IlspoAkVuVEdf48XsAzt1se0,3851
+django/contrib/flatpages/locale/mn/LC_MESSAGES/django.mo,sha256=tqwROY6D-bJ4gbDQIowKXfuLIIdCWksGwecL2sj_wco,2776
+django/contrib/flatpages/locale/mn/LC_MESSAGES/django.po,sha256=jqiBpFLXlptDyU4F8ZWbP61S4APSPh0-nuTpNOejA6c,3003
+django/contrib/flatpages/locale/mr/LC_MESSAGES/django.mo,sha256=fuDy9vFLn5Mb3wVNUg8IvLyTwmyPr3M-GThzgkphJjg,2040
+django/contrib/flatpages/locale/mr/LC_MESSAGES/django.po,sha256=L_1vnLh4AjoaXdb4p_XfDnbKAAWkdQFSpE_8cKGZSm8,2593
+django/contrib/flatpages/locale/ms/LC_MESSAGES/django.mo,sha256=5t_67bMQhux6v6SSWqHfzzCgc6hm3olxgHAsKOMGGZU,2184
+django/contrib/flatpages/locale/ms/LC_MESSAGES/django.po,sha256=-ZzZ8lfAglGkO_BRYz1lRlywxaF1zZ28-Xv74O2nT04,2336
+django/contrib/flatpages/locale/my/LC_MESSAGES/django.mo,sha256=OcbiA7tJPkyt_WNrqyvoFjHt7WL7tMGHV06AZSxzkho,507
+django/contrib/flatpages/locale/my/LC_MESSAGES/django.po,sha256=EPWE566Vn7tax0PYUKq93vtydvmt-A4ooIau9Cwcdfc,1550
+django/contrib/flatpages/locale/nb/LC_MESSAGES/django.mo,sha256=L_XICESZ0nywkk1dn6RqzdUbFTcR92ju-zHCT1g3iEg,2208
+django/contrib/flatpages/locale/nb/LC_MESSAGES/django.po,sha256=ZtcBVD0UqIcsU8iLu5a2wnHLqu5WRLLboVFye2IuQew,2576
+django/contrib/flatpages/locale/ne/LC_MESSAGES/django.mo,sha256=gDZKhcku1NVlSs5ZPPupc7RI8HOF7ex0R4Rs8tMmrYE,1500
+django/contrib/flatpages/locale/ne/LC_MESSAGES/django.po,sha256=GWlzsDaMsJkOvw2TidJOEf1Fvxx9WxGdGAtfZIHkHwk,2178
+django/contrib/flatpages/locale/nl/LC_MESSAGES/django.mo,sha256=_yV_-SYYjpbo-rOHp8NlRzVHFPOSrfS-ndHOEJ9JP3Y,2231
+django/contrib/flatpages/locale/nl/LC_MESSAGES/django.po,sha256=xUuxx2b4ZTCA-1RIdoMqykLgjLLkmpO4ur1Vh93IITU,2669
+django/contrib/flatpages/locale/nn/LC_MESSAGES/django.mo,sha256=sHkuZneEWo1TItSlarlnOUR7ERjc76bJfHUcuFgd9mQ,2256
+django/contrib/flatpages/locale/nn/LC_MESSAGES/django.po,sha256=MpI9qkWqj4rud__xetuqCP-eFHUgMYJpfBhDnWRKPK4,2487
+django/contrib/flatpages/locale/os/LC_MESSAGES/django.mo,sha256=cXGTA5M229UFsgc7hEiI9vI9SEBrNQ8d3A0XrtazO6w,2329
+django/contrib/flatpages/locale/os/LC_MESSAGES/django.po,sha256=m-qoTiKePeFviKGH1rJRjZRH-doJ2Fe4DcZ6W52rG8s,2546
+django/contrib/flatpages/locale/pa/LC_MESSAGES/django.mo,sha256=69_ZsZ4nWlQ0krS6Mx3oL6c4sP5W9mx-yAmOhZOnjPU,903
+django/contrib/flatpages/locale/pa/LC_MESSAGES/django.po,sha256=N6gkoRXP5MefEnjywzRiE3aeU6kHQ0TUG6IGdLV7uww,1780
+django/contrib/flatpages/locale/pl/LC_MESSAGES/django.mo,sha256=5M5-d-TOx2WHlD6BCw9BYIU6bYrSR0Wlem89ih5k3Pc,2448
+django/contrib/flatpages/locale/pl/LC_MESSAGES/django.po,sha256=oKeeo-vNfPaCYVUbufrJZGk0vsgzAE0kLQOTF5qHAK4,2793
+django/contrib/flatpages/locale/pt/LC_MESSAGES/django.mo,sha256=xD2pWdS3XMg7gAqBrUBmCEXFsOzEs0Npe8AJnlpueRY,2115
+django/contrib/flatpages/locale/pt/LC_MESSAGES/django.po,sha256=-K2jipPUWjXpfSPq3upnC_bvtaRAeOw0OLRFv03HWFY,2326
+django/contrib/flatpages/locale/pt_BR/LC_MESSAGES/django.mo,sha256=YGyagSFIc-ssFN8bnqVRce1_PsybvLmI8RVCygjow8E,2291
+django/contrib/flatpages/locale/pt_BR/LC_MESSAGES/django.po,sha256=pFA8RPNefZpuhbxBHLt9KrI2RiHxct5V-DnZA-XqBv0,2942
+django/contrib/flatpages/locale/ro/LC_MESSAGES/django.mo,sha256=oS3MXuRh2USyLOMrMH0WfMSFpgBcZWfrbCrovYgbONo,2337
+django/contrib/flatpages/locale/ro/LC_MESSAGES/django.po,sha256=UNKGNSZKS92pJDjxKDLqVUW87DKCWP4_Q51xS16IZl0,2632
+django/contrib/flatpages/locale/ru/LC_MESSAGES/django.mo,sha256=AACtHEQuytEohUZVgk-o33O7rJTFAluq22VJOw5JqII,2934
+django/contrib/flatpages/locale/ru/LC_MESSAGES/django.po,sha256=H6JOPAXNxji1oni9kfga_hNZevodStpEl0O6cDnZ148,3312
+django/contrib/flatpages/locale/sk/LC_MESSAGES/django.mo,sha256=P1192D_B2kDQ6nF_tGEW7WCoTodB3_9rMTaqEQSMO4E,2353
+django/contrib/flatpages/locale/sk/LC_MESSAGES/django.po,sha256=--_DaPB_aSZHn_uxzmCpITO7VPCpP4Nq2rdQGgN14r8,2638
+django/contrib/flatpages/locale/sl/LC_MESSAGES/django.mo,sha256=kOrhhBdM9nbQbCLN49bBn23hCrzpAPrfKvPs4QMHgvo,2301
+django/contrib/flatpages/locale/sl/LC_MESSAGES/django.po,sha256=oyTrOVH0v76Ttc93qfeyu3FHcWLh3tTiz2TefGkmoq4,2621
+django/contrib/flatpages/locale/sq/LC_MESSAGES/django.mo,sha256=Jv2sebdAM6CfiLzgi1b7rHo5hp-6_BFeeMQ4_BwYpjk,2328
+django/contrib/flatpages/locale/sq/LC_MESSAGES/django.po,sha256=Xm87FbWaQ1JGhhGx8uvtqwUltkTkwk5Oysagu8qIPUA,2548
+django/contrib/flatpages/locale/sr/LC_MESSAGES/django.mo,sha256=p--v7bpD8Pp6zeP3cdh8fnfC8g2nuhbzGJTdN9eoE58,2770
+django/contrib/flatpages/locale/sr/LC_MESSAGES/django.po,sha256=jxcyMN2Qh_osmo4Jf_6QUC2vW3KVKt1BupDWMMZyAXA,3071
+django/contrib/flatpages/locale/sr_Latn/LC_MESSAGES/django.mo,sha256=3N4mGacnZj0tI5tFniLqC2LQCPSopDEM1SGaw5N1bsw,2328
+django/contrib/flatpages/locale/sr_Latn/LC_MESSAGES/django.po,sha256=od7r3dPbZ7tRAJUW80Oe-nm_tHcmIiG6b2OZMsFg53s,2589
+django/contrib/flatpages/locale/sv/LC_MESSAGES/django.mo,sha256=1pFmNWiExWo5owNijZHZb8-Tbd0nYPqqvTmIitcFPbY,2252
+django/contrib/flatpages/locale/sv/LC_MESSAGES/django.po,sha256=l3anvdgLQJzYehCalwr1AAh8e-hRKrL_bSNwmkfgbbc,2613
+django/contrib/flatpages/locale/sw/LC_MESSAGES/django.mo,sha256=Lhf99AGmazKJHzWk2tkGrMInoYOq0mtdCd8SGblnVCQ,1537
+django/contrib/flatpages/locale/sw/LC_MESSAGES/django.po,sha256=cos3eahuznpTfTdl1Vj_07fCOSYE8C9CRYHCBLYZrVw,1991
+django/contrib/flatpages/locale/ta/LC_MESSAGES/django.mo,sha256=nNuoOX-FPAmTvM79o7colM4C7TtBroTFxYtETPPatcQ,1945
+django/contrib/flatpages/locale/ta/LC_MESSAGES/django.po,sha256=XE4SndPZPLf1yXGl5xQSb0uor4OE8CKJ0EIXBRDA3qU,2474
+django/contrib/flatpages/locale/te/LC_MESSAGES/django.mo,sha256=bMxhDMTQc_WseqoeqJMCSNy71o4U5tJZYgD2G0p-jD0,1238
+django/contrib/flatpages/locale/te/LC_MESSAGES/django.po,sha256=tmUWOrAZ98B9T6Cai8AgLCfb_rLeoPVGjDTgdsMOY1Y,2000
+django/contrib/flatpages/locale/tg/LC_MESSAGES/django.mo,sha256=gpzjf_LxwWX6yUrcUfNepK1LGez6yvnuYhmfULDPZ6E,2064
+django/contrib/flatpages/locale/tg/LC_MESSAGES/django.po,sha256=lZFLes8BWdJ-VbczHFDWCSKhKg0qmmk10hTjKcBNr5o,2572
+django/contrib/flatpages/locale/th/LC_MESSAGES/django.mo,sha256=mct17_099pUn0aGuHu8AlZG6UqdKDpYLojqGYDLRXRg,2698
+django/contrib/flatpages/locale/th/LC_MESSAGES/django.po,sha256=PEcRx5AtXrDZvlNGWFH-0arroD8nZbutdJBe8_I02ag,2941
+django/contrib/flatpages/locale/tk/LC_MESSAGES/django.mo,sha256=_AfI4FH0jkeeCDgujfkx4xHMGSwGi5fs9iqr3HLUVVs,835
+django/contrib/flatpages/locale/tk/LC_MESSAGES/django.po,sha256=28Af2gU6Wmo2DvjxLZrpbXq0HBFrcP7yzfh5IlL4DJg,1881
+django/contrib/flatpages/locale/tr/LC_MESSAGES/django.mo,sha256=pPNGylfG8S0iBI4ONZbky3V2Q5AG-M1njp27tFrhhZc,2290
+django/contrib/flatpages/locale/tr/LC_MESSAGES/django.po,sha256=0ULZu3Plp8H9zdirHy3MSduJ_QRdpoaaivf3bL9MCwA,2588
+django/contrib/flatpages/locale/tt/LC_MESSAGES/django.mo,sha256=9RfCKyn0ZNYsqLvFNmY18xVMl7wnmDq5uXscrsFfupk,2007
+django/contrib/flatpages/locale/tt/LC_MESSAGES/django.po,sha256=SUwalSl8JWI9tuDswmnGT8SjuWR3DQGND9roNxJtH1o,2402
+django/contrib/flatpages/locale/udm/LC_MESSAGES/django.mo,sha256=7KhzWgskBlHmi-v61Ax9fjc3NBwHB17WppdNMuz-rEc,490
+django/contrib/flatpages/locale/udm/LC_MESSAGES/django.po,sha256=zidjP05Hx1OpXGqWEmF2cg9SFxASM4loOV85uW7zV5U,1533
+django/contrib/flatpages/locale/ug/LC_MESSAGES/django.mo,sha256=FL8P63c7BRO5hNABEzurk91v01ceRBhC1DJyjFJkiwg,2644
+django/contrib/flatpages/locale/ug/LC_MESSAGES/django.po,sha256=TxlRCGW-6fyxOO3YzAzKJa4utQp4NOOZ08YZxSit9E8,2774
+django/contrib/flatpages/locale/uk/LC_MESSAGES/django.mo,sha256=r2RZT8xQ1Gi9Yp0nnoNALqQ4zrEJ0JC7m26E5gSeq4g,3002
+django/contrib/flatpages/locale/uk/LC_MESSAGES/django.po,sha256=qcVizoTiKYc1c9KwSTwSALHgjjSGVY2oito_bBRLVTE,3405
+django/contrib/flatpages/locale/ur/LC_MESSAGES/django.mo,sha256=Li4gVdFoNOskGKAKiNuse6B2sz6ePGqGvZu7aGXMNy0,1976
+django/contrib/flatpages/locale/ur/LC_MESSAGES/django.po,sha256=hDasKiKrYov9YaNIHIpoooJo0Bzba___IuN2Hl6ofSc,2371
+django/contrib/flatpages/locale/vi/LC_MESSAGES/django.mo,sha256=FsFUi96oGTWGlZwM4qSMpuL1M2TAxsW51qO70TrybSM,1035
+django/contrib/flatpages/locale/vi/LC_MESSAGES/django.po,sha256=ITX3MWd7nlWPxTCoNPl22_OMLTt0rfvajGvTVwo0QC8,1900
+django/contrib/flatpages/locale/zh_Hans/LC_MESSAGES/django.mo,sha256=UTCQr9t2wSj6dYLK1ftpF8-pZ25dAMYLRE2wEUQva-o,2124
+django/contrib/flatpages/locale/zh_Hans/LC_MESSAGES/django.po,sha256=loi9RvOnrgFs4qp8FW4RGis7wgDzBBXuwha5pFfLRxY,2533
+django/contrib/flatpages/locale/zh_Hant/LC_MESSAGES/django.mo,sha256=INt9_smj4Zwo3hkn3kemuE85lfvwjUrIxbkIHa7Cd_E,2176
+django/contrib/flatpages/locale/zh_Hant/LC_MESSAGES/django.po,sha256=d9De9F9YWkc8YZt51Cg5Xtslwg04G0aRMqxTMAXqQI8,2477
+django/contrib/flatpages/middleware.py,sha256=aXeOeOkUmpdkGOyqZnkR-l1VrDQ161RWIWa3WPBhGac,784
+django/contrib/flatpages/migrations/0001_initial.py,sha256=4xhMsKaXOycsfo9O1QIuknS9wf7r0uVsshAJ7opeqsM,2408
+django/contrib/flatpages/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/flatpages/migrations/__pycache__/0001_initial.cpython-312.pyc,,
+django/contrib/flatpages/migrations/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/flatpages/models.py,sha256=3ugRRsDwB5C3GHOWvtOzjJl-y0yqqjYZBSOMt24QYuw,1764
+django/contrib/flatpages/sitemaps.py,sha256=CEhZOsLwv3qIJ1hs4eHlE_0AAtYjicb_yRzsstY19eg,584
+django/contrib/flatpages/templatetags/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/flatpages/templatetags/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/flatpages/templatetags/__pycache__/flatpages.cpython-312.pyc,,
+django/contrib/flatpages/templatetags/flatpages.py,sha256=QH-suzsoPIMSrgyHR9O8uOdmfIkBv_w3LM-hGfQvnU8,3552
+django/contrib/flatpages/urls.py,sha256=Rs37Ij192SOtSBjd4Lx9YtpINfEMg7XRY01dEOY8Rgg,179
+django/contrib/flatpages/views.py,sha256=H4LG7Janb6Dcn-zINLmp358hR60JigAKGzh4A4PMPaM,2724
+django/contrib/gis/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/gis/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/gis/__pycache__/apps.cpython-312.pyc,,
+django/contrib/gis/__pycache__/feeds.cpython-312.pyc,,
+django/contrib/gis/__pycache__/geoip2.cpython-312.pyc,,
+django/contrib/gis/__pycache__/geometry.cpython-312.pyc,,
+django/contrib/gis/__pycache__/measure.cpython-312.pyc,,
+django/contrib/gis/__pycache__/ptr.cpython-312.pyc,,
+django/contrib/gis/__pycache__/shortcuts.cpython-312.pyc,,
+django/contrib/gis/__pycache__/views.cpython-312.pyc,,
+django/contrib/gis/admin/__init__.py,sha256=bCUsC6Hh7hztchqRKuaiTgk3nL0B4H053bVII-olB7k,486
+django/contrib/gis/admin/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/gis/admin/__pycache__/options.cpython-312.pyc,,
+django/contrib/gis/admin/options.py,sha256=r60rycdAgcGSB21KQS_V0X78ulUjATYzws-JKLYd_lc,689
+django/contrib/gis/apps.py,sha256=dbAFKx9jj9_QdhdNfL5KCC47puH_ZTw098jsJFwDO9Y,417
+django/contrib/gis/db/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/gis/db/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/gis/db/backends/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/gis/db/backends/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/gis/db/backends/__pycache__/utils.cpython-312.pyc,,
+django/contrib/gis/db/backends/base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/gis/db/backends/base/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/gis/db/backends/base/__pycache__/adapter.cpython-312.pyc,,
+django/contrib/gis/db/backends/base/__pycache__/features.cpython-312.pyc,,
+django/contrib/gis/db/backends/base/__pycache__/models.cpython-312.pyc,,
+django/contrib/gis/db/backends/base/__pycache__/operations.cpython-312.pyc,,
+django/contrib/gis/db/backends/base/adapter.py,sha256=qbLG-sLB6EZ_sA6-E_uIClyp5E5hz9UQ-CsR3BWx8W8,592
+django/contrib/gis/db/backends/base/features.py,sha256=fF-AKB6__RjkxVRadNkOP7Av4wMaRGkXKybYV6ES2Gk,3718
+django/contrib/gis/db/backends/base/models.py,sha256=WqpmVLqK21m9J6k_N-SGPXq1VZMuNHafyB9xqxUwR4k,4009
+django/contrib/gis/db/backends/base/operations.py,sha256=_g_B-_AN1OVmarA3O8FdU7hnAgBCX0d4gvqalNRJAYg,6859
+django/contrib/gis/db/backends/mysql/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/gis/db/backends/mysql/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/gis/db/backends/mysql/__pycache__/base.cpython-312.pyc,,
+django/contrib/gis/db/backends/mysql/__pycache__/features.cpython-312.pyc,,
+django/contrib/gis/db/backends/mysql/__pycache__/introspection.cpython-312.pyc,,
+django/contrib/gis/db/backends/mysql/__pycache__/operations.cpython-312.pyc,,
+django/contrib/gis/db/backends/mysql/__pycache__/schema.cpython-312.pyc,,
+django/contrib/gis/db/backends/mysql/base.py,sha256=z75wKhm-e9JfRLCvgDq-iv9OqOjBBAS238JTTrWfHRQ,498
+django/contrib/gis/db/backends/mysql/features.py,sha256=dVRo3CuV8Zp5822h9l48nApiXyn3lCuXQV3vsRZKeao,866
+django/contrib/gis/db/backends/mysql/introspection.py,sha256=ZihcSzwN0f8iqKOYKMHuQ_MY41ERSswjP46dvCF0v68,1602
+django/contrib/gis/db/backends/mysql/operations.py,sha256=FLm31EQ4dH5p94SIMaIBlIOWR6QQf7gmD-T9vSA-Pkg,4796
+django/contrib/gis/db/backends/mysql/schema.py,sha256=taCGJ5sEe8GJqd4bi1ODGWFJFCjYJq7rWjMaFeN3GSM,3051
+django/contrib/gis/db/backends/oracle/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/gis/db/backends/oracle/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/gis/db/backends/oracle/__pycache__/adapter.cpython-312.pyc,,
+django/contrib/gis/db/backends/oracle/__pycache__/base.cpython-312.pyc,,
+django/contrib/gis/db/backends/oracle/__pycache__/features.cpython-312.pyc,,
+django/contrib/gis/db/backends/oracle/__pycache__/introspection.cpython-312.pyc,,
+django/contrib/gis/db/backends/oracle/__pycache__/models.cpython-312.pyc,,
+django/contrib/gis/db/backends/oracle/__pycache__/operations.cpython-312.pyc,,
+django/contrib/gis/db/backends/oracle/__pycache__/schema.cpython-312.pyc,,
+django/contrib/gis/db/backends/oracle/adapter.py,sha256=AjD0eMuptu8BqkE2LshTizkf5iv9ArYVP9PoOTHfNao,2066
+django/contrib/gis/db/backends/oracle/base.py,sha256=_7qhvEdbnrJQEKL51sg8YYu8kRYmQNAlBgNb2OUbBkw,507
+django/contrib/gis/db/backends/oracle/features.py,sha256=3yCDutKz4iX01eOjLf0CLe_cemMaRjDmH8ZKNy_Sbyk,1021
+django/contrib/gis/db/backends/oracle/introspection.py,sha256=fW9FTIW_yAQQZwk0LzdoTtj6QQpFN6fgUQzv8dCmFEo,1939
+django/contrib/gis/db/backends/oracle/models.py,sha256=AqtTfN04n3_3zYx79_nawy3CiIO47vqRq7MSiJ9-MaQ,2085
+django/contrib/gis/db/backends/oracle/operations.py,sha256=3-rl7MJQHEAYwpdGhvrgxWqoLubGqvE5pP6rxgsNWNg,8791
+django/contrib/gis/db/backends/oracle/schema.py,sha256=o7fa2jefeT0zajqkLtEwOnvtjuATwCiaIvpVnns4YR4,4271
+django/contrib/gis/db/backends/postgis/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/gis/db/backends/postgis/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/gis/db/backends/postgis/__pycache__/adapter.cpython-312.pyc,,
+django/contrib/gis/db/backends/postgis/__pycache__/base.cpython-312.pyc,,
+django/contrib/gis/db/backends/postgis/__pycache__/const.cpython-312.pyc,,
+django/contrib/gis/db/backends/postgis/__pycache__/features.cpython-312.pyc,,
+django/contrib/gis/db/backends/postgis/__pycache__/introspection.cpython-312.pyc,,
+django/contrib/gis/db/backends/postgis/__pycache__/models.cpython-312.pyc,,
+django/contrib/gis/db/backends/postgis/__pycache__/operations.cpython-312.pyc,,
+django/contrib/gis/db/backends/postgis/__pycache__/pgraster.cpython-312.pyc,,
+django/contrib/gis/db/backends/postgis/__pycache__/schema.cpython-312.pyc,,
+django/contrib/gis/db/backends/postgis/adapter.py,sha256=3ytnzyTAqB8rmczZE-CPePoG4Pf7lo7glBHdENba6rg,1981
+django/contrib/gis/db/backends/postgis/base.py,sha256=37t0_fDD4IeFsQrMrKoQRW01e8KJeXCSkbv5sOpreR8,5793
+django/contrib/gis/db/backends/postgis/const.py,sha256=ekJc9pvJwQ0tmxENkJsZFdP03uEUEneloR23SJcnTIc,2008
+django/contrib/gis/db/backends/postgis/features.py,sha256=qOEJLQTIC1YdlDoJkpLCiVQU4GAy0d9_Dneui7w41bM,455
+django/contrib/gis/db/backends/postgis/introspection.py,sha256=ihrNd_qHQ64DRjoaPj9-1a0y3H8Ko4gWbK2N5fDA3_g,3164
+django/contrib/gis/db/backends/postgis/models.py,sha256=DfKkmur-8lvr_cflDKE3pTV_vH3Wtxr4bSiXuwPIWhU,2003
+django/contrib/gis/db/backends/postgis/operations.py,sha256=TSta36rbN3HGGG40zTD42oY_e8fwIgwzXPRky8LLyjY,16576
+django/contrib/gis/db/backends/postgis/pgraster.py,sha256=eCa2y-v3qGLeNbFI4ERFj2UmqgYAE19nuL3SgDFmm0o,4588
+django/contrib/gis/db/backends/postgis/schema.py,sha256=dU-o1GQh2lPdiNYmBgd7QTnKq3L3JYqZck5pKn-BA0o,3020
+django/contrib/gis/db/backends/spatialite/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/gis/db/backends/spatialite/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/gis/db/backends/spatialite/__pycache__/adapter.cpython-312.pyc,,
+django/contrib/gis/db/backends/spatialite/__pycache__/base.cpython-312.pyc,,
+django/contrib/gis/db/backends/spatialite/__pycache__/client.cpython-312.pyc,,
+django/contrib/gis/db/backends/spatialite/__pycache__/features.cpython-312.pyc,,
+django/contrib/gis/db/backends/spatialite/__pycache__/introspection.cpython-312.pyc,,
+django/contrib/gis/db/backends/spatialite/__pycache__/models.cpython-312.pyc,,
+django/contrib/gis/db/backends/spatialite/__pycache__/operations.cpython-312.pyc,,
+django/contrib/gis/db/backends/spatialite/__pycache__/schema.cpython-312.pyc,,
+django/contrib/gis/db/backends/spatialite/adapter.py,sha256=qTiA5BBGUFND3D7xGK_85oo__HSexTH32XF4uin3ZV0,318
+django/contrib/gis/db/backends/spatialite/base.py,sha256=wU1fgp68CLyKELsMfO6zYM85ox4g_GloWESEK8EPrfM,3218
+django/contrib/gis/db/backends/spatialite/client.py,sha256=dNM7mqDyTzFlgQR1XhqZIftnR9VRH7AfcSvvy4vucEs,138
+django/contrib/gis/db/backends/spatialite/features.py,sha256=zkmJPExFtRqjRj608ZTlsSpxkYaPbV3A3SEfX3PcaFY,876
+django/contrib/gis/db/backends/spatialite/introspection.py,sha256=V_iwkz0zyF1U-AKq-UlxvyDImqQCsitcmvxk2cUw81A,3118
+django/contrib/gis/db/backends/spatialite/models.py,sha256=mOQ1cNkmLFCiKYyDjkhbs6Gf20qeFC5joSk7RIdIk-s,1931
+django/contrib/gis/db/backends/spatialite/operations.py,sha256=jaLhSEYHqEewdx1AbaQpwy-S6lZOJiuY2ZwHb1euJ5M,8520
+django/contrib/gis/db/backends/spatialite/schema.py,sha256=URhFfLQM7FH39wmkViD8MZJ1qG3cixhNdWmjuM9ZB44,7340
+django/contrib/gis/db/backends/utils.py,sha256=rLwSv79tKJPxvDHACY8rhPDLFZC79mEIlIySTyl_qqc,785
+django/contrib/gis/db/models/__init__.py,sha256=TrCS27JdVa-Q7Hok-YaJxb4eLrPdyvRmasJGIu05fvA,865
+django/contrib/gis/db/models/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/gis/db/models/__pycache__/aggregates.cpython-312.pyc,,
+django/contrib/gis/db/models/__pycache__/fields.cpython-312.pyc,,
+django/contrib/gis/db/models/__pycache__/functions.cpython-312.pyc,,
+django/contrib/gis/db/models/__pycache__/lookups.cpython-312.pyc,,
+django/contrib/gis/db/models/__pycache__/proxy.cpython-312.pyc,,
+django/contrib/gis/db/models/aggregates.py,sha256=ImbuX2AhL6PkEyrGDv_qKIgR9FSeIur7cIMIVKUYnlM,3147
+django/contrib/gis/db/models/fields.py,sha256=n40s9HYbqVpFKIW9b4X4IQ8INWUus7QZi5QdiWVPsTI,14312
+django/contrib/gis/db/models/functions.py,sha256=1zoJCVjBlFK6jjeOHVWHMLW1p1EHyoLM4DmspUqO94w,19606
+django/contrib/gis/db/models/lookups.py,sha256=FOb501DBuopcbLy175O1BwD2ZoaVa2optogbXmvwv3o,11797
+django/contrib/gis/db/models/proxy.py,sha256=qckCc10o_W1qJ7yH5VpNo6huhPfVMAz3nJSEyLfk4oo,3174
+django/contrib/gis/db/models/sql/__init__.py,sha256=-rzcC3izMJi2bnvyQUCMzIOrigBnY6N_5EQIim4wCSY,134
+django/contrib/gis/db/models/sql/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/gis/db/models/sql/__pycache__/conversion.cpython-312.pyc,,
+django/contrib/gis/db/models/sql/conversion.py,sha256=ZiMRzEf7_kOWJ4IITXFq6dL-wDwMhIEwvbE705afgaU,2433
+django/contrib/gis/feeds.py,sha256=0vNVVScIww13bOxvlQfXAOCItIOGWSXroKKl6QXGB58,5995
+django/contrib/gis/forms/__init__.py,sha256=Zyid_YlZzHUcMYkfGX1GewmPPDNc0ni7HyXKDTeIkjo,318
+django/contrib/gis/forms/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/gis/forms/__pycache__/fields.cpython-312.pyc,,
+django/contrib/gis/forms/__pycache__/widgets.cpython-312.pyc,,
+django/contrib/gis/forms/fields.py,sha256=FrZaZWXFUdWK1QEu8wlda3u6EtqaVHjQRYrSKKu66PA,4608
+django/contrib/gis/forms/widgets.py,sha256=jV0TSxB6quB0rbkyAq4QJCdrZt4rA_LaZnO9CHRFdgI,3917
+django/contrib/gis/gdal/LICENSE,sha256=VwoEWoNyts1qAOMOuv6OPo38Cn_j1O8sxfFtQZ62Ous,1526
+django/contrib/gis/gdal/__init__.py,sha256=wpf_P8fG88Bg8vF9uyNfah5QKDD2L5mlFlIOlmwJibc,1828
+django/contrib/gis/gdal/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/gis/gdal/__pycache__/base.cpython-312.pyc,,
+django/contrib/gis/gdal/__pycache__/datasource.cpython-312.pyc,,
+django/contrib/gis/gdal/__pycache__/driver.cpython-312.pyc,,
+django/contrib/gis/gdal/__pycache__/envelope.cpython-312.pyc,,
+django/contrib/gis/gdal/__pycache__/error.cpython-312.pyc,,
+django/contrib/gis/gdal/__pycache__/feature.cpython-312.pyc,,
+django/contrib/gis/gdal/__pycache__/field.cpython-312.pyc,,
+django/contrib/gis/gdal/__pycache__/geometries.cpython-312.pyc,,
+django/contrib/gis/gdal/__pycache__/geomtype.cpython-312.pyc,,
+django/contrib/gis/gdal/__pycache__/layer.cpython-312.pyc,,
+django/contrib/gis/gdal/__pycache__/libgdal.cpython-312.pyc,,
+django/contrib/gis/gdal/__pycache__/srs.cpython-312.pyc,,
+django/contrib/gis/gdal/base.py,sha256=yymyL0vZRMBfiFUzrehvaeaunIxMH5ucGjPRfKj-rAo,181
+django/contrib/gis/gdal/datasource.py,sha256=tlbiem36QDKmWKSDD5uQFSY7kye8Q40gxXcE2EmdFmA,4669
+django/contrib/gis/gdal/driver.py,sha256=wu2m_-lGPO4MDmJrUPBYrGDUD7BnNPFx0RROeE3-qP0,2983
+django/contrib/gis/gdal/envelope.py,sha256=_dLqUUsQpU7WnmYwbkCQai1vkqu-i6NuKlF5BL8iV5U,7324
+django/contrib/gis/gdal/error.py,sha256=Vt-Uis9z786UGE3tD7fjiH8_0P5HSTO81n4fad4l6kw,1578
+django/contrib/gis/gdal/feature.py,sha256=HPWoCZjwzsUnhc7QmKh-BBMRqJCjj07RcFI6vjbdnp4,4017
+django/contrib/gis/gdal/field.py,sha256=EKE-Ioj5L79vo93Oixz_JE4TIZbDTRy0YVGvZH-I1z4,6886
+django/contrib/gis/gdal/geometries.py,sha256=JUnxiv1qVQC3LHiI7PZzqmODnTqXqHkvaSUU3OVM9cY,27567
+django/contrib/gis/gdal/geomtype.py,sha256=CWqbe5XtpgKiBP8Lbisbtb8o1FtuIUVb37Eb02i6TSE,4582
+django/contrib/gis/gdal/layer.py,sha256=PygAgsRZzWekp6kq6NEAZ6vhQTSo1Nk4c1Yi_pOdK58,8825
+django/contrib/gis/gdal/libgdal.py,sha256=AFNcrLSsryDKjmHzYccUXTkUmGMDuQqdfI2JhCcZT8g,3578
+django/contrib/gis/gdal/prototypes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/gis/gdal/prototypes/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/gis/gdal/prototypes/__pycache__/ds.cpython-312.pyc,,
+django/contrib/gis/gdal/prototypes/__pycache__/errcheck.cpython-312.pyc,,
+django/contrib/gis/gdal/prototypes/__pycache__/generation.cpython-312.pyc,,
+django/contrib/gis/gdal/prototypes/__pycache__/geom.cpython-312.pyc,,
+django/contrib/gis/gdal/prototypes/__pycache__/raster.cpython-312.pyc,,
+django/contrib/gis/gdal/prototypes/__pycache__/srs.cpython-312.pyc,,
+django/contrib/gis/gdal/prototypes/ds.py,sha256=8YN4GkR3WD0DmvQbC0qSSapg82JIeZ_hev9qKZ5wHdk,4728
+django/contrib/gis/gdal/prototypes/errcheck.py,sha256=EJiU5xldKFzmaSG2ZAByogkEreG7jR0XKEfHnhhDVYw,4174
+django/contrib/gis/gdal/prototypes/generation.py,sha256=8m1MJ1WjAwlmZGWYzPr9imOMJAwHUtW4D81MEvj0Ako,4890
+django/contrib/gis/gdal/prototypes/geom.py,sha256=p0M5oQT_uqwrnvK6Rc08Xr-Z2W1OwD2ZbO0Q_kKtvk4,5951
+django/contrib/gis/gdal/prototypes/raster.py,sha256=jPOBqT6580qCThK5PhigyELzxMdp05RgI4hAKSlie_0,5571
+django/contrib/gis/gdal/prototypes/srs.py,sha256=52Aq0F7CT0_SqoMCaiIXVDVQ9dsnLGGIYXo5jf3EDDU,3677
+django/contrib/gis/gdal/raster/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/gis/gdal/raster/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/gis/gdal/raster/__pycache__/band.cpython-312.pyc,,
+django/contrib/gis/gdal/raster/__pycache__/base.cpython-312.pyc,,
+django/contrib/gis/gdal/raster/__pycache__/const.cpython-312.pyc,,
+django/contrib/gis/gdal/raster/__pycache__/source.cpython-312.pyc,,
+django/contrib/gis/gdal/raster/band.py,sha256=RPdut6BeQ9vW71rrPMwb2CnXrbCys8YAt1BA8Aholy0,8343
+django/contrib/gis/gdal/raster/base.py,sha256=2GGlL919lPr7YVGFtdIynLPIH-QKYhzrUpoXwVRlM1k,2882
+django/contrib/gis/gdal/raster/const.py,sha256=C_svBc-x052KJojH1t3pD1N29d67hQxyN8rm8u0141o,3283
+django/contrib/gis/gdal/raster/source.py,sha256=NmsCjTWDbNFt7oEWfSQSN7ZlofyDZ2yJ3ClSAfDjiW0,18394
+django/contrib/gis/gdal/srs.py,sha256=4if-eLG2V-G14subvHNZTZWG2I6nEC79exb4DdZpw3I,12350
+django/contrib/gis/geoip2.py,sha256=X3N2NWdS3UoDhqYdLNCMj9yRMvdOa_fE2vCxIxKvG6k,9344
+django/contrib/gis/geometry.py,sha256=oyapp3-FbCo1f2RQZhDwg-JD2sg1bq5Cgzpfxj-UmuE,788
+django/contrib/gis/geos/LICENSE,sha256=CL8kt1USOK4yUpUkVCWxyuua0PQvni0wPHs1NQJjIEU,1530
+django/contrib/gis/geos/__init__.py,sha256=7BIDN_LCzaNYi0RiDiPwxdm1G76cCiTBJLswcM6CMZI,661
+django/contrib/gis/geos/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/gis/geos/__pycache__/base.cpython-312.pyc,,
+django/contrib/gis/geos/__pycache__/collections.cpython-312.pyc,,
+django/contrib/gis/geos/__pycache__/coordseq.cpython-312.pyc,,
+django/contrib/gis/geos/__pycache__/error.cpython-312.pyc,,
+django/contrib/gis/geos/__pycache__/factory.cpython-312.pyc,,
+django/contrib/gis/geos/__pycache__/geometry.cpython-312.pyc,,
+django/contrib/gis/geos/__pycache__/io.cpython-312.pyc,,
+django/contrib/gis/geos/__pycache__/libgeos.cpython-312.pyc,,
+django/contrib/gis/geos/__pycache__/linestring.cpython-312.pyc,,
+django/contrib/gis/geos/__pycache__/mutable_list.cpython-312.pyc,,
+django/contrib/gis/geos/__pycache__/point.cpython-312.pyc,,
+django/contrib/gis/geos/__pycache__/polygon.cpython-312.pyc,,
+django/contrib/gis/geos/__pycache__/prepared.cpython-312.pyc,,
+django/contrib/gis/geos/base.py,sha256=NdlFg5l9akvDp87aqzh9dk0A3ZH2TI3cOq10mmmuHBk,181
+django/contrib/gis/geos/collections.py,sha256=ucr2-UdxXWVV3EAqa9kDT4mpBbC1-4TOnWJPdg2Phiw,3941
+django/contrib/gis/geos/coordseq.py,sha256=urCtqscgvbkRObpWnFk92qALBd5nl4UPEItRp1kx7N4,6841
+django/contrib/gis/geos/error.py,sha256=r3SNTnwDBI6HtuyL3mQ_iEEeKlOqqqdkHnhNoUkMohw,104
+django/contrib/gis/geos/factory.py,sha256=KQF6lqAh5KRlFSDgN-BSXWojmWFabbEUFgz2IGYX_vk,961
+django/contrib/gis/geos/geometry.py,sha256=smf1Il8p-ZjtUIKNnO60-u2-G28FX7amxmjLqwU8UQ0,26652
+django/contrib/gis/geos/io.py,sha256=GCUL4p6B7FYAHOcPcbTc-QLuSJ3rtvKvU7vfzZpUlsg,800
+django/contrib/gis/geos/libgeos.py,sha256=dCyMvcqRixNpGKx3UyQntZgccGeRXMg7XBYXhIrrUko,4988
+django/contrib/gis/geos/linestring.py,sha256=BJAoWfHW08EX1UpNFVB09iSKXdTS6pZsTIBc6DcZcfc,6372
+django/contrib/gis/geos/mutable_list.py,sha256=nthCtQ0FsJrDGd29cSERwXb-tJkpK35Vc0T_ywCnXgc,10121
+django/contrib/gis/geos/point.py,sha256=bvatsdXTb1XYy1EaSZvp4Rnr2LwXZU12zILefLu6sRw,4781
+django/contrib/gis/geos/polygon.py,sha256=DZq6Ed9bJA3MqhpDQ9u926hHxcnxBjnbKSppHgbShxw,6710
+django/contrib/gis/geos/prepared.py,sha256=J5Dj6e3u3gEfVPNOM1E_rvcmcXR2-CdwtbAcoiDU5a0,1577
+django/contrib/gis/geos/prototypes/__init__.py,sha256=iAnsD0bg8u7Avo7Fmet4lkAo9lnsyyfZFa7k3IQ6T1w,1438
+django/contrib/gis/geos/prototypes/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/gis/geos/prototypes/__pycache__/coordseq.cpython-312.pyc,,
+django/contrib/gis/geos/prototypes/__pycache__/errcheck.cpython-312.pyc,,
+django/contrib/gis/geos/prototypes/__pycache__/geom.cpython-312.pyc,,
+django/contrib/gis/geos/prototypes/__pycache__/io.cpython-312.pyc,,
+django/contrib/gis/geos/prototypes/__pycache__/misc.cpython-312.pyc,,
+django/contrib/gis/geos/prototypes/__pycache__/predicates.cpython-312.pyc,,
+django/contrib/gis/geos/prototypes/__pycache__/prepared.cpython-312.pyc,,
+django/contrib/gis/geos/prototypes/__pycache__/threadsafe.cpython-312.pyc,,
+django/contrib/gis/geos/prototypes/__pycache__/topology.cpython-312.pyc,,
+django/contrib/gis/geos/prototypes/coordseq.py,sha256=fIcSIzmyCbazQSR-XdvCwtP2YZItQur1Y27vfAKXNfw,3122
+django/contrib/gis/geos/prototypes/errcheck.py,sha256=t_904N1AiAHla7TiY0iLffIpRtlwNXs3gbvhsUP5Q4g,2789
+django/contrib/gis/geos/prototypes/geom.py,sha256=NlR-rUFCj_V3lppSmYSI2bapLim_VUJXABwElTldZM0,3398
+django/contrib/gis/geos/prototypes/io.py,sha256=j5379Sb-uLjW7SpxQiOeDvcJjrb1ZCa9bOa6IhD6sWI,11321
+django/contrib/gis/geos/prototypes/misc.py,sha256=m6gKAPD9B7Yukj4jbyAmqnuT5K5qahGS3MR9Kndd40c,1169
+django/contrib/gis/geos/prototypes/predicates.py,sha256=-NeNemaYkzlvHzcS1vXiBKPHuXj-WB4wE_xRCStWPoM,1662
+django/contrib/gis/geos/prototypes/prepared.py,sha256=4I9pS75Q5MZ1z8A1v0mKkmdCly33Kj_0sDcrqxOppzM,1175
+django/contrib/gis/geos/prototypes/threadsafe.py,sha256=n1yCYvQCtc7piFrhjeZCWH8Pf0-AiOGBH33VZusTgWI,2302
+django/contrib/gis/geos/prototypes/topology.py,sha256=MIpi03Vqn89Upx0sRDJp2B1Z3LpGnBmNQyEXHmquV5Y,2328
+django/contrib/gis/locale/af/LC_MESSAGES/django.mo,sha256=FWnPEpxhJG9xJ-uOTFryxIT6BFN3w-bsgqLn0IHF-Ew,518
+django/contrib/gis/locale/af/LC_MESSAGES/django.po,sha256=v5LXHABklHAVbfrPEx3xXGIHIZ4hz4MmfvZ6beC-XF4,1540
+django/contrib/gis/locale/ar/LC_MESSAGES/django.mo,sha256=5LCO903yJTtRVaaujBrmwMx8f8iLa3ihasgmj8te9eg,2301
+django/contrib/gis/locale/ar/LC_MESSAGES/django.po,sha256=pfUyK0VYgY0VC2_LvWZvG_EEIWa0OqIUfhiPT2Uov3Q,2569
+django/contrib/gis/locale/ar_DZ/LC_MESSAGES/django.mo,sha256=1e2lutVEjsa5vErMdjS6gaBbOLPTVIpDv15rax-wvKg,2403
+django/contrib/gis/locale/ar_DZ/LC_MESSAGES/django.po,sha256=dizXM36w-rUtI7Dv2mSoJDR5ouVR6Ar7zqjywX3xKr0,2555
+django/contrib/gis/locale/ast/LC_MESSAGES/django.mo,sha256=8o0Us4wR14bdv1M5oBeczYC4oW5uKnycWrj1-lMIqV4,850
+django/contrib/gis/locale/ast/LC_MESSAGES/django.po,sha256=0beyFcBkBOUNvPP45iqewTNv2ExvCPvDYwpafCJY5QM,1684
+django/contrib/gis/locale/az/LC_MESSAGES/django.mo,sha256=FOvFUN-kdoX5OvhaVJg3v4rOyQgAQ_YC--TCE3m4kXs,1901
+django/contrib/gis/locale/az/LC_MESSAGES/django.po,sha256=exlD78A7sUZBPuoLyQGZoYiBa2wWGWnsWKq0gUYUOng,2118
+django/contrib/gis/locale/be/LC_MESSAGES/django.mo,sha256=XcJGF9cH7M30Q8EwqovjAeiJFgB2PR4sXsbxdvVURjg,2389
+django/contrib/gis/locale/be/LC_MESSAGES/django.po,sha256=Cp_DXKCVHzYTA7v65TpjRhCJonkgI5Gy13Tfg1rkVp8,2596
+django/contrib/gis/locale/bg/LC_MESSAGES/django.mo,sha256=lLfpqEEEb1RYzy270gpDdEfv5k5jscyNgJv_Ok_BA_A,2323
+django/contrib/gis/locale/bg/LC_MESSAGES/django.po,sha256=hSxYwbKr-IqP5hJaPKQxoL1DkCIg60suHl1H8u8W7jQ,2586
+django/contrib/gis/locale/bn/LC_MESSAGES/django.mo,sha256=7oNsr_vHQfsanyP-o1FG8jZTSBK8jB3eK2fA9AqNOx4,1070
+django/contrib/gis/locale/bn/LC_MESSAGES/django.po,sha256=PTa9EFZdqfznUH7si3Rq3zp1kNkTOnn2HRTEYXQSOdM,1929
+django/contrib/gis/locale/br/LC_MESSAGES/django.mo,sha256=xN8hOvJi_gDlpdC5_lghXuX6yCBYDPfD_SQLjcvq8gU,1614
+django/contrib/gis/locale/br/LC_MESSAGES/django.po,sha256=LQw3Tp_ymJ_x7mJ6g4SOr6aP00bejkjuaxfFFRZnmaQ,2220
+django/contrib/gis/locale/bs/LC_MESSAGES/django.mo,sha256=9EdKtZkY0FX2NlX_q0tIxXD-Di0SNQJZk3jo7cend0A,1308
+django/contrib/gis/locale/bs/LC_MESSAGES/django.po,sha256=eu_qF8dbmlDiRKGNIz80XtIunrF8QIOcy8O28X02GvQ,1905
+django/contrib/gis/locale/ca/LC_MESSAGES/django.mo,sha256=6aq8xNlP95HRncIB6ThimqW14XFKp7OOjo0S0uT6d-Y,1948
+django/contrib/gis/locale/ca/LC_MESSAGES/django.po,sha256=0Tj64N9TVX-oDyq4srBCgqELmM8OjMgXC5Lci844Fvc,2298
+django/contrib/gis/locale/ckb/LC_MESSAGES/django.mo,sha256=tIH0KyO3XREfX8htOCAK6cJSZkS0BCE15AZngco_Vkw,2253
+django/contrib/gis/locale/ckb/LC_MESSAGES/django.po,sha256=krJj0SQiLAcc1uNA9Qazqy9Ty-7MhauoaIDHtjmPPfo,2442
+django/contrib/gis/locale/cs/LC_MESSAGES/django.mo,sha256=ia8l06-eW5VkQnNQU0aizio7pz_pSGA-KRk-liGRa2w,2026
+django/contrib/gis/locale/cs/LC_MESSAGES/django.po,sha256=8taX01JBHhr19_AKhfhbtlpt-TW1aOBwejN-o-HH5Xk,2274
+django/contrib/gis/locale/cy/LC_MESSAGES/django.mo,sha256=vUG_wzZaMumPwIlKwuN7GFcS9gnE5rpflxoA_MPM_po,1430
+django/contrib/gis/locale/cy/LC_MESSAGES/django.po,sha256=_QjXT6cySUXrjtHaJ3046z-5PoXkCqtOhvA7MCZsXxk,1900
+django/contrib/gis/locale/da/LC_MESSAGES/django.mo,sha256=eXid2KAU_8fd23jMFo41iJ3DntVNe0w939_UsBymGM4,1862
+django/contrib/gis/locale/da/LC_MESSAGES/django.po,sha256=9bSpjg9wv7nvWoaOfRhXKsuxVoMzOHU-fsnVNB8qbxM,2158
+django/contrib/gis/locale/de/LC_MESSAGES/django.mo,sha256=fECmj81LHOUcBcQ_PoQWlijVp3SjTG3GwsSRiUGMXOU,1930
+django/contrib/gis/locale/de/LC_MESSAGES/django.po,sha256=DB_2QZ0IHOxKJ51ZyJCNX24597W7DBc_DT1B-oId-bY,2129
+django/contrib/gis/locale/dsb/LC_MESSAGES/django.mo,sha256=YZOA1XJqoU3rI5REairrs9f36Cet75NmC8WXdApx0Mc,2016
+django/contrib/gis/locale/dsb/LC_MESSAGES/django.po,sha256=w36vo0t-HzjhslJLo5xesc1vVfl94sNP3XyyDcETDn0,2177
+django/contrib/gis/locale/el/LC_MESSAGES/django.mo,sha256=g3SeFfO8xTxsvs2jKG9CI99fTnVa-WuBMNG0FFGc0s8,2402
+django/contrib/gis/locale/el/LC_MESSAGES/django.po,sha256=7MATPbwGZGgWabd9BdmUCwxc2iAG2aeac9ltKsieuME,2853
+django/contrib/gis/locale/en/LC_MESSAGES/django.mo,sha256=U0OV81NfbuNL9ctF-gbGUG5al1StqN-daB-F-gFBFC8,356
+django/contrib/gis/locale/en/LC_MESSAGES/django.po,sha256=lXk5x3FBMnRKocOgqDiya7yKeXZqk9gkibxyADRQjOU,2074
+django/contrib/gis/locale/en_AU/LC_MESSAGES/django.mo,sha256=IPn5kRqOvv5S7jpbIUw8PEUkHlyjEL-4GuOANd1iAzI,486
+django/contrib/gis/locale/en_AU/LC_MESSAGES/django.po,sha256=x_58HmrHRia2LoYhmmN_NLb1J3f7oTDvwumgTo0LowI,1494
+django/contrib/gis/locale/en_GB/LC_MESSAGES/django.mo,sha256=WkORQDOsFuV2bI7hwVsJr_JTWnDQ8ZaK-VYugqnLv3w,1369
+django/contrib/gis/locale/en_GB/LC_MESSAGES/django.po,sha256=KWPMoX-X-gQhb47zoVsa79-16-SiCGpO0s4xkcGv9z0,1910
+django/contrib/gis/locale/eo/LC_MESSAGES/django.mo,sha256=FFSZ58VHOog4-tDy88OISaaLXMaHVuFsIr3uevM-LGc,1878
+django/contrib/gis/locale/eo/LC_MESSAGES/django.po,sha256=oyMvu7r3BKLV9VDYQI6IgjumYusSOgynlSdN3dDrcPo,2156
+django/contrib/gis/locale/es/LC_MESSAGES/django.mo,sha256=JTo6frVHdq3bDY7IwpP5K6Znbb0NXMyVBv-AOQ6gd9s,2005
+django/contrib/gis/locale/es/LC_MESSAGES/django.po,sha256=3xK9yehM6kTSbulhvTenKXmlBeUnfgqM3_a7waiNit4,2465
+django/contrib/gis/locale/es_AR/LC_MESSAGES/django.mo,sha256=Z_2xqsHzQNSQWphm6jV9efFFjzHmkmuk2KfLZXx5E1k,2006
+django/contrib/gis/locale/es_AR/LC_MESSAGES/django.po,sha256=_PHHHfzhzPI5xaZwDH6Rd35KEbj1l1-9IyPLEENaw6E,2161
+django/contrib/gis/locale/es_CO/LC_MESSAGES/django.mo,sha256=mMnOZTrmWutn2Lwv2Y7GuoZIhIbPsMCXJkdmeatXZaM,1817
+django/contrib/gis/locale/es_CO/LC_MESSAGES/django.po,sha256=JF0-_eNt-BPJ__GqNoEj7iKEOV8htZHyX5kZue-PZO4,2349
+django/contrib/gis/locale/es_MX/LC_MESSAGES/django.mo,sha256=bC-uMgJXdbKHQ-w7ez-6vh9E_2YSgCF_LkOQlvb60BU,1441
+django/contrib/gis/locale/es_MX/LC_MESSAGES/django.po,sha256=MYO9fGclp_VvLG5tXDjXY3J_1FXI4lDv23rGElXAyjA,1928
+django/contrib/gis/locale/es_VE/LC_MESSAGES/django.mo,sha256=5YVIO9AOtmjky90DAXVyU0YltfQ4NLEpVYRTTk7SZ5o,486
+django/contrib/gis/locale/es_VE/LC_MESSAGES/django.po,sha256=R8suLsdDnSUEKNlXzow3O6WIT5NcboZoCjir9GfSTSQ,1494
+django/contrib/gis/locale/et/LC_MESSAGES/django.mo,sha256=-Gn24H3qyIcf3ptRe7Iin8sHc6JtkkFsmJF4DI1Wwhs,1872
+django/contrib/gis/locale/et/LC_MESSAGES/django.po,sha256=c-8desC8uDUy9UrX3IicuGICF2xAWPudgAprvS3G7jY,2223
+django/contrib/gis/locale/eu/LC_MESSAGES/django.mo,sha256=c2YYr77DeKdHWhpq6T472Hc1wpzYQ1fgKXELx7GMW_U,1888
+django/contrib/gis/locale/eu/LC_MESSAGES/django.po,sha256=HVR7BSXjUy3pphfPKp2uapaKVnQeb3chQIxcG5bMxHY,2147
+django/contrib/gis/locale/fa/LC_MESSAGES/django.mo,sha256=oSM2n6s-E4eomcHHZT6gY0PrhUFDr7Wijs3Qkr62jX0,2155
+django/contrib/gis/locale/fa/LC_MESSAGES/django.po,sha256=uUaUbYmjFcZ3mp9-FmGVT3zv47n54sWtzaXHWFSpMik,2507
+django/contrib/gis/locale/fi/LC_MESSAGES/django.mo,sha256=A1QOLEk9dFKcxlE2puSLmdDdFWRwGbSKsDGbKemUsCM,1839
+django/contrib/gis/locale/fi/LC_MESSAGES/django.po,sha256=IbtvFNK1bXmck5zZQqXNCDSiuXcGonNl8UcN0BfopFQ,2064
+django/contrib/gis/locale/fr/LC_MESSAGES/django.mo,sha256=LXchLaOY_bGIf25s_rQgWHOvEMD-l8_HAT5WtC0irfs,2058
+django/contrib/gis/locale/fr/LC_MESSAGES/django.po,sha256=FVuGpVTPP2-f4CZKL0UZwLSxy2WiDczw9_q3KRTbclQ,2258
+django/contrib/gis/locale/fy/LC_MESSAGES/django.mo,sha256=2kCnWU_giddm3bAHMgDy0QqNwOb9qOiEyCEaYo1WdqQ,476
+django/contrib/gis/locale/fy/LC_MESSAGES/django.po,sha256=7ncWhxC5OLhXslQYv5unWurhyyu_vRsi4bGflZ6T2oQ,1484
+django/contrib/gis/locale/ga/LC_MESSAGES/django.mo,sha256=5oExwd6zeo9pBXhr1u_su8cllMEOQ-PnkUCkqFcQyYo,1957
+django/contrib/gis/locale/ga/LC_MESSAGES/django.po,sha256=CZngY66ohYP6Xr25Cghym_gW2AKpQlRRdIBYBMej5AY,2193
+django/contrib/gis/locale/gd/LC_MESSAGES/django.mo,sha256=w9d6GRaJMzeRVMzOuapvpPayOQmrFQEwPf8g4TXSatg,2022
+django/contrib/gis/locale/gd/LC_MESSAGES/django.po,sha256=2jXpd-BBQ7JVj2l9tWhIkUXw4ZZPnGJrvHjs442GEx8,2197
+django/contrib/gis/locale/gl/LC_MESSAGES/django.mo,sha256=vjZQqAw3rDSY8Tgv-12EOhsqfFlaEOB7mVBOH6YlXNo,1956
+django/contrib/gis/locale/gl/LC_MESSAGES/django.po,sha256=zhqF1InI8QaKhDLqjfTRUbMPaT9X3D1eI1ocV5FHGf4,2231
+django/contrib/gis/locale/he/LC_MESSAGES/django.mo,sha256=qaxQ0A76SO7GM5WDK0_3pAJDFzkvAtjSV8r1P4ySCVY,2135
+django/contrib/gis/locale/he/LC_MESSAGES/django.po,sha256=f8w5v4W7w47vH6Tq4HfMOX9jB4ab0oEXnpuJcDlk7Ak,2336
+django/contrib/gis/locale/hi/LC_MESSAGES/django.mo,sha256=3nsy5mxKTPtx0EpqBNA_TJXmLmVZ4BPUZG72ZEe8OPM,1818
+django/contrib/gis/locale/hi/LC_MESSAGES/django.po,sha256=jTFG2gqqYAQct9-to0xL2kUFQu-ebR4j7RGfxn4sBAg,2372
+django/contrib/gis/locale/hr/LC_MESSAGES/django.mo,sha256=0XrRj2oriNZxNhEwTryo2zdMf-85-4X7fy7OJhB5ub4,1549
+django/contrib/gis/locale/hr/LC_MESSAGES/django.po,sha256=iijzoBoD_EJ1n-a5ys5CKnjzZzG299zPoCN-REFkeqE,2132
+django/contrib/gis/locale/hsb/LC_MESSAGES/django.mo,sha256=oXaJFKOmRL_hRqAbghejIgZiq67bAnrOV0eFpoqmyW0,1991
+django/contrib/gis/locale/hsb/LC_MESSAGES/django.po,sha256=uktC4ibheBFFZVh0LVtRVUT3RnefGXVOVQddK70hdgg,2155
+django/contrib/gis/locale/hu/LC_MESSAGES/django.mo,sha256=dXlt0Oq_W45B_Foneh2FgpExduFanuG7ia0wKsYCUqs,1891
+django/contrib/gis/locale/hu/LC_MESSAGES/django.po,sha256=Ws1oB2MpVa90a0JNK2LxsZytKBuMMNwLx0DW1sem4Es,2210
+django/contrib/gis/locale/hy/LC_MESSAGES/django.mo,sha256=pi9oAP8fLCg8ssz7ADZ_p9HntyDtdQ1Mep6KsR5Glfs,2020
+django/contrib/gis/locale/hy/LC_MESSAGES/django.po,sha256=FKRbr93M2S4dLWes80CTZ1AucKW8MF5cw98i0s8qZo4,2260
+django/contrib/gis/locale/ia/LC_MESSAGES/django.mo,sha256=gSHcbhwZ2H1amTQbWw908L0aTniLzK8T2RVGsiHuKIY,1812
+django/contrib/gis/locale/ia/LC_MESSAGES/django.po,sha256=IyKoOfc6ZNtvpL8s-r4lv41wlsCyq8CGNoNp7uHWUGE,2122
+django/contrib/gis/locale/id/LC_MESSAGES/django.mo,sha256=dzDiuO47A6XWR3G-OrY-A2c-7ccp1oGLlKPyUO2Wlpg,1862
+django/contrib/gis/locale/id/LC_MESSAGES/django.po,sha256=KZVcWZ_X8x3LO5Z4V-hzSEsvE-BEHIZq5eWJlW1SwZs,2278
+django/contrib/gis/locale/io/LC_MESSAGES/django.mo,sha256=_yUgF2fBUxVAZAPNw2ROyWly5-Bq0niGdNEzo2qbp8k,464
+django/contrib/gis/locale/io/LC_MESSAGES/django.po,sha256=fgGJ1xzliMK0MlVoV9CQn_BuuS3Kl71Kh5YEybGFS0Y,1472
+django/contrib/gis/locale/is/LC_MESSAGES/django.mo,sha256=UQb3H5F1nUxJSrADpLiYe12TgRhYKCFQE5Xy13MzEqU,1350
+django/contrib/gis/locale/is/LC_MESSAGES/django.po,sha256=8QWtgdEZR7OUVXur0mBCeEjbXTBjJmE-DOiKe55FvMo,1934
+django/contrib/gis/locale/it/LC_MESSAGES/django.mo,sha256=8VddOMr-JMs5D-J5mq-UgNnhf98uutpoJYJKTr8E224,1976
+django/contrib/gis/locale/it/LC_MESSAGES/django.po,sha256=Vp1G-GChjjTsODwABsg5LbmR6_Z-KpslwkNUipuOqk4,2365
+django/contrib/gis/locale/ja/LC_MESSAGES/django.mo,sha256=SY1Kxu_gIqusDX5-4SvWmfGi5zG_-jG_98wbkkUyMfk,2052
+django/contrib/gis/locale/ja/LC_MESSAGES/django.po,sha256=tui2WDqNwYHiOkR9j9kl8YSs_kzZ5MTHAj9hniHKI_8,2357
+django/contrib/gis/locale/ka/LC_MESSAGES/django.mo,sha256=iqWQ9j8yanPjDhwi9cNSktYgfLVnofIsdICnAg2Y_to,1991
+django/contrib/gis/locale/ka/LC_MESSAGES/django.po,sha256=rkM7RG0zxDN8vqyAudmk5nocajhOYP6CTkdJKu21Pf4,2571
+django/contrib/gis/locale/kk/LC_MESSAGES/django.mo,sha256=NtgQONp0UncUNvrh0W2R7u7Ja8H33R-a-tsQShWq-QI,1349
+django/contrib/gis/locale/kk/LC_MESSAGES/django.po,sha256=78OMHuerBJZJZVo9GjGJ1h5fwdLuSc_X03ZhSRibtf4,1979
+django/contrib/gis/locale/km/LC_MESSAGES/django.mo,sha256=T0aZIZ_gHqHpQyejnBeX40jdcfhrCOjgKjNm2hLrpNE,459
+django/contrib/gis/locale/km/LC_MESSAGES/django.po,sha256=7ARjFcuPQJG0OGLJu9pVfSiAwc2Q-1tT6xcLeKeom1c,1467
+django/contrib/gis/locale/kn/LC_MESSAGES/django.mo,sha256=EkJRlJJSHZJvNZJuOLpO4IIUEoyi_fpKwNWe0OGFcy4,461
+django/contrib/gis/locale/kn/LC_MESSAGES/django.po,sha256=MnsSftGvmgJgGfgayQUVDMj755z8ItkM9vBehORfYbk,1475
+django/contrib/gis/locale/ko/LC_MESSAGES/django.mo,sha256=TyIytTrPe4GO6lRsK1CW0wIdhbrwDHxlO_29OX6MoH4,1888
+django/contrib/gis/locale/ko/LC_MESSAGES/django.po,sha256=V5OQ0oW3zU8MMdlOJXk-4RQo0UV3cCAhgSMOaQRgttM,2296
+django/contrib/gis/locale/ky/LC_MESSAGES/django.mo,sha256=nvMSOW77P-YCRkQgrQUpM94FexqLEt8Et0jri2nm_Ec,2157
+django/contrib/gis/locale/ky/LC_MESSAGES/django.po,sha256=0qqO8QWgJXPJpZ900MVsHdw6wMZBa0tE5GN3KSGa58E,2372
+django/contrib/gis/locale/lb/LC_MESSAGES/django.mo,sha256=XAyZQUi8jDr47VpSAHp_8nQb0KvSMJHo5THojsToFdk,474
+django/contrib/gis/locale/lb/LC_MESSAGES/django.po,sha256=5rfudPpH4snSq2iVm9E81EBwM0S2vbkY2WBGhpuga1Q,1482
+django/contrib/gis/locale/lt/LC_MESSAGES/django.mo,sha256=AD69M-SBrmQ5qaFKXX6FYOOXLfhuWlQdOYcMlV0UClo,2036
+django/contrib/gis/locale/lt/LC_MESSAGES/django.po,sha256=1yXUj9Hf4D2iyl97HoRuJLkfnR7Z-WmOoIJil98Cy-M,2366
+django/contrib/gis/locale/lv/LC_MESSAGES/django.mo,sha256=ZNt2B2qukArT3gRZE2SNsKna5pf9-UcsTUbQ3UbbQKA,1978
+django/contrib/gis/locale/lv/LC_MESSAGES/django.po,sha256=CM5WUeTmm4pp5Y4E1Cm3aCwGmTHNSyjSU3B44dRYdHA,2215
+django/contrib/gis/locale/mk/LC_MESSAGES/django.mo,sha256=fLSXxmJFE9kYsKMiwWAXS-9TweB_yuWzAjR-y0eysvI,2518
+django/contrib/gis/locale/mk/LC_MESSAGES/django.po,sha256=P2IKvpaMOj5UvJX_Lz-PE0-1D7Kt_fYM5Amm3d5g6t4,2918
+django/contrib/gis/locale/ml/LC_MESSAGES/django.mo,sha256=Kl9okrE3AzTPa5WQ-IGxYVNSRo2y_VEdgDcOyJ_Je78,2049
+django/contrib/gis/locale/ml/LC_MESSAGES/django.po,sha256=PWg8atPKfOsnVxg_uro8zYO9KCE1UVhfy_zmCWG0Bdk,2603
+django/contrib/gis/locale/mn/LC_MESSAGES/django.mo,sha256=DlGtHJJMKLVntNdaPBXZw9ApM_SjUYEYAgE9DpZv33w,2323
+django/contrib/gis/locale/mn/LC_MESSAGES/django.po,sha256=z9E7N3TXiMCd2FCunpMjS55-uamM_G4iQpI1MoTDSVY,2766
+django/contrib/gis/locale/mr/LC_MESSAGES/django.mo,sha256=3be2jV7c3MBww-fNMk8A9l9hWDwR4pgSmfztJj6cio0,510
+django/contrib/gis/locale/mr/LC_MESSAGES/django.po,sha256=dKaMdzicJqGwxA5VF1GeM3wGUQOtsnWCeHoGGcjFy-o,1530
+django/contrib/gis/locale/ms/LC_MESSAGES/django.mo,sha256=5_xS-XXVyw0cxvDzUIus5JImr0dkcswait04e7TrUtY,1828
+django/contrib/gis/locale/ms/LC_MESSAGES/django.po,sha256=I8rMkUEfsbjf-dWUuXyhYwCXhyX8AS3jjOKinAh7q2Q,1956
+django/contrib/gis/locale/my/LC_MESSAGES/django.mo,sha256=e6G8VbCCthUjV6tV6PRCy_ZzsXyZ-1OYjbYZIEShbXI,525
+django/contrib/gis/locale/my/LC_MESSAGES/django.po,sha256=R3v1S-904f8FWSVGHe822sWrOJI6cNJIk93-K7_E_1c,1580
+django/contrib/gis/locale/nb/LC_MESSAGES/django.mo,sha256=mx9uGqo5w_uRBWHswuEKoI-U-RX_Xvx_qck5ForI63Y,1808
+django/contrib/gis/locale/nb/LC_MESSAGES/django.po,sha256=LVjQsJxXdDBuKS5D7BEJ10C9OE8x3g0f9ewgjoG6fbY,2039
+django/contrib/gis/locale/ne/LC_MESSAGES/django.mo,sha256=nB-Ta8w57S6hIAhAdWZjDT0Dg6JYGbAt5FofIhJT7k8,982
+django/contrib/gis/locale/ne/LC_MESSAGES/django.po,sha256=eMH6uKZZZYn-P3kmHumiO4z9M4923s9tWGhHuJ0eWuI,1825
+django/contrib/gis/locale/nl/LC_MESSAGES/django.mo,sha256=ScPsjM7aMa8PwcbxliFgqfS7_WyOuTGmODGAZY85UM4,1897
+django/contrib/gis/locale/nl/LC_MESSAGES/django.po,sha256=zoUzuPhO4XGlrhmRluXNRMpjD7lEIjAW8TufBqAOO4o,2408
+django/contrib/gis/locale/nn/LC_MESSAGES/django.mo,sha256=P1RU0OICBDeHHtX6rCSB4xXgS4Qn97LqoxJ8phgiMDs,1830
+django/contrib/gis/locale/nn/LC_MESSAGES/django.po,sha256=-mkHmKp3b76uZlFOG3lFLp2nEFtBRV_4ThDPQmUWtX4,2027
+django/contrib/gis/locale/os/LC_MESSAGES/django.mo,sha256=02NpGC8WPjxmPqQkfv9Kj2JbtECdQCtgecf_Tjk1CZc,1594
+django/contrib/gis/locale/os/LC_MESSAGES/django.po,sha256=JBIsv5nJg3Wof7Xy7odCI_xKRBLN_Hlbb__kNqNW4Xw,2161
+django/contrib/gis/locale/pa/LC_MESSAGES/django.mo,sha256=JR1NxG5_h_dFE_7p6trBWWIx-QqWYIgfGomnjaCsWAA,1265
+django/contrib/gis/locale/pa/LC_MESSAGES/django.po,sha256=Ejd_8dq_M0E9XFijk0qj4oC-8_oe48GWWHXhvOrFlnY,1993
+django/contrib/gis/locale/pl/LC_MESSAGES/django.mo,sha256=KHar168QJ7Mj0419885rkyRXvWXkICAi0hUbb8KssY8,2045
+django/contrib/gis/locale/pl/LC_MESSAGES/django.po,sha256=cfeYjcF9R8VKujBMGLx_1z9zDY19DPCjUw5FpHuBIqs,2487
+django/contrib/gis/locale/pt/LC_MESSAGES/django.mo,sha256=sE5PPOHzfT8QQXuV5w0m2pnBTRhKYs_vFhk8p_A4Jg0,2036
+django/contrib/gis/locale/pt/LC_MESSAGES/django.po,sha256=TFt6Oj1NlCM3pgs2dIgFZR3S3y_g7oR7S-XRBlM4924,2443
+django/contrib/gis/locale/pt_BR/LC_MESSAGES/django.mo,sha256=5HGIao480s3B6kXtSmdy1AYjGUZqbYuZ9Eapho_jkTk,1976
+django/contrib/gis/locale/pt_BR/LC_MESSAGES/django.po,sha256=4-2WPZT15YZPyYbH7xnBRc7A8675875kVFjM9tr1o5U,2333
+django/contrib/gis/locale/ro/LC_MESSAGES/django.mo,sha256=jncf415WRI-GaemNGtbXITeYpx2zbokFNfQkONIOSO4,1770
+django/contrib/gis/locale/ro/LC_MESSAGES/django.po,sha256=5Xb2c11mwOdsd1D8SZC5u6nsuNjWEtdT1hslrQBfxP0,2181
+django/contrib/gis/locale/ru/LC_MESSAGES/django.mo,sha256=j9DEE5SVvEXWBj_PtR9_1IsaE-YCq4iOBcaiyHHqOEo,2481
+django/contrib/gis/locale/ru/LC_MESSAGES/django.po,sha256=fgj-PmNJ88IsjUUq7x9W6KSwXWdmnEq1PBlWsLFhzwE,2835
+django/contrib/gis/locale/sk/LC_MESSAGES/django.mo,sha256=FQy4gMIxrXNm42pvJ61q4ZfG0Ce98gv78b2I0vYN2CY,1980
+django/contrib/gis/locale/sk/LC_MESSAGES/django.po,sha256=z7uy3S2VXGZKMfgFLISYUPUb-zyEYXqlDgL_ODmb_4w,2315
+django/contrib/gis/locale/sl/LC_MESSAGES/django.mo,sha256=Ha88TShV2Bt_Jmvlkkc81CUkuV2iKfhGjzpD7KLMhv8,1972
+django/contrib/gis/locale/sl/LC_MESSAGES/django.po,sha256=B81yHSMjOYevk35kC4JEi4Ua3axjadkFW8aRuMnj6P0,2319
+django/contrib/gis/locale/sq/LC_MESSAGES/django.mo,sha256=hTehi3p1Qf7RCqK4vvcL-yoV7GVdbcokLN_5RGtmivE,1660
+django/contrib/gis/locale/sq/LC_MESSAGES/django.po,sha256=qnNVwZ69HLsTRC5GVYtVkIcZTCT_lNGjlDUibpCefr8,2037
+django/contrib/gis/locale/sr/LC_MESSAGES/django.mo,sha256=bM996RqI1wt4qHsUaGXoEO3fnaSZdjVD2TvUFDp5dVk,2365
+django/contrib/gis/locale/sr/LC_MESSAGES/django.po,sha256=hunakYgljjOiiYF98ZzFzIHTkIAGQM_IJLiLfmlR86Q,2628
+django/contrib/gis/locale/sr_Latn/LC_MESSAGES/django.mo,sha256=kniIObavM7XKqD5vcglrbcD8jqANKg7hN6AP4cIVAI0,1981
+django/contrib/gis/locale/sr_Latn/LC_MESSAGES/django.po,sha256=A2NsZJvk2Cckg8OS3yW_T11Tcv5-zgGEHcDRJpvE8Zg,2206
+django/contrib/gis/locale/sv/LC_MESSAGES/django.mo,sha256=CowUAoL4t4np5cBndBNM-a4Wu5oD899nVfifMOLz6xQ,1880
+django/contrib/gis/locale/sv/LC_MESSAGES/django.po,sha256=Xyzc8X3vwQ3wWfS4_5mpwFXPPAeCx4mODYFq3Kba04g,2252
+django/contrib/gis/locale/sw/LC_MESSAGES/django.mo,sha256=uBhpGHluGwYpODTE-xhdJD2e6PHleN07wLE-kjrXr_M,1426
+django/contrib/gis/locale/sw/LC_MESSAGES/django.po,sha256=nHXQQMYYXT1ec3lIBxQIDIAwLtXucX47M4Cozy08kko,1889
+django/contrib/gis/locale/ta/LC_MESSAGES/django.mo,sha256=Rboo36cGKwTebe_MiW4bOiMsRO2isB0EAyJJcoy_F6s,466
+django/contrib/gis/locale/ta/LC_MESSAGES/django.po,sha256=sLYW8_5BSVoSLWUr13BbKRe0hNJ_cBMEtmjCPBdTlAk,1474
+django/contrib/gis/locale/te/LC_MESSAGES/django.mo,sha256=xDkaSztnzQ33Oc-GxHoSuutSIwK9A5Bg3qXEdEvo4h4,824
+django/contrib/gis/locale/te/LC_MESSAGES/django.po,sha256=nYryhktJumcwtZDGZ43xBxWljvdd-cUeBrAYFZOryVg,1772
+django/contrib/gis/locale/tg/LC_MESSAGES/django.mo,sha256=6Jyeaq1ORsnE7Ceh_rrhbfslFskGe12Ar-dQl6NFyt0,611
+django/contrib/gis/locale/tg/LC_MESSAGES/django.po,sha256=9c1zPt7kz1OaRJPPLdqjQqO8MT99KtS9prUvoPa9qJk,1635
+django/contrib/gis/locale/th/LC_MESSAGES/django.mo,sha256=0kekAr7eXc_papwPAxEZ3TxHOBg6EPzdR3q4hmAxOjg,1835
+django/contrib/gis/locale/th/LC_MESSAGES/django.po,sha256=WJPdoZjLfvepGGMhfBB1EHCpxtxxfv80lRjPG9kGErM,2433
+django/contrib/gis/locale/tr/LC_MESSAGES/django.mo,sha256=5EKMteFT0WXGacwXnRt5Eak00kbtYmqskkuCg2rGvyc,1904
+django/contrib/gis/locale/tr/LC_MESSAGES/django.po,sha256=DSIty_3V3G_Pv498EU3H60-5jS0b1S5tPwR_fkwpq98,2180
+django/contrib/gis/locale/tt/LC_MESSAGES/django.mo,sha256=cGVPrWCe4WquVV77CacaJwgLSnJN0oEAepTzNMD-OWk,1470
+django/contrib/gis/locale/tt/LC_MESSAGES/django.po,sha256=98yeRs-JcMGTyizOpEuQenlnWJMYTR1-rG3HGhKCykk,2072
+django/contrib/gis/locale/udm/LC_MESSAGES/django.mo,sha256=I6bfLvRfMn79DO6bVIGfYSVeZY54N6c8BNO7OyyOOsw,462
+django/contrib/gis/locale/udm/LC_MESSAGES/django.po,sha256=B1PCuPYtNOrrhu4fKKJgkqxUrcEyifS2Y3kw-iTmSIk,1470
+django/contrib/gis/locale/ug/LC_MESSAGES/django.mo,sha256=cKr7ETLbYR1nMm2iJsQwZYKz8U5aP2CX5RdhbKW2gh4,2360
+django/contrib/gis/locale/ug/LC_MESSAGES/django.po,sha256=d1P7kH2ETJ9n34d9ALE0tHWw_1_fq7fuiLBNK2IlM10,2529
+django/contrib/gis/locale/uk/LC_MESSAGES/django.mo,sha256=jsJMgEt6VXoSjksQGngxaywARUsk5tiIKJfUw9kgEBw,2513
+django/contrib/gis/locale/uk/LC_MESSAGES/django.po,sha256=NNAUWdHmhsWtrPIgddjT03k4IeJUlUCYM7n78DisFQw,3015
+django/contrib/gis/locale/ur/LC_MESSAGES/django.mo,sha256=tB5tz7EscuE9IksBofNuyFjk89-h5X7sJhCKlIho5SY,1410
+django/contrib/gis/locale/ur/LC_MESSAGES/django.po,sha256=16m0t10Syv76UcI7y-EXfQHETePmrWX4QMVfyeuX1fQ,2007
+django/contrib/gis/locale/vi/LC_MESSAGES/django.mo,sha256=NT5T0FRCC2XINdtaCFCVUxb5VRv8ta62nE8wwSHGTrc,1384
+django/contrib/gis/locale/vi/LC_MESSAGES/django.po,sha256=y77GtqH5bv1wR78xN5JLHusmQzoENTH9kLf9Y3xz5xk,1957
+django/contrib/gis/locale/zh_Hans/LC_MESSAGES/django.mo,sha256=NvNiRwwuqrmOWqiiuYhoxTs3CXb9Zq0-R_2YVhY6n34,1760
+django/contrib/gis/locale/zh_Hans/LC_MESSAGES/django.po,sha256=jXKQKr3GOjL5LJ7Mv1O3zpn2hr_sA_31ote8Pzk9tOU,2232
+django/contrib/gis/locale/zh_Hant/LC_MESSAGES/django.mo,sha256=jbNgO-5ICEWlqu5BaaKrPQ5XIC1CDzpYbbXA6_Xo-D0,1811
+django/contrib/gis/locale/zh_Hant/LC_MESSAGES/django.po,sha256=h72hJ3socDnGCoPHREClni4DxDS0B-n-8EGAADlnmK4,2139
+django/contrib/gis/management/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/gis/management/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/gis/management/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/gis/management/commands/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/gis/management/commands/__pycache__/inspectdb.cpython-312.pyc,,
+django/contrib/gis/management/commands/__pycache__/ogrinspect.cpython-312.pyc,,
+django/contrib/gis/management/commands/inspectdb.py,sha256=8WhDOBICFAbLFu7kwAAS4I5pNs_p1BrCv8GJYI3S49k,760
+django/contrib/gis/management/commands/ogrinspect.py,sha256=XnWAbLxRxTSvbKSvjgePN7D1o_Ep4qWkvMwVrG1TpYY,6071
+django/contrib/gis/measure.py,sha256=3Kwchst6tJFwK9tMQb5oD6_eUVNnSMyKruOEDuxT7Rc,12573
+django/contrib/gis/ptr.py,sha256=NeIBB-plwO61wGOOxGg7fFyVXI4a5vbAGUdaJ_Fmjqo,1312
+django/contrib/gis/serializers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/gis/serializers/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/gis/serializers/__pycache__/geojson.cpython-312.pyc,,
+django/contrib/gis/serializers/geojson.py,sha256=lgwJ0xh-mjMVwJi_UpHH7MTKtjH_7txIQyLG-G2C4-A,3000
+django/contrib/gis/shortcuts.py,sha256=aa9zFjVU38qaEvRc0vAH_j2AgAERlI01rphYLHbc7Tg,1027
+django/contrib/gis/sitemaps/__init__.py,sha256=Tjj057omOVcoC5Fb8ITEYVhLm0HcVjrZ1Mbz_tKoD1A,138
+django/contrib/gis/sitemaps/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/gis/sitemaps/__pycache__/kml.cpython-312.pyc,,
+django/contrib/gis/sitemaps/__pycache__/views.cpython-312.pyc,,
+django/contrib/gis/sitemaps/kml.py,sha256=CUn_KKVrwGg2ZmmDcWosBc0QFuJp8hHpeNRCcloVk1U,2573
+django/contrib/gis/sitemaps/views.py,sha256=AFV1ay-oFftFC-IszzeKz3JAGzE0TOCH8pN1cwtg7yI,2353
+django/contrib/gis/static/gis/css/ol3.css,sha256=DmCfOuPC1wUs0kioWxIpSausvF6AYUlURbJLNGyvngA,773
+django/contrib/gis/static/gis/img/draw_line_off.svg,sha256=6XW83xsR5-Guh27UH3y5UFn9y9FB9T_Zc4kSPA-xSOI,918
+django/contrib/gis/static/gis/img/draw_line_on.svg,sha256=Hx-pXu4ped11esG6YjXP1GfZC5q84zrFQDPUo1C7FGA,892
+django/contrib/gis/static/gis/img/draw_point_off.svg,sha256=PICrywZPwuBkaQAKxR9nBJ0AlfTzPHtVn_up_rSiHH4,803
+django/contrib/gis/static/gis/img/draw_point_on.svg,sha256=raGk3oc8w87rJfLdtZ4nIXJyU3OChCcTd4oH-XAMmmM,803
+django/contrib/gis/static/gis/img/draw_polygon_off.svg,sha256=gnVmjeZE2jOvjfyx7mhazMDBXJ6KtSDrV9f0nSzkv3A,981
+django/contrib/gis/static/gis/img/draw_polygon_on.svg,sha256=ybJ9Ww7-bsojKQJtjErLd2cCOgrIzyqgIR9QNhH_ZfA,982
+django/contrib/gis/static/gis/js/OLMapWidget.js,sha256=JdZJtX4EP_pphsjxs7EnZdfHGM1s5Zsn1MQ38JDU0JQ,9019
+django/contrib/gis/templates/gis/kml/base.kml,sha256=VYnJaGgFVHRzDjiFjbcgI-jxlUos4B4Z1hx_JeI2ZXU,219
+django/contrib/gis/templates/gis/kml/placemarks.kml,sha256=TEC81sDL9RK2FVeH0aFJTwIzs6_YWcMeGnHkACJV1Uc,360
+django/contrib/gis/templates/gis/openlayers-osm.html,sha256=TeiUqCjt73W8Hgrp_6zAtk_ZMBxskNN6KHSmnJ1-GD4,378
+django/contrib/gis/templates/gis/openlayers.html,sha256=J9e_MAMgfMR8NFH9bhQ_ZDIsjKCiCfRRp0__bKK6TK4,1418
+django/contrib/gis/utils/__init__.py,sha256=pnsvryh3ad9wlaf1r7srfi-OwQzktSZzHoaoVZyo14U,683
+django/contrib/gis/utils/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/gis/utils/__pycache__/layermapping.cpython-312.pyc,,
+django/contrib/gis/utils/__pycache__/ogrinfo.cpython-312.pyc,,
+django/contrib/gis/utils/__pycache__/ogrinspect.cpython-312.pyc,,
+django/contrib/gis/utils/__pycache__/srs.cpython-312.pyc,,
+django/contrib/gis/utils/layermapping.py,sha256=AgEgNEzIUUW0a482UW5iUfVbY1HlQPl8Q9YEuRMau_Q,29043
+django/contrib/gis/utils/ogrinfo.py,sha256=6m3KaRzLoZtQ0OSrpRkaFIQXi9YOXTkQcYeqYb0S0nw,1956
+django/contrib/gis/utils/ogrinspect.py,sha256=f31eRqR5ybC-QR2mOjNWszYDANCWdEEgyqeIcvBAC4g,9170
+django/contrib/gis/utils/srs.py,sha256=UXsbxW0cQzdnPKO0d9E5K2HPdekdab5NaLZWNOUq-zk,2962
+django/contrib/gis/views.py,sha256=zdCV8QfUVfxEFGxESsUtCicsbSVtZNI_IXybdmsHKiM,714
+django/contrib/humanize/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/humanize/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/humanize/__pycache__/apps.cpython-312.pyc,,
+django/contrib/humanize/apps.py,sha256=LH3PTbB4V1gbBc8nmCw3BsSuA8La0fNOb4cSISvJAwI,194
+django/contrib/humanize/locale/af/LC_MESSAGES/django.mo,sha256=yFvTzvROTnoZF4ZPAs3z9ireOuOf5gTfECEUdGa4EkM,4224
+django/contrib/humanize/locale/af/LC_MESSAGES/django.po,sha256=m8GF4T4HY4aGsfadUdu04yc7cq9Sm-K5LM-OFjTrq5Y,7541
+django/contrib/humanize/locale/ar/LC_MESSAGES/django.mo,sha256=PokPfBR8w4AbRtNNabl5vO8r5E8_egHvFBjKp4CCvO4,7510
+django/contrib/humanize/locale/ar/LC_MESSAGES/django.po,sha256=QGW-kx-87DlPMGr5l_Eb6Ge-x4tkz2PuwHDe3EIkIQg,12326
+django/contrib/humanize/locale/ar_DZ/LC_MESSAGES/django.mo,sha256=NwCrL5FX_xdxYdqkW_S8tmU8ktDM8LqimmUvkt8me74,9155
+django/contrib/humanize/locale/ar_DZ/LC_MESSAGES/django.po,sha256=tt0AxhohGX79OQ_lX1S5soIo-iSCC07SdAhPpy0O7Q4,15234
+django/contrib/humanize/locale/ast/LC_MESSAGES/django.mo,sha256=WvBk8V6g1vgzGqZ_rR-4p7SMh43PFnDnRhIS9HSwdoQ,3468
+django/contrib/humanize/locale/ast/LC_MESSAGES/django.po,sha256=S9lcUf2y5wR8Ufa-Rlz-M73Z3bMo7zji_63cXwtDK2I,5762
+django/contrib/humanize/locale/az/LC_MESSAGES/django.mo,sha256=ukqeNWHDFXv3XhvfpX8ZU6sb-CrUIx_ks_gwNNWfiFw,4311
+django/contrib/humanize/locale/az/LC_MESSAGES/django.po,sha256=RLGjARRoX9wwBS8Y4EBiC_0iWig93qKaWel4sLOqLhM,7765
+django/contrib/humanize/locale/be/LC_MESSAGES/django.mo,sha256=7KyJKhNqMqv32CPdJi01RPLBefOVCQW-Gx6-Vf9JVrs,6653
+django/contrib/humanize/locale/be/LC_MESSAGES/django.po,sha256=2mbReEHyXhmZysqhSmaT6A2XCHn8mYb2R_O16TMGCAo,10666
+django/contrib/humanize/locale/bg/LC_MESSAGES/django.mo,sha256=jCdDIbqWlhOs-4gML44wSRIXJQxypfak6ByRG_reMsk,4823
+django/contrib/humanize/locale/bg/LC_MESSAGES/django.po,sha256=v2ih4-pL1cdDXaa3uXm9FxRjRKyULLGyz78Q91eKEG8,8267
+django/contrib/humanize/locale/bn/LC_MESSAGES/django.mo,sha256=jbL4ucZxxtexI10jgldtgnDie3I23XR3u-PrMMMqP6U,4026
+django/contrib/humanize/locale/bn/LC_MESSAGES/django.po,sha256=0l4yyy7q3OIWyFk_PW0y883Vw2Pmu48UcnLM9OBxB68,6545
+django/contrib/humanize/locale/br/LC_MESSAGES/django.mo,sha256=V_tPVAyQzVdDwWPNlVGWmlVJjmVZfbh35alkwsFlCNU,5850
+django/contrib/humanize/locale/br/LC_MESSAGES/django.po,sha256=BcAqEV2JpF0hiCQDttIMblp9xbB7zoHsmj7fJFV632k,12245
+django/contrib/humanize/locale/bs/LC_MESSAGES/django.mo,sha256=1-RNRHPgZR_9UyiEn9Djp4mggP3fywKZho45E1nGMjM,1416
+django/contrib/humanize/locale/bs/LC_MESSAGES/django.po,sha256=M017Iu3hyXmINZkhCmn2he-FB8rQ7rXN0KRkWgrp7LI,5498
+django/contrib/humanize/locale/ca/LC_MESSAGES/django.mo,sha256=WDvXis2Y1ivSq6NdJgddO_WKbz8w5MpVpkT4sq-pWXI,4270
+django/contrib/humanize/locale/ca/LC_MESSAGES/django.po,sha256=AD3h2guGADdp1f9EcbP1vc1lmfDOL8-1qQfwvXa6I04,7731
+django/contrib/humanize/locale/ckb/LC_MESSAGES/django.mo,sha256=Mqv3kRZrOjWtTstmtOEqIJsi3vevf_hZUfYEetGxO7w,5021
+django/contrib/humanize/locale/ckb/LC_MESSAGES/django.po,sha256=q_7p7pEyV_NTw9eBvcztKlSFW7ykl0CIsNnA9g5oy20,8317
+django/contrib/humanize/locale/cs/LC_MESSAGES/django.mo,sha256=VFyZcn19aQUXhVyh2zo2g3PAuzOO38Kx9fMFOCCxzMc,5479
+django/contrib/humanize/locale/cs/LC_MESSAGES/django.po,sha256=mq3LagwA9hyWOGy76M9n_rD4p3wuVk6oQsneB9CF99w,9527
+django/contrib/humanize/locale/cy/LC_MESSAGES/django.mo,sha256=VjJiaUUhvX9tjOEe6x2Bdp7scvZirVcUsA4-iE2-ElQ,5241
+django/contrib/humanize/locale/cy/LC_MESSAGES/django.po,sha256=sylmceSq-NPvtr_FjklQXoBAfueKu7hrjEpMAsVbQC4,7813
+django/contrib/humanize/locale/da/LC_MESSAGES/django.mo,sha256=vfDHopmWFAomwqmmCX3wfmX870-zzVbgUFC6I77n9tE,4316
+django/contrib/humanize/locale/da/LC_MESSAGES/django.po,sha256=v7Al6UOkbYB1p7m8kOe-pPRIAoyWemoyg_Pm9bD5Ldc,7762
+django/contrib/humanize/locale/de/LC_MESSAGES/django.mo,sha256=aOUax9csInbXnjAJc3jq4dcW_9H-6ueVI-TtKz2b9q0,4364
+django/contrib/humanize/locale/de/LC_MESSAGES/django.po,sha256=gW3OfOfoVMvpVudwghKCYztkLrCIPbbcriZjBNnRyGo,7753
+django/contrib/humanize/locale/dsb/LC_MESSAGES/django.mo,sha256=OVKcuW9ZXosNvP_3A98WsIIk_Jl6U_kv3zOx4pvwh-g,5588
+django/contrib/humanize/locale/dsb/LC_MESSAGES/django.po,sha256=VimcsmobK3VXTbbTasg6osWDPOIZ555uimbUoUfNco4,9557
+django/contrib/humanize/locale/el/LC_MESSAGES/django.mo,sha256=o-yjhpzyGRbbdMzwUcG_dBP_FMEMZevm7Wz1p4Wd-pg,6740
+django/contrib/humanize/locale/el/LC_MESSAGES/django.po,sha256=UbD5QEw_-JNoNETaOyDfSReirkRsHnlHeSsZF5hOSkI,10658
+django/contrib/humanize/locale/en/LC_MESSAGES/django.mo,sha256=U0OV81NfbuNL9ctF-gbGUG5al1StqN-daB-F-gFBFC8,356
+django/contrib/humanize/locale/en/LC_MESSAGES/django.po,sha256=PKUuSyK8VzVdyyCpOXAffSBK7mFSiGuumzMmttS5yfM,9057
+django/contrib/humanize/locale/en_AU/LC_MESSAGES/django.mo,sha256=QFf4EgAsGprbFetnwogmj8vDV7SfGq1E3vhL9D8xTTM,918
+django/contrib/humanize/locale/en_AU/LC_MESSAGES/django.po,sha256=Bnfesr1_T9sa31qkKOMunwKKXbnFzZJhzV8rYC_pdSE,6532
+django/contrib/humanize/locale/en_GB/LC_MESSAGES/django.mo,sha256=mkx192XQM3tt1xYG8EOacMfa-BvgzYCbSsJQsWZGeAo,3461
+django/contrib/humanize/locale/en_GB/LC_MESSAGES/django.po,sha256=MArKzXxY1104jxaq3kvDZs2WzOGYxicfJxFKsLzFavw,5801
+django/contrib/humanize/locale/eo/LC_MESSAGES/django.mo,sha256=b47HphXBi0cax_reCZiD3xIedavRHcH2iRG8pcwqb54,5386
+django/contrib/humanize/locale/eo/LC_MESSAGES/django.po,sha256=oN1YqOZgxKY3L1a1liluhM6X5YA5bawg91mHF_Vfqx8,9095
+django/contrib/humanize/locale/es/LC_MESSAGES/django.mo,sha256=z5ZCmAG4jGYleEE6pESMXihlESRQPkTEo2vIedXdjjI,5005
+django/contrib/humanize/locale/es/LC_MESSAGES/django.po,sha256=WwykwsBM_Q_xtA2vllIbcFSO7eUB72r56AG4ITwM5VM,8959
+django/contrib/humanize/locale/es_AR/LC_MESSAGES/django.mo,sha256=-btiXH3B5M1qkAsW9D5I742Gt9GcJs5VC8ZhJ_DKkGY,4425
+django/contrib/humanize/locale/es_AR/LC_MESSAGES/django.po,sha256=UsiuRj-eq-Vl41wNZGw9XijCMEmcXhcGrMTPWgZn4LA,7858
+django/contrib/humanize/locale/es_CO/LC_MESSAGES/django.mo,sha256=2GhQNtNOjK5mTov5RvnuJFTYbdoGBkDGLxzvJ8Vsrfs,4203
+django/contrib/humanize/locale/es_CO/LC_MESSAGES/django.po,sha256=JBf2fHO8jWi6dFdgZhstKXwyot_qT3iJBixQZc3l330,6326
+django/contrib/humanize/locale/es_MX/LC_MESSAGES/django.mo,sha256=82DL2ztdq10X5RIceshK1nO99DW5628ZIjaN8Xzp9ok,3939
+django/contrib/humanize/locale/es_MX/LC_MESSAGES/django.po,sha256=-O7AQluA5Kce9-bd04GN4tfQKoCxb8Sa7EZR6TZBCdM,6032
+django/contrib/humanize/locale/es_VE/LC_MESSAGES/django.mo,sha256=cJECzKpD99RRIpVFKQW65x0Nvpzrm5Fuhfi-nxOWmkM,942
+django/contrib/humanize/locale/es_VE/LC_MESSAGES/django.po,sha256=tDdYtvRILgeDMgZqKHSebe7Z5ZgI1bZhDdvGVtj_anM,4832
+django/contrib/humanize/locale/et/LC_MESSAGES/django.mo,sha256=_vLDxD-e-pBY7vs6gNkhFZNGYu_dAeETVMKGsjjWOHg,4406
+django/contrib/humanize/locale/et/LC_MESSAGES/django.po,sha256=u0tSkVYckwXUv1tVfe1ODdZ8tJ2wUkS0Vv8pakJ8eBM,7915
+django/contrib/humanize/locale/eu/LC_MESSAGES/django.mo,sha256=rz3Lz209GneozN4v_19qTGysOL55x7jK2uoB2YsKSMQ,4315
+django/contrib/humanize/locale/eu/LC_MESSAGES/django.po,sha256=lWOx7rpaj2U7czrZmdxVo3kB2aGt-2GDyWO0NLvP-A0,7760
+django/contrib/humanize/locale/fa/LC_MESSAGES/django.mo,sha256=N32l1DsPALoSGe9GtJ5baIo0XUDm8U09JhcHr0lXtw4,4656
+django/contrib/humanize/locale/fa/LC_MESSAGES/django.po,sha256=YsYRnmvABepSAOgEj6dRvdY_jYZqJb0_dbQ_6daiJAQ,8228
+django/contrib/humanize/locale/fi/LC_MESSAGES/django.mo,sha256=FJfyLFkz-oAz9e15e1aQUct7CJ2EJqSkZKh_ztDxtic,4425
+django/contrib/humanize/locale/fi/LC_MESSAGES/django.po,sha256=j5Z5t9zX1kePdM_Es1hu9AKOpOrijVWTsS2t19CIiaE,7807
+django/contrib/humanize/locale/fr/LC_MESSAGES/django.mo,sha256=pHHD7DV36bC86CKXWUpWUp3NtKuqWu9_YXU04sE6ib4,5125
+django/contrib/humanize/locale/fr/LC_MESSAGES/django.po,sha256=SyN1vUt8zDG-iSTDR4OH1B_CbvKMM2YaMJ2_s-FEyog,8812
+django/contrib/humanize/locale/fy/LC_MESSAGES/django.mo,sha256=YQQy7wpjBORD9Isd-p0lLzYrUgAqv770_56-vXa0EOc,476
+django/contrib/humanize/locale/fy/LC_MESSAGES/django.po,sha256=pPvcGgBWiZwQ5yh30OlYs-YZUd_XsFro71T9wErVv0M,4732
+django/contrib/humanize/locale/ga/LC_MESSAGES/django.mo,sha256=8V-8BJdubpBPT_AMHHdifgPangJw_TY3WtSQxaGNCGw,6346
+django/contrib/humanize/locale/ga/LC_MESSAGES/django.po,sha256=Y_6wRPWasABq-6B3WjzEObSk860fExiQ_OVbh8i1j44,10784
+django/contrib/humanize/locale/gd/LC_MESSAGES/django.mo,sha256=wHsBVluXm4DW7iWxGHMHexqG9ovXEvgcaXvsmvkNHSE,5838
+django/contrib/humanize/locale/gd/LC_MESSAGES/django.po,sha256=CmmpKK7me-Ujitgx2IVkOcJyZOvie6XEBS7wCY4xZQ0,9802
+django/contrib/humanize/locale/gl/LC_MESSAGES/django.mo,sha256=LbJABG0-USW2C5CQro6WcPlPwT7I1BfuKGi_VFNhJIU,4345
+django/contrib/humanize/locale/gl/LC_MESSAGES/django.po,sha256=caidyTAFJ5iZ-tpEp0bflpUx0xlaH2jIYmPKxCVzlGE,7772
+django/contrib/humanize/locale/he/LC_MESSAGES/django.mo,sha256=phFZMDohKT86DUtiAlnZslPFwSmpcpxTgZaXb8pGohc,5875
+django/contrib/humanize/locale/he/LC_MESSAGES/django.po,sha256=xhEZYcK-fg_mHMyGCEZXEwbd6FvutaGvkDyHTET-sic,9970
+django/contrib/humanize/locale/hi/LC_MESSAGES/django.mo,sha256=qrzm-6vXIUsxA7nOxa-210-6iO-3BPBj67vKfhTOPrY,4131
+django/contrib/humanize/locale/hi/LC_MESSAGES/django.po,sha256=BrypbKaQGOyY_Gl1-aHXiBVlRqrbSjGfZ2OK8omj_9M,6527
+django/contrib/humanize/locale/hr/LC_MESSAGES/django.mo,sha256=29XTvFJHex31hbu2qsOfl5kOusz-zls9eqlxtvw_H0s,1274
+django/contrib/humanize/locale/hr/LC_MESSAGES/django.po,sha256=OuEH4fJE6Fk-s0BMqoxxdlUAtndvvKK7N8Iy-9BP3qA,5424
+django/contrib/humanize/locale/hsb/LC_MESSAGES/django.mo,sha256=a1DqdiuRfFSfSrD8IvzQmZdzE0dhkxDChFddrmt3fjA,5679
+django/contrib/humanize/locale/hsb/LC_MESSAGES/django.po,sha256=V5aRblcqKii4RXSQO87lyoQwwvxL59T3m4-KOBTx4bc,9648
+django/contrib/humanize/locale/hu/LC_MESSAGES/django.mo,sha256=7ZMxGa5FaUdjRtbawYzwwhWIroON8NNXknQ3frKUabw,4313
+django/contrib/humanize/locale/hu/LC_MESSAGES/django.po,sha256=5yWfXwvJQQuDoENkiytuKXFjsNW-lS2-EFThVnYWHbI,7672
+django/contrib/humanize/locale/hy/LC_MESSAGES/django.mo,sha256=YN4XSM-NGXNJb2R0SMwC8Zk6r7F6LOfFvRgvc4fUNCM,3810
+django/contrib/humanize/locale/hy/LC_MESSAGES/django.po,sha256=JZZibNtKEOepsf5xf495lmCBk8jji5RUJETZlQpxrMo,7597
+django/contrib/humanize/locale/ia/LC_MESSAGES/django.mo,sha256=d0m-FddFnKp08fQYQSC9Wr6M4THVU7ibt3zkIpx_Y_A,4167
+django/contrib/humanize/locale/ia/LC_MESSAGES/django.po,sha256=qX6fAZyn54hmtTU62oJcHF8p4QcYnoO2ZNczVjvjOeE,6067
+django/contrib/humanize/locale/id/LC_MESSAGES/django.mo,sha256=AdUmhfkQOV9Le4jXQyQSyd5f2GqwNt-oqnJV-WVELVw,3885
+django/contrib/humanize/locale/id/LC_MESSAGES/django.po,sha256=lMnTtM27j1EWg1i9d7NzAeueo7mRztGVfNOXtXdZVjw,7021
+django/contrib/humanize/locale/io/LC_MESSAGES/django.mo,sha256=nMu5JhIy8Fjie0g5bT8-h42YElCiS00b4h8ej_Ie-w0,464
+django/contrib/humanize/locale/io/LC_MESSAGES/django.po,sha256=RUs8JkpT0toKOLwdv1oCbcBP298EOk02dkdNSJiC-_A,4720
+django/contrib/humanize/locale/is/LC_MESSAGES/django.mo,sha256=D6ElUYj8rODRsZwlJlH0QyBSM44sVmuBCNoEkwPVxko,3805
+django/contrib/humanize/locale/is/LC_MESSAGES/django.po,sha256=1VddvtkhsK_5wmpYIqEFqFOo-NxIBnL9wwW74Tw9pbw,8863
+django/contrib/humanize/locale/it/LC_MESSAGES/django.mo,sha256=Zw8reudMUlPGC3eQ-CpsGYHX-FtNrAc5SxgTdmIrUC0,5374
+django/contrib/humanize/locale/it/LC_MESSAGES/django.po,sha256=wJzT-2ygufGLMIULd7afg1sZLQKnwQ55NZ2eAnwIY8M,9420
+django/contrib/humanize/locale/ja/LC_MESSAGES/django.mo,sha256=x8AvfUPBBJkGtE0jvAP4tLeZEByuyo2H4V_UuLoCEmw,3907
+django/contrib/humanize/locale/ja/LC_MESSAGES/django.po,sha256=G2yTPZq6DxgzPV5uJ6zvMK4o3aiuLWbl4vXPH7ylUhc,6919
+django/contrib/humanize/locale/ka/LC_MESSAGES/django.mo,sha256=UeUbonYTkv1d2ljC0Qj8ZHw-59zHu83fuMvnME9Fkmw,4878
+django/contrib/humanize/locale/ka/LC_MESSAGES/django.po,sha256=-eAMexwjm8nSB4ARJU3f811UZnuatHKIFf8FevpJEpo,9875
+django/contrib/humanize/locale/kk/LC_MESSAGES/django.mo,sha256=jujbUM0jOpt3Mw8zN4LSIIkxCJ0ihk_24vR0bXoux78,2113
+django/contrib/humanize/locale/kk/LC_MESSAGES/django.po,sha256=hjZg_NRE9xMA5uEa2mVSv1Hr4rv8inG9es1Yq7uy9Zc,8283
+django/contrib/humanize/locale/km/LC_MESSAGES/django.mo,sha256=mfXs9p8VokORs6JqIfaSSnQshZEhS90rRFhOIHjW7CI,459
+django/contrib/humanize/locale/km/LC_MESSAGES/django.po,sha256=JQBEHtcy-hrV_GVWIjvUJyOf3dZ5jUzzN8DUTAbHKUg,4351
+django/contrib/humanize/locale/kn/LC_MESSAGES/django.mo,sha256=Oq3DIPjgCqkn8VZMb6ael7T8fQ7LnWobPPAZKQSFHl4,461
+django/contrib/humanize/locale/kn/LC_MESSAGES/django.po,sha256=CAJ0etMlQF3voPYrxIRr5ChAwUYO7wI42n5kjpIEVjA,4359
+django/contrib/humanize/locale/ko/LC_MESSAGES/django.mo,sha256=mWmQEoe0MNVn3sNqsz6CBc826x3KIpOL53ziv6Ekf7c,3891
+django/contrib/humanize/locale/ko/LC_MESSAGES/django.po,sha256=UUxIUYM332DOZinJrqOUtQvHfCCHkodFhENDVWj3dpk,7003
+django/contrib/humanize/locale/ky/LC_MESSAGES/django.mo,sha256=jDu1bVgJMDpaZ0tw9-wdkorvZxDdRzcuzdeC_Ot7rUs,4177
+django/contrib/humanize/locale/ky/LC_MESSAGES/django.po,sha256=MEHbKMLIiFEG7BlxsNVF60viXSnlk5iqlFCH3hgamH0,7157
+django/contrib/humanize/locale/lb/LC_MESSAGES/django.mo,sha256=xokesKl7h7k9dXFKIJwGETgwx1Ytq6mk2erBSxkgY-o,474
+django/contrib/humanize/locale/lb/LC_MESSAGES/django.po,sha256=_y0QFS5Kzx6uhwOnzmoHtCrbufMrhaTLsHD0LfMqtcM,4730
+django/contrib/humanize/locale/lt/LC_MESSAGES/django.mo,sha256=O0C-tPhxWNW5J4tCMlB7c7shVjNO6dmTURtIpTVO9uc,7333
+django/contrib/humanize/locale/lt/LC_MESSAGES/django.po,sha256=M5LlRxC1KWh1-3fwS93UqTijFuyRENmQJXfpxySSKik,12086
+django/contrib/humanize/locale/lv/LC_MESSAGES/django.mo,sha256=3gEzmKBtYsFz9wvLw0ltiir91CDLxhK3IG2j55-uM7Y,5033
+django/contrib/humanize/locale/lv/LC_MESSAGES/django.po,sha256=yfeBxpH2J49xHDzZUZI3cK5ms4QbWq0gtTmhj8ejAjE,8836
+django/contrib/humanize/locale/mk/LC_MESSAGES/django.mo,sha256=htUgd6rcaeRPDf6UrEb18onz-Ayltw9LTvWRgEkXm08,4761
+django/contrib/humanize/locale/mk/LC_MESSAGES/django.po,sha256=Wl9Rt8j8WA_0jyxKCswIovSiCQD-ZWFYXbhFsCUKIWo,6665
+django/contrib/humanize/locale/ml/LC_MESSAGES/django.mo,sha256=5As-FXkEJIYetmV9dMtzLtsRPTOm1oUgyx-oeTH_guY,4655
+django/contrib/humanize/locale/ml/LC_MESSAGES/django.po,sha256=I9_Ln0C1nSj188_Zdq9Vy6lC8aLzg_YdNc5gy9hNGjE,10065
+django/contrib/humanize/locale/mn/LC_MESSAGES/django.mo,sha256=MSw9wpCRQAX7lLWEW-Mamk_bR5R8lE_WqcD1G2mKbxI,4863
+django/contrib/humanize/locale/mn/LC_MESSAGES/django.po,sha256=xA4gODU33-hK6BXdqUun7qfjNuv6Dzq63FPVSQImfK4,8241
+django/contrib/humanize/locale/mr/LC_MESSAGES/django.mo,sha256=sJAjSaUecl5hdetpBm-rCjVrkWxNhq3IFsE1MEYmq7c,1506
+django/contrib/humanize/locale/mr/LC_MESSAGES/django.po,sha256=lHmcv7LnyXWBdh_WRsL4GPUybIMLRlIoJlHBM3_3EWA,6693
+django/contrib/humanize/locale/ms/LC_MESSAGES/django.mo,sha256=Bcictup-1bGKm0FIa3CeGNvrHg8VyxsqUHzWI7UMscs,3839
+django/contrib/humanize/locale/ms/LC_MESSAGES/django.po,sha256=UQEUC2iZxhtrWim96GaEK1VAKxAC0fTQIghg4Zx4R3Q,6774
+django/contrib/humanize/locale/my/LC_MESSAGES/django.mo,sha256=55CWHz34sy9k6TfOeVI9GYvE9GRa3pjSRE6DSPk9uQ8,3479
+django/contrib/humanize/locale/my/LC_MESSAGES/django.po,sha256=jCiDhSqARfqKcMLEHJd-Xe6zo3Uc9QpiCh3BbAAA5UE,5433
+django/contrib/humanize/locale/nb/LC_MESSAGES/django.mo,sha256=957mOf_wFBOTjpcevsRz5tQ6IQ4PJnZZfJUETUgF23s,4318
+django/contrib/humanize/locale/nb/LC_MESSAGES/django.po,sha256=G_4pAxT3QZhC-wmWKIhEkFf0IRBn6gKRQZvx0spqjuk,7619
+django/contrib/humanize/locale/ne/LC_MESSAGES/django.mo,sha256=YFT2D-yEkUdJBO2GfuUowau1OZQA5mS86CZvMzH38Rk,3590
+django/contrib/humanize/locale/ne/LC_MESSAGES/django.po,sha256=SN7yH65hthOHohnyEmQUjXusRTDRjxWJG_kuv5g2Enk,9038
+django/contrib/humanize/locale/nl/LC_MESSAGES/django.mo,sha256=RxwgVgdHvfFirimjPrpDhzqmI1Z9soDC--raoAzgBkw,4311
+django/contrib/humanize/locale/nl/LC_MESSAGES/django.po,sha256=M7dVQho17p71Ud6imsQLGMiBisLrVNEZNP4ufpkEJnM,7872
+django/contrib/humanize/locale/nn/LC_MESSAGES/django.mo,sha256=wyJDAGJWgvyBYZ_-UQnBQ84-Jelk5forKfk7hMFDGpQ,4336
+django/contrib/humanize/locale/nn/LC_MESSAGES/django.po,sha256=zuKg53XCX-C6Asc9M04BKZVVw1X6u5p5hvOXxc0AXnM,7651
+django/contrib/humanize/locale/os/LC_MESSAGES/django.mo,sha256=BwS3Mj7z_Fg5s7Qm-bGLVhzYLZ8nPgXoB0gXLnrMGWc,3902
+django/contrib/humanize/locale/os/LC_MESSAGES/django.po,sha256=CGrxyL5l-5HexruOc7QDyRbum7piADf-nY8zjDP9wVM,6212
+django/contrib/humanize/locale/pa/LC_MESSAGES/django.mo,sha256=TH1GkAhaVVLk2jrcqAmdxZprWyikAX6qMP0eIlr2tWM,1569
+django/contrib/humanize/locale/pa/LC_MESSAGES/django.po,sha256=_7oP0Hn-IU7IPLv_Qxg_wstLEdhgWNBBTCWYwSycMb0,5200
+django/contrib/humanize/locale/pl/LC_MESSAGES/django.mo,sha256=0QheMbF3Y0Q_sxZlN2wAYJRQyK3K_uq6ttVr7wCc33w,5596
+django/contrib/humanize/locale/pl/LC_MESSAGES/django.po,sha256=6wX50O68aIyKiP6CcyLMXZ3xuUnAzasFPIg_8deJQBY,9807
+django/contrib/humanize/locale/pt/LC_MESSAGES/django.mo,sha256=El9Sdr3kXS-yTol_sCg1dquxf0ThDdWyrWGjjim9Dj4,5408
+django/contrib/humanize/locale/pt/LC_MESSAGES/django.po,sha256=XudOc67ybF_fminrTR2XOCKEKwqB5FX14pl3clCNXGE,9281
+django/contrib/humanize/locale/pt_BR/LC_MESSAGES/django.mo,sha256=F5-AD4Fohf9wDyP_mqSJHvcKqIKIJsaxGuXGiHYGLHQ,5092
+django/contrib/humanize/locale/pt_BR/LC_MESSAGES/django.po,sha256=O1eVw8R8hL0N_XtTp4sdZbc5MxUNdxfGPzCT3U7QcxM,9089
+django/contrib/humanize/locale/ro/LC_MESSAGES/django.mo,sha256=vP6o72bsgKPsbKGwH0PU8Xyz9BnQ_sPWT3EANLT2wRk,6188
+django/contrib/humanize/locale/ro/LC_MESSAGES/django.po,sha256=JZiW6Y9P5JdQe4vgCvcFg35kFa8bSX0lU_2zdeudQP0,10575
+django/contrib/humanize/locale/ru/LC_MESSAGES/django.mo,sha256=tVtMvbDmHtoXFav2cXzhHpHmT-4-593Vo7kE5sd-Agc,6733
+django/contrib/humanize/locale/ru/LC_MESSAGES/django.po,sha256=0OWESEN33yMIcRUaX_oSQUuDidhbzgKpdivwAS7kNgs,11068
+django/contrib/humanize/locale/sk/LC_MESSAGES/django.mo,sha256=6l7T4rvVb8dPl0-6vwrq5K1QqJ06IdFKxEl4EGzN8Ns,5541
+django/contrib/humanize/locale/sk/LC_MESSAGES/django.po,sha256=Edsza_V5MJD_HadigUZWZoFLjl8556KFW9tbuHVHL3g,9657
+django/contrib/humanize/locale/sl/LC_MESSAGES/django.mo,sha256=yonGwvQKyqpZ_NLTpynDdS6q4yg3eafL1K5MFmnGw7o,4967
+django/contrib/humanize/locale/sl/LC_MESSAGES/django.po,sha256=-nzc9Rk9f3U_Rpze_fdJrKR-_CglPJ0_GryNUDD80jI,9580
+django/contrib/humanize/locale/sq/LC_MESSAGES/django.mo,sha256=1XXRe0nurGUUxI7r7gbSIuluRuza7VOeNdkIVX3LIFU,5280
+django/contrib/humanize/locale/sq/LC_MESSAGES/django.po,sha256=BS-5o3aG8Im9dWTkx4E_IbbeTRFcjjohinz1823ZepI,9127
+django/contrib/humanize/locale/sr/LC_MESSAGES/django.mo,sha256=Zsv4ajqk9baWkNItJjkEsZP-OO-LuIg_5QopKgVesUw,5718
+django/contrib/humanize/locale/sr/LC_MESSAGES/django.po,sha256=AZddC4WvARQd3Qd-atFONB8KbzrNJCfiQcdP16m-EyM,9363
+django/contrib/humanize/locale/sr_Latn/LC_MESSAGES/django.mo,sha256=8TIBiJ_6G0MTfEw8mTYHhig8dLZCpdjOBzP2ivQcSJ4,2613
+django/contrib/humanize/locale/sr_Latn/LC_MESSAGES/django.po,sha256=2pj14ryWKbxvcznBSK83hFvGJ_kn2EEr3w0Jhu1lVXI,10316
+django/contrib/humanize/locale/sv/LC_MESSAGES/django.mo,sha256=7OABdxvdZvKB9j1o99UiecoTXaVGn3XmXnU5xCNov8s,4333
+django/contrib/humanize/locale/sv/LC_MESSAGES/django.po,sha256=71tFrQzwtwzYfeC2BG0v8dZNkSEMbM-tAC5_z2AElLM,7876
+django/contrib/humanize/locale/sw/LC_MESSAGES/django.mo,sha256=cxjSUqegq1JX08xIAUgqq9ByP-HuqaXuxWM8Y2gHdB4,4146
+django/contrib/humanize/locale/sw/LC_MESSAGES/django.po,sha256=bPYrLJ2yY_lZ3y1K-RguNi-qrxq2r-GLlsz1gZcm2A8,6031
+django/contrib/humanize/locale/ta/LC_MESSAGES/django.mo,sha256=1X2vH0iZOwM0uYX9BccJUXqK-rOuhcu5isRzMpnjh2o,466
+django/contrib/humanize/locale/ta/LC_MESSAGES/django.po,sha256=8x1lMzq2KOJveX92ADSuqNmXGIEYf7fZ1JfIJPysS04,4722
+django/contrib/humanize/locale/te/LC_MESSAGES/django.mo,sha256=iKd4dW9tan8xPxgaSoenIGp1qQpvSHHXUw45Tj2ATKQ,1327
+django/contrib/humanize/locale/te/LC_MESSAGES/django.po,sha256=FQdjWKMsiv-qehYZ4AtN9iKRf8Rifzcm5TZzMkQVfQI,5103
+django/contrib/humanize/locale/tg/LC_MESSAGES/django.mo,sha256=1Fiqat0CZSyExRXRjRCBS0AFzwy0q1Iba-2RVnrXoZQ,1580
+django/contrib/humanize/locale/tg/LC_MESSAGES/django.po,sha256=j2iczgQDbqzpthKAAlMt1Jk7gprYLqZ1Ya0ASr2SgD0,7852
+django/contrib/humanize/locale/th/LC_MESSAGES/django.mo,sha256=jT7wGhYWP9HHwOvtr2rNPStiOgZW-rGMcO36w1U8Y4c,3709
+django/contrib/humanize/locale/th/LC_MESSAGES/django.po,sha256=ZO3_wU7z0VASS5E8RSLEtmTveMDjJ0O8QTynb2-jjt0,8318
+django/contrib/humanize/locale/tk/LC_MESSAGES/django.mo,sha256=cI2Ukp5kVTsUookoxyDD9gZKdxh4YezfRWYFBL7KuRU,4419
+django/contrib/humanize/locale/tk/LC_MESSAGES/django.po,sha256=6Qaxa03R4loH0FWQ6PCytT3Yz3LZt7UGTd01WVnHOIk,7675
+django/contrib/humanize/locale/tr/LC_MESSAGES/django.mo,sha256=D4ChMLE1Uz921NIF_Oe1vNkYAGfRpQuC8xANFwtlygE,4319
+django/contrib/humanize/locale/tr/LC_MESSAGES/django.po,sha256=4PjW65seHF9SsWnLv47JhgYPt0Gvzr-7_Ejech3d3ak,7754
+django/contrib/humanize/locale/tt/LC_MESSAGES/django.mo,sha256=z8VgtMhlfyDo7bERDfrDmcYV5aqOeBY7LDgqa5DRxDM,3243
+django/contrib/humanize/locale/tt/LC_MESSAGES/django.po,sha256=j_tRbg1hzLBFAmPQt0HoN-_WzWFtA07PloCkqhvNkcY,5201
+django/contrib/humanize/locale/udm/LC_MESSAGES/django.mo,sha256=CNmoKj9Uc0qEInnV5t0Nt4ZnKSZCRdIG5fyfSsqwky4,462
+django/contrib/humanize/locale/udm/LC_MESSAGES/django.po,sha256=AR55jQHmMrbA6RyHGOtqdvUtTFlxWnqvfMy8vZK25Bo,4354
+django/contrib/humanize/locale/ug/LC_MESSAGES/django.mo,sha256=_GtRGNtdwZ6lU2gZc5jN9nSDB15bLBMYdhiwHlKxOOc,4883
+django/contrib/humanize/locale/ug/LC_MESSAGES/django.po,sha256=x9DJRBObVq8C3orGfj737v2gCHcpqaWUXMEeCMkumco,8156
+django/contrib/humanize/locale/uk/LC_MESSAGES/django.mo,sha256=wQOJu-zKyuCazul-elFLZc-iKw2Zea7TGb90OVGZYkQ,6991
+django/contrib/humanize/locale/uk/LC_MESSAGES/django.po,sha256=hxEufGt-NOgSFc5T9OzxCibcfqkhWD7zxhQljoUQssQ,11249
+django/contrib/humanize/locale/ur/LC_MESSAGES/django.mo,sha256=MF9uX26-4FFIz-QpDUbUHUNLQ1APaMLQmISMIaPsOBE,1347
+django/contrib/humanize/locale/ur/LC_MESSAGES/django.po,sha256=D5UhcPEcQ16fsBEdkk_zmpjIF6f0gEv0P86z_pK_1eA,5015
+django/contrib/humanize/locale/uz/LC_MESSAGES/django.mo,sha256=HDah_1qqUz5m_ABBVIEML3WMR2xyomFckX82i6b3n4k,1915
+django/contrib/humanize/locale/uz/LC_MESSAGES/django.po,sha256=Ql3GZOhuoVgS0xHEzxjyYkOWQUyi_jiizfAXBp2Y4uw,7296
+django/contrib/humanize/locale/vi/LC_MESSAGES/django.mo,sha256=ZUK_Na0vnfdhjo0MgnBWnGFU34sxcMf_h0MeyuysKG8,3646
+django/contrib/humanize/locale/vi/LC_MESSAGES/django.po,sha256=DzRpXObt9yP5RK_slWruaIhnVI0-JXux2hn_uGsVZiE,5235
+django/contrib/humanize/locale/zh_Hans/LC_MESSAGES/django.mo,sha256=YgeAjXHMV1rXNNIrlDu_haxnKB0hxU5twJ86LMR10k8,3844
+django/contrib/humanize/locale/zh_Hans/LC_MESSAGES/django.po,sha256=JGfRVW_5UqwyI2mK_WRK8xDPzwBAO2q_mGsGzf89a88,7122
+django/contrib/humanize/locale/zh_Hant/LC_MESSAGES/django.mo,sha256=JQmImGUND9MONKqqLSCvvbbIT_TigIU6h-twN1qlfJc,3737
+django/contrib/humanize/locale/zh_Hant/LC_MESSAGES/django.po,sha256=u_JB8_pFJofUoiGtcGh1xemLouLePvHua5J_npnJ_Q8,6826
+django/contrib/humanize/templatetags/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/humanize/templatetags/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/humanize/templatetags/__pycache__/humanize.cpython-312.pyc,,
+django/contrib/humanize/templatetags/humanize.py,sha256=1vF9UeTaKuJSswwHxZvcb2Dx2rv6SFLGGcJ3AyzMLfc,12350
+django/contrib/messages/__init__.py,sha256=_5b6kMxWt0TqW5ze5vZ-iqYEQfaQiAl28x2q9KRaMz4,171
+django/contrib/messages/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/messages/__pycache__/api.cpython-312.pyc,,
+django/contrib/messages/__pycache__/apps.cpython-312.pyc,,
+django/contrib/messages/__pycache__/constants.cpython-312.pyc,,
+django/contrib/messages/__pycache__/context_processors.cpython-312.pyc,,
+django/contrib/messages/__pycache__/middleware.cpython-312.pyc,,
+django/contrib/messages/__pycache__/test.cpython-312.pyc,,
+django/contrib/messages/__pycache__/utils.cpython-312.pyc,,
+django/contrib/messages/__pycache__/views.cpython-312.pyc,,
+django/contrib/messages/api.py,sha256=3DbnVG5oOBdg499clMU8l2hxCXMXB6S03-HCKVuBXjA,3250
+django/contrib/messages/apps.py,sha256=W_nya0lzXYBew83hqP6I8gg6XnaRlh-gmN-pYpDGN84,611
+django/contrib/messages/constants.py,sha256=JD4TpaR4C5G0oxIh4BmrWiVmCACv7rnVgZSpJ8Rmzeg,312
+django/contrib/messages/context_processors.py,sha256=xMrgYeX6AcT_WwS9AYKNDDstbvAwE7_u1ssDVLN_bbg,354
+django/contrib/messages/middleware.py,sha256=2mxncCpJVUgLtjouUGSVl39mTF-QskQpWo2jCOOqV8A,986
+django/contrib/messages/storage/__init__.py,sha256=gXDHbQ9KgQdfhYOla9Qj59_SlE9WURQiKzIA0cFH0DQ,392
+django/contrib/messages/storage/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/messages/storage/__pycache__/base.cpython-312.pyc,,
+django/contrib/messages/storage/__pycache__/cookie.cpython-312.pyc,,
+django/contrib/messages/storage/__pycache__/fallback.cpython-312.pyc,,
+django/contrib/messages/storage/__pycache__/session.cpython-312.pyc,,
+django/contrib/messages/storage/base.py,sha256=T-bcy6HdwRbEKNIuO5fEJZ1EUj3rTHWXRg1oxqRahGc,6082
+django/contrib/messages/storage/cookie.py,sha256=6r-z_MyYImgEC5LPvjOdp64xwkiV_ib97Sg4N4eXjxY,8678
+django/contrib/messages/storage/fallback.py,sha256=K5CrVJfUDakMjIcqSRt1WZd_1Xco1Bc2AQM3O3ld9aA,2093
+django/contrib/messages/storage/session.py,sha256=kvdVosbBAvI3XBA0G4AFKf0vxLleyzlwbGEgl60DfMQ,1764
+django/contrib/messages/test.py,sha256=8PJVFT2ICdptbMZSBrZC0ZLC3AJzL7XUK2Vz4f4wXuk,332
+django/contrib/messages/utils.py,sha256=_oItQILchdwdXH08SIyZ-DBdYi7q_uobHQajWwmAeUw,256
+django/contrib/messages/views.py,sha256=I_7C4yr-YLkhTEWx3iuhixG7NrKuyuSDG_CVg-EYRD8,524
+django/contrib/postgres/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/postgres/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/postgres/__pycache__/apps.cpython-312.pyc,,
+django/contrib/postgres/__pycache__/constraints.cpython-312.pyc,,
+django/contrib/postgres/__pycache__/expressions.cpython-312.pyc,,
+django/contrib/postgres/__pycache__/functions.cpython-312.pyc,,
+django/contrib/postgres/__pycache__/indexes.cpython-312.pyc,,
+django/contrib/postgres/__pycache__/lookups.cpython-312.pyc,,
+django/contrib/postgres/__pycache__/operations.cpython-312.pyc,,
+django/contrib/postgres/__pycache__/search.cpython-312.pyc,,
+django/contrib/postgres/__pycache__/serializers.cpython-312.pyc,,
+django/contrib/postgres/__pycache__/signals.cpython-312.pyc,,
+django/contrib/postgres/__pycache__/utils.cpython-312.pyc,,
+django/contrib/postgres/__pycache__/validators.cpython-312.pyc,,
+django/contrib/postgres/aggregates/__init__.py,sha256=QCznqMKqPbpraxSi1Y8-B7_MYlL42F1kEWZ1HeLgTKs,65
+django/contrib/postgres/aggregates/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/postgres/aggregates/__pycache__/general.cpython-312.pyc,,
+django/contrib/postgres/aggregates/__pycache__/mixins.cpython-312.pyc,,
+django/contrib/postgres/aggregates/__pycache__/statistics.cpython-312.pyc,,
+django/contrib/postgres/aggregates/general.py,sha256=lFZkt_iDSlfXQ2SrcVj1Xr6h_GA4npskBJYzWuBF-kE,1496
+django/contrib/postgres/aggregates/mixins.py,sha256=7do4eji0SpVqvlLsI4E_Ap8EV6tfK39ybN5caV9wDLo,1716
+django/contrib/postgres/aggregates/statistics.py,sha256=xSWk5Z5ZVpM2LSaMgP97pxcijOnPHiPATe3X45poXCI,1511
+django/contrib/postgres/apps.py,sha256=sfjoL-2VJrFzrv0CC3S4WGWZblzR_4BwFDm9bEHs8B0,3692
+django/contrib/postgres/constraints.py,sha256=qWcKCH3_5mYLooCgq173UQGXSHMlhupB9dyOq_rsNs0,9789
+django/contrib/postgres/expressions.py,sha256=fo5YASHJtIjexadqskuhYYk4WutofxzymYsivWWJS84,405
+django/contrib/postgres/fields/__init__.py,sha256=Xo8wuWPwVNOkKY-EwV9U1zusQ2DjMXXtL7_8R_xAi5s,148
+django/contrib/postgres/fields/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/postgres/fields/__pycache__/array.cpython-312.pyc,,
+django/contrib/postgres/fields/__pycache__/citext.cpython-312.pyc,,
+django/contrib/postgres/fields/__pycache__/hstore.cpython-312.pyc,,
+django/contrib/postgres/fields/__pycache__/jsonb.cpython-312.pyc,,
+django/contrib/postgres/fields/__pycache__/ranges.cpython-312.pyc,,
+django/contrib/postgres/fields/__pycache__/utils.cpython-312.pyc,,
+django/contrib/postgres/fields/array.py,sha256=SsEBOHkrwr_ery0-GipbKbnK3IcmmoX9BQLHOMq-J-A,12682
+django/contrib/postgres/fields/citext.py,sha256=ytV2yAIwGvElHTAfH4BiLV-2DZ5otff8SmwmcqF2MVE,1363
+django/contrib/postgres/fields/hstore.py,sha256=WWWEoBfMtAjd226vvjFtGqbHMHFCjSly-BEhm9UN1qQ,3276
+django/contrib/postgres/fields/jsonb.py,sha256=ncMGT6WY70lCbcmhwtu2bjRmfDMUIvCr76foUv7tqv0,406
+django/contrib/postgres/fields/ranges.py,sha256=IbjAQC7IdWuISqHdBXrraiOGPzUP_4pHHcnL8VuYZRs,11417
+django/contrib/postgres/fields/utils.py,sha256=TV-Aj9VpBb13I2iuziSDURttZtz355XakxXnFwvtGio,95
+django/contrib/postgres/forms/__init__.py,sha256=NjENn2-C6BcXH4T8YeC0K2AbDk8MVT8tparL3Q4OF6g,89
+django/contrib/postgres/forms/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/postgres/forms/__pycache__/array.cpython-312.pyc,,
+django/contrib/postgres/forms/__pycache__/hstore.cpython-312.pyc,,
+django/contrib/postgres/forms/__pycache__/ranges.cpython-312.pyc,,
+django/contrib/postgres/forms/array.py,sha256=LRUU3fxXePptMh3lolxhX4sbMjNSvnzMvNgcJolKfZc,8401
+django/contrib/postgres/forms/hstore.py,sha256=MXXS4LdrueKIlM3w-_QGVvV3MZXMx1TR_4NrpChAtQo,1787
+django/contrib/postgres/forms/ranges.py,sha256=cKAeWvRISPLXIPhm2C57Lu9GoIlAd1xiRxzns69XehA,3652
+django/contrib/postgres/functions.py,sha256=7v6J01QQvX70KFyg9hDc322PgvT62xZqWlzp_vrl8bA,252
+django/contrib/postgres/indexes.py,sha256=pKkozoRHWZYMml8SSbLJ5KBJGnsi36wrXu6fvg1hBdg,8535
+django/contrib/postgres/jinja2/postgres/widgets/split_array.html,sha256=AzaPLlNLg91qkVQwwtAJxwOqDemrtt_btSkWLpboJDs,54
+django/contrib/postgres/locale/af/LC_MESSAGES/django.mo,sha256=kDeL_SZezO8DRNMRh2oXz94YtAK1ZzPiK5dftqAonKI,2841
+django/contrib/postgres/locale/af/LC_MESSAGES/django.po,sha256=ALKUHbZ8DE6IH80STMJhGOoyHB8HSSxI4PlX_SfxJWc,3209
+django/contrib/postgres/locale/ar/LC_MESSAGES/django.mo,sha256=UTBknYC-W7nclTrBCEiCpTglZxZQY80UqGki8I6j3EM,4294
+django/contrib/postgres/locale/ar/LC_MESSAGES/django.po,sha256=_PgF2T3ylO4vnixVoKRsgmpPDHO-Qhj3mShHtHeSna0,4821
+django/contrib/postgres/locale/ar_DZ/LC_MESSAGES/django.mo,sha256=fND1NtGTmEl7Rukt_VlqJeExdJjphBygmI-qJmE83P0,4352
+django/contrib/postgres/locale/ar_DZ/LC_MESSAGES/django.po,sha256=Z9y3h6lDnbwD4JOn7OACLjEZqNY8OpEwuzoUD8FSdwA,4868
+django/contrib/postgres/locale/az/LC_MESSAGES/django.mo,sha256=85wf8nNlReuPu89B_kb632QFKEdtL8ZVyQdlV_f-Sdo,2899
+django/contrib/postgres/locale/az/LC_MESSAGES/django.po,sha256=HRF6LxxcKtmLEA1dsYQMU4oG3P61jbQbwG6x_Wy0t4w,3284
+django/contrib/postgres/locale/be/LC_MESSAGES/django.mo,sha256=tYaaEbBaVxIgxC9qUAuE3YpHJa-aUu9ufFuJLa8my-s,4143
+django/contrib/postgres/locale/be/LC_MESSAGES/django.po,sha256=CL9BslCvHOvwjTBbCEswW8ISH72gSAyW5Dc-zoXI670,4643
+django/contrib/postgres/locale/bg/LC_MESSAGES/django.mo,sha256=A_WOYkzm2QwAo8ZXCKg7jOOiM7bEwUT4cSsSlyC6sWQ,3529
+django/contrib/postgres/locale/bg/LC_MESSAGES/django.po,sha256=TEDRfX5DWADwlgYqScP1hGm2hq2_zUGzIBmKY8WLVLQ,3993
+django/contrib/postgres/locale/ca/LC_MESSAGES/django.mo,sha256=XR1UEZV9AXKFz7XrchjRkd-tEdjnlmccW_I7XANyMns,2904
+django/contrib/postgres/locale/ca/LC_MESSAGES/django.po,sha256=5wPLvkODU_501cHPZ7v0n89rmFrsuctt7T8dUBMfQ0Q,3430
+django/contrib/postgres/locale/ckb/LC_MESSAGES/django.mo,sha256=FQsR4nG0r8RfJ4rkD58XyWX-x7ZLkeg0VbZbSzDB2L0,3414
+django/contrib/postgres/locale/ckb/LC_MESSAGES/django.po,sha256=YStPyf6Gy68ydbzvtYcU6b_CV3h4JzJ3aYOQqccI9zI,3764
+django/contrib/postgres/locale/cs/LC_MESSAGES/django.mo,sha256=BgNruyg0gX0DNZ3mqFerVd2JcSmi4ARRWRhJKlcRhDw,3418
+django/contrib/postgres/locale/cs/LC_MESSAGES/django.po,sha256=evU4mQ9EOQJSxHF0dx_axiU59ptW0xVjIIxTgQCkUJU,3957
+django/contrib/postgres/locale/da/LC_MESSAGES/django.mo,sha256=VaTePWY3W7YRW-CkTUx6timYDXEYOFRFCkg3F36_k_I,2886
+django/contrib/postgres/locale/da/LC_MESSAGES/django.po,sha256=5j5xI-yKORhnywIACpjvMQA6yHj4aHMYiiN4KVSmBMM,3344
+django/contrib/postgres/locale/de/LC_MESSAGES/django.mo,sha256=iTfG4OxvwSG32U_PQ0Tmtl38v83hSjFa2W0J8Sw0NUE,3078
+django/contrib/postgres/locale/de/LC_MESSAGES/django.po,sha256=GkF6wBg7JAvAB8YExwOx4hzpLr1r2K6HsvSLYfyojow,3611
+django/contrib/postgres/locale/dsb/LC_MESSAGES/django.mo,sha256=zZa1kLFCKar4P1xVNpJ0BTXm4I-xcNi_e8IY7n8Aa4w,3605
+django/contrib/postgres/locale/dsb/LC_MESSAGES/django.po,sha256=5vnAeH9tF9H9xL2nqfwc0MLlhI4hnNr45x2NXlw8owo,4061
+django/contrib/postgres/locale/el/LC_MESSAGES/django.mo,sha256=NmzROkTfSbioGv8exM3UdMDnRAxR65YMteGv9Nhury4,3583
+django/contrib/postgres/locale/el/LC_MESSAGES/django.po,sha256=4WuswUwrInAh-OPX9k7gDdLb-oMKp1vQFUGvfm0ej00,4144
+django/contrib/postgres/locale/en/LC_MESSAGES/django.mo,sha256=U0OV81NfbuNL9ctF-gbGUG5al1StqN-daB-F-gFBFC8,356
+django/contrib/postgres/locale/en/LC_MESSAGES/django.po,sha256=jrbHgf4TLTbEAaYV9-briB5JoE7sBWTn9r6aaRtpn54,2862
+django/contrib/postgres/locale/en_AU/LC_MESSAGES/django.mo,sha256=WA0RSssD8ljI16g6DynQZQLQhd_0XR8ilrnJnepsIFg,2839
+django/contrib/postgres/locale/en_AU/LC_MESSAGES/django.po,sha256=4JASYUpYlQlSPREPvMxFBqDpDhprlkI1GpAqTJrmb10,3215
+django/contrib/postgres/locale/eo/LC_MESSAGES/django.mo,sha256=1wqM_IVO8Dl9AefzvWYuoS4eNTrBg7LDH6XUMovKi9A,2742
+django/contrib/postgres/locale/eo/LC_MESSAGES/django.po,sha256=r2tpOblfLAAHMacDWU-OVXTQus_vvAPMjUzVfrV_T7U,3217
+django/contrib/postgres/locale/es/LC_MESSAGES/django.mo,sha256=O2Tdel44oxmQ13ZcwMwK3QPxUPChHdUzVKg2pLCPoqo,3163
+django/contrib/postgres/locale/es/LC_MESSAGES/django.po,sha256=YPjvjmvpS69FuNmPm-7Z1K1Eg_W01JwRHNrWkbKzVZ8,3794
+django/contrib/postgres/locale/es_AR/LC_MESSAGES/django.mo,sha256=zIN-1vsrChWXLDuGrzs61LbBuOwsyifWcvo9NrYCy2k,3140
+django/contrib/postgres/locale/es_AR/LC_MESSAGES/django.po,sha256=1seAy6OHEKG4fDV4NwKQyGfkjT29zjgwvXZ85u1VNtw,3506
+django/contrib/postgres/locale/es_CO/LC_MESSAGES/django.mo,sha256=Q2eOegYKQFY3fAKZCX7VvZAN6lT304W51aGl0lzkbLU,2484
+django/contrib/postgres/locale/es_CO/LC_MESSAGES/django.po,sha256=bbgOn34B7CSq1Kf2IrJh6oRJWPur_Smc4ebljIxAFGE,3233
+django/contrib/postgres/locale/es_MX/LC_MESSAGES/django.mo,sha256=l6WdS59mDfjsV9EMULjKP2DhXR7x3bYax1iokL-AXcU,689
+django/contrib/postgres/locale/es_MX/LC_MESSAGES/django.po,sha256=_-jzhIT71zV539_4SUbwvOXfDHkxRy1FDGdx23iB7B4,2283
+django/contrib/postgres/locale/et/LC_MESSAGES/django.mo,sha256=oPGqGUQhU9xE7j6hQZSVdC-be2WV-_BNrSAaN4csFR4,2886
+django/contrib/postgres/locale/et/LC_MESSAGES/django.po,sha256=xKkb-0CQCAn37xe0G2jfQmjg2kuYBmXB5yBpTA5lYNI,3404
+django/contrib/postgres/locale/eu/LC_MESSAGES/django.mo,sha256=UG7x642-n3U7mamXuNHD66a_mR0agX72xSwBD3PpyJU,2883
+django/contrib/postgres/locale/eu/LC_MESSAGES/django.po,sha256=dAx6nlRd4FF_8i7Xeylwvj4HkEDKi3swFenkdJkDawU,3321
+django/contrib/postgres/locale/fa/LC_MESSAGES/django.mo,sha256=uLh9fJtCSKg5eaj9uGP2muN_71aFxpZwOjRHtnZhPik,3308
+django/contrib/postgres/locale/fa/LC_MESSAGES/django.po,sha256=adN7bh9Q_R0Wzlf2fWaQnTtvxo0NslyoHH5t5V0eeMM,3845
+django/contrib/postgres/locale/fi/LC_MESSAGES/django.mo,sha256=gB2z3nI8Bz-km3DngYfJulwelHSlWgZeBXlj5yWyA08,2943
+django/contrib/postgres/locale/fi/LC_MESSAGES/django.po,sha256=LNVTHv4-FWT5KOre5qTwLEpKIQbaSIusFH2uUmbwYBg,3315
+django/contrib/postgres/locale/fr/LC_MESSAGES/django.mo,sha256=02ug8j0VpkPC2tRDkXrK2snj91M68Ju29PUiv4UhAsQ,3391
+django/contrib/postgres/locale/fr/LC_MESSAGES/django.po,sha256=5T_wkYoHJcpzemKqR-7apZ11Pas4dZhnAitHOgT8gRc,3759
+django/contrib/postgres/locale/ga/LC_MESSAGES/django.mo,sha256=wVzUMn8xlOxfL2vn94fSQ73QGTSbTBG6_6kfQbDPQYM,3652
+django/contrib/postgres/locale/ga/LC_MESSAGES/django.po,sha256=OEuRFUSNTJJlJAg7mvXpratMipVeCovYsH9pTssNGI0,4122
+django/contrib/postgres/locale/gd/LC_MESSAGES/django.mo,sha256=okWU_Ke95EG2pm8rZ4PT5ScO-8f0Hqg65lYZgSid8tM,3541
+django/contrib/postgres/locale/gd/LC_MESSAGES/django.po,sha256=tjt5kfkUGryU3hFzPuAly2DBDLuLQTTD5p-XrxryFEI,4013
+django/contrib/postgres/locale/gl/LC_MESSAGES/django.mo,sha256=1Od7e0SG9tEeTefFLLWkU38tlk5PL5aRF1GTlKkfTAs,2912
+django/contrib/postgres/locale/gl/LC_MESSAGES/django.po,sha256=tE2-GX2OH06krOFxvzdJeYWC7a57QYNFx5OtMXFWTdQ,3316
+django/contrib/postgres/locale/he/LC_MESSAGES/django.mo,sha256=znkNJeCKSSA4DPdvN5LCj5tdcWvRJQKRLWMXqSIO4FI,3757
+django/contrib/postgres/locale/he/LC_MESSAGES/django.po,sha256=oVJ0bfd9gH3aF3lo6rCMbA_9_3nhLWKBqfVj-H220F0,4234
+django/contrib/postgres/locale/hr/LC_MESSAGES/django.mo,sha256=vdm5GxgpKuVdGoVl3VreD8IB1Mq5HGWuq-2YDeDrNnU,929
+django/contrib/postgres/locale/hr/LC_MESSAGES/django.po,sha256=8TxEnVH2yIQWbmbmDOpR7kksNFSaUGVhimRPQgSgDkM,2501
+django/contrib/postgres/locale/hsb/LC_MESSAGES/django.mo,sha256=SSZpG-PSeVCHrzB-wzW4wRHxIEt7hqobzvRLB-9tu8Y,3518
+django/contrib/postgres/locale/hsb/LC_MESSAGES/django.po,sha256=UQUlfpJsgd-0qa6hZhUkTAi6VF5ZYiygSMrLcsiEC4k,3971
+django/contrib/postgres/locale/hu/LC_MESSAGES/django.mo,sha256=o6JDAFIN7i21GE2N0q98SiqIdvGYPLLdDiMLC_UE5hM,2892
+django/contrib/postgres/locale/hu/LC_MESSAGES/django.po,sha256=yUcbOn1k08aqhkODsrQfLR3qk-UnEEbEYuP3JyQ3eCU,3432
+django/contrib/postgres/locale/hy/LC_MESSAGES/django.mo,sha256=2QFIJdmh47IGPqI-8rvuHR0HdH2LOAmaYqEeCwUpRuw,3234
+django/contrib/postgres/locale/hy/LC_MESSAGES/django.po,sha256=MLHMbdwdo1txzFOG-fVK4VUvAoDtrLA8CdpQThybSCQ,3825
+django/contrib/postgres/locale/ia/LC_MESSAGES/django.mo,sha256=gn8lf-gOP4vv-iiqnkcxvjzhJ8pTdetBhHyjl4TapXo,582
+django/contrib/postgres/locale/ia/LC_MESSAGES/django.po,sha256=FsqhPQf0j4g06rGuWSTn8A1kJ7E5U9rX16mtB8CAiIE,2251
+django/contrib/postgres/locale/id/LC_MESSAGES/django.mo,sha256=vWCSZJBmKu5uGS8KvQIJSMZA1YTwdbbJP4-OBhTmAwQ,2737
+django/contrib/postgres/locale/id/LC_MESSAGES/django.po,sha256=Z5TrRpCOv6Mgb2YFU84vE8cT_3W7flFwA8BUMm4VvO0,3308
+django/contrib/postgres/locale/is/LC_MESSAGES/django.mo,sha256=rNL5Un5K_iRAZDtpHo4egcySaaBnNEirYDuWw0eI7gk,2931
+django/contrib/postgres/locale/is/LC_MESSAGES/django.po,sha256=UO53ciyI0jCVtBOXWkaip2AbPE2Hd2YhzK1RAlcxyQ8,3313
+django/contrib/postgres/locale/it/LC_MESSAGES/django.mo,sha256=dsn-Xuhg1WeRkJVGHHdoPz-KobYsS8A41BUdnM4wQQ8,3210
+django/contrib/postgres/locale/it/LC_MESSAGES/django.po,sha256=2RpaA-mmvXcYkYTu_y0u3p32aAhP9DyAy641ZJL79sk,3874
+django/contrib/postgres/locale/ja/LC_MESSAGES/django.mo,sha256=IC9mYW8gXWNGuXeh8gGxGFvrjfxiSpj57E63Ka47pkM,3046
+django/contrib/postgres/locale/ja/LC_MESSAGES/django.po,sha256=IPnDsh8rtq158a63zQJekJ0LJlR3uj6KAjx4omc7XN0,3437
+django/contrib/postgres/locale/ka/LC_MESSAGES/django.mo,sha256=A_VhLUZbocGNF5_5mMoYfB3l654MrPIW4dL1ywd3Tw8,713
+django/contrib/postgres/locale/ka/LC_MESSAGES/django.po,sha256=kRIwQ1Nrzdf5arHHxOPzQcB-XwPNK5lUFKU0L3QHfC8,2356
+django/contrib/postgres/locale/kk/LC_MESSAGES/django.mo,sha256=xMc-UwyP1_jBHcGIAGWmDAjvSL50jJaiZbcT5TmzDOg,665
+django/contrib/postgres/locale/kk/LC_MESSAGES/django.po,sha256=f6Z3VUFRJ3FgSReC0JItjA0RaYbblqDb31lbJ3RRExQ,2327
+django/contrib/postgres/locale/ko/LC_MESSAGES/django.mo,sha256=G9Cl4uFost_c2y-3dBEF5ODuOe2BLThiXcEMEMXQQE8,2905
+django/contrib/postgres/locale/ko/LC_MESSAGES/django.po,sha256=JXqG3VCGEhBzAxGzOBb9w6oflaX4duhxNVht69ytOQY,3481
+django/contrib/postgres/locale/ky/LC_MESSAGES/django.mo,sha256=F0Ws34MbE7zJa8FNxA-9rFm5sNLL22D24LyiBb927lE,3101
+django/contrib/postgres/locale/ky/LC_MESSAGES/django.po,sha256=yAzSeT2jBm7R2ZXiuYBQFSKQ_uWIUfNTAobE1UYnlPs,3504
+django/contrib/postgres/locale/lt/LC_MESSAGES/django.mo,sha256=kJ3ih8HrHt2M_hFW0H9BZg7zcj6sXy6H_fD1ReIzngM,3452
+django/contrib/postgres/locale/lt/LC_MESSAGES/django.po,sha256=PNADIV8hdpLoqwW4zpIhxtWnQN8cPkdcoXYngyjFeFw,3972
+django/contrib/postgres/locale/lv/LC_MESSAGES/django.mo,sha256=UwBbbIbC_MO6xhB66UzO80XFcmlyv8-mfFEK4kQd6fE,3153
+django/contrib/postgres/locale/lv/LC_MESSAGES/django.po,sha256=phDSZnB5JeCoCi0f_MYCjQiwhE00gcVl5urOFiAKmkU,3768
+django/contrib/postgres/locale/mk/LC_MESSAGES/django.mo,sha256=WE4nRJKWAZvXuyU2qT2_FGqGlKYsP1KSACCtT10gQQY,3048
+django/contrib/postgres/locale/mk/LC_MESSAGES/django.po,sha256=CQX91LP1Gbkazpt4hTownJtSqZGR1OJfoD-1MCo6C1Y,3783
+django/contrib/postgres/locale/ml/LC_MESSAGES/django.mo,sha256=N47idWIsmtghZ_D5325TRsDFeoUa0MIvMFtdx7ozAHc,1581
+django/contrib/postgres/locale/ml/LC_MESSAGES/django.po,sha256=lt_7fGZV7BCB2XqFWIQQtH4niU4oMBfGzQQuN5sD0fo,2947
+django/contrib/postgres/locale/mn/LC_MESSAGES/django.mo,sha256=VWeXaMvdqhW0GHs1Irb1ikTceH7jMKH_xMzKLH0vKZg,3310
+django/contrib/postgres/locale/mn/LC_MESSAGES/django.po,sha256=p3141FJiYrkV8rocgqdxnV05FReQYZmosv9LI46FlfE,3867
+django/contrib/postgres/locale/mr/LC_MESSAGES/django.mo,sha256=vVYwi51As7ovNuvoGU96oL3uryKHGVPCJXS2rRrkZ2o,1132
+django/contrib/postgres/locale/mr/LC_MESSAGES/django.po,sha256=DHSatTEPlPRSH_qXXBXKeyHB1X7YQ0UhkUc-j92iAyY,2595
+django/contrib/postgres/locale/ms/LC_MESSAGES/django.mo,sha256=m3JZm1IIMZwmpvIs3oV0roYCeR_UlswHyCpZjjE6-A8,2712
+django/contrib/postgres/locale/ms/LC_MESSAGES/django.po,sha256=HCMBA1fxKLJct14ywap0PYVBi2bDp2F97Ms5_-G_Pwg,3025
+django/contrib/postgres/locale/nb/LC_MESSAGES/django.mo,sha256=3h8DqEFG39i6uHY0vpXuGFmoJnAxTtRFy1RazcYIXfg,2849
+django/contrib/postgres/locale/nb/LC_MESSAGES/django.po,sha256=gDUg-HDg3LiYMKzb2QaDrYopqaJmbvnw2Fo-qhUHFuI,3252
+django/contrib/postgres/locale/ne/LC_MESSAGES/django.mo,sha256=5XdBLGMkn20qeya3MgTCpsIDxLEa7PV-i2BmK993iRc,875
+django/contrib/postgres/locale/ne/LC_MESSAGES/django.po,sha256=1QLLfbrHneJmxM_5UTpNIYalP-qX7Bn7bmj4AfDLIzE,2421
+django/contrib/postgres/locale/nl/LC_MESSAGES/django.mo,sha256=XK0L91JYDbkgw45eJysai_3u28KqZ5UFPTYaCTMiDPA,2993
+django/contrib/postgres/locale/nl/LC_MESSAGES/django.po,sha256=qU17zpXRHSoBQIkcP-Cm1GFh0BcpUTJsdh277P8dYG0,3565
+django/contrib/postgres/locale/nn/LC_MESSAGES/django.mo,sha256=RdMFozwxYIckBY40mJhN-jjkghztKn0-ytCtqxFHBMY,2836
+django/contrib/postgres/locale/nn/LC_MESSAGES/django.po,sha256=vl8NkY342eonqbrj89eCR_8PsJpeQuaRjxems-OPIBk,3184
+django/contrib/postgres/locale/pl/LC_MESSAGES/django.mo,sha256=Wox9w-HN7Guf8N1nkgemuDVs0LQxxTmEqQDOxriKy60,3462
+django/contrib/postgres/locale/pl/LC_MESSAGES/django.po,sha256=pxm_IKMg8g5qfg19CKc5JEdK6IMnhyeSPHd7THUb1GY,4217
+django/contrib/postgres/locale/pt/LC_MESSAGES/django.mo,sha256=KZvJXjrIdtxbffckcrRV3nJ5GnID6PvqAb7vpOiWpHE,2745
+django/contrib/postgres/locale/pt/LC_MESSAGES/django.po,sha256=2gIDOjnFo6Iom-oTkQek4IX6FYPI9rNp9V-6sJ55aL8,3281
+django/contrib/postgres/locale/pt_BR/LC_MESSAGES/django.mo,sha256=PVEiflh0v3AqVOC0S85XO-V3xDU3d8UwS31lzGrLoi8,3143
+django/contrib/postgres/locale/pt_BR/LC_MESSAGES/django.po,sha256=onF2K6s-McAXDSRzQ50EpGrKAIv89vvRWjCjsLCVXvs,3896
+django/contrib/postgres/locale/ro/LC_MESSAGES/django.mo,sha256=w4tyByrZlba_Ju_F2OzD52ut5JSD6UGJfjt3A7CG_uc,3188
+django/contrib/postgres/locale/ro/LC_MESSAGES/django.po,sha256=hnotgrr-zeEmE4lgpqDDiJ051GoGbL_2GVs4O9dVLXI,3700
+django/contrib/postgres/locale/ru/LC_MESSAGES/django.mo,sha256=LKkZs-TvPFTSrXVVaaoZ-Ec0kL_E9_5vTaExVxlr_rk,4732
+django/contrib/postgres/locale/ru/LC_MESSAGES/django.po,sha256=mnmVUlwZqn9QwdMx4g0D9xYxxKw_4pMFslwT2c4AjuE,5488
+django/contrib/postgres/locale/sk/LC_MESSAGES/django.mo,sha256=dRnTFkvRMbq5QnVEtrQ9Of9MxKTFYPP8sE7kbvUEjug,3381
+django/contrib/postgres/locale/sk/LC_MESSAGES/django.po,sha256=OwKv_mc9cuwt_YGnoVQLF3t2RsIbFyG_k3NKoIMAMoY,3899
+django/contrib/postgres/locale/sl/LC_MESSAGES/django.mo,sha256=JM9YZagjHIIrCxOKkR4d4oKaEXKJU7bfVdM3_uzSTAE,2810
+django/contrib/postgres/locale/sl/LC_MESSAGES/django.po,sha256=1jI2zXSU4LWxfLEUL-FXpldCExZJLD53Jy7VnA258xs,3602
+django/contrib/postgres/locale/sq/LC_MESSAGES/django.mo,sha256=slZq_bGPIzF8AlmtsfIqo65B14YYfw_uYKNcw_Tun0g,2958
+django/contrib/postgres/locale/sq/LC_MESSAGES/django.po,sha256=TPmtauQdDYM5QIOhGj2EwjRBQ3qOiRmvPMpUavUqh9A,3394
+django/contrib/postgres/locale/sr/LC_MESSAGES/django.mo,sha256=OfsUq8rZdD2NP7NQjBoatSXATxc8d6QL-nxmlPp5QSc,3775
+django/contrib/postgres/locale/sr/LC_MESSAGES/django.po,sha256=vUvFaIp8renqgGs-VgrtPNu7IBkcB38mlTBJ0xxXTaI,4214
+django/contrib/postgres/locale/sr_Latn/LC_MESSAGES/django.mo,sha256=2nDFP43vk1Jih35jns8vSbOhhLq_w7t_2vJHg-crfxY,3112
+django/contrib/postgres/locale/sr_Latn/LC_MESSAGES/django.po,sha256=QN4NEy0zFaPNjTCBrT9TydedWG7w4QBPm-pO7cKvSjg,3510
+django/contrib/postgres/locale/sv/LC_MESSAGES/django.mo,sha256=AkUgWYRBGNJYg5QDPJR3qu4BA_XF9xaZA__3m_KF4hk,2918
+django/contrib/postgres/locale/sv/LC_MESSAGES/django.po,sha256=hhJBRobgyHkLeKxdDxNkEl9XKkDXkrlx6PjyWcERp7I,3487
+django/contrib/postgres/locale/tg/LC_MESSAGES/django.mo,sha256=3yW5NKKsa2f2qDGZ4NGlSn4DHatLOYEv5SEwB9voraA,2688
+django/contrib/postgres/locale/tg/LC_MESSAGES/django.po,sha256=Zuix5sJH5Fz9-joe_ivMRpNz2Fbzefsxz3OOoDV0o1c,3511
+django/contrib/postgres/locale/tk/LC_MESSAGES/django.mo,sha256=ytivs6cnECDuyVKToFQMRnH_RPr4PlVepg8xFHnr0W4,2789
+django/contrib/postgres/locale/tk/LC_MESSAGES/django.po,sha256=bfXIyKNOFRC3U34AEKCsYQn3XMBGtgqHsXpboHvRQq0,3268
+django/contrib/postgres/locale/tr/LC_MESSAGES/django.mo,sha256=hZ2pxkYNOGE4BX--QmDlzqXxT21gHaPGA6CmXDODzhI,2914
+django/contrib/postgres/locale/tr/LC_MESSAGES/django.po,sha256=fzQsDL_wSO62qUaXCutRgq0ifrQ9oOaaxVQRyfnvV7Y,3288
+django/contrib/postgres/locale/ug/LC_MESSAGES/django.mo,sha256=ClLFBgCNopAREx7jy9WRbEASJERWJO8WZHriZrPtDZU,3938
+django/contrib/postgres/locale/ug/LC_MESSAGES/django.po,sha256=Ldd11fS8-D6ZeannnC6pCmBk7fmtqR_RXaeaNZQtU6M,4323
+django/contrib/postgres/locale/uk/LC_MESSAGES/django.mo,sha256=Jg6nM7ah7hEv7eqpe11e0e_MvRaMAQW3mdHTj9hqyG8,4406
+django/contrib/postgres/locale/uk/LC_MESSAGES/django.po,sha256=6gBP1xKxK9hf8ISCR1wABxkKXEUTx2CUYHGr6RVPI94,5100
+django/contrib/postgres/locale/uz/LC_MESSAGES/django.mo,sha256=PcmhhVC1spz3EFrQ2qdhfPFcA1ELHtBhHGWk9Z868Ss,703
+django/contrib/postgres/locale/uz/LC_MESSAGES/django.po,sha256=lbQxX2cmueGCT8sl6hsNWcrf9H-XEUbioP4L7JHGqiU,2291
+django/contrib/postgres/locale/zh_Hans/LC_MESSAGES/django.mo,sha256=ln_p6MRs5JPvTAXFzegXYnCCKki-LEr_YiOw6sK8oPA,2560
+django/contrib/postgres/locale/zh_Hans/LC_MESSAGES/django.po,sha256=7YZE8B0c1HuKVjGzreY7iiyuFeyPgqzKIwzxe5YOKb4,3084
+django/contrib/postgres/locale/zh_Hant/LC_MESSAGES/django.mo,sha256=7-gE2HUKbQwMwzMXT3_sMbI2GbuS2uzciNnJgKOMZUQ,2563
+django/contrib/postgres/locale/zh_Hant/LC_MESSAGES/django.po,sha256=nkYgbfQNoa3eYNCYMPgGVhtGWScjWtP2rjlV8nAXgH0,2973
+django/contrib/postgres/lookups.py,sha256=J50bsr8rLjp_zzdViSVDDcTLfDkY21fEUoyqCgeHauI,1991
+django/contrib/postgres/operations.py,sha256=SI3VgaNJqrZi6ZyTlZ1QclHUYix3VXUV15SmODIFg_0,12072
+django/contrib/postgres/search.py,sha256=bIXux7NXgsVTVAauvScWUPtYNR4E2u1D1Rd6PNf2s6Y,11732
+django/contrib/postgres/serializers.py,sha256=wCg0IzTNeuVOiC2cdy1wio6gChjqVvH6Ri4hkCkEeXU,435
+django/contrib/postgres/signals.py,sha256=cpkaedbyvajpN4NNAYLA6TfKI_4fe9AU40CeYhYmS8Q,2870
+django/contrib/postgres/templates/postgres/widgets/split_array.html,sha256=AzaPLlNLg91qkVQwwtAJxwOqDemrtt_btSkWLpboJDs,54
+django/contrib/postgres/utils.py,sha256=32nCnzdMZ7Ra4dDonbIdv1aCppV3tnQnoEX9AhCJe38,1187
+django/contrib/postgres/validators.py,sha256=GCJtwISehlhcqQhR5JEfrcwPUcCJqtpFV_fu4aRLb34,2801
+django/contrib/redirects/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/redirects/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/redirects/__pycache__/admin.cpython-312.pyc,,
+django/contrib/redirects/__pycache__/apps.cpython-312.pyc,,
+django/contrib/redirects/__pycache__/middleware.cpython-312.pyc,,
+django/contrib/redirects/__pycache__/models.cpython-312.pyc,,
+django/contrib/redirects/admin.py,sha256=1bPOgeZYRYCHdh7s2SpXnuL2WsfdQjD96U5Y3xhRY8g,314
+django/contrib/redirects/apps.py,sha256=1uS5EBp7WwDnY0WHeaRYo7VW9j-s20h4KDdImodjCNg,251
+django/contrib/redirects/locale/af/LC_MESSAGES/django.mo,sha256=p1jR8LLNrzuDM6gvYBzQAS5xg7X8O17301Fo5xEU2yI,1151
+django/contrib/redirects/locale/af/LC_MESSAGES/django.po,sha256=wkVhdkjL6kI-0uxzWPCrEMhf_iUSbbHV1D0dFPIw1eU,1385
+django/contrib/redirects/locale/ar/LC_MESSAGES/django.mo,sha256=FfPauXNUmQxq0R1-eQ2xw2WY1Oi33sLwVhyKX10_zFw,1336
+django/contrib/redirects/locale/ar/LC_MESSAGES/django.po,sha256=X0xX51asSDWedd56riJ4UrsCGEjH-lZdkcilIg4amgI,1595
+django/contrib/redirects/locale/ar_DZ/LC_MESSAGES/django.mo,sha256=hg1lkBEORP2vgLPRbuKcXiIFUcTvAO7KrjbPXlWhvqY,1379
+django/contrib/redirects/locale/ar_DZ/LC_MESSAGES/django.po,sha256=O4quBKA1jHATGGeDqCONDFfAqvDvOAATIBvueeMphyY,1581
+django/contrib/redirects/locale/ast/LC_MESSAGES/django.mo,sha256=a1ixBQQIdBZ7o-ADnF2r74CBtPLsuatG7txjc05_GXI,1071
+django/contrib/redirects/locale/ast/LC_MESSAGES/django.po,sha256=PguAqeIUeTMWsADOYLTxoC6AuKrCloi8HN18hbm3pZ0,1266
+django/contrib/redirects/locale/az/LC_MESSAGES/django.mo,sha256=IBIB2EW9ZYQTD0x4d8VadXY0lFx-XYtKCd1F_e72ibA,1106
+django/contrib/redirects/locale/az/LC_MESSAGES/django.po,sha256=D3ZGFhKeMTjJ4YtUOTRjBCvZ2cofqfksbk39mvHDemw,1384
+django/contrib/redirects/locale/be/LC_MESSAGES/django.mo,sha256=fVqy28ml508UJf5AA-QVsS5dzKI8Q_ugZZ34WjTpJ-s,1426
+django/contrib/redirects/locale/be/LC_MESSAGES/django.po,sha256=zHBVewcpt0KoavV96v3F4wybqtkGb1jUuPz7sbiWWDI,1662
+django/contrib/redirects/locale/bg/LC_MESSAGES/django.mo,sha256=o-ETSDGtAFZRo3SPd_IHe0mJ3R0RHA32KpgfOmUH11M,1279
+django/contrib/redirects/locale/bg/LC_MESSAGES/django.po,sha256=9qm8s6vj-0LStnyEJ8iYVi13_MfugVAAs2RHvIi7kW8,1587
+django/contrib/redirects/locale/bn/LC_MESSAGES/django.mo,sha256=SbQh_pgxNCogvUFud7xW9T6NTAvpaQb2jngXCtpjICM,1319
+django/contrib/redirects/locale/bn/LC_MESSAGES/django.po,sha256=LgUuiPryDLSXxo_4KMCdjM5XC3BiRfINuEk0s5PUQYQ,1511
+django/contrib/redirects/locale/br/LC_MESSAGES/django.mo,sha256=Yt8xo5B5LJ9HB8IChCkj5mljFQAAKlaW_gurtF8q8Yw,1429
+django/contrib/redirects/locale/br/LC_MESSAGES/django.po,sha256=L2qPx6mZEVUNay1yYEweKBLr_fXVURCnACfsezfP_pI,1623
+django/contrib/redirects/locale/bs/LC_MESSAGES/django.mo,sha256=0Yak4rXHjRRXLu3oYYzvS8qxvk2v4IFvUiDPA68a5YI,1115
+django/contrib/redirects/locale/bs/LC_MESSAGES/django.po,sha256=s9Nhx3H4074hlSqo1zgQRJbozakdJTwA1aTuMSqEJWw,1316
+django/contrib/redirects/locale/ca/LC_MESSAGES/django.mo,sha256=VHE6qHCEoA7rQk0fMUpoTfwqSfu63-CiOFvhvKp5DMQ,1136
+django/contrib/redirects/locale/ca/LC_MESSAGES/django.po,sha256=PSMb_7iZBuYhtdR8byh9zr9dr50Z_tQ518DUlqoEA_M,1484
+django/contrib/redirects/locale/ckb/LC_MESSAGES/django.mo,sha256=23RM9kso65HHxGHQ_DKxGDaUkmdX72DfYvqQfhr7JKw,1340
+django/contrib/redirects/locale/ckb/LC_MESSAGES/django.po,sha256=cGrAq3e6h3vbYrtyi0oFSfZmLlJ0-Y3uqrvFon48n80,1521
+django/contrib/redirects/locale/cs/LC_MESSAGES/django.mo,sha256=UwYsoEHsg7FJLVe0JxdOa1cTGypqJFienAbWe7Vldf0,1229
+django/contrib/redirects/locale/cs/LC_MESSAGES/django.po,sha256=hnWJLXX7IjwZK7_8L3p-dpj5XpDmEo7lQ7-F4upjn7U,1504
+django/contrib/redirects/locale/cy/LC_MESSAGES/django.mo,sha256=NSGoK12A7gbtuAuzQEVFPNSZMqqmhHyRvTEn9PUm9So,1132
+django/contrib/redirects/locale/cy/LC_MESSAGES/django.po,sha256=jDmC64z5exPnO9zwRkBmpa9v3DBlaeHRhqZYPoWqiIY,1360
+django/contrib/redirects/locale/da/LC_MESSAGES/django.mo,sha256=_UVfTMRG__5j7Ak8Q3HtXSy_DPGpZ1XvKj9MHdmR_xI,1132
+django/contrib/redirects/locale/da/LC_MESSAGES/django.po,sha256=RAWWbZXbJciNSdw4skUEoTnOb19iKXAe1KXJLWi0zPQ,1418
+django/contrib/redirects/locale/de/LC_MESSAGES/django.mo,sha256=uh-ldy-QkWS5-ARX6cLyzxzdhbTb_chyEbBPFCvCKuE,1155
+django/contrib/redirects/locale/de/LC_MESSAGES/django.po,sha256=hhGNnVCRV4HNxhCYfmVXTOIkabD7qsVQccwxKa5Tz9g,1424
+django/contrib/redirects/locale/dsb/LC_MESSAGES/django.mo,sha256=LXgczA38RzrN7zSWpxKy8_RY4gPg5tZLl30CJGjJ63s,1236
+django/contrib/redirects/locale/dsb/LC_MESSAGES/django.po,sha256=rI9dyDp7zuZ6CjvFyo2OkGUDK5XzdvdI0ma8IGVkjp4,1431
+django/contrib/redirects/locale/el/LC_MESSAGES/django.mo,sha256=sD3HT4e53Yd3HmQap_Mqlxkm0xF98A6PFW8Lil0PihI,1395
+django/contrib/redirects/locale/el/LC_MESSAGES/django.po,sha256=puhVCcshg5HaPHsVAOucneVgBYT6swhCCBpVGOZykgA,1716
+django/contrib/redirects/locale/en/LC_MESSAGES/django.mo,sha256=U0OV81NfbuNL9ctF-gbGUG5al1StqN-daB-F-gFBFC8,356
+django/contrib/redirects/locale/en/LC_MESSAGES/django.po,sha256=u4RcMkFmNvlG9Bv6kM0a0scWUMDUbTEDJGR90-G8C0E,1123
+django/contrib/redirects/locale/en_AU/LC_MESSAGES/django.mo,sha256=wxCpSLGl_zsE47kDwilDkpihazwHkA363PvtGOLWhdk,1127
+django/contrib/redirects/locale/en_AU/LC_MESSAGES/django.po,sha256=zujH1WuxoHw_32flptG0x2Ob_BlilLKXuMjQxVbZmgw,1307
+django/contrib/redirects/locale/en_GB/LC_MESSAGES/django.mo,sha256=VscL30uJnV-eiQZITpBCy0xk_FfKdnMh4O9Hk4HGxww,1053
+django/contrib/redirects/locale/en_GB/LC_MESSAGES/django.po,sha256=loe8xIVjZ7eyteQNLPoa-QceBZdgky22dR6deK5ubmA,1246
+django/contrib/redirects/locale/eo/LC_MESSAGES/django.mo,sha256=WZ3NHrS0qMoCJER5jWnGI12bvY5wH0yytM8F7BFTgYc,712
+django/contrib/redirects/locale/eo/LC_MESSAGES/django.po,sha256=T-Gw75sOjZgqpwjIfieIrLxbg1kekWzjrJYSMld2OEQ,1299
+django/contrib/redirects/locale/es/LC_MESSAGES/django.mo,sha256=xyeIQL_pHFyo7p7SkeuxzKdDsma2EXhvnPNDHUhaBv8,1159
+django/contrib/redirects/locale/es/LC_MESSAGES/django.po,sha256=Y3hPQrcbhLtR-pPYRJJXkJME5M8Enr20j9D63hhe9ZA,1490
+django/contrib/redirects/locale/es_AR/LC_MESSAGES/django.mo,sha256=JdKzpdyf9W2m_0_NguvXvyciOh6LAATfE6lqcsp45To,1144
+django/contrib/redirects/locale/es_AR/LC_MESSAGES/django.po,sha256=3zrKJXLh_mrjc4A6g9O6ePyFz8PNUMYTPjNFpvEhaDo,1364
+django/contrib/redirects/locale/es_CO/LC_MESSAGES/django.mo,sha256=wcAMOiqsgz2KEpRwirRH9FNoto6vmo_hxthrQJi0IHU,1147
+django/contrib/redirects/locale/es_CO/LC_MESSAGES/django.po,sha256=n8DM14vHekZRayH0B6Pm3L5XnSo4lto4ZAdu4OhcOmc,1291
+django/contrib/redirects/locale/es_MX/LC_MESSAGES/django.mo,sha256=38fbiReibMAmC75BCCbyo7pA2VA3QvmRqVEo_K6Ejow,1116
+django/contrib/redirects/locale/es_MX/LC_MESSAGES/django.po,sha256=t7R6PiQ1bCc7jhfMrjHlZxVQ6BRlWT2Vv4XXhxBD_Oo,1397
+django/contrib/redirects/locale/es_VE/LC_MESSAGES/django.mo,sha256=59fZBDut-htCj38ZUoqPjhXJPjZBz-xpU9__QFr3kLs,486
+django/contrib/redirects/locale/es_VE/LC_MESSAGES/django.po,sha256=f4XZW8OHjRJoztMJtSDCxd2_Mfy-XK44hLtigjGSsZY,958
+django/contrib/redirects/locale/et/LC_MESSAGES/django.mo,sha256=34-Z1s9msdnj6U7prMctEWCxAR8TNnP44MIoyUuFsls,1131
+django/contrib/redirects/locale/et/LC_MESSAGES/django.po,sha256=1VWcUbM9z_nNmiGnT9Mka3Y3ZLRVHuJdS_j_yNXvmQ0,1479
+django/contrib/redirects/locale/eu/LC_MESSAGES/django.mo,sha256=yHlAEz01pWse4ZworAj7JiATUam5Fp20EZd_3PRgSNw,1126
+django/contrib/redirects/locale/eu/LC_MESSAGES/django.po,sha256=zAvSdahjvq727hXeGjHJ_R5L5meCrOv98tbH3rwlBcE,1404
+django/contrib/redirects/locale/fa/LC_MESSAGES/django.mo,sha256=vZa1KKm2y8duEv9UbJMyiM8WO2EAXcevdR3Lj1ISgLU,1234
+django/contrib/redirects/locale/fa/LC_MESSAGES/django.po,sha256=1quB0Wx5VTIjX2QUCpENl1GA2hpSdsRpgK931jr20B0,1541
+django/contrib/redirects/locale/fi/LC_MESSAGES/django.mo,sha256=xJEd4M2IowXxKBlaGuOEgFKA9OuihcgPoK07Beat4cc,1164
+django/contrib/redirects/locale/fi/LC_MESSAGES/django.po,sha256=1I7AoXMPRDMY6TCjPkQh0Q9g68r9BwKOwki9DybcFWc,1429
+django/contrib/redirects/locale/fr/LC_MESSAGES/django.mo,sha256=YhVNoNaHdSOp2P2F7xfo2MHCd2KkHiehpVjLyJ4VLuw,1155
+django/contrib/redirects/locale/fr/LC_MESSAGES/django.po,sha256=-ljzEKiU05annJ8DHw4OOg8eDCAnWLV2V33R-tQn9dE,1391
+django/contrib/redirects/locale/fy/LC_MESSAGES/django.mo,sha256=YQQy7wpjBORD9Isd-p0lLzYrUgAqv770_56-vXa0EOc,476
+django/contrib/redirects/locale/fy/LC_MESSAGES/django.po,sha256=D7xverCbf3kTCcFM8h7EKWM5DcxZRqeOSKDB1irbKeE,948
+django/contrib/redirects/locale/ga/LC_MESSAGES/django.mo,sha256=DMxYLCVQl6qtLf8SXpcy1u9DLbTVFM-03Q2iXjNxNs0,1182
+django/contrib/redirects/locale/ga/LC_MESSAGES/django.po,sha256=HL2vCAoXAj0pk4MkrriUY_Jp2xvDaMqJo8i1z2MkKT8,1497
+django/contrib/redirects/locale/gd/LC_MESSAGES/django.mo,sha256=baZXdulbPZwe4_Q3OwfHFl4GJ4hCYtoZz-lE4wcdJvg,1250
+django/contrib/redirects/locale/gd/LC_MESSAGES/django.po,sha256=M4E2giFgzRowd3OsvhD389MyJmT5osKz1Vs1sEfmUpU,1428
+django/contrib/redirects/locale/gl/LC_MESSAGES/django.mo,sha256=au4ulT76A8cd_C_DmtEdiuQ14dIJaprVvFbS9_hYRNk,1131
+django/contrib/redirects/locale/gl/LC_MESSAGES/django.po,sha256=r2t9gHhIvPb8d9XR8fG0b_eW5xkkQswuj4ekJI9x90w,1393
+django/contrib/redirects/locale/he/LC_MESSAGES/django.mo,sha256=Yu8KTmY0mJEcxhkhTEVElPBaWwO9Zj4NqC8eopW0cRc,1278
+django/contrib/redirects/locale/he/LC_MESSAGES/django.po,sha256=UcCd_BqHOkTV1dP0hgJ4dNQzBZ4p8TujwSjF3FWAMjo,1513
+django/contrib/redirects/locale/hi/LC_MESSAGES/django.mo,sha256=onR8L7Kvkx6HgFLK7jT-wA_zjarBN8pyltG6BbKFIWU,1409
+django/contrib/redirects/locale/hi/LC_MESSAGES/django.po,sha256=fNv9_qwR9iS-pjWNXnrUFIqvc10lwg3bfj5lgdQOy1U,1649
+django/contrib/redirects/locale/hr/LC_MESSAGES/django.mo,sha256=7wHi6Uu0czZhI6v0ndJJ1wSkalTRfn7D5ovyw8tr4U4,1207
+django/contrib/redirects/locale/hr/LC_MESSAGES/django.po,sha256=HtxZwZ-ymmf-XID0z5s7nGYg-4gJL8i6FDGWt9i4Wns,1406
+django/contrib/redirects/locale/hsb/LC_MESSAGES/django.mo,sha256=6lfIW4LcMGvuLOY0U4w1V6Xwcd_TsUC3r-QzZOOLwys,1221
+django/contrib/redirects/locale/hsb/LC_MESSAGES/django.po,sha256=l5pATo8NHa8ypB8dCigRwqpLZvV8W0v2vPh60oAeGn0,1420
+django/contrib/redirects/locale/hu/LC_MESSAGES/django.mo,sha256=4oYBNGEmFMISzw3LExVf6CHsJD_o20mMy132pwzM-wk,1111
+django/contrib/redirects/locale/hu/LC_MESSAGES/django.po,sha256=UYJ_ZrAnOqA6S8nkkfN_FBLxCyPHJjOMd1OSIUVc8aY,1383
+django/contrib/redirects/locale/hy/LC_MESSAGES/django.mo,sha256=gT5x1TZXMNyBwfmQ-C_cOB60JGYdKIM7tVb3-J5d6nw,1261
+django/contrib/redirects/locale/hy/LC_MESSAGES/django.po,sha256=40QTpth2AVeoy9P36rMJC2C82YsBh_KYup19WL6zM6w,1359
+django/contrib/redirects/locale/ia/LC_MESSAGES/django.mo,sha256=PDB5ZQP6iH31xN6N2YmPZYjt6zzc88TRmh9_gAWH2U0,1152
+django/contrib/redirects/locale/ia/LC_MESSAGES/django.po,sha256=GXjbzY-cQz2QLx_iuqgijT7VUMcoNKL7prbP6yIbj8E,1297
+django/contrib/redirects/locale/id/LC_MESSAGES/django.mo,sha256=XEsvVWMR9As9csO_6iXNAcLZrErxz3HfDj5GTe06fJU,1105
+django/contrib/redirects/locale/id/LC_MESSAGES/django.po,sha256=t8FoC1xIB-XHDplyDJByQGFnHggxR0LSfUMGwWoAKWE,1410
+django/contrib/redirects/locale/io/LC_MESSAGES/django.mo,sha256=vz7TWRML-DFDFapbEXTByb9-pRQwoeJ0ApSdh6nOzXY,1019
+django/contrib/redirects/locale/io/LC_MESSAGES/django.po,sha256=obStuMYYSQ7x2utkGS3gekdPfnsNAwp3DcNwlwdg1sI,1228
+django/contrib/redirects/locale/is/LC_MESSAGES/django.mo,sha256=aMjlGilYfP7clGriAp1Za60uCD40rvLt9sKXuYX3ABg,1040
+django/contrib/redirects/locale/is/LC_MESSAGES/django.po,sha256=nw5fxVV20eQqsk4WKg6cIiKttG3zsITSVzH4p5xBV8s,1299
+django/contrib/redirects/locale/it/LC_MESSAGES/django.mo,sha256=bBj6dvhZSpxojLZ0GiMBamh1xiluxAYMt6RHubi9CxU,1092
+django/contrib/redirects/locale/it/LC_MESSAGES/django.po,sha256=NHSVus7ixtrB7JDIrYw22srZcse5i4Z9y8Ply_-Jcts,1390
+django/contrib/redirects/locale/ja/LC_MESSAGES/django.mo,sha256=XSJw3iLK0gYVjZ86MYuV4jfoiN_-WkH--oMK5uW9cs8,1193
+django/contrib/redirects/locale/ja/LC_MESSAGES/django.po,sha256=SlYrmC3arGgS7SL8cCnq7d37P-bQGcmpgUXAwVC2eRw,1510
+django/contrib/redirects/locale/ka/LC_MESSAGES/django.mo,sha256=0aOLKrhUX6YAIMNyt6KES9q2iFk2GupEr76WeGlJMkk,1511
+django/contrib/redirects/locale/ka/LC_MESSAGES/django.po,sha256=AQWIEdhxp55XnJwwHrUxxQaGbLJPmdo1YLeT86IJqnY,1725
+django/contrib/redirects/locale/kab/LC_MESSAGES/django.mo,sha256=Ogx9NXK1Nfw4ctZfp-slIL81ziDX3f4DZ01OkVNY5Tw,699
+django/contrib/redirects/locale/kab/LC_MESSAGES/django.po,sha256=gI6aUPkXH-XzKrStDsMCMNfQKDEc-D1ffqE-Z-ItQuI,1001
+django/contrib/redirects/locale/kk/LC_MESSAGES/django.mo,sha256=KVLc6PKL1MP_Px0LmpoW2lIvgLiSzlvoJ9062F-s3Zw,1261
+django/contrib/redirects/locale/kk/LC_MESSAGES/django.po,sha256=Xoy4mnOT51F_GS1oIO91EAuwt-ZfePKh-sutedo6D_g,1478
+django/contrib/redirects/locale/km/LC_MESSAGES/django.mo,sha256=tcW1s7jvTG0cagtdRNT0jSNkhX-B903LKl7bK31ZvJU,1248
+django/contrib/redirects/locale/km/LC_MESSAGES/django.po,sha256=KJ4h1umpfFLdsWZtsfXoeOl6cUPUD97U4ISWt80UZ2U,1437
+django/contrib/redirects/locale/kn/LC_MESSAGES/django.mo,sha256=24GHcQlEoCDri-98eLtqLbGjtJz9cTPAfYdAijsL5ck,788
+django/contrib/redirects/locale/kn/LC_MESSAGES/django.po,sha256=xkH24itr2fpuCQMGQ3xssOqaN_7KzM-GLy0u00ti27I,1245
+django/contrib/redirects/locale/ko/LC_MESSAGES/django.mo,sha256=_m-8YdcKaUqQ-O-ioyJqlvD3d4pT9KEES-_U5v32tVo,1152
+django/contrib/redirects/locale/ko/LC_MESSAGES/django.po,sha256=6m_YYMBCPXdKzk0mN4MdHzroU78uDRp70B67qMu0Ew8,1564
+django/contrib/redirects/locale/ky/LC_MESSAGES/django.mo,sha256=4jX_g-hledmjWEx0RvY99G5QcBj_mQt_HZzpd000J44,1265
+django/contrib/redirects/locale/ky/LC_MESSAGES/django.po,sha256=yvx21nxsqqVzPyyxX9_rF-oeaY2WszXrG4ZDSZTW6-4,1522
+django/contrib/redirects/locale/lb/LC_MESSAGES/django.mo,sha256=xokesKl7h7k9dXFKIJwGETgwx1Ytq6mk2erBSxkgY-o,474
+django/contrib/redirects/locale/lb/LC_MESSAGES/django.po,sha256=Hv1CF9CC78YuVVNpklDtPJDU5-iIUeuXcljewmc9akg,946
+django/contrib/redirects/locale/lt/LC_MESSAGES/django.mo,sha256=reiFMXJnvE4XUosbKjyvUFzl4IKjlJoFK1gVJE9Tbnc,1191
+django/contrib/redirects/locale/lt/LC_MESSAGES/django.po,sha256=G56UIYuuVLgwzHCIj_suHNYPe1z76Y_cauWfGEs4nKI,1448
+django/contrib/redirects/locale/lv/LC_MESSAGES/django.mo,sha256=slGK6O2tYD5yciS8m_7h2WA4LOPf05nQ4oTRKB63etE,1175
+django/contrib/redirects/locale/lv/LC_MESSAGES/django.po,sha256=GUDn1IYQ5UMOQUBvGfuVOeVb-bpf5FHVigqTt_N0I0M,1442
+django/contrib/redirects/locale/mk/LC_MESSAGES/django.mo,sha256=3XGgf2K60LclScPKcgw07TId6x535AW5jtGVJ9lC01A,1353
+django/contrib/redirects/locale/mk/LC_MESSAGES/django.po,sha256=Smsdpid5VByoxvnfzju_XOlp6aTPl8qshFptot3cRYM,1596
+django/contrib/redirects/locale/ml/LC_MESSAGES/django.mo,sha256=IhSkvbgX9xfE4GypOQ7W7SDM-wOOqx1xgSTW7L1JofU,1573
+django/contrib/redirects/locale/ml/LC_MESSAGES/django.po,sha256=9KpXf88GRUB5I51Rj3q9qhvhjHFINuiJ9ig0SZdYE6k,1755
+django/contrib/redirects/locale/mn/LC_MESSAGES/django.mo,sha256=14fdHC_hZrRaA0EAFzBJy8BHj4jMMX6l2e6rLLBtJ8E,1274
+django/contrib/redirects/locale/mn/LC_MESSAGES/django.po,sha256=7_QzUWf5l0P-7gM35p9UW7bOj33NabQq_zSrekUeZsY,1502
+django/contrib/redirects/locale/mr/LC_MESSAGES/django.mo,sha256=KWFQR7X6niKMWIqY93sKtS6o41hsG4pEGLhXwC6MmDI,1530
+django/contrib/redirects/locale/mr/LC_MESSAGES/django.po,sha256=UZp4529Fm4US-Yi5eOlT6Ja7S_s1pc73LqNwEvaxXGw,1687
+django/contrib/redirects/locale/ms/LC_MESSAGES/django.mo,sha256=WUk6hvvHPWuylCGiDvy0MstWoQ1mdmwwfqlms1Nv4Ng,1094
+django/contrib/redirects/locale/ms/LC_MESSAGES/django.po,sha256=bsQDwxqtS5FgPCqTrfm9kw2hH_R2y44DnI5nluUgduc,1255
+django/contrib/redirects/locale/my/LC_MESSAGES/django.mo,sha256=H5-y9A3_1yIXJzC4sSuHqhURxhOlnYEL8Nvc0IF4zUE,549
+django/contrib/redirects/locale/my/LC_MESSAGES/django.po,sha256=MZGNt0jMQA6aHA6OmjvaC_ajvRWfUfDiKkV0j3_E480,1052
+django/contrib/redirects/locale/nb/LC_MESSAGES/django.mo,sha256=pxRtj5VFxTQBbi_mDS05iGoQs4BZ4y6LLJZ9pozJezY,1110
+django/contrib/redirects/locale/nb/LC_MESSAGES/django.po,sha256=ALYXciVa0d0sG70dqjtk17Yh_qwzKAzTXDlEZSU9kc0,1392
+django/contrib/redirects/locale/ne/LC_MESSAGES/django.mo,sha256=TxTnBGIi5k0PKAjADeCuOAJQV5dtzLrsFRXBXtfszWI,1420
+django/contrib/redirects/locale/ne/LC_MESSAGES/django.po,sha256=5b5R-6AlSIQrDyTtcmquoW5xrQRGZwlxZpBpZfVo5t4,1607
+django/contrib/redirects/locale/nl/LC_MESSAGES/django.mo,sha256=Xeh1YbEAu7Lhz07RXPTMDyv7AyWF9Bhe-9oHdWT74mo,1129
+django/contrib/redirects/locale/nl/LC_MESSAGES/django.po,sha256=QuNgrX7w2wO15KPEe3ogVhXbkt0v60EwKmKfD7-PedU,1476
+django/contrib/redirects/locale/nn/LC_MESSAGES/django.mo,sha256=8TQXBF2mzENl7lFpcrsKxkJ4nKySTOgXJM5_I2OD7q8,1143
+django/contrib/redirects/locale/nn/LC_MESSAGES/django.po,sha256=pfrKVQd1wLKKpq-b7CBpc-rZnEEgyZFDSjbipsEiwxM,1344
+django/contrib/redirects/locale/os/LC_MESSAGES/django.mo,sha256=joQ-ibV9_6ctGMNPLZQLCx5fUamRQngs6_LDd_s9sMQ,1150
+django/contrib/redirects/locale/os/LC_MESSAGES/django.po,sha256=ZwFWiuGS9comy7r2kMnKuqaPOvVehVdAAuFvXM5ldxM,1358
+django/contrib/redirects/locale/pa/LC_MESSAGES/django.mo,sha256=MY-OIDNXlZth-ZRoOJ52nlUPg_51_F5k0NBIpc7GZEw,748
+django/contrib/redirects/locale/pa/LC_MESSAGES/django.po,sha256=TPDTK2ZvDyvO1ob8Qfr64QDbHVWAREfEeBO5w9jf63E,1199
+django/contrib/redirects/locale/pl/LC_MESSAGES/django.mo,sha256=9Sc_8aDC8-PADnr4hYdat6iRUXj0QxsWR1RGWKIQP3M,1285
+django/contrib/redirects/locale/pl/LC_MESSAGES/django.po,sha256=RLuSAlWQPvxDGSNHL3j5ohMdf4IZL-g21-_QIuTdY4c,1605
+django/contrib/redirects/locale/pt/LC_MESSAGES/django.mo,sha256=WocPaVk3fQEz_MLmGVtFBGwsThD-gNU7GDocqEbeaBA,1129
+django/contrib/redirects/locale/pt/LC_MESSAGES/django.po,sha256=ptCzoE41c9uFAbgSjb6VHSFYPEUv_51YyBdoThXN3XA,1350
+django/contrib/redirects/locale/pt_BR/LC_MESSAGES/django.mo,sha256=adnRlAeOrULZkdpZGhHbb4D5A-hzJxeYlkfcbarx7pE,1224
+django/contrib/redirects/locale/pt_BR/LC_MESSAGES/django.po,sha256=DLTeZs_Xng3j8bveJizEIBLBjd4lJH_a-TzZxJgtu20,1703
+django/contrib/redirects/locale/ro/LC_MESSAGES/django.mo,sha256=D8FkmV6IxZOn5QAPBu9PwhStBpVQWudU62wKa7ADfJY,1158
+django/contrib/redirects/locale/ro/LC_MESSAGES/django.po,sha256=Z_-pDi2-A7_KXrEQtFlAJ_KLO0vXFKCbMphsNlqfNJk,1477
+django/contrib/redirects/locale/ru/LC_MESSAGES/django.mo,sha256=IvO0IXq1xuX0wpo2hV8po1AMifLS3ElGyQal0vmC_Jw,1457
+django/contrib/redirects/locale/ru/LC_MESSAGES/django.po,sha256=FHb4L3RMVV5ajxGj9y6ZymPtO_XjZrhHmvCZBPwwzmQ,1762
+django/contrib/redirects/locale/sk/LC_MESSAGES/django.mo,sha256=TTgi-SVyS9nbBCsI6NPbg-QA-GMc_-ciYewOUHDb1bM,1222
+django/contrib/redirects/locale/sk/LC_MESSAGES/django.po,sha256=yDuSGdVfHhsorxQNQ6S7ocyJfrI07pcLzyhkvXNCZXk,1506
+django/contrib/redirects/locale/sl/LC_MESSAGES/django.mo,sha256=GAZtOFSUxsOHdXs3AzT40D-3JFWIlNDZU_Z-cMvdaHo,1173
+django/contrib/redirects/locale/sl/LC_MESSAGES/django.po,sha256=gkZTyxNh8L2gNxyLVzm-M1HTiK8KDvughTa2MK9NzWo,1351
+django/contrib/redirects/locale/sq/LC_MESSAGES/django.mo,sha256=f2HyVjWFGnjNXV-EIk0YMFaMH6_ZwYLYgSDwU4fIJfM,1165
+django/contrib/redirects/locale/sq/LC_MESSAGES/django.po,sha256=gbd4JxoevGfDTRx3iYfDtlnh54EwyRKYXxs4XagHvRM,1453
+django/contrib/redirects/locale/sr/LC_MESSAGES/django.mo,sha256=OK90avxrpYxBcvPIZ_tDlSZP6PyRCzFg_7h0F_JlMy8,1367
+django/contrib/redirects/locale/sr/LC_MESSAGES/django.po,sha256=Ipi7j7q5N8aNGWmkz5XGlOPqpD46xCLKarfs-lNbKqM,1629
+django/contrib/redirects/locale/sr_Latn/LC_MESSAGES/django.mo,sha256=qYXT0j80c7a5jMsxeezncAL9Gff2Pb7eJz8iTX0TRX4,1210
+django/contrib/redirects/locale/sr_Latn/LC_MESSAGES/django.po,sha256=CL3ij3uGK8UOMggLXf0MctEydLbyi-9zvkXN5Teuu9c,1424
+django/contrib/redirects/locale/sv/LC_MESSAGES/django.mo,sha256=2j_IyOgbM_yED5lF10r7KGguEC2qX58dRIVogWj5PVY,1134
+django/contrib/redirects/locale/sv/LC_MESSAGES/django.po,sha256=lIFNLfEondtzlwlG3tDf3AH59uEotLtj-XdL87c-QUo,1404
+django/contrib/redirects/locale/sw/LC_MESSAGES/django.mo,sha256=qQjxB8Z6uKoNOa3wI6aDiAYLpWhx7z2yI7nEbXtMOXc,1165
+django/contrib/redirects/locale/sw/LC_MESSAGES/django.po,sha256=rAAmAwjvy69tVeB-QeccIS8CMA96XLeWdfRwDy3_QA0,1385
+django/contrib/redirects/locale/ta/LC_MESSAGES/django.mo,sha256=AE6Py2_CV2gQKjKQAa_UgkLT9i61x3i1hegQpRGuZZM,1502
+django/contrib/redirects/locale/ta/LC_MESSAGES/django.po,sha256=ojdq8p4HnwtK0n6By2I6_xuucOpJIobJEGRMGc_TrS8,1700
+django/contrib/redirects/locale/te/LC_MESSAGES/django.mo,sha256=Gtcs4cbgrD7-bSkPKiPbM5DcjONS2fSdHhvWdbs_E1M,467
+django/contrib/redirects/locale/te/LC_MESSAGES/django.po,sha256=RT-t3TjcOLyNQQWljVrIcPWErKssh_HQMyGujloy-EI,939
+django/contrib/redirects/locale/tg/LC_MESSAGES/django.mo,sha256=6e4Pk9vX1csvSz80spVLhNTd3N251JrXaCga9n60AP8,782
+django/contrib/redirects/locale/tg/LC_MESSAGES/django.po,sha256=2Cmle5usoNZBo8nTfAiqCRq3KqN1WKKdc-mogUOJm9I,1177
+django/contrib/redirects/locale/th/LC_MESSAGES/django.mo,sha256=1l6eO0k1KjcmuRJKUS4ZdtJGhAUmUDMAMIeNwEobQqY,1331
+django/contrib/redirects/locale/th/LC_MESSAGES/django.po,sha256=DVVqpGC6zL8Hy8e6P8ZkhKbvcMJmXV5euLxmfoTCtms,1513
+django/contrib/redirects/locale/tk/LC_MESSAGES/django.mo,sha256=NkxO6C7s1HHT1Jrmwad9zaD3pPyW_sPuZz3F2AGUD7M,1155
+django/contrib/redirects/locale/tk/LC_MESSAGES/django.po,sha256=0EQj1I1oNbAovKmF7o2rQ8_QsQiYqEFDab2KlCFw0s0,1373
+django/contrib/redirects/locale/tr/LC_MESSAGES/django.mo,sha256=-qySxKYwxfFO79cBytvzTBeFGdio1wJlM5DeBBfdxns,1133
+django/contrib/redirects/locale/tr/LC_MESSAGES/django.po,sha256=-03z3YMI6tlt12xwFI2lWchOxiIVbkdVRhghaCoMKlk,1408
+django/contrib/redirects/locale/tt/LC_MESSAGES/django.mo,sha256=Hf1JXcCGNwedxy1nVRM_pQ0yUebC-tvOXr7P0h86JyI,1178
+django/contrib/redirects/locale/tt/LC_MESSAGES/django.po,sha256=2WCyBQtqZk-8GXgtu-x94JYSNrryy2QoMnirhiBrgV0,1376
+django/contrib/redirects/locale/udm/LC_MESSAGES/django.mo,sha256=CNmoKj9Uc0qEInnV5t0Nt4ZnKSZCRdIG5fyfSsqwky4,462
+django/contrib/redirects/locale/udm/LC_MESSAGES/django.po,sha256=xsxlm4itpyLlLdPQRIHLuvTYRvruhM3Ezc9jtp3XSm4,934
+django/contrib/redirects/locale/ug/LC_MESSAGES/django.mo,sha256=qV4UXMJUeNM2vw0LWn-YR9TDn1sQVvnEUcXh7_AX3Jo,1409
+django/contrib/redirects/locale/ug/LC_MESSAGES/django.po,sha256=dilTTU3q5BCYiUIgpjncD3ijPaQgp1l73poSrsZiUUc,1633
+django/contrib/redirects/locale/uk/LC_MESSAGES/django.mo,sha256=QbN1ABfbr2YbZQXz2U4DI-6iTvWoKPrLAn5tGq57G5Y,1569
+django/contrib/redirects/locale/uk/LC_MESSAGES/django.po,sha256=pH9M4ilsJneoHw6E1E3T54QCHGS_i4tlhDc0nbAJP8I,1949
+django/contrib/redirects/locale/ur/LC_MESSAGES/django.mo,sha256=CQkt-yxyAaTd_Aj1ZZC8s5-4fI2TRyTEZ-SYJZgpRrQ,1138
+django/contrib/redirects/locale/ur/LC_MESSAGES/django.po,sha256=CkhmN49PvYTccvlSRu8qGpcbx2C-1aY7K3Lq1VC2fuM,1330
+django/contrib/redirects/locale/uz/LC_MESSAGES/django.mo,sha256=vD0Y920SSsRsLROKFaU6YM8CT5KjQxJcgMh5bZ4Pugo,743
+django/contrib/redirects/locale/uz/LC_MESSAGES/django.po,sha256=G2Rj-6g8Vse2Bp8L_hGIO84S--akagMXj8gSa7F2lK4,1195
+django/contrib/redirects/locale/vi/LC_MESSAGES/django.mo,sha256=BquXycJKh-7-D9p-rGUNnjqzs1d6S1YhEJjFW8_ARFA,1106
+django/contrib/redirects/locale/vi/LC_MESSAGES/django.po,sha256=xsCASrGZNbQk4d1mhsTZBcCpPJ0KO6Jr4Zz1wfnL67s,1301
+django/contrib/redirects/locale/zh_Hans/LC_MESSAGES/django.mo,sha256=iftb_HccNV383_odHbB6Tikn2h7EtP_9QK-Plq2xwTY,1100
+django/contrib/redirects/locale/zh_Hans/LC_MESSAGES/django.po,sha256=xZmfuCEYx7ou_qvtxBcBly5mBmkSBEhnx0xqJj3nvMw,1490
+django/contrib/redirects/locale/zh_Hant/LC_MESSAGES/django.mo,sha256=Dj3gCstbzcxZyR6iL-U_ridpKcyDI8UIAohw8Rq82bM,1108
+django/contrib/redirects/locale/zh_Hant/LC_MESSAGES/django.po,sha256=UvNH_gQtAhWqN-d3qGOB3nuqrKqFhxjIGu09WsZ7_oQ,1413
+django/contrib/redirects/middleware.py,sha256=ydqidqi5JTaoguEFQBRzLEkU3HeiohgVsFglHUE-HIU,1921
+django/contrib/redirects/migrations/0001_initial.py,sha256=0mXB5TgK_fwYbmbB_e7tKSjgOvpHWnZXg0IFcVtnmfU,2101
+django/contrib/redirects/migrations/0002_alter_redirect_new_path_help_text.py,sha256=RXPdSbYewnW1bjjXxNqUIL-qIeSxdBUehBp0BjfRl8o,635
+django/contrib/redirects/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/redirects/migrations/__pycache__/0001_initial.cpython-312.pyc,,
+django/contrib/redirects/migrations/__pycache__/0002_alter_redirect_new_path_help_text.cpython-312.pyc,,
+django/contrib/redirects/migrations/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/redirects/models.py,sha256=KJ6mj0BS243BNPKp26K7OSqcT9j49FPth5m0gNWWxFM,1083
+django/contrib/sessions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/sessions/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/sessions/__pycache__/apps.cpython-312.pyc,,
+django/contrib/sessions/__pycache__/base_session.cpython-312.pyc,,
+django/contrib/sessions/__pycache__/exceptions.cpython-312.pyc,,
+django/contrib/sessions/__pycache__/middleware.cpython-312.pyc,,
+django/contrib/sessions/__pycache__/models.cpython-312.pyc,,
+django/contrib/sessions/__pycache__/serializers.cpython-312.pyc,,
+django/contrib/sessions/apps.py,sha256=5WIMqa3ymqEvYMnFHe3uWZB8XSijUF_NSgaorRD50Lg,194
+django/contrib/sessions/backends/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/sessions/backends/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/sessions/backends/__pycache__/base.cpython-312.pyc,,
+django/contrib/sessions/backends/__pycache__/cache.cpython-312.pyc,,
+django/contrib/sessions/backends/__pycache__/cached_db.cpython-312.pyc,,
+django/contrib/sessions/backends/__pycache__/db.cpython-312.pyc,,
+django/contrib/sessions/backends/__pycache__/file.cpython-312.pyc,,
+django/contrib/sessions/backends/__pycache__/signed_cookies.cpython-312.pyc,,
+django/contrib/sessions/backends/base.py,sha256=uw4jDJHvBQLI1XJCru-_fYZ2Pzfz1U-iiN8sJxNNaVs,16958
+django/contrib/sessions/backends/cache.py,sha256=m9WMB8we8T1j0k9rHP9_7nBuGzDVap3rGMjoM7N5Xe4,4674
+django/contrib/sessions/backends/cached_db.py,sha256=m348hgYLr-rl760T-Yxm2FJmQ6vbI-nZ2vi5QhIybCI,4148
+django/contrib/sessions/backends/db.py,sha256=qoFg94ju0_KtsPUgFCiKAvxbMOXc1YdGAfjktn00nyA,6907
+django/contrib/sessions/backends/file.py,sha256=FtK6zcbQGwLxtINvqTRHNovLHTDuyk61Y7zwNndSUyg,8200
+django/contrib/sessions/backends/signed_cookies.py,sha256=Al_HQ7OnDs77U9AgTcjN5VUVst5dTP-ZUbhuj6Bgsk0,3218
+django/contrib/sessions/base_session.py,sha256=euTO04sxDEk0lovU38a2TLYXJBA-g6nze9asqK2PoNU,1491
+django/contrib/sessions/exceptions.py,sha256=KhkhXiFwfUflSP_t6wCLOEXz1YjBRTKVNbrLmGhOTLo,359
+django/contrib/sessions/locale/af/LC_MESSAGES/django.mo,sha256=0DS0pgVrMN-bUimDfesgHs8Lgr0loz2c6nJdz58RxyQ,717
+django/contrib/sessions/locale/af/LC_MESSAGES/django.po,sha256=ZJRLBshQCAiTTAUycdB3MZIadLeHR5LxbSlDvSWLnEo,838
+django/contrib/sessions/locale/ar/LC_MESSAGES/django.mo,sha256=yoepqaR68PTGLx--cAOzP94Sqyl5xIYpeQ0IFWgY380,846
+django/contrib/sessions/locale/ar/LC_MESSAGES/django.po,sha256=ZgwtBYIdtnqp_8nKHXF1NVJFzQU81-3yv9b7STrQHMc,995
+django/contrib/sessions/locale/ar_DZ/LC_MESSAGES/django.mo,sha256=_iSasR22CxvNWfei6aE_24woPhhhvNzQl5FUO_649dc,817
+django/contrib/sessions/locale/ar_DZ/LC_MESSAGES/django.po,sha256=vop5scstamgFSnO_FWXCEnI7R1N26t7jy_mZUAfETcY,978
+django/contrib/sessions/locale/ast/LC_MESSAGES/django.mo,sha256=hz2m-PkrHby2CKfIOARj6kCzisT-Vs0syfDSTx_iVVw,702
+django/contrib/sessions/locale/ast/LC_MESSAGES/django.po,sha256=M90j1Nx6oDJ16hguUkfKYlyb5OymUeZ5xzPixWxSC7I,846
+django/contrib/sessions/locale/az/LC_MESSAGES/django.mo,sha256=_4XcYdtRasbCjRoaWGoULsXX2cEa--KdRdqbnGoaRuM,731
+django/contrib/sessions/locale/az/LC_MESSAGES/django.po,sha256=qYd7vz6A-hHQNwewzI6wEsxRVLdoc2xLGm1RPW0Hxc4,891
+django/contrib/sessions/locale/be/LC_MESSAGES/django.mo,sha256=FHZ72QuOd-vAOjOXisLs4CaEk7uZuzjO_EfUSB6754M,854
+django/contrib/sessions/locale/be/LC_MESSAGES/django.po,sha256=tHsYVn3XNTcukB0SrHUWP1iV763rrQHCimOyJHRPiek,1023
+django/contrib/sessions/locale/bg/LC_MESSAGES/django.mo,sha256=fFZ8EgRlJ1Z-IP8gPtsUXAnqVHbqQRZpYv6PLWNlNVA,759
+django/contrib/sessions/locale/bg/LC_MESSAGES/django.po,sha256=tXcaDPNmFIv0RU-7sGscRkLCbKEgTBowzVj3AYymarY,997
+django/contrib/sessions/locale/bn/LC_MESSAGES/django.mo,sha256=0BdFN7ou9tmoVG00fCA-frb1Tri3iKz43W7SWal398s,762
+django/contrib/sessions/locale/bn/LC_MESSAGES/django.po,sha256=LycmTel6LXV2HGGN6qzlAfID-cVEQCNnW1Nv_hbWXJk,909
+django/contrib/sessions/locale/br/LC_MESSAGES/django.mo,sha256=6ubPQUyXX08KUssyVZBMMkTlD94mlA6wzsteAMiZ8C8,1027
+django/contrib/sessions/locale/br/LC_MESSAGES/django.po,sha256=LKxGGHOQejKpUp18rCU2FXW8D_H3WuP_P6dPlEluwcE,1201
+django/contrib/sessions/locale/bs/LC_MESSAGES/django.mo,sha256=M7TvlJMrSUAFhp7oUSpUKejnbTuIK-19yiGBBECl9Sc,759
+django/contrib/sessions/locale/bs/LC_MESSAGES/django.po,sha256=Ur0AeRjXUsLgDJhcGiw75hRk4Qe98DzPBOocD7GFDRQ,909
+django/contrib/sessions/locale/ca/LC_MESSAGES/django.mo,sha256=tbaZ48PaihGGD9-2oTKiMFY3kbXjU59nNciCRINOBNk,738
+django/contrib/sessions/locale/ca/LC_MESSAGES/django.po,sha256=tJuJdehKuD9aXOauWOkE5idQhsVsLbeg1Usmc6N_SP0,906
+django/contrib/sessions/locale/ckb/LC_MESSAGES/django.mo,sha256=qTCUlxmStU9w1nXRAc_gRodaN6ojJK_XAxDXoYC5vQI,741
+django/contrib/sessions/locale/ckb/LC_MESSAGES/django.po,sha256=F2bHLL66fWF5_VTM5QvNUFakY7gPRDr1qCjW6AkYxec,905
+django/contrib/sessions/locale/cs/LC_MESSAGES/django.mo,sha256=wEFP4NNaRQDbcbw96UC906jN4rOrlPJMn60VloXr944,759
+django/contrib/sessions/locale/cs/LC_MESSAGES/django.po,sha256=7XkKESwfOmbDRDbUYr1f62-fDOuyI-aCqLGaEiDrmX8,962
+django/contrib/sessions/locale/cy/LC_MESSAGES/django.mo,sha256=GeWVeV2PvgLQV8ecVUA2g3-VvdzMsedgIDUSpn8DByk,774
+django/contrib/sessions/locale/cy/LC_MESSAGES/django.po,sha256=zo18MXtkEdO1L0Q6ewFurx3lsEWTCdh0JpQJTmvw5bY,952
+django/contrib/sessions/locale/da/LC_MESSAGES/django.mo,sha256=7_YecCzfeYQp9zVYt2B7MtjhAAuVb0BcK2D5Qv_uAbg,681
+django/contrib/sessions/locale/da/LC_MESSAGES/django.po,sha256=qX_Oo7niVo57bazlIYFA6bnVmPBclUUTWvZFYNLaG04,880
+django/contrib/sessions/locale/de/LC_MESSAGES/django.mo,sha256=N3kTal0YK9z7Te3zYGLbJmoSB6oWaviWDLGdPlsPa9g,721
+django/contrib/sessions/locale/de/LC_MESSAGES/django.po,sha256=0qnfDeCUQN2buKn6R0MvwhQP05XWxSu-xgvfxvnJe3k,844
+django/contrib/sessions/locale/dsb/LC_MESSAGES/django.mo,sha256=RABl3WZmY6gLh4IqmTUhoBEXygDzjp_5lLF1MU9U5fA,810
+django/contrib/sessions/locale/dsb/LC_MESSAGES/django.po,sha256=cItKs5tASYHzDxfTg0A_dgBQounpzoGyOEFn18E_W_g,934
+django/contrib/sessions/locale/el/LC_MESSAGES/django.mo,sha256=QbTbmcfgc8_4r5hFrIghDhk2XQ4f8_emKmqupMG2ah0,809
+django/contrib/sessions/locale/el/LC_MESSAGES/django.po,sha256=HeaEbpVmFhhrZt2NsZteYaYoeo8FYKZF0IoNJwtzZkc,971
+django/contrib/sessions/locale/en/LC_MESSAGES/django.mo,sha256=U0OV81NfbuNL9ctF-gbGUG5al1StqN-daB-F-gFBFC8,356
+django/contrib/sessions/locale/en/LC_MESSAGES/django.po,sha256=afaM-IIUZtcRZduojUTS8tT0w7C4Ya9lXgReOvq_iF0,804
+django/contrib/sessions/locale/en_AU/LC_MESSAGES/django.mo,sha256=FgY1K6IVyQjMjXqVZxcsyWW_Tu5ckfrbmIfNYq5P-_E,693
+django/contrib/sessions/locale/en_AU/LC_MESSAGES/django.po,sha256=cMV15gJq8jNSUzkhn7uyOf2JYMFx7BNH1oFYa1vISnc,853
+django/contrib/sessions/locale/en_GB/LC_MESSAGES/django.mo,sha256=T5NQCTYkpERfP9yKbUvixT0VdBt1zGmGB8ITlkVc420,707
+django/contrib/sessions/locale/en_GB/LC_MESSAGES/django.po,sha256=1ks_VE1qpEfPcyKg0HybkTG0-DTttTHTfUPhQCR53sw,849
+django/contrib/sessions/locale/eo/LC_MESSAGES/django.mo,sha256=eBvYQbZS_WxVV3QCSZAOyHNIljC2ZXxVc4mktUuXVjI,727
+django/contrib/sessions/locale/eo/LC_MESSAGES/django.po,sha256=Ru9xicyTgHWVHh26hO2nQNFRQmwBnYKEagsS8TZRv3E,917
+django/contrib/sessions/locale/es/LC_MESSAGES/django.mo,sha256=jbHSvHjO2OCLlBD66LefocKOEbefWbPhj-l3NugiWuc,734
+django/contrib/sessions/locale/es/LC_MESSAGES/django.po,sha256=fY5WXeONEXHeuBlH0LkvzdZ2CSgbvLZ8BJc429aIbhI,909
+django/contrib/sessions/locale/es_AR/LC_MESSAGES/django.mo,sha256=_8icF2dMUWj4WW967rc5npgndXBAdJrIiz_VKf5D-Rw,694
+django/contrib/sessions/locale/es_AR/LC_MESSAGES/django.po,sha256=AnmvjeOA7EBTJ6wMOkCl8JRLVYRU8KS0egPijcKutns,879
+django/contrib/sessions/locale/es_CO/LC_MESSAGES/django.mo,sha256=UP7ia0gV9W-l0Qq5AS4ZPadJtml8iuzzlS5C9guMgh8,754
+django/contrib/sessions/locale/es_CO/LC_MESSAGES/django.po,sha256=_XeiiRWvDaGjofamsRHr5up_EQvcw0w-GLLeWK27Af8,878
+django/contrib/sessions/locale/es_MX/LC_MESSAGES/django.mo,sha256=MDM0K3xMvyf8ymvAurHYuacpxfG_YfJFyNnp1uuc6yY,756
+django/contrib/sessions/locale/es_MX/LC_MESSAGES/django.po,sha256=Y7VNa16F_yyK7_XJvF36rR2XNW8aBJK4UDweufyXpxE,892
+django/contrib/sessions/locale/es_VE/LC_MESSAGES/django.mo,sha256=59fZBDut-htCj38ZUoqPjhXJPjZBz-xpU9__QFr3kLs,486
+django/contrib/sessions/locale/es_VE/LC_MESSAGES/django.po,sha256=zWjgB0AmsmhX2tjk1PgldttqY56Czz8epOVCaYWXTLU,761
+django/contrib/sessions/locale/et/LC_MESSAGES/django.mo,sha256=aL1jZWourEC7jtjsuBZHD-Gw9lpL6L1SoqjTtzguxD0,737
+django/contrib/sessions/locale/et/LC_MESSAGES/django.po,sha256=VNBYohAOs59jYWkjVMY-v2zwVy5AKrtBbFRJZLwdCFg,899
+django/contrib/sessions/locale/eu/LC_MESSAGES/django.mo,sha256=M9piOB_t-ZnfN6pX-jeY0yWh2S_5cCuo1oGiy7X65A4,728
+django/contrib/sessions/locale/eu/LC_MESSAGES/django.po,sha256=bHdSoknoH0_dy26e93tWVdO4TT7rnCPXlSLPsYAhwyw,893
+django/contrib/sessions/locale/fa/LC_MESSAGES/django.mo,sha256=6DdJcqaYuBnhpFFHR42w-RqML0eQPFMAUEEDY0Redy8,755
+django/contrib/sessions/locale/fa/LC_MESSAGES/django.po,sha256=rklhNf0UFl2bM6mt7x9lWvfzPH4XWGbrW9Gc2w-9rzg,922
+django/contrib/sessions/locale/fi/LC_MESSAGES/django.mo,sha256=oAugvlTEvJmG8KsZw09WcfnifYY5oHnGo4lxcxqKeaY,721
+django/contrib/sessions/locale/fi/LC_MESSAGES/django.po,sha256=BVVrjbZZtLGAuZ9HK63p769CbjZFZMlS4BewSMfNMKU,889
+django/contrib/sessions/locale/fr/LC_MESSAGES/django.mo,sha256=aDGYdzx2eInF6IZ-UzPDEJkuYVPnvwVND3qVuSfJNWw,692
+django/contrib/sessions/locale/fr/LC_MESSAGES/django.po,sha256=hARxGdtBOzEZ_iVyzkNvcKlgyM8fOkdXTH3upj2XFYM,893
+django/contrib/sessions/locale/fy/LC_MESSAGES/django.mo,sha256=YQQy7wpjBORD9Isd-p0lLzYrUgAqv770_56-vXa0EOc,476
+django/contrib/sessions/locale/fy/LC_MESSAGES/django.po,sha256=U-VEY4WbmIkmrnPK4Mv-B-pbdtDzusBCVmE8iHyvzFU,751
+django/contrib/sessions/locale/ga/LC_MESSAGES/django.mo,sha256=zTrydRCRDiUQwF4tQ3cN1-5w36i6KptagsdA5_SaGy0,747
+django/contrib/sessions/locale/ga/LC_MESSAGES/django.po,sha256=Qpk1JaUWiHSEPdgBk-O_KfvGzwlZ4IAA6c6-nsJe400,958
+django/contrib/sessions/locale/gd/LC_MESSAGES/django.mo,sha256=Yi8blY_fUD5YTlnUD6YXZvv1qjm4QDriO6CJIUe1wIk,791
+django/contrib/sessions/locale/gd/LC_MESSAGES/django.po,sha256=fEa40AUqA5vh743Zqv0FO2WxSFXGYk4IzUR4BoaP-C4,890
+django/contrib/sessions/locale/gl/LC_MESSAGES/django.mo,sha256=lC8uu-mKxt48DLzRvaxz-mOqR0ZfvEuaBI1Hi_nuMpo,692
+django/contrib/sessions/locale/gl/LC_MESSAGES/django.po,sha256=L34leIfwmRJoqX0jfefbNHz0CmON5cSaRXeh7pmFqCY,943
+django/contrib/sessions/locale/he/LC_MESSAGES/django.mo,sha256=qhgjSWfGAOgl-i7iwzSrJttx88xcj1pB0iLkEK64mJU,809
+django/contrib/sessions/locale/he/LC_MESSAGES/django.po,sha256=KvQG6wOpokM-2JkhWnB2UUQacy5Ie1402K_pH2zUOu0,1066
+django/contrib/sessions/locale/hi/LC_MESSAGES/django.mo,sha256=naqxOjfAnNKy3qqnUG-4LGf9arLRJpjyWWmSj5tEfao,759
+django/contrib/sessions/locale/hi/LC_MESSAGES/django.po,sha256=WnTGvOz9YINMcUJg2BYCaHceZLKaTfsba_0AZtRNP38,951
+django/contrib/sessions/locale/hr/LC_MESSAGES/django.mo,sha256=axyJAmXmadpFxIhu8rroVD8NsGGadQemh9-_ZDo7L1U,819
+django/contrib/sessions/locale/hr/LC_MESSAGES/django.po,sha256=3G-qOYXBO-eMWWsa5LwTCW9M1oF0hlWgEz7hAK8hJqI,998
+django/contrib/sessions/locale/hsb/LC_MESSAGES/django.mo,sha256=_OXpOlCt4KU0i65Iw4LMjSsyn__E9wH20l9vDNBSEzw,805
+django/contrib/sessions/locale/hsb/LC_MESSAGES/django.po,sha256=yv3vX_UCDrdl07GQ79Mnytwgz2oTvySYOG9enzMpFJA,929
+django/contrib/sessions/locale/hu/LC_MESSAGES/django.mo,sha256=ik40LnsWkKYEUioJB9e11EX9XZ-qWMa-S7haxGhM-iI,727
+django/contrib/sessions/locale/hu/LC_MESSAGES/django.po,sha256=1-UWEEsFxRwmshP2x4pJbitWIGZ1YMeDDxnAX-XGNxc,884
+django/contrib/sessions/locale/hy/LC_MESSAGES/django.mo,sha256=x6VQWGdidRJFUJme-6jf1pcitktcQHQ7fhmw2UBej1Q,815
+django/contrib/sessions/locale/hy/LC_MESSAGES/django.po,sha256=eRMa3_A2Vx195mx2lvza1v-wcEcEeMrU63f0bgPPFjc,893
+django/contrib/sessions/locale/ia/LC_MESSAGES/django.mo,sha256=-o4aQPNJeqSDRSLqcKuYvJuKNBbFqDJDe3IzHgSgZeQ,744
+django/contrib/sessions/locale/ia/LC_MESSAGES/django.po,sha256=PULLDd3QOIU03kgradgQzT6IicoPhLPlUvFgRl-tGbA,869
+django/contrib/sessions/locale/id/LC_MESSAGES/django.mo,sha256=mOaIF0NGOO0-dt-nhHL-i3cfvt9-JKTbyUkFWPqDS9Y,705
+django/contrib/sessions/locale/id/LC_MESSAGES/django.po,sha256=EA6AJno3CaFOO-dEU9VQ_GEI-RAXS0v0uFqn1RJGjEs,914
+django/contrib/sessions/locale/io/LC_MESSAGES/django.mo,sha256=_rqAY6reegqmxmWc-pW8_kDaG9zflZuD-PGOVFsjRHo,683
+django/contrib/sessions/locale/io/LC_MESSAGES/django.po,sha256=tbKMxGuB6mh_m0ex9rO9KkTy6qyuRW2ERrQsGwmPiaw,840
+django/contrib/sessions/locale/is/LC_MESSAGES/django.mo,sha256=3QeMl-MCnBie9Sc_aQ1I7BrBhkbuArpoSJP95UEs4lg,706
+django/contrib/sessions/locale/is/LC_MESSAGES/django.po,sha256=LADIFJv8L5vgDJxiQUmKPSN64zzzrIKImh8wpLBEVWQ,853
+django/contrib/sessions/locale/it/LC_MESSAGES/django.mo,sha256=qTY3O-0FbbpZ5-BR5xOJWP0rlnIkBZf-oSawW_YJWlk,726
+django/contrib/sessions/locale/it/LC_MESSAGES/django.po,sha256=hEv0iTGLuUvEBk-lF-w7a9P3ifC0-eiodNtuSc7cXhg,869
+django/contrib/sessions/locale/ja/LC_MESSAGES/django.mo,sha256=hbv9FzWzXRIGRh_Kf_FLQB34xfmPU_9RQKn9u1kJqGU,757
+django/contrib/sessions/locale/ja/LC_MESSAGES/django.po,sha256=ppGx5ekOWGgDF3vzyrWsqnFUZ-sVZZhiOhvAzl_8v54,920
+django/contrib/sessions/locale/ka/LC_MESSAGES/django.mo,sha256=VZ-ysrDbea_-tMV-1xtlTeW62IAy2RWR94V3Y1iSh4U,803
+django/contrib/sessions/locale/ka/LC_MESSAGES/django.po,sha256=hqiWUiATlrc7qISF7ndlelIrFwc61kzhKje9l-DY6V4,955
+django/contrib/sessions/locale/kab/LC_MESSAGES/django.mo,sha256=W_yE0NDPJrVznA2Qb89VuprJNwyxSg59ovvjkQe6mAs,743
+django/contrib/sessions/locale/kab/LC_MESSAGES/django.po,sha256=FJeEuv4P3NT_PpWHEUsQVSWXu65nYkJ6Z2AlbSKb0ZA,821
+django/contrib/sessions/locale/kk/LC_MESSAGES/django.mo,sha256=FROGz_MuIhsIU5_-EYV38cHnRZrc3-OxxkBeK0ax9Rk,810
+django/contrib/sessions/locale/kk/LC_MESSAGES/django.po,sha256=P-oHO3Oi3V_RjWHjEAHdTrDfTwKP2xh3yJh7BlXL1VQ,1029
+django/contrib/sessions/locale/km/LC_MESSAGES/django.mo,sha256=VOuKsIG2DEeCA5JdheuMIeJlpmAhKrI6lD4KWYqIIPk,929
+django/contrib/sessions/locale/km/LC_MESSAGES/django.po,sha256=09i6Nd_rUK7UqFpJ70LMXTR6xS0NuGETRLe0CopMVBk,1073
+django/contrib/sessions/locale/kn/LC_MESSAGES/django.mo,sha256=TMZ71RqNR6zI20BeozyLa9cjYrWlvfIajGDfpnHd3pQ,810
+django/contrib/sessions/locale/kn/LC_MESSAGES/django.po,sha256=whdM8P74jkAAHvjgJN8Q77dYd9sIsf_135ID8KBu-a8,990
+django/contrib/sessions/locale/ko/LC_MESSAGES/django.mo,sha256=MAgc0EkV0IrWjC6bSvKiyRlGXtgjhZF-ltTuyAFNDUk,653
+django/contrib/sessions/locale/ko/LC_MESSAGES/django.po,sha256=Fn9KkX9fEOKu2WjUYsP_xHEBbdoDeFHSoE096ctnFFc,874
+django/contrib/sessions/locale/ky/LC_MESSAGES/django.mo,sha256=ME7YUgKOYQz9FF_IdrqHImieEONDrkcn4T3HxTZKSV0,742
+django/contrib/sessions/locale/ky/LC_MESSAGES/django.po,sha256=JZHTs9wYmlWzilRMyp-jZWFSzGxWtPiQefPmLL9yhtM,915
+django/contrib/sessions/locale/lb/LC_MESSAGES/django.mo,sha256=xokesKl7h7k9dXFKIJwGETgwx1Ytq6mk2erBSxkgY-o,474
+django/contrib/sessions/locale/lb/LC_MESSAGES/django.po,sha256=3igeAnQjDg6D7ItBkQQhyBoFJOZlBxT7NoZiExwD-Fo,749
+django/contrib/sessions/locale/lt/LC_MESSAGES/django.mo,sha256=L9w8-qxlDlCqR_2P0PZegfhok_I61n0mJ1koJxzufy4,786
+django/contrib/sessions/locale/lt/LC_MESSAGES/django.po,sha256=dEefLGtg5flFr_v4vHS5HhK1kxx9WYWTw98cvEn132M,1023
+django/contrib/sessions/locale/lv/LC_MESSAGES/django.mo,sha256=exEzDUNwNS0GLsUkKPu_SfqBxU7T6VRA_T2schIQZ88,753
+django/contrib/sessions/locale/lv/LC_MESSAGES/django.po,sha256=fBgQEbsGg1ECVm1PFDrS2sfKs2eqmsqrSYzx9ELotNQ,909
+django/contrib/sessions/locale/mk/LC_MESSAGES/django.mo,sha256=4oTWp8-qzUQBiqG32hNieABgT3O17q2C4iEhcFtAxLA,816
+django/contrib/sessions/locale/mk/LC_MESSAGES/django.po,sha256=afApb5YRhPXUWR8yF_TTym73u0ov7lWiwRda1-uNiLY,988
+django/contrib/sessions/locale/ml/LC_MESSAGES/django.mo,sha256=tff5TsHILSV1kAAB3bzHQZDB9fgMglZJTofzCunGBzc,854
+django/contrib/sessions/locale/ml/LC_MESSAGES/django.po,sha256=eRkeupt42kUey_9vJmlH8USshnXPZ8M7aYHq88u-5iY,1016
+django/contrib/sessions/locale/mn/LC_MESSAGES/django.mo,sha256=CcCH2ggVYrD29Q11ZMthcscBno2ePkQDbZfoYquTRPM,784
+django/contrib/sessions/locale/mn/LC_MESSAGES/django.po,sha256=nvcjbJzXiDvWFXrM5CxgOQIq8XucsZEUVdYkY8LnCRE,992
+django/contrib/sessions/locale/mr/LC_MESSAGES/django.mo,sha256=rFOGgJ9q9AUlEV_XT-Sycs9eaDtD9so7ZNBTkI-E-Ew,768
+django/contrib/sessions/locale/mr/LC_MESSAGES/django.po,sha256=ZMojWauBzqXR7YSTJ5eAVAX4Xqbv6WEoYOpNL4GQaqU,907
+django/contrib/sessions/locale/ms/LC_MESSAGES/django.mo,sha256=rFi4D_ZURYUPjs5AqJ66bW70yL7AekAKWnrZRBvGPiE,649
+django/contrib/sessions/locale/ms/LC_MESSAGES/django.po,sha256=nZuJ_D0JZUzmGensLa7tSgzbBo05qgQcuHmte2oU6WQ,786
+django/contrib/sessions/locale/my/LC_MESSAGES/django.mo,sha256=8zzzyfJYok969YuAwDUaa6YhxaSi3wcXy3HRNXDb_70,872
+django/contrib/sessions/locale/my/LC_MESSAGES/django.po,sha256=mfs0zRBI0tugyyEfXBZzZ_FMIohydq6EYPZGra678pw,997
+django/contrib/sessions/locale/nb/LC_MESSAGES/django.mo,sha256=hfJ1NCFgcAAtUvNEpaZ9b31PyidHxDGicifUWANIbM8,717
+django/contrib/sessions/locale/nb/LC_MESSAGES/django.po,sha256=yXr6oYuiu01oELdQKuztQFWz8x5C2zS5OzEfU9MHJsU,908
+django/contrib/sessions/locale/ne/LC_MESSAGES/django.mo,sha256=slFgMrqGVtLRHdGorLGPpB09SM92_WnbnRR0rlpNlPQ,802
+django/contrib/sessions/locale/ne/LC_MESSAGES/django.po,sha256=1vyoiGnnaB8f9SFz8PGfzpw6V_NoL78DQwjjnB6fS98,978
+django/contrib/sessions/locale/nl/LC_MESSAGES/django.mo,sha256=84BTlTyxa409moKbQMFyJisI65w22p09qjJHBAmQe-g,692
+django/contrib/sessions/locale/nl/LC_MESSAGES/django.po,sha256=smRr-QPGm6h6hdXxghggWES8b2NnL7yDQ07coUypa8g,909
+django/contrib/sessions/locale/nn/LC_MESSAGES/django.mo,sha256=cytH72J3yS1PURcgyrD8R2PV5d3SbPE73IAqOMBPPVg,667
+django/contrib/sessions/locale/nn/LC_MESSAGES/django.po,sha256=y9l60yy_W3qjxWzxgJg5VgEH9KAIHIQb5hv7mgnep9w,851
+django/contrib/sessions/locale/os/LC_MESSAGES/django.mo,sha256=xVux1Ag45Jo9HQBbkrRzcWrNjqP09nMQl16jIh0YVlo,732
+django/contrib/sessions/locale/os/LC_MESSAGES/django.po,sha256=1hG5Vsz2a2yW05_Z9cTNrBKtK9VRPZuQdx4KJ_0n98o,892
+django/contrib/sessions/locale/pa/LC_MESSAGES/django.mo,sha256=qEx4r_ONwXK1-qYD5uxxXEQPqK5I6rf38QZoUSm7UVA,771
+django/contrib/sessions/locale/pa/LC_MESSAGES/django.po,sha256=M7fmVGP8DtZGEuTV3iJhuWWqILVUTDZvUey_mrP4_fM,918
+django/contrib/sessions/locale/pl/LC_MESSAGES/django.mo,sha256=F9CQb7gQ1ltP6B82JNKu8IAsTdHK5TNke0rtDIgNz3c,828
+django/contrib/sessions/locale/pl/LC_MESSAGES/django.po,sha256=C_MJBB-vwTZbx-t4-mzun-RxHhdOVv04b6xrWdnTv8E,1084
+django/contrib/sessions/locale/pt/LC_MESSAGES/django.mo,sha256=dlJF7hF4GjLmQPdAJhtf-FCKX26XsOmZlChOcxxIqPk,738
+django/contrib/sessions/locale/pt/LC_MESSAGES/django.po,sha256=cOycrw3HCHjSYBadpalyrg5LdRTlqZCTyMh93GOQ8O0,896
+django/contrib/sessions/locale/pt_BR/LC_MESSAGES/django.mo,sha256=XHNF5D8oXIia3e3LYwxd46a2JOgDc_ykvc8yuo21fT0,757
+django/contrib/sessions/locale/pt_BR/LC_MESSAGES/django.po,sha256=K_zxKaUKngWPFpvHgXOcymJEsiONSw-OrVrroRXmUUk,924
+django/contrib/sessions/locale/ro/LC_MESSAGES/django.mo,sha256=WR9I9Gum_pq7Qg2Gzhf-zAv43OwR_uDtsbhtx4Ta5gE,776
+django/contrib/sessions/locale/ro/LC_MESSAGES/django.po,sha256=fEgVxL_0Llnjspu9EsXBf8AVL0DGdfF7NgV88G7WN1E,987
+django/contrib/sessions/locale/ru/LC_MESSAGES/django.mo,sha256=n-8vXR5spEbdfyeWOYWC_6kBbAppNoRrWYgqKFY6gJA,913
+django/contrib/sessions/locale/ru/LC_MESSAGES/django.po,sha256=sNqNGdoof6eXzFlh4YIp1O54MdDOAFDjD3GvAFsNP8k,1101
+django/contrib/sessions/locale/sk/LC_MESSAGES/django.mo,sha256=Yntm624Wt410RwuNPU1c-WwQoyrRrBs69VlKMlNUHeQ,766
+django/contrib/sessions/locale/sk/LC_MESSAGES/django.po,sha256=wt7BJk6RpFogJ2Wwa9Mh0mJi9YMpNYKTUSDuDuv1Ong,975
+django/contrib/sessions/locale/sl/LC_MESSAGES/django.mo,sha256=EE6mB8BiYRyAxK6qzurRWcaYVs96FO_4rERYQdtIt3k,770
+django/contrib/sessions/locale/sl/LC_MESSAGES/django.po,sha256=KTjBWyvaNCHbpV9K6vbnavwxxXqf2DlIqVPv7MVFcO8,928
+django/contrib/sessions/locale/sq/LC_MESSAGES/django.mo,sha256=eRaTy3WOC76EYLtMSD4xtJj2h8eE4W-TS4VvCVxI5bw,683
+django/contrib/sessions/locale/sq/LC_MESSAGES/django.po,sha256=9pzp7834LQKafe5fJzC4OKsAd6XfgtEQl6K6hVLaBQM,844
+django/contrib/sessions/locale/sr/LC_MESSAGES/django.mo,sha256=ZDBOYmWIoSyDeT0nYIIFeMtW5jwpr257CbdTZlkVeRQ,855
+django/contrib/sessions/locale/sr/LC_MESSAGES/django.po,sha256=OXQOYeac0ghuzLrwaErJGr1FczuORTu2yroFX5hvRnk,1027
+django/contrib/sessions/locale/sr_Latn/LC_MESSAGES/django.mo,sha256=f3x9f9hTOsJltghjzJMdd8ueDwzxJex6zTXsU-_Hf_Y,757
+django/contrib/sessions/locale/sr_Latn/LC_MESSAGES/django.po,sha256=HKjo7hjSAvgrIvlI0SkgF3zxz8TtKWyBT51UGNhDwek,946
+django/contrib/sessions/locale/sv/LC_MESSAGES/django.mo,sha256=SGbr0K_5iAMA22MfseAldMDgLSEBrI56pCtyV8tMAPc,707
+django/contrib/sessions/locale/sv/LC_MESSAGES/django.po,sha256=vraY3915wBYGeYu9Ro0-TlBeLWqGZP1fbckLv8y47Ys,853
+django/contrib/sessions/locale/sw/LC_MESSAGES/django.mo,sha256=Edhqp8yuBnrGtJqPO7jxobeXN4uU5wKSLrOsFO1F23k,743
+django/contrib/sessions/locale/sw/LC_MESSAGES/django.po,sha256=iY4rN4T-AA2FBQA7DiWWFvrclqKiDYQefqwwVw61-f8,858
+django/contrib/sessions/locale/ta/LC_MESSAGES/django.mo,sha256=qLIThhFQbJKc1_UVr7wVIm1rJfK2rO5m84BCB_oKq7s,801
+django/contrib/sessions/locale/ta/LC_MESSAGES/django.po,sha256=bYqtYf9XgP9IKKFJXh0u64JhRhDvPPUliI1J-NeRpKE,945
+django/contrib/sessions/locale/te/LC_MESSAGES/django.mo,sha256=kteZeivEckt4AmAeKgmgouMQo1qqSQrI8M42B16gMnQ,786
+django/contrib/sessions/locale/te/LC_MESSAGES/django.po,sha256=dQgiNS52RHrL6bV9CEO7Jk9lk3YUQrUBDCg_bP2OSZc,980
+django/contrib/sessions/locale/tg/LC_MESSAGES/django.mo,sha256=N6AiKfV47QTlO5Z_r4SQZXVLtouu-NVSwWkePgD17Tc,747
+django/contrib/sessions/locale/tg/LC_MESSAGES/django.po,sha256=wvvDNu060yqlTxy3swM0x3v6QpvCB9DkfNm0Q-kb9Xk,910
+django/contrib/sessions/locale/th/LC_MESSAGES/django.mo,sha256=D41vbkoYMdYPj3587p-c5yytLVi9pE5xvRZEYhZrxPs,814
+django/contrib/sessions/locale/th/LC_MESSAGES/django.po,sha256=43704TUv4ysKhL8T5MowZwlyv1JZrPyVGrpdIyb3r40,988
+django/contrib/sessions/locale/tk/LC_MESSAGES/django.mo,sha256=pT_hpKCwFT60GUXzD_4z8JOhmh1HRnkZj-QSouVEgUA,699
+django/contrib/sessions/locale/tk/LC_MESSAGES/django.po,sha256=trqXxfyIbh4V4szol0pXETmEWRxAAKywPZ9EzVMVE-I,865
+django/contrib/sessions/locale/tr/LC_MESSAGES/django.mo,sha256=STDnYOeO1d9nSCVf7pSkMq8R7z1aeqq-xAuIYjsofuE,685
+django/contrib/sessions/locale/tr/LC_MESSAGES/django.po,sha256=XYKo0_P5xitYehvjMzEw2MTp_Nza-cIXEECV3dA6BmY,863
+django/contrib/sessions/locale/tt/LC_MESSAGES/django.mo,sha256=Q-FGu_ljTsxXO_EWu7zCzGwoqFXkeoTzWSlvx85VLGc,806
+django/contrib/sessions/locale/tt/LC_MESSAGES/django.po,sha256=UC85dFs_1836noZTuZEzPqAjQMFfSvj7oGmEWOGcfCA,962
+django/contrib/sessions/locale/udm/LC_MESSAGES/django.mo,sha256=CNmoKj9Uc0qEInnV5t0Nt4ZnKSZCRdIG5fyfSsqwky4,462
+django/contrib/sessions/locale/udm/LC_MESSAGES/django.po,sha256=CPml2Fn9Ax_qO5brCFDLPBoTiNdvsvJb1btQ0COwUfY,737
+django/contrib/sessions/locale/ug/LC_MESSAGES/django.mo,sha256=HMwjTByc3HrhFvCt_iOioYZE7JEKLzNlb2DTu6TCgto,748
+django/contrib/sessions/locale/ug/LC_MESSAGES/django.po,sha256=QEdIUuvVMFbOPSCYs6k-61rBwmTUXFCcR1pKn53dXtQ,864
+django/contrib/sessions/locale/uk/LC_MESSAGES/django.mo,sha256=jzNrLuFghQMCHNRQ0ihnKMCicgear0yWiTOLnvdPszw,841
+django/contrib/sessions/locale/uk/LC_MESSAGES/django.po,sha256=4K2geuGjRpJCtNfGPMhYWZlGxUy5xzIoDKA2jL2iGos,1171
+django/contrib/sessions/locale/ur/LC_MESSAGES/django.mo,sha256=FkGIiHegr8HR8zjVyJ9TTW1T9WYtAL5Mg77nRKnKqWk,729
+django/contrib/sessions/locale/ur/LC_MESSAGES/django.po,sha256=qR4QEBTP6CH09XFCzsPSPg2Dv0LqzbRV_I67HO2OUwk,879
+django/contrib/sessions/locale/uz/LC_MESSAGES/django.mo,sha256=asPu0RhMB_Ui1li-OTVL4qIXnM9XpjsYyx5yJldDYBY,744
+django/contrib/sessions/locale/uz/LC_MESSAGES/django.po,sha256=KsHuLgGJt-KDH0h6ND7JLP2dDJAdLVHSlau4DkkfqA8,880
+django/contrib/sessions/locale/vi/LC_MESSAGES/django.mo,sha256=KriTpT-Hgr10DMnY5Bmbd4isxmSFLmav8vg2tuL2Bb8,679
+django/contrib/sessions/locale/vi/LC_MESSAGES/django.po,sha256=M7S46Q0Q961ykz_5FCAN8SXQ54w8tp4rZeZpy6bPtXs,909
+django/contrib/sessions/locale/zh_Hans/LC_MESSAGES/django.mo,sha256=zsbhIMocgB8Yn1XEBxbIIbBh8tLifvvYNlhe5U61ch8,722
+django/contrib/sessions/locale/zh_Hans/LC_MESSAGES/django.po,sha256=tPshgXjEv6pME4N082ztamJhd5whHB2_IV_egdP-LlQ,889
+django/contrib/sessions/locale/zh_Hant/LC_MESSAGES/django.mo,sha256=l6mWJJ_Lbfn3GsvmblZMtyXzgzqgIgroAOCg3DdzQyI,676
+django/contrib/sessions/locale/zh_Hant/LC_MESSAGES/django.po,sha256=MRV_86xy4ILP46qZtxkHGJwWEvXwF5XAvJ16LNMdx3Q,904
+django/contrib/sessions/management/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/sessions/management/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/sessions/management/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/sessions/management/commands/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/sessions/management/commands/__pycache__/clearsessions.cpython-312.pyc,,
+django/contrib/sessions/management/commands/clearsessions.py,sha256=pAiO5o7zgButVlYAV93bPnmiwzWP7V5N7-xPtxSkjJg,661
+django/contrib/sessions/middleware.py,sha256=ziZex9xiqxBYl9SC91i4QIDYuoenz4OoKaNO7sXu8kQ,3483
+django/contrib/sessions/migrations/0001_initial.py,sha256=KqQ44jk-5RNcTdqUv95l_UnoMA8cP5O-0lrjoJ8vabk,1148
+django/contrib/sessions/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/sessions/migrations/__pycache__/0001_initial.cpython-312.pyc,,
+django/contrib/sessions/migrations/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/sessions/models.py,sha256=BguwuQSDzpeTNXhteYRAcspg1rop431tjFeZUVWZNYc,1250
+django/contrib/sessions/serializers.py,sha256=S9oDsUAjFv2MTlLQA6AoehggKyHXpu6-Qnrqybhgvkg,106
+django/contrib/sitemaps/__init__.py,sha256=hZuWQsKCQHfgPOx1GQPETMzTT9oqzcpp2wDMfGiLhp8,6923
+django/contrib/sitemaps/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/sitemaps/__pycache__/apps.cpython-312.pyc,,
+django/contrib/sitemaps/__pycache__/views.cpython-312.pyc,,
+django/contrib/sitemaps/apps.py,sha256=xYE-mAs37nL8ZAnv052LhUKVUwGYKB3xyPy4t8pwOpw,249
+django/contrib/sitemaps/templates/sitemap.xml,sha256=L092SHTtwtmNJ_Lj_jLrzHhfI0-OKKIw5fpyOfr4qRs,683
+django/contrib/sitemaps/templates/sitemap_index.xml,sha256=SQf9avfFmnT8j-nLEc8lVQQcdhiy_qhnqjssIMti3oU,360
+django/contrib/sitemaps/views.py,sha256=WoBVQN0jHzjrhuB-_tMdbC8S1Hb9TAnVyL1Kk3CcGM4,4657
+django/contrib/sites/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/sites/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/sites/__pycache__/admin.cpython-312.pyc,,
+django/contrib/sites/__pycache__/apps.cpython-312.pyc,,
+django/contrib/sites/__pycache__/checks.cpython-312.pyc,,
+django/contrib/sites/__pycache__/management.cpython-312.pyc,,
+django/contrib/sites/__pycache__/managers.cpython-312.pyc,,
+django/contrib/sites/__pycache__/middleware.cpython-312.pyc,,
+django/contrib/sites/__pycache__/models.cpython-312.pyc,,
+django/contrib/sites/__pycache__/requests.cpython-312.pyc,,
+django/contrib/sites/__pycache__/shortcuts.cpython-312.pyc,,
+django/contrib/sites/admin.py,sha256=IWvGDQUTDPEUsd-uuxfHxJq4syGtddNKUdkP0nmVUMA,214
+django/contrib/sites/apps.py,sha256=uBLHUyQoSuo1Q7NwLTwlvsTuRU1MXwj4t6lRUnIBdwk,562
+django/contrib/sites/checks.py,sha256=AydGM1G1L9mvmTbNMTXRbZzPbHpIiknkRzLh5uFQLLI,366
+django/contrib/sites/locale/af/LC_MESSAGES/django.mo,sha256=A10bZFMs-wUetVfF5UrFwmuiKnN4ZnlrR4Rx8U4Ut1A,786
+django/contrib/sites/locale/af/LC_MESSAGES/django.po,sha256=O0-ZRvmXvV_34kONuqakuXV5OmYbQ569K1Puj3qQNac,907
+django/contrib/sites/locale/ar/LC_MESSAGES/django.mo,sha256=kLoytp2jvhWn6p1c8kNVua2sYAMnrpS4xnbluHD22Vs,947
+django/contrib/sites/locale/ar/LC_MESSAGES/django.po,sha256=HYA3pA29GktzXBP-soUEn9VP2vkZuhVIXVA8TNPCHCs,1135
+django/contrib/sites/locale/ar_DZ/LC_MESSAGES/django.mo,sha256=-ltwY57Th6LNqU3bgOPPP7qWtII5c6rj8Dv8eY7PZ84,918
+django/contrib/sites/locale/ar_DZ/LC_MESSAGES/django.po,sha256=KRTjZ2dFRWVPmE_hC5Hq8eDv3GQs3yQKCgV5ISFmEKk,1079
+django/contrib/sites/locale/ast/LC_MESSAGES/django.mo,sha256=eEvaeiGnZFBPGzKLlRz4M9AHemgJVAb-yNpbpxRqtd0,774
+django/contrib/sites/locale/ast/LC_MESSAGES/django.po,sha256=huBohKzLpdaJRFMFXXSDhDCUOqVqyWXfxb8_lLOkUd0,915
+django/contrib/sites/locale/az/LC_MESSAGES/django.mo,sha256=CjAGI4qGoXN95q4LpCLXLKvaNB33Ocf5SfXdurFBkas,773
+django/contrib/sites/locale/az/LC_MESSAGES/django.po,sha256=E84kNPFhgHmIfYT0uzCnTPGwPkAqKzqwFvJB7pETbVo,933
+django/contrib/sites/locale/be/LC_MESSAGES/django.mo,sha256=HGh78mI50ZldBtQ8jId26SI-lSHv4ZLcveRN2J8VzH8,983
+django/contrib/sites/locale/be/LC_MESSAGES/django.po,sha256=W5FhVJKcmd3WHl2Lpd5NJUsc7_sE_1Pipk3CVPoGPa4,1152
+django/contrib/sites/locale/bg/LC_MESSAGES/django.mo,sha256=a2R52umIQIhnzFaFYSRhQ6nBlywE8RGMj2FUOFmyb0A,904
+django/contrib/sites/locale/bg/LC_MESSAGES/django.po,sha256=awB8RMS-qByhNB6eH2f0Oyxb3SH8waLhrZ--rokGfaI,1118
+django/contrib/sites/locale/bn/LC_MESSAGES/django.mo,sha256=cI3a9_L-OC7gtdyRNaGX7A5w0Za0M4ERnYB7rSNkuRU,925
+django/contrib/sites/locale/bn/LC_MESSAGES/django.po,sha256=8ZxYF16bgtTZSZRZFok6IJxUV02vIztoVx2qXqwO8NM,1090
+django/contrib/sites/locale/br/LC_MESSAGES/django.mo,sha256=rI_dIznbwnadZbxOPtQxZ1pGYePNwcNNXt05iiPkchU,1107
+django/contrib/sites/locale/br/LC_MESSAGES/django.po,sha256=7Ein5Xw73DNGGtdd595Bx6ixfSD-dBXZNBUU44pSLuQ,1281
+django/contrib/sites/locale/bs/LC_MESSAGES/django.mo,sha256=bDeqQNme586LnQRQdvOWaLGZssjOoECef3vMq_OCXno,692
+django/contrib/sites/locale/bs/LC_MESSAGES/django.po,sha256=xRTWInDNiLxikjwsjgW_pYjhy24zOro90-909ns9fig,923
+django/contrib/sites/locale/ca/LC_MESSAGES/django.mo,sha256=lEUuQEpgDY3bVWzRONrPzYlojRoNduT16_oYDkkbdfk,791
+django/contrib/sites/locale/ca/LC_MESSAGES/django.po,sha256=aORAoVn69iG1ynmEfnkBzBO-UZOzzbkPVOU-ZvfMtZg,996
+django/contrib/sites/locale/ckb/LC_MESSAGES/django.mo,sha256=Chp4sX73l_RFw4aaf9x67vEO1_cM8eh5c0URKBgMU-Q,843
+django/contrib/sites/locale/ckb/LC_MESSAGES/django.po,sha256=2NPav4574kEwTS_nZTUoVbYxJFzsaC5MdQUCD9iqC6E,1007
+django/contrib/sites/locale/cs/LC_MESSAGES/django.mo,sha256=mnXnpU7sLDTJ3OrIUTnGarPYsupNIUPV4ex_BPWU8fk,827
+django/contrib/sites/locale/cs/LC_MESSAGES/django.po,sha256=ONzFlwzmt7p5jdp6111qQkkevckRrd7GNS0lkDPKu-4,1035
+django/contrib/sites/locale/cy/LC_MESSAGES/django.mo,sha256=70pOie0K__hkmM9oBUaQfVwHjK8Cl48E26kRQL2mtew,835
+django/contrib/sites/locale/cy/LC_MESSAGES/django.po,sha256=FAZrVc72x-4R1A-1qYOBwADoXngC_F6FO8nRjr5-Z6g,1013
+django/contrib/sites/locale/da/LC_MESSAGES/django.mo,sha256=FTOyV1DIH9sMldyjgPw98d2HCotoO4zJ_KY_C9DCB7Y,753
+django/contrib/sites/locale/da/LC_MESSAGES/django.po,sha256=Po1Z6u52CFCyz9hLfK009pMbZzZgHrBse0ViX8wCYm8,957
+django/contrib/sites/locale/de/LC_MESSAGES/django.mo,sha256=5Q6X0_bDQ1ZRpkTy7UpPNzrhmQsB9Q0P1agB7koRyzs,792
+django/contrib/sites/locale/de/LC_MESSAGES/django.po,sha256=aD0wBinqtDUPvBbwtHrLEhFdoVRx1nOh17cJFuWhN3U,980
+django/contrib/sites/locale/dsb/LC_MESSAGES/django.mo,sha256=pPpWYsYp81MTrqCsGF0QnGktZNIll70bdBwSkuVE8go,868
+django/contrib/sites/locale/dsb/LC_MESSAGES/django.po,sha256=IA3G8AKJls20gzfxnrfPzivMNpL8A0zBQBg7OyzrP6g,992
+django/contrib/sites/locale/el/LC_MESSAGES/django.mo,sha256=G9o1zLGysUePGzZRicQ2aIIrc2UXMLTQmdpbrUMfWBU,878
+django/contrib/sites/locale/el/LC_MESSAGES/django.po,sha256=RBi_D-_znYuV6LXfTlSOf1Mvuyl96fIyEoiZ-lgeyWs,1133
+django/contrib/sites/locale/en/LC_MESSAGES/django.mo,sha256=U0OV81NfbuNL9ctF-gbGUG5al1StqN-daB-F-gFBFC8,356
+django/contrib/sites/locale/en/LC_MESSAGES/django.po,sha256=tSjfrNZ_FqLHsXjm5NuTyo5-JpdlPLsPZjFqF2APhy8,817
+django/contrib/sites/locale/en_AU/LC_MESSAGES/django.mo,sha256=G--2j_CR99JjRgVIX2Y_5pDfO7IgIkvK4kYHZtGzpxU,753
+django/contrib/sites/locale/en_AU/LC_MESSAGES/django.po,sha256=Giw634r94MJT1Q3qgqM7gZakQCasRM9Dm7MDkb9JOc8,913
+django/contrib/sites/locale/en_GB/LC_MESSAGES/django.mo,sha256=FbSh7msJdrHsXr0EtDMuODFzSANG_HJ3iBlW8ePpqFs,639
+django/contrib/sites/locale/en_GB/LC_MESSAGES/django.po,sha256=Ib-DIuTWlrN3kg99kLCuqWJVtt1NWaFD4UbDFK6d4KY,862
+django/contrib/sites/locale/eo/LC_MESSAGES/django.mo,sha256=N4KkH12OHxic3pp1okeBhpfDx8XxxpULk3UC219vjWU,792
+django/contrib/sites/locale/eo/LC_MESSAGES/django.po,sha256=ymXSJaFJWGBO903ObqR-ows-p4T3KyUplc_p_3r1uk8,1043
+django/contrib/sites/locale/es/LC_MESSAGES/django.mo,sha256=qLN1uoCdslxdYWgdjgSBi7szllP-mQZtHbuZnNOthsQ,804
+django/contrib/sites/locale/es/LC_MESSAGES/django.po,sha256=QClia2zY39269VSQzkQsLwwukthN6u2JBsjbLNxA1VQ,1066
+django/contrib/sites/locale/es_AR/LC_MESSAGES/django.mo,sha256=_O4rVk7IM2BBlZvjDP2SvTOo8WWqthQi5exQzt027-s,776
+django/contrib/sites/locale/es_AR/LC_MESSAGES/django.po,sha256=RwyNylXbyxdSXn6qRDXd99-GaEPlmr6TicHTUW0boaQ,969
+django/contrib/sites/locale/es_CO/LC_MESSAGES/django.mo,sha256=a4Xje2M26wyIx6Wlg6puHo_OXjiDEy7b0FquT9gbThA,825
+django/contrib/sites/locale/es_CO/LC_MESSAGES/django.po,sha256=9bnRhVD099JzkheO80l65dufjuawsj9aSFgFu5A-lnM,949
+django/contrib/sites/locale/es_MX/LC_MESSAGES/django.mo,sha256=AtGta5jBL9XNBvfSpsCcnDtDhvcb89ALl4hNjSPxibM,809
+django/contrib/sites/locale/es_MX/LC_MESSAGES/django.po,sha256=TnkpQp-7swH-x9cytUJe-QJRd2n_pYMVo0ltDw9Pu8o,991
+django/contrib/sites/locale/es_VE/LC_MESSAGES/django.mo,sha256=59fZBDut-htCj38ZUoqPjhXJPjZBz-xpU9__QFr3kLs,486
+django/contrib/sites/locale/es_VE/LC_MESSAGES/django.po,sha256=8PWXy2L1l67wDIi98Q45j7OpVITr0Lt4zwitAnB-d_o,791
+django/contrib/sites/locale/et/LC_MESSAGES/django.mo,sha256=I2E-49UQsG-F26OeAfnKlfUdA3YCkUSV8ffA-GMSkE0,788
+django/contrib/sites/locale/et/LC_MESSAGES/django.po,sha256=mEfD6EyQ15PPivb5FTlkabt3Lo_XGtomI9XzHrrh34Y,992
+django/contrib/sites/locale/eu/LC_MESSAGES/django.mo,sha256=1HTAFI3DvTAflLJsN7NVtSd4XOTlfoeLGFyYCOX69Ec,807
+django/contrib/sites/locale/eu/LC_MESSAGES/django.po,sha256=NWxdE5-mF6Ak4nPRpCFEgAMIsVDe9YBEZl81v9kEuX8,1023
+django/contrib/sites/locale/fa/LC_MESSAGES/django.mo,sha256=odtsOpZ6noNqwDb18HDc2e6nz3NMsa-wrTN-9dk7d9w,872
+django/contrib/sites/locale/fa/LC_MESSAGES/django.po,sha256=-DirRvcTqcpIy90QAUiCSoNkCDRifqpWSzLriJ4cwQU,1094
+django/contrib/sites/locale/fi/LC_MESSAGES/django.mo,sha256=I5DUeLk1ChUC32q5uzriABCLLJpJKNbEK4BfqylPQzg,786
+django/contrib/sites/locale/fi/LC_MESSAGES/django.po,sha256=LH2sFIKM3YHPoz9zIu10z1DFv1svXphBdOhXNy4a17s,929
+django/contrib/sites/locale/fr/LC_MESSAGES/django.mo,sha256=W7Ne5HqgnRcl42njzbUaDSY059jdhwvr0tgZzecVWD8,756
+django/contrib/sites/locale/fr/LC_MESSAGES/django.po,sha256=u24rHDJ47AoBgcmBwI1tIescAgbjFxov6y906H_uhK0,999
+django/contrib/sites/locale/fy/LC_MESSAGES/django.mo,sha256=YQQy7wpjBORD9Isd-p0lLzYrUgAqv770_56-vXa0EOc,476
+django/contrib/sites/locale/fy/LC_MESSAGES/django.po,sha256=Yh6Lw0QI2Me0zCtlyXraFLjERKqklB6-IJLDTjH_jTs,781
+django/contrib/sites/locale/ga/LC_MESSAGES/django.mo,sha256=RKnHbMHTD4CAxNU6SXQ6jCbgzqDIZZuGOFcdX_baCA4,814
+django/contrib/sites/locale/ga/LC_MESSAGES/django.po,sha256=fqY_eHIE04JxXXyi5ZECLMzcfyG0ZXasxG6ZIErkcrQ,1058
+django/contrib/sites/locale/gd/LC_MESSAGES/django.mo,sha256=df4XIGGD6FIyMUXsb-SoSqNfBFAsRXf4qYtolh_C964,858
+django/contrib/sites/locale/gd/LC_MESSAGES/django.po,sha256=NPKp7A5-y-MR7r8r4WqtcVQJEHCIOP5mLTd0cIfUsug,957
+django/contrib/sites/locale/gl/LC_MESSAGES/django.mo,sha256=tiRYDFC1_V2n1jkEQqhjjQBdZzFkhxzNfHIzG2l3PX4,728
+django/contrib/sites/locale/gl/LC_MESSAGES/django.po,sha256=DNY_rv6w6VrAu3hMUwx3cgLLyH4PFfgaJ9dSKfLBrpI,979
+django/contrib/sites/locale/he/LC_MESSAGES/django.mo,sha256=L3bganfG4gHqp2WXGh4rfWmmbaIxHaGc7-ypAqjSL_E,820
+django/contrib/sites/locale/he/LC_MESSAGES/django.po,sha256=iO3OZwz2aiuAzugkKp5Hxonwdg3kKjBurxR685J2ZMk,1082
+django/contrib/sites/locale/hi/LC_MESSAGES/django.mo,sha256=J4oIS1vJnCvdCCUD4tlTUVyTe4Xn0gKcWedfhH4C0t0,665
+django/contrib/sites/locale/hi/LC_MESSAGES/django.po,sha256=INBrm37jL3okBHuzX8MSN1vMptj77a-4kwQkAyt8w_8,890
+django/contrib/sites/locale/hr/LC_MESSAGES/django.mo,sha256=KjDUhEaOuYSMexcURu2UgfkatN2rrUcAbCUbcpVSInk,876
+django/contrib/sites/locale/hr/LC_MESSAGES/django.po,sha256=-nFMFkVuDoKYDFV_zdNULOqQlnqtiCG57aakN5hqlmg,1055
+django/contrib/sites/locale/hsb/LC_MESSAGES/django.mo,sha256=RyHVb7u9aRn5BXmWzR1gApbZlOioPDJ59ufR1Oo3e8Y,863
+django/contrib/sites/locale/hsb/LC_MESSAGES/django.po,sha256=Aq54y5Gb14bIt28oDDrFltnSOk31Z2YalwaJMDMXfWc,987
+django/contrib/sites/locale/hu/LC_MESSAGES/django.mo,sha256=P--LN84U2BeZAvRVR-OiWl4R02cTTBi2o8XR2yHIwIU,796
+django/contrib/sites/locale/hu/LC_MESSAGES/django.po,sha256=b0VhyFdNaZZR5MH1vFsLL69FmICN8Dz-sTRk0PdK49E,953
+django/contrib/sites/locale/hy/LC_MESSAGES/django.mo,sha256=Hs9XwRHRkHicLWt_NvWvr7nMocmY-Kc8XphhVSAMQRc,906
+django/contrib/sites/locale/hy/LC_MESSAGES/django.po,sha256=MU4hXXGfjXKfYcjxDYzFfsEUIelz5ZzyQLkeSrUQKa0,1049
+django/contrib/sites/locale/ia/LC_MESSAGES/django.mo,sha256=gRMs-W5EiY26gqzwnDXEMbeb1vs0bYZ2DC2a9VCciew,809
+django/contrib/sites/locale/ia/LC_MESSAGES/django.po,sha256=HXZzn9ACIqfR2YoyvpK2FjZ7QuEq_RVZ1kSC4nxMgeg,934
+django/contrib/sites/locale/id/LC_MESSAGES/django.mo,sha256=__2E_2TmVUcbf1ygxtS1lHvkhv8L0mdTAtJpBsdH24Y,791
+django/contrib/sites/locale/id/LC_MESSAGES/django.po,sha256=e5teAHiMjLR8RDlg8q99qtW-K81ltcIiBIdb1MZw2sE,1000
+django/contrib/sites/locale/io/LC_MESSAGES/django.mo,sha256=W-NP0b-zR1oWUZnHZ6fPu5AC2Q6o7nUNoxssgeguUBo,760
+django/contrib/sites/locale/io/LC_MESSAGES/django.po,sha256=G4GUUz3rxoBjWTs-j5RFCvv52AEHiwrCBwom5hYeBSE,914
+django/contrib/sites/locale/is/LC_MESSAGES/django.mo,sha256=lkJgTzDjh5PNfIJpOS2DxKmwVUs9Sl5XwFHv4YdCB30,812
+django/contrib/sites/locale/is/LC_MESSAGES/django.po,sha256=1DVgAcHSZVyDd5xn483oqICIG4ooyZY8ko7A3aDogKM,976
+django/contrib/sites/locale/it/LC_MESSAGES/django.mo,sha256=6NQjjtDMudnAgnDCkemOXinzX0J-eAE5gSq1F8kjusY,795
+django/contrib/sites/locale/it/LC_MESSAGES/django.po,sha256=zxavlLMmp1t1rCDsgrw12kVgxiK5EyR_mOalSu8-ws8,984
+django/contrib/sites/locale/ja/LC_MESSAGES/django.mo,sha256=RNuCS6wv8uK5TmXkSH_7SjsbUFkf24spZfTsvfoTKro,814
+django/contrib/sites/locale/ja/LC_MESSAGES/django.po,sha256=e-cj92VOVc5ycIY6NwyFh5bO7Q9q5vp5CG4dOzd_eWQ,982
+django/contrib/sites/locale/ka/LC_MESSAGES/django.mo,sha256=m8GTqr9j0ijn0YJhvnsYwlk5oYcASKbHg_5hLqZ91TI,993
+django/contrib/sites/locale/ka/LC_MESSAGES/django.po,sha256=1upohcHrQH9T34b6lW09MTtFkk5WswdYOLs2vMAJIuE,1160
+django/contrib/sites/locale/kab/LC_MESSAGES/django.mo,sha256=Utdj5gH5YPeaYMjeMzF-vjqYvYTCipre2qCBkEJSc-Y,808
+django/contrib/sites/locale/kab/LC_MESSAGES/django.po,sha256=d78Z-YanYZkyP5tpasj8oAa5RimVEmce6dlq5vDSscA,886
+django/contrib/sites/locale/kk/LC_MESSAGES/django.mo,sha256=T2dTZ83vBRfQb2dRaKOrhvO00BHQu_2bu0O0k7RsvGA,895
+django/contrib/sites/locale/kk/LC_MESSAGES/django.po,sha256=HvdSFqsumyNurDJ6NKVLjtDdSIg0KZN2v29dM748GtU,1062
+django/contrib/sites/locale/km/LC_MESSAGES/django.mo,sha256=Q7pn5E4qN957j20-iCHgrfI-p8sm3Tc8O2DWeuH0By8,701
+django/contrib/sites/locale/km/LC_MESSAGES/django.po,sha256=TOs76vlCMYOZrdHgXPWZhQH1kTBQTpzsDJ8N4kbJQ7E,926
+django/contrib/sites/locale/kn/LC_MESSAGES/django.mo,sha256=_jl_4_39oe940UMyb15NljGOd45kkCeVNpJy6JvGWTE,673
+django/contrib/sites/locale/kn/LC_MESSAGES/django.po,sha256=cMPXF2DeiQuErhyFMe4i7swxMoqoz1sqtBEXf4Ghx1c,921
+django/contrib/sites/locale/ko/LC_MESSAGES/django.mo,sha256=OSr4OPZCkJqp2ymg32reatGzafM5Qq8fY4D4Dl21Cqk,744
+django/contrib/sites/locale/ko/LC_MESSAGES/django.po,sha256=Lekvcfi1xH8QVwFeSbKU3i26w71ALRy5rbPi3xS03Bw,1052
+django/contrib/sites/locale/ky/LC_MESSAGES/django.mo,sha256=IYxp8jG5iyN81h7YJqOiSQdOH7DnwOiIvelKZfzP6ZA,811
+django/contrib/sites/locale/ky/LC_MESSAGES/django.po,sha256=rxPdgQoBtGQSi5diOy3MXyoM4ffpwdWCc4WE3pjIHEI,927
+django/contrib/sites/locale/lb/LC_MESSAGES/django.mo,sha256=xokesKl7h7k9dXFKIJwGETgwx1Ytq6mk2erBSxkgY-o,474
+django/contrib/sites/locale/lb/LC_MESSAGES/django.po,sha256=1yRdK9Zyh7kcWG7wUexuF9-zxEaKLS2gG3ggVOHbRJ8,779
+django/contrib/sites/locale/lt/LC_MESSAGES/django.mo,sha256=bK6PJtd7DaOgDukkzuqos5ktgdjSF_ffL9IJTQY839s,869
+django/contrib/sites/locale/lt/LC_MESSAGES/django.po,sha256=T-vdVqs9KCz9vMs9FfushgZN9z7LQOT-C86D85H2X8c,1195
+django/contrib/sites/locale/lv/LC_MESSAGES/django.mo,sha256=t9bQiVqpAmXrq8QijN4Lh0n6EGUGQjnuH7hDcu21z4c,823
+django/contrib/sites/locale/lv/LC_MESSAGES/django.po,sha256=vMaEtXGosD3AcTomiuctbOpjLes8TRBnumLe8DC4yq4,1023
+django/contrib/sites/locale/mk/LC_MESSAGES/django.mo,sha256=_YXasRJRWjYmmiEWCrAoqnrKuHHPBG_v_EYTUe16Nfo,885
+django/contrib/sites/locale/mk/LC_MESSAGES/django.po,sha256=AgdIjiSpN0P5o5rr5Ie4sFhnmS5d4doB1ffk91lmOvY,1062
+django/contrib/sites/locale/ml/LC_MESSAGES/django.mo,sha256=axNQVBY0nbR7hYa5bzNtdxB17AUOs2WXhu0Rg--FA3Q,1007
+django/contrib/sites/locale/ml/LC_MESSAGES/django.po,sha256=Sg7hHfK8OMs05ebtTv8gxS6_2kZv-OODwf7okP95Jtk,1169
+django/contrib/sites/locale/mn/LC_MESSAGES/django.mo,sha256=w2sqJRAe0wyz_IuCZ_Ocubs_VHL6wV1BcutWPz0dseQ,867
+django/contrib/sites/locale/mn/LC_MESSAGES/django.po,sha256=Zh_Eao0kLZsrQ8wkL1f-pRrsAtNJOspu45uStq5t8Mo,1127
+django/contrib/sites/locale/mr/LC_MESSAGES/django.mo,sha256=CudEHmP5qNvQ-BfEBOoYMh0qGVw80m-wgeu7eh7zaCQ,884
+django/contrib/sites/locale/mr/LC_MESSAGES/django.po,sha256=FtdCo3O-35EIuOP5OOQU8afWDCbn4ge2lmxjVAYtbGU,1023
+django/contrib/sites/locale/ms/LC_MESSAGES/django.mo,sha256=GToJlS8yDNEy-D3-p7p8ZlWEZYHlSzZAcVIH5nQEkkI,727
+django/contrib/sites/locale/ms/LC_MESSAGES/django.po,sha256=_4l4DCIqSWZtZZNyfzpBA0V-CbAaHe9Ckz06VLbTjFo,864
+django/contrib/sites/locale/my/LC_MESSAGES/django.mo,sha256=jN59e9wRheZYx1A4t_BKc7Hx11J5LJg2wQRd21aQv08,961
+django/contrib/sites/locale/my/LC_MESSAGES/django.po,sha256=EhqYIW5-rX33YjsDsBwfiFb3BK6fZKVc3CRYeJpZX1E,1086
+django/contrib/sites/locale/nb/LC_MESSAGES/django.mo,sha256=AaiHGcmcciy5IMBPVAShcc1OQOETJvBCv7GYHMcIQMA,793
+django/contrib/sites/locale/nb/LC_MESSAGES/django.po,sha256=936zoN1sPSiiq7GuH01umrw8W6BtymYEU3bCfOQyfWE,1000
+django/contrib/sites/locale/ne/LC_MESSAGES/django.mo,sha256=n96YovpBax3T5VZSmIfGmd7Zakn9FJShJs5rvUX7Kf0,863
+django/contrib/sites/locale/ne/LC_MESSAGES/django.po,sha256=B14rhDd8GAaIjxd1sYjxO2pZfS8gAwZ1C-kCdVkRXho,1078
+django/contrib/sites/locale/nl/LC_MESSAGES/django.mo,sha256=ghu-tNPNZuE4sVRDWDVmmmVNPYZLWYm_UPJRqh8wmec,735
+django/contrib/sites/locale/nl/LC_MESSAGES/django.po,sha256=1DCQNzMRhy4vW-KkmlPGy58UR27Np5ilmYhmjaq-8_k,1030
+django/contrib/sites/locale/nn/LC_MESSAGES/django.mo,sha256=eSW8kwbzm2HsE9s9IRCsAo9juimVQjcfdd8rtl3TQJM,731
+django/contrib/sites/locale/nn/LC_MESSAGES/django.po,sha256=OOyvE7iji9hwvz8Z_OxWoKw2e3ptk3dqeqlriXgilSc,915
+django/contrib/sites/locale/os/LC_MESSAGES/django.mo,sha256=Su06FkWMOPzBxoung3bEju_EnyAEAXROoe33imO65uQ,806
+django/contrib/sites/locale/os/LC_MESSAGES/django.po,sha256=4i4rX6aXDUKjq64T02iStqV2V2erUsSVnTivh2XtQeY,963
+django/contrib/sites/locale/pa/LC_MESSAGES/django.mo,sha256=tOHiisOtZrTyIFoo4Ipn_XFH9hhu-ubJLMdOML5ZUgk,684
+django/contrib/sites/locale/pa/LC_MESSAGES/django.po,sha256=ztGyuqvzxRfNjqDG0rMLCu_oQ8V3Dxdsx0WZoYUyNv8,912
+django/contrib/sites/locale/pl/LC_MESSAGES/django.mo,sha256=lo5K262sZmo-hXvcHoBsEDqX8oJEPSxJY5EfRIqHZh0,903
+django/contrib/sites/locale/pl/LC_MESSAGES/django.po,sha256=-kQ49UvXITMy1vjJoN_emuazV_EjNDQnZDERXWNoKvw,1181
+django/contrib/sites/locale/pt/LC_MESSAGES/django.mo,sha256=PrcFQ04lFJ7mIYThXbW6acmDigEFIoLAC0PYk5hfaJs,797
+django/contrib/sites/locale/pt/LC_MESSAGES/django.po,sha256=Aj8hYI9W5nk5uxKHj1oE-b9bxmmuoeXLKaJDPfI2x2o,993
+django/contrib/sites/locale/pt_BR/LC_MESSAGES/django.mo,sha256=BsFfarOR6Qk67fB-tTWgGhuOReJSgjwJBkIzZsv28vo,824
+django/contrib/sites/locale/pt_BR/LC_MESSAGES/django.po,sha256=jfvgelpWn2VQqYe2_CE39SLTsscCckvjuZo6dWII28c,1023
+django/contrib/sites/locale/ro/LC_MESSAGES/django.mo,sha256=oGsZw4_uYpaH6adMxnAuifJgHeZ_ytRZ4rFhiNfRQkQ,857
+django/contrib/sites/locale/ro/LC_MESSAGES/django.po,sha256=tWbWVbjFFELNzSXX4_5ltmzEeEJsY3pKwgEOjgV_W_8,1112
+django/contrib/sites/locale/ru/LC_MESSAGES/django.mo,sha256=bIZJWMpm2O5S6RC_2cfkrp5NXaTU2GWSsMr0wHVEmcw,1016
+django/contrib/sites/locale/ru/LC_MESSAGES/django.po,sha256=jHy5GR05ZSjLmAwaVNq3m0WdhO9GYxge3rDBziqesA8,1300
+django/contrib/sites/locale/sk/LC_MESSAGES/django.mo,sha256=-EYdm14ZjoR8bd7Rv2b5G7UJVSKmZa1ItLsdATR3-Cg,822
+django/contrib/sites/locale/sk/LC_MESSAGES/django.po,sha256=VSRlsq8uk-hP0JI94iWsGX8Al76vvGK4N1xIoFtoRQM,1070
+django/contrib/sites/locale/sl/LC_MESSAGES/django.mo,sha256=JmkpTKJGWgnBM3CqOUriGvrDnvg2YWabIU2kbYAOM4s,845
+django/contrib/sites/locale/sl/LC_MESSAGES/django.po,sha256=qWrWrSz5r3UOVraX08ILt3TTmfyTDGKbJKbTlN9YImU,1059
+django/contrib/sites/locale/sq/LC_MESSAGES/django.mo,sha256=DMLN1ZDJeDnslavjcKloXSXn6IvangVliVP3O6U8dAY,769
+django/contrib/sites/locale/sq/LC_MESSAGES/django.po,sha256=zg3ALcMNZErAS_xFxmtv6TmXZ0vxobX5AzCwOSRSwc8,930
+django/contrib/sites/locale/sr/LC_MESSAGES/django.mo,sha256=8kfi9IPdB2reF8C_eC2phaP6qonboHPwes_w3UgNtzw,935
+django/contrib/sites/locale/sr/LC_MESSAGES/django.po,sha256=A7xaen8H1W4uMBRAqCXT_0KQMoA2-45AUNDfGo9FydI,1107
+django/contrib/sites/locale/sr_Latn/LC_MESSAGES/django.mo,sha256=jMXiq18efq0wErJAQfJR1fCnkYcEb7OYXg8sv6kzP0s,815
+django/contrib/sites/locale/sr_Latn/LC_MESSAGES/django.po,sha256=9jkWYcZCTfQr2UZtyvhWDAmEHBrzunJUZcx7FlrFOis,1004
+django/contrib/sites/locale/sv/LC_MESSAGES/django.mo,sha256=1AttMJ2KbQQgJVH9e9KuCKC0UqDHvWSPcKkbPkSLphQ,768
+django/contrib/sites/locale/sv/LC_MESSAGES/django.po,sha256=N7wqrcFb5ZNX83q1ZCkpkP94Lb3ZIBUATDssNT8F51c,1028
+django/contrib/sites/locale/sw/LC_MESSAGES/django.mo,sha256=cWjjDdFXBGmpUm03UDtgdDrREa2r75oMsXiEPT_Bx3g,781
+django/contrib/sites/locale/sw/LC_MESSAGES/django.po,sha256=oOKNdztQQU0sd6XmLI-n3ONmTL7jx3Q0z1YD8673Wi8,901
+django/contrib/sites/locale/ta/LC_MESSAGES/django.mo,sha256=CLO41KsSKqBrgtrHi6fmXaBk-_Y2l4KBLDJctZuZyWY,714
+django/contrib/sites/locale/ta/LC_MESSAGES/django.po,sha256=YsTITHg7ikkNcsP29tDgkZrUdtO0s9PrV1XPu4mgqCw,939
+django/contrib/sites/locale/te/LC_MESSAGES/django.mo,sha256=GmIWuVyIOcoQoAmr2HxCwBDE9JUYEktzYig93H_4v50,687
+django/contrib/sites/locale/te/LC_MESSAGES/django.po,sha256=jbncxU9H3EjXxWPsEoCKJhKi392XXTGvWyuenqLDxps,912
+django/contrib/sites/locale/tg/LC_MESSAGES/django.mo,sha256=wiWRlf3AN5zlFMNyP_rSDZS7M5rHQJ2DTUHARtXjim8,863
+django/contrib/sites/locale/tg/LC_MESSAGES/django.po,sha256=VBGZfJIw40JZe15ghsk-n3qUVX0VH2nFQQhpBy_lk1Y,1026
+django/contrib/sites/locale/th/LC_MESSAGES/django.mo,sha256=dQOp4JoP3gvfsxqEQ73L6F8FgH1YtAA9hYY-Uz5sv6Y,898
+django/contrib/sites/locale/th/LC_MESSAGES/django.po,sha256=auZBoKKKCHZbbh0PaUr9YKiWB1TEYZoj4bE7efAonV8,1077
+django/contrib/sites/locale/tk/LC_MESSAGES/django.mo,sha256=YhzSiVb_NdG1s7G1-SGGd4R3uweZQgnTs3G8Lv9r5z0,755
+django/contrib/sites/locale/tk/LC_MESSAGES/django.po,sha256=sigmzH3Ni2vJwLJ7ba8EeB4wnDXsg8rQRFExZAGycF4,917
+django/contrib/sites/locale/tr/LC_MESSAGES/django.mo,sha256=ryf01jcvvBMGPKkdViieDuor-Lr2KRXZeFF1gPupCOA,758
+django/contrib/sites/locale/tr/LC_MESSAGES/django.po,sha256=L9tsnwxw1BEJD-Nm3m1RAS7ekgdmyC0ETs_mr7tQw1E,1043
+django/contrib/sites/locale/tt/LC_MESSAGES/django.mo,sha256=gmmjXeEQUlBpfDmouhxE-qpEtv-iWdQSobYL5MWprZc,706
+django/contrib/sites/locale/tt/LC_MESSAGES/django.po,sha256=yj49TjwcZ4YrGqnJrKh3neKydlTgwYduto9KsmxI_eI,930
+django/contrib/sites/locale/udm/LC_MESSAGES/django.mo,sha256=CNmoKj9Uc0qEInnV5t0Nt4ZnKSZCRdIG5fyfSsqwky4,462
+django/contrib/sites/locale/udm/LC_MESSAGES/django.po,sha256=vrLZ0XJF63CO3IucbQpd12lxuoM9S8tTUv6cpu3g81c,767
+django/contrib/sites/locale/ug/LC_MESSAGES/django.mo,sha256=EBWMPAJLaxkIPQ5hm_nMRxs7Y0SEEgu6zcDM4jBUAt8,868
+django/contrib/sites/locale/ug/LC_MESSAGES/django.po,sha256=9a0kmoIxg-KMu5faIjcRgWehr3Ild-stVZsBdDrzHV0,1030
+django/contrib/sites/locale/uk/LC_MESSAGES/django.mo,sha256=H4806mPqOoHJFm549F7drzsfkvAXWKmn1w_WVwQx9rk,960
+django/contrib/sites/locale/uk/LC_MESSAGES/django.po,sha256=CJZTOaurDXwpgBiwXx3W7juaF0EctEImPhJdDn8j1xU,1341
+django/contrib/sites/locale/ur/LC_MESSAGES/django.mo,sha256=s6QL8AB_Mp9haXS4n1r9b0YhEUECPxUyPrHTMI3agts,654
+django/contrib/sites/locale/ur/LC_MESSAGES/django.po,sha256=R9tv3qtett8CUGackoHrc5XADeygVKAE0Fz8YzK2PZ4,885
+django/contrib/sites/locale/uz/LC_MESSAGES/django.mo,sha256=OsuqnLEDl9gUAwsmM2s1KH7VD74ID-k7JXcjGhjFlEY,799
+django/contrib/sites/locale/uz/LC_MESSAGES/django.po,sha256=RoaOwLDjkqqIJTuxpuY7eMLo42n6FoYAYutCfMaDk4I,935
+django/contrib/sites/locale/vi/LC_MESSAGES/django.mo,sha256=YOaKcdrN1238Zdm81jUkc2cpxjInAbdnhsSqHP_jQsI,762
+django/contrib/sites/locale/vi/LC_MESSAGES/django.po,sha256=AHcqR2p0fdscLvzbJO_a-CzMzaeRL4LOw4HB9K3noVQ,989
+django/contrib/sites/locale/zh_Hans/LC_MESSAGES/django.mo,sha256=7D9_pDY5lBRpo1kfzIQL-PNvIg-ofCm7cBHE1-JWlMk,779
+django/contrib/sites/locale/zh_Hans/LC_MESSAGES/django.po,sha256=xI_N00xhV8dWDp4fg5Mmj9ivOBBdHP79T3-JYXPyc5M,946
+django/contrib/sites/locale/zh_Hant/LC_MESSAGES/django.mo,sha256=C4ZEuruq2Qnj7Zk-ZUfPWjLHcbNaC0V9MlDs8Go9Ieo,736
+django/contrib/sites/locale/zh_Hant/LC_MESSAGES/django.po,sha256=wGZCUT4Yg8FJLZZ6C_mf5Lly3YkPIhbTBiyTmj5emj8,1055
+django/contrib/sites/management.py,sha256=AElGktvFhWXJtlJwOKpUlIeuv2thkNM8F6boliML84U,1646
+django/contrib/sites/managers.py,sha256=uqD_Cu3P4NCp7VVdGn0NvHfhsZB05MLmiPmgot-ygz4,1994
+django/contrib/sites/middleware.py,sha256=qYcVHsHOg0VxQNS4saoLHkdF503nJR-D7Z01vE0SvUM,309
+django/contrib/sites/migrations/0001_initial.py,sha256=8fY63Z5DwbKQ1HtvAajKDhBLEufigRTsoRazyEf5RU4,1361
+django/contrib/sites/migrations/0002_alter_domain_unique.py,sha256=llK7IKQKnFCK5viHLew2ZMdV9e1sHy0H1blszEu_NKs,549
+django/contrib/sites/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/sites/migrations/__pycache__/0001_initial.cpython-312.pyc,,
+django/contrib/sites/migrations/__pycache__/0002_alter_domain_unique.cpython-312.pyc,,
+django/contrib/sites/migrations/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/sites/models.py,sha256=0DWVfDGMYqTZgs_LP6hlVxY3ztbwPzulE9Dos8z6M3Q,3695
+django/contrib/sites/requests.py,sha256=baABc6fmTejNmk8M3fcoQ1cuI2qpJzF8Y47A1xSt8gY,641
+django/contrib/sites/shortcuts.py,sha256=nekVQADJROFYwKCD7flmWDMQ9uLAaaKztHVKl5emuWc,573
+django/contrib/staticfiles/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/staticfiles/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/staticfiles/__pycache__/apps.cpython-312.pyc,,
+django/contrib/staticfiles/__pycache__/checks.cpython-312.pyc,,
+django/contrib/staticfiles/__pycache__/finders.cpython-312.pyc,,
+django/contrib/staticfiles/__pycache__/handlers.cpython-312.pyc,,
+django/contrib/staticfiles/__pycache__/storage.cpython-312.pyc,,
+django/contrib/staticfiles/__pycache__/testing.cpython-312.pyc,,
+django/contrib/staticfiles/__pycache__/urls.cpython-312.pyc,,
+django/contrib/staticfiles/__pycache__/utils.cpython-312.pyc,,
+django/contrib/staticfiles/__pycache__/views.cpython-312.pyc,,
+django/contrib/staticfiles/apps.py,sha256=8G9HetU3WBNDfXKfzYfyXjZ--X3loBkkQSB7xfleIl4,504
+django/contrib/staticfiles/checks.py,sha256=FPzYotgRzxqWYDnjIK78bgQAfBSFqeJB04RDVMxlhng,846
+django/contrib/staticfiles/finders.py,sha256=_mfSsh1rOFW_ZHzX__fug0yGAuBqdXI-v0cG1aTRMEE,10996
+django/contrib/staticfiles/handlers.py,sha256=DeDbXvIUeSs0icls4e1HQ3y-6-agjO_c2O5ufkSnuls,4035
+django/contrib/staticfiles/management/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/staticfiles/management/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/staticfiles/management/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/staticfiles/management/commands/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/staticfiles/management/commands/__pycache__/collectstatic.cpython-312.pyc,,
+django/contrib/staticfiles/management/commands/__pycache__/findstatic.cpython-312.pyc,,
+django/contrib/staticfiles/management/commands/__pycache__/runserver.cpython-312.pyc,,
+django/contrib/staticfiles/management/commands/collectstatic.py,sha256=Zd65dgKD8JlXmoDb3ig6tvZka4gMV_6egbLcoRLJ1SA,15137
+django/contrib/staticfiles/management/commands/findstatic.py,sha256=TMMGlbV-B1aq1b27nA6Otu6hV44pqAzeuEtTV2DPmp0,1638
+django/contrib/staticfiles/management/commands/runserver.py,sha256=U_7oCY8LJX5Jn1xlMv-qF4EQoUvlT0ldB5E_0sJmRtw,1373
+django/contrib/staticfiles/storage.py,sha256=ZI_qo3HWJ64rXMExqay2XXlzviqsy7Yy4mU9Zv5jvfM,21036
+django/contrib/staticfiles/testing.py,sha256=4X-EtOfXnwkJAyFT8qe4H4sbVTKgM65klLUtY81KHiE,463
+django/contrib/staticfiles/urls.py,sha256=owDM_hdyPeRmxYxZisSMoplwnzWrptI_W8-3K2f7ITA,498
+django/contrib/staticfiles/utils.py,sha256=iPXHA0yMXu37PQwCrq9zjhSzjZf_zEBXJ-dHGsqZoX8,2279
+django/contrib/staticfiles/views.py,sha256=mX70oejBU2FPZ9_idkI0EiRBkTjKcCD7JJ34gYxhM2M,1262
+django/contrib/syndication/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/contrib/syndication/__pycache__/__init__.cpython-312.pyc,,
+django/contrib/syndication/__pycache__/apps.cpython-312.pyc,,
+django/contrib/syndication/__pycache__/views.cpython-312.pyc,,
+django/contrib/syndication/apps.py,sha256=7IpHoihPWtOcA6S4O6VoG0XRlqEp3jsfrNf-D-eluic,203
+django/contrib/syndication/views.py,sha256=c8T8V49cyTMk6KLna8fbULOr3aMjkqye6C5lMAFofUU,9309
+django/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/core/__pycache__/__init__.cpython-312.pyc,,
+django/core/__pycache__/asgi.cpython-312.pyc,,
+django/core/__pycache__/exceptions.cpython-312.pyc,,
+django/core/__pycache__/paginator.cpython-312.pyc,,
+django/core/__pycache__/signals.cpython-312.pyc,,
+django/core/__pycache__/signing.cpython-312.pyc,,
+django/core/__pycache__/validators.cpython-312.pyc,,
+django/core/__pycache__/wsgi.cpython-312.pyc,,
+django/core/asgi.py,sha256=N2L3GS6F6oL-yD9Tu2otspCi2UhbRQ90LEx3ExOP1m0,386
+django/core/cache/__init__.py,sha256=Z1LsL-TNTNVU5X3CLeHeK4Fbfar76n4zwBr4aC9kxuI,1929
+django/core/cache/__pycache__/__init__.cpython-312.pyc,,
+django/core/cache/__pycache__/utils.cpython-312.pyc,,
+django/core/cache/backends/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/core/cache/backends/__pycache__/__init__.cpython-312.pyc,,
+django/core/cache/backends/__pycache__/base.cpython-312.pyc,,
+django/core/cache/backends/__pycache__/db.cpython-312.pyc,,
+django/core/cache/backends/__pycache__/dummy.cpython-312.pyc,,
+django/core/cache/backends/__pycache__/filebased.cpython-312.pyc,,
+django/core/cache/backends/__pycache__/locmem.cpython-312.pyc,,
+django/core/cache/backends/__pycache__/memcached.cpython-312.pyc,,
+django/core/cache/backends/__pycache__/redis.cpython-312.pyc,,
+django/core/cache/backends/base.py,sha256=n7j5e0LbCYY3y6mv96_qEqPW1g5a_Ogp6J98dqtScv0,14291
+django/core/cache/backends/db.py,sha256=HlTGDpZugousm1JUeT9HCdp1_leMdKihOJu8cWyIqfg,11372
+django/core/cache/backends/dummy.py,sha256=fQbFiL72DnVKP9UU4WDsZYaxYKx7FlMOJhtP8aky2ic,1043
+django/core/cache/backends/filebased.py,sha256=yV5BkcKMbNFD_RuBwj--M51JY-RVUKblfNORt5-_dac,5794
+django/core/cache/backends/locmem.py,sha256=cqdFgPxYrfEKDvKR2IYiFV7-MwhM0CIHPxLTBxJMDTQ,4035
+django/core/cache/backends/memcached.py,sha256=cB5QRCdr9uocB-tWA1FMBQtWQRqHSRpE7UcIMYI86gI,6776
+django/core/cache/backends/redis.py,sha256=TB1bw1JK7jmUMLlu-nzuuMhtUp0JXBxzFOX149RVeFc,7924
+django/core/cache/utils.py,sha256=3ZLYgUDD6iLiLMC6vjXKfUQigsoU23ffpJx8e71M4XA,397
+django/core/checks/__init__.py,sha256=gFG0gY0C0L-akCrk1F0Q_WmkptYDLXYdyzr3wNJVIi4,1195
+django/core/checks/__pycache__/__init__.cpython-312.pyc,,
+django/core/checks/__pycache__/async_checks.cpython-312.pyc,,
+django/core/checks/__pycache__/caches.cpython-312.pyc,,
+django/core/checks/__pycache__/database.cpython-312.pyc,,
+django/core/checks/__pycache__/files.cpython-312.pyc,,
+django/core/checks/__pycache__/messages.cpython-312.pyc,,
+django/core/checks/__pycache__/model_checks.cpython-312.pyc,,
+django/core/checks/__pycache__/registry.cpython-312.pyc,,
+django/core/checks/__pycache__/templates.cpython-312.pyc,,
+django/core/checks/__pycache__/translation.cpython-312.pyc,,
+django/core/checks/__pycache__/urls.cpython-312.pyc,,
+django/core/checks/async_checks.py,sha256=A9p_jebELrf4fiD6jJtBM6Gvm8cMb03sSuW9Ncx3-vU,403
+django/core/checks/caches.py,sha256=hbcIFD_grXUQR2lGAzzlCX6qMJfkXj02ZDJElgdT5Yg,2643
+django/core/checks/compatibility/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/core/checks/compatibility/__pycache__/__init__.cpython-312.pyc,,
+django/core/checks/compatibility/__pycache__/django_4_0.cpython-312.pyc,,
+django/core/checks/compatibility/django_4_0.py,sha256=2s7lm9LZ0NrhaYSrw1Y5mMkL5BC68SS-TyD-TKczbEI,657
+django/core/checks/database.py,sha256=sBj-8o4DmpG5QPy1KXgXtZ0FZ0T9xdlT4XBIc70wmEQ,341
+django/core/checks/files.py,sha256=W4yYHiWrqi0d_G6tDWTw79pr2dgJY41rOv7mRpbtp2Q,522
+django/core/checks/messages.py,sha256=vIJtvmeafgwFzwcXaoRBWkcL_t2gLTLjstWSw5xCtjQ,2241
+django/core/checks/model_checks.py,sha256=8aK5uit9yP_lDfdXBJPlz_r-46faP_gIOXLszXqLQqY,8830
+django/core/checks/registry.py,sha256=Qqig55OhANmA-QBQBSTLuy64Z2VqPT97lLlSHBgyq9g,3456
+django/core/checks/security/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/core/checks/security/__pycache__/__init__.cpython-312.pyc,,
+django/core/checks/security/__pycache__/base.cpython-312.pyc,,
+django/core/checks/security/__pycache__/csrf.cpython-312.pyc,,
+django/core/checks/security/__pycache__/sessions.cpython-312.pyc,,
+django/core/checks/security/base.py,sha256=I0Gm446twRIhbRopEmKsdsYW_NdI7_nK_ZV28msRPEo,9140
+django/core/checks/security/csrf.py,sha256=hmFJ4m9oxDGwhDAWedmtpnIYQcI8Mxcge1D6CCoOBbc,2055
+django/core/checks/security/sessions.py,sha256=Qyb93CJeQBM5LLhhrqor4KQJR2tSpFklS-p7WltXcHc,2554
+django/core/checks/templates.py,sha256=leQ8nyjQBzofWFTo6YH9NkLmt582OlG2p8sFw00sbew,296
+django/core/checks/translation.py,sha256=it7VjXf10-HBdCc3z55_lSxwok9qEncdojRBG74d4FA,1990
+django/core/checks/urls.py,sha256=-H945kSYVe_am-2XJI_T4c2V34lySfA6ZHnEEW8USJ8,4917
+django/core/exceptions.py,sha256=eMWYfZAUY9xvOIVm41ByemPfXNIY59xxO6-vT5oNWIE,6577
+django/core/files/__init__.py,sha256=Rhz5Jm9BM6gy_nf5yMtswN1VsTIILYUL7Z-5edjh_HI,60
+django/core/files/__pycache__/__init__.cpython-312.pyc,,
+django/core/files/__pycache__/base.cpython-312.pyc,,
+django/core/files/__pycache__/images.cpython-312.pyc,,
+django/core/files/__pycache__/locks.cpython-312.pyc,,
+django/core/files/__pycache__/move.cpython-312.pyc,,
+django/core/files/__pycache__/temp.cpython-312.pyc,,
+django/core/files/__pycache__/uploadedfile.cpython-312.pyc,,
+django/core/files/__pycache__/uploadhandler.cpython-312.pyc,,
+django/core/files/__pycache__/utils.cpython-312.pyc,,
+django/core/files/base.py,sha256=MKNxxgiuwHHwGifpydBgjfZpTzdF7VxCQnVV-w8bqhg,4845
+django/core/files/images.py,sha256=Yms--hugUWcpsZJJJ0-UwkIe3PVZ4LjMFz4O7Ew9FBE,2644
+django/core/files/locks.py,sha256=mp96hc8nMob8cMESiASFWUTUn_afW8A4ag_viWz0ojU,3614
+django/core/files/move.py,sha256=Xv8ejaYIITJzLN2NlCE0MhFqalBYUIZiyYbjMIblkAo,2919
+django/core/files/storage/__init__.py,sha256=EosmC1_WLaAFOuapjyoKFNudQiyRIW8C2hx90oQaVD4,622
+django/core/files/storage/__pycache__/__init__.cpython-312.pyc,,
+django/core/files/storage/__pycache__/base.cpython-312.pyc,,
+django/core/files/storage/__pycache__/filesystem.cpython-312.pyc,,
+django/core/files/storage/__pycache__/handler.cpython-312.pyc,,
+django/core/files/storage/__pycache__/memory.cpython-312.pyc,,
+django/core/files/storage/__pycache__/mixins.cpython-312.pyc,,
+django/core/files/storage/base.py,sha256=83MumBD3zLS_tegimD51Oh9yQsIL4cYbW9dduhRnHqI,8296
+django/core/files/storage/filesystem.py,sha256=s0leHXerlPHf_VbnV-WC3YN88rOecmdjXb-k5T5lIvk,9572
+django/core/files/storage/handler.py,sha256=ntOJZ2nf2VUaUY7tKH0mndORFiGKSdh_16o3OtilIBI,1507
+django/core/files/storage/memory.py,sha256=Mz27sDPbeRXGjh77id2LHt8sErp5WAmNj89NBNRDA3I,9745
+django/core/files/storage/mixins.py,sha256=j_Y3unzk9Ccmx-QQjj4AoC3MUhXIw5nFbDYF3Qn_Fh0,700
+django/core/files/temp.py,sha256=iUegEgQ3UyUrDN10SgvKIrHfBPSej1lk-LAgJqMZBcU,2503
+django/core/files/uploadedfile.py,sha256=6hBjxmx8P0fxmZQbtj4OTsXtUk9GdIA7IUcv_KwSI08,4189
+django/core/files/uploadhandler.py,sha256=tMzeS-FJOMQBYQm2ORsLwltwZZrdOizyJSmdFjer_Sw,7180
+django/core/files/utils.py,sha256=tBT8c8wCObMmiVF4BpBpCV5_hhgMKxe2poiunwFpIcw,2602
+django/core/handlers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/core/handlers/__pycache__/__init__.cpython-312.pyc,,
+django/core/handlers/__pycache__/asgi.cpython-312.pyc,,
+django/core/handlers/__pycache__/base.cpython-312.pyc,,
+django/core/handlers/__pycache__/exception.cpython-312.pyc,,
+django/core/handlers/__pycache__/wsgi.cpython-312.pyc,,
+django/core/handlers/asgi.py,sha256=-lHVt6z6ioCs0CgGIrsPVXvpqqdaH-Lc3Xb99RdSbu4,13839
+django/core/handlers/base.py,sha256=j7ScIbMLKYa52HqwHYhIfMWWAG749natcsBsVQsvBjc,14813
+django/core/handlers/exception.py,sha256=Qa03HgQpLx7nqp5emF0bwdiemE0X7U9FfuLfoOHMf_4,5922
+django/core/handlers/wsgi.py,sha256=81DErgzHAaZcw2UivrKqwS69QpoRF8tm0ASEc4v3uQ4,7315
+django/core/mail/__init__.py,sha256=gSCtVTSbqIqkHMK7no1mIqrcircH1fuIuqZmXONayuY,4959
+django/core/mail/__pycache__/__init__.cpython-312.pyc,,
+django/core/mail/__pycache__/message.cpython-312.pyc,,
+django/core/mail/__pycache__/utils.cpython-312.pyc,,
+django/core/mail/backends/__init__.py,sha256=VJ_9dBWKA48MXBZXVUaTy9NhgfRonapA6UAjVFEPKD8,37
+django/core/mail/backends/__pycache__/__init__.cpython-312.pyc,,
+django/core/mail/backends/__pycache__/base.cpython-312.pyc,,
+django/core/mail/backends/__pycache__/console.cpython-312.pyc,,
+django/core/mail/backends/__pycache__/dummy.cpython-312.pyc,,
+django/core/mail/backends/__pycache__/filebased.cpython-312.pyc,,
+django/core/mail/backends/__pycache__/locmem.cpython-312.pyc,,
+django/core/mail/backends/__pycache__/smtp.cpython-312.pyc,,
+django/core/mail/backends/base.py,sha256=Cljbb7nil40Dfpob2R8iLmlO0Yv_wlOCBA9hF2Z6W54,1683
+django/core/mail/backends/console.py,sha256=H6lWE18H8uSxj7LB1SGTqQ7UFpk9gWLZYq6reowixLU,1427
+django/core/mail/backends/dummy.py,sha256=sI7tAa3MfG43UHARduttBvEAYYfiLasgF39jzaZPu9E,234
+django/core/mail/backends/filebased.py,sha256=AbEBL9tXr6WIhuSQvm3dHoCpuMoDTSIkx6qFb4GMUe4,2353
+django/core/mail/backends/locmem.py,sha256=95yAcfid-4akp2Eq1DkNrHiYF2-0pKR2N7VCPxMu_50,913
+django/core/mail/backends/smtp.py,sha256=vYF03edaHedkcZqoKaSL38B2BFwuzA_uPXeMdPrDFBo,5803
+django/core/mail/message.py,sha256=QxGgpJfOGQYdHDtRvX57bTfhM_4CzR4S3lSIj0bBszA,17849
+django/core/mail/utils.py,sha256=Wf-pdSdv0WLREYzI7EVWr59K6o7tfb3d2HSbAyE3SOE,506
+django/core/management/__init__.py,sha256=gkXgKuqIpyFauk2-kgOgU-IDxcw8TjAKM_MU-erraE0,17407
+django/core/management/__pycache__/__init__.cpython-312.pyc,,
+django/core/management/__pycache__/base.cpython-312.pyc,,
+django/core/management/__pycache__/color.cpython-312.pyc,,
+django/core/management/__pycache__/sql.cpython-312.pyc,,
+django/core/management/__pycache__/templates.cpython-312.pyc,,
+django/core/management/__pycache__/utils.cpython-312.pyc,,
+django/core/management/base.py,sha256=zJ5lX6qXvsKBWWiBIGmDm8eSJPyiCqdWoSXPbHV_qyE,24392
+django/core/management/color.py,sha256=KXdNATK5AvxVK8wtKH2GTWApnLGCZ_1NKewTsLWCBc0,3168
+django/core/management/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/core/management/commands/__pycache__/__init__.cpython-312.pyc,,
+django/core/management/commands/__pycache__/check.cpython-312.pyc,,
+django/core/management/commands/__pycache__/compilemessages.cpython-312.pyc,,
+django/core/management/commands/__pycache__/createcachetable.cpython-312.pyc,,
+django/core/management/commands/__pycache__/dbshell.cpython-312.pyc,,
+django/core/management/commands/__pycache__/diffsettings.cpython-312.pyc,,
+django/core/management/commands/__pycache__/dumpdata.cpython-312.pyc,,
+django/core/management/commands/__pycache__/flush.cpython-312.pyc,,
+django/core/management/commands/__pycache__/inspectdb.cpython-312.pyc,,
+django/core/management/commands/__pycache__/loaddata.cpython-312.pyc,,
+django/core/management/commands/__pycache__/makemessages.cpython-312.pyc,,
+django/core/management/commands/__pycache__/makemigrations.cpython-312.pyc,,
+django/core/management/commands/__pycache__/migrate.cpython-312.pyc,,
+django/core/management/commands/__pycache__/optimizemigration.cpython-312.pyc,,
+django/core/management/commands/__pycache__/runserver.cpython-312.pyc,,
+django/core/management/commands/__pycache__/sendtestemail.cpython-312.pyc,,
+django/core/management/commands/__pycache__/shell.cpython-312.pyc,,
+django/core/management/commands/__pycache__/showmigrations.cpython-312.pyc,,
+django/core/management/commands/__pycache__/sqlflush.cpython-312.pyc,,
+django/core/management/commands/__pycache__/sqlmigrate.cpython-312.pyc,,
+django/core/management/commands/__pycache__/sqlsequencereset.cpython-312.pyc,,
+django/core/management/commands/__pycache__/squashmigrations.cpython-312.pyc,,
+django/core/management/commands/__pycache__/startapp.cpython-312.pyc,,
+django/core/management/commands/__pycache__/startproject.cpython-312.pyc,,
+django/core/management/commands/__pycache__/test.cpython-312.pyc,,
+django/core/management/commands/__pycache__/testserver.cpython-312.pyc,,
+django/core/management/commands/check.py,sha256=X68B4VTS8i-3LPY0TjuQOc9AM5m9HOMBNPGbzv3FDfA,2832
+django/core/management/commands/compilemessages.py,sha256=gblYId4asdPcuP2tlw5IqpIblKLB9zeW2qzjA4q-fFw,7076
+django/core/management/commands/createcachetable.py,sha256=bdKfxftffjoKQgSJfCBJRgVCwzhqnUn88MvAMPNTits,4656
+django/core/management/commands/dbshell.py,sha256=0ZofTU8SWm7M-vimeLJvRzN5YVEZ7-U-BgZTqXhHjUM,1781
+django/core/management/commands/diffsettings.py,sha256=NNL_J0P3HRzAZd9XcW7Eo_iE_lNliIpKtdcarDbBRpc,3554
+django/core/management/commands/dumpdata.py,sha256=eGPBqrzdk4YZpyRaIUQWKfxe7qprKBYY_jC8DcuJILw,11180
+django/core/management/commands/flush.py,sha256=1LRuBYcWCqIKa23IHLEdtIZzgUGGDGw0YSb6RTX1SaE,3651
+django/core/management/commands/inspectdb.py,sha256=PJ-zDxhwWY3suqZ4odnWyDLry0wy_i3CzMS1JubzNw0,17372
+django/core/management/commands/loaddata.py,sha256=8odpvT9UxaJuHA7ze5dDUHzFeq-dhdbH9Lk19JY3QZo,16008
+django/core/management/commands/makemessages.py,sha256=2wWAiFl-S9SRY5qgBU1GCB68EjnnfVhp_zzv6Jo6q8s,29423
+django/core/management/commands/makemigrations.py,sha256=gxIR6-Dc3OyaW2VrN8j4hVAql8OSN7tZ38x-bjagRpU,22466
+django/core/management/commands/migrate.py,sha256=-r78CKcgXqmFTK_ZGkmqLTgZr6UGAv_kZ7hyVsiFL1M,21415
+django/core/management/commands/optimizemigration.py,sha256=GVWIhX94tOLHEx53w-VrUc48euVWpKCLMw-BbpiQgIg,5224
+django/core/management/commands/runserver.py,sha256=Ax-IvMnZAleIhXdFJlU10YT5pPpXvjSaYbxZvygUMTI,6913
+django/core/management/commands/sendtestemail.py,sha256=sF5TUMbD_tlGBnUsn9t-oFVGNSyeiWRIrgyPbJE88cs,1518
+django/core/management/commands/shell.py,sha256=LKmj6KYv6zpJzQ2mWtR4-u2CDSQL-_Na6TsT4JLYsi4,4613
+django/core/management/commands/showmigrations.py,sha256=24s51EzwIhL6lIpumivpaixQTDGx7I1qJ0wKFNGaEMU,6847
+django/core/management/commands/sqlflush.py,sha256=7KiAXzUqqE3IeGresT-kVzyk_i8XP2NTsIBmYt30D3Y,1031
+django/core/management/commands/sqlmigrate.py,sha256=uMz1V1AZxyyo9UNs4x_vMh3_-aCcYLVxy0VHILtKBLU,3348
+django/core/management/commands/sqlsequencereset.py,sha256=cdnbbd7y81CAYK9KX-V6Ho8KJIO_mVtG3V6tftIBp6g,1101
+django/core/management/commands/squashmigrations.py,sha256=ltDbyWCCLwNknkjG9rZG7DpLl7XgQKXJN7F31uVY5z8,10862
+django/core/management/commands/startapp.py,sha256=Dhllhaf1q3EKVnyBLhJ9QsWf6JmjAtYnVLruHsmMlcQ,503
+django/core/management/commands/startproject.py,sha256=Iv7KOco1GkzGqUEME_LCx5vGi4JfY8-lzdkazDqF7k8,789
+django/core/management/commands/test.py,sha256=UXxsInhGqrcsMMiHk6uBvAwMMzCZDwJl5_Ql3L6lkx8,2367
+django/core/management/commands/testserver.py,sha256=aiS0tCe6uXp9hjcE1LUfZ118xAcMa28ImHL4ynQSqO8,2238
+django/core/management/sql.py,sha256=fP6Bvq4NrQB_9Tb6XsYeCg57xs2Ck6uaCXq0ojFOSvA,1851
+django/core/management/templates.py,sha256=PlaxlTex6m1d42f_HT-B2nhittfw6RmjkIphVlQ558c,15415
+django/core/management/utils.py,sha256=VbXTgGLO7HYzg3Y93nt8VkHbPOBWWyojVHDMfdyzcyc,5434
+django/core/paginator.py,sha256=YFR2EE0W2cLhEuXSWI67c33DreVVSxlz9xRjqGs50zc,7905
+django/core/serializers/__init__.py,sha256=gaH58ip_2dyUFDlfOPenMkVJftQQOBvXqCcZBjAKwTA,8772
+django/core/serializers/__pycache__/__init__.cpython-312.pyc,,
+django/core/serializers/__pycache__/base.cpython-312.pyc,,
+django/core/serializers/__pycache__/json.cpython-312.pyc,,
+django/core/serializers/__pycache__/jsonl.cpython-312.pyc,,
+django/core/serializers/__pycache__/python.cpython-312.pyc,,
+django/core/serializers/__pycache__/pyyaml.cpython-312.pyc,,
+django/core/serializers/__pycache__/xml_serializer.cpython-312.pyc,,
+django/core/serializers/base.py,sha256=6LnbPCb4wbDYsE3svEztt2AlS5hZx3NmIdM_0uRijh0,12631
+django/core/serializers/json.py,sha256=dP-VqkWpam7kZxTTPqnB5nZY9CEgS48bi1JAm27jwUo,3464
+django/core/serializers/jsonl.py,sha256=671JRbWRgOH3-oeD3auK9QCziwtrcdbyCIRDy5s4Evw,1879
+django/core/serializers/python.py,sha256=Sokl0FEwRwgKV7hKDAOZL30-Si6DWs9_kANyt7mFjss,6866
+django/core/serializers/pyyaml.py,sha256=77zu6PCfJg_75m36lX9X5018ADcux5qsDGajKNh4pI8,2955
+django/core/serializers/xml_serializer.py,sha256=HL7H3zByt0YhhoAAAzWiIq_zWG6R_byKDdBINX0v79g,18323
+django/core/servers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/core/servers/__pycache__/__init__.cpython-312.pyc,,
+django/core/servers/__pycache__/basehttp.cpython-312.pyc,,
+django/core/servers/basehttp.py,sha256=0XtDP4SDBGovGKe6oXBba6-qgBJK2lw1umB8RXSOtUo,9995
+django/core/signals.py,sha256=5vh1e7IgPN78WXPo7-hEMPN9tQcqJSZHu0WCibNgd-E,151
+django/core/signing.py,sha256=5-uDACJ8WxTJmwfwPoXRIO4nSr2v4032aTVwPaPLxWA,8772
+django/core/validators.py,sha256=yZ6fwLErkwHBbH5Vw6eULvO_OvxNYDGYFhvKM2DhtX0,23358
+django/core/wsgi.py,sha256=2sYMSe3IBrENeQT7rys-04CRmf8hW2Q2CjlkBUIyjHk,388
+django/db/__init__.py,sha256=CBuehITrkVMn02P63M0GY1MnZuC0GefA1MAoxlVo3b4,1533
+django/db/__pycache__/__init__.cpython-312.pyc,,
+django/db/__pycache__/transaction.cpython-312.pyc,,
+django/db/__pycache__/utils.cpython-312.pyc,,
+django/db/backends/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/db/backends/__pycache__/__init__.cpython-312.pyc,,
+django/db/backends/__pycache__/ddl_references.cpython-312.pyc,,
+django/db/backends/__pycache__/signals.cpython-312.pyc,,
+django/db/backends/__pycache__/utils.cpython-312.pyc,,
+django/db/backends/base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/db/backends/base/__pycache__/__init__.cpython-312.pyc,,
+django/db/backends/base/__pycache__/base.cpython-312.pyc,,
+django/db/backends/base/__pycache__/client.cpython-312.pyc,,
+django/db/backends/base/__pycache__/creation.cpython-312.pyc,,
+django/db/backends/base/__pycache__/features.cpython-312.pyc,,
+django/db/backends/base/__pycache__/introspection.cpython-312.pyc,,
+django/db/backends/base/__pycache__/operations.cpython-312.pyc,,
+django/db/backends/base/__pycache__/schema.cpython-312.pyc,,
+django/db/backends/base/__pycache__/validation.cpython-312.pyc,,
+django/db/backends/base/base.py,sha256=MHWLJhA7-1OyOs9-L0CQLBoH8_Iw1_VOTZw1xJSP6GU,28603
+django/db/backends/base/client.py,sha256=90Ffs6zZYCli3tJjwsPH8TItZ8tz1Pp-zhQa-EpsNqc,937
+django/db/backends/base/creation.py,sha256=AFQL_xz48jYzZTdHl3r3d_2v_xGyJMMENXmEUcbRv48,15847
+django/db/backends/base/features.py,sha256=ijP81ZHfZPlUMKVHTjNxZ3IRWmwPdy4hpE6CxJSKZk8,15914
+django/db/backends/base/introspection.py,sha256=CJG3MUmR-wJpNm-gNWuMRMNknWp3ZdZ9DRUbKxcnwuo,7900
+django/db/backends/base/operations.py,sha256=j3OSjD1goRgNntZGnQ15-A7IKj9vV6rFrp338uqNLS8,30229
+django/db/backends/base/schema.py,sha256=mOcKOflaMQgRQ0I6IrOwbN6ET74F1rvm6Davghr3jYY,82021
+django/db/backends/base/validation.py,sha256=2zpI11hyUJr0I0cA1xmvoFwQVdZ-7_1T2F11TpQ0Rkk,1067
+django/db/backends/ddl_references.py,sha256=dUlkGLGdjOnacR_8PaweA5XSwgD8wojMTJUVOCOKVLY,8619
+django/db/backends/dummy/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/db/backends/dummy/__pycache__/__init__.cpython-312.pyc,,
+django/db/backends/dummy/__pycache__/base.cpython-312.pyc,,
+django/db/backends/dummy/__pycache__/features.cpython-312.pyc,,
+django/db/backends/dummy/base.py,sha256=im1_ubNhbY6cP8yNntqDr6Hlg5d5c_5r5IUCPCDfv28,2181
+django/db/backends/dummy/features.py,sha256=Pg8_jND-aoJomTaBBXU3hJEjzpB-rLs6VwpoKkOYuQg,181
+django/db/backends/mysql/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/db/backends/mysql/__pycache__/__init__.cpython-312.pyc,,
+django/db/backends/mysql/__pycache__/base.cpython-312.pyc,,
+django/db/backends/mysql/__pycache__/client.cpython-312.pyc,,
+django/db/backends/mysql/__pycache__/compiler.cpython-312.pyc,,
+django/db/backends/mysql/__pycache__/creation.cpython-312.pyc,,
+django/db/backends/mysql/__pycache__/features.cpython-312.pyc,,
+django/db/backends/mysql/__pycache__/introspection.cpython-312.pyc,,
+django/db/backends/mysql/__pycache__/operations.cpython-312.pyc,,
+django/db/backends/mysql/__pycache__/schema.cpython-312.pyc,,
+django/db/backends/mysql/__pycache__/validation.cpython-312.pyc,,
+django/db/backends/mysql/base.py,sha256=QgYv7BTHG1vGAGo6kQA27ihnyPhlxLzOPf3pBLuxpME,16861
+django/db/backends/mysql/client.py,sha256=IpwdI-H5r-QUoM8ZvPXHykNxKb2wevcUx8HvxTn_otU,2988
+django/db/backends/mysql/compiler.py,sha256=SPhbsHi8x_r4ZG8U7-Tnqr6F0G4rsxOyJjITKPHz3zE,3333
+django/db/backends/mysql/creation.py,sha256=8BV8YHk3qEq555nH3NHukxpZZgxtvXFvkv7XvkRlhKA,3449
+django/db/backends/mysql/features.py,sha256=IgbPUyEdeaUjQyo-_gbxMOtnkC-QCn1CPBe21CMRSwU,11998
+django/db/backends/mysql/introspection.py,sha256=AY06ZLynWypYTEGAsR-t4F9Uj7Fb0Hqi-QNW1YwRnEQ,14498
+django/db/backends/mysql/operations.py,sha256=R6dNA_IV4_o4e2gq8kh2kfqu4yoYoZVw_LGrqwNBxtQ,18437
+django/db/backends/mysql/schema.py,sha256=gT0N65db0omSMm4w09CccIN44cPbXzocL0ptzbUpWtc,11259
+django/db/backends/mysql/validation.py,sha256=XERj0lPEihKThPvzoVJmNpWdPOun64cRF3gHv-zmCGk,3093
+django/db/backends/oracle/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/db/backends/oracle/__pycache__/__init__.cpython-312.pyc,,
+django/db/backends/oracle/__pycache__/base.cpython-312.pyc,,
+django/db/backends/oracle/__pycache__/client.cpython-312.pyc,,
+django/db/backends/oracle/__pycache__/creation.cpython-312.pyc,,
+django/db/backends/oracle/__pycache__/features.cpython-312.pyc,,
+django/db/backends/oracle/__pycache__/functions.cpython-312.pyc,,
+django/db/backends/oracle/__pycache__/introspection.cpython-312.pyc,,
+django/db/backends/oracle/__pycache__/operations.cpython-312.pyc,,
+django/db/backends/oracle/__pycache__/oracledb_any.cpython-312.pyc,,
+django/db/backends/oracle/__pycache__/schema.cpython-312.pyc,,
+django/db/backends/oracle/__pycache__/utils.cpython-312.pyc,,
+django/db/backends/oracle/__pycache__/validation.cpython-312.pyc,,
+django/db/backends/oracle/base.py,sha256=Cu9jrGmB_6GlRIJjagt584MnhxO-8aoMtiL1Dt4bE-0,24171
+django/db/backends/oracle/client.py,sha256=DfDURfno8Sek13M8r5S2t2T8VUutx2hBT9DZRfow9VQ,784
+django/db/backends/oracle/creation.py,sha256=yHymYOsth1y8jxiyP5k7MZQeatKw75XvTT3J88vNLkE,20840
+django/db/backends/oracle/features.py,sha256=vZVkuIvOFqadou2pxSyhjIHqIjGLaZvAYi0UmV75vts,8530
+django/db/backends/oracle/functions.py,sha256=2OoBYyY1Lb4B5hYbkRHjd8YY_artr3QeGu2hlojC-vc,812
+django/db/backends/oracle/introspection.py,sha256=MjjO-PqpcfiUd9WkLqiC8XGgbC4gocvymqQ1bh-ceKk,15474
+django/db/backends/oracle/operations.py,sha256=IVYHcknSUT0OEjnmmJV0yUFZTm-kDUuaJU97_7hGkBk,30008
+django/db/backends/oracle/oracledb_any.py,sha256=dZY337k3TH1JfZaXZR6HmDy6roolJrj50Sbv-27neFg,550
+django/db/backends/oracle/schema.py,sha256=M_Zuts3EQHIm966nK5rLIfxMYcNBc9i8QCePAdsBmKw,10700
+django/db/backends/oracle/utils.py,sha256=C9gumfPZAToaBg3HgsUoH5EU-_goM8ZrL_7VI5yw098,2753
+django/db/backends/oracle/validation.py,sha256=cq-Bvy5C0_rmkgng0SSQ4s74FKg2yTM1N782Gfz86nY,860
+django/db/backends/postgresql/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/db/backends/postgresql/__pycache__/__init__.cpython-312.pyc,,
+django/db/backends/postgresql/__pycache__/base.cpython-312.pyc,,
+django/db/backends/postgresql/__pycache__/client.cpython-312.pyc,,
+django/db/backends/postgresql/__pycache__/creation.cpython-312.pyc,,
+django/db/backends/postgresql/__pycache__/features.cpython-312.pyc,,
+django/db/backends/postgresql/__pycache__/introspection.cpython-312.pyc,,
+django/db/backends/postgresql/__pycache__/operations.cpython-312.pyc,,
+django/db/backends/postgresql/__pycache__/psycopg_any.cpython-312.pyc,,
+django/db/backends/postgresql/__pycache__/schema.cpython-312.pyc,,
+django/db/backends/postgresql/base.py,sha256=1ztHLo0_MVteU_WoEOXoDWoDEDBfpmjHoNDzRQOKr6c,23486
+django/db/backends/postgresql/client.py,sha256=BxpiOYe2hzg4tWjPKHDJxa8zdr6S7CN9YiaOhTDJUOo,2044
+django/db/backends/postgresql/creation.py,sha256=pZYCzq893jcMd8jhnUH2suBaOC9LrkTtpBn9gdpqxTY,3886
+django/db/backends/postgresql/features.py,sha256=fkA6TruxChcZP2Q2r1fJTzXXIek57XKXIkhusWUphe4,6378
+django/db/backends/postgresql/introspection.py,sha256=0j4Y5ZAuSk8iaMbDBjUF9zHTcL3C5WibIiJygOvZMP8,11604
+django/db/backends/postgresql/operations.py,sha256=4wtKho3nrvigXJ1ymSmsJw1blPEhcRCjYAqeajd1iRE,15473
+django/db/backends/postgresql/psycopg_any.py,sha256=X2aU-MHfDNbXaKT2-2VC3mhiAVxYth_uMJPKoAPLsKQ,3885
+django/db/backends/postgresql/schema.py,sha256=TQM6fsyMssSEs5HiqoIL1hRaZAHB1b3Gg5bLYuTKEh8,14339
+django/db/backends/signals.py,sha256=Yl14KjYJijTt1ypIZirp90lS7UTJ8UogPFI_DwbcsSc,66
+django/db/backends/sqlite3/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/db/backends/sqlite3/__pycache__/__init__.cpython-312.pyc,,
+django/db/backends/sqlite3/__pycache__/_functions.cpython-312.pyc,,
+django/db/backends/sqlite3/__pycache__/base.cpython-312.pyc,,
+django/db/backends/sqlite3/__pycache__/client.cpython-312.pyc,,
+django/db/backends/sqlite3/__pycache__/creation.cpython-312.pyc,,
+django/db/backends/sqlite3/__pycache__/features.cpython-312.pyc,,
+django/db/backends/sqlite3/__pycache__/introspection.cpython-312.pyc,,
+django/db/backends/sqlite3/__pycache__/operations.cpython-312.pyc,,
+django/db/backends/sqlite3/__pycache__/schema.cpython-312.pyc,,
+django/db/backends/sqlite3/_functions.py,sha256=4rwADvq4dJu8EAzUXPnrmN_lDcfg_Xf0w7DRHgj8faw,14559
+django/db/backends/sqlite3/base.py,sha256=osegQjtwLOGgblJCVfLNjzaJQ5br7hAC6i3GRZxtjto,15000
+django/db/backends/sqlite3/client.py,sha256=Eb_-P1w0aTbZGVNYkv7KA1ku5Il1N2RQov2lc3v0nho,321
+django/db/backends/sqlite3/creation.py,sha256=Ib9pfwA53G4wZpLZgh7EvdipoSdvhg-wxKSP2ZowwFM,6849
+django/db/backends/sqlite3/features.py,sha256=Fsqn-weI5SGOE4M7MfOtaDJhWUwaOMSzE_xOBVsfaJw,6295
+django/db/backends/sqlite3/introspection.py,sha256=tW6u4aGhbTUQ0AxK3xgJPU7weA9BGkBTXelFtWRh5ow,17551
+django/db/backends/sqlite3/operations.py,sha256=paIHeI57f7wImFr6sdt9EYLMPcK875Y3fp4LW-0H7jU,16880
+django/db/backends/sqlite3/schema.py,sha256=GuyAJRj5iunzQZturcnxHN7_BPtsqrsxMA8URFO0tAA,20215
+django/db/backends/utils.py,sha256=wFyQVfVs1AxR48yQIVQ-ll1sC9GUeCxdP-aavYL0lrs,11137
+django/db/migrations/__init__.py,sha256=Oa4RvfEa6hITCqdcqwXYC66YknFKyluuy7vtNbSc-L4,97
+django/db/migrations/__pycache__/__init__.cpython-312.pyc,,
+django/db/migrations/__pycache__/autodetector.cpython-312.pyc,,
+django/db/migrations/__pycache__/exceptions.cpython-312.pyc,,
+django/db/migrations/__pycache__/executor.cpython-312.pyc,,
+django/db/migrations/__pycache__/graph.cpython-312.pyc,,
+django/db/migrations/__pycache__/loader.cpython-312.pyc,,
+django/db/migrations/__pycache__/migration.cpython-312.pyc,,
+django/db/migrations/__pycache__/optimizer.cpython-312.pyc,,
+django/db/migrations/__pycache__/questioner.cpython-312.pyc,,
+django/db/migrations/__pycache__/recorder.cpython-312.pyc,,
+django/db/migrations/__pycache__/serializer.cpython-312.pyc,,
+django/db/migrations/__pycache__/state.cpython-312.pyc,,
+django/db/migrations/__pycache__/utils.cpython-312.pyc,,
+django/db/migrations/__pycache__/writer.cpython-312.pyc,,
+django/db/migrations/autodetector.py,sha256=PTK23c8g2cQ5o5urT5gJpSJnrKLPKba_K2AhxHEuIXY,84048
+django/db/migrations/exceptions.py,sha256=SotQF7ZKgJpd9KN-gKDL8wCJAKSEgbZToM_vtUAnqHw,1204
+django/db/migrations/executor.py,sha256=jx9J5WdS0X48UqxHkWKd2JYBUxds46Gn03ZZNAo8pTE,19038
+django/db/migrations/graph.py,sha256=vt7Pc45LuiXR8aRCrXP5Umm6VDCCTs2LAr5NXh-rxcE,13055
+django/db/migrations/loader.py,sha256=cVeJi7PwDc2Nxzgg3K_CrhK9H2HAtaXb1tG1PyDcSEA,16877
+django/db/migrations/migration.py,sha256=itZASGGepJYCY2Uv5AmLrxOgjEH1tycGV0bv3EtRjQE,9767
+django/db/migrations/operations/__init__.py,sha256=qIOjQYpm3tOtj1jsJVSpzxDH_kYAWk8MOGj-R3WYvJc,964
+django/db/migrations/operations/__pycache__/__init__.cpython-312.pyc,,
+django/db/migrations/operations/__pycache__/base.cpython-312.pyc,,
+django/db/migrations/operations/__pycache__/fields.cpython-312.pyc,,
+django/db/migrations/operations/__pycache__/models.cpython-312.pyc,,
+django/db/migrations/operations/__pycache__/special.cpython-312.pyc,,
+django/db/migrations/operations/base.py,sha256=IPBwWk-8j44IZw6FvXC9RVXqecbF0OhK-R_LMYwhNd4,5562
+django/db/migrations/operations/fields.py,sha256=OAGpT0youYLL7LcxcpO-N5fhzGlx0r_wK1ZitM7qmAE,12900
+django/db/migrations/operations/models.py,sha256=RvX62tOl3DaYktF2qJbpHLO2mKnlRd6ai3umt7qFB6Y,44385
+django/db/migrations/operations/special.py,sha256=CMLfqR4rO8AhDMNscOXjblKuvNA3vWFzg-6M_7xZnX4,7966
+django/db/migrations/optimizer.py,sha256=c0JZ5FGltD_gmh20e5SR6A21q_De6rUKfkAJKwmX4Ks,3255
+django/db/migrations/questioner.py,sha256=HVtcEBRxQwL9JrQO5r1bVIZIZUFBfs9L-siuDQERZh0,13330
+django/db/migrations/recorder.py,sha256=HviA3DydJPqpE8gowv1lAnIdLMTSRpRXuLFn53r-Q1Y,3827
+django/db/migrations/serializer.py,sha256=oPznMQhNezYzUb-R1U79iIAp4DtZocFvjK--B0Bbyv4,14133
+django/db/migrations/state.py,sha256=W46D-rTkF2bLonDKgg6ucEyGAY-TEU2W4Gp5R43aubY,40750
+django/db/migrations/utils.py,sha256=pdrzumGDhgytc5KVWdZov7cQtBt3jRASLqbmBxSRSvg,4401
+django/db/migrations/writer.py,sha256=OWRUgtTrBLndIUeNxL3-6gI5ORPdIWG_Jy9Iluizs0M,11613
+django/db/models/__init__.py,sha256=Br4FzeU4EiGShlasR9xYwaXVXfVUtnbsrp7kEkWo-QQ,2992
+django/db/models/__pycache__/__init__.cpython-312.pyc,,
+django/db/models/__pycache__/aggregates.cpython-312.pyc,,
+django/db/models/__pycache__/base.cpython-312.pyc,,
+django/db/models/__pycache__/constants.cpython-312.pyc,,
+django/db/models/__pycache__/constraints.cpython-312.pyc,,
+django/db/models/__pycache__/deletion.cpython-312.pyc,,
+django/db/models/__pycache__/enums.cpython-312.pyc,,
+django/db/models/__pycache__/expressions.cpython-312.pyc,,
+django/db/models/__pycache__/indexes.cpython-312.pyc,,
+django/db/models/__pycache__/lookups.cpython-312.pyc,,
+django/db/models/__pycache__/manager.cpython-312.pyc,,
+django/db/models/__pycache__/options.cpython-312.pyc,,
+django/db/models/__pycache__/query.cpython-312.pyc,,
+django/db/models/__pycache__/query_utils.cpython-312.pyc,,
+django/db/models/__pycache__/signals.cpython-312.pyc,,
+django/db/models/__pycache__/utils.cpython-312.pyc,,
+django/db/models/aggregates.py,sha256=IRMdrM8j5t5R2Bpi-mStifRtBuaIyicymG-cSNgslCE,7663
+django/db/models/base.py,sha256=URExUInt4Syds57HC57enWrZihbp-Sz4c_yPFT8dY8U,97088
+django/db/models/constants.py,sha256=ndnj9TOTKW0p4YcIPLOLEbsH6mOgFi6B1-rIzr_iwwU,210
+django/db/models/constraints.py,sha256=xSb5vVkGuMg4-8T2u7goQ9I8AH6sk5HZR2NdoKGdGtM,27772
+django/db/models/deletion.py,sha256=-d11zKahydG3NuyeM-HZLp1ZE9HWvZbMK8DEE0PzV5Q,21003
+django/db/models/enums.py,sha256=mgBBX7bFzuPYgkPR9hvy4FZOtbZE5gfbhHWsvrIhONQ,3527
+django/db/models/expressions.py,sha256=pEEBlVnK8DVeM1kdMksnyGaLGTxWL8oXY6zfPmc4caY,72565
+django/db/models/fields/__init__.py,sha256=zuout4tQcpK99Pc5JfLRM9jE8Xi_G3r5vcgaN15_-zQ,98305
+django/db/models/fields/__pycache__/__init__.cpython-312.pyc,,
+django/db/models/fields/__pycache__/files.cpython-312.pyc,,
+django/db/models/fields/__pycache__/generated.cpython-312.pyc,,
+django/db/models/fields/__pycache__/json.cpython-312.pyc,,
+django/db/models/fields/__pycache__/mixins.cpython-312.pyc,,
+django/db/models/fields/__pycache__/proxy.cpython-312.pyc,,
+django/db/models/fields/__pycache__/related.cpython-312.pyc,,
+django/db/models/fields/__pycache__/related_descriptors.cpython-312.pyc,,
+django/db/models/fields/__pycache__/related_lookups.cpython-312.pyc,,
+django/db/models/fields/__pycache__/reverse_related.cpython-312.pyc,,
+django/db/models/fields/files.py,sha256=nLiRiY9bcVEwE8s5J6yxo2HqN3HreDHPDNHfaW3qLrs,20206
+django/db/models/fields/generated.py,sha256=hzCBUpS1fvoimEI_D7WtoLk6AryGw0TRdyk-UkYBDJE,7655
+django/db/models/fields/json.py,sha256=V51uZaINbGOGe9aoQMcOihpGufzJdTkvQGu00LXtRJA,22778
+django/db/models/fields/mixins.py,sha256=8HrdKIq0eG9vVstJwkK-2g2wdwyvcEVWBzP3S0hzeWY,2478
+django/db/models/fields/proxy.py,sha256=eFHyl4gRTqocjgd6nID9UlQuOIppBA57Vcr71UReTAs,515
+django/db/models/fields/related.py,sha256=HzwQIVSyRQp8smW_8ImQ-AKJt5vbJRvj3hkzF14poNo,76543
+django/db/models/fields/related_descriptors.py,sha256=7ztPstQcip5e-N7QT2BAXsAVXY5f6tnm3MFg7rxeCds,66832
+django/db/models/fields/related_lookups.py,sha256=qTe81CM5MVVxmn28jfaoTDPYgh_m4gHW7g_MyJVtrmo,7813
+django/db/models/fields/reverse_related.py,sha256=vfkd-rmEFGqwqhZKRur2KNbPvTF0L1-QYPuY3qn1aP4,12882
+django/db/models/functions/__init__.py,sha256=aglCm_JtzDYk2KmxubDN_78CGG3JCfRWnfJ74Oj5YJ4,2658
+django/db/models/functions/__pycache__/__init__.cpython-312.pyc,,
+django/db/models/functions/__pycache__/comparison.cpython-312.pyc,,
+django/db/models/functions/__pycache__/datetime.cpython-312.pyc,,
+django/db/models/functions/__pycache__/math.cpython-312.pyc,,
+django/db/models/functions/__pycache__/mixins.cpython-312.pyc,,
+django/db/models/functions/__pycache__/text.cpython-312.pyc,,
+django/db/models/functions/__pycache__/window.cpython-312.pyc,,
+django/db/models/functions/comparison.py,sha256=2aZ9uj1WRWW1eaWVHzkW0IsQyTFYsl3DLfA2jIHXIoQ,8984
+django/db/models/functions/datetime.py,sha256=IxDj0X1IUkzbIFbyDmjQZ0PL7eIO2rMn1kU47JlSl1E,13614
+django/db/models/functions/math.py,sha256=NugCfaC8Y_VhpEr62HMeDX3O934NnuBPsk3mi5I_DmE,6140
+django/db/models/functions/mixins.py,sha256=UqpHYyF33JSEWYdggezTtWkrMkPKFEfW6enIkujzgaQ,2382
+django/db/models/functions/text.py,sha256=aBnl-5-l3qw8wa7hFIOcHCoUOLGtlk6SFFY4PYZGMtU,11528
+django/db/models/functions/window.py,sha256=g4fryay1tLQCpZRfmPQhrTiuib4RvPqtwFdodlLbi98,2841
+django/db/models/indexes.py,sha256=HYCD06Is7-f0aIGkXdWNeEXzfBoSY6ECNCiVbe8tlwk,11935
+django/db/models/lookups.py,sha256=0kFrvPOg9deZ2NN-vSNGsB55K1DyKH5770NiX1nN1gw,27407
+django/db/models/manager.py,sha256=n97p4q0ttwmI1XcF9dAl8Pfg5Zs8iudufhWebQ7Xau0,6866
+django/db/models/options.py,sha256=Q7uyChb_iUw-L9C8QNFsHi6jSRn4FqZulpxSXXqooNA,39039
+django/db/models/query.py,sha256=rdmIkedhXBaHqGvf00I3YpbuPHcCiLDpIjxle-ZU25Q,105536
+django/db/models/query_utils.py,sha256=w3x-mS-FFnF4GXkXr4_Otgv5Nst9skYNC1Hmj5pycwc,17266
+django/db/models/signals.py,sha256=mG6hxVWugr_m0ugTU2XAEMiqlu2FJ4CBuGa34dLJvEQ,1622
+django/db/models/sql/__init__.py,sha256=BGZ1GSn03dTOO8PYx6vF1-ImE3g1keZsQ74AHJoQwmQ,241
+django/db/models/sql/__pycache__/__init__.cpython-312.pyc,,
+django/db/models/sql/__pycache__/compiler.cpython-312.pyc,,
+django/db/models/sql/__pycache__/constants.cpython-312.pyc,,
+django/db/models/sql/__pycache__/datastructures.cpython-312.pyc,,
+django/db/models/sql/__pycache__/query.cpython-312.pyc,,
+django/db/models/sql/__pycache__/subqueries.cpython-312.pyc,,
+django/db/models/sql/__pycache__/where.cpython-312.pyc,,
+django/db/models/sql/compiler.py,sha256=ny4zohi_eSFtYhri7eRJiSSgdyDV26_xpKPIOfubKqM,89920
+django/db/models/sql/constants.py,sha256=usb1LSh9WNGPsurWAGppDkV0wYJJg5GEegKibQdS718,533
+django/db/models/sql/datastructures.py,sha256=tDcVdWqVZgpzcMgEVBVBNyR21-UCoV2bd6o0AkgeUGs,8271
+django/db/models/sql/query.py,sha256=hA2k3gQUAdvWqD0V5DuhvupGMkTqzzbLjoptJqCArEw,116561
+django/db/models/sql/subqueries.py,sha256=0UgV3H-aG3178weqpp_hfQkwgUxm5t3LDlSKGAqmaU8,6029
+django/db/models/sql/where.py,sha256=Vi98aGtuFwccTDp9LJ5AtQiitnrZyF8VdRlGqsdIKBg,13049
+django/db/models/utils.py,sha256=vzojL0uUQHuOm2KxTJ19DHGnQ1pBXbnWaTlzR0vVimI,2182
+django/db/transaction.py,sha256=U9O5DF_Eg8SG1dvcn_oFimU-ONaXKoHdDsXl0ZYtjFM,12504
+django/db/utils.py,sha256=RKtSSyVJmM5__SAs1pY0njX6hLVRy1WIBggYo1zP4RI,9279
+django/dispatch/__init__.py,sha256=qP203zNwjaolUFnXLNZHnuBn7HNzyw9_JkODECRKZbc,286
+django/dispatch/__pycache__/__init__.cpython-312.pyc,,
+django/dispatch/__pycache__/dispatcher.cpython-312.pyc,,
+django/dispatch/dispatcher.py,sha256=OHaB-_kl1GeVwKh_bIMbHNFmH2yVN4qfSQz2aAVXfME,17777
+django/dispatch/license.txt,sha256=VABMS2BpZOvBY68W0EYHwW5Cj4p4oCb-y1P3DAn0qU8,1743
+django/forms/__init__.py,sha256=S6ckOMmvUX-vVST6AC-M8BzsfVQwuEUAdHWabMN-OGI,368
+django/forms/__pycache__/__init__.cpython-312.pyc,,
+django/forms/__pycache__/boundfield.cpython-312.pyc,,
+django/forms/__pycache__/fields.cpython-312.pyc,,
+django/forms/__pycache__/forms.cpython-312.pyc,,
+django/forms/__pycache__/formsets.cpython-312.pyc,,
+django/forms/__pycache__/models.cpython-312.pyc,,
+django/forms/__pycache__/renderers.cpython-312.pyc,,
+django/forms/__pycache__/utils.cpython-312.pyc,,
+django/forms/__pycache__/widgets.cpython-312.pyc,,
+django/forms/boundfield.py,sha256=2skied44gaSV-e9TSB-iP1EVyQN_5KsOcVd30vHggmc,13029
+django/forms/fields.py,sha256=POauofCdgP4jxTeHNt9xtE0CES1ZAbi86wqEWSMjLqo,49511
+django/forms/forms.py,sha256=z43KFrTN97zgAXoybZeVafVWsRNZGHB6cwNLRUoDK9g,15767
+django/forms/formsets.py,sha256=ps-7Og-757fKSgPT6xoJJ8UFzYnIbJuZ0_rKEdZzRO4,21190
+django/forms/jinja2/django/forms/attrs.html,sha256=TD0lNK-ohDjb_bWg1Kosdn4kU01B_M0_C19dp9kYJqo,165
+django/forms/jinja2/django/forms/div.html,sha256=WaOqY1hQe1l6vnc3TdlBmQnQRsofIoNDvGAfg2-X1lU,514
+django/forms/jinja2/django/forms/errors/dict/default.html,sha256=1DLQf0Czjr5V4cghQOyJr3v34G2ClF0RAOc-H7GwXUE,49
+django/forms/jinja2/django/forms/errors/dict/text.txt,sha256=E7eqEWc6q2_kLyc9k926klRe2mPp4O2VqG-2_MliYaU,113
+django/forms/jinja2/django/forms/errors/dict/ul.html,sha256=65EYJOqDAn7-ca7FtjrcdbXygLE-RA_IJQTltO7qS1Q,137
+django/forms/jinja2/django/forms/errors/list/default.html,sha256=q41d4u6XcxDL06gRAVdU021kM_iFLIt5BuYa-HATOWE,49
+django/forms/jinja2/django/forms/errors/list/text.txt,sha256=VVbLrGMHcbs1hK9-2v2Y6SIoH9qRMtlKzM6qzLVAFyE,52
+django/forms/jinja2/django/forms/errors/list/ul.html,sha256=AwXfGxnos6llX44dhxMChz6Kk6VStAJiNzUpSLN8_y4,119
+django/forms/jinja2/django/forms/field.html,sha256=-3Ta35bjK6x9yOMn9it5RJJOVJlBXrKfZobcNV02PDY,573
+django/forms/jinja2/django/forms/formsets/div.html,sha256=uq10XZdQ1WSt6kJFoKxtluvnCKE4L3oYcLkPraF4ovs,86
+django/forms/jinja2/django/forms/formsets/p.html,sha256=HzEX7XdSDt9owDkYJvBdFIETeU9RDbXc1e4R2YEt6ec,84
+django/forms/jinja2/django/forms/formsets/table.html,sha256=L9B4E8lR0roTr7dBoMiUlekuMbO-3y4_b4NHm6Oy_Vg,88
+django/forms/jinja2/django/forms/formsets/ul.html,sha256=ANvMWb6EeFAtLPDTr61IeI3-YHtAYZCT_zmm-_y-5Oc,85
+django/forms/jinja2/django/forms/label.html,sha256=trXo6yF4ezDv-y-8y1yJnP7sSByw0TTppgZLcrmfR6M,147
+django/forms/jinja2/django/forms/p.html,sha256=NsTxSuqV58iOT7_3EvWRkY1zVYCdhzLBrtde1V47QTA,740
+django/forms/jinja2/django/forms/table.html,sha256=RoJweFtjCPwkFhAAlPT7i_sSCDxo1xMs3NH0uFIla20,881
+django/forms/jinja2/django/forms/ul.html,sha256=svUpAmU5EhhGVHKs8qXixJN-3SzPft8CXoG3-4gegs8,779
+django/forms/jinja2/django/forms/widgets/attrs.html,sha256=_J2P-AOpHFhIwaqCNcrJFxEY4s-KPdy0Wcq0KlarIG0,172
+django/forms/jinja2/django/forms/widgets/checkbox.html,sha256=fXpbxMzAdbv_avfWC5464gD2jFng931Eq7vzbzy1-yA,48
+django/forms/jinja2/django/forms/widgets/checkbox_option.html,sha256=U2dFtAXvOn_eK4ok0oO6BwKE-3-jozJboGah_PQFLVM,55
+django/forms/jinja2/django/forms/widgets/checkbox_select.html,sha256=-ob26uqmvrEUMZPQq6kAqK4KBk2YZHTCWWCM6BnaL0w,57
+django/forms/jinja2/django/forms/widgets/clearable_file_input.html,sha256=1dv4xtik6um_mzK1skURF_n4G1t1yluziQu2UWa6fX8,559
+django/forms/jinja2/django/forms/widgets/date.html,sha256=fXpbxMzAdbv_avfWC5464gD2jFng931Eq7vzbzy1-yA,48
+django/forms/jinja2/django/forms/widgets/datetime.html,sha256=fXpbxMzAdbv_avfWC5464gD2jFng931Eq7vzbzy1-yA,48
+django/forms/jinja2/django/forms/widgets/email.html,sha256=fXpbxMzAdbv_avfWC5464gD2jFng931Eq7vzbzy1-yA,48
+django/forms/jinja2/django/forms/widgets/file.html,sha256=fXpbxMzAdbv_avfWC5464gD2jFng931Eq7vzbzy1-yA,48
+django/forms/jinja2/django/forms/widgets/hidden.html,sha256=fXpbxMzAdbv_avfWC5464gD2jFng931Eq7vzbzy1-yA,48
+django/forms/jinja2/django/forms/widgets/input.html,sha256=u12fZde-ugkEAAkPAtAfSxwGQmYBkXkssWohOUs-xoE,172
+django/forms/jinja2/django/forms/widgets/input_option.html,sha256=PyRNn9lmE9Da0-RK37zW4yJZUSiJWgIPCU9ou5oUC28,219
+django/forms/jinja2/django/forms/widgets/multiple_hidden.html,sha256=T54-n1ZeUlTd-svM3C4tLF42umKM0R5A7fdfsdthwkA,54
+django/forms/jinja2/django/forms/widgets/multiple_input.html,sha256=voM3dqu69R0Z202TmCgMFM6toJp7FgFPVvbWY9WKEAU,395
+django/forms/jinja2/django/forms/widgets/multiwidget.html,sha256=pr-MxRyucRxn_HvBGZvbc3JbFyrAolbroxvA4zmPz2Y,86
+django/forms/jinja2/django/forms/widgets/number.html,sha256=fXpbxMzAdbv_avfWC5464gD2jFng931Eq7vzbzy1-yA,48
+django/forms/jinja2/django/forms/widgets/password.html,sha256=fXpbxMzAdbv_avfWC5464gD2jFng931Eq7vzbzy1-yA,48
+django/forms/jinja2/django/forms/widgets/radio.html,sha256=-ob26uqmvrEUMZPQq6kAqK4KBk2YZHTCWWCM6BnaL0w,57
+django/forms/jinja2/django/forms/widgets/radio_option.html,sha256=U2dFtAXvOn_eK4ok0oO6BwKE-3-jozJboGah_PQFLVM,55
+django/forms/jinja2/django/forms/widgets/select.html,sha256=ESyDzbLTtM7-OG34EuSUnvxCtyP5IrQsZh0jGFrIdEA,365
+django/forms/jinja2/django/forms/widgets/select_date.html,sha256=AzaPLlNLg91qkVQwwtAJxwOqDemrtt_btSkWLpboJDs,54
+django/forms/jinja2/django/forms/widgets/select_option.html,sha256=tNa1D3G8iy2ZcWeKyI-mijjDjRmMaqSo-jnAR_VS3Qc,110
+django/forms/jinja2/django/forms/widgets/splitdatetime.html,sha256=AzaPLlNLg91qkVQwwtAJxwOqDemrtt_btSkWLpboJDs,54
+django/forms/jinja2/django/forms/widgets/splithiddendatetime.html,sha256=AzaPLlNLg91qkVQwwtAJxwOqDemrtt_btSkWLpboJDs,54
+django/forms/jinja2/django/forms/widgets/text.html,sha256=fXpbxMzAdbv_avfWC5464gD2jFng931Eq7vzbzy1-yA,48
+django/forms/jinja2/django/forms/widgets/textarea.html,sha256=Av1Y-hpXUU2AjrhnUivgZFKNBLdwCSZSeuSmCqmCkDA,145
+django/forms/jinja2/django/forms/widgets/time.html,sha256=fXpbxMzAdbv_avfWC5464gD2jFng931Eq7vzbzy1-yA,48
+django/forms/jinja2/django/forms/widgets/url.html,sha256=fXpbxMzAdbv_avfWC5464gD2jFng931Eq7vzbzy1-yA,48
+django/forms/models.py,sha256=hzd8IFjIP8qauQQocI_Uf3jF0jnZkSOxDDZ0OfWo2mI,61209
+django/forms/renderers.py,sha256=48Xahe1sV49TVX_A3aKwZqMbGgC7jd0LkZ1FX2vgU_k,3203
+django/forms/templates/django/forms/attrs.html,sha256=UFPgCXXCAkbumxZE1NM-aJVE4VCe2RjCrHLNseibv3I,165
+django/forms/templates/django/forms/div.html,sha256=PgJSGlEXXLmh58WLH49cxvUaWI8bxE0ioTf-MY89uF8,525
+django/forms/templates/django/forms/errors/dict/default.html,sha256=tFtwfHlkOY_XaKjoUPsWshiSWT5olxm3kDElND-GQtQ,48
+django/forms/templates/django/forms/errors/dict/text.txt,sha256=E7eqEWc6q2_kLyc9k926klRe2mPp4O2VqG-2_MliYaU,113
+django/forms/templates/django/forms/errors/dict/ul.html,sha256=65EYJOqDAn7-ca7FtjrcdbXygLE-RA_IJQTltO7qS1Q,137
+django/forms/templates/django/forms/errors/list/default.html,sha256=Kmx1nwrzQ49MaP80Gd17GC5TQH4B7doWa3I3azXvoHA,48
+django/forms/templates/django/forms/errors/list/text.txt,sha256=VVbLrGMHcbs1hK9-2v2Y6SIoH9qRMtlKzM6qzLVAFyE,52
+django/forms/templates/django/forms/errors/list/ul.html,sha256=5kt2ckbr3esK0yoPzco2EB0WzS8MvGzau_rAcomB508,118
+django/forms/templates/django/forms/field.html,sha256=8XAHg-I3OKmLS4EGQT_zQHJKLL9z6KRPR8ehmcxsDvg,568
+django/forms/templates/django/forms/formsets/div.html,sha256=lmIRSTBuGczEd2lj-UfDS9zAlVv8ntpmRo-boDDRwEg,84
+django/forms/templates/django/forms/formsets/p.html,sha256=qkoHKem-gb3iqvTtROBcHNJqI-RoUwLHUvJC6EoHg-I,82
+django/forms/templates/django/forms/formsets/table.html,sha256=N0G9GETzJfV16wUesvdrNMDwc8Fhh6durrmkHUPeDZY,86
+django/forms/templates/django/forms/formsets/ul.html,sha256=bGQpjbpKwMahyiIP4-2p3zg3yJP-pN1A48yCqhHdw7o,83
+django/forms/templates/django/forms/label.html,sha256=0bJCdIj8G5e2Gaw3QUR0ZMdwVavC80YwxS5E0ShkzmE,122
+django/forms/templates/django/forms/p.html,sha256=NhXyxIJCngGT7xK2nA4_vpEWWiaIcIUKGVOmMcnjRy4,751
+django/forms/templates/django/forms/table.html,sha256=ELTypjKfqSluAJk6-no0m2_Rve3c6HJoWV3hQ_xfnto,892
+django/forms/templates/django/forms/ul.html,sha256=vPmRsKnLcofRZJq23XHxnBs8PLs6jD4_Pw1ULbtSxPg,790
+django/forms/templates/django/forms/widgets/attrs.html,sha256=9ylIPv5EZg-rx2qPLgobRkw6Zq_WJSM8kt106PpSYa0,172
+django/forms/templates/django/forms/widgets/checkbox.html,sha256=fXpbxMzAdbv_avfWC5464gD2jFng931Eq7vzbzy1-yA,48
+django/forms/templates/django/forms/widgets/checkbox_option.html,sha256=U2dFtAXvOn_eK4ok0oO6BwKE-3-jozJboGah_PQFLVM,55
+django/forms/templates/django/forms/widgets/checkbox_select.html,sha256=-ob26uqmvrEUMZPQq6kAqK4KBk2YZHTCWWCM6BnaL0w,57
+django/forms/templates/django/forms/widgets/clearable_file_input.html,sha256=1dv4xtik6um_mzK1skURF_n4G1t1yluziQu2UWa6fX8,559
+django/forms/templates/django/forms/widgets/date.html,sha256=fXpbxMzAdbv_avfWC5464gD2jFng931Eq7vzbzy1-yA,48
+django/forms/templates/django/forms/widgets/datetime.html,sha256=fXpbxMzAdbv_avfWC5464gD2jFng931Eq7vzbzy1-yA,48
+django/forms/templates/django/forms/widgets/email.html,sha256=fXpbxMzAdbv_avfWC5464gD2jFng931Eq7vzbzy1-yA,48
+django/forms/templates/django/forms/widgets/file.html,sha256=fXpbxMzAdbv_avfWC5464gD2jFng931Eq7vzbzy1-yA,48
+django/forms/templates/django/forms/widgets/hidden.html,sha256=fXpbxMzAdbv_avfWC5464gD2jFng931Eq7vzbzy1-yA,48
+django/forms/templates/django/forms/widgets/input.html,sha256=dwzzrLocGLZQIaGe-_X8k7z87jV6AFtn28LilnUnUH0,189
+django/forms/templates/django/forms/widgets/input_option.html,sha256=PyRNn9lmE9Da0-RK37zW4yJZUSiJWgIPCU9ou5oUC28,219
+django/forms/templates/django/forms/widgets/multiple_hidden.html,sha256=T54-n1ZeUlTd-svM3C4tLF42umKM0R5A7fdfsdthwkA,54
+django/forms/templates/django/forms/widgets/multiple_input.html,sha256=jxEWRqV32a73340eQ0uIn672Xz5jW9qm3V_srByLEd0,426
+django/forms/templates/django/forms/widgets/multiwidget.html,sha256=slk4AgCdXnVmFvavhjVcsza0quTOP2LG50D8wna0dw0,117
+django/forms/templates/django/forms/widgets/number.html,sha256=fXpbxMzAdbv_avfWC5464gD2jFng931Eq7vzbzy1-yA,48
+django/forms/templates/django/forms/widgets/password.html,sha256=fXpbxMzAdbv_avfWC5464gD2jFng931Eq7vzbzy1-yA,48
+django/forms/templates/django/forms/widgets/radio.html,sha256=-ob26uqmvrEUMZPQq6kAqK4KBk2YZHTCWWCM6BnaL0w,57
+django/forms/templates/django/forms/widgets/radio_option.html,sha256=U2dFtAXvOn_eK4ok0oO6BwKE-3-jozJboGah_PQFLVM,55
+django/forms/templates/django/forms/widgets/select.html,sha256=7U0RzjeESG87ENzQjPRUF71gvKvGjVVvXcpsW2-BTR4,384
+django/forms/templates/django/forms/widgets/select_date.html,sha256=AzaPLlNLg91qkVQwwtAJxwOqDemrtt_btSkWLpboJDs,54
+django/forms/templates/django/forms/widgets/select_option.html,sha256=N_psd0JYCqNhx2eh2oyvkF2KU2dv7M9mtMw_4BLYq8A,127
+django/forms/templates/django/forms/widgets/splitdatetime.html,sha256=AzaPLlNLg91qkVQwwtAJxwOqDemrtt_btSkWLpboJDs,54
+django/forms/templates/django/forms/widgets/splithiddendatetime.html,sha256=AzaPLlNLg91qkVQwwtAJxwOqDemrtt_btSkWLpboJDs,54
+django/forms/templates/django/forms/widgets/text.html,sha256=fXpbxMzAdbv_avfWC5464gD2jFng931Eq7vzbzy1-yA,48
+django/forms/templates/django/forms/widgets/textarea.html,sha256=Av1Y-hpXUU2AjrhnUivgZFKNBLdwCSZSeuSmCqmCkDA,145
+django/forms/templates/django/forms/widgets/time.html,sha256=fXpbxMzAdbv_avfWC5464gD2jFng931Eq7vzbzy1-yA,48
+django/forms/templates/django/forms/widgets/url.html,sha256=fXpbxMzAdbv_avfWC5464gD2jFng931Eq7vzbzy1-yA,48
+django/forms/utils.py,sha256=Aqd1Sz6wHl7SaueN7hzE1-XqhHvy9wOCWn_TSRlqLMY,7888
+django/forms/widgets.py,sha256=0xT2Cr0DYrf8Gs4wvGvyjSHWB2GtmvpmS5_Cz8Z7Qf0,39470
+django/http/__init__.py,sha256=uVUz0ov-emc29hbD78QKKka_R1L4mpDDPhkyfkx4jzQ,1200
+django/http/__pycache__/__init__.cpython-312.pyc,,
+django/http/__pycache__/cookie.cpython-312.pyc,,
+django/http/__pycache__/multipartparser.cpython-312.pyc,,
+django/http/__pycache__/request.cpython-312.pyc,,
+django/http/__pycache__/response.cpython-312.pyc,,
+django/http/cookie.py,sha256=t7yGORGClUnCYVKQqyLBlEYsxQLLHn9crsMSWqK_Eic,679
+django/http/multipartparser.py,sha256=mrVXa2yenSbSOOlhIrgbfWS-3qlhvVtDEflSgTAKtsk,27830
+django/http/request.py,sha256=SPKLZprCQ1-tdSQauspS9DeDjS97XCposUg6JQLDk8w,25750
+django/http/response.py,sha256=62Xj0NhLfYR_V_UHuLEddNKif-O55RHgZhan5D1TSxo,25348
+django/middleware/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/middleware/__pycache__/__init__.cpython-312.pyc,,
+django/middleware/__pycache__/cache.cpython-312.pyc,,
+django/middleware/__pycache__/clickjacking.cpython-312.pyc,,
+django/middleware/__pycache__/common.cpython-312.pyc,,
+django/middleware/__pycache__/csrf.cpython-312.pyc,,
+django/middleware/__pycache__/gzip.cpython-312.pyc,,
+django/middleware/__pycache__/http.cpython-312.pyc,,
+django/middleware/__pycache__/locale.cpython-312.pyc,,
+django/middleware/__pycache__/security.cpython-312.pyc,,
+django/middleware/cache.py,sha256=KOlg-Knjx_17KtXr-vx2DEpWvpzojk3yFUSsMHUIYo4,8487
+django/middleware/clickjacking.py,sha256=rIm2VlbblLWrMTRYJ1JBIui5xshAM-2mpyJf989xOgY,1724
+django/middleware/common.py,sha256=ZXRbyYb2l71FRhVYV8RK_APZw9qVVHQSzLq6Ip80mFo,7666
+django/middleware/csrf.py,sha256=3wo10zy9uLq1P8dF8740-rN6gbKmEjDBDlTjX9K3M-Q,19489
+django/middleware/gzip.py,sha256=jsJeYv0-A4iD6-1Pd3Hehl2ZtshpE4WeBTei-4PwciA,2945
+django/middleware/http.py,sha256=RqXN9Kp6GEh8j_ub7YXRi6W2_CKZTZEyAPpFUzeNPBs,1616
+django/middleware/locale.py,sha256=CV8aerSUWmO6cJQ6IrD5BzT3YlOxYNIqFraCqr8DoY4,3442
+django/middleware/security.py,sha256=yqawglqNcPrITIUvQhSpn3BD899It4fhyOyJCTImlXE,2599
+django/shortcuts.py,sha256=AqabKkXfFofMyVAbkYGBZcUMkkiySRu0-CIembfO6cA,6293
+django/template/__init__.py,sha256=-hvAhcRO8ydLdjTJJFr6LYoBVCsJq561ebRqE9kYBJs,1845
+django/template/__pycache__/__init__.cpython-312.pyc,,
+django/template/__pycache__/autoreload.cpython-312.pyc,,
+django/template/__pycache__/base.cpython-312.pyc,,
+django/template/__pycache__/context.cpython-312.pyc,,
+django/template/__pycache__/context_processors.cpython-312.pyc,,
+django/template/__pycache__/defaultfilters.cpython-312.pyc,,
+django/template/__pycache__/defaulttags.cpython-312.pyc,,
+django/template/__pycache__/engine.cpython-312.pyc,,
+django/template/__pycache__/exceptions.cpython-312.pyc,,
+django/template/__pycache__/library.cpython-312.pyc,,
+django/template/__pycache__/loader.cpython-312.pyc,,
+django/template/__pycache__/loader_tags.cpython-312.pyc,,
+django/template/__pycache__/response.cpython-312.pyc,,
+django/template/__pycache__/smartif.cpython-312.pyc,,
+django/template/__pycache__/utils.cpython-312.pyc,,
+django/template/autoreload.py,sha256=hBanYQNDNEdgpty89I2mP_bxD-MyaeXWRmgX3K6a8Zg,2063
+django/template/backends/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/template/backends/__pycache__/__init__.cpython-312.pyc,,
+django/template/backends/__pycache__/base.cpython-312.pyc,,
+django/template/backends/__pycache__/django.cpython-312.pyc,,
+django/template/backends/__pycache__/dummy.cpython-312.pyc,,
+django/template/backends/__pycache__/jinja2.cpython-312.pyc,,
+django/template/backends/__pycache__/utils.cpython-312.pyc,,
+django/template/backends/base.py,sha256=IniOWzwfJHhrg0azO55fhZ3d1cghNjvsrgaMkV7o6x4,2801
+django/template/backends/django.py,sha256=wbOUhTVQyz2HvrTVG1GJUknDPJtuBFDuXbm15xf7jO4,5963
+django/template/backends/dummy.py,sha256=M62stG_knf7AdVp42ZWWddkNv6g6ck_sc1nRR6Sc_xA,1751
+django/template/backends/jinja2.py,sha256=U9WBznoElT-REbITG7DnZgR7SA_Awf1gWS9vc0yrEfs,4036
+django/template/backends/utils.py,sha256=z5X_lxKa9qL4KFDVeai-FmsewU3KLgVHO8y-gHLiVts,424
+django/template/base.py,sha256=NT8kiQUNjRuSDOJTW9ez_TEsBE2OESRM6h6yj6aqH28,40582
+django/template/context.py,sha256=Ztm5fvpHtdLVy7Dc7x5o8iZD3DtQBR7okocbKPpezYA,9353
+django/template/context_processors.py,sha256=PMIuGUE1iljf5L8oXggIdvvFOhCLJpASdwd39BMdjBE,2480
+django/template/defaultfilters.py,sha256=BxaTQcUOmE4C_-FLhCQkATQS0S0z7jGfSaouGPl3T5A,28438
+django/template/defaulttags.py,sha256=rg8MynL_3R2LzK9wGCuSdf2a_ynVOiC7bB5pcty8rh8,49678
+django/template/engine.py,sha256=gpk2HUxFfxVhw5onriW1uHVAec6JhVHqMcObNESXwO4,7773
+django/template/exceptions.py,sha256=rqG3_qZq31tUHbmtZD-MIu0StChqwaFejFFpR4u7th4,1342
+django/template/library.py,sha256=f_7-FMZRxhyhWdZMd4rGVYBnPoP8ZCPu5m-FSVoz_3s,13359
+django/template/loader.py,sha256=PVFUUtC5WgiRVVTilhQ6NFZnvjly6sP9s7anFmMoKdo,2054
+django/template/loader_tags.py,sha256=yGu7UOutGgzM_60RmNQhFL5Ctuho6_IuIM1sIzENgrc,13119
+django/template/loaders/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/template/loaders/__pycache__/__init__.cpython-312.pyc,,
+django/template/loaders/__pycache__/app_directories.cpython-312.pyc,,
+django/template/loaders/__pycache__/base.cpython-312.pyc,,
+django/template/loaders/__pycache__/cached.cpython-312.pyc,,
+django/template/loaders/__pycache__/filesystem.cpython-312.pyc,,
+django/template/loaders/__pycache__/locmem.cpython-312.pyc,,
+django/template/loaders/app_directories.py,sha256=sQpVXKYpnKr9Rl1YStNca-bGIQHcOkSnmm1l2qRGFVE,312
+django/template/loaders/base.py,sha256=Y5V4g0ly9GuNe7BQxaJSMENJnvxzXJm7XhSTxzfFM0s,1636
+django/template/loaders/cached.py,sha256=bDwkWYPgbvprU_u9f9w9oNYpSW_j9b7so_mlKzp9-N4,3716
+django/template/loaders/filesystem.py,sha256=f4silD7WWhv3K9QySMgW7dlGGNwwYAcHCMSTFpwiiXY,1506
+django/template/loaders/locmem.py,sha256=t9p0GYF2VHf4XG6Gggp0KBmHkdIuSKuLdiVXMVb2iHs,672
+django/template/response.py,sha256=UAU-aM7mn6cbGOIJuurn4EE5ITdcAqSFgKD5RXFms4w,5584
+django/template/smartif.py,sha256=TLbvSZa_M4B80M2X108FK2TFjHoA8RG9bfxB0PLKNck,6410
+django/template/utils.py,sha256=c9cJRfmBXs-41xa8KkZiLkeqUAbd-8elKc_7WdnI3G0,3626
+django/templatetags/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/templatetags/__pycache__/__init__.cpython-312.pyc,,
+django/templatetags/__pycache__/cache.cpython-312.pyc,,
+django/templatetags/__pycache__/i18n.cpython-312.pyc,,
+django/templatetags/__pycache__/l10n.cpython-312.pyc,,
+django/templatetags/__pycache__/static.cpython-312.pyc,,
+django/templatetags/__pycache__/tz.cpython-312.pyc,,
+django/templatetags/cache.py,sha256=WaYvWUn5ZTERwjouvkm-c5L5LRLc-GpSWl19wFod_bk,3551
+django/templatetags/i18n.py,sha256=UrS-aE3XCEK_oX18kmH8gSgA10MGHMeMTLOAESDtufI,19961
+django/templatetags/l10n.py,sha256=GB5_u3ymAtzxUtAY8QLb_pcZrzie9ZxEca-1NuKIXBY,1563
+django/templatetags/static.py,sha256=W4Rqt3DN_YtXe6EoqO-GLy7WR7xd7z0JsoX-VT0vvjc,4730
+django/templatetags/tz.py,sha256=0uSwEcqywsn1FrdOtyIjSsSCCEqzW0CDVebP-tzIBiY,5357
+django/test/__init__.py,sha256=X12C98lKN5JW1-wms7B6OaMTo-Li90waQpjfJE1V3AE,834
+django/test/__pycache__/__init__.cpython-312.pyc,,
+django/test/__pycache__/client.cpython-312.pyc,,
+django/test/__pycache__/html.cpython-312.pyc,,
+django/test/__pycache__/runner.cpython-312.pyc,,
+django/test/__pycache__/selenium.cpython-312.pyc,,
+django/test/__pycache__/signals.cpython-312.pyc,,
+django/test/__pycache__/testcases.cpython-312.pyc,,
+django/test/__pycache__/utils.cpython-312.pyc,,
+django/test/client.py,sha256=wcB9CqUb4Rq_kx5srAJ34DqMGwsjvb4B5jwnjJ8ZGb8,55968
+django/test/html.py,sha256=W97B8kAeeY3tqWrttffWkI0bK-j-vn69l-79WCsMu9A,8869
+django/test/runner.py,sha256=ZfFg65uYrWFiMMKB1HgbFK0_zVz5hsDwE-62145_H6M,42227
+django/test/selenium.py,sha256=DtQxR_MqglIfkR5dMQXeNiC3l_vmgxllRuHBz_LKZNY,9685
+django/test/signals.py,sha256=qiQBLO_rjVITdLDV4WiDVqfdGGGa5BLV4jLOn0XHJFw,7368
+django/test/testcases.py,sha256=VkWoXBHn_wsFJ4OUDiBuH8ajv6e9FPAb8vkB69rGfNA,67524
+django/test/utils.py,sha256=ObDoxbBL-vb-iT39bGt5s_kPAQiJsUEoB_PEZu5VhrQ,32151
+django/urls/__init__.py,sha256=BHyBIOD3E4_3Ng27SpXnRmqO3IzUqvBLCE4TTfs4wNs,1079
+django/urls/__pycache__/__init__.cpython-312.pyc,,
+django/urls/__pycache__/base.cpython-312.pyc,,
+django/urls/__pycache__/conf.cpython-312.pyc,,
+django/urls/__pycache__/converters.cpython-312.pyc,,
+django/urls/__pycache__/exceptions.cpython-312.pyc,,
+django/urls/__pycache__/resolvers.cpython-312.pyc,,
+django/urls/__pycache__/utils.cpython-312.pyc,,
+django/urls/base.py,sha256=MDgpJtKVu7wKbWhzuo9SJUOyvIi3ndef0b_htzawIPU,5691
+django/urls/conf.py,sha256=TFZCdC1G8KftDuB_I7smC7UH1QGKkm5o1uNAIKP2B7M,3426
+django/urls/converters.py,sha256=OTsqmA3uCrmY7Xh94HUaOjGCBttNIKKOJRfPYBm5twM,1782
+django/urls/exceptions.py,sha256=alLNjkORtAxneC00g4qnRpG5wouOHvJvGbymdpKtG_I,115
+django/urls/resolvers.py,sha256=5p7SVNVhh9FmuFke5IquHKPO3jSA29N_eiXzsMpi2xE,31518
+django/urls/utils.py,sha256=d1KSc6JVR-5Z8axg_yDgYKtkqObdbJwWNkhcB8x44Rs,2179
+django/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/utils/__pycache__/__init__.cpython-312.pyc,,
+django/utils/__pycache__/_os.cpython-312.pyc,,
+django/utils/__pycache__/archive.cpython-312.pyc,,
+django/utils/__pycache__/asyncio.cpython-312.pyc,,
+django/utils/__pycache__/autoreload.cpython-312.pyc,,
+django/utils/__pycache__/cache.cpython-312.pyc,,
+django/utils/__pycache__/choices.cpython-312.pyc,,
+django/utils/__pycache__/connection.cpython-312.pyc,,
+django/utils/__pycache__/crypto.cpython-312.pyc,,
+django/utils/__pycache__/datastructures.cpython-312.pyc,,
+django/utils/__pycache__/dateformat.cpython-312.pyc,,
+django/utils/__pycache__/dateparse.cpython-312.pyc,,
+django/utils/__pycache__/dates.cpython-312.pyc,,
+django/utils/__pycache__/deconstruct.cpython-312.pyc,,
+django/utils/__pycache__/decorators.cpython-312.pyc,,
+django/utils/__pycache__/deprecation.cpython-312.pyc,,
+django/utils/__pycache__/duration.cpython-312.pyc,,
+django/utils/__pycache__/encoding.cpython-312.pyc,,
+django/utils/__pycache__/feedgenerator.cpython-312.pyc,,
+django/utils/__pycache__/formats.cpython-312.pyc,,
+django/utils/__pycache__/functional.cpython-312.pyc,,
+django/utils/__pycache__/hashable.cpython-312.pyc,,
+django/utils/__pycache__/html.cpython-312.pyc,,
+django/utils/__pycache__/http.cpython-312.pyc,,
+django/utils/__pycache__/inspect.cpython-312.pyc,,
+django/utils/__pycache__/ipv6.cpython-312.pyc,,
+django/utils/__pycache__/itercompat.cpython-312.pyc,,
+django/utils/__pycache__/jslex.cpython-312.pyc,,
+django/utils/__pycache__/log.cpython-312.pyc,,
+django/utils/__pycache__/lorem_ipsum.cpython-312.pyc,,
+django/utils/__pycache__/module_loading.cpython-312.pyc,,
+django/utils/__pycache__/numberformat.cpython-312.pyc,,
+django/utils/__pycache__/regex_helper.cpython-312.pyc,,
+django/utils/__pycache__/safestring.cpython-312.pyc,,
+django/utils/__pycache__/termcolors.cpython-312.pyc,,
+django/utils/__pycache__/text.cpython-312.pyc,,
+django/utils/__pycache__/timesince.cpython-312.pyc,,
+django/utils/__pycache__/timezone.cpython-312.pyc,,
+django/utils/__pycache__/tree.cpython-312.pyc,,
+django/utils/__pycache__/version.cpython-312.pyc,,
+django/utils/__pycache__/xmlutils.cpython-312.pyc,,
+django/utils/_os.py,sha256=Q0d96RWFaQr6YqG00GulGqQ9M2Oni5WIjf_y4JnEWn8,2323
+django/utils/archive.py,sha256=HOBIOtVUzxNe_scK0gl-gu1yeQGU8X4VkYIdyCwkFuA,8087
+django/utils/asyncio.py,sha256=0glOg3eGmms-gUv04ZgDvZt19IZbdPBC64PnaKqeGDc,1138
+django/utils/autoreload.py,sha256=IABCHCytEe07k6h7ZlDDVnvT0JJ3Z7eQZbc_zjit-qg,24451
+django/utils/cache.py,sha256=xyazhD17lfCRXbWHnNWbI1WMHvwyXLUupRzG670y8gU,16583
+django/utils/choices.py,sha256=kSYtbZZit2Rdtl7PECG9f8Jrhkbn-DfBqZajUg8xPUg,4147
+django/utils/connection.py,sha256=2kqA6M_EObbZg6QKMXhX6p4YXG9RiPTUHwwN3mumhDY,2554
+django/utils/crypto.py,sha256=91KEDCMKAh3kKAMxUv2eQQKMEj-EgbMWRE2lVjmAzgY,2662
+django/utils/datastructures.py,sha256=mEt2-kg3zOQ24fW7ltxZDFaatZZyTSeJP9WAGWOg6UM,10267
+django/utils/dateformat.py,sha256=FvIRPWcVlSTQfVnPARPbV1BtQ1OX3Z3i49Iiyx9JuDI,10118
+django/utils/dateparse.py,sha256=oWTWbJax4NP1uY7tCGPSgnyAkoGxnXf1snEh-kfCkiQ,5356
+django/utils/dates.py,sha256=zHUHeOkxuo53rTvHG3dWMLRfVyfaMLBIt5xmA4E_Ids,2179
+django/utils/deconstruct.py,sha256=R3ks8L-Cif9-qyNwy-2R6KWf9UmcGDSiMGX-N6CbLOA,2126
+django/utils/decorators.py,sha256=p3NKImxC6MdbH2IVElMGu9OUdi3jRKt3d6_RXaeFm2M,8227
+django/utils/deprecation.py,sha256=PXnTY2003LnV5fUonR1N7dckwex7aUwF3IkS7NTiK3E,5133
+django/utils/duration.py,sha256=HK5E36F1GGdPchCqHsmloYhrHX_ByyITvOHyuxtElSE,1230
+django/utils/encoding.py,sha256=DLjcAjvBxrz5Jr5d8T2XnEUccseRVHTTXOm-zf-FVD4,8793
+django/utils/feedgenerator.py,sha256=nGSoWb5jlD0io-76tmjYnWlQxcFS6fksUn61Zn09KqQ,15636
+django/utils/formats.py,sha256=FmPUj3dfL2gCH2ijcWtcesYKbsi2-EbHGLGyHvGOJA0,10255
+django/utils/functional.py,sha256=URFZkoTNJmOlm_ay9872-_lEgV1ewunZS9GKSJRg-e8,14541
+django/utils/hashable.py,sha256=HzcLr4YPZGls_TLt0aQra7cCHcFp-hpTEOcOJ_DTQj0,738
+django/utils/html.py,sha256=VzL4XxfZEzdz_W2r-p0UHv-Le_ayRJ8ZKnqnN_FUp9M,17188
+django/utils/http.py,sha256=PqAUD05dlvDU9zCnmct4DMeT21nFx0u878g90xmyh-E,12776
+django/utils/inspect.py,sha256=utTOblKvpF1VhziK14LoUDtAjMP9xVX9q5a-Q3YKd2o,2318
+django/utils/ipv6.py,sha256=RlrNSr2fKESeUxPyXtE3W4QJk9PdEVKLSCB1qsor3lk,1387
+django/utils/itercompat.py,sha256=mXmO77Sd3P_0VN6ox4kAorZ2vo2CjKRiFBuDbIqu1os,532
+django/utils/jslex.py,sha256=qHVWN1SCWcJCSJQa-GL2EVEJk4ksBvGIrIWeISS8UwQ,8049
+django/utils/log.py,sha256=5qHhornekS3LJLFEr095hu4wqL4bfPqdjKKhzx7vMFw,8186
+django/utils/lorem_ipsum.py,sha256=yUtBgKhshftIpPg04pc1IrLpOBydZIf7g0isFCIJZqk,5473
+django/utils/module_loading.py,sha256=-a7qOb5rpp-Lw_51vyIPSdb7R40B16Er1Zc1C_a6ibY,3820
+django/utils/numberformat.py,sha256=8LqSMmfxaN0PYSTTES6UT_ATerfDYQn7Ya4NI70gMaU,3781
+django/utils/regex_helper.py,sha256=FsGQkHjDNJmYnCDPT2f3b07hdp4RRNTMB_KgSRe-8hs,12772
+django/utils/safestring.py,sha256=-dKgvOyuADWC8mo0F5HH-OadkS87xF4OHzdB3_fpLUc,1876
+django/utils/termcolors.py,sha256=vvQbUH7GsFofGRSiKQwx4YvgE4yZMtAGRVz9QPDfisA,7386
+django/utils/text.py,sha256=kejMRNU_DRFvtWcTwdGwDjrFuLn29-BM7bGdJExY1sk,14745
+django/utils/timesince.py,sha256=j9B_wSnsdS3ZXn9pt9GImOJDpgO61YMr_jtnUpZDx0g,4914
+django/utils/timezone.py,sha256=Wg4eIhEHAsOMEKlzfSS_aYPf-h70DYqOqnmRDG1TbbE,7295
+django/utils/translation/__init__.py,sha256=IzuMZHXY059T4hOcsqQjDmSOT2itEQb8OBsNi88aURA,8878
+django/utils/translation/__pycache__/__init__.cpython-312.pyc,,
+django/utils/translation/__pycache__/reloader.cpython-312.pyc,,
+django/utils/translation/__pycache__/template.cpython-312.pyc,,
+django/utils/translation/__pycache__/trans_null.cpython-312.pyc,,
+django/utils/translation/__pycache__/trans_real.cpython-312.pyc,,
+django/utils/translation/reloader.py,sha256=oVM0xenn3fraUomMEFucvwlbr5UGYUijWnUn6FL55Zc,1114
+django/utils/translation/template.py,sha256=TOfPNT62RnUbUG64a_6d_VQ7tsDC1_F1TCopw_HwlcA,10549
+django/utils/translation/trans_null.py,sha256=niy_g1nztS2bPsINqK7_g0HcpI_w6hL-c8_hqpC7U7s,1287
+django/utils/translation/trans_real.py,sha256=7pLwuC7oTOeeY_HMsMB277yIgTSl4575XAiMYAmu558,22357
+django/utils/tree.py,sha256=v8sNUsnsG2Loi9xBIIk0GmV5yN7VWOGTzbmk8BOEs6E,4394
+django/utils/version.py,sha256=oQDlhyhDJiwAhtjuevKXnyy-ZCMTlPBmOnZpsaRW8wg,3701
+django/utils/xmlutils.py,sha256=LsggeI4vhln3An_YXNBk2cCwKLQgMe-O_3L--j3o3GM,1172
+django/views/__init__.py,sha256=GIq6CKUBCbGpQVyK4xIoaAUDPrmRvbBPSX_KSHk0Bb4,63
+django/views/__pycache__/__init__.cpython-312.pyc,,
+django/views/__pycache__/csrf.cpython-312.pyc,,
+django/views/__pycache__/debug.cpython-312.pyc,,
+django/views/__pycache__/defaults.cpython-312.pyc,,
+django/views/__pycache__/i18n.cpython-312.pyc,,
+django/views/__pycache__/static.cpython-312.pyc,,
+django/views/csrf.py,sha256=PwZPfYD-zI0SL19etlwAcpD4LOMp8Flu1qPGgHlrsBg,3425
+django/views/debug.py,sha256=3yDwwZPSIv3D1FvSQ3r2bbZfNiPtfZt5rvf2S-JyN1w,25660
+django/views/decorators/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+django/views/decorators/__pycache__/__init__.cpython-312.pyc,,
+django/views/decorators/__pycache__/cache.cpython-312.pyc,,
+django/views/decorators/__pycache__/clickjacking.cpython-312.pyc,,
+django/views/decorators/__pycache__/common.cpython-312.pyc,,
+django/views/decorators/__pycache__/csrf.cpython-312.pyc,,
+django/views/decorators/__pycache__/debug.cpython-312.pyc,,
+django/views/decorators/__pycache__/gzip.cpython-312.pyc,,
+django/views/decorators/__pycache__/http.cpython-312.pyc,,
+django/views/decorators/__pycache__/vary.cpython-312.pyc,,
+django/views/decorators/cache.py,sha256=4cWEWW88qPv57St9Wwmv0aK0vVxD-7aevFOQc8z4pQs,2821
+django/views/decorators/clickjacking.py,sha256=3w8djeDoQUK67uDfIzi9jdlds_ZdekwDMIV2IM8NBWk,2555
+django/views/decorators/common.py,sha256=Kcj1Q-aPTBLGMW_kkeUleRiYiEZCg7uoP_UexklyyQA,739
+django/views/decorators/csrf.py,sha256=q9lXnlNkbm7Hlg4FRx1pesf64sNpCIC52mCqY7xduZo,2324
+django/views/decorators/debug.py,sha256=jvKimgFDSVzCN3RWA1X5Ry7BSADFA21K3A2RjUsJy7E,5256
+django/views/decorators/gzip.py,sha256=PtpSGd8BePa1utGqvKMFzpLtZJxpV2_Jej8llw5bCJY,253
+django/views/decorators/http.py,sha256=vaoIxGGIn6kychggji7CmdmVl5JXvNs-7FUUVNv5w9Y,6533
+django/views/decorators/vary.py,sha256=DGR1eA8mSaXM8kgMJta4XnzCznJIrW1_KDMrd4aqCTM,1201
+django/views/defaults.py,sha256=BXT36auw8XF5ZwqdU0akzX5ITFBWhuy8idT8YGkCo_I,4718
+django/views/generic/__init__.py,sha256=VwQKUbBFJktiq5J2fo3qRNzRc0STfcMRPChlLPYAkkE,886
+django/views/generic/__pycache__/__init__.cpython-312.pyc,,
+django/views/generic/__pycache__/base.cpython-312.pyc,,
+django/views/generic/__pycache__/dates.cpython-312.pyc,,
+django/views/generic/__pycache__/detail.cpython-312.pyc,,
+django/views/generic/__pycache__/edit.cpython-312.pyc,,
+django/views/generic/__pycache__/list.cpython-312.pyc,,
+django/views/generic/base.py,sha256=p5HbLA01-FQSqC3hSGIg7jQk23khBMn9ssg4d9GHui4,9275
+django/views/generic/dates.py,sha256=xwSEF6zsaSl1jUTePs6NPihnOJEWT-j8SST0RG4bco0,26332
+django/views/generic/detail.py,sha256=zrAuhJxrFvNqJLnlvK-NSiRiiONsKKOYFantD7UztwU,6663
+django/views/generic/edit.py,sha256=lQ9msLa7PVw3mp4Ivup5vPjb7Vo_9G_paX34R7xhD-8,9091
+django/views/generic/list.py,sha256=KWsT5UOK5jflxn5JFoJCnyJEQXa0fM4talHswzEjzXU,7941
+django/views/i18n.py,sha256=EVTwiUOVetsRqzxs3HSwiuC7Wa_e-CYBDq26m_Nexk8,9020
+django/views/static.py,sha256=dfEj3tr0tBN6fW02T0z43fszVSj1DB6Gxe-C3V4VYPo,4055
+django/views/templates/csrf_403.html,sha256=lrD9CeNoW5UOC1cay8RJzydMMWF12BMMSpz5UDufNAk,2856
+django/views/templates/default_urlconf.html,sha256=P8dRIQu9i-K38Gsk-OP7nAMR4vGtMd2-Pw6cWjKnhN8,12521
+django/views/templates/directory_index.html,sha256=0CGI4FUy9n_Yo2e7U2vWeKCLsUgizBmoqHseNQxxe04,653
+django/views/templates/i18n_catalog.js,sha256=WTPJxawKwdORo12g9I_mUn4YSU6Xx-DCx6E06yKBKZQ,2785
+django/views/templates/technical_404.html,sha256=da7h7kPnDufG3D1KM5JzySVHEm4mTYx3UxV8KdPSz_c,2816
+django/views/templates/technical_500.html,sha256=ZJAa_HrpoqOaemlk3nikPH-wHXHlhaY1oyx6qGDAGgQ,18124
+django/views/templates/technical_500.txt,sha256=b0ihE_FS7YtfAFOXU_yk0-CTgUmZ4ZkWVfkFHdEQXQI,3712

+ 0 - 0
courses/django_kind/env/lib/python3.12/site-packages/Django-5.1.4.dist-info/REQUESTED


+ 5 - 0
courses/django_kind/env/lib/python3.12/site-packages/Django-5.1.4.dist-info/WHEEL

@@ -0,0 +1,5 @@
+Wheel-Version: 1.0
+Generator: bdist_wheel (0.45.1)
+Root-Is-Purelib: true
+Tag: py3-none-any
+

+ 2 - 0
courses/django_kind/env/lib/python3.12/site-packages/Django-5.1.4.dist-info/entry_points.txt

@@ -0,0 +1,2 @@
+[console_scripts]
+django-admin = django.core.management:execute_from_command_line

+ 1 - 0
courses/django_kind/env/lib/python3.12/site-packages/Django-5.1.4.dist-info/top_level.txt

@@ -0,0 +1 @@
+django

+ 1 - 0
courses/django_kind/env/lib/python3.12/site-packages/asgiref-3.8.1.dist-info/INSTALLER

@@ -0,0 +1 @@
+pip

+ 27 - 0
courses/django_kind/env/lib/python3.12/site-packages/asgiref-3.8.1.dist-info/LICENSE

@@ -0,0 +1,27 @@
+Copyright (c) Django Software Foundation and individual contributors.
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+    1. Redistributions of source code must retain the above copyright notice,
+       this list of conditions and the following disclaimer.
+
+    2. Redistributions in binary form must reproduce the above copyright
+       notice, this list of conditions and the following disclaimer in the
+       documentation and/or other materials provided with the distribution.
+
+    3. Neither the name of Django nor the names of its contributors may be used
+       to endorse or promote products derived from this software without
+       specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

+ 246 - 0
courses/django_kind/env/lib/python3.12/site-packages/asgiref-3.8.1.dist-info/METADATA

@@ -0,0 +1,246 @@
+Metadata-Version: 2.1
+Name: asgiref
+Version: 3.8.1
+Summary: ASGI specs, helper code, and adapters
+Home-page: https://github.com/django/asgiref/
+Author: Django Software Foundation
+Author-email: foundation@djangoproject.com
+License: BSD-3-Clause
+Project-URL: Documentation, https://asgi.readthedocs.io/
+Project-URL: Further Documentation, https://docs.djangoproject.com/en/stable/topics/async/#async-adapter-functions
+Project-URL: Changelog, https://github.com/django/asgiref/blob/master/CHANGELOG.txt
+Classifier: Development Status :: 5 - Production/Stable
+Classifier: Environment :: Web Environment
+Classifier: Intended Audience :: Developers
+Classifier: License :: OSI Approved :: BSD License
+Classifier: Operating System :: OS Independent
+Classifier: Programming Language :: Python
+Classifier: Programming Language :: Python :: 3
+Classifier: Programming Language :: Python :: 3 :: Only
+Classifier: Programming Language :: Python :: 3.8
+Classifier: Programming Language :: Python :: 3.9
+Classifier: Programming Language :: Python :: 3.10
+Classifier: Programming Language :: Python :: 3.11
+Classifier: Programming Language :: Python :: 3.12
+Classifier: Topic :: Internet :: WWW/HTTP
+Requires-Python: >=3.8
+License-File: LICENSE
+Requires-Dist: typing-extensions >=4 ; python_version < "3.11"
+Provides-Extra: tests
+Requires-Dist: pytest ; extra == 'tests'
+Requires-Dist: pytest-asyncio ; extra == 'tests'
+Requires-Dist: mypy >=0.800 ; extra == 'tests'
+
+asgiref
+=======
+
+.. image:: https://github.com/django/asgiref/actions/workflows/tests.yml/badge.svg
+    :target: https://github.com/django/asgiref/actions/workflows/tests.yml
+
+.. image:: https://img.shields.io/pypi/v/asgiref.svg
+    :target: https://pypi.python.org/pypi/asgiref
+
+ASGI is a standard for Python asynchronous web apps and servers to communicate
+with each other, and positioned as an asynchronous successor to WSGI. You can
+read more at https://asgi.readthedocs.io/en/latest/
+
+This package includes ASGI base libraries, such as:
+
+* Sync-to-async and async-to-sync function wrappers, ``asgiref.sync``
+* Server base classes, ``asgiref.server``
+* A WSGI-to-ASGI adapter, in ``asgiref.wsgi``
+
+
+Function wrappers
+-----------------
+
+These allow you to wrap or decorate async or sync functions to call them from
+the other style (so you can call async functions from a synchronous thread,
+or vice-versa).
+
+In particular:
+
+* AsyncToSync lets a synchronous subthread stop and wait while the async
+  function is called on the main thread's event loop, and then control is
+  returned to the thread when the async function is finished.
+
+* SyncToAsync lets async code call a synchronous function, which is run in
+  a threadpool and control returned to the async coroutine when the synchronous
+  function completes.
+
+The idea is to make it easier to call synchronous APIs from async code and
+asynchronous APIs from synchronous code so it's easier to transition code from
+one style to the other. In the case of Channels, we wrap the (synchronous)
+Django view system with SyncToAsync to allow it to run inside the (asynchronous)
+ASGI server.
+
+Note that exactly what threads things run in is very specific, and aimed to
+keep maximum compatibility with old synchronous code. See
+"Synchronous code & Threads" below for a full explanation. By default,
+``sync_to_async`` will run all synchronous code in the program in the same
+thread for safety reasons; you can disable this for more performance with
+``@sync_to_async(thread_sensitive=False)``, but make sure that your code does
+not rely on anything bound to threads (like database connections) when you do.
+
+
+Threadlocal replacement
+-----------------------
+
+This is a drop-in replacement for ``threading.local`` that works with both
+threads and asyncio Tasks. Even better, it will proxy values through from a
+task-local context to a thread-local context when you use ``sync_to_async``
+to run things in a threadpool, and vice-versa for ``async_to_sync``.
+
+If you instead want true thread- and task-safety, you can set
+``thread_critical`` on the Local object to ensure this instead.
+
+
+Server base classes
+-------------------
+
+Includes a ``StatelessServer`` class which provides all the hard work of
+writing a stateless server (as in, does not handle direct incoming sockets
+but instead consumes external streams or sockets to work out what is happening).
+
+An example of such a server would be a chatbot server that connects out to
+a central chat server and provides a "connection scope" per user chatting to
+it. There's only one actual connection, but the server has to separate things
+into several scopes for easier writing of the code.
+
+You can see an example of this being used in `frequensgi <https://github.com/andrewgodwin/frequensgi>`_.
+
+
+WSGI-to-ASGI adapter
+--------------------
+
+Allows you to wrap a WSGI application so it appears as a valid ASGI application.
+
+Simply wrap it around your WSGI application like so::
+
+    asgi_application = WsgiToAsgi(wsgi_application)
+
+The WSGI application will be run in a synchronous threadpool, and the wrapped
+ASGI application will be one that accepts ``http`` class messages.
+
+Please note that not all extended features of WSGI may be supported (such as
+file handles for incoming POST bodies).
+
+
+Dependencies
+------------
+
+``asgiref`` requires Python 3.8 or higher.
+
+
+Contributing
+------------
+
+Please refer to the
+`main Channels contributing docs <https://github.com/django/channels/blob/master/CONTRIBUTING.rst>`_.
+
+
+Testing
+'''''''
+
+To run tests, make sure you have installed the ``tests`` extra with the package::
+
+    cd asgiref/
+    pip install -e .[tests]
+    pytest
+
+
+Building the documentation
+''''''''''''''''''''''''''
+
+The documentation uses `Sphinx <http://www.sphinx-doc.org>`_::
+
+    cd asgiref/docs/
+    pip install sphinx
+
+To build the docs, you can use the default tools::
+
+    sphinx-build -b html . _build/html  # or `make html`, if you've got make set up
+    cd _build/html
+    python -m http.server
+
+...or you can use ``sphinx-autobuild`` to run a server and rebuild/reload
+your documentation changes automatically::
+
+    pip install sphinx-autobuild
+    sphinx-autobuild . _build/html
+
+
+Releasing
+'''''''''
+
+To release, first add details to CHANGELOG.txt and update the version number in ``asgiref/__init__.py``.
+
+Then, build and push the packages::
+
+    python -m build
+    twine upload dist/*
+    rm -r build/ dist/
+
+
+Implementation Details
+----------------------
+
+Synchronous code & threads
+''''''''''''''''''''''''''
+
+The ``asgiref.sync`` module provides two wrappers that let you go between
+asynchronous and synchronous code at will, while taking care of the rough edges
+for you.
+
+Unfortunately, the rough edges are numerous, and the code has to work especially
+hard to keep things in the same thread as much as possible. Notably, the
+restrictions we are working with are:
+
+* All synchronous code called through ``SyncToAsync`` and marked with
+  ``thread_sensitive`` should run in the same thread as each other (and if the
+  outer layer of the program is synchronous, the main thread)
+
+* If a thread already has a running async loop, ``AsyncToSync`` can't run things
+  on that loop if it's blocked on synchronous code that is above you in the
+  call stack.
+
+The first compromise you get to might be that ``thread_sensitive`` code should
+just run in the same thread and not spawn in a sub-thread, fulfilling the first
+restriction, but that immediately runs you into the second restriction.
+
+The only real solution is to essentially have a variant of ThreadPoolExecutor
+that executes any ``thread_sensitive`` code on the outermost synchronous
+thread - either the main thread, or a single spawned subthread.
+
+This means you now have two basic states:
+
+* If the outermost layer of your program is synchronous, then all async code
+  run through ``AsyncToSync`` will run in a per-call event loop in arbitrary
+  sub-threads, while all ``thread_sensitive`` code will run in the main thread.
+
+* If the outermost layer of your program is asynchronous, then all async code
+  runs on the main thread's event loop, and all ``thread_sensitive`` synchronous
+  code will run in a single shared sub-thread.
+
+Crucially, this means that in both cases there is a thread which is a shared
+resource that all ``thread_sensitive`` code must run on, and there is a chance
+that this thread is currently blocked on its own ``AsyncToSync`` call. Thus,
+``AsyncToSync`` needs to act as an executor for thread code while it's blocking.
+
+The ``CurrentThreadExecutor`` class provides this functionality; rather than
+simply waiting on a Future, you can call its ``run_until_future`` method and
+it will run submitted code until that Future is done. This means that code
+inside the call can then run code on your thread.
+
+
+Maintenance and Security
+------------------------
+
+To report security issues, please contact security@djangoproject.com. For GPG
+signatures and more security process information, see
+https://docs.djangoproject.com/en/dev/internals/security/.
+
+To report bugs or request new features, please open a new GitHub issue.
+
+This repository is part of the Channels project. For the shepherd and maintenance team, please see the
+`main Channels readme <https://github.com/django/channels/blob/master/README.rst>`_.

+ 27 - 0
courses/django_kind/env/lib/python3.12/site-packages/asgiref-3.8.1.dist-info/RECORD

@@ -0,0 +1,27 @@
+asgiref-3.8.1.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
+asgiref-3.8.1.dist-info/LICENSE,sha256=uEZBXRtRTpwd_xSiLeuQbXlLxUbKYSn5UKGM0JHipmk,1552
+asgiref-3.8.1.dist-info/METADATA,sha256=Cbu67XPstSkMxAdA4puvY-FAzN9OrT_AasH7IuK6DaM,9259
+asgiref-3.8.1.dist-info/RECORD,,
+asgiref-3.8.1.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
+asgiref-3.8.1.dist-info/top_level.txt,sha256=bokQjCzwwERhdBiPdvYEZa4cHxT4NCeAffQNUqJ8ssg,8
+asgiref/__init__.py,sha256=kZzGpxWKY4rWDQrrrlM7bN7YKRAjy17Wv4w__djvVYU,22
+asgiref/__pycache__/__init__.cpython-312.pyc,,
+asgiref/__pycache__/compatibility.cpython-312.pyc,,
+asgiref/__pycache__/current_thread_executor.cpython-312.pyc,,
+asgiref/__pycache__/local.cpython-312.pyc,,
+asgiref/__pycache__/server.cpython-312.pyc,,
+asgiref/__pycache__/sync.cpython-312.pyc,,
+asgiref/__pycache__/testing.cpython-312.pyc,,
+asgiref/__pycache__/timeout.cpython-312.pyc,,
+asgiref/__pycache__/typing.cpython-312.pyc,,
+asgiref/__pycache__/wsgi.cpython-312.pyc,,
+asgiref/compatibility.py,sha256=DhY1SOpOvOw0Y1lSEjCqg-znRUQKecG3LTaV48MZi68,1606
+asgiref/current_thread_executor.py,sha256=EuowbT0oL_P4Fq8KTXNUyEgk3-k4Yh4E8F_anEVdeBI,3977
+asgiref/local.py,sha256=bNeER_QIfw2-PAPYanqAZq6yAAEJ-aio7e9o8Up-mgI,4808
+asgiref/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
+asgiref/server.py,sha256=egTQhZo1k4G0F7SSBQNp_VOekpGcjBJZU2kkCoiGC_M,6005
+asgiref/sync.py,sha256=Why0YQV84vSp7IBBr-JDbxYCua-InLgBjuiCMlj9WgI,21444
+asgiref/testing.py,sha256=QgZgXKrwdq5xzhZqynr1msWOiTS3Kpastj7wHU2ePRY,3481
+asgiref/timeout.py,sha256=LtGL-xQpG8JHprdsEUCMErJ0kNWj4qwWZhEHJ3iKu4s,3627
+asgiref/typing.py,sha256=rLF3y_9OgvlQMaDm8yMw8QTgsO9Mv9YAc6Cj8xjvWo0,6264
+asgiref/wsgi.py,sha256=fxBLgUE_0PEVgcp13ticz6GHf3q-aKWcB5eFPhd6yxo,6753

+ 5 - 0
courses/django_kind/env/lib/python3.12/site-packages/asgiref-3.8.1.dist-info/WHEEL

@@ -0,0 +1,5 @@
+Wheel-Version: 1.0
+Generator: bdist_wheel (0.43.0)
+Root-Is-Purelib: true
+Tag: py3-none-any
+

+ 1 - 0
courses/django_kind/env/lib/python3.12/site-packages/asgiref-3.8.1.dist-info/top_level.txt

@@ -0,0 +1 @@
+asgiref

+ 1 - 0
courses/django_kind/env/lib/python3.12/site-packages/asgiref/__init__.py

@@ -0,0 +1 @@
+__version__ = "3.8.1"

BIN
courses/django_kind/env/lib/python3.12/site-packages/asgiref/__pycache__/__init__.cpython-312.pyc


BIN
courses/django_kind/env/lib/python3.12/site-packages/asgiref/__pycache__/compatibility.cpython-312.pyc


BIN
courses/django_kind/env/lib/python3.12/site-packages/asgiref/__pycache__/current_thread_executor.cpython-312.pyc


BIN
courses/django_kind/env/lib/python3.12/site-packages/asgiref/__pycache__/local.cpython-312.pyc


BIN
courses/django_kind/env/lib/python3.12/site-packages/asgiref/__pycache__/server.cpython-312.pyc


BIN
courses/django_kind/env/lib/python3.12/site-packages/asgiref/__pycache__/sync.cpython-312.pyc


BIN
courses/django_kind/env/lib/python3.12/site-packages/asgiref/__pycache__/testing.cpython-312.pyc


BIN
courses/django_kind/env/lib/python3.12/site-packages/asgiref/__pycache__/timeout.cpython-312.pyc


BIN
courses/django_kind/env/lib/python3.12/site-packages/asgiref/__pycache__/typing.cpython-312.pyc


BIN
courses/django_kind/env/lib/python3.12/site-packages/asgiref/__pycache__/wsgi.cpython-312.pyc


+ 48 - 0
courses/django_kind/env/lib/python3.12/site-packages/asgiref/compatibility.py

@@ -0,0 +1,48 @@
+import inspect
+
+from .sync import iscoroutinefunction
+
+
+def is_double_callable(application):
+    """
+    Tests to see if an application is a legacy-style (double-callable) application.
+    """
+    # Look for a hint on the object first
+    if getattr(application, "_asgi_single_callable", False):
+        return False
+    if getattr(application, "_asgi_double_callable", False):
+        return True
+    # Uninstanted classes are double-callable
+    if inspect.isclass(application):
+        return True
+    # Instanted classes depend on their __call__
+    if hasattr(application, "__call__"):
+        # We only check to see if its __call__ is a coroutine function -
+        # if it's not, it still might be a coroutine function itself.
+        if iscoroutinefunction(application.__call__):
+            return False
+    # Non-classes we just check directly
+    return not iscoroutinefunction(application)
+
+
+def double_to_single_callable(application):
+    """
+    Transforms a double-callable ASGI application into a single-callable one.
+    """
+
+    async def new_application(scope, receive, send):
+        instance = application(scope)
+        return await instance(receive, send)
+
+    return new_application
+
+
+def guarantee_single_callable(application):
+    """
+    Takes either a single- or double-callable application and always returns it
+    in single-callable style. Use this to add backwards compatibility for ASGI
+    2.0 applications to your server/test harness/etc.
+    """
+    if is_double_callable(application):
+        application = double_to_single_callable(application)
+    return application

+ 115 - 0
courses/django_kind/env/lib/python3.12/site-packages/asgiref/current_thread_executor.py

@@ -0,0 +1,115 @@
+import queue
+import sys
+import threading
+from concurrent.futures import Executor, Future
+from typing import TYPE_CHECKING, Any, Callable, TypeVar, Union
+
+if sys.version_info >= (3, 10):
+    from typing import ParamSpec
+else:
+    from typing_extensions import ParamSpec
+
+_T = TypeVar("_T")
+_P = ParamSpec("_P")
+_R = TypeVar("_R")
+
+
+class _WorkItem:
+    """
+    Represents an item needing to be run in the executor.
+    Copied from ThreadPoolExecutor (but it's private, so we're not going to rely on importing it)
+    """
+
+    def __init__(
+        self,
+        future: "Future[_R]",
+        fn: Callable[_P, _R],
+        *args: _P.args,
+        **kwargs: _P.kwargs,
+    ):
+        self.future = future
+        self.fn = fn
+        self.args = args
+        self.kwargs = kwargs
+
+    def run(self) -> None:
+        __traceback_hide__ = True  # noqa: F841
+        if not self.future.set_running_or_notify_cancel():
+            return
+        try:
+            result = self.fn(*self.args, **self.kwargs)
+        except BaseException as exc:
+            self.future.set_exception(exc)
+            # Break a reference cycle with the exception 'exc'
+            self = None  # type: ignore[assignment]
+        else:
+            self.future.set_result(result)
+
+
+class CurrentThreadExecutor(Executor):
+    """
+    An Executor that actually runs code in the thread it is instantiated in.
+    Passed to other threads running async code, so they can run sync code in
+    the thread they came from.
+    """
+
+    def __init__(self) -> None:
+        self._work_thread = threading.current_thread()
+        self._work_queue: queue.Queue[Union[_WorkItem, "Future[Any]"]] = queue.Queue()
+        self._broken = False
+
+    def run_until_future(self, future: "Future[Any]") -> None:
+        """
+        Runs the code in the work queue until a result is available from the future.
+        Should be run from the thread the executor is initialised in.
+        """
+        # Check we're in the right thread
+        if threading.current_thread() != self._work_thread:
+            raise RuntimeError(
+                "You cannot run CurrentThreadExecutor from a different thread"
+            )
+        future.add_done_callback(self._work_queue.put)
+        # Keep getting and running work items until we get the future we're waiting for
+        # back via the future's done callback.
+        try:
+            while True:
+                # Get a work item and run it
+                work_item = self._work_queue.get()
+                if work_item is future:
+                    return
+                assert isinstance(work_item, _WorkItem)
+                work_item.run()
+                del work_item
+        finally:
+            self._broken = True
+
+    def _submit(
+        self,
+        fn: Callable[_P, _R],
+        *args: _P.args,
+        **kwargs: _P.kwargs,
+    ) -> "Future[_R]":
+        # Check they're not submitting from the same thread
+        if threading.current_thread() == self._work_thread:
+            raise RuntimeError(
+                "You cannot submit onto CurrentThreadExecutor from its own thread"
+            )
+        # Check they're not too late or the executor errored
+        if self._broken:
+            raise RuntimeError("CurrentThreadExecutor already quit or is broken")
+        # Add to work queue
+        f: "Future[_R]" = Future()
+        work_item = _WorkItem(f, fn, *args, **kwargs)
+        self._work_queue.put(work_item)
+        # Return the future
+        return f
+
+    # Python 3.9+ has a new signature for submit with a "/" after `fn`, to enforce
+    # it to be a positional argument. If we ignore[override] mypy on 3.9+ will be
+    # happy but 3.8 will say that the ignore comment is unused, even when
+    # defining them differently based on sys.version_info.
+    # We should be able to remove this when we drop support for 3.8.
+    if not TYPE_CHECKING:
+
+        def submit(self, fn, *args, **kwargs):
+            return self._submit(fn, *args, **kwargs)

+ 128 - 0
courses/django_kind/env/lib/python3.12/site-packages/asgiref/local.py

@@ -0,0 +1,128 @@
+import asyncio
+import contextlib
+import contextvars
+import threading
+from typing import Any, Dict, Union
+
+
+class _CVar:
+    """Storage utility for Local."""
+
+    def __init__(self) -> None:
+        self._data: "contextvars.ContextVar[Dict[str, Any]]" = contextvars.ContextVar(
+            "asgiref.local"
+        )
+
+    def __getattr__(self, key):
+        storage_object = self._data.get({})
+        try:
+            return storage_object[key]
+        except KeyError:
+            raise AttributeError(f"{self!r} object has no attribute {key!r}")
+
+    def __setattr__(self, key: str, value: Any) -> None:
+        if key == "_data":
+            return super().__setattr__(key, value)
+
+        storage_object = self._data.get({})
+        storage_object[key] = value
+        self._data.set(storage_object)
+
+    def __delattr__(self, key: str) -> None:
+        storage_object = self._data.get({})
+        if key in storage_object:
+            del storage_object[key]
+            self._data.set(storage_object)
+        else:
+            raise AttributeError(f"{self!r} object has no attribute {key!r}")
+
+
+class Local:
+    """Local storage for async tasks.
+
+    This is a namespace object (similar to `threading.local`) where data is
+    also local to the current async task (if there is one).
+
+    In async threads, local means in the same sense as the `contextvars`
+    module - i.e. a value set in an async frame will be visible:
+
+    - to other async code `await`-ed from this frame.
+    - to tasks spawned using `asyncio` utilities (`create_task`, `wait_for`,
+      `gather` and probably others).
+    - to code scheduled in a sync thread using `sync_to_async`
+
+    In "sync" threads (a thread with no async event loop running), the
+    data is thread-local, but additionally shared with async code executed
+    via the `async_to_sync` utility, which schedules async code in a new thread
+    and copies context across to that thread.
+
+    If `thread_critical` is True, then the local will only be visible per-thread,
+    behaving exactly like `threading.local` if the thread is sync, and as
+    `contextvars` if the thread is async. This allows genuinely thread-sensitive
+    code (such as DB handles) to be kept stricly to their initial thread and
+    disable the sharing across `sync_to_async` and `async_to_sync` wrapped calls.
+
+    Unlike plain `contextvars` objects, this utility is threadsafe.
+    """
+
+    def __init__(self, thread_critical: bool = False) -> None:
+        self._thread_critical = thread_critical
+        self._thread_lock = threading.RLock()
+
+        self._storage: "Union[threading.local, _CVar]"
+
+        if thread_critical:
+            # Thread-local storage
+            self._storage = threading.local()
+        else:
+            # Contextvar storage
+            self._storage = _CVar()
+
+    @contextlib.contextmanager
+    def _lock_storage(self):
+        # Thread safe access to storage
+        if self._thread_critical:
+            try:
+                # this is a test for are we in a async or sync
+                # thread - will raise RuntimeError if there is
+                # no current loop
+                asyncio.get_running_loop()
+            except RuntimeError:
+                # We are in a sync thread, the storage is
+                # just the plain thread local (i.e, "global within
+                # this thread" - it doesn't matter where you are
+                # in a call stack you see the same storage)
+                yield self._storage
+            else:
+                # We are in an async thread - storage is still
+                # local to this thread, but additionally should
+                # behave like a context var (is only visible with
+                # the same async call stack)
+
+                # Ensure context exists in the current thread
+                if not hasattr(self._storage, "cvar"):
+                    self._storage.cvar = _CVar()
+
+                # self._storage is a thread local, so the members
+                # can't be accessed in another thread (we don't
+                # need any locks)
+                yield self._storage.cvar
+        else:
+            # Lock for thread_critical=False as other threads
+            # can access the exact same storage object
+            with self._thread_lock:
+                yield self._storage
+
+    def __getattr__(self, key):
+        with self._lock_storage() as storage:
+            return getattr(storage, key)
+
+    def __setattr__(self, key, value):
+        if key in ("_local", "_storage", "_thread_critical", "_thread_lock"):
+            return super().__setattr__(key, value)
+        with self._lock_storage() as storage:
+            setattr(storage, key, value)
+
+    def __delattr__(self, key):
+        with self._lock_storage() as storage:
+            delattr(storage, key)

+ 0 - 0
courses/django_kind/env/lib/python3.12/site-packages/asgiref/py.typed


+ 157 - 0
courses/django_kind/env/lib/python3.12/site-packages/asgiref/server.py

@@ -0,0 +1,157 @@
+import asyncio
+import logging
+import time
+import traceback
+
+from .compatibility import guarantee_single_callable
+
+logger = logging.getLogger(__name__)
+
+
+class StatelessServer:
+    """
+    Base server class that handles basic concepts like application instance
+    creation/pooling, exception handling, and similar, for stateless protocols
+    (i.e. ones without actual incoming connections to the process)
+
+    Your code should override the handle() method, doing whatever it needs to,
+    and calling get_or_create_application_instance with a unique `scope_id`
+    and `scope` for the scope it wants to get.
+
+    If an application instance is found with the same `scope_id`, you are
+    given its input queue, otherwise one is made for you with the scope provided
+    and you are given that fresh new input queue. Either way, you should do
+    something like:
+
+    input_queue = self.get_or_create_application_instance(
+        "user-123456",
+        {"type": "testprotocol", "user_id": "123456", "username": "andrew"},
+    )
+    input_queue.put_nowait(message)
+
+    If you try and create an application instance and there are already
+    `max_application` instances, the oldest/least recently used one will be
+    reclaimed and shut down to make space.
+
+    Application coroutines that error will be found periodically (every 100ms
+    by default) and have their exceptions printed to the console. Override
+    application_exception() if you want to do more when this happens.
+
+    If you override run(), make sure you handle things like launching the
+    application checker.
+    """
+
+    application_checker_interval = 0.1
+
+    def __init__(self, application, max_applications=1000):
+        # Parameters
+        self.application = application
+        self.max_applications = max_applications
+        # Initialisation
+        self.application_instances = {}
+
+    ### Mainloop and handling
+
+    def run(self):
+        """
+        Runs the asyncio event loop with our handler loop.
+        """
+        event_loop = asyncio.get_event_loop()
+        asyncio.ensure_future(self.application_checker())
+        try:
+            event_loop.run_until_complete(self.handle())
+        except KeyboardInterrupt:
+            logger.info("Exiting due to Ctrl-C/interrupt")
+
+    async def handle(self):
+        raise NotImplementedError("You must implement handle()")
+
+    async def application_send(self, scope, message):
+        """
+        Receives outbound sends from applications and handles them.
+        """
+        raise NotImplementedError("You must implement application_send()")
+
+    ### Application instance management
+
+    def get_or_create_application_instance(self, scope_id, scope):
+        """
+        Creates an application instance and returns its queue.
+        """
+        if scope_id in self.application_instances:
+            self.application_instances[scope_id]["last_used"] = time.time()
+            return self.application_instances[scope_id]["input_queue"]
+        # See if we need to delete an old one
+        while len(self.application_instances) > self.max_applications:
+            self.delete_oldest_application_instance()
+        # Make an instance of the application
+        input_queue = asyncio.Queue()
+        application_instance = guarantee_single_callable(self.application)
+        # Run it, and stash the future for later checking
+        future = asyncio.ensure_future(
+            application_instance(
+                scope=scope,
+                receive=input_queue.get,
+                send=lambda message: self.application_send(scope, message),
+            ),
+        )
+        self.application_instances[scope_id] = {
+            "input_queue": input_queue,
+            "future": future,
+            "scope": scope,
+            "last_used": time.time(),
+        }
+        return input_queue
+
+    def delete_oldest_application_instance(self):
+        """
+        Finds and deletes the oldest application instance
+        """
+        oldest_time = min(
+            details["last_used"] for details in self.application_instances.values()
+        )
+        for scope_id, details in self.application_instances.items():
+            if details["last_used"] == oldest_time:
+                self.delete_application_instance(scope_id)
+                # Return to make sure we only delete one in case two have
+                # the same oldest time
+                return
+
+    def delete_application_instance(self, scope_id):
+        """
+        Removes an application instance (makes sure its task is stopped,
+        then removes it from the current set)
+        """
+        details = self.application_instances[scope_id]
+        del self.application_instances[scope_id]
+        if not details["future"].done():
+            details["future"].cancel()
+
+    async def application_checker(self):
+        """
+        Goes through the set of current application instance Futures and cleans up
+        any that are done/prints exceptions for any that errored.
+        """
+        while True:
+            await asyncio.sleep(self.application_checker_interval)
+            for scope_id, details in list(self.application_instances.items()):
+                if details["future"].done():
+                    exception = details["future"].exception()
+                    if exception:
+                        await self.application_exception(exception, details)
+                    try:
+                        del self.application_instances[scope_id]
+                    except KeyError:
+                        # Exception handling might have already got here before us. That's fine.
+                        pass
+
+    async def application_exception(self, exception, application_details):
+        """
+        Called whenever an application coroutine has an exception.
+        """
+        logging.error(
+            "Exception inside application: %s\n%s%s",
+            exception,
+            "".join(traceback.format_tb(exception.__traceback__)),
+            f"  {exception}",
+        )

+ 613 - 0
courses/django_kind/env/lib/python3.12/site-packages/asgiref/sync.py

@@ -0,0 +1,613 @@
+import asyncio
+import asyncio.coroutines
+import contextvars
+import functools
+import inspect
+import os
+import sys
+import threading
+import warnings
+import weakref
+from concurrent.futures import Future, ThreadPoolExecutor
+from typing import (
+    TYPE_CHECKING,
+    Any,
+    Awaitable,
+    Callable,
+    Coroutine,
+    Dict,
+    Generic,
+    List,
+    Optional,
+    TypeVar,
+    Union,
+    overload,
+)
+
+from .current_thread_executor import CurrentThreadExecutor
+from .local import Local
+
+if sys.version_info >= (3, 10):
+    from typing import ParamSpec
+else:
+    from typing_extensions import ParamSpec
+
+if TYPE_CHECKING:
+    # This is not available to import at runtime
+    from _typeshed import OptExcInfo
+
+_F = TypeVar("_F", bound=Callable[..., Any])
+_P = ParamSpec("_P")
+_R = TypeVar("_R")
+
+
+def _restore_context(context: contextvars.Context) -> None:
+    # Check for changes in contextvars, and set them to the current
+    # context for downstream consumers
+    for cvar in context:
+        cvalue = context.get(cvar)
+        try:
+            if cvar.get() != cvalue:
+                cvar.set(cvalue)
+        except LookupError:
+            cvar.set(cvalue)
+
+
+# Python 3.12 deprecates asyncio.iscoroutinefunction() as an alias for
+# inspect.iscoroutinefunction(), whilst also removing the _is_coroutine marker.
+# The latter is replaced with the inspect.markcoroutinefunction decorator.
+# Until 3.12 is the minimum supported Python version, provide a shim.
+
+if hasattr(inspect, "markcoroutinefunction"):
+    iscoroutinefunction = inspect.iscoroutinefunction
+    markcoroutinefunction: Callable[[_F], _F] = inspect.markcoroutinefunction
+else:
+    iscoroutinefunction = asyncio.iscoroutinefunction  # type: ignore[assignment]
+
+    def markcoroutinefunction(func: _F) -> _F:
+        func._is_coroutine = asyncio.coroutines._is_coroutine  # type: ignore
+        return func
+
+
+class ThreadSensitiveContext:
+    """Async context manager to manage context for thread sensitive mode
+
+    This context manager controls which thread pool executor is used when in
+    thread sensitive mode. By default, a single thread pool executor is shared
+    within a process.
+
+    The ThreadSensitiveContext() context manager may be used to specify a
+    thread pool per context.
+
+    This context manager is re-entrant, so only the outer-most call to
+    ThreadSensitiveContext will set the context.
+
+    Usage:
+
+    >>> import time
+    >>> async with ThreadSensitiveContext():
+    ...     await sync_to_async(time.sleep, 1)()
+    """
+
+    def __init__(self):
+        self.token = None
+
+    async def __aenter__(self):
+        try:
+            SyncToAsync.thread_sensitive_context.get()
+        except LookupError:
+            self.token = SyncToAsync.thread_sensitive_context.set(self)
+
+        return self
+
+    async def __aexit__(self, exc, value, tb):
+        if not self.token:
+            return
+
+        executor = SyncToAsync.context_to_thread_executor.pop(self, None)
+        if executor:
+            executor.shutdown()
+        SyncToAsync.thread_sensitive_context.reset(self.token)
+
+
+class AsyncToSync(Generic[_P, _R]):
+    """
+    Utility class which turns an awaitable that only works on the thread with
+    the event loop into a synchronous callable that works in a subthread.
+
+    If the call stack contains an async loop, the code runs there.
+    Otherwise, the code runs in a new loop in a new thread.
+
+    Either way, this thread then pauses and waits to run any thread_sensitive
+    code called from further down the call stack using SyncToAsync, before
+    finally exiting once the async task returns.
+    """
+
+    # Keeps a reference to the CurrentThreadExecutor in local context, so that
+    # any sync_to_async inside the wrapped code can find it.
+    executors: "Local" = Local()
+
+    # When we can't find a CurrentThreadExecutor from the context, such as
+    # inside create_task, we'll look it up here from the running event loop.
+    loop_thread_executors: "Dict[asyncio.AbstractEventLoop, CurrentThreadExecutor]" = {}
+
+    def __init__(
+        self,
+        awaitable: Union[
+            Callable[_P, Coroutine[Any, Any, _R]],
+            Callable[_P, Awaitable[_R]],
+        ],
+        force_new_loop: bool = False,
+    ):
+        if not callable(awaitable) or (
+            not iscoroutinefunction(awaitable)
+            and not iscoroutinefunction(getattr(awaitable, "__call__", awaitable))
+        ):
+            # Python does not have very reliable detection of async functions
+            # (lots of false negatives) so this is just a warning.
+            warnings.warn(
+                "async_to_sync was passed a non-async-marked callable", stacklevel=2
+            )
+        self.awaitable = awaitable
+        try:
+            self.__self__ = self.awaitable.__self__  # type: ignore[union-attr]
+        except AttributeError:
+            pass
+        self.force_new_loop = force_new_loop
+        self.main_event_loop = None
+        try:
+            self.main_event_loop = asyncio.get_running_loop()
+        except RuntimeError:
+            # There's no event loop in this thread.
+            pass
+
+    def __call__(self, *args: _P.args, **kwargs: _P.kwargs) -> _R:
+        __traceback_hide__ = True  # noqa: F841
+
+        if not self.force_new_loop and not self.main_event_loop:
+            # There's no event loop in this thread. Look for the threadlocal if
+            # we're inside SyncToAsync
+            main_event_loop_pid = getattr(
+                SyncToAsync.threadlocal, "main_event_loop_pid", None
+            )
+            # We make sure the parent loop is from the same process - if
+            # they've forked, this is not going to be valid any more (#194)
+            if main_event_loop_pid and main_event_loop_pid == os.getpid():
+                self.main_event_loop = getattr(
+                    SyncToAsync.threadlocal, "main_event_loop", None
+                )
+
+        # You can't call AsyncToSync from a thread with a running event loop
+        try:
+            event_loop = asyncio.get_running_loop()
+        except RuntimeError:
+            pass
+        else:
+            if event_loop.is_running():
+                raise RuntimeError(
+                    "You cannot use AsyncToSync in the same thread as an async event loop - "
+                    "just await the async function directly."
+                )
+
+        # Make a future for the return information
+        call_result: "Future[_R]" = Future()
+
+        # Make a CurrentThreadExecutor we'll use to idle in this thread - we
+        # need one for every sync frame, even if there's one above us in the
+        # same thread.
+        old_executor = getattr(self.executors, "current", None)
+        current_executor = CurrentThreadExecutor()
+        self.executors.current = current_executor
+
+        # Wrapping context in list so it can be reassigned from within
+        # `main_wrap`.
+        context = [contextvars.copy_context()]
+
+        # Get task context so that parent task knows which task to propagate
+        # an asyncio.CancelledError to.
+        task_context = getattr(SyncToAsync.threadlocal, "task_context", None)
+
+        loop = None
+        # Use call_soon_threadsafe to schedule a synchronous callback on the
+        # main event loop's thread if it's there, otherwise make a new loop
+        # in this thread.
+        try:
+            awaitable = self.main_wrap(
+                call_result,
+                sys.exc_info(),
+                task_context,
+                context,
+                *args,
+                **kwargs,
+            )
+
+            if not (self.main_event_loop and self.main_event_loop.is_running()):
+                # Make our own event loop - in a new thread - and run inside that.
+                loop = asyncio.new_event_loop()
+                self.loop_thread_executors[loop] = current_executor
+                loop_executor = ThreadPoolExecutor(max_workers=1)
+                loop_future = loop_executor.submit(
+                    self._run_event_loop, loop, awaitable
+                )
+                if current_executor:
+                    # Run the CurrentThreadExecutor until the future is done
+                    current_executor.run_until_future(loop_future)
+                # Wait for future and/or allow for exception propagation
+                loop_future.result()
+            else:
+                # Call it inside the existing loop
+                self.main_event_loop.call_soon_threadsafe(
+                    self.main_event_loop.create_task, awaitable
+                )
+                if current_executor:
+                    # Run the CurrentThreadExecutor until the future is done
+                    current_executor.run_until_future(call_result)
+        finally:
+            # Clean up any executor we were running
+            if loop is not None:
+                del self.loop_thread_executors[loop]
+            _restore_context(context[0])
+            # Restore old current thread executor state
+            self.executors.current = old_executor
+
+        # Wait for results from the future.
+        return call_result.result()
+
+    def _run_event_loop(self, loop, coro):
+        """
+        Runs the given event loop (designed to be called in a thread).
+        """
+        asyncio.set_event_loop(loop)
+        try:
+            loop.run_until_complete(coro)
+        finally:
+            try:
+                # mimic asyncio.run() behavior
+                # cancel unexhausted async generators
+                tasks = asyncio.all_tasks(loop)
+                for task in tasks:
+                    task.cancel()
+
+                async def gather():
+                    await asyncio.gather(*tasks, return_exceptions=True)
+
+                loop.run_until_complete(gather())
+                for task in tasks:
+                    if task.cancelled():
+                        continue
+                    if task.exception() is not None:
+                        loop.call_exception_handler(
+                            {
+                                "message": "unhandled exception during loop shutdown",
+                                "exception": task.exception(),
+                                "task": task,
+                            }
+                        )
+                if hasattr(loop, "shutdown_asyncgens"):
+                    loop.run_until_complete(loop.shutdown_asyncgens())
+            finally:
+                loop.close()
+                asyncio.set_event_loop(self.main_event_loop)
+
+    def __get__(self, parent: Any, objtype: Any) -> Callable[_P, _R]:
+        """
+        Include self for methods
+        """
+        func = functools.partial(self.__call__, parent)
+        return functools.update_wrapper(func, self.awaitable)
+
+    async def main_wrap(
+        self,
+        call_result: "Future[_R]",
+        exc_info: "OptExcInfo",
+        task_context: "Optional[List[asyncio.Task[Any]]]",
+        context: List[contextvars.Context],
+        *args: _P.args,
+        **kwargs: _P.kwargs,
+    ) -> None:
+        """
+        Wraps the awaitable with something that puts the result into the
+        result/exception future.
+        """
+
+        __traceback_hide__ = True  # noqa: F841
+
+        if context is not None:
+            _restore_context(context[0])
+
+        current_task = asyncio.current_task()
+        if current_task is not None and task_context is not None:
+            task_context.append(current_task)
+
+        try:
+            # If we have an exception, run the function inside the except block
+            # after raising it so exc_info is correctly populated.
+            if exc_info[1]:
+                try:
+                    raise exc_info[1]
+                except BaseException:
+                    result = await self.awaitable(*args, **kwargs)
+            else:
+                result = await self.awaitable(*args, **kwargs)
+        except BaseException as e:
+            call_result.set_exception(e)
+        else:
+            call_result.set_result(result)
+        finally:
+            if current_task is not None and task_context is not None:
+                task_context.remove(current_task)
+            context[0] = contextvars.copy_context()
+
+
+class SyncToAsync(Generic[_P, _R]):
+    """
+    Utility class which turns a synchronous callable into an awaitable that
+    runs in a threadpool. It also sets a threadlocal inside the thread so
+    calls to AsyncToSync can escape it.
+
+    If thread_sensitive is passed, the code will run in the same thread as any
+    outer code. This is needed for underlying Python code that is not
+    threadsafe (for example, code which handles SQLite database connections).
+
+    If the outermost program is async (i.e. SyncToAsync is outermost), then
+    this will be a dedicated single sub-thread that all sync code runs in,
+    one after the other. If the outermost program is sync (i.e. AsyncToSync is
+    outermost), this will just be the main thread. This is achieved by idling
+    with a CurrentThreadExecutor while AsyncToSync is blocking its sync parent,
+    rather than just blocking.
+
+    If executor is passed in, that will be used instead of the loop's default executor.
+    In order to pass in an executor, thread_sensitive must be set to False, otherwise
+    a TypeError will be raised.
+    """
+
+    # Storage for main event loop references
+    threadlocal = threading.local()
+
+    # Single-thread executor for thread-sensitive code
+    single_thread_executor = ThreadPoolExecutor(max_workers=1)
+
+    # Maintain a contextvar for the current execution context. Optionally used
+    # for thread sensitive mode.
+    thread_sensitive_context: "contextvars.ContextVar[ThreadSensitiveContext]" = (
+        contextvars.ContextVar("thread_sensitive_context")
+    )
+
+    # Contextvar that is used to detect if the single thread executor
+    # would be awaited on while already being used in the same context
+    deadlock_context: "contextvars.ContextVar[bool]" = contextvars.ContextVar(
+        "deadlock_context"
+    )
+
+    # Maintaining a weak reference to the context ensures that thread pools are
+    # erased once the context goes out of scope. This terminates the thread pool.
+    context_to_thread_executor: "weakref.WeakKeyDictionary[ThreadSensitiveContext, ThreadPoolExecutor]" = (
+        weakref.WeakKeyDictionary()
+    )
+
+    def __init__(
+        self,
+        func: Callable[_P, _R],
+        thread_sensitive: bool = True,
+        executor: Optional["ThreadPoolExecutor"] = None,
+    ) -> None:
+        if (
+            not callable(func)
+            or iscoroutinefunction(func)
+            or iscoroutinefunction(getattr(func, "__call__", func))
+        ):
+            raise TypeError("sync_to_async can only be applied to sync functions.")
+        self.func = func
+        functools.update_wrapper(self, func)
+        self._thread_sensitive = thread_sensitive
+        markcoroutinefunction(self)
+        if thread_sensitive and executor is not None:
+            raise TypeError("executor must not be set when thread_sensitive is True")
+        self._executor = executor
+        try:
+            self.__self__ = func.__self__  # type: ignore
+        except AttributeError:
+            pass
+
+    async def __call__(self, *args: _P.args, **kwargs: _P.kwargs) -> _R:
+        __traceback_hide__ = True  # noqa: F841
+        loop = asyncio.get_running_loop()
+
+        # Work out what thread to run the code in
+        if self._thread_sensitive:
+            current_thread_executor = getattr(AsyncToSync.executors, "current", None)
+            if current_thread_executor:
+                # If we have a parent sync thread above somewhere, use that
+                executor = current_thread_executor
+            elif self.thread_sensitive_context.get(None):
+                # If we have a way of retrieving the current context, attempt
+                # to use a per-context thread pool executor
+                thread_sensitive_context = self.thread_sensitive_context.get()
+
+                if thread_sensitive_context in self.context_to_thread_executor:
+                    # Re-use thread executor in current context
+                    executor = self.context_to_thread_executor[thread_sensitive_context]
+                else:
+                    # Create new thread executor in current context
+                    executor = ThreadPoolExecutor(max_workers=1)
+                    self.context_to_thread_executor[thread_sensitive_context] = executor
+            elif loop in AsyncToSync.loop_thread_executors:
+                # Re-use thread executor for running loop
+                executor = AsyncToSync.loop_thread_executors[loop]
+            elif self.deadlock_context.get(False):
+                raise RuntimeError(
+                    "Single thread executor already being used, would deadlock"
+                )
+            else:
+                # Otherwise, we run it in a fixed single thread
+                executor = self.single_thread_executor
+                self.deadlock_context.set(True)
+        else:
+            # Use the passed in executor, or the loop's default if it is None
+            executor = self._executor
+
+        context = contextvars.copy_context()
+        child = functools.partial(self.func, *args, **kwargs)
+        func = context.run
+        task_context: List[asyncio.Task[Any]] = []
+
+        # Run the code in the right thread
+        exec_coro = loop.run_in_executor(
+            executor,
+            functools.partial(
+                self.thread_handler,
+                loop,
+                sys.exc_info(),
+                task_context,
+                func,
+                child,
+            ),
+        )
+        ret: _R
+        try:
+            ret = await asyncio.shield(exec_coro)
+        except asyncio.CancelledError:
+            cancel_parent = True
+            try:
+                task = task_context[0]
+                task.cancel()
+                try:
+                    await task
+                    cancel_parent = False
+                except asyncio.CancelledError:
+                    pass
+            except IndexError:
+                pass
+            if exec_coro.done():
+                raise
+            if cancel_parent:
+                exec_coro.cancel()
+            ret = await exec_coro
+        finally:
+            _restore_context(context)
+            self.deadlock_context.set(False)
+
+        return ret
+
+    def __get__(
+        self, parent: Any, objtype: Any
+    ) -> Callable[_P, Coroutine[Any, Any, _R]]:
+        """
+        Include self for methods
+        """
+        func = functools.partial(self.__call__, parent)
+        return functools.update_wrapper(func, self.func)
+
+    def thread_handler(self, loop, exc_info, task_context, func, *args, **kwargs):
+        """
+        Wraps the sync application with exception handling.
+        """
+
+        __traceback_hide__ = True  # noqa: F841
+
+        # Set the threadlocal for AsyncToSync
+        self.threadlocal.main_event_loop = loop
+        self.threadlocal.main_event_loop_pid = os.getpid()
+        self.threadlocal.task_context = task_context
+
+        # Run the function
+        # If we have an exception, run the function inside the except block
+        # after raising it so exc_info is correctly populated.
+        if exc_info[1]:
+            try:
+                raise exc_info[1]
+            except BaseException:
+                return func(*args, **kwargs)
+        else:
+            return func(*args, **kwargs)
+
+
+@overload
+def async_to_sync(
+    *,
+    force_new_loop: bool = False,
+) -> Callable[
+    [Union[Callable[_P, Coroutine[Any, Any, _R]], Callable[_P, Awaitable[_R]]]],
+    Callable[_P, _R],
+]:
+    ...
+
+
+@overload
+def async_to_sync(
+    awaitable: Union[
+        Callable[_P, Coroutine[Any, Any, _R]],
+        Callable[_P, Awaitable[_R]],
+    ],
+    *,
+    force_new_loop: bool = False,
+) -> Callable[_P, _R]:
+    ...
+
+
+def async_to_sync(
+    awaitable: Optional[
+        Union[
+            Callable[_P, Coroutine[Any, Any, _R]],
+            Callable[_P, Awaitable[_R]],
+        ]
+    ] = None,
+    *,
+    force_new_loop: bool = False,
+) -> Union[
+    Callable[
+        [Union[Callable[_P, Coroutine[Any, Any, _R]], Callable[_P, Awaitable[_R]]]],
+        Callable[_P, _R],
+    ],
+    Callable[_P, _R],
+]:
+    if awaitable is None:
+        return lambda f: AsyncToSync(
+            f,
+            force_new_loop=force_new_loop,
+        )
+    return AsyncToSync(
+        awaitable,
+        force_new_loop=force_new_loop,
+    )
+
+
+@overload
+def sync_to_async(
+    *,
+    thread_sensitive: bool = True,
+    executor: Optional["ThreadPoolExecutor"] = None,
+) -> Callable[[Callable[_P, _R]], Callable[_P, Coroutine[Any, Any, _R]]]:
+    ...
+
+
+@overload
+def sync_to_async(
+    func: Callable[_P, _R],
+    *,
+    thread_sensitive: bool = True,
+    executor: Optional["ThreadPoolExecutor"] = None,
+) -> Callable[_P, Coroutine[Any, Any, _R]]:
+    ...
+
+
+def sync_to_async(
+    func: Optional[Callable[_P, _R]] = None,
+    *,
+    thread_sensitive: bool = True,
+    executor: Optional["ThreadPoolExecutor"] = None,
+) -> Union[
+    Callable[[Callable[_P, _R]], Callable[_P, Coroutine[Any, Any, _R]]],
+    Callable[_P, Coroutine[Any, Any, _R]],
+]:
+    if func is None:
+        return lambda f: SyncToAsync(
+            f,
+            thread_sensitive=thread_sensitive,
+            executor=executor,
+        )
+    return SyncToAsync(
+        func,
+        thread_sensitive=thread_sensitive,
+        executor=executor,
+    )

+ 103 - 0
courses/django_kind/env/lib/python3.12/site-packages/asgiref/testing.py

@@ -0,0 +1,103 @@
+import asyncio
+import contextvars
+import time
+
+from .compatibility import guarantee_single_callable
+from .timeout import timeout as async_timeout
+
+
+class ApplicationCommunicator:
+    """
+    Runs an ASGI application in a test mode, allowing sending of
+    messages to it and retrieval of messages it sends.
+    """
+
+    def __init__(self, application, scope):
+        self.application = guarantee_single_callable(application)
+        self.scope = scope
+        self.input_queue = asyncio.Queue()
+        self.output_queue = asyncio.Queue()
+        # Clear context - this ensures that context vars set in the testing scope
+        # are not "leaked" into the application which would normally begin with
+        # an empty context. In Python >= 3.11 this could also be written as:
+        # asyncio.create_task(..., context=contextvars.Context())
+        self.future = contextvars.Context().run(
+            asyncio.create_task,
+            self.application(scope, self.input_queue.get, self.output_queue.put),
+        )
+
+    async def wait(self, timeout=1):
+        """
+        Waits for the application to stop itself and returns any exceptions.
+        """
+        try:
+            async with async_timeout(timeout):
+                try:
+                    await self.future
+                    self.future.result()
+                except asyncio.CancelledError:
+                    pass
+        finally:
+            if not self.future.done():
+                self.future.cancel()
+                try:
+                    await self.future
+                except asyncio.CancelledError:
+                    pass
+
+    def stop(self, exceptions=True):
+        if not self.future.done():
+            self.future.cancel()
+        elif exceptions:
+            # Give a chance to raise any exceptions
+            self.future.result()
+
+    def __del__(self):
+        # Clean up on deletion
+        try:
+            self.stop(exceptions=False)
+        except RuntimeError:
+            # Event loop already stopped
+            pass
+
+    async def send_input(self, message):
+        """
+        Sends a single message to the application
+        """
+        # Give it the message
+        await self.input_queue.put(message)
+
+    async def receive_output(self, timeout=1):
+        """
+        Receives a single message from the application, with optional timeout.
+        """
+        # Make sure there's not an exception to raise from the task
+        if self.future.done():
+            self.future.result()
+        # Wait and receive the message
+        try:
+            async with async_timeout(timeout):
+                return await self.output_queue.get()
+        except asyncio.TimeoutError as e:
+            # See if we have another error to raise inside
+            if self.future.done():
+                self.future.result()
+            else:
+                self.future.cancel()
+                try:
+                    await self.future
+                except asyncio.CancelledError:
+                    pass
+            raise e
+
+    async def receive_nothing(self, timeout=0.1, interval=0.01):
+        """
+        Checks that there is no message to receive in the given time.
+        """
+        # `interval` has precedence over `timeout`
+        start = time.monotonic()
+        while time.monotonic() - start < timeout:
+            if not self.output_queue.empty():
+                return False
+            await asyncio.sleep(interval)
+        return self.output_queue.empty()

+ 118 - 0
courses/django_kind/env/lib/python3.12/site-packages/asgiref/timeout.py

@@ -0,0 +1,118 @@
+# This code is originally sourced from the aio-libs project "async_timeout",
+# under the Apache 2.0 license. You may see the original project at
+# https://github.com/aio-libs/async-timeout
+
+# It is vendored here to reduce chain-dependencies on this library, and
+# modified slightly to remove some features we don't use.
+
+
+import asyncio
+import warnings
+from types import TracebackType
+from typing import Any  # noqa
+from typing import Optional, Type
+
+
+class timeout:
+    """timeout context manager.
+
+    Useful in cases when you want to apply timeout logic around block
+    of code or in cases when asyncio.wait_for is not suitable. For example:
+
+    >>> with timeout(0.001):
+    ...     async with aiohttp.get('https://github.com') as r:
+    ...         await r.text()
+
+
+    timeout - value in seconds or None to disable timeout logic
+    loop - asyncio compatible event loop
+    """
+
+    def __init__(
+        self,
+        timeout: Optional[float],
+        *,
+        loop: Optional[asyncio.AbstractEventLoop] = None,
+    ) -> None:
+        self._timeout = timeout
+        if loop is None:
+            loop = asyncio.get_running_loop()
+        else:
+            warnings.warn(
+                """The loop argument to timeout() is deprecated.""", DeprecationWarning
+            )
+        self._loop = loop
+        self._task = None  # type: Optional[asyncio.Task[Any]]
+        self._cancelled = False
+        self._cancel_handler = None  # type: Optional[asyncio.Handle]
+        self._cancel_at = None  # type: Optional[float]
+
+    def __enter__(self) -> "timeout":
+        return self._do_enter()
+
+    def __exit__(
+        self,
+        exc_type: Type[BaseException],
+        exc_val: BaseException,
+        exc_tb: TracebackType,
+    ) -> Optional[bool]:
+        self._do_exit(exc_type)
+        return None
+
+    async def __aenter__(self) -> "timeout":
+        return self._do_enter()
+
+    async def __aexit__(
+        self,
+        exc_type: Type[BaseException],
+        exc_val: BaseException,
+        exc_tb: TracebackType,
+    ) -> None:
+        self._do_exit(exc_type)
+
+    @property
+    def expired(self) -> bool:
+        return self._cancelled
+
+    @property
+    def remaining(self) -> Optional[float]:
+        if self._cancel_at is not None:
+            return max(self._cancel_at - self._loop.time(), 0.0)
+        else:
+            return None
+
+    def _do_enter(self) -> "timeout":
+        # Support Tornado 5- without timeout
+        # Details: https://github.com/python/asyncio/issues/392
+        if self._timeout is None:
+            return self
+
+        self._task = asyncio.current_task(self._loop)
+        if self._task is None:
+            raise RuntimeError(
+                "Timeout context manager should be used " "inside a task"
+            )
+
+        if self._timeout <= 0:
+            self._loop.call_soon(self._cancel_task)
+            return self
+
+        self._cancel_at = self._loop.time() + self._timeout
+        self._cancel_handler = self._loop.call_at(self._cancel_at, self._cancel_task)
+        return self
+
+    def _do_exit(self, exc_type: Type[BaseException]) -> None:
+        if exc_type is asyncio.CancelledError and self._cancelled:
+            self._cancel_handler = None
+            self._task = None
+            raise asyncio.TimeoutError
+        if self._timeout is not None and self._cancel_handler is not None:
+            self._cancel_handler.cancel()
+            self._cancel_handler = None
+        self._task = None
+        return None
+
+    def _cancel_task(self) -> None:
+        if self._task is not None:
+            self._task.cancel()
+            self._cancelled = True

+ 278 - 0
courses/django_kind/env/lib/python3.12/site-packages/asgiref/typing.py

@@ -0,0 +1,278 @@
+import sys
+from typing import (
+    Any,
+    Awaitable,
+    Callable,
+    Dict,
+    Iterable,
+    Literal,
+    Optional,
+    Protocol,
+    Tuple,
+    Type,
+    TypedDict,
+    Union,
+)
+
+if sys.version_info >= (3, 11):
+    from typing import NotRequired
+else:
+    from typing_extensions import NotRequired
+
+__all__ = (
+    "ASGIVersions",
+    "HTTPScope",
+    "WebSocketScope",
+    "LifespanScope",
+    "WWWScope",
+    "Scope",
+    "HTTPRequestEvent",
+    "HTTPResponseStartEvent",
+    "HTTPResponseBodyEvent",
+    "HTTPResponseTrailersEvent",
+    "HTTPResponsePathsendEvent",
+    "HTTPServerPushEvent",
+    "HTTPDisconnectEvent",
+    "WebSocketConnectEvent",
+    "WebSocketAcceptEvent",
+    "WebSocketReceiveEvent",
+    "WebSocketSendEvent",
+    "WebSocketResponseStartEvent",
+    "WebSocketResponseBodyEvent",
+    "WebSocketDisconnectEvent",
+    "WebSocketCloseEvent",
+    "LifespanStartupEvent",
+    "LifespanShutdownEvent",
+    "LifespanStartupCompleteEvent",
+    "LifespanStartupFailedEvent",
+    "LifespanShutdownCompleteEvent",
+    "LifespanShutdownFailedEvent",
+    "ASGIReceiveEvent",
+    "ASGISendEvent",
+    "ASGIReceiveCallable",
+    "ASGISendCallable",
+    "ASGI2Protocol",
+    "ASGI2Application",
+    "ASGI3Application",
+    "ASGIApplication",
+)
+
+
+class ASGIVersions(TypedDict):
+    spec_version: str
+    version: Union[Literal["2.0"], Literal["3.0"]]
+
+
+class HTTPScope(TypedDict):
+    type: Literal["http"]
+    asgi: ASGIVersions
+    http_version: str
+    method: str
+    scheme: str
+    path: str
+    raw_path: bytes
+    query_string: bytes
+    root_path: str
+    headers: Iterable[Tuple[bytes, bytes]]
+    client: Optional[Tuple[str, int]]
+    server: Optional[Tuple[str, Optional[int]]]
+    state: NotRequired[Dict[str, Any]]
+    extensions: Optional[Dict[str, Dict[object, object]]]
+
+
+class WebSocketScope(TypedDict):
+    type: Literal["websocket"]
+    asgi: ASGIVersions
+    http_version: str
+    scheme: str
+    path: str
+    raw_path: bytes
+    query_string: bytes
+    root_path: str
+    headers: Iterable[Tuple[bytes, bytes]]
+    client: Optional[Tuple[str, int]]
+    server: Optional[Tuple[str, Optional[int]]]
+    subprotocols: Iterable[str]
+    state: NotRequired[Dict[str, Any]]
+    extensions: Optional[Dict[str, Dict[object, object]]]
+
+
+class LifespanScope(TypedDict):
+    type: Literal["lifespan"]
+    asgi: ASGIVersions
+    state: NotRequired[Dict[str, Any]]
+
+
+WWWScope = Union[HTTPScope, WebSocketScope]
+Scope = Union[HTTPScope, WebSocketScope, LifespanScope]
+
+
+class HTTPRequestEvent(TypedDict):
+    type: Literal["http.request"]
+    body: bytes
+    more_body: bool
+
+
+class HTTPResponseDebugEvent(TypedDict):
+    type: Literal["http.response.debug"]
+    info: Dict[str, object]
+
+
+class HTTPResponseStartEvent(TypedDict):
+    type: Literal["http.response.start"]
+    status: int
+    headers: Iterable[Tuple[bytes, bytes]]
+    trailers: bool
+
+
+class HTTPResponseBodyEvent(TypedDict):
+    type: Literal["http.response.body"]
+    body: bytes
+    more_body: bool
+
+
+class HTTPResponseTrailersEvent(TypedDict):
+    type: Literal["http.response.trailers"]
+    headers: Iterable[Tuple[bytes, bytes]]
+    more_trailers: bool
+
+
+class HTTPResponsePathsendEvent(TypedDict):
+    type: Literal["http.response.pathsend"]
+    path: str
+
+
+class HTTPServerPushEvent(TypedDict):
+    type: Literal["http.response.push"]
+    path: str
+    headers: Iterable[Tuple[bytes, bytes]]
+
+
+class HTTPDisconnectEvent(TypedDict):
+    type: Literal["http.disconnect"]
+
+
+class WebSocketConnectEvent(TypedDict):
+    type: Literal["websocket.connect"]
+
+
+class WebSocketAcceptEvent(TypedDict):
+    type: Literal["websocket.accept"]
+    subprotocol: Optional[str]
+    headers: Iterable[Tuple[bytes, bytes]]
+
+
+class WebSocketReceiveEvent(TypedDict):
+    type: Literal["websocket.receive"]
+    bytes: Optional[bytes]
+    text: Optional[str]
+
+
+class WebSocketSendEvent(TypedDict):
+    type: Literal["websocket.send"]
+    bytes: Optional[bytes]
+    text: Optional[str]
+
+
+class WebSocketResponseStartEvent(TypedDict):
+    type: Literal["websocket.http.response.start"]
+    status: int
+    headers: Iterable[Tuple[bytes, bytes]]
+
+
+class WebSocketResponseBodyEvent(TypedDict):
+    type: Literal["websocket.http.response.body"]
+    body: bytes
+    more_body: bool
+
+
+class WebSocketDisconnectEvent(TypedDict):
+    type: Literal["websocket.disconnect"]
+    code: int
+
+
+class WebSocketCloseEvent(TypedDict):
+    type: Literal["websocket.close"]
+    code: int
+    reason: Optional[str]
+
+
+class LifespanStartupEvent(TypedDict):
+    type: Literal["lifespan.startup"]
+
+
+class LifespanShutdownEvent(TypedDict):
+    type: Literal["lifespan.shutdown"]
+
+
+class LifespanStartupCompleteEvent(TypedDict):
+    type: Literal["lifespan.startup.complete"]
+
+
+class LifespanStartupFailedEvent(TypedDict):
+    type: Literal["lifespan.startup.failed"]
+    message: str
+
+
+class LifespanShutdownCompleteEvent(TypedDict):
+    type: Literal["lifespan.shutdown.complete"]
+
+
+class LifespanShutdownFailedEvent(TypedDict):
+    type: Literal["lifespan.shutdown.failed"]
+    message: str
+
+
+ASGIReceiveEvent = Union[
+    HTTPRequestEvent,
+    HTTPDisconnectEvent,
+    WebSocketConnectEvent,
+    WebSocketReceiveEvent,
+    WebSocketDisconnectEvent,
+    LifespanStartupEvent,
+    LifespanShutdownEvent,
+]
+
+
+ASGISendEvent = Union[
+    HTTPResponseStartEvent,
+    HTTPResponseBodyEvent,
+    HTTPResponseTrailersEvent,
+    HTTPServerPushEvent,
+    HTTPDisconnectEvent,
+    WebSocketAcceptEvent,
+    WebSocketSendEvent,
+    WebSocketResponseStartEvent,
+    WebSocketResponseBodyEvent,
+    WebSocketCloseEvent,
+    LifespanStartupCompleteEvent,
+    LifespanStartupFailedEvent,
+    LifespanShutdownCompleteEvent,
+    LifespanShutdownFailedEvent,
+]
+
+
+ASGIReceiveCallable = Callable[[], Awaitable[ASGIReceiveEvent]]
+ASGISendCallable = Callable[[ASGISendEvent], Awaitable[None]]
+
+
+class ASGI2Protocol(Protocol):
+    def __init__(self, scope: Scope) -> None:
+        ...
+
+    async def __call__(
+        self, receive: ASGIReceiveCallable, send: ASGISendCallable
+    ) -> None:
+        ...
+
+
+ASGI2Application = Type[ASGI2Protocol]
+ASGI3Application = Callable[
+    [
+        Scope,
+        ASGIReceiveCallable,
+        ASGISendCallable,
+    ],
+    Awaitable[None],
+]
+ASGIApplication = Union[ASGI2Application, ASGI3Application]

+ 166 - 0
courses/django_kind/env/lib/python3.12/site-packages/asgiref/wsgi.py

@@ -0,0 +1,166 @@
+from io import BytesIO
+from tempfile import SpooledTemporaryFile
+
+from asgiref.sync import AsyncToSync, sync_to_async
+
+
+class WsgiToAsgi:
+    """
+    Wraps a WSGI application to make it into an ASGI application.
+    """
+
+    def __init__(self, wsgi_application):
+        self.wsgi_application = wsgi_application
+
+    async def __call__(self, scope, receive, send):
+        """
+        ASGI application instantiation point.
+        We return a new WsgiToAsgiInstance here with the WSGI app
+        and the scope, ready to respond when it is __call__ed.
+        """
+        await WsgiToAsgiInstance(self.wsgi_application)(scope, receive, send)
+
+
+class WsgiToAsgiInstance:
+    """
+    Per-socket instance of a wrapped WSGI application
+    """
+
+    def __init__(self, wsgi_application):
+        self.wsgi_application = wsgi_application
+        self.response_started = False
+        self.response_content_length = None
+
+    async def __call__(self, scope, receive, send):
+        if scope["type"] != "http":
+            raise ValueError("WSGI wrapper received a non-HTTP scope")
+        self.scope = scope
+        with SpooledTemporaryFile(max_size=65536) as body:
+            # Alright, wait for the http.request messages
+            while True:
+                message = await receive()
+                if message["type"] != "http.request":
+                    raise ValueError("WSGI wrapper received a non-HTTP-request message")
+                body.write(message.get("body", b""))
+                if not message.get("more_body"):
+                    break
+            body.seek(0)
+            # Wrap send so it can be called from the subthread
+            self.sync_send = AsyncToSync(send)
+            # Call the WSGI app
+            await self.run_wsgi_app(body)
+
+    def build_environ(self, scope, body):
+        """
+        Builds a scope and request body into a WSGI environ object.
+        """
+        script_name = scope.get("root_path", "").encode("utf8").decode("latin1")
+        path_info = scope["path"].encode("utf8").decode("latin1")
+        if path_info.startswith(script_name):
+            path_info = path_info[len(script_name) :]
+        environ = {
+            "REQUEST_METHOD": scope["method"],
+            "SCRIPT_NAME": script_name,
+            "PATH_INFO": path_info,
+            "QUERY_STRING": scope["query_string"].decode("ascii"),
+            "SERVER_PROTOCOL": "HTTP/%s" % scope["http_version"],
+            "wsgi.version": (1, 0),
+            "wsgi.url_scheme": scope.get("scheme", "http"),
+            "wsgi.input": body,
+            "wsgi.errors": BytesIO(),
+            "wsgi.multithread": True,
+            "wsgi.multiprocess": True,
+            "wsgi.run_once": False,
+        }
+        # Get server name and port - required in WSGI, not in ASGI
+        if "server" in scope:
+            environ["SERVER_NAME"] = scope["server"][0]
+            environ["SERVER_PORT"] = str(scope["server"][1])
+        else:
+            environ["SERVER_NAME"] = "localhost"
+            environ["SERVER_PORT"] = "80"
+
+        if scope.get("client") is not None:
+            environ["REMOTE_ADDR"] = scope["client"][0]
+
+        # Go through headers and make them into environ entries
+        for name, value in self.scope.get("headers", []):
+            name = name.decode("latin1")
+            if name == "content-length":
+                corrected_name = "CONTENT_LENGTH"
+            elif name == "content-type":
+                corrected_name = "CONTENT_TYPE"
+            else:
+                corrected_name = "HTTP_%s" % name.upper().replace("-", "_")
+            # HTTPbis say only ASCII chars are allowed in headers, but we latin1 just in case
+            value = value.decode("latin1")
+            if corrected_name in environ:
+                value = environ[corrected_name] + "," + value
+            environ[corrected_name] = value
+        return environ
+
+    def start_response(self, status, response_headers, exc_info=None):
+        """
+        WSGI start_response callable.
+        """
+        # Don't allow re-calling once response has begun
+        if self.response_started:
+            raise exc_info[1].with_traceback(exc_info[2])
+        # Don't allow re-calling without exc_info
+        if hasattr(self, "response_start") and exc_info is None:
+            raise ValueError(
+                "You cannot call start_response a second time without exc_info"
+            )
+        # Extract status code
+        status_code, _ = status.split(" ", 1)
+        status_code = int(status_code)
+        # Extract headers
+        headers = [
+            (name.lower().encode("ascii"), value.encode("ascii"))
+            for name, value in response_headers
+        ]
+        # Extract content-length
+        self.response_content_length = None
+        for name, value in response_headers:
+            if name.lower() == "content-length":
+                self.response_content_length = int(value)
+        # Build and send response start message.
+        self.response_start = {
+            "type": "http.response.start",
+            "status": status_code,
+            "headers": headers,
+        }
+
+    @sync_to_async
+    def run_wsgi_app(self, body):
+        """
+        Called in a subthread to run the WSGI app. We encapsulate like
+        this so that the start_response callable is called in the same thread.
+        """
+        # Translate the scope and incoming request body into a WSGI environ
+        environ = self.build_environ(self.scope, body)
+        # Run the WSGI app
+        bytes_sent = 0
+        for output in self.wsgi_application(environ, self.start_response):
+            # If this is the first response, include the response headers
+            if not self.response_started:
+                self.response_started = True
+                self.sync_send(self.response_start)
+            # If the application supplies a Content-Length header
+            if self.response_content_length is not None:
+                # The server should not transmit more bytes to the client than the header allows
+                bytes_allowed = self.response_content_length - bytes_sent
+                if len(output) > bytes_allowed:
+                    output = output[:bytes_allowed]
+            self.sync_send(
+                {"type": "http.response.body", "body": output, "more_body": True}
+            )
+            bytes_sent += len(output)
+            # The server should stop iterating over the response when enough data has been sent
+            if bytes_sent == self.response_content_length:
+                break
+        # Close connection
+        if not self.response_started:
+            self.response_started = True
+            self.sync_send(self.response_start)
+        self.sync_send({"type": "http.response.body"})

+ 24 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/__init__.py

@@ -0,0 +1,24 @@
+from django.utils.version import get_version
+
+VERSION = (5, 1, 4, "final", 0)
+
+__version__ = get_version(VERSION)
+
+
+def setup(set_prefix=True):
+    """
+    Configure the settings (this happens as a side effect of accessing the
+    first setting), configure logging and populate the app registry.
+    Set the thread-local urlresolvers script prefix if `set_prefix` is True.
+    """
+    from django.apps import apps
+    from django.conf import settings
+    from django.urls import set_script_prefix
+    from django.utils.log import configure_logging
+
+    configure_logging(settings.LOGGING_CONFIG, settings.LOGGING)
+    if set_prefix:
+        set_script_prefix(
+            "/" if settings.FORCE_SCRIPT_NAME is None else settings.FORCE_SCRIPT_NAME
+        )
+    apps.populate(settings.INSTALLED_APPS)

+ 10 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/__main__.py

@@ -0,0 +1,10 @@
+"""
+Invokes django-admin when the django module is run as a script.
+
+Example: python -m django check
+"""
+
+from django.core import management
+
+if __name__ == "__main__":
+    management.execute_from_command_line()

BIN
courses/django_kind/env/lib/python3.12/site-packages/django/__pycache__/__init__.cpython-312.pyc


BIN
courses/django_kind/env/lib/python3.12/site-packages/django/__pycache__/__main__.cpython-312.pyc


BIN
courses/django_kind/env/lib/python3.12/site-packages/django/__pycache__/shortcuts.cpython-312.pyc


+ 4 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/apps/__init__.py

@@ -0,0 +1,4 @@
+from .config import AppConfig
+from .registry import apps
+
+__all__ = ["AppConfig", "apps"]

BIN
courses/django_kind/env/lib/python3.12/site-packages/django/apps/__pycache__/__init__.cpython-312.pyc


BIN
courses/django_kind/env/lib/python3.12/site-packages/django/apps/__pycache__/config.cpython-312.pyc


BIN
courses/django_kind/env/lib/python3.12/site-packages/django/apps/__pycache__/registry.cpython-312.pyc


+ 274 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/apps/config.py

@@ -0,0 +1,274 @@
+import inspect
+import os
+from importlib import import_module
+
+from django.core.exceptions import ImproperlyConfigured
+from django.utils.functional import cached_property
+from django.utils.module_loading import import_string, module_has_submodule
+
+APPS_MODULE_NAME = "apps"
+MODELS_MODULE_NAME = "models"
+
+
+class AppConfig:
+    """Class representing a Django application and its configuration."""
+
+    def __init__(self, app_name, app_module):
+        # Full Python path to the application e.g. 'django.contrib.admin'.
+        self.name = app_name
+
+        # Root module for the application e.g. <module 'django.contrib.admin'
+        # from 'django/contrib/admin/__init__.py'>.
+        self.module = app_module
+
+        # Reference to the Apps registry that holds this AppConfig. Set by the
+        # registry when it registers the AppConfig instance.
+        self.apps = None
+
+        # The following attributes could be defined at the class level in a
+        # subclass, hence the test-and-set pattern.
+
+        # Last component of the Python path to the application e.g. 'admin'.
+        # This value must be unique across a Django project.
+        if not hasattr(self, "label"):
+            self.label = app_name.rpartition(".")[2]
+        if not self.label.isidentifier():
+            raise ImproperlyConfigured(
+                "The app label '%s' is not a valid Python identifier." % self.label
+            )
+
+        # Human-readable name for the application e.g. "Admin".
+        if not hasattr(self, "verbose_name"):
+            self.verbose_name = self.label.title()
+
+        # Filesystem path to the application directory e.g.
+        # '/path/to/django/contrib/admin'.
+        if not hasattr(self, "path"):
+            self.path = self._path_from_module(app_module)
+
+        # Module containing models e.g. <module 'django.contrib.admin.models'
+        # from 'django/contrib/admin/models.py'>. Set by import_models().
+        # None if the application doesn't have a models module.
+        self.models_module = None
+
+        # Mapping of lowercase model names to model classes. Initially set to
+        # None to prevent accidental access before import_models() runs.
+        self.models = None
+
+    def __repr__(self):
+        return "<%s: %s>" % (self.__class__.__name__, self.label)
+
+    @cached_property
+    def default_auto_field(self):
+        from django.conf import settings
+
+        return settings.DEFAULT_AUTO_FIELD
+
+    @property
+    def _is_default_auto_field_overridden(self):
+        return self.__class__.default_auto_field is not AppConfig.default_auto_field
+
+    def _path_from_module(self, module):
+        """Attempt to determine app's filesystem path from its module."""
+        # See #21874 for extended discussion of the behavior of this method in
+        # various cases.
+        # Convert to list because __path__ may not support indexing.
+        paths = list(getattr(module, "__path__", []))
+        if len(paths) != 1:
+            filename = getattr(module, "__file__", None)
+            if filename is not None:
+                paths = [os.path.dirname(filename)]
+            else:
+                # For unknown reasons, sometimes the list returned by __path__
+                # contains duplicates that must be removed (#25246).
+                paths = list(set(paths))
+        if len(paths) > 1:
+            raise ImproperlyConfigured(
+                "The app module %r has multiple filesystem locations (%r); "
+                "you must configure this app with an AppConfig subclass "
+                "with a 'path' class attribute." % (module, paths)
+            )
+        elif not paths:
+            raise ImproperlyConfigured(
+                "The app module %r has no filesystem location, "
+                "you must configure this app with an AppConfig subclass "
+                "with a 'path' class attribute." % module
+            )
+        return paths[0]
+
+    @classmethod
+    def create(cls, entry):
+        """
+        Factory that creates an app config from an entry in INSTALLED_APPS.
+        """
+        # create() eventually returns app_config_class(app_name, app_module).
+        app_config_class = None
+        app_name = None
+        app_module = None
+
+        # If import_module succeeds, entry points to the app module.
+        try:
+            app_module = import_module(entry)
+        except Exception:
+            pass
+        else:
+            # If app_module has an apps submodule that defines a single
+            # AppConfig subclass, use it automatically.
+            # To prevent this, an AppConfig subclass can declare a class
+            # variable default = False.
+            # If the apps module defines more than one AppConfig subclass,
+            # the default one can declare default = True.
+            if module_has_submodule(app_module, APPS_MODULE_NAME):
+                mod_path = "%s.%s" % (entry, APPS_MODULE_NAME)
+                mod = import_module(mod_path)
+                # Check if there's exactly one AppConfig candidate,
+                # excluding those that explicitly define default = False.
+                app_configs = [
+                    (name, candidate)
+                    for name, candidate in inspect.getmembers(mod, inspect.isclass)
+                    if (
+                        issubclass(candidate, cls)
+                        and candidate is not cls
+                        and getattr(candidate, "default", True)
+                    )
+                ]
+                if len(app_configs) == 1:
+                    app_config_class = app_configs[0][1]
+                else:
+                    # Check if there's exactly one AppConfig subclass,
+                    # among those that explicitly define default = True.
+                    app_configs = [
+                        (name, candidate)
+                        for name, candidate in app_configs
+                        if getattr(candidate, "default", False)
+                    ]
+                    if len(app_configs) > 1:
+                        candidates = [repr(name) for name, _ in app_configs]
+                        raise RuntimeError(
+                            "%r declares more than one default AppConfig: "
+                            "%s." % (mod_path, ", ".join(candidates))
+                        )
+                    elif len(app_configs) == 1:
+                        app_config_class = app_configs[0][1]
+
+            # Use the default app config class if we didn't find anything.
+            if app_config_class is None:
+                app_config_class = cls
+                app_name = entry
+
+        # If import_string succeeds, entry is an app config class.
+        if app_config_class is None:
+            try:
+                app_config_class = import_string(entry)
+            except Exception:
+                pass
+        # If both import_module and import_string failed, it means that entry
+        # doesn't have a valid value.
+        if app_module is None and app_config_class is None:
+            # If the last component of entry starts with an uppercase letter,
+            # then it was likely intended to be an app config class; if not,
+            # an app module. Provide a nice error message in both cases.
+            mod_path, _, cls_name = entry.rpartition(".")
+            if mod_path and cls_name[0].isupper():
+                # We could simply re-trigger the string import exception, but
+                # we're going the extra mile and providing a better error
+                # message for typos in INSTALLED_APPS.
+                # This may raise ImportError, which is the best exception
+                # possible if the module at mod_path cannot be imported.
+                mod = import_module(mod_path)
+                candidates = [
+                    repr(name)
+                    for name, candidate in inspect.getmembers(mod, inspect.isclass)
+                    if issubclass(candidate, cls) and candidate is not cls
+                ]
+                msg = "Module '%s' does not contain a '%s' class." % (
+                    mod_path,
+                    cls_name,
+                )
+                if candidates:
+                    msg += " Choices are: %s." % ", ".join(candidates)
+                raise ImportError(msg)
+            else:
+                # Re-trigger the module import exception.
+                import_module(entry)
+
+        # Check for obvious errors. (This check prevents duck typing, but
+        # it could be removed if it became a problem in practice.)
+        if not issubclass(app_config_class, AppConfig):
+            raise ImproperlyConfigured("'%s' isn't a subclass of AppConfig." % entry)
+
+        # Obtain app name here rather than in AppClass.__init__ to keep
+        # all error checking for entries in INSTALLED_APPS in one place.
+        if app_name is None:
+            try:
+                app_name = app_config_class.name
+            except AttributeError:
+                raise ImproperlyConfigured("'%s' must supply a name attribute." % entry)
+
+        # Ensure app_name points to a valid module.
+        try:
+            app_module = import_module(app_name)
+        except ImportError:
+            raise ImproperlyConfigured(
+                "Cannot import '%s'. Check that '%s.%s.name' is correct."
+                % (
+                    app_name,
+                    app_config_class.__module__,
+                    app_config_class.__qualname__,
+                )
+            )
+
+        # Entry is a path to an app config class.
+        return app_config_class(app_name, app_module)
+
+    def get_model(self, model_name, require_ready=True):
+        """
+        Return the model with the given case-insensitive model_name.
+
+        Raise LookupError if no model exists with this name.
+        """
+        if require_ready:
+            self.apps.check_models_ready()
+        else:
+            self.apps.check_apps_ready()
+        try:
+            return self.models[model_name.lower()]
+        except KeyError:
+            raise LookupError(
+                "App '%s' doesn't have a '%s' model." % (self.label, model_name)
+            )
+
+    def get_models(self, include_auto_created=False, include_swapped=False):
+        """
+        Return an iterable of models.
+
+        By default, the following models aren't included:
+
+        - auto-created models for many-to-many relations without
+          an explicit intermediate table,
+        - models that have been swapped out.
+
+        Set the corresponding keyword argument to True to include such models.
+        Keyword arguments aren't documented; they're a private API.
+        """
+        self.apps.check_models_ready()
+        for model in self.models.values():
+            if model._meta.auto_created and not include_auto_created:
+                continue
+            if model._meta.swapped and not include_swapped:
+                continue
+            yield model
+
+    def import_models(self):
+        # Dictionary of models for this app, primarily maintained in the
+        # 'all_models' attribute of the Apps this AppConfig is attached to.
+        self.models = self.apps.all_models[self.label]
+
+        if module_has_submodule(self.module, MODELS_MODULE_NAME):
+            models_module_name = "%s.%s" % (self.name, MODELS_MODULE_NAME)
+            self.models_module = import_module(models_module_name)
+
+    def ready(self):
+        """
+        Override this method in subclasses to run code when Django starts.
+        """

+ 437 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/apps/registry.py

@@ -0,0 +1,437 @@
+import functools
+import sys
+import threading
+import warnings
+from collections import Counter, defaultdict
+from functools import partial
+
+from django.core.exceptions import AppRegistryNotReady, ImproperlyConfigured
+
+from .config import AppConfig
+
+
+class Apps:
+    """
+    A registry that stores the configuration of installed applications.
+
+    It also keeps track of models, e.g. to provide reverse relations.
+    """
+
+    def __init__(self, installed_apps=()):
+        # installed_apps is set to None when creating the main registry
+        # because it cannot be populated at that point. Other registries must
+        # provide a list of installed apps and are populated immediately.
+        if installed_apps is None and hasattr(sys.modules[__name__], "apps"):
+            raise RuntimeError("You must supply an installed_apps argument.")
+
+        # Mapping of app labels => model names => model classes. Every time a
+        # model is imported, ModelBase.__new__ calls apps.register_model which
+        # creates an entry in all_models. All imported models are registered,
+        # regardless of whether they're defined in an installed application
+        # and whether the registry has been populated. Since it isn't possible
+        # to reimport a module safely (it could reexecute initialization code)
+        # all_models is never overridden or reset.
+        self.all_models = defaultdict(dict)
+
+        # Mapping of labels to AppConfig instances for installed apps.
+        self.app_configs = {}
+
+        # Stack of app_configs. Used to store the current state in
+        # set_available_apps and set_installed_apps.
+        self.stored_app_configs = []
+
+        # Whether the registry is populated.
+        self.apps_ready = self.models_ready = self.ready = False
+        # For the autoreloader.
+        self.ready_event = threading.Event()
+
+        # Lock for thread-safe population.
+        self._lock = threading.RLock()
+        self.loading = False
+
+        # Maps ("app_label", "modelname") tuples to lists of functions to be
+        # called when the corresponding model is ready. Used by this class's
+        # `lazy_model_operation()` and `do_pending_operations()` methods.
+        self._pending_operations = defaultdict(list)
+
+        # Populate apps and models, unless it's the main registry.
+        if installed_apps is not None:
+            self.populate(installed_apps)
+
+    def populate(self, installed_apps=None):
+        """
+        Load application configurations and models.
+
+        Import each application module and then each model module.
+
+        It is thread-safe and idempotent, but not reentrant.
+        """
+        if self.ready:
+            return
+
+        # populate() might be called by two threads in parallel on servers
+        # that create threads before initializing the WSGI callable.
+        with self._lock:
+            if self.ready:
+                return
+
+            # An RLock prevents other threads from entering this section. The
+            # compare and set operation below is atomic.
+            if self.loading:
+                # Prevent reentrant calls to avoid running AppConfig.ready()
+                # methods twice.
+                raise RuntimeError("populate() isn't reentrant")
+            self.loading = True
+
+            # Phase 1: initialize app configs and import app modules.
+            for entry in installed_apps:
+                if isinstance(entry, AppConfig):
+                    app_config = entry
+                else:
+                    app_config = AppConfig.create(entry)
+                if app_config.label in self.app_configs:
+                    raise ImproperlyConfigured(
+                        "Application labels aren't unique, "
+                        "duplicates: %s" % app_config.label
+                    )
+
+                self.app_configs[app_config.label] = app_config
+                app_config.apps = self
+
+            # Check for duplicate app names.
+            counts = Counter(
+                app_config.name for app_config in self.app_configs.values()
+            )
+            duplicates = [name for name, count in counts.most_common() if count > 1]
+            if duplicates:
+                raise ImproperlyConfigured(
+                    "Application names aren't unique, "
+                    "duplicates: %s" % ", ".join(duplicates)
+                )
+
+            self.apps_ready = True
+
+            # Phase 2: import models modules.
+            for app_config in self.app_configs.values():
+                app_config.import_models()
+
+            self.clear_cache()
+
+            self.models_ready = True
+
+            # Phase 3: run ready() methods of app configs.
+            for app_config in self.get_app_configs():
+                app_config.ready()
+
+            self.ready = True
+            self.ready_event.set()
+
+    def check_apps_ready(self):
+        """Raise an exception if all apps haven't been imported yet."""
+        if not self.apps_ready:
+            from django.conf import settings
+
+            # If "not ready" is due to unconfigured settings, accessing
+            # INSTALLED_APPS raises a more helpful ImproperlyConfigured
+            # exception.
+            settings.INSTALLED_APPS
+            raise AppRegistryNotReady("Apps aren't loaded yet.")
+
+    def check_models_ready(self):
+        """Raise an exception if all models haven't been imported yet."""
+        if not self.models_ready:
+            raise AppRegistryNotReady("Models aren't loaded yet.")
+
+    def get_app_configs(self):
+        """Import applications and return an iterable of app configs."""
+        self.check_apps_ready()
+        return self.app_configs.values()
+
+    def get_app_config(self, app_label):
+        """
+        Import applications and returns an app config for the given label.
+
+        Raise LookupError if no application exists with this label.
+        """
+        self.check_apps_ready()
+        try:
+            return self.app_configs[app_label]
+        except KeyError:
+            message = "No installed app with label '%s'." % app_label
+            for app_config in self.get_app_configs():
+                if app_config.name == app_label:
+                    message += " Did you mean '%s'?" % app_config.label
+                    break
+            raise LookupError(message)
+
+    # This method is performance-critical at least for Django's test suite.
+    @functools.cache
+    def get_models(self, include_auto_created=False, include_swapped=False):
+        """
+        Return a list of all installed models.
+
+        By default, the following models aren't included:
+
+        - auto-created models for many-to-many relations without
+          an explicit intermediate table,
+        - models that have been swapped out.
+
+        Set the corresponding keyword argument to True to include such models.
+        """
+        self.check_models_ready()
+
+        result = []
+        for app_config in self.app_configs.values():
+            result.extend(app_config.get_models(include_auto_created, include_swapped))
+        return result
+
+    def get_model(self, app_label, model_name=None, require_ready=True):
+        """
+        Return the model matching the given app_label and model_name.
+
+        As a shortcut, app_label may be in the form <app_label>.<model_name>.
+
+        model_name is case-insensitive.
+
+        Raise LookupError if no application exists with this label, or no
+        model exists with this name in the application. Raise ValueError if
+        called with a single argument that doesn't contain exactly one dot.
+        """
+        if require_ready:
+            self.check_models_ready()
+        else:
+            self.check_apps_ready()
+
+        if model_name is None:
+            app_label, model_name = app_label.split(".")
+
+        app_config = self.get_app_config(app_label)
+
+        if not require_ready and app_config.models is None:
+            app_config.import_models()
+
+        return app_config.get_model(model_name, require_ready=require_ready)
+
+    def register_model(self, app_label, model):
+        # Since this method is called when models are imported, it cannot
+        # perform imports because of the risk of import loops. It mustn't
+        # call get_app_config().
+        model_name = model._meta.model_name
+        app_models = self.all_models[app_label]
+        if model_name in app_models:
+            if (
+                model.__name__ == app_models[model_name].__name__
+                and model.__module__ == app_models[model_name].__module__
+            ):
+                warnings.warn(
+                    "Model '%s.%s' was already registered. Reloading models is not "
+                    "advised as it can lead to inconsistencies, most notably with "
+                    "related models." % (app_label, model_name),
+                    RuntimeWarning,
+                    stacklevel=2,
+                )
+            else:
+                raise RuntimeError(
+                    "Conflicting '%s' models in application '%s': %s and %s."
+                    % (model_name, app_label, app_models[model_name], model)
+                )
+        app_models[model_name] = model
+        self.do_pending_operations(model)
+        self.clear_cache()
+
+    def is_installed(self, app_name):
+        """
+        Check whether an application with this name exists in the registry.
+
+        app_name is the full name of the app e.g. 'django.contrib.admin'.
+        """
+        self.check_apps_ready()
+        return any(ac.name == app_name for ac in self.app_configs.values())
+
+    def get_containing_app_config(self, object_name):
+        """
+        Look for an app config containing a given object.
+
+        object_name is the dotted Python path to the object.
+
+        Return the app config for the inner application in case of nesting.
+        Return None if the object isn't in any registered app config.
+        """
+        self.check_apps_ready()
+        candidates = []
+        for app_config in self.app_configs.values():
+            if object_name.startswith(app_config.name):
+                subpath = object_name.removeprefix(app_config.name)
+                if subpath == "" or subpath[0] == ".":
+                    candidates.append(app_config)
+        if candidates:
+            return sorted(candidates, key=lambda ac: -len(ac.name))[0]
+
+    def get_registered_model(self, app_label, model_name):
+        """
+        Similar to get_model(), but doesn't require that an app exists with
+        the given app_label.
+
+        It's safe to call this method at import time, even while the registry
+        is being populated.
+        """
+        model = self.all_models[app_label].get(model_name.lower())
+        if model is None:
+            raise LookupError("Model '%s.%s' not registered." % (app_label, model_name))
+        return model
+
+    @functools.cache
+    def get_swappable_settings_name(self, to_string):
+        """
+        For a given model string (e.g. "auth.User"), return the name of the
+        corresponding settings name if it refers to a swappable model. If the
+        referred model is not swappable, return None.
+
+        This method is decorated with @functools.cache because it's performance
+        critical when it comes to migrations. Since the swappable settings don't
+        change after Django has loaded the settings, there is no reason to get
+        the respective settings attribute over and over again.
+        """
+        to_string = to_string.lower()
+        for model in self.get_models(include_swapped=True):
+            swapped = model._meta.swapped
+            # Is this model swapped out for the model given by to_string?
+            if swapped and swapped.lower() == to_string:
+                return model._meta.swappable
+            # Is this model swappable and the one given by to_string?
+            if model._meta.swappable and model._meta.label_lower == to_string:
+                return model._meta.swappable
+        return None
+
+    def set_available_apps(self, available):
+        """
+        Restrict the set of installed apps used by get_app_config[s].
+
+        available must be an iterable of application names.
+
+        set_available_apps() must be balanced with unset_available_apps().
+
+        Primarily used for performance optimization in TransactionTestCase.
+
+        This method is safe in the sense that it doesn't trigger any imports.
+        """
+        available = set(available)
+        installed = {app_config.name for app_config in self.get_app_configs()}
+        if not available.issubset(installed):
+            raise ValueError(
+                "Available apps isn't a subset of installed apps, extra apps: %s"
+                % ", ".join(available - installed)
+            )
+
+        self.stored_app_configs.append(self.app_configs)
+        self.app_configs = {
+            label: app_config
+            for label, app_config in self.app_configs.items()
+            if app_config.name in available
+        }
+        self.clear_cache()
+
+    def unset_available_apps(self):
+        """Cancel a previous call to set_available_apps()."""
+        self.app_configs = self.stored_app_configs.pop()
+        self.clear_cache()
+
+    def set_installed_apps(self, installed):
+        """
+        Enable a different set of installed apps for get_app_config[s].
+
+        installed must be an iterable in the same format as INSTALLED_APPS.
+
+        set_installed_apps() must be balanced with unset_installed_apps(),
+        even if it exits with an exception.
+
+        Primarily used as a receiver of the setting_changed signal in tests.
+
+        This method may trigger new imports, which may add new models to the
+        registry of all imported models. They will stay in the registry even
+        after unset_installed_apps(). Since it isn't possible to replay
+        imports safely (e.g. that could lead to registering listeners twice),
+        models are registered when they're imported and never removed.
+        """
+        if not self.ready:
+            raise AppRegistryNotReady("App registry isn't ready yet.")
+        self.stored_app_configs.append(self.app_configs)
+        self.app_configs = {}
+        self.apps_ready = self.models_ready = self.loading = self.ready = False
+        self.clear_cache()
+        self.populate(installed)
+
+    def unset_installed_apps(self):
+        """Cancel a previous call to set_installed_apps()."""
+        self.app_configs = self.stored_app_configs.pop()
+        self.apps_ready = self.models_ready = self.ready = True
+        self.clear_cache()
+
+    def clear_cache(self):
+        """
+        Clear all internal caches, for methods that alter the app registry.
+
+        This is mostly used in tests.
+        """
+        self.get_swappable_settings_name.cache_clear()
+        # Call expire cache on each model. This will purge
+        # the relation tree and the fields cache.
+        self.get_models.cache_clear()
+        if self.ready:
+            # Circumvent self.get_models() to prevent that the cache is refilled.
+            # This particularly prevents that an empty value is cached while cloning.
+            for app_config in self.app_configs.values():
+                for model in app_config.get_models(include_auto_created=True):
+                    model._meta._expire_cache()
+
+    def lazy_model_operation(self, function, *model_keys):
+        """
+        Take a function and a number of ("app_label", "modelname") tuples, and
+        when all the corresponding models have been imported and registered,
+        call the function with the model classes as its arguments.
+
+        The function passed to this method must accept exactly n models as
+        arguments, where n=len(model_keys).
+        """
+        # Base case: no arguments, just execute the function.
+        if not model_keys:
+            function()
+        # Recursive case: take the head of model_keys, wait for the
+        # corresponding model class to be imported and registered, then apply
+        # that argument to the supplied function. Pass the resulting partial
+        # to lazy_model_operation() along with the remaining model args and
+        # repeat until all models are loaded and all arguments are applied.
+        else:
+            next_model, *more_models = model_keys
+
+            # This will be executed after the class corresponding to next_model
+            # has been imported and registered. The `func` attribute provides
+            # duck-type compatibility with partials.
+            def apply_next_model(model):
+                next_function = partial(apply_next_model.func, model)
+                self.lazy_model_operation(next_function, *more_models)
+
+            apply_next_model.func = function
+
+            # If the model has already been imported and registered, partially
+            # apply it to the function now. If not, add it to the list of
+            # pending operations for the model, where it will be executed with
+            # the model class as its sole argument once the model is ready.
+            try:
+                model_class = self.get_registered_model(*next_model)
+            except LookupError:
+                self._pending_operations[next_model].append(apply_next_model)
+            else:
+                apply_next_model(model_class)
+
+    def do_pending_operations(self, model):
+        """
+        Take a newly-prepared model and pass it to each function waiting for
+        it. This is called at the very end of Apps.register_model().
+        """
+        key = model._meta.app_label, model._meta.model_name
+        for function in self._pending_operations.pop(key, []):
+            function(model)
+
+
+apps = Apps(installed_apps=None)

+ 272 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/__init__.py

@@ -0,0 +1,272 @@
+"""
+Settings and configuration for Django.
+
+Read values from the module specified by the DJANGO_SETTINGS_MODULE environment
+variable, and then from django.conf.global_settings; see the global_settings.py
+for a list of all possible variables.
+"""
+
+import importlib
+import os
+import time
+import traceback
+import warnings
+from pathlib import Path
+
+import django
+from django.conf import global_settings
+from django.core.exceptions import ImproperlyConfigured
+from django.utils.deprecation import RemovedInDjango60Warning
+from django.utils.functional import LazyObject, empty
+
+ENVIRONMENT_VARIABLE = "DJANGO_SETTINGS_MODULE"
+DEFAULT_STORAGE_ALIAS = "default"
+STATICFILES_STORAGE_ALIAS = "staticfiles"
+
+# RemovedInDjango60Warning.
+FORMS_URLFIELD_ASSUME_HTTPS_DEPRECATED_MSG = (
+    "The FORMS_URLFIELD_ASSUME_HTTPS transitional setting is deprecated."
+)
+
+
+class SettingsReference(str):
+    """
+    String subclass which references a current settings value. It's treated as
+    the value in memory but serializes to a settings.NAME attribute reference.
+    """
+
+    def __new__(self, value, setting_name):
+        return str.__new__(self, value)
+
+    def __init__(self, value, setting_name):
+        self.setting_name = setting_name
+
+
+class LazySettings(LazyObject):
+    """
+    A lazy proxy for either global Django settings or a custom settings object.
+    The user can manually configure settings prior to using them. Otherwise,
+    Django uses the settings module pointed to by DJANGO_SETTINGS_MODULE.
+    """
+
+    def _setup(self, name=None):
+        """
+        Load the settings module pointed to by the environment variable. This
+        is used the first time settings are needed, if the user hasn't
+        configured settings manually.
+        """
+        settings_module = os.environ.get(ENVIRONMENT_VARIABLE)
+        if not settings_module:
+            desc = ("setting %s" % name) if name else "settings"
+            raise ImproperlyConfigured(
+                "Requested %s, but settings are not configured. "
+                "You must either define the environment variable %s "
+                "or call settings.configure() before accessing settings."
+                % (desc, ENVIRONMENT_VARIABLE)
+            )
+
+        self._wrapped = Settings(settings_module)
+
+    def __repr__(self):
+        # Hardcode the class name as otherwise it yields 'Settings'.
+        if self._wrapped is empty:
+            return "<LazySettings [Unevaluated]>"
+        return '<LazySettings "%(settings_module)s">' % {
+            "settings_module": self._wrapped.SETTINGS_MODULE,
+        }
+
+    def __getattr__(self, name):
+        """Return the value of a setting and cache it in self.__dict__."""
+        if (_wrapped := self._wrapped) is empty:
+            self._setup(name)
+            _wrapped = self._wrapped
+        val = getattr(_wrapped, name)
+
+        # Special case some settings which require further modification.
+        # This is done here for performance reasons so the modified value is cached.
+        if name in {"MEDIA_URL", "STATIC_URL"} and val is not None:
+            val = self._add_script_prefix(val)
+        elif name == "SECRET_KEY" and not val:
+            raise ImproperlyConfigured("The SECRET_KEY setting must not be empty.")
+
+        self.__dict__[name] = val
+        return val
+
+    def __setattr__(self, name, value):
+        """
+        Set the value of setting. Clear all cached values if _wrapped changes
+        (@override_settings does this) or clear single values when set.
+        """
+        if name == "_wrapped":
+            self.__dict__.clear()
+        else:
+            self.__dict__.pop(name, None)
+        super().__setattr__(name, value)
+
+    def __delattr__(self, name):
+        """Delete a setting and clear it from cache if needed."""
+        super().__delattr__(name)
+        self.__dict__.pop(name, None)
+
+    def configure(self, default_settings=global_settings, **options):
+        """
+        Called to manually configure the settings. The 'default_settings'
+        parameter sets where to retrieve any unspecified values from (its
+        argument must support attribute access (__getattr__)).
+        """
+        if self._wrapped is not empty:
+            raise RuntimeError("Settings already configured.")
+        holder = UserSettingsHolder(default_settings)
+        for name, value in options.items():
+            if not name.isupper():
+                raise TypeError("Setting %r must be uppercase." % name)
+            setattr(holder, name, value)
+        self._wrapped = holder
+
+    @staticmethod
+    def _add_script_prefix(value):
+        """
+        Add SCRIPT_NAME prefix to relative paths.
+
+        Useful when the app is being served at a subpath and manually prefixing
+        subpath to STATIC_URL and MEDIA_URL in settings is inconvenient.
+        """
+        # Don't apply prefix to absolute paths and URLs.
+        if value.startswith(("http://", "https://", "/")):
+            return value
+        from django.urls import get_script_prefix
+
+        return "%s%s" % (get_script_prefix(), value)
+
+    @property
+    def configured(self):
+        """Return True if the settings have already been configured."""
+        return self._wrapped is not empty
+
+    def _show_deprecation_warning(self, message, category):
+        stack = traceback.extract_stack()
+        # Show a warning if the setting is used outside of Django.
+        # Stack index: -1 this line, -2 the property, -3 the
+        # LazyObject __getattribute__(), -4 the caller.
+        filename, _, _, _ = stack[-4]
+        if not filename.startswith(os.path.dirname(django.__file__)):
+            warnings.warn(message, category, stacklevel=2)
+
+
+class Settings:
+    def __init__(self, settings_module):
+        # update this dict from global settings (but only for ALL_CAPS settings)
+        for setting in dir(global_settings):
+            if setting.isupper():
+                setattr(self, setting, getattr(global_settings, setting))
+
+        # store the settings module in case someone later cares
+        self.SETTINGS_MODULE = settings_module
+
+        mod = importlib.import_module(self.SETTINGS_MODULE)
+
+        tuple_settings = (
+            "ALLOWED_HOSTS",
+            "INSTALLED_APPS",
+            "TEMPLATE_DIRS",
+            "LOCALE_PATHS",
+            "SECRET_KEY_FALLBACKS",
+        )
+        self._explicit_settings = set()
+        for setting in dir(mod):
+            if setting.isupper():
+                setting_value = getattr(mod, setting)
+
+                if setting in tuple_settings and not isinstance(
+                    setting_value, (list, tuple)
+                ):
+                    raise ImproperlyConfigured(
+                        "The %s setting must be a list or a tuple." % setting
+                    )
+                setattr(self, setting, setting_value)
+                self._explicit_settings.add(setting)
+
+        if self.is_overridden("FORMS_URLFIELD_ASSUME_HTTPS"):
+            warnings.warn(
+                FORMS_URLFIELD_ASSUME_HTTPS_DEPRECATED_MSG,
+                RemovedInDjango60Warning,
+            )
+
+        if hasattr(time, "tzset") and self.TIME_ZONE:
+            # When we can, attempt to validate the timezone. If we can't find
+            # this file, no check happens and it's harmless.
+            zoneinfo_root = Path("/usr/share/zoneinfo")
+            zone_info_file = zoneinfo_root.joinpath(*self.TIME_ZONE.split("/"))
+            if zoneinfo_root.exists() and not zone_info_file.exists():
+                raise ValueError("Incorrect timezone setting: %s" % self.TIME_ZONE)
+            # Move the time zone info into os.environ. See ticket #2315 for why
+            # we don't do this unconditionally (breaks Windows).
+            os.environ["TZ"] = self.TIME_ZONE
+            time.tzset()
+
+    def is_overridden(self, setting):
+        return setting in self._explicit_settings
+
+    def __repr__(self):
+        return '<%(cls)s "%(settings_module)s">' % {
+            "cls": self.__class__.__name__,
+            "settings_module": self.SETTINGS_MODULE,
+        }
+
+
+class UserSettingsHolder:
+    """Holder for user configured settings."""
+
+    # SETTINGS_MODULE doesn't make much sense in the manually configured
+    # (standalone) case.
+    SETTINGS_MODULE = None
+
+    def __init__(self, default_settings):
+        """
+        Requests for configuration variables not in this class are satisfied
+        from the module specified in default_settings (if possible).
+        """
+        self.__dict__["_deleted"] = set()
+        self.default_settings = default_settings
+
+    def __getattr__(self, name):
+        if not name.isupper() or name in self._deleted:
+            raise AttributeError
+        return getattr(self.default_settings, name)
+
+    def __setattr__(self, name, value):
+        self._deleted.discard(name)
+        if name == "FORMS_URLFIELD_ASSUME_HTTPS":
+            warnings.warn(
+                FORMS_URLFIELD_ASSUME_HTTPS_DEPRECATED_MSG,
+                RemovedInDjango60Warning,
+            )
+        super().__setattr__(name, value)
+
+    def __delattr__(self, name):
+        self._deleted.add(name)
+        if hasattr(self, name):
+            super().__delattr__(name)
+
+    def __dir__(self):
+        return sorted(
+            s
+            for s in [*self.__dict__, *dir(self.default_settings)]
+            if s not in self._deleted
+        )
+
+    def is_overridden(self, setting):
+        deleted = setting in self._deleted
+        set_locally = setting in self.__dict__
+        set_on_default = getattr(
+            self.default_settings, "is_overridden", lambda s: False
+        )(setting)
+        return deleted or set_locally or set_on_default
+
+    def __repr__(self):
+        return "<%(cls)s>" % {
+            "cls": self.__class__.__name__,
+        }
+
+
+settings = LazySettings()

BIN
courses/django_kind/env/lib/python3.12/site-packages/django/conf/__pycache__/__init__.cpython-312.pyc


BIN
courses/django_kind/env/lib/python3.12/site-packages/django/conf/__pycache__/global_settings.cpython-312.pyc


+ 0 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/app_template/__init__.py-tpl


+ 3 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/app_template/admin.py-tpl

@@ -0,0 +1,3 @@
+from django.contrib import admin
+
+# Register your models here.

+ 6 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/app_template/apps.py-tpl

@@ -0,0 +1,6 @@
+from django.apps import AppConfig
+
+
+class {{ camel_case_app_name }}Config(AppConfig):
+    default_auto_field = 'django.db.models.BigAutoField'
+    name = '{{ app_name }}'

+ 0 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/app_template/migrations/__init__.py-tpl


+ 3 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/app_template/models.py-tpl

@@ -0,0 +1,3 @@
+from django.db import models
+
+# Create your models here.

+ 3 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/app_template/tests.py-tpl

@@ -0,0 +1,3 @@
+from django.test import TestCase
+
+# Create your tests here.

+ 3 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/app_template/views.py-tpl

@@ -0,0 +1,3 @@
+from django.shortcuts import render
+
+# Create your views here.

+ 667 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/global_settings.py

@@ -0,0 +1,667 @@
+"""
+Default Django settings. Override these with settings in the module pointed to
+by the DJANGO_SETTINGS_MODULE environment variable.
+"""
+
+
+# This is defined here as a do-nothing function because we can't import
+# django.utils.translation -- that module depends on the settings.
+def gettext_noop(s):
+    return s
+
+
+####################
+# CORE             #
+####################
+
+DEBUG = False
+
+# Whether the framework should propagate raw exceptions rather than catching
+# them. This is useful under some testing situations and should never be used
+# on a live site.
+DEBUG_PROPAGATE_EXCEPTIONS = False
+
+# People who get code error notifications. In the format
+# [('Full Name', 'email@example.com'), ('Full Name', 'anotheremail@example.com')]
+ADMINS = []
+
+# List of IP addresses, as strings, that:
+#   * See debug comments, when DEBUG is true
+#   * Receive x-headers
+INTERNAL_IPS = []
+
+# Hosts/domain names that are valid for this site.
+# "*" matches anything, ".example.com" matches example.com and all subdomains
+ALLOWED_HOSTS = []
+
+# Local time zone for this installation. All choices can be found here:
+# https://en.wikipedia.org/wiki/List_of_tz_zones_by_name (although not all
+# systems may support all possibilities). When USE_TZ is True, this is
+# interpreted as the default user time zone.
+TIME_ZONE = "America/Chicago"
+
+# If you set this to True, Django will use timezone-aware datetimes.
+USE_TZ = True
+
+# Language code for this installation. All choices can be found here:
+# http://www.i18nguy.com/unicode/language-identifiers.html
+LANGUAGE_CODE = "en-us"
+
+# Languages we provide translations for, out of the box.
+LANGUAGES = [
+    ("af", gettext_noop("Afrikaans")),
+    ("ar", gettext_noop("Arabic")),
+    ("ar-dz", gettext_noop("Algerian Arabic")),
+    ("ast", gettext_noop("Asturian")),
+    ("az", gettext_noop("Azerbaijani")),
+    ("bg", gettext_noop("Bulgarian")),
+    ("be", gettext_noop("Belarusian")),
+    ("bn", gettext_noop("Bengali")),
+    ("br", gettext_noop("Breton")),
+    ("bs", gettext_noop("Bosnian")),
+    ("ca", gettext_noop("Catalan")),
+    ("ckb", gettext_noop("Central Kurdish (Sorani)")),
+    ("cs", gettext_noop("Czech")),
+    ("cy", gettext_noop("Welsh")),
+    ("da", gettext_noop("Danish")),
+    ("de", gettext_noop("German")),
+    ("dsb", gettext_noop("Lower Sorbian")),
+    ("el", gettext_noop("Greek")),
+    ("en", gettext_noop("English")),
+    ("en-au", gettext_noop("Australian English")),
+    ("en-gb", gettext_noop("British English")),
+    ("eo", gettext_noop("Esperanto")),
+    ("es", gettext_noop("Spanish")),
+    ("es-ar", gettext_noop("Argentinian Spanish")),
+    ("es-co", gettext_noop("Colombian Spanish")),
+    ("es-mx", gettext_noop("Mexican Spanish")),
+    ("es-ni", gettext_noop("Nicaraguan Spanish")),
+    ("es-ve", gettext_noop("Venezuelan Spanish")),
+    ("et", gettext_noop("Estonian")),
+    ("eu", gettext_noop("Basque")),
+    ("fa", gettext_noop("Persian")),
+    ("fi", gettext_noop("Finnish")),
+    ("fr", gettext_noop("French")),
+    ("fy", gettext_noop("Frisian")),
+    ("ga", gettext_noop("Irish")),
+    ("gd", gettext_noop("Scottish Gaelic")),
+    ("gl", gettext_noop("Galician")),
+    ("he", gettext_noop("Hebrew")),
+    ("hi", gettext_noop("Hindi")),
+    ("hr", gettext_noop("Croatian")),
+    ("hsb", gettext_noop("Upper Sorbian")),
+    ("hu", gettext_noop("Hungarian")),
+    ("hy", gettext_noop("Armenian")),
+    ("ia", gettext_noop("Interlingua")),
+    ("id", gettext_noop("Indonesian")),
+    ("ig", gettext_noop("Igbo")),
+    ("io", gettext_noop("Ido")),
+    ("is", gettext_noop("Icelandic")),
+    ("it", gettext_noop("Italian")),
+    ("ja", gettext_noop("Japanese")),
+    ("ka", gettext_noop("Georgian")),
+    ("kab", gettext_noop("Kabyle")),
+    ("kk", gettext_noop("Kazakh")),
+    ("km", gettext_noop("Khmer")),
+    ("kn", gettext_noop("Kannada")),
+    ("ko", gettext_noop("Korean")),
+    ("ky", gettext_noop("Kyrgyz")),
+    ("lb", gettext_noop("Luxembourgish")),
+    ("lt", gettext_noop("Lithuanian")),
+    ("lv", gettext_noop("Latvian")),
+    ("mk", gettext_noop("Macedonian")),
+    ("ml", gettext_noop("Malayalam")),
+    ("mn", gettext_noop("Mongolian")),
+    ("mr", gettext_noop("Marathi")),
+    ("ms", gettext_noop("Malay")),
+    ("my", gettext_noop("Burmese")),
+    ("nb", gettext_noop("Norwegian Bokmål")),
+    ("ne", gettext_noop("Nepali")),
+    ("nl", gettext_noop("Dutch")),
+    ("nn", gettext_noop("Norwegian Nynorsk")),
+    ("os", gettext_noop("Ossetic")),
+    ("pa", gettext_noop("Punjabi")),
+    ("pl", gettext_noop("Polish")),
+    ("pt", gettext_noop("Portuguese")),
+    ("pt-br", gettext_noop("Brazilian Portuguese")),
+    ("ro", gettext_noop("Romanian")),
+    ("ru", gettext_noop("Russian")),
+    ("sk", gettext_noop("Slovak")),
+    ("sl", gettext_noop("Slovenian")),
+    ("sq", gettext_noop("Albanian")),
+    ("sr", gettext_noop("Serbian")),
+    ("sr-latn", gettext_noop("Serbian Latin")),
+    ("sv", gettext_noop("Swedish")),
+    ("sw", gettext_noop("Swahili")),
+    ("ta", gettext_noop("Tamil")),
+    ("te", gettext_noop("Telugu")),
+    ("tg", gettext_noop("Tajik")),
+    ("th", gettext_noop("Thai")),
+    ("tk", gettext_noop("Turkmen")),
+    ("tr", gettext_noop("Turkish")),
+    ("tt", gettext_noop("Tatar")),
+    ("udm", gettext_noop("Udmurt")),
+    ("ug", gettext_noop("Uyghur")),
+    ("uk", gettext_noop("Ukrainian")),
+    ("ur", gettext_noop("Urdu")),
+    ("uz", gettext_noop("Uzbek")),
+    ("vi", gettext_noop("Vietnamese")),
+    ("zh-hans", gettext_noop("Simplified Chinese")),
+    ("zh-hant", gettext_noop("Traditional Chinese")),
+]
+
+# Languages using BiDi (right-to-left) layout
+LANGUAGES_BIDI = ["he", "ar", "ar-dz", "ckb", "fa", "ug", "ur"]
+
+# If you set this to False, Django will make some optimizations so as not
+# to load the internationalization machinery.
+USE_I18N = True
+LOCALE_PATHS = []
+
+# Settings for language cookie
+LANGUAGE_COOKIE_NAME = "django_language"
+LANGUAGE_COOKIE_AGE = None
+LANGUAGE_COOKIE_DOMAIN = None
+LANGUAGE_COOKIE_PATH = "/"
+LANGUAGE_COOKIE_SECURE = False
+LANGUAGE_COOKIE_HTTPONLY = False
+LANGUAGE_COOKIE_SAMESITE = None
+
+# Not-necessarily-technical managers of the site. They get broken link
+# notifications and other various emails.
+MANAGERS = ADMINS
+
+# Default charset to use for all HttpResponse objects, if a MIME type isn't
+# manually specified. It's used to construct the Content-Type header.
+DEFAULT_CHARSET = "utf-8"
+
+# Email address that error messages come from.
+SERVER_EMAIL = "root@localhost"
+
+# Database connection info. If left empty, will default to the dummy backend.
+DATABASES = {}
+
+# Classes used to implement DB routing behavior.
+DATABASE_ROUTERS = []
+
+# The email backend to use. For possible shortcuts see django.core.mail.
+# The default is to use the SMTP backend.
+# Third-party backends can be specified by providing a Python path
+# to a module that defines an EmailBackend class.
+EMAIL_BACKEND = "django.core.mail.backends.smtp.EmailBackend"
+
+# Host for sending email.
+EMAIL_HOST = "localhost"
+
+# Port for sending email.
+EMAIL_PORT = 25
+
+# Whether to send SMTP 'Date' header in the local time zone or in UTC.
+EMAIL_USE_LOCALTIME = False
+
+# Optional SMTP authentication information for EMAIL_HOST.
+EMAIL_HOST_USER = ""
+EMAIL_HOST_PASSWORD = ""
+EMAIL_USE_TLS = False
+EMAIL_USE_SSL = False
+EMAIL_SSL_CERTFILE = None
+EMAIL_SSL_KEYFILE = None
+EMAIL_TIMEOUT = None
+
+# List of strings representing installed apps.
+INSTALLED_APPS = []
+
+TEMPLATES = []
+
+# Default form rendering class.
+FORM_RENDERER = "django.forms.renderers.DjangoTemplates"
+
+# RemovedInDjango60Warning: It's a transitional setting helpful in early
+# adoption of "https" as the new default value of forms.URLField.assume_scheme.
+# Set to True to assume "https" during the Django 5.x release cycle.
+FORMS_URLFIELD_ASSUME_HTTPS = False
+
+# Default email address to use for various automated correspondence from
+# the site managers.
+DEFAULT_FROM_EMAIL = "webmaster@localhost"
+
+# Subject-line prefix for email messages send with django.core.mail.mail_admins
+# or ...mail_managers.  Make sure to include the trailing space.
+EMAIL_SUBJECT_PREFIX = "[Django] "
+
+# Whether to append trailing slashes to URLs.
+APPEND_SLASH = True
+
+# Whether to prepend the "www." subdomain to URLs that don't have it.
+PREPEND_WWW = False
+
+# Override the server-derived value of SCRIPT_NAME
+FORCE_SCRIPT_NAME = None
+
+# List of compiled regular expression objects representing User-Agent strings
+# that are not allowed to visit any page, systemwide. Use this for bad
+# robots/crawlers. Here are a few examples:
+#     import re
+#     DISALLOWED_USER_AGENTS = [
+#         re.compile(r'^NaverBot.*'),
+#         re.compile(r'^EmailSiphon.*'),
+#         re.compile(r'^SiteSucker.*'),
+#         re.compile(r'^sohu-search'),
+#     ]
+DISALLOWED_USER_AGENTS = []
+
+ABSOLUTE_URL_OVERRIDES = {}
+
+# List of compiled regular expression objects representing URLs that need not
+# be reported by BrokenLinkEmailsMiddleware. Here are a few examples:
+#    import re
+#    IGNORABLE_404_URLS = [
+#        re.compile(r'^/apple-touch-icon.*\.png$'),
+#        re.compile(r'^/favicon.ico$'),
+#        re.compile(r'^/robots.txt$'),
+#        re.compile(r'^/phpmyadmin/'),
+#        re.compile(r'\.(cgi|php|pl)$'),
+#    ]
+IGNORABLE_404_URLS = []
+
+# A secret key for this particular Django installation. Used in secret-key
+# hashing algorithms. Set this in your settings, or Django will complain
+# loudly.
+SECRET_KEY = ""
+
+# List of secret keys used to verify the validity of signatures. This allows
+# secret key rotation.
+SECRET_KEY_FALLBACKS = []
+
+STORAGES = {
+    "default": {
+        "BACKEND": "django.core.files.storage.FileSystemStorage",
+    },
+    "staticfiles": {
+        "BACKEND": "django.contrib.staticfiles.storage.StaticFilesStorage",
+    },
+}
+
+# Absolute filesystem path to the directory that will hold user-uploaded files.
+# Example: "/var/www/example.com/media/"
+MEDIA_ROOT = ""
+
+# URL that handles the media served from MEDIA_ROOT.
+# Examples: "http://example.com/media/", "http://media.example.com/"
+MEDIA_URL = ""
+
+# Absolute path to the directory static files should be collected to.
+# Example: "/var/www/example.com/static/"
+STATIC_ROOT = None
+
+# URL that handles the static files served from STATIC_ROOT.
+# Example: "http://example.com/static/", "http://static.example.com/"
+STATIC_URL = None
+
+# List of upload handler classes to be applied in order.
+FILE_UPLOAD_HANDLERS = [
+    "django.core.files.uploadhandler.MemoryFileUploadHandler",
+    "django.core.files.uploadhandler.TemporaryFileUploadHandler",
+]
+
+# Maximum size, in bytes, of a request before it will be streamed to the
+# file system instead of into memory.
+FILE_UPLOAD_MAX_MEMORY_SIZE = 2621440  # i.e. 2.5 MB
+
+# Maximum size in bytes of request data (excluding file uploads) that will be
+# read before a SuspiciousOperation (RequestDataTooBig) is raised.
+DATA_UPLOAD_MAX_MEMORY_SIZE = 2621440  # i.e. 2.5 MB
+
+# Maximum number of GET/POST parameters that will be read before a
+# SuspiciousOperation (TooManyFieldsSent) is raised.
+DATA_UPLOAD_MAX_NUMBER_FIELDS = 1000
+
+# Maximum number of files encoded in a multipart upload that will be read
+# before a SuspiciousOperation (TooManyFilesSent) is raised.
+DATA_UPLOAD_MAX_NUMBER_FILES = 100
+
+# Directory in which upload streamed files will be temporarily saved. A value of
+# `None` will make Django use the operating system's default temporary directory
+# (i.e. "/tmp" on *nix systems).
+FILE_UPLOAD_TEMP_DIR = None
+
+# The numeric mode to set newly-uploaded files to. The value should be a mode
+# you'd pass directly to os.chmod; see
+# https://docs.python.org/library/os.html#files-and-directories.
+FILE_UPLOAD_PERMISSIONS = 0o644
+
+# The numeric mode to assign to newly-created directories, when uploading files.
+# The value should be a mode as you'd pass to os.chmod;
+# see https://docs.python.org/library/os.html#files-and-directories.
+FILE_UPLOAD_DIRECTORY_PERMISSIONS = None
+
+# Python module path where user will place custom format definition.
+# The directory where this setting is pointing should contain subdirectories
+# named as the locales, containing a formats.py file
+# (i.e. "myproject.locale" for myproject/locale/en/formats.py etc. use)
+FORMAT_MODULE_PATH = None
+
+# Default formatting for date objects. See all available format strings here:
+# https://docs.djangoproject.com/en/dev/ref/templates/builtins/#date
+DATE_FORMAT = "N j, Y"
+
+# Default formatting for datetime objects. See all available format strings here:
+# https://docs.djangoproject.com/en/dev/ref/templates/builtins/#date
+DATETIME_FORMAT = "N j, Y, P"
+
+# Default formatting for time objects. See all available format strings here:
+# https://docs.djangoproject.com/en/dev/ref/templates/builtins/#date
+TIME_FORMAT = "P"
+
+# Default formatting for date objects when only the year and month are relevant.
+# See all available format strings here:
+# https://docs.djangoproject.com/en/dev/ref/templates/builtins/#date
+YEAR_MONTH_FORMAT = "F Y"
+
+# Default formatting for date objects when only the month and day are relevant.
+# See all available format strings here:
+# https://docs.djangoproject.com/en/dev/ref/templates/builtins/#date
+MONTH_DAY_FORMAT = "F j"
+
+# Default short formatting for date objects. See all available format strings here:
+# https://docs.djangoproject.com/en/dev/ref/templates/builtins/#date
+SHORT_DATE_FORMAT = "m/d/Y"
+
+# Default short formatting for datetime objects.
+# See all available format strings here:
+# https://docs.djangoproject.com/en/dev/ref/templates/builtins/#date
+SHORT_DATETIME_FORMAT = "m/d/Y P"
+
+# Default formats to be used when parsing dates from input boxes, in order
+# See all available format string here:
+# https://docs.python.org/library/datetime.html#strftime-behavior
+# * Note that these format strings are different from the ones to display dates
+DATE_INPUT_FORMATS = [
+    "%Y-%m-%d",  # '2006-10-25'
+    "%m/%d/%Y",  # '10/25/2006'
+    "%m/%d/%y",  # '10/25/06'
+    "%b %d %Y",  # 'Oct 25 2006'
+    "%b %d, %Y",  # 'Oct 25, 2006'
+    "%d %b %Y",  # '25 Oct 2006'
+    "%d %b, %Y",  # '25 Oct, 2006'
+    "%B %d %Y",  # 'October 25 2006'
+    "%B %d, %Y",  # 'October 25, 2006'
+    "%d %B %Y",  # '25 October 2006'
+    "%d %B, %Y",  # '25 October, 2006'
+]
+
+# Default formats to be used when parsing times from input boxes, in order
+# See all available format string here:
+# https://docs.python.org/library/datetime.html#strftime-behavior
+# * Note that these format strings are different from the ones to display dates
+TIME_INPUT_FORMATS = [
+    "%H:%M:%S",  # '14:30:59'
+    "%H:%M:%S.%f",  # '14:30:59.000200'
+    "%H:%M",  # '14:30'
+]
+
+# Default formats to be used when parsing dates and times from input boxes,
+# in order
+# See all available format string here:
+# https://docs.python.org/library/datetime.html#strftime-behavior
+# * Note that these format strings are different from the ones to display dates
+DATETIME_INPUT_FORMATS = [
+    "%Y-%m-%d %H:%M:%S",  # '2006-10-25 14:30:59'
+    "%Y-%m-%d %H:%M:%S.%f",  # '2006-10-25 14:30:59.000200'
+    "%Y-%m-%d %H:%M",  # '2006-10-25 14:30'
+    "%m/%d/%Y %H:%M:%S",  # '10/25/2006 14:30:59'
+    "%m/%d/%Y %H:%M:%S.%f",  # '10/25/2006 14:30:59.000200'
+    "%m/%d/%Y %H:%M",  # '10/25/2006 14:30'
+    "%m/%d/%y %H:%M:%S",  # '10/25/06 14:30:59'
+    "%m/%d/%y %H:%M:%S.%f",  # '10/25/06 14:30:59.000200'
+    "%m/%d/%y %H:%M",  # '10/25/06 14:30'
+]
+
+# First day of week, to be used on calendars
+# 0 means Sunday, 1 means Monday...
+FIRST_DAY_OF_WEEK = 0
+
+# Decimal separator symbol
+DECIMAL_SEPARATOR = "."
+
+# Boolean that sets whether to add thousand separator when formatting numbers
+USE_THOUSAND_SEPARATOR = False
+
+# Number of digits that will be together, when splitting them by
+# THOUSAND_SEPARATOR. 0 means no grouping, 3 means splitting by thousands...
+NUMBER_GROUPING = 0
+
+# Thousand separator symbol
+THOUSAND_SEPARATOR = ","
+
+# The tablespaces to use for each model when not specified otherwise.
+DEFAULT_TABLESPACE = ""
+DEFAULT_INDEX_TABLESPACE = ""
+
+# Default primary key field type.
+DEFAULT_AUTO_FIELD = "django.db.models.AutoField"
+
+# Default X-Frame-Options header value
+X_FRAME_OPTIONS = "DENY"
+
+USE_X_FORWARDED_HOST = False
+USE_X_FORWARDED_PORT = False
+
+# The Python dotted path to the WSGI application that Django's internal server
+# (runserver) will use. If `None`, the return value of
+# 'django.core.wsgi.get_wsgi_application' is used, thus preserving the same
+# behavior as previous versions of Django. Otherwise this should point to an
+# actual WSGI application object.
+WSGI_APPLICATION = None
+
+# If your Django app is behind a proxy that sets a header to specify secure
+# connections, AND that proxy ensures that user-submitted headers with the
+# same name are ignored (so that people can't spoof it), set this value to
+# a tuple of (header_name, header_value). For any requests that come in with
+# that header/value, request.is_secure() will return True.
+# WARNING! Only set this if you fully understand what you're doing. Otherwise,
+# you may be opening yourself up to a security risk.
+SECURE_PROXY_SSL_HEADER = None
+
+##############
+# MIDDLEWARE #
+##############
+
+# List of middleware to use. Order is important; in the request phase, these
+# middleware will be applied in the order given, and in the response
+# phase the middleware will be applied in reverse order.
+MIDDLEWARE = []
+
+############
+# SESSIONS #
+############
+
+# Cache to store session data if using the cache session backend.
+SESSION_CACHE_ALIAS = "default"
+# Cookie name. This can be whatever you want.
+SESSION_COOKIE_NAME = "sessionid"
+# Age of cookie, in seconds (default: 2 weeks).
+SESSION_COOKIE_AGE = 60 * 60 * 24 * 7 * 2
+# A string like "example.com", or None for standard domain cookie.
+SESSION_COOKIE_DOMAIN = None
+# Whether the session cookie should be secure (https:// only).
+SESSION_COOKIE_SECURE = False
+# The path of the session cookie.
+SESSION_COOKIE_PATH = "/"
+# Whether to use the HttpOnly flag.
+SESSION_COOKIE_HTTPONLY = True
+# Whether to set the flag restricting cookie leaks on cross-site requests.
+# This can be 'Lax', 'Strict', 'None', or False to disable the flag.
+SESSION_COOKIE_SAMESITE = "Lax"
+# Whether to save the session data on every request.
+SESSION_SAVE_EVERY_REQUEST = False
+# Whether a user's session cookie expires when the web browser is closed.
+SESSION_EXPIRE_AT_BROWSER_CLOSE = False
+# The module to store session data
+SESSION_ENGINE = "django.contrib.sessions.backends.db"
+# Directory to store session files if using the file session module. If None,
+# the backend will use a sensible default.
+SESSION_FILE_PATH = None
+# class to serialize session data
+SESSION_SERIALIZER = "django.contrib.sessions.serializers.JSONSerializer"
+
+#########
+# CACHE #
+#########
+
+# The cache backends to use.
+CACHES = {
+    "default": {
+        "BACKEND": "django.core.cache.backends.locmem.LocMemCache",
+    }
+}
+CACHE_MIDDLEWARE_KEY_PREFIX = ""
+CACHE_MIDDLEWARE_SECONDS = 600
+CACHE_MIDDLEWARE_ALIAS = "default"
+
+##################
+# AUTHENTICATION #
+##################
+
+AUTH_USER_MODEL = "auth.User"
+
+AUTHENTICATION_BACKENDS = ["django.contrib.auth.backends.ModelBackend"]
+
+LOGIN_URL = "/accounts/login/"
+
+LOGIN_REDIRECT_URL = "/accounts/profile/"
+
+LOGOUT_REDIRECT_URL = None
+
+# The number of seconds a password reset link is valid for (default: 3 days).
+PASSWORD_RESET_TIMEOUT = 60 * 60 * 24 * 3
+
+# the first hasher in this list is the preferred algorithm.  any
+# password using different algorithms will be converted automatically
+# upon login
+PASSWORD_HASHERS = [
+    "django.contrib.auth.hashers.PBKDF2PasswordHasher",
+    "django.contrib.auth.hashers.PBKDF2SHA1PasswordHasher",
+    "django.contrib.auth.hashers.Argon2PasswordHasher",
+    "django.contrib.auth.hashers.BCryptSHA256PasswordHasher",
+    "django.contrib.auth.hashers.ScryptPasswordHasher",
+]
+
+AUTH_PASSWORD_VALIDATORS = []
+
+###########
+# SIGNING #
+###########
+
+SIGNING_BACKEND = "django.core.signing.TimestampSigner"
+
+########
+# CSRF #
+########
+
+# Dotted path to callable to be used as view when a request is
+# rejected by the CSRF middleware.
+CSRF_FAILURE_VIEW = "django.views.csrf.csrf_failure"
+
+# Settings for CSRF cookie.
+CSRF_COOKIE_NAME = "csrftoken"
+CSRF_COOKIE_AGE = 60 * 60 * 24 * 7 * 52
+CSRF_COOKIE_DOMAIN = None
+CSRF_COOKIE_PATH = "/"
+CSRF_COOKIE_SECURE = False
+CSRF_COOKIE_HTTPONLY = False
+CSRF_COOKIE_SAMESITE = "Lax"
+CSRF_HEADER_NAME = "HTTP_X_CSRFTOKEN"
+CSRF_TRUSTED_ORIGINS = []
+CSRF_USE_SESSIONS = False
+
+############
+# MESSAGES #
+############
+
+# Class to use as messages backend
+MESSAGE_STORAGE = "django.contrib.messages.storage.fallback.FallbackStorage"
+
+# Default values of MESSAGE_LEVEL and MESSAGE_TAGS are defined within
+# django.contrib.messages to avoid imports in this settings file.
+
+###########
+# LOGGING #
+###########
+
+# The callable to use to configure logging
+LOGGING_CONFIG = "logging.config.dictConfig"
+
+# Custom logging configuration.
+LOGGING = {}
+
+# Default exception reporter class used in case none has been
+# specifically assigned to the HttpRequest instance.
+DEFAULT_EXCEPTION_REPORTER = "django.views.debug.ExceptionReporter"
+
+# Default exception reporter filter class used in case none has been
+# specifically assigned to the HttpRequest instance.
+DEFAULT_EXCEPTION_REPORTER_FILTER = "django.views.debug.SafeExceptionReporterFilter"
+
+###########
+# TESTING #
+###########
+
+# The name of the class to use to run the test suite
+TEST_RUNNER = "django.test.runner.DiscoverRunner"
+
+# Apps that don't need to be serialized at test database creation time
+# (only apps with migrations are to start with)
+TEST_NON_SERIALIZED_APPS = []
+
+############
+# FIXTURES #
+############
+
+# The list of directories to search for fixtures
+FIXTURE_DIRS = []
+
+###############
+# STATICFILES #
+###############
+
+# A list of locations of additional static files
+STATICFILES_DIRS = []
+
+# List of finder classes that know how to find static files in
+# various locations.
+STATICFILES_FINDERS = [
+    "django.contrib.staticfiles.finders.FileSystemFinder",
+    "django.contrib.staticfiles.finders.AppDirectoriesFinder",
+    # 'django.contrib.staticfiles.finders.DefaultStorageFinder',
+]
+
+##############
+# MIGRATIONS #
+##############
+
+# Migration module overrides for apps, by app label.
+MIGRATION_MODULES = {}
+
+#################
+# SYSTEM CHECKS #
+#################
+
+# List of all issues generated by system checks that should be silenced. Light
+# issues like warnings, infos or debugs will not generate a message. Silencing
+# serious issues like errors and criticals does not result in hiding the
+# message, but Django will not stop you from e.g. running server.
+SILENCED_SYSTEM_CHECKS = []
+
+#######################
+# SECURITY MIDDLEWARE #
+#######################
+SECURE_CONTENT_TYPE_NOSNIFF = True
+SECURE_CROSS_ORIGIN_OPENER_POLICY = "same-origin"
+SECURE_HSTS_INCLUDE_SUBDOMAINS = False
+SECURE_HSTS_PRELOAD = False
+SECURE_HSTS_SECONDS = 0
+SECURE_REDIRECT_EXEMPT = []
+SECURE_REFERRER_POLICY = "same-origin"
+SECURE_SSL_HOST = None
+SECURE_SSL_REDIRECT = False

+ 629 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/__init__.py

@@ -0,0 +1,629 @@
+"""
+LANG_INFO is a dictionary structure to provide meta information about languages.
+
+About name_local: capitalize it as if your language name was appearing
+inside a sentence in your language.
+The 'fallback' key can be used to specify a special fallback logic which doesn't
+follow the traditional 'fr-ca' -> 'fr' fallback logic.
+"""
+
+LANG_INFO = {
+    "af": {
+        "bidi": False,
+        "code": "af",
+        "name": "Afrikaans",
+        "name_local": "Afrikaans",
+    },
+    "ar": {
+        "bidi": True,
+        "code": "ar",
+        "name": "Arabic",
+        "name_local": "العربيّة",
+    },
+    "ar-dz": {
+        "bidi": True,
+        "code": "ar-dz",
+        "name": "Algerian Arabic",
+        "name_local": "العربية الجزائرية",
+    },
+    "ast": {
+        "bidi": False,
+        "code": "ast",
+        "name": "Asturian",
+        "name_local": "asturianu",
+    },
+    "az": {
+        "bidi": True,
+        "code": "az",
+        "name": "Azerbaijani",
+        "name_local": "Azərbaycanca",
+    },
+    "be": {
+        "bidi": False,
+        "code": "be",
+        "name": "Belarusian",
+        "name_local": "беларуская",
+    },
+    "bg": {
+        "bidi": False,
+        "code": "bg",
+        "name": "Bulgarian",
+        "name_local": "български",
+    },
+    "bn": {
+        "bidi": False,
+        "code": "bn",
+        "name": "Bengali",
+        "name_local": "বাংলা",
+    },
+    "br": {
+        "bidi": False,
+        "code": "br",
+        "name": "Breton",
+        "name_local": "brezhoneg",
+    },
+    "bs": {
+        "bidi": False,
+        "code": "bs",
+        "name": "Bosnian",
+        "name_local": "bosanski",
+    },
+    "ca": {
+        "bidi": False,
+        "code": "ca",
+        "name": "Catalan",
+        "name_local": "català",
+    },
+    "ckb": {
+        "bidi": True,
+        "code": "ckb",
+        "name": "Central Kurdish (Sorani)",
+        "name_local": "کوردی",
+    },
+    "cs": {
+        "bidi": False,
+        "code": "cs",
+        "name": "Czech",
+        "name_local": "česky",
+    },
+    "cy": {
+        "bidi": False,
+        "code": "cy",
+        "name": "Welsh",
+        "name_local": "Cymraeg",
+    },
+    "da": {
+        "bidi": False,
+        "code": "da",
+        "name": "Danish",
+        "name_local": "dansk",
+    },
+    "de": {
+        "bidi": False,
+        "code": "de",
+        "name": "German",
+        "name_local": "Deutsch",
+    },
+    "dsb": {
+        "bidi": False,
+        "code": "dsb",
+        "name": "Lower Sorbian",
+        "name_local": "dolnoserbski",
+    },
+    "el": {
+        "bidi": False,
+        "code": "el",
+        "name": "Greek",
+        "name_local": "Ελληνικά",
+    },
+    "en": {
+        "bidi": False,
+        "code": "en",
+        "name": "English",
+        "name_local": "English",
+    },
+    "en-au": {
+        "bidi": False,
+        "code": "en-au",
+        "name": "Australian English",
+        "name_local": "Australian English",
+    },
+    "en-gb": {
+        "bidi": False,
+        "code": "en-gb",
+        "name": "British English",
+        "name_local": "British English",
+    },
+    "eo": {
+        "bidi": False,
+        "code": "eo",
+        "name": "Esperanto",
+        "name_local": "Esperanto",
+    },
+    "es": {
+        "bidi": False,
+        "code": "es",
+        "name": "Spanish",
+        "name_local": "español",
+    },
+    "es-ar": {
+        "bidi": False,
+        "code": "es-ar",
+        "name": "Argentinian Spanish",
+        "name_local": "español de Argentina",
+    },
+    "es-co": {
+        "bidi": False,
+        "code": "es-co",
+        "name": "Colombian Spanish",
+        "name_local": "español de Colombia",
+    },
+    "es-mx": {
+        "bidi": False,
+        "code": "es-mx",
+        "name": "Mexican Spanish",
+        "name_local": "español de Mexico",
+    },
+    "es-ni": {
+        "bidi": False,
+        "code": "es-ni",
+        "name": "Nicaraguan Spanish",
+        "name_local": "español de Nicaragua",
+    },
+    "es-ve": {
+        "bidi": False,
+        "code": "es-ve",
+        "name": "Venezuelan Spanish",
+        "name_local": "español de Venezuela",
+    },
+    "et": {
+        "bidi": False,
+        "code": "et",
+        "name": "Estonian",
+        "name_local": "eesti",
+    },
+    "eu": {
+        "bidi": False,
+        "code": "eu",
+        "name": "Basque",
+        "name_local": "Basque",
+    },
+    "fa": {
+        "bidi": True,
+        "code": "fa",
+        "name": "Persian",
+        "name_local": "فارسی",
+    },
+    "fi": {
+        "bidi": False,
+        "code": "fi",
+        "name": "Finnish",
+        "name_local": "suomi",
+    },
+    "fr": {
+        "bidi": False,
+        "code": "fr",
+        "name": "French",
+        "name_local": "français",
+    },
+    "fy": {
+        "bidi": False,
+        "code": "fy",
+        "name": "Frisian",
+        "name_local": "frysk",
+    },
+    "ga": {
+        "bidi": False,
+        "code": "ga",
+        "name": "Irish",
+        "name_local": "Gaeilge",
+    },
+    "gd": {
+        "bidi": False,
+        "code": "gd",
+        "name": "Scottish Gaelic",
+        "name_local": "Gàidhlig",
+    },
+    "gl": {
+        "bidi": False,
+        "code": "gl",
+        "name": "Galician",
+        "name_local": "galego",
+    },
+    "he": {
+        "bidi": True,
+        "code": "he",
+        "name": "Hebrew",
+        "name_local": "עברית",
+    },
+    "hi": {
+        "bidi": False,
+        "code": "hi",
+        "name": "Hindi",
+        "name_local": "हिंदी",
+    },
+    "hr": {
+        "bidi": False,
+        "code": "hr",
+        "name": "Croatian",
+        "name_local": "Hrvatski",
+    },
+    "hsb": {
+        "bidi": False,
+        "code": "hsb",
+        "name": "Upper Sorbian",
+        "name_local": "hornjoserbsce",
+    },
+    "hu": {
+        "bidi": False,
+        "code": "hu",
+        "name": "Hungarian",
+        "name_local": "Magyar",
+    },
+    "hy": {
+        "bidi": False,
+        "code": "hy",
+        "name": "Armenian",
+        "name_local": "հայերեն",
+    },
+    "ia": {
+        "bidi": False,
+        "code": "ia",
+        "name": "Interlingua",
+        "name_local": "Interlingua",
+    },
+    "io": {
+        "bidi": False,
+        "code": "io",
+        "name": "Ido",
+        "name_local": "ido",
+    },
+    "id": {
+        "bidi": False,
+        "code": "id",
+        "name": "Indonesian",
+        "name_local": "Bahasa Indonesia",
+    },
+    "ig": {
+        "bidi": False,
+        "code": "ig",
+        "name": "Igbo",
+        "name_local": "Asụsụ Ìgbò",
+    },
+    "is": {
+        "bidi": False,
+        "code": "is",
+        "name": "Icelandic",
+        "name_local": "Íslenska",
+    },
+    "it": {
+        "bidi": False,
+        "code": "it",
+        "name": "Italian",
+        "name_local": "italiano",
+    },
+    "ja": {
+        "bidi": False,
+        "code": "ja",
+        "name": "Japanese",
+        "name_local": "日本語",
+    },
+    "ka": {
+        "bidi": False,
+        "code": "ka",
+        "name": "Georgian",
+        "name_local": "ქართული",
+    },
+    "kab": {
+        "bidi": False,
+        "code": "kab",
+        "name": "Kabyle",
+        "name_local": "taqbaylit",
+    },
+    "kk": {
+        "bidi": False,
+        "code": "kk",
+        "name": "Kazakh",
+        "name_local": "Қазақ",
+    },
+    "km": {
+        "bidi": False,
+        "code": "km",
+        "name": "Khmer",
+        "name_local": "Khmer",
+    },
+    "kn": {
+        "bidi": False,
+        "code": "kn",
+        "name": "Kannada",
+        "name_local": "Kannada",
+    },
+    "ko": {
+        "bidi": False,
+        "code": "ko",
+        "name": "Korean",
+        "name_local": "한국어",
+    },
+    "ky": {
+        "bidi": False,
+        "code": "ky",
+        "name": "Kyrgyz",
+        "name_local": "Кыргызча",
+    },
+    "lb": {
+        "bidi": False,
+        "code": "lb",
+        "name": "Luxembourgish",
+        "name_local": "Lëtzebuergesch",
+    },
+    "lt": {
+        "bidi": False,
+        "code": "lt",
+        "name": "Lithuanian",
+        "name_local": "Lietuviškai",
+    },
+    "lv": {
+        "bidi": False,
+        "code": "lv",
+        "name": "Latvian",
+        "name_local": "latviešu",
+    },
+    "mk": {
+        "bidi": False,
+        "code": "mk",
+        "name": "Macedonian",
+        "name_local": "Македонски",
+    },
+    "ml": {
+        "bidi": False,
+        "code": "ml",
+        "name": "Malayalam",
+        "name_local": "മലയാളം",
+    },
+    "mn": {
+        "bidi": False,
+        "code": "mn",
+        "name": "Mongolian",
+        "name_local": "Mongolian",
+    },
+    "mr": {
+        "bidi": False,
+        "code": "mr",
+        "name": "Marathi",
+        "name_local": "मराठी",
+    },
+    "ms": {
+        "bidi": False,
+        "code": "ms",
+        "name": "Malay",
+        "name_local": "Bahasa Melayu",
+    },
+    "my": {
+        "bidi": False,
+        "code": "my",
+        "name": "Burmese",
+        "name_local": "မြန်မာဘာသာ",
+    },
+    "nb": {
+        "bidi": False,
+        "code": "nb",
+        "name": "Norwegian Bokmal",
+        "name_local": "norsk (bokmål)",
+    },
+    "ne": {
+        "bidi": False,
+        "code": "ne",
+        "name": "Nepali",
+        "name_local": "नेपाली",
+    },
+    "nl": {
+        "bidi": False,
+        "code": "nl",
+        "name": "Dutch",
+        "name_local": "Nederlands",
+    },
+    "nn": {
+        "bidi": False,
+        "code": "nn",
+        "name": "Norwegian Nynorsk",
+        "name_local": "norsk (nynorsk)",
+    },
+    "no": {
+        "bidi": False,
+        "code": "no",
+        "name": "Norwegian",
+        "name_local": "norsk",
+    },
+    "os": {
+        "bidi": False,
+        "code": "os",
+        "name": "Ossetic",
+        "name_local": "Ирон",
+    },
+    "pa": {
+        "bidi": False,
+        "code": "pa",
+        "name": "Punjabi",
+        "name_local": "Punjabi",
+    },
+    "pl": {
+        "bidi": False,
+        "code": "pl",
+        "name": "Polish",
+        "name_local": "polski",
+    },
+    "pt": {
+        "bidi": False,
+        "code": "pt",
+        "name": "Portuguese",
+        "name_local": "Português",
+    },
+    "pt-br": {
+        "bidi": False,
+        "code": "pt-br",
+        "name": "Brazilian Portuguese",
+        "name_local": "Português Brasileiro",
+    },
+    "ro": {
+        "bidi": False,
+        "code": "ro",
+        "name": "Romanian",
+        "name_local": "Română",
+    },
+    "ru": {
+        "bidi": False,
+        "code": "ru",
+        "name": "Russian",
+        "name_local": "Русский",
+    },
+    "sk": {
+        "bidi": False,
+        "code": "sk",
+        "name": "Slovak",
+        "name_local": "slovensky",
+    },
+    "sl": {
+        "bidi": False,
+        "code": "sl",
+        "name": "Slovenian",
+        "name_local": "Slovenščina",
+    },
+    "sq": {
+        "bidi": False,
+        "code": "sq",
+        "name": "Albanian",
+        "name_local": "shqip",
+    },
+    "sr": {
+        "bidi": False,
+        "code": "sr",
+        "name": "Serbian",
+        "name_local": "српски",
+    },
+    "sr-latn": {
+        "bidi": False,
+        "code": "sr-latn",
+        "name": "Serbian Latin",
+        "name_local": "srpski (latinica)",
+    },
+    "sv": {
+        "bidi": False,
+        "code": "sv",
+        "name": "Swedish",
+        "name_local": "svenska",
+    },
+    "sw": {
+        "bidi": False,
+        "code": "sw",
+        "name": "Swahili",
+        "name_local": "Kiswahili",
+    },
+    "ta": {
+        "bidi": False,
+        "code": "ta",
+        "name": "Tamil",
+        "name_local": "தமிழ்",
+    },
+    "te": {
+        "bidi": False,
+        "code": "te",
+        "name": "Telugu",
+        "name_local": "తెలుగు",
+    },
+    "tg": {
+        "bidi": False,
+        "code": "tg",
+        "name": "Tajik",
+        "name_local": "тоҷикӣ",
+    },
+    "th": {
+        "bidi": False,
+        "code": "th",
+        "name": "Thai",
+        "name_local": "ภาษาไทย",
+    },
+    "tk": {
+        "bidi": False,
+        "code": "tk",
+        "name": "Turkmen",
+        "name_local": "Türkmençe",
+    },
+    "tr": {
+        "bidi": False,
+        "code": "tr",
+        "name": "Turkish",
+        "name_local": "Türkçe",
+    },
+    "tt": {
+        "bidi": False,
+        "code": "tt",
+        "name": "Tatar",
+        "name_local": "Татарча",
+    },
+    "udm": {
+        "bidi": False,
+        "code": "udm",
+        "name": "Udmurt",
+        "name_local": "Удмурт",
+    },
+    "ug": {
+        "bidi": True,
+        "code": "ug",
+        "name": "Uyghur",
+        "name_local": "ئۇيغۇرچە",
+    },
+    "uk": {
+        "bidi": False,
+        "code": "uk",
+        "name": "Ukrainian",
+        "name_local": "Українська",
+    },
+    "ur": {
+        "bidi": True,
+        "code": "ur",
+        "name": "Urdu",
+        "name_local": "اردو",
+    },
+    "uz": {
+        "bidi": False,
+        "code": "uz",
+        "name": "Uzbek",
+        "name_local": "oʻzbek tili",
+    },
+    "vi": {
+        "bidi": False,
+        "code": "vi",
+        "name": "Vietnamese",
+        "name_local": "Tiếng Việt",
+    },
+    "zh-cn": {
+        "fallback": ["zh-hans"],
+    },
+    "zh-hans": {
+        "bidi": False,
+        "code": "zh-hans",
+        "name": "Simplified Chinese",
+        "name_local": "简体中文",
+    },
+    "zh-hant": {
+        "bidi": False,
+        "code": "zh-hant",
+        "name": "Traditional Chinese",
+        "name_local": "繁體中文",
+    },
+    "zh-hk": {
+        "fallback": ["zh-hant"],
+    },
+    "zh-mo": {
+        "fallback": ["zh-hant"],
+    },
+    "zh-my": {
+        "fallback": ["zh-hans"],
+    },
+    "zh-sg": {
+        "fallback": ["zh-hans"],
+    },
+    "zh-tw": {
+        "fallback": ["zh-hant"],
+    },
+}

BIN
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/__pycache__/__init__.cpython-312.pyc


BIN
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/af/LC_MESSAGES/django.mo


+ 1335 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/af/LC_MESSAGES/django.po

@@ -0,0 +1,1335 @@
+# This file is distributed under the same license as the Django package.
+#
+# Translators:
+# F Wolff <friedel@translate.org.za>, 2019-2020,2022-2023
+# Stephen Cox <stephencoxmail@gmail.com>, 2011-2012
+# unklphil <villiers.strauss@gmail.com>, 2014,2019
+msgid ""
+msgstr ""
+"Project-Id-Version: django\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2023-09-18 11:41-0300\n"
+"PO-Revision-Date: 2023-12-04 06:49+0000\n"
+"Last-Translator: F Wolff <friedel@translate.org.za>, 2019-2020,2022-2023\n"
+"Language-Team: Afrikaans (http://app.transifex.com/django/django/language/"
+"af/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: af\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+msgid "Afrikaans"
+msgstr "Afrikaans"
+
+msgid "Arabic"
+msgstr "Arabies"
+
+msgid "Algerian Arabic"
+msgstr "Algeriese Arabies"
+
+msgid "Asturian"
+msgstr "Asturies"
+
+msgid "Azerbaijani"
+msgstr "Aserbeidjans"
+
+msgid "Bulgarian"
+msgstr "Bulgaars"
+
+msgid "Belarusian"
+msgstr "Wit-Russies"
+
+msgid "Bengali"
+msgstr "Bengali"
+
+msgid "Breton"
+msgstr "Bretons"
+
+msgid "Bosnian"
+msgstr "Bosnies"
+
+msgid "Catalan"
+msgstr "Katalaans"
+
+msgid "Central Kurdish (Sorani)"
+msgstr ""
+
+msgid "Czech"
+msgstr "Tsjeggies"
+
+msgid "Welsh"
+msgstr "Wallies"
+
+msgid "Danish"
+msgstr "Deens"
+
+msgid "German"
+msgstr "Duits"
+
+msgid "Lower Sorbian"
+msgstr "Neder-Sorbies"
+
+msgid "Greek"
+msgstr "Grieks"
+
+msgid "English"
+msgstr "Engels"
+
+msgid "Australian English"
+msgstr "Australiese Engels"
+
+msgid "British English"
+msgstr "Britse Engels"
+
+msgid "Esperanto"
+msgstr "Esperanto"
+
+msgid "Spanish"
+msgstr "Spaans"
+
+msgid "Argentinian Spanish"
+msgstr "Argentynse Spaans"
+
+msgid "Colombian Spanish"
+msgstr "Kolombiaanse Spaans"
+
+msgid "Mexican Spanish"
+msgstr "Meksikaanse Spaans"
+
+msgid "Nicaraguan Spanish"
+msgstr "Nicaraguaanse Spaans"
+
+msgid "Venezuelan Spanish"
+msgstr "Venezolaanse Spaans"
+
+msgid "Estonian"
+msgstr "Estnies"
+
+msgid "Basque"
+msgstr "Baskies"
+
+msgid "Persian"
+msgstr "Persies"
+
+msgid "Finnish"
+msgstr "Fins"
+
+msgid "French"
+msgstr "Fraans"
+
+msgid "Frisian"
+msgstr "Fries"
+
+msgid "Irish"
+msgstr "Iers"
+
+msgid "Scottish Gaelic"
+msgstr "Skots-Gaelies"
+
+msgid "Galician"
+msgstr "Galicies"
+
+msgid "Hebrew"
+msgstr "Hebreeus"
+
+msgid "Hindi"
+msgstr "Hindoe"
+
+msgid "Croatian"
+msgstr "Kroaties"
+
+msgid "Upper Sorbian"
+msgstr "Opper-Sorbies"
+
+msgid "Hungarian"
+msgstr "Hongaars"
+
+msgid "Armenian"
+msgstr "Armeens"
+
+msgid "Interlingua"
+msgstr "Interlingua"
+
+msgid "Indonesian"
+msgstr "Indonesies"
+
+msgid "Igbo"
+msgstr ""
+
+msgid "Ido"
+msgstr "Ido"
+
+msgid "Icelandic"
+msgstr "Yslands"
+
+msgid "Italian"
+msgstr "Italiaans"
+
+msgid "Japanese"
+msgstr "Japannees"
+
+msgid "Georgian"
+msgstr "Georgian"
+
+msgid "Kabyle"
+msgstr "Kabilies"
+
+msgid "Kazakh"
+msgstr "Kazakh"
+
+msgid "Khmer"
+msgstr "Khmer"
+
+msgid "Kannada"
+msgstr "Kannada"
+
+msgid "Korean"
+msgstr "Koreaans"
+
+msgid "Kyrgyz"
+msgstr ""
+
+msgid "Luxembourgish"
+msgstr "Luxemburgs"
+
+msgid "Lithuanian"
+msgstr "Litaus"
+
+msgid "Latvian"
+msgstr "Lets"
+
+msgid "Macedonian"
+msgstr "Macedonies"
+
+msgid "Malayalam"
+msgstr "Malabaars"
+
+msgid "Mongolian"
+msgstr "Mongools"
+
+msgid "Marathi"
+msgstr "Marathi"
+
+msgid "Malay"
+msgstr "Maleisies"
+
+msgid "Burmese"
+msgstr "Birmaans"
+
+msgid "Norwegian Bokmål"
+msgstr "Noorweegse Bokmål"
+
+msgid "Nepali"
+msgstr "Nepalees"
+
+msgid "Dutch"
+msgstr "Nederlands"
+
+msgid "Norwegian Nynorsk"
+msgstr "Noorweegse Nynorsk"
+
+msgid "Ossetic"
+msgstr "Osseties"
+
+msgid "Punjabi"
+msgstr "Punjabi"
+
+msgid "Polish"
+msgstr "Pools"
+
+msgid "Portuguese"
+msgstr "Portugees"
+
+msgid "Brazilian Portuguese"
+msgstr "Brasiliaanse Portugees"
+
+msgid "Romanian"
+msgstr "Roemeens"
+
+msgid "Russian"
+msgstr "Russiese"
+
+msgid "Slovak"
+msgstr "Slowaaks"
+
+msgid "Slovenian"
+msgstr "Sloweens"
+
+msgid "Albanian"
+msgstr "Albanees"
+
+msgid "Serbian"
+msgstr "Serwies"
+
+msgid "Serbian Latin"
+msgstr "Serwies Latyns"
+
+msgid "Swedish"
+msgstr "Sweeds"
+
+msgid "Swahili"
+msgstr "Swahili"
+
+msgid "Tamil"
+msgstr "Tamil"
+
+msgid "Telugu"
+msgstr "Teloegoe"
+
+msgid "Tajik"
+msgstr ""
+
+msgid "Thai"
+msgstr "Thai"
+
+msgid "Turkmen"
+msgstr ""
+
+msgid "Turkish"
+msgstr "Turks"
+
+msgid "Tatar"
+msgstr "Tataars"
+
+msgid "Udmurt"
+msgstr "Oedmoerts"
+
+msgid "Uyghur"
+msgstr ""
+
+msgid "Ukrainian"
+msgstr "Oekraïens"
+
+msgid "Urdu"
+msgstr "Oerdoe"
+
+msgid "Uzbek"
+msgstr "Oesbekies "
+
+msgid "Vietnamese"
+msgstr "Viëtnamees"
+
+msgid "Simplified Chinese"
+msgstr "Vereenvoudigde Sjinees"
+
+msgid "Traditional Chinese"
+msgstr "Tradisionele Sjinees"
+
+msgid "Messages"
+msgstr "Boodskappe"
+
+msgid "Site Maps"
+msgstr "Werfkaarte"
+
+msgid "Static Files"
+msgstr "Statiese lêers"
+
+msgid "Syndication"
+msgstr "Sindikasie"
+
+#. 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 "Daai bladsynommer is nie ’n heelgetal nie"
+
+msgid "That page number is less than 1"
+msgstr "Daai bladsynommer is minder as 1"
+
+msgid "That page contains no results"
+msgstr "Daai bladsy bevat geen resultate nie"
+
+msgid "Enter a valid value."
+msgstr "Gee ’n geldige waarde."
+
+msgid "Enter a valid URL."
+msgstr "Gee ’n geldige URL."
+
+msgid "Enter a valid integer."
+msgstr "Gee ’n geldige heelgetal."
+
+msgid "Enter a valid email address."
+msgstr "Gee ’n geldige e-posadres."
+
+#. Translators: "letters" means latin letters: a-z and A-Z.
+msgid ""
+"Enter a valid “slug” consisting of letters, numbers, underscores or hyphens."
+msgstr ""
+"Gee ’n geldige “slak” wat bestaan ​​uit letters, syfers, onderstreep of "
+"koppelteken."
+
+msgid ""
+"Enter a valid “slug” consisting of Unicode letters, numbers, underscores, or "
+"hyphens."
+msgstr ""
+"Gee ’n geldige “slak” wat bestaan ​​uit Unicode-letters, syfers, onderstreep "
+"of koppelteken."
+
+msgid "Enter a valid IPv4 address."
+msgstr "Gee ’n geldige IPv4-adres."
+
+msgid "Enter a valid IPv6 address."
+msgstr "Gee ’n geldige IPv6-adres."
+
+msgid "Enter a valid IPv4 or IPv6 address."
+msgstr "Gee ’n geldige IPv4- of IPv6-adres."
+
+msgid "Enter only digits separated by commas."
+msgstr "Gee slegs syfers wat deur kommas geskei is."
+
+#, python-format
+msgid "Ensure this value is %(limit_value)s (it is %(show_value)s)."
+msgstr ""
+"Maak seker dat hierdie waarde %(limit_value)s is  (dit is %(show_value)s)."
+
+#, python-format
+msgid "Ensure this value is less than or equal to %(limit_value)s."
+msgstr "Maak seker dat hierdie waarde kleiner of gelyk is aan %(limit_value)s."
+
+#, python-format
+msgid "Ensure this value is greater than or equal to %(limit_value)s."
+msgstr "Maak seker dat hierdie waarde groter of gelyk is aan %(limit_value)s."
+
+#, python-format
+msgid "Ensure this value is a multiple of step size %(limit_value)s."
+msgstr ""
+"Maak seker dat hierdie waarde ’n veelvoud is van stapgrootte %(limit_value)s."
+
+#, python-format
+msgid ""
+"Ensure this value is a multiple of step size %(limit_value)s, starting from "
+"%(offset)s, e.g. %(offset)s, %(valid_value1)s, %(valid_value2)s, and so on."
+msgstr ""
+
+#, python-format
+msgid ""
+"Ensure this value has at least %(limit_value)d character (it has "
+"%(show_value)d)."
+msgid_plural ""
+"Ensure this value has at least %(limit_value)d characters (it has "
+"%(show_value)d)."
+msgstr[0] ""
+"Maak seker hierdie waarde het ten minste %(limit_value)d karakter (dit het "
+"%(show_value)d)."
+msgstr[1] ""
+"Maak seker hierdie waarde het ten minste %(limit_value)d karakters (dit het "
+"%(show_value)d)."
+
+#, python-format
+msgid ""
+"Ensure this value has at most %(limit_value)d character (it has "
+"%(show_value)d)."
+msgid_plural ""
+"Ensure this value has at most %(limit_value)d characters (it has "
+"%(show_value)d)."
+msgstr[0] ""
+"Maak seker hierdie waarde het op die meeste %(limit_value)d karakter (dit "
+"het %(show_value)d)."
+msgstr[1] ""
+"Maak seker hierdie waarde het op die meeste %(limit_value)d karakters (dit "
+"het %(show_value)d)."
+
+msgid "Enter a number."
+msgstr "Gee ’n getal."
+
+#, 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] "Maak seker dat daar nie meer as %(max)s syfer in totaal is nie."
+msgstr[1] "Maak seker dat daar nie meer as %(max)s syfers in totaal is nie."
+
+#, python-format
+msgid "Ensure that there are no more than %(max)s decimal place."
+msgid_plural "Ensure that there are no more than %(max)s decimal places."
+msgstr[0] "Maak seker dat daar nie meer as %(max)s desimale plek is nie."
+msgstr[1] "Maak seker dat daar nie meer as %(max)s desimale plekke is nie."
+
+#, python-format
+msgid ""
+"Ensure that there are no more than %(max)s digit before the decimal point."
+msgid_plural ""
+"Ensure that there are no more than %(max)s digits before the decimal point."
+msgstr[0] ""
+"Maak seker dat daar nie meer as %(max)s syfer voor die desimale punt is nie."
+msgstr[1] ""
+"Maak seker dat daar nie meer as %(max)s syfers voor die desimale punt is nie."
+
+#, python-format
+msgid ""
+"File extension “%(extension)s” is not allowed. Allowed extensions are: "
+"%(allowed_extensions)s."
+msgstr ""
+"Lêeruitbreiding “%(extension)s” word nie toegelaat nie. Toegelate "
+"uitbreidings is: %(allowed_extensions)s."
+
+msgid "Null characters are not allowed."
+msgstr "Nul-karakters word nie toegelaat nie."
+
+msgid "and"
+msgstr "en"
+
+#, python-format
+msgid "%(model_name)s with this %(field_labels)s already exists."
+msgstr "%(model_name)s met hierdie %(field_labels)s bestaan alreeds."
+
+#, python-format
+msgid "Constraint “%(name)s” is violated."
+msgstr "Beperking “%(name)s” word verbreek."
+
+#, python-format
+msgid "Value %(value)r is not a valid choice."
+msgstr "Waarde %(value)r is nie ’n geldige keuse nie."
+
+msgid "This field cannot be null."
+msgstr "Hierdie veld kan nie nil wees nie."
+
+msgid "This field cannot be blank."
+msgstr "Hierdie veld kan nie leeg wees nie."
+
+#, python-format
+msgid "%(model_name)s with this %(field_label)s already exists."
+msgstr "%(model_name)s met hierdie %(field_label)s  bestaan ​​alreeds."
+
+#. Translators: The 'lookup_type' is one of 'date', 'year' or
+#. 'month'. Eg: "Title must be unique for pub_date year"
+#, python-format
+msgid ""
+"%(field_label)s must be unique for %(date_field_label)s %(lookup_type)s."
+msgstr ""
+"%(field_label)s moet uniek wees per %(date_field_label)s %(lookup_type)s."
+
+#, python-format
+msgid "Field of type: %(field_type)s"
+msgstr "Veld van tipe: %(field_type)s "
+
+#, python-format
+msgid "“%(value)s” value must be either True or False."
+msgstr "“%(value)s” waarde moet óf True óf False wees."
+
+#, python-format
+msgid "“%(value)s” value must be either True, False, or None."
+msgstr "Die waarde “%(value)s” moet True, False of None wees."
+
+msgid "Boolean (Either True or False)"
+msgstr "Boole (True of False)"
+
+#, python-format
+msgid "String (up to %(max_length)s)"
+msgstr "String (hoogstens %(max_length)s karakters)"
+
+msgid "String (unlimited)"
+msgstr "String (onbeperk)"
+
+msgid "Comma-separated integers"
+msgstr "Heelgetalle geskei met kommas"
+
+#, python-format
+msgid ""
+"“%(value)s” value has an invalid date format. It must be in YYYY-MM-DD "
+"format."
+msgstr ""
+"Die waarde “%(value)s” het ’n ongeldige datumformaat. Dit moet in die "
+"formaat JJJJ-MM-DD wees."
+
+#, python-format
+msgid ""
+"“%(value)s” value has the correct format (YYYY-MM-DD) but it is an invalid "
+"date."
+msgstr ""
+"Die waarde “%(value)s” het die korrekte formaat (JJJJ-MM-DD), maar dit is ’n "
+"ongeldige datum."
+
+msgid "Date (without time)"
+msgstr "Datum (sonder die tyd)"
+
+#, python-format
+msgid ""
+"“%(value)s” value has an invalid format. It must be in YYYY-MM-DD HH:MM[:ss[."
+"uuuuuu]][TZ] format."
+msgstr ""
+"Die waarde “%(value)s” se formaat is ongeldig. Dit moet in die formaat JJJJ-"
+"MM-DD HH:MM[:ss[.uuuuuu]][TZ] wees."
+
+#, 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 ""
+"Die waarde “%(value)s” het die korrekte formaat (JJJJ-MM-DD HH:MM[:ss[."
+"uuuuuu]][TZ]) maar dit is ’n ongeldige datum/tyd."
+
+msgid "Date (with time)"
+msgstr "Datum (met die tyd)"
+
+#, python-format
+msgid "“%(value)s” value must be a decimal number."
+msgstr "“%(value)s”-waarde moet ’n desimale getal wees."
+
+msgid "Decimal number"
+msgstr "Desimale getal"
+
+#, python-format
+msgid ""
+"“%(value)s” value has an invalid format. It must be in [DD] [[HH:]MM:]ss[."
+"uuuuuu] format."
+msgstr ""
+"Die waarde “%(value)s” het ’n ongeldige formaat. Dit moet in die formaat "
+"[DD] [HH:[MM:]]ss[.uuuuuu] wees."
+
+msgid "Duration"
+msgstr "Duur"
+
+msgid "Email address"
+msgstr "E-posadres"
+
+msgid "File path"
+msgstr "Lêerpad"
+
+#, python-format
+msgid "“%(value)s” value must be a float."
+msgstr "Die waarde “%(value)s” moet ’n dryfpuntgetal wees."
+
+msgid "Floating point number"
+msgstr "Dryfpuntgetal"
+
+#, python-format
+msgid "“%(value)s” value must be an integer."
+msgstr "Die waarde “%(value)s” moet ’n heelgetal wees."
+
+msgid "Integer"
+msgstr "Heelgetal"
+
+msgid "Big (8 byte) integer"
+msgstr "Groot (8 greep) heelgetal"
+
+msgid "Small integer"
+msgstr "Klein heelgetal"
+
+msgid "IPv4 address"
+msgstr "IPv4-adres"
+
+msgid "IP address"
+msgstr "IP-adres"
+
+#, python-format
+msgid "“%(value)s” value must be either None, True or False."
+msgstr "“%(value)s”-waarde moet een wees uit None, True of False."
+
+msgid "Boolean (Either True, False or None)"
+msgstr "Boole (True, False, of None)"
+
+msgid "Positive big integer"
+msgstr "Positiewe groot heelgetal"
+
+msgid "Positive integer"
+msgstr "Positiewe heelgetal"
+
+msgid "Positive small integer"
+msgstr "Klein positiewe heelgetal"
+
+#, python-format
+msgid "Slug (up to %(max_length)s)"
+msgstr "Slug (tot en met %(max_length)s karakters)"
+
+msgid "Text"
+msgstr "Teks"
+
+#, python-format
+msgid ""
+"“%(value)s” value has an invalid format. It must be in HH:MM[:ss[.uuuuuu]] "
+"format."
+msgstr ""
+"“%(value)s”-waarde het ’n ongeldige formaat. Dit moet geformateer word as HH:"
+"MM[:ss[.uuuuuu]]."
+
+#, python-format
+msgid ""
+"“%(value)s” value has the correct format (HH:MM[:ss[.uuuuuu]]) but it is an "
+"invalid time."
+msgstr ""
+"Die waarde “%(value)s” het die regte formaat (HH:MM[:ss[.uuuuuu]]) maar is "
+"nie ’n geldige tyd nie."
+
+msgid "Time"
+msgstr "Tyd"
+
+msgid "URL"
+msgstr "URL"
+
+msgid "Raw binary data"
+msgstr "Rou binêre data"
+
+#, python-format
+msgid "“%(value)s” is not a valid UUID."
+msgstr "“%(value)s” is nie ’n geldige UUID nie."
+
+msgid "Universally unique identifier"
+msgstr "Universeel unieke identifiseerder"
+
+msgid "File"
+msgstr "Lêer"
+
+msgid "Image"
+msgstr "Prent"
+
+msgid "A JSON object"
+msgstr "’n JSON-objek"
+
+msgid "Value must be valid JSON."
+msgstr "Waarde moet geldige JSON wees."
+
+#, python-format
+msgid "%(model)s instance with %(field)s %(value)r does not exist."
+msgstr "%(model)s-objek met %(field)s %(value)r bestaan nie."
+
+msgid "Foreign Key (type determined by related field)"
+msgstr "Vreemde sleutel (tipe bepaal deur verwante veld)"
+
+msgid "One-to-one relationship"
+msgstr "Een-tot-een-verhouding"
+
+#, python-format
+msgid "%(from)s-%(to)s relationship"
+msgstr "%(from)s-%(to)s-verwantskap"
+
+#, python-format
+msgid "%(from)s-%(to)s relationships"
+msgstr "%(from)s-%(to)s-verwantskappe"
+
+msgid "Many-to-many relationship"
+msgstr "Baie-tot-baie-verwantskap"
+
+#. Translators: If found as last label character, these punctuation
+#. characters will prevent the default label_suffix to be appended to the
+#. label
+msgid ":?.!"
+msgstr ":?.!"
+
+msgid "This field is required."
+msgstr "Dié veld is verpligtend."
+
+msgid "Enter a whole number."
+msgstr "Tik ’n heelgetal in."
+
+msgid "Enter a valid date."
+msgstr "Tik ’n geldige datum in."
+
+msgid "Enter a valid time."
+msgstr "Tik ’n geldige tyd in."
+
+msgid "Enter a valid date/time."
+msgstr "Tik ’n geldige datum/tyd in."
+
+msgid "Enter a valid duration."
+msgstr "Tik ’n geldige tydsduur in."
+
+#, python-brace-format
+msgid "The number of days must be between {min_days} and {max_days}."
+msgstr "Die aantal dae moet tussen {min_days} en {max_days} wees."
+
+msgid "No file was submitted. Check the encoding type on the form."
+msgstr ""
+"Geen lêer is ingedien nie. Maak seker die koderingtipe op die vorm is reg."
+
+msgid "No file was submitted."
+msgstr "Geen lêer is ingedien nie."
+
+msgid "The submitted file is empty."
+msgstr "Die ingediende lêer is leeg."
+
+#, python-format
+msgid "Ensure this filename has at most %(max)d character (it has %(length)d)."
+msgid_plural ""
+"Ensure this filename has at most %(max)d characters (it has %(length)d)."
+msgstr[0] ""
+"Maak seker hierdie lêernaam het hoogstens %(max)d karakter (dit het "
+"%(length)d)."
+msgstr[1] ""
+"Maak seker hierdie lêernaam het hoogstens %(max)d karakters (dit het "
+"%(length)d)."
+
+msgid "Please either submit a file or check the clear checkbox, not both."
+msgstr "Dien die lêer in óf merk die Maak skoon-boksie, nie altwee nie."
+
+msgid ""
+"Upload a valid image. The file you uploaded was either not an image or a "
+"corrupted image."
+msgstr ""
+"Laai ’n geldige prent. Die lêer wat jy opgelaai het, is nie ’n prent nie of "
+"dit is ’n korrupte prent."
+
+#, python-format
+msgid "Select a valid choice. %(value)s is not one of the available choices."
+msgstr ""
+"Kies ’n geldige keuse. %(value)s is nie een van die beskikbare keuses nie."
+
+msgid "Enter a list of values."
+msgstr "Tik ’n lys waardes in."
+
+msgid "Enter a complete value."
+msgstr "Tik ’n volledige waarde in."
+
+msgid "Enter a valid UUID."
+msgstr "Tik ’n geldig UUID in."
+
+msgid "Enter a valid JSON."
+msgstr "Gee geldige JSON."
+
+#. Translators: This is the default suffix added to form field labels
+msgid ":"
+msgstr ":"
+
+#, python-format
+msgid "(Hidden field %(name)s) %(error)s"
+msgstr "(Versteekte veld %(name)s) %(error)s"
+
+#, 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 ""
+
+#, python-format
+msgid "Please submit at most %(num)d form."
+msgid_plural "Please submit at most %(num)d forms."
+msgstr[0] "Dien asseblief hoogstens %(num)d vorm in."
+msgstr[1] "Dien asseblief hoogstens %(num)d vorms in."
+
+#, python-format
+msgid "Please submit at least %(num)d form."
+msgid_plural "Please submit at least %(num)d forms."
+msgstr[0] "Dien asseblief ten minste %(num)d vorm in."
+msgstr[1] "Dien asseblief ten minste %(num)d vorms in."
+
+msgid "Order"
+msgstr "Orde"
+
+msgid "Delete"
+msgstr "Verwyder"
+
+#, python-format
+msgid "Please correct the duplicate data for %(field)s."
+msgstr "Korrigeer die dubbele data vir %(field)s."
+
+#, python-format
+msgid "Please correct the duplicate data for %(field)s, which must be unique."
+msgstr "Korrigeer die dubbele data vir %(field)s, dit moet uniek wees."
+
+#, python-format
+msgid ""
+"Please correct the duplicate data for %(field_name)s which must be unique "
+"for the %(lookup)s in %(date_field)s."
+msgstr ""
+"Korrigeer die dubbele data vir %(field_name)s, dit moet uniek wees vir die "
+"%(lookup)s in %(date_field)s."
+
+msgid "Please correct the duplicate values below."
+msgstr "Korrigeer die dubbele waardes hieronder."
+
+msgid "The inline value did not match the parent instance."
+msgstr "Die waarde inlyn pas nie by die ouerobjek nie."
+
+msgid "Select a valid choice. That choice is not one of the available choices."
+msgstr ""
+"Kies ’n geldige keuse. Daardie keuse is nie een van die beskikbare keuses "
+"nie."
+
+#, python-format
+msgid "“%(pk)s” is not a valid value."
+msgstr "“%(pk)s” is nie ’n geldige waarde nie."
+
+#, 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 kon nie in die tydsone %(current_timezone)s vertolk word nie; "
+"dit is dalk dubbelsinnig, of bestaan dalk nie."
+
+msgid "Clear"
+msgstr "Maak skoon"
+
+msgid "Currently"
+msgstr "Tans"
+
+msgid "Change"
+msgstr "Verander"
+
+msgid "Unknown"
+msgstr "Onbekend"
+
+msgid "Yes"
+msgstr "Ja"
+
+msgid "No"
+msgstr "Nee"
+
+#. Translators: Please do not add spaces around commas.
+msgid "yes,no,maybe"
+msgstr "ja,nee,miskien"
+
+#, python-format
+msgid "%(size)d byte"
+msgid_plural "%(size)d bytes"
+msgstr[0] "%(size)d greep"
+msgstr[1] "%(size)d grepe"
+
+#, python-format
+msgid "%s KB"
+msgstr "%s KB"
+
+#, python-format
+msgid "%s MB"
+msgstr "%s MB"
+
+#, python-format
+msgid "%s GB"
+msgstr "%s GB"
+
+#, python-format
+msgid "%s TB"
+msgstr "%s TB"
+
+#, python-format
+msgid "%s PB"
+msgstr "%s PB"
+
+msgid "p.m."
+msgstr "nm."
+
+msgid "a.m."
+msgstr "vm."
+
+msgid "PM"
+msgstr "NM"
+
+msgid "AM"
+msgstr "VM"
+
+msgid "midnight"
+msgstr "middernag"
+
+msgid "noon"
+msgstr "middag"
+
+msgid "Monday"
+msgstr "Maandag"
+
+msgid "Tuesday"
+msgstr "Dinsdag"
+
+msgid "Wednesday"
+msgstr "Woensdag"
+
+msgid "Thursday"
+msgstr "Donderdag"
+
+msgid "Friday"
+msgstr "Vrydag"
+
+msgid "Saturday"
+msgstr "Saterdag"
+
+msgid "Sunday"
+msgstr "Sondag"
+
+msgid "Mon"
+msgstr "Ma"
+
+msgid "Tue"
+msgstr "Di"
+
+msgid "Wed"
+msgstr "Wo"
+
+msgid "Thu"
+msgstr "Do"
+
+msgid "Fri"
+msgstr "Vr"
+
+msgid "Sat"
+msgstr "Sa"
+
+msgid "Sun"
+msgstr "So"
+
+msgid "January"
+msgstr "Januarie"
+
+msgid "February"
+msgstr "Februarie"
+
+msgid "March"
+msgstr "Maart"
+
+msgid "April"
+msgstr "April"
+
+msgid "May"
+msgstr "Mei"
+
+msgid "June"
+msgstr "Junie"
+
+msgid "July"
+msgstr "Julie"
+
+msgid "August"
+msgstr "Augustus"
+
+msgid "September"
+msgstr "September"
+
+msgid "October"
+msgstr "Oktober"
+
+msgid "November"
+msgstr "November"
+
+msgid "December"
+msgstr "Desember"
+
+msgid "jan"
+msgstr "jan"
+
+msgid "feb"
+msgstr "feb"
+
+msgid "mar"
+msgstr "mrt"
+
+msgid "apr"
+msgstr "apr"
+
+msgid "may"
+msgstr "mei"
+
+msgid "jun"
+msgstr "jun"
+
+msgid "jul"
+msgstr "jul"
+
+msgid "aug"
+msgstr "aug"
+
+msgid "sep"
+msgstr "sept"
+
+msgid "oct"
+msgstr "okt"
+
+msgid "nov"
+msgstr "nov"
+
+msgid "dec"
+msgstr "des"
+
+msgctxt "abbrev. month"
+msgid "Jan."
+msgstr "Jan."
+
+msgctxt "abbrev. month"
+msgid "Feb."
+msgstr "Feb."
+
+msgctxt "abbrev. month"
+msgid "March"
+msgstr "Maart"
+
+msgctxt "abbrev. month"
+msgid "April"
+msgstr "April"
+
+msgctxt "abbrev. month"
+msgid "May"
+msgstr "Mei"
+
+msgctxt "abbrev. month"
+msgid "June"
+msgstr "Junie"
+
+msgctxt "abbrev. month"
+msgid "July"
+msgstr "Julie"
+
+msgctxt "abbrev. month"
+msgid "Aug."
+msgstr "Aug."
+
+msgctxt "abbrev. month"
+msgid "Sept."
+msgstr "Sept."
+
+msgctxt "abbrev. month"
+msgid "Oct."
+msgstr "Okt."
+
+msgctxt "abbrev. month"
+msgid "Nov."
+msgstr "Nov."
+
+msgctxt "abbrev. month"
+msgid "Dec."
+msgstr "Des."
+
+msgctxt "alt. month"
+msgid "January"
+msgstr "Januarie"
+
+msgctxt "alt. month"
+msgid "February"
+msgstr "Februarie"
+
+msgctxt "alt. month"
+msgid "March"
+msgstr "Maart"
+
+msgctxt "alt. month"
+msgid "April"
+msgstr "April"
+
+msgctxt "alt. month"
+msgid "May"
+msgstr "Mei"
+
+msgctxt "alt. month"
+msgid "June"
+msgstr "Junie"
+
+msgctxt "alt. month"
+msgid "July"
+msgstr "Julie"
+
+msgctxt "alt. month"
+msgid "August"
+msgstr "Augustus"
+
+msgctxt "alt. month"
+msgid "September"
+msgstr "September"
+
+msgctxt "alt. month"
+msgid "October"
+msgstr "Oktober"
+
+msgctxt "alt. month"
+msgid "November"
+msgstr "November"
+
+msgctxt "alt. month"
+msgid "December"
+msgstr "Desember"
+
+msgid "This is not a valid IPv6 address."
+msgstr "Hierdie is nie ’n geldige IPv6-adres nie."
+
+#, python-format
+msgctxt "String to return when truncating text"
+msgid "%(truncated_text)s…"
+msgstr "%(truncated_text)s…"
+
+msgid "or"
+msgstr "of"
+
+#. Translators: This string is used as a separator between list elements
+msgid ", "
+msgstr ", "
+
+#, python-format
+msgid "%(num)d year"
+msgid_plural "%(num)d years"
+msgstr[0] "%(num)d jaar"
+msgstr[1] "%(num)d jaar"
+
+#, python-format
+msgid "%(num)d month"
+msgid_plural "%(num)d months"
+msgstr[0] "%(num)d maand"
+msgstr[1] "%(num)d maande"
+
+#, python-format
+msgid "%(num)d week"
+msgid_plural "%(num)d weeks"
+msgstr[0] "%(num)d week"
+msgstr[1] "%(num)d weke"
+
+#, python-format
+msgid "%(num)d day"
+msgid_plural "%(num)d days"
+msgstr[0] "%(num)d dag"
+msgstr[1] "%(num)d dae"
+
+#, python-format
+msgid "%(num)d hour"
+msgid_plural "%(num)d hours"
+msgstr[0] "%(num)d uur"
+msgstr[1] "%(num)d uur"
+
+#, python-format
+msgid "%(num)d minute"
+msgid_plural "%(num)d minutes"
+msgstr[0] "%(num)d minuut"
+msgstr[1] "%(num)d minute"
+
+msgid "Forbidden"
+msgstr "Verbode"
+
+msgid "CSRF verification failed. Request aborted."
+msgstr "CSRF-verifikasie het misluk. Versoek is laat val."
+
+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 "
+"required for security reasons, to ensure that your browser is not being "
+"hijacked by third parties."
+msgstr ""
+"U sien hierdie boodskap  omdat dié HTTPS-werf vereis dat u webblaaier ’n "
+"“Referer header” moet stuur, maar dit is nie gestuur nie. Hierdie header is "
+"vir sekuriteitsredes nodig om te verseker dat u blaaier nie deur derde "
+"partye gekaap is nie."
+
+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 ""
+"As “Referer headers” in u blaaier gedeaktiveer is, heraktiveer hulle asb. "
+"ten minste vir dié werf, of vir HTTPS-verbindings, of vir “same-origin”-"
+"versoeke."
+
+msgid ""
+"If you are using the <meta name=\"referrer\" content=\"no-referrer\"> tag or "
+"including the “Referrer-Policy: no-referrer” header, please remove them. The "
+"CSRF protection requires the “Referer” header to do strict referer checking. "
+"If you’re concerned about privacy, use alternatives like <a "
+"rel=\"noreferrer\" …> for links to third-party sites."
+msgstr ""
+"Indien u die <meta name=\"referrer\" content=\"no-referrer\">-etiket gebruik "
+"of die “Referrer-Policy: no-referrer” header gebruik, verwyder hulle asb. "
+"Die CSRF-beskerming vereis die “Referer” header om streng kontrole van die "
+"verwysende bladsy te doen. Indien u besorg is oor privaatheid, gebruik "
+"alternatiewe soos <a rel=\"noreferrer\" …> vir skakels na derdepartywebwerwe."
+
+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 ""
+"U sien hierdie boodskap omdat dié werf ’n CSRF-koekie benodig wanneer vorms "
+"ingedien word. Dié koekie word vir sekuriteitsredes benodig om te te "
+"verseker dat u blaaier nie deur derde partye gekaap word nie."
+
+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 ""
+"Indien koekies in u blaaier gedeaktiveer is, aktiveerder hulle asb. ten "
+"minste vir dié werf, of vir “same-origin”-versoeke."
+
+msgid "More information is available with DEBUG=True."
+msgstr "Meer inligting is beskikbaar met DEBUG=True."
+
+msgid "No year specified"
+msgstr "Geen jaar gespesifiseer nie"
+
+msgid "Date out of range"
+msgstr "Datum buite omvang"
+
+msgid "No month specified"
+msgstr "Geen maand gespesifiseer nie"
+
+msgid "No day specified"
+msgstr "Geen dag gespesifiseer nie"
+
+msgid "No week specified"
+msgstr "Geen week gespesifiseer nie"
+
+#, python-format
+msgid "No %(verbose_name_plural)s available"
+msgstr "Geen %(verbose_name_plural)s beskikbaar nie"
+
+#, python-format
+msgid ""
+"Future %(verbose_name_plural)s not available because %(class_name)s."
+"allow_future is False."
+msgstr ""
+"Toekomstige %(verbose_name_plural)s is nie beskikbaar nie, omdat "
+"%(class_name)s.allow_future vals is."
+
+#, python-format
+msgid "Invalid date string “%(datestr)s” given format “%(format)s”"
+msgstr "Ongeldige datumstring “%(datestr)s” gegewe die formaat “%(format)s”"
+
+#, python-format
+msgid "No %(verbose_name)s found matching the query"
+msgstr "Geen %(verbose_name)s gevind vir die soektog"
+
+msgid "Page is not “last”, nor can it be converted to an int."
+msgstr ""
+"Bladsy is nie “last” nie, en dit kan nie omgeskakel word na ’n heelgetal nie."
+
+#, python-format
+msgid "Invalid page (%(page_number)s): %(message)s"
+msgstr "Ongeldige bladsy (%(page_number)s): %(message)s"
+
+#, python-format
+msgid "Empty list and “%(class_name)s.allow_empty” is False."
+msgstr "Leë lys en “%(class_name)s.allow_empty” is vals."
+
+msgid "Directory indexes are not allowed here."
+msgstr "Gidsindekse word nie hier toegelaat nie."
+
+#, python-format
+msgid "“%(path)s” does not exist"
+msgstr "“%(path)s” bestaan nie."
+
+#, python-format
+msgid "Index of %(directory)s"
+msgstr "Indeks van %(directory)s"
+
+msgid "The install worked successfully! Congratulations!"
+msgstr "Die installasie was suksesvol! Geluk!"
+
+#, 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 ""
+"Sien die <a href=\"https://docs.djangoproject.com/en/%(version)s/releases/\" "
+"target=\"_blank\" rel=\"noopener\">vrystellingsnotas</a> vir Django "
+"%(version)s"
+
+#, python-format
+msgid ""
+"You are seeing this page because <a href=\"https://docs.djangoproject.com/en/"
+"%(version)s/ref/settings/#debug\" target=\"_blank\" "
+"rel=\"noopener\">DEBUG=True</a> is in your settings file and you have not "
+"configured any URLs."
+msgstr ""
+"U sien dié bladsy omdat <a href=\"https://docs.djangoproject.com/en/"
+"%(version)s/ref/settings/#debug\" target=\"_blank\" "
+"rel=\"noopener\">DEBUG=True</a> in die settings-lêer is en geen URL’e "
+"opgestel is nie."
+
+msgid "Django Documentation"
+msgstr "Django-dokumentasie"
+
+msgid "Topics, references, &amp; how-to’s"
+msgstr ""
+
+msgid "Tutorial: A Polling App"
+msgstr ""
+
+msgid "Get started with Django"
+msgstr "Kom aan die gang met Django"
+
+msgid "Django Community"
+msgstr "Django-gemeenskap"
+
+msgid "Connect, get help, or contribute"
+msgstr "Kontak, kry hulp om dra by"

BIN
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar/LC_MESSAGES/django.mo


+ 1389 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar/LC_MESSAGES/django.po

@@ -0,0 +1,1389 @@
+# This file is distributed under the same license as the Django package.
+#
+# Translators:
+# Bashar Al-Abdulhadi, 2015-2016,2020-2021
+# Bashar Al-Abdulhadi, 2014
+# Eyad Toma <d.eyad.t@gmail.com>, 2013-2014
+# Jannis Leidel <jannis@leidel.info>, 2011
+# Mariusz Felisiak <felisiak.mariusz@gmail.com>, 2021
+# Muaaz Alsaied, 2020
+# Omar Al-Ithawi <omar.al.dolaimy@gmail.com>, 2020
+# Ossama Khayat <okhayat@gmail.com>, 2011
+# Tony xD <tony23dz@gmail.com>, 2020
+# صفا الفليج <safaalfulaij@hotmail.com>, 2020
+msgid ""
+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-24 16:27+0000\n"
+"Last-Translator: Mariusz Felisiak <felisiak.mariusz@gmail.com>\n"
+"Language-Team: Arabic (http://www.transifex.com/django/django/language/ar/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: ar\n"
+"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
+"&& n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"
+
+msgid "Afrikaans"
+msgstr "الإفريقية"
+
+msgid "Arabic"
+msgstr "العربيّة"
+
+msgid "Algerian Arabic"
+msgstr "عربي جزائري"
+
+msgid "Asturian"
+msgstr "الأسترية"
+
+msgid "Azerbaijani"
+msgstr "الأذربيجانية"
+
+msgid "Bulgarian"
+msgstr "البلغاريّة"
+
+msgid "Belarusian"
+msgstr "البيلاروسية"
+
+msgid "Bengali"
+msgstr "البنغاليّة"
+
+msgid "Breton"
+msgstr "البريتونية"
+
+msgid "Bosnian"
+msgstr "البوسنيّة"
+
+msgid "Catalan"
+msgstr "الكتلانيّة"
+
+msgid "Czech"
+msgstr "التشيكيّة"
+
+msgid "Welsh"
+msgstr "الويلز"
+
+msgid "Danish"
+msgstr "الدنماركيّة"
+
+msgid "German"
+msgstr "الألمانيّة"
+
+msgid "Lower Sorbian"
+msgstr "الصربية السفلى"
+
+msgid "Greek"
+msgstr "اليونانيّة"
+
+msgid "English"
+msgstr "الإنجليزيّة"
+
+msgid "Australian English"
+msgstr "الإنجليزية الإسترالية"
+
+msgid "British English"
+msgstr "الإنجليزيّة البريطانيّة"
+
+msgid "Esperanto"
+msgstr "الاسبرانتو"
+
+msgid "Spanish"
+msgstr "الإسبانيّة"
+
+msgid "Argentinian Spanish"
+msgstr "الأسبانية الأرجنتينية"
+
+msgid "Colombian Spanish"
+msgstr "الكولومبية الإسبانية"
+
+msgid "Mexican Spanish"
+msgstr "الأسبانية المكسيكية"
+
+msgid "Nicaraguan Spanish"
+msgstr "الإسبانية النيكاراغوية"
+
+msgid "Venezuelan Spanish"
+msgstr "الإسبانية الفنزويلية"
+
+msgid "Estonian"
+msgstr "الإستونيّة"
+
+msgid "Basque"
+msgstr "الباسك"
+
+msgid "Persian"
+msgstr "الفارسيّة"
+
+msgid "Finnish"
+msgstr "الفنلنديّة"
+
+msgid "French"
+msgstr "الفرنسيّة"
+
+msgid "Frisian"
+msgstr "الفريزيّة"
+
+msgid "Irish"
+msgstr "الإيرلنديّة"
+
+msgid "Scottish Gaelic"
+msgstr "الغيلية الأسكتلندية"
+
+msgid "Galician"
+msgstr "الجليقيّة"
+
+msgid "Hebrew"
+msgstr "العبريّة"
+
+msgid "Hindi"
+msgstr "الهندية"
+
+msgid "Croatian"
+msgstr "الكرواتيّة"
+
+msgid "Upper Sorbian"
+msgstr "الصربية العليا"
+
+msgid "Hungarian"
+msgstr "الهنغاريّة"
+
+msgid "Armenian"
+msgstr "الأرمنية"
+
+msgid "Interlingua"
+msgstr "اللغة الوسيطة"
+
+msgid "Indonesian"
+msgstr "الإندونيسيّة"
+
+msgid "Igbo"
+msgstr "الإيبو"
+
+msgid "Ido"
+msgstr "ايدو"
+
+msgid "Icelandic"
+msgstr "الآيسلنديّة"
+
+msgid "Italian"
+msgstr "الإيطاليّة"
+
+msgid "Japanese"
+msgstr "اليابانيّة"
+
+msgid "Georgian"
+msgstr "الجورجيّة"
+
+msgid "Kabyle"
+msgstr "القبائل"
+
+msgid "Kazakh"
+msgstr "الكازاخستانية"
+
+msgid "Khmer"
+msgstr "الخمر"
+
+msgid "Kannada"
+msgstr "الهنديّة (كنّادا)"
+
+msgid "Korean"
+msgstr "الكوريّة"
+
+msgid "Kyrgyz"
+msgstr "قيرغيز"
+
+msgid "Luxembourgish"
+msgstr "اللوكسمبرجية"
+
+msgid "Lithuanian"
+msgstr "اللتوانيّة"
+
+msgid "Latvian"
+msgstr "اللاتفيّة"
+
+msgid "Macedonian"
+msgstr "المقدونيّة"
+
+msgid "Malayalam"
+msgstr "المايالام"
+
+msgid "Mongolian"
+msgstr "المنغوليّة"
+
+msgid "Marathi"
+msgstr "المهاراتية"
+
+msgid "Malay"
+msgstr ""
+
+msgid "Burmese"
+msgstr "البورمية"
+
+msgid "Norwegian Bokmål"
+msgstr "النرويجية"
+
+msgid "Nepali"
+msgstr "النيبالية"
+
+msgid "Dutch"
+msgstr "الهولنديّة"
+
+msgid "Norwegian Nynorsk"
+msgstr "النينورسك نرويجيّة"
+
+msgid "Ossetic"
+msgstr "الأوسيتيكية"
+
+msgid "Punjabi"
+msgstr "البنجابيّة"
+
+msgid "Polish"
+msgstr "البولنديّة"
+
+msgid "Portuguese"
+msgstr "البرتغاليّة"
+
+msgid "Brazilian Portuguese"
+msgstr "البرتغاليّة البرازيليّة"
+
+msgid "Romanian"
+msgstr "الرومانيّة"
+
+msgid "Russian"
+msgstr "الروسيّة"
+
+msgid "Slovak"
+msgstr "السلوفاكيّة"
+
+msgid "Slovenian"
+msgstr "السلوفانيّة"
+
+msgid "Albanian"
+msgstr "الألبانيّة"
+
+msgid "Serbian"
+msgstr "الصربيّة"
+
+msgid "Serbian Latin"
+msgstr "اللاتينيّة الصربيّة"
+
+msgid "Swedish"
+msgstr "السويديّة"
+
+msgid "Swahili"
+msgstr "السواحلية"
+
+msgid "Tamil"
+msgstr "التاميل"
+
+msgid "Telugu"
+msgstr "التيلوغو"
+
+msgid "Tajik"
+msgstr "طاجيك"
+
+msgid "Thai"
+msgstr "التايلنديّة"
+
+msgid "Turkmen"
+msgstr "تركمان"
+
+msgid "Turkish"
+msgstr "التركيّة"
+
+msgid "Tatar"
+msgstr "التتاريية"
+
+msgid "Udmurt"
+msgstr "الأدمرتية"
+
+msgid "Ukrainian"
+msgstr "الأكرانيّة"
+
+msgid "Urdu"
+msgstr "الأوردو"
+
+msgid "Uzbek"
+msgstr "الأوزبكي"
+
+msgid "Vietnamese"
+msgstr "الفيتناميّة"
+
+msgid "Simplified Chinese"
+msgstr "الصينيّة المبسطة"
+
+msgid "Traditional Chinese"
+msgstr "الصينيّة التقليدية"
+
+msgid "Messages"
+msgstr "الرسائل"
+
+msgid "Site Maps"
+msgstr "خرائط الموقع"
+
+msgid "Static Files"
+msgstr "الملفات الثابتة"
+
+msgid "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 "رقم الصفحة هذا ليس عدداً طبيعياً"
+
+msgid "That page number is less than 1"
+msgstr "رقم الصفحة أقل من 1"
+
+msgid "That page contains no results"
+msgstr "هذه الصفحة لا تحتوي على نتائج"
+
+msgid "Enter a valid value."
+msgstr "أدخِل قيمة صحيحة."
+
+msgid "Enter a valid URL."
+msgstr "أدخِل رابطًا صحيحًا."
+
+msgid "Enter a valid integer."
+msgstr "أدخِل عدداً طبيعياً."
+
+msgid "Enter a valid email address."
+msgstr "أدخِل عنوان بريد إلكتروني صحيح."
+
+#. Translators: "letters" means latin letters: a-z and A-Z.
+msgid ""
+"Enter a valid “slug” consisting of letters, numbers, underscores or hyphens."
+msgstr "أدخل اختصار 'slug' صحيح يتكوّن من أحرف، أرقام، شرطات سفلية وعاديّة."
+
+msgid ""
+"Enter a valid “slug” consisting of Unicode letters, numbers, underscores, or "
+"hyphens."
+msgstr ""
+"أدخل اختصار 'slug' صحيح يتكون من أحرف Unicode أو أرقام أو شرطات سفلية أو "
+"واصلات."
+
+msgid "Enter a valid IPv4 address."
+msgstr "أدخِل عنوان IPv4 صحيح."
+
+msgid "Enter a valid IPv6 address."
+msgstr "أدخِل عنوان IPv6 صحيح."
+
+msgid "Enter a valid IPv4 or IPv6 address."
+msgstr "أدخِل عنوان IPv4 أو عنوان IPv6 صحيح."
+
+msgid "Enter only digits separated by commas."
+msgstr "أدخِل فقط أرقامًا تفصلها الفواصل."
+
+#, python-format
+msgid "Ensure this value is %(limit_value)s (it is %(show_value)s)."
+msgstr "تحقق من أن هذه القيمة هي %(limit_value)s (إنها %(show_value)s)."
+
+#, python-format
+msgid "Ensure this value is less than or equal to %(limit_value)s."
+msgstr "تحقق من أن تكون هذه القيمة أقل من %(limit_value)s أو مساوية لها."
+
+#, python-format
+msgid "Ensure this value is greater than or equal to %(limit_value)s."
+msgstr "تحقق من أن تكون هذه القيمة أكثر من %(limit_value)s أو مساوية لها."
+
+#, python-format
+msgid ""
+"Ensure this value has at least %(limit_value)d character (it has "
+"%(show_value)d)."
+msgid_plural ""
+"Ensure this value has at least %(limit_value)d characters (it has "
+"%(show_value)d)."
+msgstr[0] ""
+"تأكد أن هذه القيمة تحتوي على %(limit_value)d حرف أو رمز على الأقل (هي تحتوي "
+"حالياً على %(show_value)d)."
+msgstr[1] ""
+"تأكد أن هذه القيمة تحتوي على حرف أو رمز %(limit_value)d على الأقل (هي تحتوي "
+"حالياً على %(show_value)d)."
+msgstr[2] ""
+"تأكد أن هذه القيمة تحتوي على %(limit_value)d حرف و رمز على الأقل (هي تحتوي "
+"حالياً على %(show_value)d)."
+msgstr[3] ""
+"تأكد أن هذه القيمة تحتوي على %(limit_value)d حرف أو رمز على الأقل (هي تحتوي "
+"حالياً على %(show_value)d)."
+msgstr[4] ""
+"تأكد أن هذه القيمة تحتوي على %(limit_value)d حرف أو رمز على الأقل (هي تحتوي "
+"حالياً على %(show_value)d)."
+msgstr[5] ""
+"تأكد أن هذه القيمة تحتوي على %(limit_value)d حرف أو رمز على الأقل (هي تحتوي "
+"حالياً على %(show_value)d)."
+
+#, python-format
+msgid ""
+"Ensure this value has at most %(limit_value)d character (it has "
+"%(show_value)d)."
+msgid_plural ""
+"Ensure this value has at most %(limit_value)d characters (it has "
+"%(show_value)d)."
+msgstr[0] ""
+"تأكد أن هذه القيمة تحتوي على %(limit_value)d حرف أو رمز على الأكثر (هي تحتوي "
+"حالياً على %(show_value)d)."
+msgstr[1] ""
+"تأكد أن هذه القيمة تحتوي على حرف أو رمز %(limit_value)d على الأكثر (هي تحتوي "
+"حالياً على %(show_value)d)."
+msgstr[2] ""
+"تأكد أن هذه القيمة تحتوي على %(limit_value)d حرف و رمز على الأكثر (هي تحتوي "
+"حالياً على %(show_value)d)."
+msgstr[3] ""
+"تأكد أن هذه القيمة تحتوي على %(limit_value)d حرف أو رمز على الأكثر (هي تحتوي "
+"حالياً على %(show_value)d)."
+msgstr[4] ""
+"تأكد أن هذه القيمة تحتوي على %(limit_value)d حرف أو رمز على الأكثر (هي تحتوي "
+"حالياً على %(show_value)d)."
+msgstr[5] ""
+"تأكد أن هذه القيمة تحتوي على %(limit_value)d حرف أو رمز على الأكثر (هي تحتوي "
+"حالياً على %(show_value)d)."
+
+msgid "Enter a number."
+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[1] "تحقق من أن تدخل رقم %(max)s لا أكثر."
+msgstr[2] "تحقق من أن تدخل %(max)s رقمين لا أكثر."
+msgstr[3] "تحقق من أن تدخل %(max)s أرقام لا أكثر."
+msgstr[4] "تحقق من أن تدخل %(max)s أرقام لا أكثر."
+msgstr[5] "تحقق من أن تدخل %(max)s أرقام لا أكثر."
+
+#, python-format
+msgid "Ensure that there are no more than %(max)s decimal place."
+msgid_plural "Ensure that there are no more than %(max)s decimal places."
+msgstr[0] "تحقق من أن تدخل %(max)s خانات عشرية لا أكثر."
+msgstr[1] "تحقق من أن تدخل خانة %(max)s عشرية لا أكثر."
+msgstr[2] "تحقق من أن تدخل %(max)s خانتين عشريتين لا أكثر."
+msgstr[3] "تحقق من أن تدخل %(max)s خانات عشرية لا أكثر."
+msgstr[4] "تحقق من أن تدخل %(max)s خانات عشرية لا أكثر."
+msgstr[5] "تحقق من أن تدخل %(max)s خانات عشرية لا أكثر."
+
+#, python-format
+msgid ""
+"Ensure that there are no more than %(max)s digit before the decimal point."
+msgid_plural ""
+"Ensure that there are no more than %(max)s digits before the decimal point."
+msgstr[0] "تحقق من أن تدخل %(max)s أرقام قبل الفاصل العشري لا أكثر."
+msgstr[1] "تحقق من أن تدخل رقم %(max)s قبل الفاصل العشري لا أكثر."
+msgstr[2] "تحقق من أن تدخل %(max)s رقمين قبل الفاصل العشري لا أكثر."
+msgstr[3] "تحقق من أن تدخل %(max)s أرقام قبل الفاصل العشري لا أكثر."
+msgstr[4] "تحقق من أن تدخل %(max)s أرقام قبل الفاصل العشري لا أكثر."
+msgstr[5] "تحقق من أن تدخل %(max)s أرقام قبل الفاصل العشري لا أكثر."
+
+#, python-format
+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 "الأحرف الخالية غير مسموح بها."
+
+msgid "and"
+msgstr "و"
+
+#, python-format
+msgid "%(model_name)s with this %(field_labels)s already exists."
+msgstr "%(model_name)s بهذا %(field_labels)s موجود سلفاً."
+
+#, python-format
+msgid "Value %(value)r is not a valid choice."
+msgstr "القيمة %(value)r ليست خيارا صحيحاً."
+
+msgid "This field cannot be null."
+msgstr "لا يمكن تعيين null كقيمة لهذا الحقل."
+
+msgid "This field cannot be blank."
+msgstr "لا يمكن ترك هذا الحقل فارغاً."
+
+#, python-format
+msgid "%(model_name)s with this %(field_label)s already exists."
+msgstr "النموذج %(model_name)s والحقل %(field_label)s موجود مسبقاً."
+
+#. Translators: The 'lookup_type' is one of 'date', 'year' or 'month'.
+#. Eg: "Title must be unique for pub_date year"
+#, python-format
+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."
+
+#, python-format
+msgid "Field of type: %(field_type)s"
+msgstr "حقل نوع: %(field_type)s"
+
+#, python-format
+msgid "“%(value)s” value must be either True or False."
+msgstr "قيمة '%(value)s' يجب أن تكون True أو False."
+
+#, python-format
+msgid "“%(value)s” value must be either True, False, or None."
+msgstr "قيمة “%(value)s” يجب أن تكون True , False أو None."
+
+msgid "Boolean (Either True or False)"
+msgstr "ثنائي (إما True أو False)"
+
+#, python-format
+msgid "String (up to %(max_length)s)"
+msgstr "سلسلة نص (%(max_length)s كحد أقصى)"
+
+msgid "Comma-separated integers"
+msgstr "أرقام صحيحة مفصولة بفواصل"
+
+#, python-format
+msgid ""
+"“%(value)s” value has an invalid date format. It must be in YYYY-MM-DD "
+"format."
+msgstr ""
+"قيمة '%(value)s' ليست من بُنية تاريخ صحيحة. القيمة يجب ان تكون من البُنية YYYY-"
+"MM-DD."
+
+#, python-format
+msgid ""
+"“%(value)s” value has the correct format (YYYY-MM-DD) but it is an invalid "
+"date."
+msgstr "قيمة '%(value)s' من بُنية صحيحة (YYYY-MM-DD) لكنها تحوي تاريخ غير صحيح."
+
+msgid "Date (without time)"
+msgstr "التاريخ (دون الوقت)"
+
+#, python-format
+msgid ""
+"“%(value)s” value has an invalid format. It must be in YYYY-MM-DD HH:MM[:ss[."
+"uuuuuu]][TZ] format."
+msgstr ""
+"قيمة '%(value)s' ليست من بُنية صحيحة. القيمة يجب ان تكون من البُنية YYYY-MM-DD "
+"HH:MM[:ss[.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' من بُنية صحيحة (YYYY-MM-DD HH:MM[:ss[.uuuuuu]][TZ]) لكنها "
+"تحوي وقت و تاريخ غير صحيحين."
+
+msgid "Date (with time)"
+msgstr "التاريخ (مع الوقت)"
+
+#, python-format
+msgid "“%(value)s” value must be a decimal number."
+msgstr "قيمة '%(value)s' يجب ان تكون عدد عشري."
+
+msgid "Decimal number"
+msgstr "رقم عشري"
+
+#, python-format
+msgid ""
+"“%(value)s” value has an invalid format. It must be in [DD] [[HH:]MM:]ss[."
+"uuuuuu] format."
+msgstr ""
+"قيمة '%(value)s' ليست بنسق صحيح. القيمة يجب ان تكون من التنسيق ([DD] "
+"[[HH:]MM:]ss[.uuuuuu])"
+
+msgid "Duration"
+msgstr "المدّة"
+
+msgid "Email address"
+msgstr "عنوان بريد إلكتروني"
+
+msgid "File path"
+msgstr "مسار الملف"
+
+#, python-format
+msgid "“%(value)s” value must be a float."
+msgstr "قيمة '%(value)s' يجب ان تكون عدد تعويم."
+
+msgid "Floating point number"
+msgstr "رقم فاصلة عائمة"
+
+#, python-format
+msgid "“%(value)s” value must be an integer."
+msgstr "قيمة '%(value)s' يجب ان تكون عدد طبيعي."
+
+msgid "Integer"
+msgstr "عدد صحيح"
+
+msgid "Big (8 byte) integer"
+msgstr "عدد صحيح كبير (8 بايت)"
+
+msgid "Small integer"
+msgstr "عدد صحيح صغير"
+
+msgid "IPv4 address"
+msgstr "عنوان IPv4"
+
+msgid "IP address"
+msgstr "عنوان IP"
+
+#, python-format
+msgid "“%(value)s” value must be either None, True or False."
+msgstr "قيمة '%(value)s' يجب ان تكون None أو True أو False."
+
+msgid "Boolean (Either True, False or None)"
+msgstr "ثنائي (إما True أو False أو None)"
+
+msgid "Positive big integer"
+msgstr "عدد صحيح موجب كبير"
+
+msgid "Positive integer"
+msgstr "عدد صحيح موجب"
+
+msgid "Positive small integer"
+msgstr "عدد صحيح صغير موجب"
+
+#, python-format
+msgid "Slug (up to %(max_length)s)"
+msgstr "Slug (حتى %(max_length)s)"
+
+msgid "Text"
+msgstr "نص"
+
+#, python-format
+msgid ""
+"“%(value)s” value has an invalid format. It must be in HH:MM[:ss[.uuuuuu]] "
+"format."
+msgstr ""
+"قيمة '%(value)s' ليست بنسق صحيح. القيمة يجب ان تكون من التنسيق\n"
+"HH:MM[:ss[.uuuuuu]]"
+
+#, python-format
+msgid ""
+"“%(value)s” value has the correct format (HH:MM[:ss[.uuuuuu]]) but it is an "
+"invalid time."
+msgstr ""
+"قيمة '%(value)s' من بُنية صحيحة (HH:MM[:ss[.uuuuuu]]) لكنها تحوي وقت غير صحيح."
+
+msgid "Time"
+msgstr "وقت"
+
+msgid "URL"
+msgstr "رابط"
+
+msgid "Raw binary data"
+msgstr "البيانات الثنائية الخام"
+
+#, python-format
+msgid "“%(value)s” is not a valid UUID."
+msgstr "القيمة \"%(value)s\" ليست UUID صالح."
+
+msgid "Universally unique identifier"
+msgstr "معرّف فريد عالمياً"
+
+msgid "File"
+msgstr "ملف"
+
+msgid "Image"
+msgstr "صورة"
+
+msgid "A JSON object"
+msgstr "كائن JSON"
+
+msgid "Value must be valid JSON."
+msgstr "يجب أن تكون قيمة JSON صالحة."
+
+#, python-format
+msgid "%(model)s instance with %(field)s %(value)r does not exist."
+msgstr "النموذج %(model)s ذو الحقل و القيمة %(field)s %(value)r غير موجود."
+
+msgid "Foreign Key (type determined by related field)"
+msgstr "الحقل المرتبط (تم تحديد النوع وفقاً للحقل المرتبط)"
+
+msgid "One-to-one relationship"
+msgstr "علاقة واحد إلى واحد"
+
+#, python-format
+msgid "%(from)s-%(to)s relationship"
+msgstr "%(from)s-%(to)s علاقة"
+
+#, python-format
+msgid "%(from)s-%(to)s relationships"
+msgstr "%(from)s-%(to)s علاقات"
+
+msgid "Many-to-many relationship"
+msgstr "علاقة متعدد إلى متعدد"
+
+#. Translators: If found as last label character, these punctuation
+#. characters will prevent the default label_suffix to be appended to the
+#. label
+msgid ":?.!"
+msgstr ":?.!"
+
+msgid "This field is required."
+msgstr "هذا الحقل مطلوب."
+
+msgid "Enter a whole number."
+msgstr "أدخل رقما صحيحا."
+
+msgid "Enter a valid date."
+msgstr "أدخل تاريخاً صحيحاً."
+
+msgid "Enter a valid time."
+msgstr "أدخل وقتاً صحيحاً."
+
+msgid "Enter a valid date/time."
+msgstr "أدخل تاريخاً/وقتاً صحيحاً."
+
+msgid "Enter a valid duration."
+msgstr "أدخل مدّة صحيحة"
+
+#, python-brace-format
+msgid "The number of days must be between {min_days} and {max_days}."
+msgstr "يجب أن يكون عدد الأيام بين {min_days} و {max_days}."
+
+msgid "No file was submitted. Check the encoding type on the form."
+msgstr "لم يتم ارسال ملف، الرجاء التأكد من نوع ترميز الاستمارة."
+
+msgid "No file was submitted."
+msgstr "لم يتم إرسال اي ملف."
+
+msgid "The submitted file is empty."
+msgstr "الملف الذي قمت بإرساله فارغ."
+
+#, python-format
+msgid "Ensure this filename has at most %(max)d character (it has %(length)d)."
+msgid_plural ""
+"Ensure this filename has at most %(max)d characters (it has %(length)d)."
+msgstr[0] ""
+"تأكد أن إسم هذا الملف يحتوي على %(max)d حرف على الأكثر (هو يحتوي الآن على "
+"%(length)d حرف)."
+msgstr[1] ""
+"تأكد أن إسم هذا الملف يحتوي على حرف %(max)d على الأكثر (هو يحتوي الآن على "
+"%(length)d حرف)."
+msgstr[2] ""
+"تأكد أن إسم هذا الملف يحتوي على %(max)d حرفين على الأكثر (هو يحتوي الآن على "
+"%(length)d حرف)."
+msgstr[3] ""
+"تأكد أن إسم هذا الملف يحتوي على %(max)d حرف على الأكثر (هو يحتوي الآن على "
+"%(length)d حرف)."
+msgstr[4] ""
+"تأكد أن إسم هذا الملف يحتوي على %(max)d حرف على الأكثر (هو يحتوي الآن على "
+"%(length)d حرف)."
+msgstr[5] ""
+"تأكد أن إسم هذا الملف يحتوي على %(max)d حرف على الأكثر (هو يحتوي الآن على "
+"%(length)d حرف)."
+
+msgid "Please either submit a file or check the clear checkbox, not both."
+msgstr "رجاءً أرسل ملف أو صح علامة صح عند مربع اختيار \"فارغ\"، وليس كلاهما."
+
+msgid ""
+"Upload a valid image. The file you uploaded was either not an image or a "
+"corrupted image."
+msgstr ""
+"قم برفع صورة صحيحة، الملف الذي قمت برفعه إما أنه ليس ملفا لصورة أو أنه ملف "
+"معطوب."
+
+#, python-format
+msgid "Select a valid choice. %(value)s is not one of the available choices."
+msgstr "انتق خياراً صحيحاً. %(value)s ليس أحد الخيارات المتاحة."
+
+msgid "Enter a list of values."
+msgstr "أدخل قائمة من القيم."
+
+msgid "Enter a complete value."
+msgstr "إدخال قيمة كاملة."
+
+msgid "Enter a valid UUID."
+msgstr "أدخل قيمة UUID صحيحة."
+
+msgid "Enter a valid JSON."
+msgstr "أدخل مدخل JSON صالح."
+
+#. Translators: This is the default suffix added to form field labels
+msgid ":"
+msgstr ":"
+
+#, python-format
+msgid "(Hidden field %(name)s) %(error)s"
+msgstr "(الحقل الخفي %(name)s) %(error)s"
+
+#, 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 ""
+"بيانات نموذج الإدارة مفقودة أو تم العبث بها. الحقول المفقودة: "
+"%(field_names)s. قد تحتاج إلى تقديم تقرير خطأ إذا استمرت المشكلة."
+
+#, python-format
+msgid "Please submit at most %d form."
+msgid_plural "Please submit at most %d forms."
+msgstr[0] "الرجاء إرسال %d إستمارة على الأكثر."
+msgstr[1] "الرجاء إرسال %d إستمارة على الأكثر."
+msgstr[2] "الرجاء إرسال %d إستمارة على الأكثر."
+msgstr[3] "الرجاء إرسال %d إستمارة على الأكثر."
+msgstr[4] "الرجاء إرسال %d إستمارة على الأكثر."
+msgstr[5] "الرجاء إرسال %d إستمارة على الأكثر."
+
+#, python-format
+msgid "Please submit at least %d form."
+msgid_plural "Please submit at least %d forms."
+msgstr[0] "الرجاء إرسال %d إستمارة على الأقل."
+msgstr[1] "الرجاء إرسال %d إستمارة على الأقل."
+msgstr[2] "الرجاء إرسال %d إستمارة على الأقل."
+msgstr[3] "الرجاء إرسال %d إستمارة على الأقل."
+msgstr[4] "الرجاء إرسال %d إستمارة على الأقل."
+msgstr[5] "الرجاء إرسال %d إستمارة على الأقل."
+
+msgid "Order"
+msgstr "الترتيب"
+
+msgid "Delete"
+msgstr "احذف"
+
+#, python-format
+msgid "Please correct the duplicate data for %(field)s."
+msgstr "رجاء صحّح بيانات %(field)s المتكررة."
+
+#, python-format
+msgid "Please correct the duplicate data for %(field)s, which must be unique."
+msgstr "رجاء صحّح بيانات %(field)s المتكررة والتي يجب أن تكون مُميّزة."
+
+#, python-format
+msgid ""
+"Please correct the duplicate data for %(field_name)s which must be unique "
+"for the %(lookup)s in %(date_field)s."
+msgstr ""
+"رجاء صحّح بيانات %(field_name)s المتكررة والتي يجب أن تكون مُميّزة لـ%(lookup)s "
+"في %(date_field)s."
+
+msgid "Please correct the duplicate values below."
+msgstr "رجاءً صحّح القيم المُكرّرة أدناه."
+
+msgid "The inline value did not match the parent instance."
+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 "\"%(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 "تفريغ"
+
+msgid "Currently"
+msgstr "حالياً"
+
+msgid "Change"
+msgstr "عدّل"
+
+msgid "Unknown"
+msgstr "مجهول"
+
+msgid "Yes"
+msgstr "نعم"
+
+msgid "No"
+msgstr "لا"
+
+#. Translators: Please do not add spaces around commas.
+msgid "yes,no,maybe"
+msgstr "نعم,لا,ربما"
+
+#, python-format
+msgid "%(size)d byte"
+msgid_plural "%(size)d bytes"
+msgstr[0] "%(size)d بايت"
+msgstr[1] "بايت واحد"
+msgstr[2] "بايتان"
+msgstr[3] "%(size)d بايتان"
+msgstr[4] "%(size)d بايت"
+msgstr[5] "%(size)d بايت"
+
+#, python-format
+msgid "%s KB"
+msgstr "%s ك.ب"
+
+#, python-format
+msgid "%s MB"
+msgstr "%s م.ب"
+
+#, python-format
+msgid "%s GB"
+msgstr "%s ج.ب"
+
+#, python-format
+msgid "%s TB"
+msgstr "%s ت.ب"
+
+#, python-format
+msgid "%s PB"
+msgstr "%s ب.ب"
+
+msgid "p.m."
+msgstr "م"
+
+msgid "a.m."
+msgstr "ص"
+
+msgid "PM"
+msgstr "م"
+
+msgid "AM"
+msgstr "ص"
+
+msgid "midnight"
+msgstr "منتصف الليل"
+
+msgid "noon"
+msgstr "ظهراً"
+
+msgid "Monday"
+msgstr "الاثنين"
+
+msgid "Tuesday"
+msgstr "الثلاثاء"
+
+msgid "Wednesday"
+msgstr "الأربعاء"
+
+msgid "Thursday"
+msgstr "الخميس"
+
+msgid "Friday"
+msgstr "الجمعة"
+
+msgid "Saturday"
+msgstr "السبت"
+
+msgid "Sunday"
+msgstr "الأحد"
+
+msgid "Mon"
+msgstr "إثنين"
+
+msgid "Tue"
+msgstr "ثلاثاء"
+
+msgid "Wed"
+msgstr "أربعاء"
+
+msgid "Thu"
+msgstr "خميس"
+
+msgid "Fri"
+msgstr "جمعة"
+
+msgid "Sat"
+msgstr "سبت"
+
+msgid "Sun"
+msgstr "أحد"
+
+msgid "January"
+msgstr "يناير"
+
+msgid "February"
+msgstr "فبراير"
+
+msgid "March"
+msgstr "مارس"
+
+msgid "April"
+msgstr "إبريل"
+
+msgid "May"
+msgstr "مايو"
+
+msgid "June"
+msgstr "يونيو"
+
+msgid "July"
+msgstr "يوليو"
+
+msgid "August"
+msgstr "أغسطس"
+
+msgid "September"
+msgstr "سبتمبر"
+
+msgid "October"
+msgstr "أكتوبر"
+
+msgid "November"
+msgstr "نوفمبر"
+
+msgid "December"
+msgstr "ديسمبر"
+
+msgid "jan"
+msgstr "يناير"
+
+msgid "feb"
+msgstr "فبراير"
+
+msgid "mar"
+msgstr "مارس"
+
+msgid "apr"
+msgstr "إبريل"
+
+msgid "may"
+msgstr "مايو"
+
+msgid "jun"
+msgstr "يونيو"
+
+msgid "jul"
+msgstr "يوليو"
+
+msgid "aug"
+msgstr "أغسطس"
+
+msgid "sep"
+msgstr "سبتمبر"
+
+msgid "oct"
+msgstr "أكتوبر"
+
+msgid "nov"
+msgstr "نوفمبر"
+
+msgid "dec"
+msgstr "ديسمبر"
+
+msgctxt "abbrev. month"
+msgid "Jan."
+msgstr "يناير"
+
+msgctxt "abbrev. month"
+msgid "Feb."
+msgstr "فبراير"
+
+msgctxt "abbrev. month"
+msgid "March"
+msgstr "مارس"
+
+msgctxt "abbrev. month"
+msgid "April"
+msgstr "إبريل"
+
+msgctxt "abbrev. month"
+msgid "May"
+msgstr "مايو"
+
+msgctxt "abbrev. month"
+msgid "June"
+msgstr "يونيو"
+
+msgctxt "abbrev. month"
+msgid "July"
+msgstr "يوليو"
+
+msgctxt "abbrev. month"
+msgid "Aug."
+msgstr "أغسطس"
+
+msgctxt "abbrev. month"
+msgid "Sept."
+msgstr "سبتمبر"
+
+msgctxt "abbrev. month"
+msgid "Oct."
+msgstr "أكتوبر"
+
+msgctxt "abbrev. month"
+msgid "Nov."
+msgstr "نوفمبر"
+
+msgctxt "abbrev. month"
+msgid "Dec."
+msgstr "ديسمبر"
+
+msgctxt "alt. month"
+msgid "January"
+msgstr "يناير"
+
+msgctxt "alt. month"
+msgid "February"
+msgstr "فبراير"
+
+msgctxt "alt. month"
+msgid "March"
+msgstr "مارس"
+
+msgctxt "alt. month"
+msgid "April"
+msgstr "أبريل"
+
+msgctxt "alt. month"
+msgid "May"
+msgstr "مايو"
+
+msgctxt "alt. month"
+msgid "June"
+msgstr "يونيو"
+
+msgctxt "alt. month"
+msgid "July"
+msgstr "يوليو"
+
+msgctxt "alt. month"
+msgid "August"
+msgstr "أغسطس"
+
+msgctxt "alt. month"
+msgid "September"
+msgstr "سبتمبر"
+
+msgctxt "alt. month"
+msgid "October"
+msgstr "أكتوبر"
+
+msgctxt "alt. month"
+msgid "November"
+msgstr "نوفمبر"
+
+msgctxt "alt. month"
+msgid "December"
+msgstr "ديسمبر"
+
+msgid "This is not a valid IPv6 address."
+msgstr "هذا ليس عنوان IPv6 صحيح."
+
+#, python-format
+msgctxt "String to return when truncating text"
+msgid "%(truncated_text)s…"
+msgstr "%(truncated_text)s…"
+
+msgid "or"
+msgstr "أو"
+
+#. Translators: This string is used as a separator between list elements
+msgid ", "
+msgstr "، "
+
+#, python-format
+msgid "%(num)d year"
+msgid_plural "%(num)d years"
+msgstr[0] "%(num)d سنة"
+msgstr[1] "%(num)d سنة"
+msgstr[2] "%(num)d سنتين"
+msgstr[3] "%(num)d سنوات"
+msgstr[4] "%(num)d سنوات"
+msgstr[5] "%(num)d سنوات"
+
+#, python-format
+msgid "%(num)d month"
+msgid_plural "%(num)d months"
+msgstr[0] "%(num)d شهر"
+msgstr[1] "%(num)d شهر"
+msgstr[2] "%(num)d شهرين"
+msgstr[3] "%(num)d أشهر"
+msgstr[4] "%(num)d أشهر"
+msgstr[5] "%(num)d أشهر"
+
+#, python-format
+msgid "%(num)d week"
+msgid_plural "%(num)d weeks"
+msgstr[0] "%(num)d أسبوع"
+msgstr[1] "%(num)d أسبوع"
+msgstr[2] "%(num)d أسبوعين"
+msgstr[3] "%(num)d أسابيع"
+msgstr[4] "%(num)d أسابيع"
+msgstr[5] "%(num)d أسابيع"
+
+#, python-format
+msgid "%(num)d day"
+msgid_plural "%(num)d days"
+msgstr[0] "%(num)d يوم"
+msgstr[1] "%(num)d يوم"
+msgstr[2] "%(num)d يومين"
+msgstr[3] "%(num)d أيام"
+msgstr[4] "%(num)d يوم"
+msgstr[5] "%(num)d أيام"
+
+#, python-format
+msgid "%(num)d hour"
+msgid_plural "%(num)d hours"
+msgstr[0] "%(num)d ساعة"
+msgstr[1] "%(num)d ساعة"
+msgstr[2] "%(num)d ساعتين"
+msgstr[3] "%(num)d ساعات"
+msgstr[4] "%(num)d ساعة"
+msgstr[5] "%(num)d ساعات"
+
+#, python-format
+msgid "%(num)d minute"
+msgid_plural "%(num)d minutes"
+msgstr[0] "%(num)d دقيقة"
+msgstr[1] "%(num)d دقيقة"
+msgstr[2] "%(num)d دقيقتين"
+msgstr[3] "%(num)d دقائق"
+msgstr[4] "%(num)d دقيقة"
+msgstr[5] "%(num)d دقيقة"
+
+msgid "Forbidden"
+msgstr "ممنوع"
+
+msgid "CSRF verification failed. Request aborted."
+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 "
+"required for security reasons, to ensure that your browser is not being "
+"hijacked by third parties."
+msgstr ""
+"أنت ترى هذه الرسالة لأن موقع HTTPS هذا يتطلب إرسال “Referer 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” ، فيرجى إعادة تمكينها ، على "
+"الأقل لهذا الموقع ، أو لاتصالات HTTPS ، أو لطلبات “same-origin”."
+
+msgid ""
+"If you are using the <meta name=\"referrer\" content=\"no-referrer\"> tag or "
+"including the “Referrer-Policy: no-referrer” header, please remove them. The "
+"CSRF protection requires the “Referer” header to do strict referer checking. "
+"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”، يرجى إزالتها. تتطلب حماية CSRF أن "
+"يقوم رأس “Referer” بإجراء فحص صارم للمراجع. إذا كنت قلقًا بشأن الخصوصية ، "
+"فاستخدم بدائل مثل <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 عند تقديم النماذج. ملف "
+"الكعكة هذا مطلوب  لأسباب أمنية في تعريف الإرتباط، لضمان أنه لم يتم اختطاف "
+"المتصفح من قبل أطراف أخرى."
+
+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."
+
+msgid "No year specified"
+msgstr "لم تحدد السنة"
+
+msgid "Date out of range"
+msgstr "التاريخ خارج النطاق"
+
+msgid "No month specified"
+msgstr "لم تحدد الشهر"
+
+msgid "No day specified"
+msgstr "لم تحدد اليوم"
+
+msgid "No week specified"
+msgstr "لم تحدد الأسبوع"
+
+#, python-format
+msgid "No %(verbose_name_plural)s available"
+msgstr "لا يوجد %(verbose_name_plural)s"
+
+#, python-format
+msgid ""
+"Future %(verbose_name_plural)s not available because %(class_name)s."
+"allow_future is False."
+msgstr ""
+"التاريخ بالمستقبل %(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 مطابقة لهذا الإستعلام"
+
+msgid "Page is not “last”, nor can it be converted to an int."
+msgstr "الصفحة ليست \"الأخيرة\"، كما لا يمكن تحويل القيمة إلى رقم طبيعي."
+
+#, python-format
+msgid "Invalid page (%(page_number)s): %(message)s"
+msgstr "صفحة خاطئة (%(page_number)s): %(message)s"
+
+#, python-format
+msgid "Empty list and “%(class_name)s.allow_empty” is False."
+msgstr ""
+"قائمة فارغة و\n"
+"\"%(class_name)s.allow_empty\"\n"
+"قيمته False."
+
+msgid "Directory indexes are not allowed here."
+msgstr "لا يسمح لفهارس الدليل هنا."
+
+#, python-format
+msgid "“%(path)s” does not exist"
+msgstr "”%(path)s“ غير موجود"
+
+#, python-format
+msgid "Index of %(directory)s"
+msgstr "فهرس لـ %(directory)s"
+
+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 ""
+"استعراض <a href=\"https://docs.djangoproject.com/en/%(version)s/releases/\" "
+"target=\"_blank\" rel=\"noopener\">ملاحظات الإصدار</a> لجانغو %(version)s"
+
+#, python-format
+msgid ""
+"You are seeing this page because <a href=\"https://docs.djangoproject.com/en/"
+"%(version)s/ref/settings/#debug\" target=\"_blank\" rel=\"noopener"
+"\">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 خاصتك كما أنك لم تقم بإعداد الروابط URLs."
+
+msgid "Django Documentation"
+msgstr "وثائق تعليمات جانغو"
+
+msgid "Topics, references, &amp; how-to’s"
+msgstr "المواضيع و المراجع و التعليمات"
+
+msgid "Tutorial: A Polling App"
+msgstr "برنامج تعليمي: تطبيق تصويت"
+
+msgid "Get started with Django"
+msgstr "إبدأ مع جانغو"
+
+msgid "Django Community"
+msgstr "مجتمع جانغو"
+
+msgid "Connect, get help, or contribute"
+msgstr "اتصل بنا أو احصل على مساعدة أو ساهم"

+ 0 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar/__init__.py


BIN
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar/__pycache__/__init__.cpython-312.pyc


BIN
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar/__pycache__/formats.cpython-312.pyc


+ 21 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar/formats.py

@@ -0,0 +1,21 @@
+# This file is distributed under the same license as the Django package.
+#
+# The *_FORMAT strings use the Django date format syntax,
+# see https://docs.djangoproject.com/en/dev/ref/templates/builtins/#date
+DATE_FORMAT = "j F، Y"
+TIME_FORMAT = "g:i A"
+# DATETIME_FORMAT =
+YEAR_MONTH_FORMAT = "F Y"
+MONTH_DAY_FORMAT = "j F"
+SHORT_DATE_FORMAT = "d‏/m‏/Y"
+# SHORT_DATETIME_FORMAT =
+# FIRST_DAY_OF_WEEK =
+
+# The *_INPUT_FORMATS strings use the Python strftime format syntax,
+# see https://docs.python.org/library/datetime.html#strftime-strptime-behavior
+# DATE_INPUT_FORMATS =
+# TIME_INPUT_FORMATS =
+# DATETIME_INPUT_FORMATS =
+DECIMAL_SEPARATOR = ","
+THOUSAND_SEPARATOR = "."
+# NUMBER_GROUPING =

BIN
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar_DZ/LC_MESSAGES/django.mo


+ 1397 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar_DZ/LC_MESSAGES/django.po

@@ -0,0 +1,1397 @@
+# This file is distributed under the same license as the Django package.
+#
+# Translators:
+# Jihad Bahmaid Al-Halki, 2022
+# Riterix <infosrabah@gmail.com>, 2019-2020
+# Riterix <infosrabah@gmail.com>, 2019
+msgid ""
+msgstr ""
+"Project-Id-Version: django\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2022-05-17 05:23-0500\n"
+"PO-Revision-Date: 2022-07-25 06:49+0000\n"
+"Last-Translator: Jihad Bahmaid Al-Halki\n"
+"Language-Team: Arabic (Algeria) (http://www.transifex.com/django/django/"
+"language/ar_DZ/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: ar_DZ\n"
+"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
+"&& n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"
+
+msgid "Afrikaans"
+msgstr "الإفريقية"
+
+msgid "Arabic"
+msgstr "العربية"
+
+msgid "Algerian Arabic"
+msgstr "العربية الجزائرية"
+
+msgid "Asturian"
+msgstr "الأسترية"
+
+msgid "Azerbaijani"
+msgstr "الأذربيجانية"
+
+msgid "Bulgarian"
+msgstr "البلغارية"
+
+msgid "Belarusian"
+msgstr "البيلاروسية"
+
+msgid "Bengali"
+msgstr "البنغالية"
+
+msgid "Breton"
+msgstr "البريتونية"
+
+msgid "Bosnian"
+msgstr "البوسنية"
+
+msgid "Catalan"
+msgstr "الكتلانية"
+
+msgid "Czech"
+msgstr "التشيكية"
+
+msgid "Welsh"
+msgstr "الويلز"
+
+msgid "Danish"
+msgstr "الدنماركية"
+
+msgid "German"
+msgstr "الألمانية"
+
+msgid "Lower Sorbian"
+msgstr "الصربية السفلى"
+
+msgid "Greek"
+msgstr "اليونانية"
+
+msgid "English"
+msgstr "الإنجليزية"
+
+msgid "Australian English"
+msgstr "الإنجليزية الإسترالية"
+
+msgid "British English"
+msgstr "الإنجليزية البريطانية"
+
+msgid "Esperanto"
+msgstr "الاسبرانتو"
+
+msgid "Spanish"
+msgstr "الإسبانية"
+
+msgid "Argentinian Spanish"
+msgstr "الأسبانية الأرجنتينية"
+
+msgid "Colombian Spanish"
+msgstr "الكولومبية الإسبانية"
+
+msgid "Mexican Spanish"
+msgstr "الأسبانية المكسيكية"
+
+msgid "Nicaraguan Spanish"
+msgstr "الإسبانية النيكاراغوية"
+
+msgid "Venezuelan Spanish"
+msgstr "الإسبانية الفنزويلية"
+
+msgid "Estonian"
+msgstr "الإستونية"
+
+msgid "Basque"
+msgstr "الباسك"
+
+msgid "Persian"
+msgstr "الفارسية"
+
+msgid "Finnish"
+msgstr "الفنلندية"
+
+msgid "French"
+msgstr "الفرنسية"
+
+msgid "Frisian"
+msgstr "الفريزية"
+
+msgid "Irish"
+msgstr "الإيرلندية"
+
+msgid "Scottish Gaelic"
+msgstr "الغيلية الأسكتلندية"
+
+msgid "Galician"
+msgstr "الجليقية"
+
+msgid "Hebrew"
+msgstr "العبرية"
+
+msgid "Hindi"
+msgstr "الهندية"
+
+msgid "Croatian"
+msgstr "الكرواتية"
+
+msgid "Upper Sorbian"
+msgstr "الصربية العليا"
+
+msgid "Hungarian"
+msgstr "الهنغارية"
+
+msgid "Armenian"
+msgstr "الأرمنية"
+
+msgid "Interlingua"
+msgstr "اللغة الوسيطة"
+
+msgid "Indonesian"
+msgstr "الإندونيسية"
+
+msgid "Igbo"
+msgstr "إيبو"
+
+msgid "Ido"
+msgstr "ايدو"
+
+msgid "Icelandic"
+msgstr "الآيسلندية"
+
+msgid "Italian"
+msgstr "الإيطالية"
+
+msgid "Japanese"
+msgstr "اليابانية"
+
+msgid "Georgian"
+msgstr "الجورجية"
+
+msgid "Kabyle"
+msgstr "القبائلية"
+
+msgid "Kazakh"
+msgstr "الكازاخستانية"
+
+msgid "Khmer"
+msgstr "الخمر"
+
+msgid "Kannada"
+msgstr "الهندية (كنّادا)"
+
+msgid "Korean"
+msgstr "الكورية"
+
+msgid "Kyrgyz"
+msgstr "القيرغيزية"
+
+msgid "Luxembourgish"
+msgstr "اللوكسمبرجية"
+
+msgid "Lithuanian"
+msgstr "اللتوانية"
+
+msgid "Latvian"
+msgstr "اللاتفية"
+
+msgid "Macedonian"
+msgstr "المقدونية"
+
+msgid "Malayalam"
+msgstr "المايالام"
+
+msgid "Mongolian"
+msgstr "المنغولية"
+
+msgid "Marathi"
+msgstr "المهاراتية"
+
+msgid "Malay"
+msgstr "ملاي"
+
+msgid "Burmese"
+msgstr "البورمية"
+
+msgid "Norwegian Bokmål"
+msgstr "النرويجية"
+
+msgid "Nepali"
+msgstr "النيبالية"
+
+msgid "Dutch"
+msgstr "الهولندية"
+
+msgid "Norwegian Nynorsk"
+msgstr "النينورسك نرويجية"
+
+msgid "Ossetic"
+msgstr "الأوسيتيكية"
+
+msgid "Punjabi"
+msgstr "البنجابية"
+
+msgid "Polish"
+msgstr "البولندية"
+
+msgid "Portuguese"
+msgstr "البرتغالية"
+
+msgid "Brazilian Portuguese"
+msgstr "البرتغالية البرازيلية"
+
+msgid "Romanian"
+msgstr "الرومانية"
+
+msgid "Russian"
+msgstr "الروسية"
+
+msgid "Slovak"
+msgstr "السلوفاكية"
+
+msgid "Slovenian"
+msgstr "السلوفانية"
+
+msgid "Albanian"
+msgstr "الألبانية"
+
+msgid "Serbian"
+msgstr "الصربية"
+
+msgid "Serbian Latin"
+msgstr "اللاتينية الصربية"
+
+msgid "Swedish"
+msgstr "السويدية"
+
+msgid "Swahili"
+msgstr "السواحلية"
+
+msgid "Tamil"
+msgstr "التاميل"
+
+msgid "Telugu"
+msgstr "التيلوغو"
+
+msgid "Tajik"
+msgstr "الطاجيكية"
+
+msgid "Thai"
+msgstr "التايلندية"
+
+msgid "Turkmen"
+msgstr ""
+
+msgid "Turkish"
+msgstr "التركية"
+
+msgid "Tatar"
+msgstr "التتاريية"
+
+msgid "Udmurt"
+msgstr "الأدمرتية"
+
+msgid "Ukrainian"
+msgstr "الأكرانية"
+
+msgid "Urdu"
+msgstr "الأوردو"
+
+msgid "Uzbek"
+msgstr "الأوزبكية"
+
+msgid "Vietnamese"
+msgstr "الفيتنامية"
+
+msgid "Simplified Chinese"
+msgstr "الصينية المبسطة"
+
+msgid "Traditional Chinese"
+msgstr "الصينية التقليدية"
+
+msgid "Messages"
+msgstr "الرسائل"
+
+msgid "Site Maps"
+msgstr "خرائط الموقع"
+
+msgid "Static Files"
+msgstr "الملفات الثابتة"
+
+msgid "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 "رقم الصفحة ليس عددًا صحيحًا"
+
+msgid "That page number is less than 1"
+msgstr "رقم الصفحة أقل من 1"
+
+msgid "That page contains no results"
+msgstr "هذه الصفحة لا تحتوي على نتائج"
+
+msgid "Enter a valid value."
+msgstr "أدخل قيمة صحيحة."
+
+msgid "Enter a valid URL."
+msgstr "أدخل رابطاً صحيحاً."
+
+msgid "Enter a valid integer."
+msgstr "أدخل رقم صالح."
+
+msgid "Enter a valid email address."
+msgstr "أدخل عنوان بريد إلكتروني صحيح."
+
+#. Translators: "letters" means latin letters: a-z and A-Z.
+msgid ""
+"Enter a valid “slug” consisting of letters, numbers, underscores or hyphens."
+msgstr ""
+"أدخل “slug” صالحة تتكون من أحرف أو أرقام أو الشرطة السفلية أو الواصلات."
+
+msgid ""
+"Enter a valid “slug” consisting of Unicode letters, numbers, underscores, or "
+"hyphens."
+msgstr ""
+"أدخل “slug” صالحة تتكون من أحرف Unicode أو الأرقام أو الشرطة السفلية أو "
+"الواصلات."
+
+msgid "Enter a valid IPv4 address."
+msgstr "أدخل عنوان IPv4 صحيح."
+
+msgid "Enter a valid IPv6 address."
+msgstr "أدخل عنوان IPv6 صحيح."
+
+msgid "Enter a valid IPv4 or IPv6 address."
+msgstr "أدخل عنوان IPv4 أو عنوان IPv6 صحيح."
+
+msgid "Enter only digits separated by commas."
+msgstr "أدخل أرقاما فقط مفصول بينها بفواصل."
+
+#, python-format
+msgid "Ensure this value is %(limit_value)s (it is %(show_value)s)."
+msgstr "تحقق من أن هذه القيمة هي %(limit_value)s (إنها %(show_value)s)."
+
+#, python-format
+msgid "Ensure this value is less than or equal to %(limit_value)s."
+msgstr "تحقق من أن تكون هذه القيمة أقل من %(limit_value)s أو مساوية لها."
+
+#, python-format
+msgid "Ensure this value is greater than or equal to %(limit_value)s."
+msgstr "تحقق من أن تكون هذه القيمة أكثر من %(limit_value)s أو مساوية لها."
+
+#, python-format
+msgid "Ensure this value is a multiple of step size %(limit_value)s."
+msgstr ""
+
+#, python-format
+msgid ""
+"Ensure this value has at least %(limit_value)d character (it has "
+"%(show_value)d)."
+msgid_plural ""
+"Ensure this value has at least %(limit_value)d characters (it has "
+"%(show_value)d)."
+msgstr[0] ""
+"تأكد أن هذه القيمة تحتوي على %(limit_value)d حرف أو رمز على الأقل (هي تحتوي "
+"حالياً على %(show_value)d)."
+msgstr[1] ""
+"تأكد أن هذه القيمة تحتوي على %(limit_value)d حرف أو رمز على الأقل (هي تحتوي "
+"حالياً على %(show_value)d)."
+msgstr[2] ""
+"تأكد أن هذه القيمة تحتوي على %(limit_value)d حرف أو رمز على الأقل (هي تحتوي "
+"حالياً على %(show_value)d)."
+msgstr[3] ""
+"تأكد أن هذه القيمة تحتوي على %(limit_value)d حرف أو رمز على الأقل (هي تحتوي "
+"حالياً على %(show_value)d)."
+msgstr[4] ""
+"تأكد أن هذه القيمة تحتوي على %(limit_value)d حرف أو رمز على الأقل (هي تحتوي "
+"حالياً على %(show_value)d)."
+msgstr[5] ""
+"تأكد أن هذه القيمة تحتوي على %(limit_value)d حرف أو رمز على الأقل (هي تحتوي "
+"حالياً على %(show_value)d)."
+
+#, python-format
+msgid ""
+"Ensure this value has at most %(limit_value)d character (it has "
+"%(show_value)d)."
+msgid_plural ""
+"Ensure this value has at most %(limit_value)d characters (it has "
+"%(show_value)d)."
+msgstr[0] ""
+"تأكد أن هذه القيمة تحتوي على %(limit_value)d حرف أو رمز على الأكثر (هي تحتوي "
+"حالياً على %(show_value)d)."
+msgstr[1] ""
+"تأكد أن هذه القيمة تحتوي على %(limit_value)d حرف أو رمز على الأكثر (هي تحتوي "
+"حالياً على %(show_value)d)."
+msgstr[2] ""
+"تأكد أن هذه القيمة تحتوي على %(limit_value)d حرف أو رمز على الأكثر (هي تحتوي "
+"حالياً على %(show_value)d)."
+msgstr[3] ""
+"تأكد أن هذه القيمة تحتوي على %(limit_value)d حرف أو رمز على الأكثر (هي تحتوي "
+"حالياً على %(show_value)d)."
+msgstr[4] ""
+"تأكد أن هذه القيمة تحتوي على %(limit_value)d حرف أو رمز على الأكثر (هي تحتوي "
+"حالياً على %(show_value)d)."
+msgstr[5] ""
+"تأكد أن هذه القيمة تحتوي على %(limit_value)d حرف أو رمز على الأكثر (هي تحتوي "
+"حالياً على %(show_value)d)."
+
+msgid "Enter a number."
+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[1] "تحقق من أن تدخل رقم %(max)s لا أكثر."
+msgstr[2] "تحقق من أن تدخل %(max)s رقمين لا أكثر."
+msgstr[3] "تحقق من أن تدخل %(max)s أرقام لا أكثر."
+msgstr[4] "تحقق من أن تدخل %(max)s أرقام لا أكثر."
+msgstr[5] "تحقق من أن تدخل %(max)s أرقام لا أكثر."
+
+#, python-format
+msgid "Ensure that there are no more than %(max)s decimal place."
+msgid_plural "Ensure that there are no more than %(max)s decimal places."
+msgstr[0] "تحقق من أن تدخل %(max)s خانات عشرية لا أكثر."
+msgstr[1] "تحقق من أن تدخل %(max)s خانات عشرية لا أكثر."
+msgstr[2] "تحقق من أن تدخل %(max)s خانات عشرية لا أكثر."
+msgstr[3] "تحقق من أن تدخل %(max)s خانات عشرية لا أكثر."
+msgstr[4] "تحقق من أن تدخل %(max)s خانات عشرية لا أكثر."
+msgstr[5] "تحقق من أن تدخل %(max)s خانات عشرية لا أكثر."
+
+#, python-format
+msgid ""
+"Ensure that there are no more than %(max)s digit before the decimal point."
+msgid_plural ""
+"Ensure that there are no more than %(max)s digits before the decimal point."
+msgstr[0] "تحقق من أن تدخل %(max)s أرقام قبل الفاصل العشري لا أكثر."
+msgstr[1] "تحقق من أن تدخل %(max)s أرقام قبل الفاصل العشري لا أكثر."
+msgstr[2] "تحقق من أن تدخل %(max)s أرقام قبل الفاصل العشري لا أكثر."
+msgstr[3] "تحقق من أن تدخل %(max)s أرقام قبل الفاصل العشري لا أكثر."
+msgstr[4] "تحقق من أن تدخل %(max)s أرقام قبل الفاصل العشري لا أكثر."
+msgstr[5] "تحقق من أن تدخل %(max)s أرقام قبل الفاصل العشري لا أكثر."
+
+#, python-format
+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 "لا يُسمح بالأحرف الخالية."
+
+msgid "and"
+msgstr "و"
+
+#, python-format
+msgid "%(model_name)s with this %(field_labels)s already exists."
+msgstr "%(model_name)s بهذا %(field_labels)s موجود سلفاً."
+
+#, python-format
+msgid "Constraint “%(name)s” is violated."
+msgstr ""
+
+#, python-format
+msgid "Value %(value)r is not a valid choice."
+msgstr "القيمة %(value)r ليست خيارا صحيحاً."
+
+msgid "This field cannot be null."
+msgstr "لا يمكن ترك هذا الحقل خالي."
+
+msgid "This field cannot be blank."
+msgstr "لا يمكن ترك هذا الحقل فارغاً."
+
+#, python-format
+msgid "%(model_name)s with this %(field_label)s already exists."
+msgstr "النموذج %(model_name)s والحقل %(field_label)s موجود مسبقاً."
+
+#. Translators: The 'lookup_type' is one of 'date', 'year' or
+#. 'month'. Eg: "Title must be unique for pub_date year"
+#, python-format
+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."
+
+#, python-format
+msgid "Field of type: %(field_type)s"
+msgstr "حقل نوع: %(field_type)s"
+
+#, python-format
+msgid "“%(value)s” value must be either True or False."
+msgstr "يجب أن تكون القيمة “%(value)s” إما True أو False."
+
+#, python-format
+msgid "“%(value)s” value must be either True, False, or None."
+msgstr "يجب أن تكون القيمة “%(value)s” إما True أو False أو None."
+
+msgid "Boolean (Either True or False)"
+msgstr "ثنائي (إما True أو False)"
+
+#, python-format
+msgid "String (up to %(max_length)s)"
+msgstr "سلسلة نص (%(max_length)s كحد أقصى)"
+
+msgid "Comma-separated integers"
+msgstr "أرقام صحيحة مفصولة بفواصل"
+
+#, python-format
+msgid ""
+"“%(value)s” value has an invalid date format. It must be in YYYY-MM-DD "
+"format."
+msgstr ""
+"تحتوي القيمة “%(value)s” على تنسيق تاريخ غير صالح. يجب أن يكون بتنسيق YYYY-"
+"MM-DD."
+
+#, python-format
+msgid ""
+"“%(value)s” value has the correct format (YYYY-MM-DD) but it is an invalid "
+"date."
+msgstr ""
+"تحتوي القيمة “%(value)s” على التنسيق الصحيح (YYYY-MM-DD) ولكنه تاريخ غير "
+"صالح."
+
+msgid "Date (without time)"
+msgstr "التاريخ (دون الوقت)"
+
+#, python-format
+msgid ""
+"“%(value)s” value has an invalid format. It must be in YYYY-MM-DD HH:MM[:ss[."
+"uuuuuu]][TZ] format."
+msgstr ""
+"تحتوي القيمة “%(value)s” على تنسيق غير صالح. يجب أن يكون بتنسيق YYYY-MM-DD "
+"HH: MM [: ss [.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” على التنسيق الصحيح (YYYY-MM-DD HH: MM [: ss [."
+"uuuuuu]] [TZ]) ولكنها تعد تاريخًا / وقتًا غير صالحين."
+
+msgid "Date (with time)"
+msgstr "التاريخ (مع الوقت)"
+
+#, python-format
+msgid "“%(value)s” value must be a decimal number."
+msgstr "يجب أن تكون القيمة “%(value)s” رقمًا عشريًا."
+
+msgid "Decimal number"
+msgstr "رقم عشري"
+
+#, python-format
+msgid ""
+"“%(value)s” value has an invalid format. It must be in [DD] [[HH:]MM:]ss[."
+"uuuuuu] format."
+msgstr ""
+"تحتوي القيمة “%(value)s” على تنسيق غير صالح. يجب أن يكون بتنسيق [DD] [[HH:] "
+"MM:] ss [.uuuuuu]."
+
+msgid "Duration"
+msgstr "المدّة"
+
+msgid "Email address"
+msgstr "عنوان بريد إلكتروني"
+
+msgid "File path"
+msgstr "مسار الملف"
+
+#, python-format
+msgid "“%(value)s” value must be a float."
+msgstr "يجب أن تكون القيمة “%(value)s” قيمة عائمة."
+
+msgid "Floating point number"
+msgstr "رقم فاصلة عائمة"
+
+#, python-format
+msgid "“%(value)s” value must be an integer."
+msgstr "يجب أن تكون القيمة “%(value)s” عددًا صحيحًا."
+
+msgid "Integer"
+msgstr "عدد صحيح"
+
+msgid "Big (8 byte) integer"
+msgstr "عدد صحيح كبير (8 بايت)"
+
+msgid "Small integer"
+msgstr "عدد صحيح صغير"
+
+msgid "IPv4 address"
+msgstr "عنوان IPv4"
+
+msgid "IP address"
+msgstr "عنوان IP"
+
+#, python-format
+msgid "“%(value)s” value must be either None, True or False."
+msgstr "يجب أن تكون القيمة “%(value)s” إما None أو True أو False."
+
+msgid "Boolean (Either True, False or None)"
+msgstr "ثنائي (إما True أو False أو None)"
+
+msgid "Positive big integer"
+msgstr "عدد صحيح كبير موجب"
+
+msgid "Positive integer"
+msgstr "عدد صحيح موجب"
+
+msgid "Positive small integer"
+msgstr "عدد صحيح صغير موجب"
+
+#, python-format
+msgid "Slug (up to %(max_length)s)"
+msgstr "Slug (حتى %(max_length)s)"
+
+msgid "Text"
+msgstr "نص"
+
+#, python-format
+msgid ""
+"“%(value)s” value has an invalid format. It must be in HH:MM[:ss[.uuuuuu]] "
+"format."
+msgstr ""
+"تحتوي القيمة “%(value)s” على تنسيق غير صالح. يجب أن يكون بتنسيق HH: MM [: ss "
+"[.uuuuuu]]."
+
+#, python-format
+msgid ""
+"“%(value)s” value has the correct format (HH:MM[:ss[.uuuuuu]]) but it is an "
+"invalid time."
+msgstr ""
+"تحتوي القيمة “%(value)s” على التنسيق الصحيح (HH: MM [: ss [.uuuuuu]]) ولكنه "
+"وقت غير صالح."
+
+msgid "Time"
+msgstr "وقت"
+
+msgid "URL"
+msgstr "رابط"
+
+msgid "Raw binary data"
+msgstr "البيانات الثنائية الخام"
+
+#, python-format
+msgid "“%(value)s” is not a valid UUID."
+msgstr "“%(value)s” ليس UUID صالحًا."
+
+msgid "Universally unique identifier"
+msgstr "المعرف الفريد العالمي (UUID)"
+
+msgid "File"
+msgstr "ملف"
+
+msgid "Image"
+msgstr "صورة"
+
+msgid "A JSON object"
+msgstr "كائن JSON"
+
+msgid "Value must be valid JSON."
+msgstr "يجب أن تكون قيمة JSON صالحة."
+
+#, python-format
+msgid "%(model)s instance with %(field)s %(value)r does not exist."
+msgstr "النموذج %(model)s ذو الحقل و القيمة %(field)s %(value)r غير موجود."
+
+msgid "Foreign Key (type determined by related field)"
+msgstr "الحقل المرتبط (تم تحديد النوع وفقاً للحقل المرتبط)"
+
+msgid "One-to-one relationship"
+msgstr "علاقة واحد إلى واحد"
+
+#, python-format
+msgid "%(from)s-%(to)s relationship"
+msgstr "%(from)s-%(to)s علاقة"
+
+#, python-format
+msgid "%(from)s-%(to)s relationships"
+msgstr "%(from)s-%(to)s علاقات"
+
+msgid "Many-to-many relationship"
+msgstr "علاقة متعدد إلى متعدد"
+
+#. Translators: If found as last label character, these punctuation
+#. characters will prevent the default label_suffix to be appended to the
+#. label
+msgid ":?.!"
+msgstr ":?.!"
+
+msgid "This field is required."
+msgstr "هذا الحقل مطلوب."
+
+msgid "Enter a whole number."
+msgstr "أدخل رقما صحيحا."
+
+msgid "Enter a valid date."
+msgstr "أدخل تاريخاً صحيحاً."
+
+msgid "Enter a valid time."
+msgstr "أدخل وقتاً صحيحاً."
+
+msgid "Enter a valid date/time."
+msgstr "أدخل تاريخاً/وقتاً صحيحاً."
+
+msgid "Enter a valid duration."
+msgstr "أدخل مدّة صحيحة"
+
+#, python-brace-format
+msgid "The number of days must be between {min_days} and {max_days}."
+msgstr "يجب أن يتراوح عدد الأيام بين {min_days} و {max_days}."
+
+msgid "No file was submitted. Check the encoding type on the form."
+msgstr "لم يتم ارسال ملف، الرجاء التأكد من نوع ترميز الاستمارة."
+
+msgid "No file was submitted."
+msgstr "لم يتم إرسال اي ملف."
+
+msgid "The submitted file is empty."
+msgstr "الملف الذي قمت بإرساله فارغ."
+
+#, python-format
+msgid "Ensure this filename has at most %(max)d character (it has %(length)d)."
+msgid_plural ""
+"Ensure this filename has at most %(max)d characters (it has %(length)d)."
+msgstr[0] ""
+"تأكد أن إسم هذا الملف يحتوي على %(max)d حرف على الأكثر (هو يحتوي الآن على "
+"%(length)d حرف)."
+msgstr[1] ""
+"تأكد أن إسم هذا الملف يحتوي على %(max)d حرف على الأكثر (هو يحتوي الآن على "
+"%(length)d حرف)."
+msgstr[2] ""
+"تأكد أن إسم هذا الملف يحتوي على %(max)d حرف على الأكثر (هو يحتوي الآن على "
+"%(length)d حرف)."
+msgstr[3] ""
+"تأكد أن إسم هذا الملف يحتوي على %(max)d حرف على الأكثر (هو يحتوي الآن على "
+"%(length)d حرف)."
+msgstr[4] ""
+"تأكد أن إسم هذا الملف يحتوي على %(max)d حرف على الأكثر (هو يحتوي الآن على "
+"%(length)d حرف)."
+msgstr[5] ""
+"تأكد أن إسم هذا الملف يحتوي على %(max)d حرف على الأكثر (هو يحتوي الآن على "
+"%(length)d حرف)."
+
+msgid "Please either submit a file or check the clear checkbox, not both."
+msgstr ""
+"رجاءً أرسل ملف أو صح علامة صح عند مربع اختيار \\\"فارغ\\\"، وليس كلاهما."
+
+msgid ""
+"Upload a valid image. The file you uploaded was either not an image or a "
+"corrupted image."
+msgstr ""
+"قم برفع صورة صحيحة، الملف الذي قمت برفعه إما أنه ليس ملفا لصورة أو أنه ملف "
+"معطوب."
+
+#, python-format
+msgid "Select a valid choice. %(value)s is not one of the available choices."
+msgstr "انتق خياراً صحيحاً. %(value)s ليس أحد الخيارات المتاحة."
+
+msgid "Enter a list of values."
+msgstr "أدخل قائمة من القيم."
+
+msgid "Enter a complete value."
+msgstr "إدخال قيمة كاملة."
+
+msgid "Enter a valid UUID."
+msgstr "أدخل قيمة UUID صحيحة."
+
+msgid "Enter a valid JSON."
+msgstr "ادخل كائن JSON صالح."
+
+#. Translators: This is the default suffix added to form field labels
+msgid ":"
+msgstr ":"
+
+#, python-format
+msgid "(Hidden field %(name)s) %(error)s"
+msgstr "(الحقل الخفي %(name)s) %(error)s"
+
+#, 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 ""
+"نموذج بيانات الإدارة مفقود أو تم العبث به. %(field_names)sمن الحقول مفقود. "
+"قد تحتاج إلى رفع تقرير بالمشكلة إن استمرت الحالة."
+
+#, python-format
+msgid "Please submit at most %(num)d form."
+msgid_plural "Please submit at most %(num)d forms."
+msgstr[0] ""
+msgstr[1] ""
+msgstr[2] ""
+msgstr[3] ""
+msgstr[4] ""
+msgstr[5] ""
+
+#, python-format
+msgid "Please submit at least %(num)d form."
+msgid_plural "Please submit at least %(num)d forms."
+msgstr[0] ""
+msgstr[1] ""
+msgstr[2] ""
+msgstr[3] ""
+msgstr[4] ""
+msgstr[5] ""
+
+msgid "Order"
+msgstr "الترتيب"
+
+msgid "Delete"
+msgstr "احذف"
+
+#, python-format
+msgid "Please correct the duplicate data for %(field)s."
+msgstr "رجاء صحّح بيانات %(field)s المتكررة."
+
+#, python-format
+msgid "Please correct the duplicate data for %(field)s, which must be unique."
+msgstr "رجاء صحّح بيانات %(field)s المتكررة والتي يجب أن تكون مُميّزة."
+
+#, python-format
+msgid ""
+"Please correct the duplicate data for %(field_name)s which must be unique "
+"for the %(lookup)s in %(date_field)s."
+msgstr ""
+"رجاء صحّح بيانات %(field_name)s المتكررة والتي يجب أن تكون مُميّزة لـ%(lookup)s "
+"في %(date_field)s."
+
+msgid "Please correct the duplicate values below."
+msgstr "رجاءً صحّح القيم المُكرّرة أدناه."
+
+msgid "The inline value did not match the parent instance."
+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 "“%(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 "تفريغ"
+
+msgid "Currently"
+msgstr "حالياً"
+
+msgid "Change"
+msgstr "عدّل"
+
+msgid "Unknown"
+msgstr "مجهول"
+
+msgid "Yes"
+msgstr "نعم"
+
+msgid "No"
+msgstr "لا"
+
+#. Translators: Please do not add spaces around commas.
+msgid "yes,no,maybe"
+msgstr "نعم,لا,ربما"
+
+#, python-format
+msgid "%(size)d byte"
+msgid_plural "%(size)d bytes"
+msgstr[0] "%(size)d بايت"
+msgstr[1] "%(size)d بايت واحد "
+msgstr[2] "%(size)d بايتان"
+msgstr[3] "%(size)d بايت"
+msgstr[4] "%(size)d بايت"
+msgstr[5] "%(size)d بايت"
+
+#, python-format
+msgid "%s KB"
+msgstr "%s ك.ب"
+
+#, python-format
+msgid "%s MB"
+msgstr "%s م.ب"
+
+#, python-format
+msgid "%s GB"
+msgstr "%s ج.ب"
+
+#, python-format
+msgid "%s TB"
+msgstr "%s ت.ب"
+
+#, python-format
+msgid "%s PB"
+msgstr "%s ب.ب"
+
+msgid "p.m."
+msgstr "م"
+
+msgid "a.m."
+msgstr "ص"
+
+msgid "PM"
+msgstr "م"
+
+msgid "AM"
+msgstr "ص"
+
+msgid "midnight"
+msgstr "منتصف الليل"
+
+msgid "noon"
+msgstr "ظهراً"
+
+msgid "Monday"
+msgstr "الاثنين"
+
+msgid "Tuesday"
+msgstr "الثلاثاء"
+
+msgid "Wednesday"
+msgstr "الأربعاء"
+
+msgid "Thursday"
+msgstr "الخميس"
+
+msgid "Friday"
+msgstr "الجمعة"
+
+msgid "Saturday"
+msgstr "السبت"
+
+msgid "Sunday"
+msgstr "الأحد"
+
+msgid "Mon"
+msgstr "إثنين"
+
+msgid "Tue"
+msgstr "ثلاثاء"
+
+msgid "Wed"
+msgstr "أربعاء"
+
+msgid "Thu"
+msgstr "خميس"
+
+msgid "Fri"
+msgstr "جمعة"
+
+msgid "Sat"
+msgstr "سبت"
+
+msgid "Sun"
+msgstr "أحد"
+
+msgid "January"
+msgstr "جانفي"
+
+msgid "February"
+msgstr "فيفري"
+
+msgid "March"
+msgstr "مارس"
+
+msgid "April"
+msgstr "أفريل"
+
+msgid "May"
+msgstr "ماي"
+
+msgid "June"
+msgstr "جوان"
+
+msgid "July"
+msgstr "جويليه"
+
+msgid "August"
+msgstr "أوت"
+
+msgid "September"
+msgstr "سبتمبر"
+
+msgid "October"
+msgstr "أكتوبر"
+
+msgid "November"
+msgstr "نوفمبر"
+
+msgid "December"
+msgstr "ديسمبر"
+
+msgid "jan"
+msgstr "جانفي"
+
+msgid "feb"
+msgstr "فيفري"
+
+msgid "mar"
+msgstr "مارس"
+
+msgid "apr"
+msgstr "أفريل"
+
+msgid "may"
+msgstr "ماي"
+
+msgid "jun"
+msgstr "جوان"
+
+msgid "jul"
+msgstr "جويليه"
+
+msgid "aug"
+msgstr "أوت"
+
+msgid "sep"
+msgstr "سبتمبر"
+
+msgid "oct"
+msgstr "أكتوبر"
+
+msgid "nov"
+msgstr "نوفمبر"
+
+msgid "dec"
+msgstr "ديسمبر"
+
+msgctxt "abbrev. month"
+msgid "Jan."
+msgstr "جانفي"
+
+msgctxt "abbrev. month"
+msgid "Feb."
+msgstr "فيفري"
+
+msgctxt "abbrev. month"
+msgid "March"
+msgstr "مارس"
+
+msgctxt "abbrev. month"
+msgid "April"
+msgstr "أفريل"
+
+msgctxt "abbrev. month"
+msgid "May"
+msgstr "ماي"
+
+msgctxt "abbrev. month"
+msgid "June"
+msgstr "جوان"
+
+msgctxt "abbrev. month"
+msgid "July"
+msgstr "جويليه"
+
+msgctxt "abbrev. month"
+msgid "Aug."
+msgstr "أوت"
+
+msgctxt "abbrev. month"
+msgid "Sept."
+msgstr "سبتمبر"
+
+msgctxt "abbrev. month"
+msgid "Oct."
+msgstr "أكتوبر"
+
+msgctxt "abbrev. month"
+msgid "Nov."
+msgstr "نوفمبر"
+
+msgctxt "abbrev. month"
+msgid "Dec."
+msgstr "ديسمبر"
+
+msgctxt "alt. month"
+msgid "January"
+msgstr "جانفي"
+
+msgctxt "alt. month"
+msgid "February"
+msgstr "فيفري"
+
+msgctxt "alt. month"
+msgid "March"
+msgstr "مارس"
+
+msgctxt "alt. month"
+msgid "April"
+msgstr "أفريل"
+
+msgctxt "alt. month"
+msgid "May"
+msgstr "ماي"
+
+msgctxt "alt. month"
+msgid "June"
+msgstr "جوان"
+
+msgctxt "alt. month"
+msgid "July"
+msgstr "جويليه"
+
+msgctxt "alt. month"
+msgid "August"
+msgstr "أوت"
+
+msgctxt "alt. month"
+msgid "September"
+msgstr "سبتمبر"
+
+msgctxt "alt. month"
+msgid "October"
+msgstr "أكتوبر"
+
+msgctxt "alt. month"
+msgid "November"
+msgstr "نوفمبر"
+
+msgctxt "alt. month"
+msgid "December"
+msgstr "ديسمبر"
+
+msgid "This is not a valid IPv6 address."
+msgstr "هذا ليس عنوان IPv6 صحيح."
+
+#, python-format
+msgctxt "String to return when truncating text"
+msgid "%(truncated_text)s…"
+msgstr "%(truncated_text)s…"
+
+msgid "or"
+msgstr "أو"
+
+#. Translators: This string is used as a separator between list elements
+msgid ", "
+msgstr "، "
+
+#, python-format
+msgid "%(num)d year"
+msgid_plural "%(num)d years"
+msgstr[0] ""
+msgstr[1] ""
+msgstr[2] ""
+msgstr[3] ""
+msgstr[4] ""
+msgstr[5] ""
+
+#, python-format
+msgid "%(num)d month"
+msgid_plural "%(num)d months"
+msgstr[0] ""
+msgstr[1] ""
+msgstr[2] ""
+msgstr[3] ""
+msgstr[4] ""
+msgstr[5] ""
+
+#, python-format
+msgid "%(num)d week"
+msgid_plural "%(num)d weeks"
+msgstr[0] ""
+msgstr[1] ""
+msgstr[2] ""
+msgstr[3] ""
+msgstr[4] ""
+msgstr[5] ""
+
+#, python-format
+msgid "%(num)d day"
+msgid_plural "%(num)d days"
+msgstr[0] ""
+msgstr[1] ""
+msgstr[2] ""
+msgstr[3] ""
+msgstr[4] ""
+msgstr[5] ""
+
+#, python-format
+msgid "%(num)d hour"
+msgid_plural "%(num)d hours"
+msgstr[0] ""
+msgstr[1] ""
+msgstr[2] ""
+msgstr[3] ""
+msgstr[4] ""
+msgstr[5] ""
+
+#, python-format
+msgid "%(num)d minute"
+msgid_plural "%(num)d minutes"
+msgstr[0] ""
+msgstr[1] ""
+msgstr[2] ""
+msgstr[3] ""
+msgstr[4] ""
+msgstr[5] ""
+
+msgid "Forbidden"
+msgstr "ممنوع"
+
+msgid "CSRF verification failed. Request aborted."
+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 "
+"required for security reasons, to ensure that your browser is not being "
+"hijacked by third parties."
+msgstr ""
+"أنت ترى هذه الرسالة لأن موقع HTTPS هذا يتطلب \"عنوان مرجعي\" ليتم إرساله "
+"بواسطة متصفح الويب الخاص بك ، ولكن لم يتم إرسال أي شيء. هذا العنوان مطلوب "
+"لأسباب أمنية ، لضمان عدم اختراق متصفحك من قبل أطراف أخرى."
+
+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” ، فالرجاء إعادة "
+"تمكينها ، على الأقل لهذا الموقع ، أو لاتصالات HTTPS ، أو لطلبات “same-"
+"origin”."
+
+msgid ""
+"If you are using the <meta name=\"referrer\" content=\"no-referrer\"> tag or "
+"including the “Referrer-Policy: no-referrer” header, please remove them. The "
+"CSRF protection requires the “Referer” header to do strict referer checking. "
+"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” ، فيرجى إزالتها. تتطلب حماية "
+"CSRF رأس “Referer” القيام بالتحقق من “strict referer”. إذا كنت مهتمًا "
+"بالخصوصية ، فاستخدم بدائل مثل <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 Cookie عند "
+"إرسال النماذج. ملف تعريف ارتباط Cookie هذا مطلوب لأسباب أمنية ، لضمان عدم "
+"اختطاف متصفحك من قبل أطراف ثالثة."
+
+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 ""
+"إذا قمت بتكوين المستعرض الخاص بك لتعطيل ملفات تعريف الارتباط Cookies ، يرجى "
+"إعادة تمكينها ، على الأقل لهذا الموقع ، أو لطلبات “same-origin”."
+
+msgid "More information is available with DEBUG=True."
+msgstr "يتوفر مزيد من المعلومات عند ضبط الخيار DEBUG=True."
+
+msgid "No year specified"
+msgstr "لم تحدد السنة"
+
+msgid "Date out of range"
+msgstr "تاريخ خارج النطاق"
+
+msgid "No month specified"
+msgstr "لم تحدد الشهر"
+
+msgid "No day specified"
+msgstr "لم تحدد اليوم"
+
+msgid "No week specified"
+msgstr "لم تحدد الأسبوع"
+
+#, python-format
+msgid "No %(verbose_name_plural)s available"
+msgstr "لا يوجد %(verbose_name_plural)s"
+
+#, python-format
+msgid ""
+"Future %(verbose_name_plural)s not available because %(class_name)s."
+"allow_future is False."
+msgstr ""
+"التاريخ بالمستقبل %(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 مطابقة لهذا الإستعلام"
+
+msgid "Page is not “last”, nor can it be converted to an int."
+msgstr "الصفحة ليست \"الأخيرة\" ، ولا يمكن تحويلها إلى عدد صحيح."
+
+#, python-format
+msgid "Invalid page (%(page_number)s): %(message)s"
+msgstr "صفحة خاطئة (%(page_number)s): %(message)s"
+
+#, python-format
+msgid "Empty list and “%(class_name)s.allow_empty” is False."
+msgstr "القائمة فارغة و “%(class_name)s.allow_empty” هي False."
+
+msgid "Directory indexes are not allowed here."
+msgstr "لا يسمح لفهارس الدليل هنا."
+
+#, python-format
+msgid "“%(path)s” does not exist"
+msgstr "“%(path)s” غير موجود"
+
+#, python-format
+msgid "Index of %(directory)s"
+msgstr "فهرس لـ %(directory)s"
+
+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 ""
+"عرض <a href=\\\"https://docs.djangoproject.com/en/%(version)s/releases/\\\" "
+"target=\\\"_blank\\\" rel=\\\"noopener\\\"> ملاحظات الإصدار </a> ل جانغو "
+"%(version)s"
+
+#, python-format
+msgid ""
+"You are seeing this page because <a href=\"https://docs.djangoproject.com/en/"
+"%(version)s/ref/settings/#debug\" target=\"_blank\" rel=\"noopener"
+"\">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> موجود في ملف الإعدادات الخاص بك ولم تقم بتكوين أي "
+"عناوين URL."
+
+msgid "Django Documentation"
+msgstr "توثيق جانغو"
+
+msgid "Topics, references, &amp; how-to’s"
+msgstr "الموضوعات ، المراجع، &amp; الكيفية"
+
+msgid "Tutorial: A Polling App"
+msgstr "البرنامج التعليمي: تطبيق الاقتراع"
+
+msgid "Get started with Django"
+msgstr "الخطوات الأولى مع جانغو"
+
+msgid "Django Community"
+msgstr "مجتمع جانغو"
+
+msgid "Connect, get help, or contribute"
+msgstr "الاتصال، الحصول على المساعدة أو المساهمة"

+ 0 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar_DZ/__init__.py


BIN
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar_DZ/__pycache__/__init__.cpython-312.pyc


BIN
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar_DZ/__pycache__/formats.cpython-312.pyc


+ 29 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ar_DZ/formats.py

@@ -0,0 +1,29 @@
+# This file is distributed under the same license as the Django package.
+#
+# The *_FORMAT strings use the Django date format syntax,
+# see https://docs.djangoproject.com/en/dev/ref/templates/builtins/#date
+DATE_FORMAT = "j F Y"
+TIME_FORMAT = "H:i"
+DATETIME_FORMAT = "j F Y H:i"
+YEAR_MONTH_FORMAT = "F Y"
+MONTH_DAY_FORMAT = "j F"
+SHORT_DATE_FORMAT = "j F Y"
+SHORT_DATETIME_FORMAT = "j F Y H:i"
+FIRST_DAY_OF_WEEK = 0  # Sunday
+
+# The *_INPUT_FORMATS strings use the Python strftime format syntax,
+# see https://docs.python.org/library/datetime.html#strftime-strptime-behavior
+DATE_INPUT_FORMATS = [
+    "%Y/%m/%d",  # '2006/10/25'
+]
+TIME_INPUT_FORMATS = [
+    "%H:%M",  # '14:30
+    "%H:%M:%S",  # '14:30:59'
+]
+DATETIME_INPUT_FORMATS = [
+    "%Y/%m/%d %H:%M",  # '2006/10/25 14:30'
+    "%Y/%m/%d %H:%M:%S",  # '2006/10/25 14:30:59'
+]
+DECIMAL_SEPARATOR = ","
+THOUSAND_SEPARATOR = "."
+NUMBER_GROUPING = 3

BIN
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ast/LC_MESSAGES/django.mo


+ 1237 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/ast/LC_MESSAGES/django.po

@@ -0,0 +1,1237 @@
+# This file is distributed under the same license as the Django package.
+#
+# Translators:
+# Ḷḷumex03 <tornes@opmbx.org>, 2014
+msgid ""
+msgstr ""
+"Project-Id-Version: django\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2019-09-27 22:40+0200\n"
+"PO-Revision-Date: 2019-11-05 00:38+0000\n"
+"Last-Translator: Ramiro Morales\n"
+"Language-Team: Asturian (http://www.transifex.com/django/django/language/"
+"ast/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: ast\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+msgid "Afrikaans"
+msgstr "Afrikáans"
+
+msgid "Arabic"
+msgstr "Árabe"
+
+msgid "Asturian"
+msgstr ""
+
+msgid "Azerbaijani"
+msgstr "Azerbaixanu"
+
+msgid "Bulgarian"
+msgstr "Búlgaru"
+
+msgid "Belarusian"
+msgstr "Bielorrusu"
+
+msgid "Bengali"
+msgstr "Bengalí"
+
+msgid "Breton"
+msgstr "Bretón"
+
+msgid "Bosnian"
+msgstr "Bosniu"
+
+msgid "Catalan"
+msgstr "Catalán"
+
+msgid "Czech"
+msgstr "Checu"
+
+msgid "Welsh"
+msgstr "Galés"
+
+msgid "Danish"
+msgstr "Danés"
+
+msgid "German"
+msgstr "Alemán"
+
+msgid "Lower Sorbian"
+msgstr ""
+
+msgid "Greek"
+msgstr "Griegu"
+
+msgid "English"
+msgstr "Inglés"
+
+msgid "Australian English"
+msgstr ""
+
+msgid "British English"
+msgstr "Inglés británicu"
+
+msgid "Esperanto"
+msgstr "Esperantu"
+
+msgid "Spanish"
+msgstr "Castellán"
+
+msgid "Argentinian Spanish"
+msgstr "Español arxentín"
+
+msgid "Colombian Spanish"
+msgstr ""
+
+msgid "Mexican Spanish"
+msgstr "Español mexicanu"
+
+msgid "Nicaraguan Spanish"
+msgstr "Español nicaraguanu"
+
+msgid "Venezuelan Spanish"
+msgstr "Español venezolanu"
+
+msgid "Estonian"
+msgstr "Estoniu"
+
+msgid "Basque"
+msgstr "Vascu"
+
+msgid "Persian"
+msgstr "Persa"
+
+msgid "Finnish"
+msgstr "Finés"
+
+msgid "French"
+msgstr "Francés"
+
+msgid "Frisian"
+msgstr "Frisón"
+
+msgid "Irish"
+msgstr "Irlandés"
+
+msgid "Scottish Gaelic"
+msgstr ""
+
+msgid "Galician"
+msgstr "Gallegu"
+
+msgid "Hebrew"
+msgstr "Hebréu"
+
+msgid "Hindi"
+msgstr "Hindi"
+
+msgid "Croatian"
+msgstr "Croata"
+
+msgid "Upper Sorbian"
+msgstr ""
+
+msgid "Hungarian"
+msgstr "Húngaru"
+
+msgid "Armenian"
+msgstr ""
+
+msgid "Interlingua"
+msgstr "Interlingua"
+
+msgid "Indonesian"
+msgstr "Indonesiu"
+
+msgid "Ido"
+msgstr ""
+
+msgid "Icelandic"
+msgstr "Islandés"
+
+msgid "Italian"
+msgstr "Italianu"
+
+msgid "Japanese"
+msgstr "Xaponés"
+
+msgid "Georgian"
+msgstr "Xeorxanu"
+
+msgid "Kabyle"
+msgstr ""
+
+msgid "Kazakh"
+msgstr "Kazakh"
+
+msgid "Khmer"
+msgstr "Khmer"
+
+msgid "Kannada"
+msgstr "Canarés"
+
+msgid "Korean"
+msgstr "Coreanu"
+
+msgid "Luxembourgish"
+msgstr "Luxemburgués"
+
+msgid "Lithuanian"
+msgstr "Lituanu"
+
+msgid "Latvian"
+msgstr "Letón"
+
+msgid "Macedonian"
+msgstr "Macedoniu"
+
+msgid "Malayalam"
+msgstr "Malayalam"
+
+msgid "Mongolian"
+msgstr "Mongol"
+
+msgid "Marathi"
+msgstr ""
+
+msgid "Burmese"
+msgstr "Birmanu"
+
+msgid "Norwegian Bokmål"
+msgstr ""
+
+msgid "Nepali"
+msgstr "Nepalí"
+
+msgid "Dutch"
+msgstr "Holandés"
+
+msgid "Norwegian Nynorsk"
+msgstr "Nynorsk noruegu"
+
+msgid "Ossetic"
+msgstr "Osetiu"
+
+msgid "Punjabi"
+msgstr "Punjabi"
+
+msgid "Polish"
+msgstr "Polacu"
+
+msgid "Portuguese"
+msgstr "Portugués"
+
+msgid "Brazilian Portuguese"
+msgstr "Portugués brasileñu"
+
+msgid "Romanian"
+msgstr "Rumanu"
+
+msgid "Russian"
+msgstr "Rusu"
+
+msgid "Slovak"
+msgstr "Eslovacu"
+
+msgid "Slovenian"
+msgstr "Eslovenu"
+
+msgid "Albanian"
+msgstr "Albanu"
+
+msgid "Serbian"
+msgstr "Serbiu"
+
+msgid "Serbian Latin"
+msgstr "Serbiu llatín"
+
+msgid "Swedish"
+msgstr "Suecu"
+
+msgid "Swahili"
+msgstr "Suaḥili"
+
+msgid "Tamil"
+msgstr "Tamil"
+
+msgid "Telugu"
+msgstr "Telugu"
+
+msgid "Thai"
+msgstr "Tailandés"
+
+msgid "Turkish"
+msgstr "Turcu"
+
+msgid "Tatar"
+msgstr "Tatar"
+
+msgid "Udmurt"
+msgstr "Udmurtu"
+
+msgid "Ukrainian"
+msgstr "Ucranianu"
+
+msgid "Urdu"
+msgstr "Urdu"
+
+msgid "Uzbek"
+msgstr ""
+
+msgid "Vietnamese"
+msgstr "Vietnamita"
+
+msgid "Simplified Chinese"
+msgstr "Chinu simplificáu"
+
+msgid "Traditional Chinese"
+msgstr "Chinu tradicional"
+
+msgid "Messages"
+msgstr ""
+
+msgid "Site Maps"
+msgstr ""
+
+msgid "Static Files"
+msgstr ""
+
+msgid "Syndication"
+msgstr ""
+
+msgid "That page number is not an integer"
+msgstr ""
+
+msgid "That page number is less than 1"
+msgstr ""
+
+msgid "That page contains no results"
+msgstr ""
+
+msgid "Enter a valid value."
+msgstr "Introduz un valor válidu."
+
+msgid "Enter a valid URL."
+msgstr "Introduz una URL válida."
+
+msgid "Enter a valid integer."
+msgstr ""
+
+msgid "Enter a valid email address."
+msgstr "Introduz una direición de corréu válida."
+
+#. Translators: "letters" means latin letters: a-z and A-Z.
+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 "Introduz una direición IPv4 válida."
+
+msgid "Enter a valid IPv6 address."
+msgstr "Introduz una direición IPv6 válida."
+
+msgid "Enter a valid IPv4 or IPv6 address."
+msgstr "Introduz una direición IPv4 o IPv6 válida."
+
+msgid "Enter only digits separated by commas."
+msgstr "Introduz namái díxitos separtaos per comes."
+
+#, python-format
+msgid "Ensure this value is %(limit_value)s (it is %(show_value)s)."
+msgstr "Asegúrate qu'esti valor ye %(limit_value)s (ye %(show_value)s)."
+
+#, python-format
+msgid "Ensure this value is less than or equal to %(limit_value)s."
+msgstr "Asegúrate qu'esti valor ye menor o igual a %(limit_value)s."
+
+#, python-format
+msgid "Ensure this value is greater than or equal to %(limit_value)s."
+msgstr "Asegúrate qu'esti valor ye mayor o igual a %(limit_value)s."
+
+#, python-format
+msgid ""
+"Ensure this value has at least %(limit_value)d character (it has "
+"%(show_value)d)."
+msgid_plural ""
+"Ensure this value has at least %(limit_value)d characters (it has "
+"%(show_value)d)."
+msgstr[0] ""
+"Asegúrate qu'esti valor tien polo menos %(limit_value)d caráuter (tien "
+"%(show_value)d)."
+msgstr[1] ""
+"Asegúrate qu'esti valor tien polo menos %(limit_value)d caráuteres (tien "
+"%(show_value)d)."
+
+#, python-format
+msgid ""
+"Ensure this value has at most %(limit_value)d character (it has "
+"%(show_value)d)."
+msgid_plural ""
+"Ensure this value has at most %(limit_value)d characters (it has "
+"%(show_value)d)."
+msgstr[0] ""
+"Asegúrate qu'esti valor tien como muncho %(limit_value)d caráuter (tien "
+"%(show_value)d)."
+msgstr[1] ""
+"Asegúrate qu'esti valor tien como muncho %(limit_value)d caráuteres (tien "
+"%(show_value)d)."
+
+msgid "Enter a number."
+msgstr "Introduz un númberu."
+
+#, 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] "Asegúrate que nun hai más de %(max)s díxitu en total."
+msgstr[1] "Asegúrate que nun hai más de %(max)s díxitos en total."
+
+#, python-format
+msgid "Ensure that there are no more than %(max)s decimal place."
+msgid_plural "Ensure that there are no more than %(max)s decimal places."
+msgstr[0] "Asegúrate que nun hai más de %(max)s allugamientu decimal."
+msgstr[1] "Asegúrate que nun hai más de %(max)s allugamientos decimales."
+
+#, python-format
+msgid ""
+"Ensure that there are no more than %(max)s digit before the decimal point."
+msgid_plural ""
+"Ensure that there are no more than %(max)s digits before the decimal point."
+msgstr[0] ""
+"Asegúrate que nun hai más de %(max)s díxitu enantes del puntu decimal."
+msgstr[1] ""
+"Asegúrate que nun hai más de %(max)s díxitos enantes del puntu decimal."
+
+#, python-format
+msgid ""
+"File extension “%(extension)s” is not allowed. Allowed extensions are: "
+"%(allowed_extensions)s."
+msgstr ""
+
+msgid "Null characters are not allowed."
+msgstr ""
+
+msgid "and"
+msgstr "y"
+
+#, python-format
+msgid "%(model_name)s with this %(field_labels)s already exists."
+msgstr ""
+
+#, python-format
+msgid "Value %(value)r is not a valid choice."
+msgstr ""
+
+msgid "This field cannot be null."
+msgstr "Esti campu nun pue ser nulu."
+
+msgid "This field cannot be blank."
+msgstr "Esti campu nun pue tar baleru."
+
+#, python-format
+msgid "%(model_name)s with this %(field_label)s already exists."
+msgstr "%(model_name)s con esti %(field_label)s yá esiste."
+
+#. Translators: The 'lookup_type' is one of 'date', 'year' or 'month'.
+#. Eg: "Title must be unique for pub_date year"
+#, python-format
+msgid ""
+"%(field_label)s must be unique for %(date_field_label)s %(lookup_type)s."
+msgstr ""
+
+#, python-format
+msgid "Field of type: %(field_type)s"
+msgstr "Campu de la triba: %(field_type)s"
+
+#, python-format
+msgid "“%(value)s” value must be either True or False."
+msgstr ""
+
+#, python-format
+msgid "“%(value)s” value must be either True, False, or None."
+msgstr ""
+
+msgid "Boolean (Either True or False)"
+msgstr "Boleanu (tamién True o False)"
+
+#, python-format
+msgid "String (up to %(max_length)s)"
+msgstr "Cadena (fasta %(max_length)s)"
+
+msgid "Comma-separated integers"
+msgstr "Enteros separtaos per coma"
+
+#, python-format
+msgid ""
+"“%(value)s” value has an invalid date format. It must be in YYYY-MM-DD "
+"format."
+msgstr ""
+
+#, python-format
+msgid ""
+"“%(value)s” value has the correct format (YYYY-MM-DD) but it is an invalid "
+"date."
+msgstr ""
+
+msgid "Date (without time)"
+msgstr "Data (ensin hora)"
+
+#, python-format
+msgid ""
+"“%(value)s” value has an invalid format. It must be in YYYY-MM-DD HH:MM[:ss[."
+"uuuuuu]][TZ] format."
+msgstr ""
+
+#, 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 ""
+
+msgid "Date (with time)"
+msgstr "Data (con hora)"
+
+#, python-format
+msgid "“%(value)s” value must be a decimal number."
+msgstr ""
+
+msgid "Decimal number"
+msgstr "Númberu decimal"
+
+#, python-format
+msgid ""
+"“%(value)s” value has an invalid format. It must be in [DD] [[HH:]MM:]ss[."
+"uuuuuu] format."
+msgstr ""
+
+msgid "Duration"
+msgstr ""
+
+msgid "Email address"
+msgstr "Direición de corréu"
+
+msgid "File path"
+msgstr "Camín del ficheru"
+
+#, python-format
+msgid "“%(value)s” value must be a float."
+msgstr ""
+
+msgid "Floating point number"
+msgstr "Númberu de puntu flotante"
+
+#, python-format
+msgid "“%(value)s” value must be an integer."
+msgstr ""
+
+msgid "Integer"
+msgstr "Enteru"
+
+msgid "Big (8 byte) integer"
+msgstr "Enteru big (8 byte)"
+
+msgid "IPv4 address"
+msgstr "Direición IPv4"
+
+msgid "IP address"
+msgstr "Direición IP"
+
+#, python-format
+msgid "“%(value)s” value must be either None, True or False."
+msgstr ""
+
+msgid "Boolean (Either True, False or None)"
+msgstr "Boleanu (tamién True, False o None)"
+
+msgid "Positive integer"
+msgstr "Enteru positivu"
+
+msgid "Positive small integer"
+msgstr "Enteru pequeñu positivu"
+
+#, python-format
+msgid "Slug (up to %(max_length)s)"
+msgstr "Slug (fasta %(max_length)s)"
+
+msgid "Small integer"
+msgstr "Enteru pequeñu"
+
+msgid "Text"
+msgstr "Testu"
+
+#, python-format
+msgid ""
+"“%(value)s” value has an invalid format. It must be in HH:MM[:ss[.uuuuuu]] "
+"format."
+msgstr ""
+
+#, python-format
+msgid ""
+"“%(value)s” value has the correct format (HH:MM[:ss[.uuuuuu]]) but it is an "
+"invalid time."
+msgstr ""
+
+msgid "Time"
+msgstr "Hora"
+
+msgid "URL"
+msgstr "URL"
+
+msgid "Raw binary data"
+msgstr "Datos binarios crudos"
+
+#, python-format
+msgid "“%(value)s” is not a valid UUID."
+msgstr ""
+
+msgid "Universally unique identifier"
+msgstr ""
+
+msgid "File"
+msgstr "Ficheru"
+
+msgid "Image"
+msgstr "Imaxe"
+
+#, python-format
+msgid "%(model)s instance with %(field)s %(value)r does not exist."
+msgstr ""
+
+msgid "Foreign Key (type determined by related field)"
+msgstr "Clave foriata (triba determinada pol campu rellacionáu)"
+
+msgid "One-to-one relationship"
+msgstr "Rellación a ún"
+
+#, python-format
+msgid "%(from)s-%(to)s relationship"
+msgstr ""
+
+#, python-format
+msgid "%(from)s-%(to)s relationships"
+msgstr ""
+
+msgid "Many-to-many relationship"
+msgstr "Rellación a munchos"
+
+#. Translators: If found as last label character, these punctuation
+#. characters will prevent the default label_suffix to be appended to the
+#. label
+msgid ":?.!"
+msgstr ":?.!"
+
+msgid "This field is required."
+msgstr "Requierse esti campu."
+
+msgid "Enter a whole number."
+msgstr "Introduz un númberu completu"
+
+msgid "Enter a valid date."
+msgstr "Introduz una data válida."
+
+msgid "Enter a valid time."
+msgstr "Introduz una hora válida."
+
+msgid "Enter a valid date/time."
+msgstr "Introduz una data/hora válida."
+
+msgid "Enter a valid duration."
+msgstr ""
+
+#, python-brace-format
+msgid "The number of days must be between {min_days} and {max_days}."
+msgstr ""
+
+msgid "No file was submitted. Check the encoding type on the form."
+msgstr "Nun s'unvió'l ficheru. Comprueba la triba de cifráu nel formulariu."
+
+msgid "No file was submitted."
+msgstr "No file was submitted."
+
+msgid "The submitted file is empty."
+msgstr "El ficheru dunviáu ta baleru."
+
+#, python-format
+msgid "Ensure this filename has at most %(max)d character (it has %(length)d)."
+msgid_plural ""
+"Ensure this filename has at most %(max)d characters (it has %(length)d)."
+msgstr[0] ""
+"Asegúrate qu'esti nome de ficheru tien polo menos %(max)d caráuter (tien "
+"%(length)d)."
+msgstr[1] ""
+"Asegúrate qu'esti nome de ficheru tien polo menos %(max)d caráuteres (tien "
+"%(length)d)."
+
+msgid "Please either submit a file or check the clear checkbox, not both."
+msgstr "Por favor, dunvia un ficheru o conseña la caxella , non dambos."
+
+msgid ""
+"Upload a valid image. The file you uploaded was either not an image or a "
+"corrupted image."
+msgstr ""
+"Xubi una imaxe válida. El ficheru que xubiesti o nun yera una imaxe, o taba "
+"toriada."
+
+#, python-format
+msgid "Select a valid choice. %(value)s is not one of the available choices."
+msgstr ""
+"Esbilla una escoyeta válida. %(value)s nun una ún de les escoyetes "
+"disponibles."
+
+msgid "Enter a list of values."
+msgstr "Introduz una llista valores."
+
+msgid "Enter a complete value."
+msgstr ""
+
+msgid "Enter a valid UUID."
+msgstr ""
+
+#. Translators: This is the default suffix added to form field labels
+msgid ":"
+msgstr ":"
+
+#, python-format
+msgid "(Hidden field %(name)s) %(error)s"
+msgstr "(Campu anubríu %(name)s) %(error)s"
+
+msgid "ManagementForm data is missing or has been tampered with"
+msgstr ""
+
+#, python-format
+msgid "Please submit %d or fewer forms."
+msgid_plural "Please submit %d or fewer forms."
+msgstr[0] "Por favor, dunvia %d o menos formularios."
+msgstr[1] "Por favor, dunvia %d o menos formularios."
+
+#, python-format
+msgid "Please submit %d or more forms."
+msgid_plural "Please submit %d or more forms."
+msgstr[0] ""
+msgstr[1] ""
+
+msgid "Order"
+msgstr "Orde"
+
+msgid "Delete"
+msgstr "Desanciar"
+
+#, python-format
+msgid "Please correct the duplicate data for %(field)s."
+msgstr "Por favor, igua'l datu duplicáu de %(field)s."
+
+#, python-format
+msgid "Please correct the duplicate data for %(field)s, which must be unique."
+msgstr ""
+"Por favor, igua'l datu duplicáu pa %(field)s, el cual tien de ser únicu."
+
+#, python-format
+msgid ""
+"Please correct the duplicate data for %(field_name)s which must be unique "
+"for the %(lookup)s in %(date_field)s."
+msgstr ""
+"Por favor, igua'l datu duplicáu de %(field_name)s el cual tien de ser únicu "
+"pal %(lookup)s en %(date_field)s."
+
+msgid "Please correct the duplicate values below."
+msgstr "Por favor, igua los valores duplicaos embaxo"
+
+msgid "The inline value did not match the parent instance."
+msgstr ""
+
+msgid "Select a valid choice. That choice is not one of the available choices."
+msgstr ""
+"Esbilla una escoyeta válida. Esa escoyeta nun ye una de les escoyetes "
+"disponibles."
+
+#, python-format
+msgid "“%(pk)s” is not a valid value."
+msgstr ""
+
+#, 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 ""
+
+msgid "Clear"
+msgstr "Llimpiar"
+
+msgid "Currently"
+msgstr "Anguaño"
+
+msgid "Change"
+msgstr "Camudar"
+
+msgid "Unknown"
+msgstr "Desconocíu"
+
+msgid "Yes"
+msgstr "Sí"
+
+msgid "No"
+msgstr "Non"
+
+msgid "Year"
+msgstr ""
+
+msgid "Month"
+msgstr ""
+
+msgid "Day"
+msgstr ""
+
+msgid "yes,no,maybe"
+msgstr "sí,non,quiciabes"
+
+#, python-format
+msgid "%(size)d byte"
+msgid_plural "%(size)d bytes"
+msgstr[0] "%(size)d byte"
+msgstr[1] "%(size)d bytes"
+
+#, python-format
+msgid "%s KB"
+msgstr "%s KB"
+
+#, python-format
+msgid "%s MB"
+msgstr "%s MB"
+
+#, python-format
+msgid "%s GB"
+msgstr "%s GB"
+
+#, python-format
+msgid "%s TB"
+msgstr "%s TB"
+
+#, python-format
+msgid "%s PB"
+msgstr "%s PB"
+
+msgid "p.m."
+msgstr "p.m."
+
+msgid "a.m."
+msgstr "a.m."
+
+msgid "PM"
+msgstr "PM"
+
+msgid "AM"
+msgstr "AM"
+
+msgid "midnight"
+msgstr "Media nueche"
+
+msgid "noon"
+msgstr "Meudía"
+
+msgid "Monday"
+msgstr "Llunes"
+
+msgid "Tuesday"
+msgstr "Martes"
+
+msgid "Wednesday"
+msgstr "Miércoles"
+
+msgid "Thursday"
+msgstr "Xueves"
+
+msgid "Friday"
+msgstr "Vienres"
+
+msgid "Saturday"
+msgstr "Sábadu"
+
+msgid "Sunday"
+msgstr "Domingu"
+
+msgid "Mon"
+msgstr "LLu"
+
+msgid "Tue"
+msgstr "Mar"
+
+msgid "Wed"
+msgstr "Mie"
+
+msgid "Thu"
+msgstr "Xue"
+
+msgid "Fri"
+msgstr "Vie"
+
+msgid "Sat"
+msgstr "Sáb"
+
+msgid "Sun"
+msgstr "Dom"
+
+msgid "January"
+msgstr "Xineru"
+
+msgid "February"
+msgstr "Febreru"
+
+msgid "March"
+msgstr "Marzu"
+
+msgid "April"
+msgstr "Abril"
+
+msgid "May"
+msgstr "Mayu"
+
+msgid "June"
+msgstr "Xunu"
+
+msgid "July"
+msgstr "Xunetu"
+
+msgid "August"
+msgstr "Agostu"
+
+msgid "September"
+msgstr "Setiembre"
+
+msgid "October"
+msgstr "Ochobre"
+
+msgid "November"
+msgstr "Payares"
+
+msgid "December"
+msgstr "Avientu"
+
+msgid "jan"
+msgstr "xin"
+
+msgid "feb"
+msgstr "feb"
+
+msgid "mar"
+msgstr "mar"
+
+msgid "apr"
+msgstr "abr"
+
+msgid "may"
+msgstr "may"
+
+msgid "jun"
+msgstr "xun"
+
+msgid "jul"
+msgstr "xnt"
+
+msgid "aug"
+msgstr "ago"
+
+msgid "sep"
+msgstr "set"
+
+msgid "oct"
+msgstr "och"
+
+msgid "nov"
+msgstr "pay"
+
+msgid "dec"
+msgstr "avi"
+
+msgctxt "abbrev. month"
+msgid "Jan."
+msgstr "Xin."
+
+msgctxt "abbrev. month"
+msgid "Feb."
+msgstr "Feb."
+
+msgctxt "abbrev. month"
+msgid "March"
+msgstr "Mar."
+
+msgctxt "abbrev. month"
+msgid "April"
+msgstr "Abr."
+
+msgctxt "abbrev. month"
+msgid "May"
+msgstr "May."
+
+msgctxt "abbrev. month"
+msgid "June"
+msgstr "Xun."
+
+msgctxt "abbrev. month"
+msgid "July"
+msgstr "Xnt."
+
+msgctxt "abbrev. month"
+msgid "Aug."
+msgstr "Ago."
+
+msgctxt "abbrev. month"
+msgid "Sept."
+msgstr "Set."
+
+msgctxt "abbrev. month"
+msgid "Oct."
+msgstr "Och."
+
+msgctxt "abbrev. month"
+msgid "Nov."
+msgstr "Pay."
+
+msgctxt "abbrev. month"
+msgid "Dec."
+msgstr "Avi."
+
+msgctxt "alt. month"
+msgid "January"
+msgstr "Xineru"
+
+msgctxt "alt. month"
+msgid "February"
+msgstr "Febreru"
+
+msgctxt "alt. month"
+msgid "March"
+msgstr "Marzu"
+
+msgctxt "alt. month"
+msgid "April"
+msgstr "Abril"
+
+msgctxt "alt. month"
+msgid "May"
+msgstr "Mayu"
+
+msgctxt "alt. month"
+msgid "June"
+msgstr "Xunu"
+
+msgctxt "alt. month"
+msgid "July"
+msgstr "Xunetu"
+
+msgctxt "alt. month"
+msgid "August"
+msgstr "Agostu"
+
+msgctxt "alt. month"
+msgid "September"
+msgstr "Setiembre"
+
+msgctxt "alt. month"
+msgid "October"
+msgstr "Ochobre"
+
+msgctxt "alt. month"
+msgid "November"
+msgstr "Payares"
+
+msgctxt "alt. month"
+msgid "December"
+msgstr "Avientu"
+
+msgid "This is not a valid IPv6 address."
+msgstr ""
+
+#, python-format
+msgctxt "String to return when truncating text"
+msgid "%(truncated_text)s…"
+msgstr ""
+
+msgid "or"
+msgstr "o"
+
+#. Translators: This string is used as a separator between list elements
+msgid ", "
+msgstr ", "
+
+#, python-format
+msgid "%d year"
+msgid_plural "%d years"
+msgstr[0] "%d añu"
+msgstr[1] "%d años"
+
+#, python-format
+msgid "%d month"
+msgid_plural "%d months"
+msgstr[0] "%d mes"
+msgstr[1] "%d meses"
+
+#, python-format
+msgid "%d week"
+msgid_plural "%d weeks"
+msgstr[0] "%d selmana"
+msgstr[1] "%d selmanes"
+
+#, python-format
+msgid "%d day"
+msgid_plural "%d days"
+msgstr[0] "%d día"
+msgstr[1] "%d díes"
+
+#, python-format
+msgid "%d hour"
+msgid_plural "%d hours"
+msgstr[0] "%d hora"
+msgstr[1] "%d hores"
+
+#, python-format
+msgid "%d minute"
+msgid_plural "%d minutes"
+msgstr[0] "%d minutu"
+msgstr[1] "%d minutos"
+
+msgid "0 minutes"
+msgstr "0 minutos"
+
+msgid "Forbidden"
+msgstr ""
+
+msgid "CSRF verification failed. Request aborted."
+msgstr ""
+
+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 "
+"required for security reasons, to ensure that your browser is not being "
+"hijacked by third parties."
+msgstr ""
+
+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 ""
+
+msgid ""
+"If you are using the <meta name=\"referrer\" content=\"no-referrer\"> tag or "
+"including the “Referrer-Policy: no-referrer” header, please remove them. The "
+"CSRF protection requires the “Referer” header to do strict referer checking. "
+"If you’re concerned about privacy, use alternatives like <a rel=\"noreferrer"
+"\" …> for links to third-party sites."
+msgstr ""
+
+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 ""
+
+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 ""
+
+msgid "More information is available with DEBUG=True."
+msgstr ""
+
+msgid "No year specified"
+msgstr "Nun s'especificó l'añu"
+
+msgid "Date out of range"
+msgstr ""
+
+msgid "No month specified"
+msgstr "Nun s'especificó'l mes"
+
+msgid "No day specified"
+msgstr "Nun s'especificó'l día"
+
+msgid "No week specified"
+msgstr "Nun s'especificó la selmana"
+
+#, python-format
+msgid "No %(verbose_name_plural)s available"
+msgstr "Ensin %(verbose_name_plural)s disponible"
+
+#, python-format
+msgid ""
+"Future %(verbose_name_plural)s not available because %(class_name)s."
+"allow_future is False."
+msgstr ""
+"Nun ta disponible'l %(verbose_name_plural)s futuru porque %(class_name)s."
+"allow_future ye False."
+
+#, python-format
+msgid "Invalid date string “%(datestr)s” given format “%(format)s”"
+msgstr ""
+
+#, python-format
+msgid "No %(verbose_name)s found matching the query"
+msgstr "Nun s'alcontró %(verbose_name)s que concase cola gueta"
+
+msgid "Page is not “last”, nor can it be converted to an int."
+msgstr ""
+
+#, python-format
+msgid "Invalid page (%(page_number)s): %(message)s"
+msgstr "Páxina inválida (%(page_number)s): %(message)s"
+
+#, python-format
+msgid "Empty list and “%(class_name)s.allow_empty” is False."
+msgstr ""
+
+msgid "Directory indexes are not allowed here."
+msgstr "Nun tán almitíos equí los indexaos de direutoriu."
+
+#, python-format
+msgid "“%(path)s” does not exist"
+msgstr ""
+
+#, python-format
+msgid "Index of %(directory)s"
+msgstr "Índiz de %(directory)s"
+
+msgid "Django: the Web framework for perfectionists with deadlines."
+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 ""
+
+#, python-format
+msgid ""
+"You are seeing this page because <a href=\"https://docs.djangoproject.com/en/"
+"%(version)s/ref/settings/#debug\" target=\"_blank\" rel=\"noopener"
+"\">DEBUG=True</a> is in your settings file and you have not configured any "
+"URLs."
+msgstr ""
+
+msgid "Django Documentation"
+msgstr ""
+
+msgid "Topics, references, &amp; how-to’s"
+msgstr ""
+
+msgid "Tutorial: A Polling App"
+msgstr ""
+
+msgid "Get started with Django"
+msgstr ""
+
+msgid "Django Community"
+msgstr ""
+
+msgid "Connect, get help, or contribute"
+msgstr ""

BIN
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/az/LC_MESSAGES/django.mo


+ 1347 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/az/LC_MESSAGES/django.po

@@ -0,0 +1,1347 @@
+# This file is distributed under the same license as the Django package.
+#
+# Translators:
+# Emin Mastizada <emin@linux.com>, 2018,2020
+# Emin Mastizada <emin@linux.com>, 2015-2016
+# Metin Amiroff <amiroff@gmail.com>, 2011
+# Nicat Məmmədov <n1c4t97@gmail.com>, 2022
+# Nijat Mammadov, 2024
+# Sevdimali <sevdimaliisayev@mail.ru>, 2024
+msgid ""
+msgstr ""
+"Project-Id-Version: django\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2024-05-22 11:46-0300\n"
+"PO-Revision-Date: 2024-08-07 06:49+0000\n"
+"Last-Translator: Sevdimali <sevdimaliisayev@mail.ru>, 2024\n"
+"Language-Team: Azerbaijani (http://app.transifex.com/django/django/language/"
+"az/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: az\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+msgid "Afrikaans"
+msgstr "Afrikaans"
+
+msgid "Arabic"
+msgstr "Ərəb"
+
+msgid "Algerian Arabic"
+msgstr "Əlcəzair Ərəbcəsi"
+
+msgid "Asturian"
+msgstr "Asturiya"
+
+msgid "Azerbaijani"
+msgstr "Azərbaycan"
+
+msgid "Bulgarian"
+msgstr "Bolqar"
+
+msgid "Belarusian"
+msgstr "Belarus"
+
+msgid "Bengali"
+msgstr "Benqal"
+
+msgid "Breton"
+msgstr "Breton"
+
+msgid "Bosnian"
+msgstr "Bosniya"
+
+msgid "Catalan"
+msgstr "Katalon"
+
+msgid "Central Kurdish (Sorani)"
+msgstr "Mərkəzi Kürd dili (Sorani)"
+
+msgid "Czech"
+msgstr "Çex"
+
+msgid "Welsh"
+msgstr "Uels"
+
+msgid "Danish"
+msgstr "Danimarka"
+
+msgid "German"
+msgstr "Alman"
+
+msgid "Lower Sorbian"
+msgstr "Aşağı Sorb"
+
+msgid "Greek"
+msgstr "Yunan"
+
+msgid "English"
+msgstr "İngilis"
+
+msgid "Australian English"
+msgstr "Avstraliya İngiliscəsi"
+
+msgid "British English"
+msgstr "Britaniya İngiliscəsi"
+
+msgid "Esperanto"
+msgstr "Esperanto"
+
+msgid "Spanish"
+msgstr "İspan"
+
+msgid "Argentinian Spanish"
+msgstr "Argentina İspancası"
+
+msgid "Colombian Spanish"
+msgstr "Kolumbia İspancası"
+
+msgid "Mexican Spanish"
+msgstr "Meksika İspancası"
+
+msgid "Nicaraguan Spanish"
+msgstr "Nikaraqua İspancası"
+
+msgid "Venezuelan Spanish"
+msgstr "Venesuela İspancası"
+
+msgid "Estonian"
+msgstr "Eston"
+
+msgid "Basque"
+msgstr "Bask"
+
+msgid "Persian"
+msgstr "Fars"
+
+msgid "Finnish"
+msgstr "Fin"
+
+msgid "French"
+msgstr "Fransız"
+
+msgid "Frisian"
+msgstr "Fris"
+
+msgid "Irish"
+msgstr "İrland"
+
+msgid "Scottish Gaelic"
+msgstr "Şotland Keltcəsi"
+
+msgid "Galician"
+msgstr "Qalisiya"
+
+msgid "Hebrew"
+msgstr "İvrit"
+
+msgid "Hindi"
+msgstr "Hind"
+
+msgid "Croatian"
+msgstr "Xorvat"
+
+msgid "Upper Sorbian"
+msgstr "Yuxarı Sorb"
+
+msgid "Hungarian"
+msgstr "Macar"
+
+msgid "Armenian"
+msgstr "Erməni"
+
+msgid "Interlingua"
+msgstr "İnterlinqua"
+
+msgid "Indonesian"
+msgstr "İndoneziya dili"
+
+msgid "Igbo"
+msgstr "İqbo"
+
+msgid "Ido"
+msgstr "İdo"
+
+msgid "Icelandic"
+msgstr "İsland"
+
+msgid "Italian"
+msgstr "İtalyan"
+
+msgid "Japanese"
+msgstr "Yapon"
+
+msgid "Georgian"
+msgstr "Gürcü"
+
+msgid "Kabyle"
+msgstr "Kabile"
+
+msgid "Kazakh"
+msgstr "Qazax"
+
+msgid "Khmer"
+msgstr "Xmer"
+
+msgid "Kannada"
+msgstr "Kannada"
+
+msgid "Korean"
+msgstr "Koreya"
+
+msgid "Kyrgyz"
+msgstr "Qırğız"
+
+msgid "Luxembourgish"
+msgstr "Lüksemburq"
+
+msgid "Lithuanian"
+msgstr "Litva"
+
+msgid "Latvian"
+msgstr "Latış"
+
+msgid "Macedonian"
+msgstr "Makedon"
+
+msgid "Malayalam"
+msgstr "Malayam"
+
+msgid "Mongolian"
+msgstr "Monqol"
+
+msgid "Marathi"
+msgstr "Marathi"
+
+msgid "Malay"
+msgstr "Malay"
+
+msgid "Burmese"
+msgstr "Birman"
+
+msgid "Norwegian Bokmål"
+msgstr "Norveç Bukmolcası"
+
+msgid "Nepali"
+msgstr "Nepal"
+
+msgid "Dutch"
+msgstr "Niderland"
+
+msgid "Norwegian Nynorsk"
+msgstr "Norveç Nyunorskcası"
+
+msgid "Ossetic"
+msgstr "Osetin"
+
+msgid "Punjabi"
+msgstr "Pəncab"
+
+msgid "Polish"
+msgstr "Polyak"
+
+msgid "Portuguese"
+msgstr "Portuqal"
+
+msgid "Brazilian Portuguese"
+msgstr "Braziliya Portuqalcası"
+
+msgid "Romanian"
+msgstr "Rumın"
+
+msgid "Russian"
+msgstr "Rus"
+
+msgid "Slovak"
+msgstr "Slovak"
+
+msgid "Slovenian"
+msgstr "Sloven"
+
+msgid "Albanian"
+msgstr "Alban"
+
+msgid "Serbian"
+msgstr "Serb"
+
+msgid "Serbian Latin"
+msgstr "Serb (Latın)"
+
+msgid "Swedish"
+msgstr "İsveç"
+
+msgid "Swahili"
+msgstr "Suahili"
+
+msgid "Tamil"
+msgstr "Tamil"
+
+msgid "Telugu"
+msgstr "Teluqu"
+
+msgid "Tajik"
+msgstr "Tacik"
+
+msgid "Thai"
+msgstr "Tay"
+
+msgid "Turkmen"
+msgstr "Türkmən"
+
+msgid "Turkish"
+msgstr "Türk"
+
+msgid "Tatar"
+msgstr "Tatar"
+
+msgid "Udmurt"
+msgstr "Udmurt"
+
+msgid "Uyghur"
+msgstr "Uyğur"
+
+msgid "Ukrainian"
+msgstr "Ukrayn"
+
+msgid "Urdu"
+msgstr "Urdu"
+
+msgid "Uzbek"
+msgstr "Özbək"
+
+msgid "Vietnamese"
+msgstr "Vyetnam"
+
+msgid "Simplified Chinese"
+msgstr "Sadələşdirilmiş Çin dili"
+
+msgid "Traditional Chinese"
+msgstr "Ənənəvi Çin dili"
+
+msgid "Messages"
+msgstr "Mesajlar"
+
+msgid "Site Maps"
+msgstr "Sayt Xəritələri"
+
+msgid "Static Files"
+msgstr "Statik Fayllar"
+
+msgid "Syndication"
+msgstr "Sindikasiya"
+
+#. 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 "Səhifə nömrəsi rəqəm deyil"
+
+msgid "That page number is less than 1"
+msgstr "Səhifə nömrəsi 1-dən balacadır"
+
+msgid "That page contains no results"
+msgstr "O səhifədə nəticə yoxdur"
+
+msgid "Enter a valid value."
+msgstr "Düzgün dəyər daxil edin."
+
+msgid "Enter a valid domain name."
+msgstr "Düzgün domen adı daxil edin."
+
+msgid "Enter a valid URL."
+msgstr "Düzgün URL daxil edin."
+
+msgid "Enter a valid integer."
+msgstr "Düzgün rəqəm daxil edin."
+
+msgid "Enter a valid email address."
+msgstr "Düzgün e-poçt ünvanı daxil edin."
+
+#. Translators: "letters" means latin letters: a-z and A-Z.
+msgid ""
+"Enter a valid “slug” consisting of letters, numbers, underscores or hyphens."
+msgstr ""
+"Hərflərdən, rəqəmlərdən, alt-xətlərdən və ya defislərdən ibarət düzgün "
+"qısaltma (“slug”) daxil edin."
+
+msgid ""
+"Enter a valid “slug” consisting of Unicode letters, numbers, underscores, or "
+"hyphens."
+msgstr ""
+"Unicode hərflərdən, rəqəmlərdən, alt-xətlərdən və ya defislərdən ibarət "
+"düzgün qısaltma (“slug”) daxil edin."
+
+#, python-format
+msgid "Enter a valid %(protocol)s address."
+msgstr "Düzgün %(protocol)s adres daxil edin."
+
+msgid "IPv4"
+msgstr "IPv4"
+
+msgid "IPv6"
+msgstr "IPv6"
+
+msgid "IPv4 or IPv6"
+msgstr "IPv4 və ya IPv6"
+
+msgid "Enter only digits separated by commas."
+msgstr "Vergüllə ayırmaqla yalnız rəqəmlər daxil edin."
+
+#, python-format
+msgid "Ensure this value is %(limit_value)s (it is %(show_value)s)."
+msgstr ""
+"Əmin olun ki, bu dəyər %(limit_value)s-dir/dır (bu %(show_value)s-dir/dır)."
+
+#, python-format
+msgid "Ensure this value is less than or equal to %(limit_value)s."
+msgstr ""
+"Bu qiymətin %(limit_value)s-(y)a/ə bərabər və ya ondan kiçik olduğunu "
+"yoxlayın."
+
+#, python-format
+msgid "Ensure this value is greater than or equal to %(limit_value)s."
+msgstr ""
+"Bu qiymətin %(limit_value)s-(y)a/ə bərabər və ya ondan böyük olduğunu "
+"yoxlayın."
+
+#, python-format
+msgid "Ensure this value is a multiple of step size %(limit_value)s."
+msgstr ""
+"Bu dəyərin %(limit_value)s addım ölçüsünün mərtəbələri olduğundan əmin olun."
+
+#, python-format
+msgid ""
+"Ensure this value is a multiple of step size %(limit_value)s, starting from "
+"%(offset)s, e.g. %(offset)s, %(valid_value1)s, %(valid_value2)s, and so on."
+msgstr ""
+"Bu dəyərin %(offset)s dəyərindən başlayaraq %(limit_value)s addım ölçüsü "
+"mərtəbəsi olduğundan əmin olun. Məs: %(offset)s, %(valid_value1)s, "
+"%(valid_value2)s və s."
+
+#, python-format
+msgid ""
+"Ensure this value has at least %(limit_value)d character (it has "
+"%(show_value)d)."
+msgid_plural ""
+"Ensure this value has at least %(limit_value)d characters (it has "
+"%(show_value)d)."
+msgstr[0] ""
+"Bu dəyərin ən az %(limit_value)d simvol olduğuna əmin olun (%(show_value)d "
+"simvol var)"
+msgstr[1] ""
+"Bu dəyərin ən az %(limit_value)d simvol olduğuna əmin olun (%(show_value)d "
+"simvol var)"
+
+#, python-format
+msgid ""
+"Ensure this value has at most %(limit_value)d character (it has "
+"%(show_value)d)."
+msgid_plural ""
+"Ensure this value has at most %(limit_value)d characters (it has "
+"%(show_value)d)."
+msgstr[0] ""
+"Bu dəyərin ən çox %(limit_value)d simvol olduğuna əmin olun (%(show_value)d "
+"simvol var)"
+msgstr[1] ""
+"Bu dəyərin ən çox %(limit_value)d simvol olduğuna əmin olun (%(show_value)d "
+"simvol var)"
+
+msgid "Enter a number."
+msgstr "Ədəd daxil edin."
+
+#, 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] "Toplamda %(max)s rəqəmdən çox olmadığına əmin olun."
+msgstr[1] "Toplamda %(max)s rəqəmdən çox olmadığına əmin olun."
+
+#, python-format
+msgid "Ensure that there are no more than %(max)s decimal place."
+msgid_plural "Ensure that there are no more than %(max)s decimal places."
+msgstr[0] "Onluq hissənin %(max)s rəqəmdən çox olmadığına əmin olun."
+msgstr[1] "Onluq hissənin %(max)s rəqəmdən çox olmadığına əmin olun."
+
+#, python-format
+msgid ""
+"Ensure that there are no more than %(max)s digit before the decimal point."
+msgid_plural ""
+"Ensure that there are no more than %(max)s digits before the decimal point."
+msgstr[0] "Onluq hissədən əvvəl %(max)s rəqəmdən çox olmadığına əmin olun."
+msgstr[1] "Onluq hissədən əvvəl %(max)s rəqəmdən çox olmadığına əmin olun."
+
+#, python-format
+msgid ""
+"File extension “%(extension)s” is not allowed. Allowed extensions are: "
+"%(allowed_extensions)s."
+msgstr ""
+"“%(extension)s” fayl uzantısına icazə verilmir. İcazə verilən fayl "
+"uzantıları: %(allowed_extensions)s."
+
+msgid "Null characters are not allowed."
+msgstr "Null simvollara icazə verilmir."
+
+msgid "and"
+msgstr "və"
+
+#, python-format
+msgid "%(model_name)s with this %(field_labels)s already exists."
+msgstr "%(field_labels)s ilə %(model_name)s artıq mövcuddur."
+
+#, python-format
+msgid "Constraint “%(name)s” is violated."
+msgstr "“%(name)s” məhdudiyyəti pozuldu."
+
+#, python-format
+msgid "Value %(value)r is not a valid choice."
+msgstr "%(value)r dəyəri doğru seçim deyil."
+
+msgid "This field cannot be null."
+msgstr "Bu sahə boş qala bilməz."
+
+msgid "This field cannot be blank."
+msgstr "Bu sahə ağ qala bilməz."
+
+#, python-format
+msgid "%(model_name)s with this %(field_label)s already exists."
+msgstr "%(model_name)s bu %(field_label)s sahə ilə artıq mövcuddur."
+
+#. Translators: The 'lookup_type' is one of 'date', 'year' or
+#. 'month'. Eg: "Title must be unique for pub_date year"
+#, python-format
+msgid ""
+"%(field_label)s must be unique for %(date_field_label)s %(lookup_type)s."
+msgstr ""
+"%(field_label)s dəyəri %(date_field_label)s %(lookup_type)s üçün unikal "
+"olmalıdır."
+
+#, python-format
+msgid "Field of type: %(field_type)s"
+msgstr "Sahənin tipi: %(field_type)s"
+
+#, python-format
+msgid "“%(value)s” value must be either True or False."
+msgstr "“%(value)s” dəyəri ya True, ya da False olmalıdır."
+
+#, python-format
+msgid "“%(value)s” value must be either True, False, or None."
+msgstr "“%(value)s” dəyəri True, False və ya None olmalıdır."
+
+msgid "Boolean (Either True or False)"
+msgstr "Bul (ya Doğru, ya Yalan)"
+
+#, python-format
+msgid "String (up to %(max_length)s)"
+msgstr "Sətir (%(max_length)s simvola kimi)"
+
+msgid "String (unlimited)"
+msgstr "Sətir (limitsiz)"
+
+msgid "Comma-separated integers"
+msgstr "Vergüllə ayrılmış tam ədədlər"
+
+#, python-format
+msgid ""
+"“%(value)s” value has an invalid date format. It must be in YYYY-MM-DD "
+"format."
+msgstr ""
+"“%(value)s” dəyəri səhv tarix formatındadır. Formatı YYYY-MM-DD olmalıdır."
+
+#, python-format
+msgid ""
+"“%(value)s” value has the correct format (YYYY-MM-DD) but it is an invalid "
+"date."
+msgstr ""
+"“%(value)s” dəyəri düzgün formatdadır (YYYY-MM-DD), amma bu tarix xətalıdır."
+
+msgid "Date (without time)"
+msgstr "Tarix (saatsız)"
+
+#, python-format
+msgid ""
+"“%(value)s” value has an invalid format. It must be in YYYY-MM-DD HH:MM[:ss[."
+"uuuuuu]][TZ] format."
+msgstr ""
+"“%(value)s” dəyərinin formatı səhvdir. Formatı YYYY-MM-DD HH:MM[:ss[.uuuuuu]]"
+"[TZ] olmalıdır."
+
+#, 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” dəyərinin formatı düzgündür (YYYY-MM-DD HH:MM[:ss[.uuuuuu]][TZ]) "
+"amma bu tarix xətalıdır."
+
+msgid "Date (with time)"
+msgstr "Tarix (vaxt ilə)"
+
+#, python-format
+msgid "“%(value)s” value must be a decimal number."
+msgstr "“%(value)s” dəyəri onluq kəsrli (decimal) rəqəm olmalıdır."
+
+msgid "Decimal number"
+msgstr "Rasional ədəd"
+
+#, python-format
+msgid ""
+"“%(value)s” value has an invalid format. It must be in [DD] [[HH:]MM:]ss[."
+"uuuuuu] format."
+msgstr ""
+"“%(value)s” dəyərinin formatı səhvdir. Formatı [DD] [HH:[MM:]]ss[.uuuuuu] "
+"olmalıdır."
+
+msgid "Duration"
+msgstr "Müddət"
+
+msgid "Email address"
+msgstr "E-poçt"
+
+msgid "File path"
+msgstr "Faylın ünvanı"
+
+#, python-format
+msgid "“%(value)s” value must be a float."
+msgstr "“%(value)s” dəyəri float olmalıdır."
+
+msgid "Floating point number"
+msgstr "Sürüşən vergüllü ədəd"
+
+#, python-format
+msgid "“%(value)s” value must be an integer."
+msgstr "“%(value)s” dəyəri tam rəqəm olmalıdır."
+
+msgid "Integer"
+msgstr "Tam ədəd"
+
+msgid "Big (8 byte) integer"
+msgstr "Böyük (8 bayt) tam ədəd"
+
+msgid "Small integer"
+msgstr "Kiçik tam ədəd"
+
+msgid "IPv4 address"
+msgstr "IPv4 ünvanı"
+
+msgid "IP address"
+msgstr "IP ünvan"
+
+#, python-format
+msgid "“%(value)s” value must be either None, True or False."
+msgstr "“%(value)s” dəyəri None, True və ya False olmalıdır."
+
+msgid "Boolean (Either True, False or None)"
+msgstr "Bul (Ya True, ya False, ya da None)"
+
+msgid "Positive big integer"
+msgstr "Müsbət böyük rəqəm"
+
+msgid "Positive integer"
+msgstr "Müsbət tam ədəd"
+
+msgid "Positive small integer"
+msgstr "Müsbət tam kiçik ədəd"
+
+#, python-format
+msgid "Slug (up to %(max_length)s)"
+msgstr "Əzmə (%(max_length)s simvola kimi)"
+
+msgid "Text"
+msgstr "Mətn"
+
+#, python-format
+msgid ""
+"“%(value)s” value has an invalid format. It must be in HH:MM[:ss[.uuuuuu]] "
+"format."
+msgstr ""
+"“%(value)s” dəyərinin formatı səhvdir. Formatı HH:MM[:ss[.uuuuuu]] olmalıdır."
+
+#, python-format
+msgid ""
+"“%(value)s” value has the correct format (HH:MM[:ss[.uuuuuu]]) but it is an "
+"invalid time."
+msgstr ""
+"“%(value)s” dəyəri düzgün formatdadır (HH:MM[:ss[.uuuuuu]]), amma vaxtı "
+"xətalıdır."
+
+msgid "Time"
+msgstr "Vaxt"
+
+msgid "URL"
+msgstr "URL"
+
+msgid "Raw binary data"
+msgstr "Düz ikili (binary) məlumat"
+
+#, python-format
+msgid "“%(value)s” is not a valid UUID."
+msgstr "“%(value)s” keçərli UUID deyil."
+
+msgid "Universally unique identifier"
+msgstr "Universal təkrarolunmaz identifikator"
+
+msgid "File"
+msgstr "Fayl"
+
+msgid "Image"
+msgstr "Şəkil"
+
+msgid "A JSON object"
+msgstr "JSON obyekti"
+
+msgid "Value must be valid JSON."
+msgstr "Dəyər düzgün JSON olmalıdır."
+
+#, python-format
+msgid "%(model)s instance with %(field)s %(value)r does not exist."
+msgstr "%(field)s dəyəri %(value)r olan %(model)s mövcud deyil."
+
+msgid "Foreign Key (type determined by related field)"
+msgstr "Xarici açar (bağlı olduğu sahəyə uyğun tipi alır)"
+
+msgid "One-to-one relationship"
+msgstr "Birin-birə münasibət"
+
+#, python-format
+msgid "%(from)s-%(to)s relationship"
+msgstr "%(from)s-%(to)s əlaqəsi"
+
+#, python-format
+msgid "%(from)s-%(to)s relationships"
+msgstr "%(from)s-%(to)s əlaqələri"
+
+msgid "Many-to-many relationship"
+msgstr "Çoxun-çoxa münasibət"
+
+#. Translators: If found as last label character, these punctuation
+#. characters will prevent the default label_suffix to be appended to the
+#. label
+msgid ":?.!"
+msgstr ":?.!"
+
+msgid "This field is required."
+msgstr "Bu sahə vacibdir."
+
+msgid "Enter a whole number."
+msgstr "Tam ədəd daxil edin."
+
+msgid "Enter a valid date."
+msgstr "Düzgün tarix daxil edin."
+
+msgid "Enter a valid time."
+msgstr "Düzgün vaxt daxil edin."
+
+msgid "Enter a valid date/time."
+msgstr "Düzgün tarix/vaxt daxil edin."
+
+msgid "Enter a valid duration."
+msgstr "Keçərli müddət daxil edin."
+
+#, python-brace-format
+msgid "The number of days must be between {min_days} and {max_days}."
+msgstr "Günlərin sayı {min_days} ilə {max_days} arasında olmalıdır."
+
+msgid "No file was submitted. Check the encoding type on the form."
+msgstr "Fayl göndərilməyib. Vərəqənin (\"form\") şifrələmə tipini yoxlayın."
+
+msgid "No file was submitted."
+msgstr "Fayl göndərilməyib."
+
+msgid "The submitted file is empty."
+msgstr "Göndərilən fayl boşdur."
+
+#, python-format
+msgid "Ensure this filename has at most %(max)d character (it has %(length)d)."
+msgid_plural ""
+"Ensure this filename has at most %(max)d characters (it has %(length)d)."
+msgstr[0] ""
+"Bu fayl adının ən çox %(max)d simvol olduğuna əmin olun (%(length)d var)."
+msgstr[1] ""
+"Bu fayl adının ən çox %(max)d simvol olduğuna əmin olun (%(length)d var)."
+
+msgid "Please either submit a file or check the clear checkbox, not both."
+msgstr ""
+"Ya fayl göndərin, ya da xanaya quş qoymayın, hər ikisini də birdən etməyin."
+
+msgid ""
+"Upload a valid image. The file you uploaded was either not an image or a "
+"corrupted image."
+msgstr ""
+"Düzgün şəkil göndərin. Göndərdiyiniz fayl ya şəkil deyil, ya da şəkildə "
+"problem var."
+
+#, python-format
+msgid "Select a valid choice. %(value)s is not one of the available choices."
+msgstr "Düzgün seçim edin. %(value)s seçimlər arasında yoxdur."
+
+msgid "Enter a list of values."
+msgstr "Qiymətlərin siyahısını daxil edin."
+
+msgid "Enter a complete value."
+msgstr "Tam dəyər daxil edin."
+
+msgid "Enter a valid UUID."
+msgstr "Keçərli UUID daxil et."
+
+msgid "Enter a valid JSON."
+msgstr "Etibarlı bir JSON daxil edin."
+
+#. Translators: This is the default suffix added to form field labels
+msgid ":"
+msgstr ":"
+
+#, python-format
+msgid "(Hidden field %(name)s) %(error)s"
+msgstr "(Gizli %(name)s sahəsi) %(error)s"
+
+#, 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 datası ya əskikdir, ya da dəyişdirilib. Çatışmayan xanalar: "
+"%(field_names)s. Problem davam edərsə, səhv hesabatı təqdim etməli ola "
+"bilərsiniz."
+
+#, python-format
+msgid "Please submit at most %(num)d form."
+msgid_plural "Please submit at most %(num)d forms."
+msgstr[0] "Zəhmət olmasa ən çox %(num)d forma təsdiqləyin."
+msgstr[1] "Zəhmət olmasa ən çox %(num)d forma təsdiqləyin."
+
+#, python-format
+msgid "Please submit at least %(num)d form."
+msgid_plural "Please submit at least %(num)d forms."
+msgstr[0] "Zəhmət olmasa ən az %(num)d forma təsdiqləyin."
+msgstr[1] "Zəhmət olmasa ən az %(num)d forma təsdiqləyin."
+
+msgid "Order"
+msgstr "Sırala"
+
+msgid "Delete"
+msgstr "Sil"
+
+#, python-format
+msgid "Please correct the duplicate data for %(field)s."
+msgstr "%(field)s sahəsinə görə təkrarlanan məlumatlara düzəliş edin."
+
+#, python-format
+msgid "Please correct the duplicate data for %(field)s, which must be unique."
+msgstr ""
+"%(field)s sahəsinə görə təkrarlanan məlumatlara düzəliş edin, onların hamısı "
+"fərqli olmalıdır."
+
+#, python-format
+msgid ""
+"Please correct the duplicate data for %(field_name)s which must be unique "
+"for the %(lookup)s in %(date_field)s."
+msgstr ""
+"%(field_name)s sahəsinə görə təkrarlanan məlumatlara düzəliş edin, onlar "
+"%(date_field)s %(lookup)s-a görə fərqli olmalıdır."
+
+msgid "Please correct the duplicate values below."
+msgstr "Aşağıda təkrarlanan qiymətlərə düzəliş edin."
+
+msgid "The inline value did not match the parent instance."
+msgstr "Sətiriçi dəyər ana nüsxəyə uyğun deyil."
+
+msgid "Select a valid choice. That choice is not one of the available choices."
+msgstr "Düzgün seçim edin. Bu seçim mümkün deyil."
+
+#, python-format
+msgid "“%(pk)s” is not a valid value."
+msgstr "“%(pk)s” düzgün dəyər deyil."
+
+#, 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 vaxtı %(current_timezone)s zaman qurşağında ifadə oluna bilmir; "
+"ya qeyri-müəyyənlik, ya da mövcud olmaya bilər."
+
+msgid "Clear"
+msgstr "Təmizlə"
+
+msgid "Currently"
+msgstr "Hal-hazırda"
+
+msgid "Change"
+msgstr "Dəyiş"
+
+msgid "Unknown"
+msgstr "Məlum deyil"
+
+msgid "Yes"
+msgstr "Hə"
+
+msgid "No"
+msgstr "Yox"
+
+#. Translators: Please do not add spaces around commas.
+msgid "yes,no,maybe"
+msgstr "hə,yox,bəlkə"
+
+#, python-format
+msgid "%(size)d byte"
+msgid_plural "%(size)d bytes"
+msgstr[0] "%(size)d bayt"
+msgstr[1] "%(size)d bayt"
+
+#, python-format
+msgid "%s KB"
+msgstr "%s KB"
+
+#, python-format
+msgid "%s MB"
+msgstr "%s MB"
+
+#, python-format
+msgid "%s GB"
+msgstr "%s QB"
+
+#, python-format
+msgid "%s TB"
+msgstr "%s TB"
+
+#, python-format
+msgid "%s PB"
+msgstr "%s PB"
+
+msgid "p.m."
+msgstr "g.s."
+
+msgid "a.m."
+msgstr "g.ə."
+
+msgid "PM"
+msgstr "GS"
+
+msgid "AM"
+msgstr "GƏ"
+
+msgid "midnight"
+msgstr "gecə yarısı"
+
+msgid "noon"
+msgstr "günorta"
+
+msgid "Monday"
+msgstr "Bazar ertəsi"
+
+msgid "Tuesday"
+msgstr "Çərşənbə axşamı"
+
+msgid "Wednesday"
+msgstr "Çərşənbə"
+
+msgid "Thursday"
+msgstr "Cümə axşamı"
+
+msgid "Friday"
+msgstr "Cümə"
+
+msgid "Saturday"
+msgstr "Şənbə"
+
+msgid "Sunday"
+msgstr "Bazar"
+
+msgid "Mon"
+msgstr "B.e"
+
+msgid "Tue"
+msgstr "Ç.a"
+
+msgid "Wed"
+msgstr "Çrş"
+
+msgid "Thu"
+msgstr "C.a"
+
+msgid "Fri"
+msgstr "Cüm"
+
+msgid "Sat"
+msgstr "Şnb"
+
+msgid "Sun"
+msgstr "Bzr"
+
+msgid "January"
+msgstr "Yanvar"
+
+msgid "February"
+msgstr "Fevral"
+
+msgid "March"
+msgstr "Mart"
+
+msgid "April"
+msgstr "Aprel"
+
+msgid "May"
+msgstr "May"
+
+msgid "June"
+msgstr "İyun"
+
+msgid "July"
+msgstr "İyul"
+
+msgid "August"
+msgstr "Avqust"
+
+msgid "September"
+msgstr "Sentyabr"
+
+msgid "October"
+msgstr "Oktyabr"
+
+msgid "November"
+msgstr "Noyabr"
+
+msgid "December"
+msgstr "Dekabr"
+
+msgid "jan"
+msgstr "ynv"
+
+msgid "feb"
+msgstr "fvr"
+
+msgid "mar"
+msgstr "mar"
+
+msgid "apr"
+msgstr "apr"
+
+msgid "may"
+msgstr "may"
+
+msgid "jun"
+msgstr "iyn"
+
+msgid "jul"
+msgstr "iyl"
+
+msgid "aug"
+msgstr "avq"
+
+msgid "sep"
+msgstr "snt"
+
+msgid "oct"
+msgstr "okt"
+
+msgid "nov"
+msgstr "noy"
+
+msgid "dec"
+msgstr "dek"
+
+msgctxt "abbrev. month"
+msgid "Jan."
+msgstr "Yan."
+
+msgctxt "abbrev. month"
+msgid "Feb."
+msgstr "Fev."
+
+msgctxt "abbrev. month"
+msgid "March"
+msgstr "Mart"
+
+msgctxt "abbrev. month"
+msgid "April"
+msgstr "Aprel"
+
+msgctxt "abbrev. month"
+msgid "May"
+msgstr "May"
+
+msgctxt "abbrev. month"
+msgid "June"
+msgstr "İyun"
+
+msgctxt "abbrev. month"
+msgid "July"
+msgstr "İyul"
+
+msgctxt "abbrev. month"
+msgid "Aug."
+msgstr "Avq."
+
+msgctxt "abbrev. month"
+msgid "Sept."
+msgstr "Sen."
+
+msgctxt "abbrev. month"
+msgid "Oct."
+msgstr "Okt."
+
+msgctxt "abbrev. month"
+msgid "Nov."
+msgstr "Noy."
+
+msgctxt "abbrev. month"
+msgid "Dec."
+msgstr "Dek."
+
+msgctxt "alt. month"
+msgid "January"
+msgstr "Yanvar"
+
+msgctxt "alt. month"
+msgid "February"
+msgstr "Fevral"
+
+msgctxt "alt. month"
+msgid "March"
+msgstr "Mart"
+
+msgctxt "alt. month"
+msgid "April"
+msgstr "Aprel"
+
+msgctxt "alt. month"
+msgid "May"
+msgstr "May"
+
+msgctxt "alt. month"
+msgid "June"
+msgstr "İyun"
+
+msgctxt "alt. month"
+msgid "July"
+msgstr "İyul"
+
+msgctxt "alt. month"
+msgid "August"
+msgstr "Avqust"
+
+msgctxt "alt. month"
+msgid "September"
+msgstr "Sentyabr"
+
+msgctxt "alt. month"
+msgid "October"
+msgstr "Oktyabr"
+
+msgctxt "alt. month"
+msgid "November"
+msgstr "Noyabr"
+
+msgctxt "alt. month"
+msgid "December"
+msgstr "Dekabr"
+
+msgid "This is not a valid IPv6 address."
+msgstr "Bu doğru IPv6 ünvanı deyil."
+
+#, python-format
+msgctxt "String to return when truncating text"
+msgid "%(truncated_text)s…"
+msgstr "%(truncated_text)s…"
+
+msgid "or"
+msgstr "və ya"
+
+#. Translators: This string is used as a separator between list elements
+msgid ", "
+msgstr ", "
+
+#, python-format
+msgid "%(num)d year"
+msgid_plural "%(num)d years"
+msgstr[0] "%(num)d il"
+msgstr[1] "%(num)d il"
+
+#, python-format
+msgid "%(num)d month"
+msgid_plural "%(num)d months"
+msgstr[0] "%(num)d ay"
+msgstr[1] "%(num)d ay"
+
+#, python-format
+msgid "%(num)d week"
+msgid_plural "%(num)d weeks"
+msgstr[0] "%(num)d həftə"
+msgstr[1] "%(num)d həftə"
+
+#, python-format
+msgid "%(num)d day"
+msgid_plural "%(num)d days"
+msgstr[0] "%(num)d gün"
+msgstr[1] "%(num)d gün"
+
+#, python-format
+msgid "%(num)d hour"
+msgid_plural "%(num)d hours"
+msgstr[0] "%(num)d saat"
+msgstr[1] "%(num)d saat"
+
+#, python-format
+msgid "%(num)d minute"
+msgid_plural "%(num)d minutes"
+msgstr[0] "%(num)d dəqiqə"
+msgstr[1] "%(num)d dəqiqə"
+
+msgid "Forbidden"
+msgstr "Qadağan"
+
+msgid "CSRF verification failed. Request aborted."
+msgstr "CSRF təsdiqləmə alınmadı. Sorğu ləğv edildi."
+
+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 "
+"required for security reasons, to ensure that your browser is not being "
+"hijacked by third parties."
+msgstr ""
+"Bu mesajı ona görə görürsünüz ki, bu HTTPS saytı sizin səyyah tərəfindən "
+"“Referer header”in göndərilməsini tələb etdiyi halda heç nə "
+"göndərilməmişdir. Bu başlıq sizin veb-səyyahınızın kənar şəxlər tərəfindən "
+"ələ keçirilmədiyindən əmin olmaq üçün tələb olunur."
+
+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 ""
+"Əgər səyyahınızın “Referer” başlığını göndərməsini söndürmüsünüzsə, lütfən "
+"bu sayt üçün, HTTPS əlaqələr üçün və ya “same-origin” sorğular üçün aktiv "
+"edin."
+
+msgid ""
+"If you are using the <meta name=\"referrer\" content=\"no-referrer\"> tag or "
+"including the “Referrer-Policy: no-referrer” header, please remove them. The "
+"CSRF protection requires the “Referer” header to do strict referer checking. "
+"If you’re concerned about privacy, use alternatives like <a "
+"rel=\"noreferrer\" …> for links to third-party sites."
+msgstr ""
+"Əgər <meta name=\"referrer\" content=\"no-referrer\"> etiketini və ya "
+"“Referrer-Policy: no-referrer” başlığını işlədirsinizsə, lütfən silin. CSRF "
+"qoruma dəqiq yönləndirən yoxlaması üçün “Referer” başlığını tələb edir. Əgər "
+"məxfilik üçün düşünürsünüzsə, üçüncü tərəf sayt keçidləri üçün <a "
+"rel=\"noreferrer\" ...> kimi bir alternativ işlədin."
+
+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 ""
+"Bu sayt formaları göndərmək üçün CSRF çərəzini işlədir. Bu çərəz "
+"səyyahınızın üçüncü biri tərəfindən hack-lənmədiyinə əmin olmaq üçün "
+"istifadə edilir. "
+
+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 ""
+"Əgər səyyahınızda çərəzlər söndürülübsə, lütfən bu sayt və ya “same-origin” "
+"sorğular üçün aktiv edin."
+
+msgid "More information is available with DEBUG=True."
+msgstr "Daha ətraflı məlumat DEBUG=True ilə mövcuddur."
+
+msgid "No year specified"
+msgstr "İl göstərilməyib"
+
+msgid "Date out of range"
+msgstr "Tarix aralığın xaricindədir"
+
+msgid "No month specified"
+msgstr "Ay göstərilməyib"
+
+msgid "No day specified"
+msgstr "Gün göstərilməyib"
+
+msgid "No week specified"
+msgstr "Həftə göstərilməyib"
+
+#, python-format
+msgid "No %(verbose_name_plural)s available"
+msgstr "%(verbose_name_plural)s seçmək mümkün deyil"
+
+#, python-format
+msgid ""
+"Future %(verbose_name_plural)s not available because %(class_name)s."
+"allow_future is False."
+msgstr ""
+"Gələcək %(verbose_name_plural)s seçmək mümkün deyil, çünki %(class_name)s."
+"allow_future Yalan kimi qeyd olunub."
+
+#, python-format
+msgid "Invalid date string “%(datestr)s” given format “%(format)s”"
+msgstr "“%(format)s” formatına görə “%(datestr)s” tarixi düzgün deyil"
+
+#, python-format
+msgid "No %(verbose_name)s found matching the query"
+msgstr "Sorğuya uyğun %(verbose_name)s tapılmadı"
+
+msgid "Page is not “last”, nor can it be converted to an int."
+msgstr "Səhifə həm “axırıncı” deyil, həm də tam ədədə çevrilə bilmir."
+
+#, python-format
+msgid "Invalid page (%(page_number)s): %(message)s"
+msgstr "Yanlış səhifə (%(page_number)s): %(message)s"
+
+#, python-format
+msgid "Empty list and “%(class_name)s.allow_empty” is False."
+msgstr "Siyahı boşdur və “%(class_name)s.allow_empty” dəyəri False-dur."
+
+msgid "Directory indexes are not allowed here."
+msgstr "Ünvan indekslərinə icazə verilmir."
+
+#, python-format
+msgid "“%(path)s” does not exist"
+msgstr "“%(path)s” mövcud deyil"
+
+#, python-format
+msgid "Index of %(directory)s"
+msgstr "%(directory)s-nin indeksi"
+
+msgid "The install worked successfully! Congratulations!"
+msgstr "Quruluş uğurla tamamlandı! Təbriklər!"
+
+#, 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 ""
+"Django %(version)s üçün <a href=\"https://docs.djangoproject.com/en/"
+"%(version)s/releases/\" target=\"_blank\" rel=\"noopener\">buraxılış "
+"qeydlərinə</a> baxın"
+
+#, python-format
+msgid ""
+"You are seeing this page because <a href=\"https://docs.djangoproject.com/en/"
+"%(version)s/ref/settings/#debug\" target=\"_blank\" "
+"rel=\"noopener\">DEBUG=True</a> is in your settings file and you have not "
+"configured any URLs."
+msgstr ""
+"Tənzimləmə faylınızda <a href=\"https://docs.djangoproject.com/en/"
+"%(version)s/ref/settings/#debug\" target=\"_blank\" "
+"rel=\"noopener\">DEBUG=True</a> və heç bir URL qurmadığınız üçün bu səhifəni "
+"görürsünüz."
+
+msgid "Django Documentation"
+msgstr "Django Dokumentasiya"
+
+msgid "Topics, references, &amp; how-to’s"
+msgstr "Mövzular, istinadlar və nümunələr"
+
+msgid "Tutorial: A Polling App"
+msgstr "Məşğələ: Səsvermə Tətbiqi"
+
+msgid "Get started with Django"
+msgstr "Django ilə başla"
+
+msgid "Django Community"
+msgstr "Django İcması"
+
+msgid "Connect, get help, or contribute"
+msgstr "Qoşul, kömək al və dəstək ol"

+ 0 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/az/__init__.py


BIN
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/az/__pycache__/__init__.cpython-312.pyc


BIN
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/az/__pycache__/formats.cpython-312.pyc


+ 30 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/az/formats.py

@@ -0,0 +1,30 @@
+# This file is distributed under the same license as the Django package.
+#
+# The *_FORMAT strings use the Django date format syntax,
+# see https://docs.djangoproject.com/en/dev/ref/templates/builtins/#date
+DATE_FORMAT = "j E Y"
+TIME_FORMAT = "G:i"
+DATETIME_FORMAT = "j E Y, G:i"
+YEAR_MONTH_FORMAT = "F Y"
+MONTH_DAY_FORMAT = "j F"
+SHORT_DATE_FORMAT = "d.m.Y"
+SHORT_DATETIME_FORMAT = "d.m.Y H:i"
+FIRST_DAY_OF_WEEK = 1  # Monday
+
+# The *_INPUT_FORMATS strings use the Python strftime format syntax,
+# see https://docs.python.org/library/datetime.html#strftime-strptime-behavior
+DATE_INPUT_FORMATS = [
+    "%d.%m.%Y",  # '25.10.2006'
+    "%d.%m.%y",  # '25.10.06'
+]
+DATETIME_INPUT_FORMATS = [
+    "%d.%m.%Y %H:%M:%S",  # '25.10.2006 14:30:59'
+    "%d.%m.%Y %H:%M:%S.%f",  # '25.10.2006 14:30:59.000200'
+    "%d.%m.%Y %H:%M",  # '25.10.2006 14:30'
+    "%d.%m.%y %H:%M:%S",  # '25.10.06 14:30:59'
+    "%d.%m.%y %H:%M:%S.%f",  # '25.10.06 14:30:59.000200'
+    "%d.%m.%y %H:%M",  # '25.10.06 14:30'
+]
+DECIMAL_SEPARATOR = ","
+THOUSAND_SEPARATOR = "\xa0"  # non-breaking space
+NUMBER_GROUPING = 3

BIN
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/be/LC_MESSAGES/django.mo


+ 1391 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/be/LC_MESSAGES/django.po

@@ -0,0 +1,1391 @@
+# This file is distributed under the same license as the Django package.
+#
+# Translators:
+# Viktar Palstsiuk <vipals@gmail.com>, 2014-2015
+# znotdead <zhirafchik@gmail.com>, 2016-2017,2019-2021,2023-2024
+# Bobsans <mr.bobsans@gmail.com>, 2016
+msgid ""
+msgstr ""
+"Project-Id-Version: django\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2024-05-22 11:46-0300\n"
+"PO-Revision-Date: 2024-08-07 06:49+0000\n"
+"Last-Translator: znotdead <zhirafchik@gmail.com>, "
+"2016-2017,2019-2021,2023-2024\n"
+"Language-Team: Belarusian (http://app.transifex.com/django/django/language/"
+"be/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: be\n"
+"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || "
+"(n%100>=11 && n%100<=14)? 2 : 3);\n"
+
+msgid "Afrikaans"
+msgstr "Афрыкаанс"
+
+msgid "Arabic"
+msgstr "Арабская"
+
+msgid "Algerian Arabic"
+msgstr "Алжырская арабская"
+
+msgid "Asturian"
+msgstr "Астурыйская"
+
+msgid "Azerbaijani"
+msgstr "Азэрбайджанская"
+
+msgid "Bulgarian"
+msgstr "Баўгарская"
+
+msgid "Belarusian"
+msgstr "Беларуская"
+
+msgid "Bengali"
+msgstr "Бэнґальская"
+
+msgid "Breton"
+msgstr "Брэтонская"
+
+msgid "Bosnian"
+msgstr "Басьнійская"
+
+msgid "Catalan"
+msgstr "Каталёнская"
+
+msgid "Central Kurdish (Sorani)"
+msgstr "Цэнтральнакурдская (сарані)"
+
+msgid "Czech"
+msgstr "Чэская"
+
+msgid "Welsh"
+msgstr "Валійская"
+
+msgid "Danish"
+msgstr "Дацкая"
+
+msgid "German"
+msgstr "Нямецкая"
+
+msgid "Lower Sorbian"
+msgstr "Ніжнелужыцкая"
+
+msgid "Greek"
+msgstr "Грэцкая"
+
+msgid "English"
+msgstr "Анґельская"
+
+msgid "Australian English"
+msgstr "Анґельская (Аўстралія)"
+
+msgid "British English"
+msgstr "Анґельская (Брытанская)"
+
+msgid "Esperanto"
+msgstr "Эспэранта"
+
+msgid "Spanish"
+msgstr "Гішпанская"
+
+msgid "Argentinian Spanish"
+msgstr "Гішпанская (Арґентына)"
+
+msgid "Colombian Spanish"
+msgstr "Гішпанская (Калумбія)"
+
+msgid "Mexican Spanish"
+msgstr "Гішпанская (Мэксыка)"
+
+msgid "Nicaraguan Spanish"
+msgstr "Гішпанская (Нікараґуа)"
+
+msgid "Venezuelan Spanish"
+msgstr "Іспанская (Вэнэсуэла)"
+
+msgid "Estonian"
+msgstr "Эстонская"
+
+msgid "Basque"
+msgstr "Басконская"
+
+msgid "Persian"
+msgstr "Фарсі"
+
+msgid "Finnish"
+msgstr "Фінская"
+
+msgid "French"
+msgstr "Француская"
+
+msgid "Frisian"
+msgstr "Фрызкая"
+
+msgid "Irish"
+msgstr "Ірляндзкая"
+
+msgid "Scottish Gaelic"
+msgstr "Гэльская шатляндзкая"
+
+msgid "Galician"
+msgstr "Ґальская"
+
+msgid "Hebrew"
+msgstr "Габрэйская"
+
+msgid "Hindi"
+msgstr "Гінды"
+
+msgid "Croatian"
+msgstr "Харвацкая"
+
+msgid "Upper Sorbian"
+msgstr "Верхнелужыцкая"
+
+msgid "Hungarian"
+msgstr "Вугорская"
+
+msgid "Armenian"
+msgstr "Армянскі"
+
+msgid "Interlingua"
+msgstr "Інтэрлінгва"
+
+msgid "Indonesian"
+msgstr "Інданэзійская"
+
+msgid "Igbo"
+msgstr "Ігба"
+
+msgid "Ido"
+msgstr "Іда"
+
+msgid "Icelandic"
+msgstr "Ісьляндзкая"
+
+msgid "Italian"
+msgstr "Італьянская"
+
+msgid "Japanese"
+msgstr "Японская"
+
+msgid "Georgian"
+msgstr "Грузінская"
+
+msgid "Kabyle"
+msgstr "Кабільскі"
+
+msgid "Kazakh"
+msgstr "Казаская"
+
+msgid "Khmer"
+msgstr "Кхмерская"
+
+msgid "Kannada"
+msgstr "Каннада"
+
+msgid "Korean"
+msgstr "Карэйская"
+
+msgid "Kyrgyz"
+msgstr "Кіргізская"
+
+msgid "Luxembourgish"
+msgstr "Люксэмбургская"
+
+msgid "Lithuanian"
+msgstr "Літоўская"
+
+msgid "Latvian"
+msgstr "Латыская"
+
+msgid "Macedonian"
+msgstr "Македонская"
+
+msgid "Malayalam"
+msgstr "Малаялам"
+
+msgid "Mongolian"
+msgstr "Манґольская"
+
+msgid "Marathi"
+msgstr "Маратхі"
+
+msgid "Malay"
+msgstr "Малайская"
+
+msgid "Burmese"
+msgstr "Бірманская"
+
+msgid "Norwegian Bokmål"
+msgstr "Нарвэская букмал"
+
+msgid "Nepali"
+msgstr "Нэпальская"
+
+msgid "Dutch"
+msgstr "Галяндзкая"
+
+msgid "Norwegian Nynorsk"
+msgstr "Нарвэская нюнорск"
+
+msgid "Ossetic"
+msgstr "Асяцінская"
+
+msgid "Punjabi"
+msgstr "Панджабі"
+
+msgid "Polish"
+msgstr "Польская"
+
+msgid "Portuguese"
+msgstr "Партуґальская"
+
+msgid "Brazilian Portuguese"
+msgstr "Партуґальская (Бразылія)"
+
+msgid "Romanian"
+msgstr "Румынская"
+
+msgid "Russian"
+msgstr "Расейская"
+
+msgid "Slovak"
+msgstr "Славацкая"
+
+msgid "Slovenian"
+msgstr "Славенская"
+
+msgid "Albanian"
+msgstr "Альбанская"
+
+msgid "Serbian"
+msgstr "Сэрбская"
+
+msgid "Serbian Latin"
+msgstr "Сэрбская (лацінка)"
+
+msgid "Swedish"
+msgstr "Швэдзкая"
+
+msgid "Swahili"
+msgstr "Суахілі"
+
+msgid "Tamil"
+msgstr "Тамільская"
+
+msgid "Telugu"
+msgstr "Тэлуґу"
+
+msgid "Tajik"
+msgstr "Таджыкскі"
+
+msgid "Thai"
+msgstr "Тайская"
+
+msgid "Turkmen"
+msgstr "Туркменская"
+
+msgid "Turkish"
+msgstr "Турэцкая"
+
+msgid "Tatar"
+msgstr "Татарская"
+
+msgid "Udmurt"
+msgstr "Удмурцкая"
+
+msgid "Uyghur"
+msgstr "Уйгурскі"
+
+msgid "Ukrainian"
+msgstr "Украінская"
+
+msgid "Urdu"
+msgstr "Урду"
+
+msgid "Uzbek"
+msgstr "Узбецкі"
+
+msgid "Vietnamese"
+msgstr "Віетнамская"
+
+msgid "Simplified Chinese"
+msgstr "Кітайская (спрошчаная)"
+
+msgid "Traditional Chinese"
+msgstr "Кітайская (звычайная)"
+
+msgid "Messages"
+msgstr "Паведамленні"
+
+msgid "Site Maps"
+msgstr "Мапы сайту"
+
+msgid "Static Files"
+msgstr "Cтатычныя файлы"
+
+msgid "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 "Лік гэтай старонкі не з'яўляецца цэлым лікам"
+
+msgid "That page number is less than 1"
+msgstr "Лік старонкі менш чым 1"
+
+msgid "That page contains no results"
+msgstr "Гэтая старонка не мае ніякіх вынікаў"
+
+msgid "Enter a valid value."
+msgstr "Пазначце правільнае значэньне."
+
+msgid "Enter a valid domain name."
+msgstr "Пазначце сапраўднае даменнае имя."
+
+msgid "Enter a valid URL."
+msgstr "Пазначце чынную спасылку."
+
+msgid "Enter a valid integer."
+msgstr "Увядзіце цэлы лік."
+
+msgid "Enter a valid email address."
+msgstr "Увядзіце сапраўдны адрас электроннай пошты."
+
+#. Translators: "letters" means latin letters: a-z and A-Z.
+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 ""
+"Значэнне павінна быць толькі з літараў стандарту Unicode, личбаў, знакаў "
+"падкрэслівання ці злучкі."
+
+#, python-format
+msgid "Enter a valid %(protocol)s address."
+msgstr "Пазначце сапраўдны %(protocol)s адрас."
+
+msgid "IPv4"
+msgstr "IPv4"
+
+msgid "IPv6"
+msgstr "IPv6"
+
+msgid "IPv4 or IPv6"
+msgstr "IPv4 або IPv6"
+
+msgid "Enter only digits separated by commas."
+msgstr "Набярыце лічбы, падзеленыя коскамі."
+
+#, python-format
+msgid "Ensure this value is %(limit_value)s (it is %(show_value)s)."
+msgstr ""
+"Упэўніцеся, што гэтае значэньне — %(limit_value)s (зараз яно — "
+"%(show_value)s)."
+
+#, python-format
+msgid "Ensure this value is less than or equal to %(limit_value)s."
+msgstr "Значэньне мусіць быць меншым або роўным %(limit_value)s."
+
+#, python-format
+msgid "Ensure this value is greater than or equal to %(limit_value)s."
+msgstr "Значэньне мусіць быць большым або роўным %(limit_value)s."
+
+#, python-format
+msgid "Ensure this value is a multiple of step size %(limit_value)s."
+msgstr "Пераканайцеся, што гэта значэнне кратнае памеру кроку %(limit_value)s."
+
+#, python-format
+msgid ""
+"Ensure this value is a multiple of step size %(limit_value)s, starting from "
+"%(offset)s, e.g. %(offset)s, %(valid_value1)s, %(valid_value2)s, and so on."
+msgstr ""
+"Пераканайцеся, што гэта значэнне кратнае памеру кроку %(limit_value)s, "
+"пачынаючы з %(offset)s, напрыклад.  %(offset)s, %(valid_value1)s, "
+"%(valid_value2)s, і гэтак далей."
+
+#, python-format
+msgid ""
+"Ensure this value has at least %(limit_value)d character (it has "
+"%(show_value)d)."
+msgid_plural ""
+"Ensure this value has at least %(limit_value)d characters (it has "
+"%(show_value)d)."
+msgstr[0] ""
+"Упэўніцеся, што гэтае значэнне мае не менш %(limit_value)d сімвал (зараз "
+"%(show_value)d)."
+msgstr[1] ""
+"Упэўніцеся, што гэтае значэнне мае не менш %(limit_value)d сімвала (зараз "
+"%(show_value)d)."
+msgstr[2] ""
+"Упэўніцеся, што гэтае значэнне мае не менш %(limit_value)d сімвалаў (зараз "
+"%(show_value)d)."
+msgstr[3] ""
+"Упэўніцеся, што гэтае значэнне мае не менш %(limit_value)d сімвалаў (зараз "
+"%(show_value)d)."
+
+#, python-format
+msgid ""
+"Ensure this value has at most %(limit_value)d character (it has "
+"%(show_value)d)."
+msgid_plural ""
+"Ensure this value has at most %(limit_value)d characters (it has "
+"%(show_value)d)."
+msgstr[0] ""
+"Упэўніцеся, што гэтае значэнне мае не болей %(limit_value)d сімвал (зараз "
+"%(show_value)d)."
+msgstr[1] ""
+"Упэўніцеся, што гэтае значэнне мае не болей %(limit_value)d сімвала (зараз "
+"%(show_value)d)."
+msgstr[2] ""
+"Упэўніцеся, што гэтае значэнне мае не болей %(limit_value)d сімвалаў (зараз "
+"%(show_value)d)."
+msgstr[3] ""
+"Упэўніцеся, што гэтае значэнне мае не болей %(limit_value)d сімвалаў (зараз "
+"%(show_value)d)."
+
+msgid "Enter a number."
+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[1] "Упэўніцеся, што набралі ня болей за %(max)s лічбы."
+msgstr[2] "Упэўніцеся, што набралі ня болей за %(max)s лічбаў."
+msgstr[3] "Упэўніцеся, што набралі ня болей за %(max)s лічбаў."
+
+#, python-format
+msgid "Ensure that there are no more than %(max)s decimal place."
+msgid_plural "Ensure that there are no more than %(max)s decimal places."
+msgstr[0] "Упэўніцеся, што набралі ня болей за %(max)s лічбу пасьля коскі."
+msgstr[1] "Упэўніцеся, што набралі ня болей за %(max)s лічбы пасьля коскі."
+msgstr[2] "Упэўніцеся, што набралі ня болей за %(max)s лічбаў пасьля коскі."
+msgstr[3] "Упэўніцеся, што набралі ня болей за %(max)s лічбаў пасьля коскі."
+
+#, python-format
+msgid ""
+"Ensure that there are no more than %(max)s digit before the decimal point."
+msgid_plural ""
+"Ensure that there are no more than %(max)s digits before the decimal point."
+msgstr[0] "Упэўніцеся, што набралі ня болей за %(max)s лічбу да коскі."
+msgstr[1] "Упэўніцеся, што набралі ня болей за %(max)s лічбы да коскі."
+msgstr[2] "Упэўніцеся, што набралі ня болей за %(max)s лічбаў да коскі."
+msgstr[3] "Упэўніцеся, што набралі ня болей за %(max)s лічбаў да коскі."
+
+#, python-format
+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 "Null сімвалы не дапускаюцца."
+
+msgid "and"
+msgstr "і"
+
+#, python-format
+msgid "%(model_name)s with this %(field_labels)s already exists."
+msgstr "%(model_name)s з такім %(field_labels)s ужо існуе."
+
+#, python-format
+msgid "Constraint “%(name)s” is violated."
+msgstr "Абмежаванне \"%(name)s\" парушана."
+
+#, python-format
+msgid "Value %(value)r is not a valid choice."
+msgstr "Значэнне %(value)r не з'яўляецца правільным выбарам."
+
+msgid "This field cannot be null."
+msgstr "Поле ня можа мець значэньне «null»."
+
+msgid "This field cannot be blank."
+msgstr "Трэба запоўніць поле."
+
+#, python-format
+msgid "%(model_name)s with this %(field_label)s already exists."
+msgstr "%(model_name)s з такім %(field_label)s ужо існуе."
+
+#. Translators: The 'lookup_type' is one of 'date', 'year' or
+#. 'month'. Eg: "Title must be unique for pub_date year"
+#, python-format
+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."
+
+#, python-format
+msgid "Field of type: %(field_type)s"
+msgstr "Палі віду: %(field_type)s"
+
+#, python-format
+msgid "“%(value)s” value must be either True or False."
+msgstr "Значэньне “%(value)s”  павінна быць True альбо False."
+
+#, python-format
+msgid "“%(value)s” value must be either True, False, or None."
+msgstr "Значэньне “%(value)s” павінна быць True, False альбо None."
+
+msgid "Boolean (Either True or False)"
+msgstr "Ляґічнае («сапраўдна» або «не сапраўдна»)"
+
+#, python-format
+msgid "String (up to %(max_length)s)"
+msgstr "Радок (ня болей за %(max_length)s)"
+
+msgid "String (unlimited)"
+msgstr "Радок (неабмежаваны)"
+
+msgid "Comma-separated integers"
+msgstr "Цэлыя лікі, падзеленыя коскаю"
+
+#, python-format
+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 "Дата (бяз часу)"
+
+#, python-format
+msgid ""
+"“%(value)s” value has an invalid format. It must be in YYYY-MM-DD HH:MM[:ss[."
+"uuuuuu]][TZ] format."
+msgstr ""
+"Значэнне “%(value)s” мае няправільны фармат. Яно павінна быць у фармаце ГГГГ-"
+"ММ-ДД ГГ:ХХ[:сс[.мммммм]][ЧА], дзе ЧА — часавы абсяг."
+
+#, 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” мае правільны фармат (ГГГГ-ММ-ДД ГГ:ХХ[:сс[.мммммм]]"
+"[ЧА], дзе ЧА — часавы абсяг) але гэта несапраўдныя дата/час."
+
+msgid "Date (with time)"
+msgstr "Дата (разам з часам)"
+
+#, python-format
+msgid "“%(value)s” value must be a decimal number."
+msgstr "Значэньне “%(value)s” павінна быць дзесятковым лікам."
+
+msgid "Decimal number"
+msgstr "Дзесятковы лік"
+
+#, python-format
+msgid ""
+"“%(value)s” value has an invalid format. It must be in [DD] [[HH:]MM:]ss[."
+"uuuuuu] format."
+msgstr ""
+"Значэньне “%(value)s” мае няправільны фармат. Яно павінна быць у фармаце "
+"[ДД] [ГГ:[ХХ:]]сс[.мммммм]."
+
+msgid "Duration"
+msgstr "Працягласць"
+
+msgid "Email address"
+msgstr "Адрас эл. пошты"
+
+msgid "File path"
+msgstr "Шлях да файла"
+
+#, python-format
+msgid "“%(value)s” value must be a float."
+msgstr "Значэньне “%(value)s” павінна быць дробным лікам."
+
+msgid "Floating point number"
+msgstr "Лік зь пераноснай коскаю"
+
+#, python-format
+msgid "“%(value)s” value must be an integer."
+msgstr "Значэньне “%(value)s” павінна быць цэлым лікам."
+
+msgid "Integer"
+msgstr "Цэлы лік"
+
+msgid "Big (8 byte) integer"
+msgstr "Вялікі (8 байтаў) цэлы"
+
+msgid "Small integer"
+msgstr "Малы цэлы лік"
+
+msgid "IPv4 address"
+msgstr "Адрас IPv4"
+
+msgid "IP address"
+msgstr "Адрас IP"
+
+#, python-format
+msgid "“%(value)s” value must be either None, True or False."
+msgstr "Значэньне “%(value)s” павінна быць None, True альбо False."
+
+msgid "Boolean (Either True, False or None)"
+msgstr "Ляґічнае («сапраўдна», «не сапраўдна» ці «нічога»)"
+
+msgid "Positive big integer"
+msgstr "Дадатны вялікі цэлы лік"
+
+msgid "Positive integer"
+msgstr "Дадатны цэлы лік"
+
+msgid "Positive small integer"
+msgstr "Дадатны малы цэлы лік"
+
+#, python-format
+msgid "Slug (up to %(max_length)s)"
+msgstr "Бірка (ня болей за %(max_length)s)"
+
+msgid "Text"
+msgstr "Тэкст"
+
+#, python-format
+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 "Час"
+
+msgid "URL"
+msgstr "Сеціўная спасылка"
+
+msgid "Raw binary data"
+msgstr "Неапрацаваныя бінарныя зьвесткі"
+
+#, python-format
+msgid "“%(value)s” is not a valid UUID."
+msgstr "“%(value)s” не з'яўляецца дапушчальным UUID."
+
+msgid "Universally unique identifier"
+msgstr "Універсальны непаўторны ідэнтыфікатар"
+
+msgid "File"
+msgstr "Файл"
+
+msgid "Image"
+msgstr "Выява"
+
+msgid "A JSON object"
+msgstr "Аб'ект JSON"
+
+msgid "Value must be valid JSON."
+msgstr "Значэньне павінна быць сапраўдным JSON."
+
+#, python-format
+msgid "%(model)s instance with %(field)s %(value)r does not exist."
+msgstr "Экземпляр %(model)s з %(field)s %(value)r не iснуе."
+
+msgid "Foreign Key (type determined by related field)"
+msgstr "Вонкавы ключ (від вызначаецца паводле зьвязанага поля)"
+
+msgid "One-to-one relationship"
+msgstr "Сувязь «адзін да аднаго»"
+
+#, python-format
+msgid "%(from)s-%(to)s relationship"
+msgstr "Сувязь %(from)s-%(to)s"
+
+#, python-format
+msgid "%(from)s-%(to)s relationships"
+msgstr "Сувязi %(from)s-%(to)s"
+
+msgid "Many-to-many relationship"
+msgstr "Сувязь «некалькі да некалькіх»"
+
+#. Translators: If found as last label character, these punctuation
+#. characters will prevent the default label_suffix to be appended to the
+#. label
+msgid ":?.!"
+msgstr ":?.!"
+
+msgid "This field is required."
+msgstr "Поле трэба запоўніць."
+
+msgid "Enter a whole number."
+msgstr "Набярыце ўвесь лік."
+
+msgid "Enter a valid date."
+msgstr "Пазначце чынную дату."
+
+msgid "Enter a valid time."
+msgstr "Пазначце чынны час."
+
+msgid "Enter a valid date/time."
+msgstr "Пазначце чынныя час і дату."
+
+msgid "Enter a valid duration."
+msgstr "Увядзіце сапраўдны тэрмін."
+
+#, python-brace-format
+msgid "The number of days must be between {min_days} and {max_days}."
+msgstr "Колькасць дзён павінна быць паміж {min_days} i {max_days}."
+
+msgid "No file was submitted. Check the encoding type on the form."
+msgstr "Файл не даслалі. Зірніце кадоўку блянку."
+
+msgid "No file was submitted."
+msgstr "Файл не даслалі."
+
+msgid "The submitted file is empty."
+msgstr "Дасланы файл — парожні."
+
+#, python-format
+msgid "Ensure this filename has at most %(max)d character (it has %(length)d)."
+msgid_plural ""
+"Ensure this filename has at most %(max)d characters (it has %(length)d)."
+msgstr[0] ""
+"Упэўніцеся, што гэтае імя файлу мае не болей %(max)d сімвал (зараз "
+"%(length)d)."
+msgstr[1] ""
+"Упэўніцеся, што гэтае імя файлу мае не болей %(max)d сімвала (зараз "
+"%(length)d)."
+msgstr[2] ""
+"Упэўніцеся, што гэтае імя файлу мае не болей %(max)d сімвалаў (зараз "
+"%(length)d)."
+msgstr[3] ""
+"Упэўніцеся, што гэтае імя файлу мае не болей %(max)d сімвалаў (зараз "
+"%(length)d)."
+
+msgid "Please either submit a file or check the clear checkbox, not both."
+msgstr ""
+"Трэба або даслаць файл, або абраць «Ачысьціць», але нельга рабіць гэта "
+"адначасова."
+
+msgid ""
+"Upload a valid image. The file you uploaded was either not an image or a "
+"corrupted image."
+msgstr ""
+"Запампаваць чынны малюнак. Запампавалі або не выяву, або пашкоджаную выяву."
+
+#, python-format
+msgid "Select a valid choice. %(value)s is not one of the available choices."
+msgstr "Абярыце дазволенае. %(value)s няма ў даступных значэньнях."
+
+msgid "Enter a list of values."
+msgstr "Упішыце сьпіс значэньняў."
+
+msgid "Enter a complete value."
+msgstr "Калі ласка, увядзіце поўнае значэньне."
+
+msgid "Enter a valid UUID."
+msgstr "Увядзіце сапраўдны UUID."
+
+msgid "Enter a valid JSON."
+msgstr "Пазначце сапраўдны JSON."
+
+#. Translators: This is the default suffix added to form field labels
+msgid ":"
+msgstr ":"
+
+#, python-format
+msgid "(Hidden field %(name)s) %(error)s"
+msgstr "(Схаванае поле %(name)s) %(error)s"
+
+#, 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 at most %(num)d form."
+msgid_plural "Please submit at most %(num)d forms."
+msgstr[0] "Калі ласка, адпраўце не болей чым %(num)d формаў."
+msgstr[1] "Калі ласка, адпраўце не болей чым %(num)d формаў."
+msgstr[2] "Калі ласка, адпраўце не болей чым %(num)d формаў."
+msgstr[3] "Калі ласка, адпраўце не болей чым %(num)d формаў."
+
+#, python-format
+msgid "Please submit at least %(num)d form."
+msgid_plural "Please submit at least %(num)d forms."
+msgstr[0] "Калі ласка, адпраўце не менш чым %(num)d формаў."
+msgstr[1] "Калі ласка, адпраўце не менш чым %(num)d формаў."
+msgstr[2] "Калі ласка, адпраўце не менш чым %(num)d формаў."
+msgstr[3] "Калі ласка, адпраўце не менш чым %(num)d формаў."
+
+msgid "Order"
+msgstr "Парадак"
+
+msgid "Delete"
+msgstr "Выдаліць"
+
+#, python-format
+msgid "Please correct the duplicate data for %(field)s."
+msgstr "У полі «%(field)s» выпраўце зьвесткі, якія паўтараюцца."
+
+#, python-format
+msgid "Please correct the duplicate data for %(field)s, which must be unique."
+msgstr "Выпраўце зьвесткі ў полі «%(field)s»: нельга, каб яны паўтараліся."
+
+#, python-format
+msgid ""
+"Please correct the duplicate data for %(field_name)s which must be unique "
+"for the %(lookup)s in %(date_field)s."
+msgstr ""
+"Выпраўце зьвесткі ў полі «%(field_name)s»: нельга каб зьвесткі ў "
+"«%(date_field)s» для «%(lookup)s» паўтараліся."
+
+msgid "Please correct the duplicate values below."
+msgstr "Выпраўце зьвесткі, якія паўтараюцца (гл. ніжэй)."
+
+msgid "The inline value did not match the parent instance."
+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 "“%(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 ""
+"У часавым абсягу %(current_timezone)s нельга зразумець дату %(datetime)s: "
+"яна можа быць неадназначнаю або яе можа не існаваць."
+
+msgid "Clear"
+msgstr "Ачысьціць"
+
+msgid "Currently"
+msgstr "Зараз"
+
+msgid "Change"
+msgstr "Зьмяніць"
+
+msgid "Unknown"
+msgstr "Невядома"
+
+msgid "Yes"
+msgstr "Так"
+
+msgid "No"
+msgstr "Не"
+
+#. Translators: Please do not add spaces around commas.
+msgid "yes,no,maybe"
+msgstr "так,не,магчыма"
+
+#, python-format
+msgid "%(size)d byte"
+msgid_plural "%(size)d bytes"
+msgstr[0] "%(size)d байт"
+msgstr[1] "%(size)d байты"
+msgstr[2] "%(size)d байтаў"
+msgstr[3] "%(size)d байтаў"
+
+#, python-format
+msgid "%s KB"
+msgstr "%s КБ"
+
+#, python-format
+msgid "%s MB"
+msgstr "%s МБ"
+
+#, python-format
+msgid "%s GB"
+msgstr "%s ҐБ"
+
+#, python-format
+msgid "%s TB"
+msgstr "%s ТБ"
+
+#, python-format
+msgid "%s PB"
+msgstr "%s ПБ"
+
+msgid "p.m."
+msgstr "папаўдні"
+
+msgid "a.m."
+msgstr "папоўначы"
+
+msgid "PM"
+msgstr "папаўдні"
+
+msgid "AM"
+msgstr "папоўначы"
+
+msgid "midnight"
+msgstr "поўнач"
+
+msgid "noon"
+msgstr "поўдзень"
+
+msgid "Monday"
+msgstr "Панядзелак"
+
+msgid "Tuesday"
+msgstr "Аўторак"
+
+msgid "Wednesday"
+msgstr "Серада"
+
+msgid "Thursday"
+msgstr "Чацьвер"
+
+msgid "Friday"
+msgstr "Пятніца"
+
+msgid "Saturday"
+msgstr "Субота"
+
+msgid "Sunday"
+msgstr "Нядзеля"
+
+msgid "Mon"
+msgstr "Пн"
+
+msgid "Tue"
+msgstr "Аў"
+
+msgid "Wed"
+msgstr "Ср"
+
+msgid "Thu"
+msgstr "Чц"
+
+msgid "Fri"
+msgstr "Пт"
+
+msgid "Sat"
+msgstr "Сб"
+
+msgid "Sun"
+msgstr "Нд"
+
+msgid "January"
+msgstr "студзеня"
+
+msgid "February"
+msgstr "лютага"
+
+msgid "March"
+msgstr "сакавік"
+
+msgid "April"
+msgstr "красавіка"
+
+msgid "May"
+msgstr "траўня"
+
+msgid "June"
+msgstr "чэрвеня"
+
+msgid "July"
+msgstr "ліпеня"
+
+msgid "August"
+msgstr "жніўня"
+
+msgid "September"
+msgstr "верасьня"
+
+msgid "October"
+msgstr "кастрычніка"
+
+msgid "November"
+msgstr "лістапада"
+
+msgid "December"
+msgstr "сьнежня"
+
+msgid "jan"
+msgstr "сту"
+
+msgid "feb"
+msgstr "лют"
+
+msgid "mar"
+msgstr "сак"
+
+msgid "apr"
+msgstr "кра"
+
+msgid "may"
+msgstr "тра"
+
+msgid "jun"
+msgstr "чэр"
+
+msgid "jul"
+msgstr "ліп"
+
+msgid "aug"
+msgstr "жні"
+
+msgid "sep"
+msgstr "вер"
+
+msgid "oct"
+msgstr "кас"
+
+msgid "nov"
+msgstr "ліс"
+
+msgid "dec"
+msgstr "сьн"
+
+msgctxt "abbrev. month"
+msgid "Jan."
+msgstr "Сту."
+
+msgctxt "abbrev. month"
+msgid "Feb."
+msgstr "Люты"
+
+msgctxt "abbrev. month"
+msgid "March"
+msgstr "сакавік"
+
+msgctxt "abbrev. month"
+msgid "April"
+msgstr "красавіка"
+
+msgctxt "abbrev. month"
+msgid "May"
+msgstr "траўня"
+
+msgctxt "abbrev. month"
+msgid "June"
+msgstr "чэрвеня"
+
+msgctxt "abbrev. month"
+msgid "July"
+msgstr "ліпеня"
+
+msgctxt "abbrev. month"
+msgid "Aug."
+msgstr "Жні."
+
+msgctxt "abbrev. month"
+msgid "Sept."
+msgstr "Вер."
+
+msgctxt "abbrev. month"
+msgid "Oct."
+msgstr "Кас."
+
+msgctxt "abbrev. month"
+msgid "Nov."
+msgstr "Ліс."
+
+msgctxt "abbrev. month"
+msgid "Dec."
+msgstr "Сьн."
+
+msgctxt "alt. month"
+msgid "January"
+msgstr "студзеня"
+
+msgctxt "alt. month"
+msgid "February"
+msgstr "лютага"
+
+msgctxt "alt. month"
+msgid "March"
+msgstr "сакавік"
+
+msgctxt "alt. month"
+msgid "April"
+msgstr "красавіка"
+
+msgctxt "alt. month"
+msgid "May"
+msgstr "траўня"
+
+msgctxt "alt. month"
+msgid "June"
+msgstr "чэрвеня"
+
+msgctxt "alt. month"
+msgid "July"
+msgstr "ліпеня"
+
+msgctxt "alt. month"
+msgid "August"
+msgstr "жніўня"
+
+msgctxt "alt. month"
+msgid "September"
+msgstr "верасьня"
+
+msgctxt "alt. month"
+msgid "October"
+msgstr "кастрычніка"
+
+msgctxt "alt. month"
+msgid "November"
+msgstr "лістапада"
+
+msgctxt "alt. month"
+msgid "December"
+msgstr "сьнежня"
+
+msgid "This is not a valid IPv6 address."
+msgstr "Гэта ня правільны адрас IPv6."
+
+#, python-format
+msgctxt "String to return when truncating text"
+msgid "%(truncated_text)s…"
+msgstr "%(truncated_text)s…"
+
+msgid "or"
+msgstr "або"
+
+#. Translators: This string is used as a separator between list elements
+msgid ", "
+msgstr ", "
+
+#, python-format
+msgid "%(num)d year"
+msgid_plural "%(num)d years"
+msgstr[0] "%(num)d год"
+msgstr[1] "%(num)d гадоў"
+msgstr[2] "%(num)d гадоў"
+msgstr[3] "%(num)d гадоў"
+
+#, python-format
+msgid "%(num)d month"
+msgid_plural "%(num)d months"
+msgstr[0] "%(num)d месяц"
+msgstr[1] "%(num)d месяцаў"
+msgstr[2] "%(num)d месяцаў"
+msgstr[3] "%(num)d месяцаў"
+
+#, python-format
+msgid "%(num)d week"
+msgid_plural "%(num)d weeks"
+msgstr[0] "%(num)d тыдзень"
+msgstr[1] "%(num)d тыдняў"
+msgstr[2] "%(num)d тыдняў"
+msgstr[3] "%(num)d тыдняў"
+
+#, python-format
+msgid "%(num)d day"
+msgid_plural "%(num)d days"
+msgstr[0] "%(num)d дзень"
+msgstr[1] "%(num)d  дзён"
+msgstr[2] "%(num)d  дзён"
+msgstr[3] "%(num)d дзён"
+
+#, python-format
+msgid "%(num)d hour"
+msgid_plural "%(num)d hours"
+msgstr[0] "%(num)d гадзіна"
+msgstr[1] "%(num)d гадзін"
+msgstr[2] "%(num)d гадзін"
+msgstr[3] "%(num)d гадзін"
+
+#, python-format
+msgid "%(num)d minute"
+msgid_plural "%(num)d minutes"
+msgstr[0] "%(num)d хвіліна"
+msgstr[1] "%(num)d хвілін"
+msgstr[2] "%(num)d хвілін"
+msgstr[3] "%(num)d хвілін"
+
+msgid "Forbidden"
+msgstr "Забаронена"
+
+msgid "CSRF verification failed. Request aborted."
+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 "
+"required for security reasons, to ensure that your browser is not being "
+"hijacked by third parties."
+msgstr ""
+"Вы бачыце гэта паведамленне, таму што гэты HTTPS-сайт патрабуе каб Referer "
+"загаловак быў адасланы вашым аглядальнікам, але гэтага не адбылося. Гэты "
+"загаловак неабходны для бяспекі, каб пераканацца, што ваш аглядальнік не "
+"ўзаламаны трэцімі асобамі."
+
+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” "
+"загалоўкамі, калі ласка дазвольце іх хаця б для гэтага сайту, ці для HTTPS "
+"злучэнняў, ці для 'same-origin' запытаў."
+
+msgid ""
+"If you are using the <meta name=\"referrer\" content=\"no-referrer\"> tag or "
+"including the “Referrer-Policy: no-referrer” header, please remove them. The "
+"CSRF protection requires the “Referer” header to do strict referer checking. "
+"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”, калі ласка выдаліце іх. "
+"CSRF абароне неабходны “Referer” загаловак для строгай праверкі. Калі Вы "
+"турбуецеся аб прыватнасці, выкарыстоўвайце альтэрнатывы, напрыклад <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 кукі для "
+"адсылкі формы. Гэтыя кукі неабходныя для бяспекі, каб пераканацца, што ваш "
+"браўзэр не ўзламаны трэцімі асобамі."
+
+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."
+
+msgid "No year specified"
+msgstr "Не пазначылі год"
+
+msgid "Date out of range"
+msgstr "Дата выходзіць за межы дыяпазону"
+
+msgid "No month specified"
+msgstr "Не пазначылі месяц"
+
+msgid "No day specified"
+msgstr "Не пазначылі дзень"
+
+msgid "No week specified"
+msgstr "Не пазначылі тыдзень"
+
+#, python-format
+msgid "No %(verbose_name_plural)s available"
+msgstr "Няма доступу да %(verbose_name_plural)s"
+
+#, python-format
+msgid ""
+"Future %(verbose_name_plural)s not available because %(class_name)s."
+"allow_future is False."
+msgstr ""
+"Няма доступу да %(verbose_name_plural)s, якія будуць, бо «%(class_name)s."
+"allow_future» мае значэньне «не сапраўдна»."
+
+#, 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"
+
+msgid "Page is not “last”, nor can it be converted to an int."
+msgstr ""
+"Нумар бачыны ня мае значэньня “last” і яго нельга ператварыць у цэлы лік."
+
+#, python-format
+msgid "Invalid page (%(page_number)s): %(message)s"
+msgstr "Няправільная старонка (%(page_number)s): %(message)s"
+
+#, python-format
+msgid "Empty list and “%(class_name)s.allow_empty” is False."
+msgstr ""
+"Сьпіс парожні, але “%(class_name)s.allow_empty” мае значэньне «не "
+"сапраўдна», што забараняе паказваць парожнія сьпісы."
+
+msgid "Directory indexes are not allowed here."
+msgstr "Не дазваляецца глядзець сьпіс файлаў каталёґа."
+
+#, python-format
+msgid "“%(path)s” does not exist"
+msgstr "“%(path)s” не існуе"
+
+#, python-format
+msgid "Index of %(directory)s"
+msgstr "Файлы каталёґа «%(directory)s»"
+
+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 ""
+"Паглядзець <a href=\"https://docs.djangoproject.com/en/%(version)s/releases/"
+"\" target=\"_blank\" rel=\"noopener\">заўвагі да выпуску</a> для Джангі "
+"%(version)s"
+
+#, python-format
+msgid ""
+"You are seeing this page because <a href=\"https://docs.djangoproject.com/en/"
+"%(version)s/ref/settings/#debug\" target=\"_blank\" "
+"rel=\"noopener\">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> у вашым файле налад і вы не "
+"сканфігурыравалі ніякіх URL."
+
+msgid "Django Documentation"
+msgstr "Дакументацыя Джангі"
+
+msgid "Topics, references, &amp; how-to’s"
+msgstr "Тэмы, спасылкі, &amp; як зрабіць"
+
+msgid "Tutorial: A Polling App"
+msgstr "Падручнік: Дадатак для галасавання"
+
+msgid "Get started with Django"
+msgstr "Пачніце з Джангаю"
+
+msgid "Django Community"
+msgstr "Джанга супольнасць"
+
+msgid "Connect, get help, or contribute"
+msgstr "Злучайцеся, атрымлівайце дапамогу, ці спрыяйце"

BIN
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/bg/LC_MESSAGES/django.mo


+ 1353 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/bg/LC_MESSAGES/django.po

@@ -0,0 +1,1353 @@
+# This file is distributed under the same license as the Django package.
+#
+# Translators:
+# arneatec <arneatec@gmail.com>, 2022-2024
+# 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
+# Mariusz Felisiak <felisiak.mariusz@gmail.com>, 2023
+# 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
+msgid ""
+msgstr ""
+"Project-Id-Version: django\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2024-05-22 11:46-0300\n"
+"PO-Revision-Date: 2024-08-07 06:49+0000\n"
+"Last-Translator: arneatec <arneatec@gmail.com>, 2022-2024\n"
+"Language-Team: Bulgarian (http://app.transifex.com/django/django/language/"
+"bg/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: bg\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+msgid "Afrikaans"
+msgstr "африкаански"
+
+msgid "Arabic"
+msgstr "арабски език"
+
+msgid "Algerian Arabic"
+msgstr "алжирски арабски"
+
+msgid "Asturian"
+msgstr "Астурийски"
+
+msgid "Azerbaijani"
+msgstr "Азербайджански език"
+
+msgid "Bulgarian"
+msgstr "български език"
+
+msgid "Belarusian"
+msgstr "Беларуски"
+
+msgid "Bengali"
+msgstr "бенгалски език"
+
+msgid "Breton"
+msgstr "Бретон"
+
+msgid "Bosnian"
+msgstr "босненски език"
+
+msgid "Catalan"
+msgstr "каталански"
+
+msgid "Central Kurdish (Sorani)"
+msgstr "Кюрдски, централен (Сорани)"
+
+msgid "Czech"
+msgstr "чешки"
+
+msgid "Welsh"
+msgstr "уелски"
+
+msgid "Danish"
+msgstr "датски"
+
+msgid "German"
+msgstr "немски"
+
+msgid "Lower Sorbian"
+msgstr "долносорбски"
+
+msgid "Greek"
+msgstr "гръцки"
+
+msgid "English"
+msgstr "английски"
+
+msgid "Australian English"
+msgstr "австралийски английски"
+
+msgid "British English"
+msgstr "британски английски"
+
+msgid "Esperanto"
+msgstr "есперанто"
+
+msgid "Spanish"
+msgstr "испански"
+
+msgid "Argentinian Spanish"
+msgstr "кастилски"
+
+msgid "Colombian Spanish"
+msgstr "колумбийски испански"
+
+msgid "Mexican Spanish"
+msgstr "мексикански испански"
+
+msgid "Nicaraguan Spanish"
+msgstr "никарагуански испански"
+
+msgid "Venezuelan Spanish"
+msgstr "венецуелски испански"
+
+msgid "Estonian"
+msgstr "естонски"
+
+msgid "Basque"
+msgstr "баски"
+
+msgid "Persian"
+msgstr "персийски"
+
+msgid "Finnish"
+msgstr "финландски"
+
+msgid "French"
+msgstr "френски"
+
+msgid "Frisian"
+msgstr "фризийски"
+
+msgid "Irish"
+msgstr "ирландски"
+
+msgid "Scottish Gaelic"
+msgstr "шотландски галски"
+
+msgid "Galician"
+msgstr "галицейски"
+
+msgid "Hebrew"
+msgstr "иврит"
+
+msgid "Hindi"
+msgstr "хинди"
+
+msgid "Croatian"
+msgstr "хърватски"
+
+msgid "Upper Sorbian"
+msgstr "горносорбски"
+
+msgid "Hungarian"
+msgstr "унгарски"
+
+msgid "Armenian"
+msgstr "арменски"
+
+msgid "Interlingua"
+msgstr "интерлингва"
+
+msgid "Indonesian"
+msgstr "индонезийски"
+
+msgid "Igbo"
+msgstr "игбо"
+
+msgid "Ido"
+msgstr "идо"
+
+msgid "Icelandic"
+msgstr "исландски"
+
+msgid "Italian"
+msgstr "италиански"
+
+msgid "Japanese"
+msgstr "японски"
+
+msgid "Georgian"
+msgstr "грузински"
+
+msgid "Kabyle"
+msgstr "кабилски"
+
+msgid "Kazakh"
+msgstr "казахски"
+
+msgid "Khmer"
+msgstr "кхмерски"
+
+msgid "Kannada"
+msgstr "каннада"
+
+msgid "Korean"
+msgstr "корейски"
+
+msgid "Kyrgyz"
+msgstr "киргизки"
+
+msgid "Luxembourgish"
+msgstr "люксембургски"
+
+msgid "Lithuanian"
+msgstr "литовски"
+
+msgid "Latvian"
+msgstr "латвийски"
+
+msgid "Macedonian"
+msgstr "македонски"
+
+msgid "Malayalam"
+msgstr "малаялам"
+
+msgid "Mongolian"
+msgstr "монголски"
+
+msgid "Marathi"
+msgstr "марати"
+
+msgid "Malay"
+msgstr "малайски"
+
+msgid "Burmese"
+msgstr "бирмански"
+
+msgid "Norwegian Bokmål"
+msgstr "норвежки букмол"
+
+msgid "Nepali"
+msgstr "непалски"
+
+msgid "Dutch"
+msgstr "нидерландски"
+
+msgid "Norwegian Nynorsk"
+msgstr "съвременен норвежки"
+
+msgid "Ossetic"
+msgstr "осетски"
+
+msgid "Punjabi"
+msgstr "панджабски"
+
+msgid "Polish"
+msgstr "полски"
+
+msgid "Portuguese"
+msgstr "португалски"
+
+msgid "Brazilian Portuguese"
+msgstr "бразилски португалски"
+
+msgid "Romanian"
+msgstr "румънски"
+
+msgid "Russian"
+msgstr "руски"
+
+msgid "Slovak"
+msgstr "словашки"
+
+msgid "Slovenian"
+msgstr "словенски"
+
+msgid "Albanian"
+msgstr "албански"
+
+msgid "Serbian"
+msgstr "сръбски"
+
+msgid "Serbian Latin"
+msgstr "сръбски - латиница"
+
+msgid "Swedish"
+msgstr "шведски"
+
+msgid "Swahili"
+msgstr "суахили"
+
+msgid "Tamil"
+msgstr "тамилски"
+
+msgid "Telugu"
+msgstr "телугу"
+
+msgid "Tajik"
+msgstr "таджикски"
+
+msgid "Thai"
+msgstr "тайландски"
+
+msgid "Turkmen"
+msgstr "туркменски"
+
+msgid "Turkish"
+msgstr "турски"
+
+msgid "Tatar"
+msgstr "татарски"
+
+msgid "Udmurt"
+msgstr "удмурт"
+
+msgid "Uyghur"
+msgstr "Уйгурски"
+
+msgid "Ukrainian"
+msgstr "украински"
+
+msgid "Urdu"
+msgstr "урду"
+
+msgid "Uzbek"
+msgstr "узбекски"
+
+msgid "Vietnamese"
+msgstr "виетнамски"
+
+msgid "Simplified Chinese"
+msgstr "китайски"
+
+msgid "Traditional Chinese"
+msgstr "традиционен китайски"
+
+msgid "Messages"
+msgstr "Съобщения"
+
+msgid "Site Maps"
+msgstr "Карти на сайта"
+
+msgid "Static Files"
+msgstr "Статични файлове"
+
+msgid "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 "Номерът на страницата не е цяло число"
+
+msgid "That page number is less than 1"
+msgstr "Номерът на страницата е по-малък от 1"
+
+msgid "That page contains no results"
+msgstr "В тази страница няма резултати"
+
+msgid "Enter a valid value."
+msgstr "Въведете валидна стойност.  "
+
+msgid "Enter a valid domain name."
+msgstr "Въведете валидно име на домейн."
+
+msgid "Enter a valid URL."
+msgstr "Въведете валиден URL адрес."
+
+msgid "Enter a valid integer."
+msgstr "Въведете валидно целочислено число."
+
+msgid "Enter a valid email address."
+msgstr "Въведете валиден имейл адрес."
+
+#. Translators: "letters" means latin letters: a-z and A-Z.
+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 ""
+"Въведете валиден 'слъг', състоящ се от Уникод букви, цифри, тирета или долни "
+"тирета."
+
+#, python-format
+msgid "Enter a valid %(protocol)s address."
+msgstr "Въведете валиден %(protocol)s адрес."
+
+msgid "IPv4"
+msgstr "IPv4"
+
+msgid "IPv6"
+msgstr "IPv6"
+
+msgid "IPv4 or IPv6"
+msgstr "IPv4 или IPv6"
+
+msgid "Enter only digits separated by commas."
+msgstr "Въведете само еднозначни числа, разделени със запетая.  "
+
+#, python-format
+msgid "Ensure this value is %(limit_value)s (it is %(show_value)s)."
+msgstr "Уверете се, че тази стойност е %(limit_value)s (тя е %(show_value)s)."
+
+#, python-format
+msgid "Ensure this value is less than or equal to %(limit_value)s."
+msgstr "Уверете се, че тази стойност е по-малка или равна на %(limit_value)s ."
+
+#, python-format
+msgid "Ensure this value is greater than or equal to %(limit_value)s."
+msgstr ""
+"Уверете се, че тази стойност е по-голяма или равна на %(limit_value)s ."
+
+#, python-format
+msgid "Ensure this value is a multiple of step size %(limit_value)s."
+msgstr "Уверете се, че стойността е кратна на стъпката %(limit_value)s."
+
+#, python-format
+msgid ""
+"Ensure this value is a multiple of step size %(limit_value)s, starting from "
+"%(offset)s, e.g. %(offset)s, %(valid_value1)s, %(valid_value2)s, and so on."
+msgstr ""
+"Въведете стойност, кратна на стъпката %(limit_value)s, започвайки от "
+"%(offset)s, например %(offset)s, %(valid_value1)s, %(valid_value2)s, и т.н."
+
+#, python-format
+msgid ""
+"Ensure this value has at least %(limit_value)d character (it has "
+"%(show_value)d)."
+msgid_plural ""
+"Ensure this value has at least %(limit_value)d characters (it has "
+"%(show_value)d)."
+msgstr[0] ""
+"Уверете се, че тази стойност е най-малко %(limit_value)d знака (тя има "
+"%(show_value)d )."
+msgstr[1] ""
+"Уверете се, че тази стойност е най-малко %(limit_value)d знака (тя има "
+"%(show_value)d)."
+
+#, python-format
+msgid ""
+"Ensure this value has at most %(limit_value)d character (it has "
+"%(show_value)d)."
+msgid_plural ""
+"Ensure this value has at most %(limit_value)d characters (it has "
+"%(show_value)d)."
+msgstr[0] ""
+"Уверете се, тази стойност има най-много %(limit_value)d знака (тя има "
+"%(show_value)d)."
+msgstr[1] ""
+"Уверете се, че тази стойност има най-много %(limit_value)d знака (тя има "
+"%(show_value)d)."
+
+msgid "Enter a number."
+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[1] "Уверете се, че има не повече от %(max)s цифри общо."
+
+#, python-format
+msgid "Ensure that there are no more than %(max)s decimal place."
+msgid_plural "Ensure that there are no more than %(max)s decimal places."
+msgstr[0] ""
+"Уверете се, че има не повече от%(max)s знак след десетичната запетая."
+msgstr[1] ""
+"Уверете се, че има не повече от %(max)s знака след десетичната запетая."
+
+#, python-format
+msgid ""
+"Ensure that there are no more than %(max)s digit before the decimal point."
+msgid_plural ""
+"Ensure that there are no more than %(max)s digits before the decimal point."
+msgstr[0] ""
+"Уверете се, че има не повече от %(max)s цифра преди десетичната запетая."
+msgstr[1] ""
+"Уверете се, че има не повече от %(max)s цифри преди десетичната запетая."
+
+#, python-format
+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 "Празни знаци не са разрешени."
+
+msgid "and"
+msgstr "и"
+
+#, python-format
+msgid "%(model_name)s with this %(field_labels)s already exists."
+msgstr "%(model_name)s с този %(field_labels)s вече съществува."
+
+#, python-format
+msgid "Constraint “%(name)s” is violated."
+msgstr "Ограничението “%(name)s” е нарушено."
+
+#, python-format
+msgid "Value %(value)r is not a valid choice."
+msgstr "Стойността %(value)r не е валиден избор."
+
+msgid "This field cannot be null."
+msgstr "Това поле не може да има празна стойност."
+
+msgid "This field cannot be blank."
+msgstr "Това поле не може да е празно."
+
+#, python-format
+msgid "%(model_name)s with this %(field_label)s already exists."
+msgstr "%(model_name)s с този %(field_label)s вече съществува."
+
+#. Translators: The 'lookup_type' is one of 'date', 'year' or
+#. 'month'. Eg: "Title must be unique for pub_date year"
+#, python-format
+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."
+
+#, python-format
+msgid "Field of type: %(field_type)s"
+msgstr "Поле от тип: %(field_type)s"
+
+#, python-format
+msgid "“%(value)s” value must be either True or False."
+msgstr "Стойността на \"%(value)s\" трябва да бъде или True, или False."
+
+#, python-format
+msgid "“%(value)s” value must be either True, False, or None."
+msgstr "Стойност \"%(value)s\" трябва да бъде или True, или False или None."
+
+msgid "Boolean (Either True or False)"
+msgstr "Булево (True или False)"
+
+#, python-format
+msgid "String (up to %(max_length)s)"
+msgstr "Символен низ (до %(max_length)s символа)"
+
+msgid "String (unlimited)"
+msgstr "Стринг (неограничен)"
+
+msgid "Comma-separated integers"
+msgstr "Цели числа, разделени с запетая"
+
+#, python-format
+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 "Дата (без час)"
+
+#, python-format
+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 "Стойността \"%(value)s\" трябва да е десетично число."
+
+msgid "Decimal number"
+msgstr "Десетична дроб"
+
+#, python-format
+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 "Имейл адрес"
+
+msgid "File path"
+msgstr "Път към файл"
+
+#, python-format
+msgid "“%(value)s” value must be a float."
+msgstr "Стойността '%(value)s' трябва да е число с плаваща запетая."
+
+msgid "Floating point number"
+msgstr "Число с плаваща запетая"
+
+#, python-format
+msgid "“%(value)s” value must be an integer."
+msgstr "Стойността \"%(value)s\" трябва да е цяло число."
+
+msgid "Integer"
+msgstr "Цяло число"
+
+msgid "Big (8 byte) integer"
+msgstr "Голямо (8 байта) цяло число"
+
+msgid "Small integer"
+msgstr "2 байта цяло число"
+
+msgid "IPv4 address"
+msgstr "IPv4 адрес"
+
+msgid "IP address"
+msgstr "IP адрес"
+
+#, python-format
+msgid "“%(value)s” value must be either None, True or False."
+msgstr "Стойността '%(value)s' трябва да бъде None, True или False."
+
+msgid "Boolean (Either True, False or None)"
+msgstr "булев (възможните стойности са True, False или None)"
+
+msgid "Positive big integer"
+msgstr "Положително голямо цяло число."
+
+msgid "Positive integer"
+msgstr "Положително цяло число"
+
+msgid "Positive small integer"
+msgstr "Положително 2 байта цяло число"
+
+#, python-format
+msgid "Slug (up to %(max_length)s)"
+msgstr "Слъг (до %(max_length)s )"
+
+msgid "Text"
+msgstr "Текст"
+
+#, python-format
+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 "Време"
+
+msgid "URL"
+msgstr "URL адрес"
+
+msgid "Raw binary data"
+msgstr "сурови двоични данни"
+
+#, python-format
+msgid "“%(value)s” is not a valid UUID."
+msgstr "\"%(value)s\" не е валиден UUID."
+
+msgid "Universally unique identifier"
+msgstr "Универсално уникален идентификатор"
+
+msgid "File"
+msgstr "Файл"
+
+msgid "Image"
+msgstr "Изображение"
+
+msgid "A JSON object"
+msgstr "Обект във формат JSON"
+
+msgid "Value must be valid JSON."
+msgstr "Стойността трябва да е валиден JSON."
+
+#, python-format
+msgid "%(model)s instance with %(field)s %(value)r does not exist."
+msgstr "Инстанция на %(model)s с %(field)s %(value)r не съществува."
+
+msgid "Foreign Key (type determined by related field)"
+msgstr "Външен ключ (тип, определен от свързаното поле)"
+
+msgid "One-to-one relationship"
+msgstr "едно-към-едно релация "
+
+#, python-format
+msgid "%(from)s-%(to)s relationship"
+msgstr "%(from)s-%(to)s релация"
+
+#, python-format
+msgid "%(from)s-%(to)s relationships"
+msgstr "%(from)s-%(to)s релации"
+
+msgid "Many-to-many relationship"
+msgstr "Много-към-много релация"
+
+#. Translators: If found as last label character, these punctuation
+#. characters will prevent the default label_suffix to be appended to the
+#. label
+msgid ":?.!"
+msgstr ":?.!"
+
+msgid "This field is required."
+msgstr "Това поле е задължително."
+
+msgid "Enter a whole number."
+msgstr "Въведете цяло число.  "
+
+msgid "Enter a valid date."
+msgstr "Въведете валидна дата."
+
+msgid "Enter a valid time."
+msgstr "Въведете валиден час."
+
+msgid "Enter a valid date/time."
+msgstr "Въведете валидна дата/час.  "
+
+msgid "Enter a valid duration."
+msgstr "Въведете валидна продължителност."
+
+#, python-brace-format
+msgid "The number of days must be between {min_days} and {max_days}."
+msgstr "Броят на дните трябва да е между {min_days} и {max_days}."
+
+msgid "No file was submitted. Check the encoding type on the form."
+msgstr "Няма изпратен файл.  Проверете типа кодиране на формата.  "
+
+msgid "No file was submitted."
+msgstr "Няма изпратен файл."
+
+msgid "The submitted file is empty."
+msgstr "Изпратеният файл е празен.  "
+
+#, python-format
+msgid "Ensure this filename has at most %(max)d character (it has %(length)d)."
+msgid_plural ""
+"Ensure this filename has at most %(max)d characters (it has %(length)d)."
+msgstr[0] "Уверете се, това име е най-много %(max)d знака (то има %(length)d)."
+msgstr[1] ""
+"Уверете се, че това файлово име има най-много  %(max)d знаци (има "
+"%(length)d)."
+
+msgid "Please either submit a file or check the clear checkbox, not both."
+msgstr ""
+"Моля, или пратете файл или маркирайте полето за изчистване, но не и двете."
+
+msgid ""
+"Upload a valid image. The file you uploaded was either not an image or a "
+"corrupted image."
+msgstr ""
+"Качете валидно изображение. Файлът, който сте качили или не е изображение, "
+"или е повреден.  "
+
+#, python-format
+msgid "Select a valid choice. %(value)s is not one of the available choices."
+msgstr "Направете валиден избор. %(value)s не е един от възможните избори."
+
+msgid "Enter a list of values."
+msgstr "Въведете списък от стойности"
+
+msgid "Enter a complete value."
+msgstr "Въведете пълна стойност."
+
+msgid "Enter a valid UUID."
+msgstr "Въведете валиден UUID."
+
+msgid "Enter a valid JSON."
+msgstr "Въведете валиден JSON."
+
+#. Translators: This is the default suffix added to form field labels
+msgid ":"
+msgstr ":"
+
+#, python-format
+msgid "(Hidden field %(name)s) %(error)s"
+msgstr "(Скрито поле %(name)s) %(error)s"
+
+#, 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 at most %(num)d form."
+msgid_plural "Please submit at most %(num)d forms."
+msgstr[0] "Моля изпратете не повече от %(num)d формуляр."
+msgstr[1] "Моля изпратете не повече от %(num)d формуляра."
+
+#, python-format
+msgid "Please submit at least %(num)d form."
+msgid_plural "Please submit at least %(num)d forms."
+msgstr[0] "Моля изпратете поне %(num)d формуляр."
+msgstr[1] "Моля изпратете поне %(num)d формуляра."
+
+msgid "Order"
+msgstr "Ред"
+
+msgid "Delete"
+msgstr "Изтрий"
+
+#, python-format
+msgid "Please correct the duplicate data for %(field)s."
+msgstr "Моля, коригирайте дублираните данни за %(field)s."
+
+#, python-format
+msgid "Please correct the duplicate data for %(field)s, which must be unique."
+msgstr ""
+"Моля, коригирайте дублираните данни за %(field)s, които трябва да са "
+"уникални."
+
+#, python-format
+msgid ""
+"Please correct the duplicate data for %(field_name)s which must be unique "
+"for the %(lookup)s in %(date_field)s."
+msgstr ""
+"Моля, коригирайте дублиранитe данни за %(field_name)s , които трябва да са "
+"уникални за %(lookup)s в %(date_field)s ."
+
+msgid "Please correct the duplicate values below."
+msgstr "Моля, коригирайте повтарящите се стойности по-долу."
+
+msgid "The inline value did not match the parent instance."
+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 "“%(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 "Изчисти"
+
+msgid "Currently"
+msgstr "Сега"
+
+msgid "Change"
+msgstr "Промени"
+
+msgid "Unknown"
+msgstr "Неизвестно"
+
+msgid "Yes"
+msgstr "Да"
+
+msgid "No"
+msgstr "Не"
+
+#. Translators: Please do not add spaces around commas.
+msgid "yes,no,maybe"
+msgstr "да,не,може би"
+
+#, python-format
+msgid "%(size)d byte"
+msgid_plural "%(size)d bytes"
+msgstr[0] "%(size)d, байт"
+msgstr[1] "%(size)d байта"
+
+#, python-format
+msgid "%s KB"
+msgstr "%s KБ"
+
+#, python-format
+msgid "%s MB"
+msgstr "%s МБ"
+
+#, python-format
+msgid "%s GB"
+msgstr "%s ГБ"
+
+#, python-format
+msgid "%s TB"
+msgstr "%s ТБ"
+
+#, python-format
+msgid "%s PB"
+msgstr "%s ПБ"
+
+msgid "p.m."
+msgstr "след обяд"
+
+msgid "a.m."
+msgstr "преди обяд"
+
+msgid "PM"
+msgstr "след обяд"
+
+msgid "AM"
+msgstr "преди обяд"
+
+msgid "midnight"
+msgstr "полунощ"
+
+msgid "noon"
+msgstr "обяд"
+
+msgid "Monday"
+msgstr "понеделник"
+
+msgid "Tuesday"
+msgstr "вторник"
+
+msgid "Wednesday"
+msgstr "сряда"
+
+msgid "Thursday"
+msgstr "четвъртък"
+
+msgid "Friday"
+msgstr "петък"
+
+msgid "Saturday"
+msgstr "събота"
+
+msgid "Sunday"
+msgstr "неделя"
+
+msgid "Mon"
+msgstr "Пон"
+
+msgid "Tue"
+msgstr "Вт"
+
+msgid "Wed"
+msgstr "Ср"
+
+msgid "Thu"
+msgstr "Чет"
+
+msgid "Fri"
+msgstr "Пет"
+
+msgid "Sat"
+msgstr "Съб"
+
+msgid "Sun"
+msgstr "Нед"
+
+msgid "January"
+msgstr "Януари"
+
+msgid "February"
+msgstr "Февруари"
+
+msgid "March"
+msgstr "Март"
+
+msgid "April"
+msgstr "Април"
+
+msgid "May"
+msgstr "Май"
+
+msgid "June"
+msgstr "Юни"
+
+msgid "July"
+msgstr "Юли"
+
+msgid "August"
+msgstr "Август"
+
+msgid "September"
+msgstr "Септември"
+
+msgid "October"
+msgstr "Октомври"
+
+msgid "November"
+msgstr "Ноември"
+
+msgid "December"
+msgstr "Декември"
+
+msgid "jan"
+msgstr "ян"
+
+msgid "feb"
+msgstr "фев"
+
+msgid "mar"
+msgstr "мар"
+
+msgid "apr"
+msgstr "апр"
+
+msgid "may"
+msgstr "май"
+
+msgid "jun"
+msgstr "юни"
+
+msgid "jul"
+msgstr "юли"
+
+msgid "aug"
+msgstr "авг"
+
+msgid "sep"
+msgstr "сеп"
+
+msgid "oct"
+msgstr "окт"
+
+msgid "nov"
+msgstr "ноем"
+
+msgid "dec"
+msgstr "дек"
+
+msgctxt "abbrev. month"
+msgid "Jan."
+msgstr "Ян."
+
+msgctxt "abbrev. month"
+msgid "Feb."
+msgstr "Фев."
+
+msgctxt "abbrev. month"
+msgid "March"
+msgstr "Март"
+
+msgctxt "abbrev. month"
+msgid "April"
+msgstr "Апр."
+
+msgctxt "abbrev. month"
+msgid "May"
+msgstr "Май"
+
+msgctxt "abbrev. month"
+msgid "June"
+msgstr "Юни"
+
+msgctxt "abbrev. month"
+msgid "July"
+msgstr "Юли"
+
+msgctxt "abbrev. month"
+msgid "Aug."
+msgstr "Авг."
+
+msgctxt "abbrev. month"
+msgid "Sept."
+msgstr "Септ."
+
+msgctxt "abbrev. month"
+msgid "Oct."
+msgstr "Окт."
+
+msgctxt "abbrev. month"
+msgid "Nov."
+msgstr "Ноем."
+
+msgctxt "abbrev. month"
+msgid "Dec."
+msgstr "Дек."
+
+msgctxt "alt. month"
+msgid "January"
+msgstr "Януари"
+
+msgctxt "alt. month"
+msgid "February"
+msgstr "Февруари"
+
+msgctxt "alt. month"
+msgid "March"
+msgstr "Март"
+
+msgctxt "alt. month"
+msgid "April"
+msgstr "Април"
+
+msgctxt "alt. month"
+msgid "May"
+msgstr "Май"
+
+msgctxt "alt. month"
+msgid "June"
+msgstr "Юни"
+
+msgctxt "alt. month"
+msgid "July"
+msgstr "Юли"
+
+msgctxt "alt. month"
+msgid "August"
+msgstr "Август"
+
+msgctxt "alt. month"
+msgid "September"
+msgstr "Септември"
+
+msgctxt "alt. month"
+msgid "October"
+msgstr "Октомври"
+
+msgctxt "alt. month"
+msgid "November"
+msgstr "Ноември"
+
+msgctxt "alt. month"
+msgid "December"
+msgstr "Декември"
+
+msgid "This is not a valid IPv6 address."
+msgstr "Въведете валиден IPv6 адрес."
+
+#, python-format
+msgctxt "String to return when truncating text"
+msgid "%(truncated_text)s…"
+msgstr "%(truncated_text)s…"
+
+msgid "or"
+msgstr "или"
+
+#. Translators: This string is used as a separator between list elements
+msgid ", "
+msgstr ", "
+
+#, python-format
+msgid "%(num)d year"
+msgid_plural "%(num)d years"
+msgstr[0] "%(num)d година"
+msgstr[1] "%(num)d години"
+
+#, python-format
+msgid "%(num)d month"
+msgid_plural "%(num)d months"
+msgstr[0] "%(num)d месец"
+msgstr[1] "%(num)d месеца"
+
+#, python-format
+msgid "%(num)d week"
+msgid_plural "%(num)d weeks"
+msgstr[0] "%(num)d седмица"
+msgstr[1] "%(num)d седмици"
+
+#, python-format
+msgid "%(num)d day"
+msgid_plural "%(num)d days"
+msgstr[0] "%(num)d ден"
+msgstr[1] "%(num)d дни"
+
+#, python-format
+msgid "%(num)d hour"
+msgid_plural "%(num)d hours"
+msgstr[0] "%(num)d час"
+msgstr[1] "%(num)d часа"
+
+#, python-format
+msgid "%(num)d minute"
+msgid_plural "%(num)d minutes"
+msgstr[0] "%(num)d минута"
+msgstr[1] "%(num)d минути"
+
+msgid "Forbidden"
+msgstr "Забранен"
+
+msgid "CSRF verification failed. Request aborted."
+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 "
+"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 "
+"including the “Referrer-Policy: no-referrer” header, please remove them. The "
+"CSRF protection requires the “Referer” header to do strict referer checking. "
+"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 бисквитка, когато "
+"се подават формуляри. Тази бисквитка е задължителна от съображения за "
+"сигурност, за да се гарантира, че вашият браузър не е компрометиран от трети "
+"страни."
+
+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."
+
+msgid "No year specified"
+msgstr "Не е посочена година"
+
+msgid "Date out of range"
+msgstr "Датата е в невалиден диапазон"
+
+msgid "No month specified"
+msgstr "Не е посочен месец"
+
+msgid "No day specified"
+msgstr "Не е посочен ден"
+
+msgid "No week specified"
+msgstr "Не е посочена седмица"
+
+#, python-format
+msgid "No %(verbose_name_plural)s available"
+msgstr "Няма достъпни %(verbose_name_plural)s"
+
+#, python-format
+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."
+"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, съвпадащи със заявката"
+
+msgid "Page is not “last”, nor can it be converted to an int."
+msgstr ""
+"Страницата не е \"последна\", нито може да се преобразува в цяло число."
+
+#, python-format
+msgid "Invalid page (%(page_number)s): %(message)s"
+msgstr "Невалидна страница (%(page_number)s): %(message)s"
+
+#, python-format
+msgid "Empty list and “%(class_name)s.allow_empty” is False."
+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 "\"%(path)s\" не съществува"
+
+#, python-format
+msgid "Index of %(directory)s"
+msgstr "Индекс %(directory)s"
+
+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 ""
+"Разгледайте <a href=\"https://docs.djangoproject.com/en/%(version)s/releases/"
+"\" target=\"_blank\" rel=\"noopener\">release notes</a> за Django %(version)s"
+
+#, python-format
+msgid ""
+"You are seeing this page because <a href=\"https://docs.djangoproject.com/en/"
+"%(version)s/ref/settings/#debug\" target=\"_blank\" "
+"rel=\"noopener\">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> е във вашия файл с настройки и не сте "
+"конфигурирали никакви URL-и."
+
+msgid "Django Documentation"
+msgstr "Django документация"
+
+msgid "Topics, references, &amp; how-to’s"
+msgstr "Теми, наръчници, &amp; друга документация"
+
+msgid "Tutorial: A Polling App"
+msgstr "Урок: Приложение за анкета"
+
+msgid "Get started with Django"
+msgstr "Започнете с Django"
+
+msgid "Django Community"
+msgstr "Django общност"
+
+msgid "Connect, get help, or contribute"
+msgstr "Свържете се, получете помощ или допринесете"

+ 0 - 0
courses/django_kind/env/lib/python3.12/site-packages/django/conf/locale/bg/__init__.py


Some files were not shown because too many files changed in this diff