prompt: You will be provided with a partial code base and an issue statement explaining a problem to resolve.
  <issue>
  dashboard: district "gesamtstädtisch" ist ---
  in dashboard the default district is "---" and should be changed to "Gesamtstädtisch"
  
  </issue>
  <code>
  [start of meinberlin/apps/projects/forms.py]
  1 from django import forms
  2 from django.conf import settings
  3 from django.contrib.auth import get_user_model
  4 from django.core.exceptions import ValidationError
  5 from django.utils.translation import ugettext_lazy as _
  6 
  7 from adhocracy4.dashboard.forms import ProjectDashboardForm
  8 from adhocracy4.maps import widgets as maps_widgets
  9 from adhocracy4.projects.models import Project
  10 from meinberlin.apps.users import fields as user_fields
  11 
  12 from .models import ModeratorInvite
  13 from .models import ParticipantInvite
  14 
  15 User = get_user_model()
  16 
  17 
  18 class InviteForm(forms.ModelForm):
  19     accept = forms.CharField(required=False)
  20     reject = forms.CharField(required=False)
  21 
  22     def clean(self):
  23         data = self.data
  24         if 'accept' not in data and 'reject' not in data:
  25             raise ValidationError('Reject or accept')
  26         return data
  27 
  28     def is_accepted(self):
  29         data = self.data
  30         return 'accept' in data and 'reject' not in data
  31 
  32 
  33 class ParticipantInviteForm(InviteForm):
  34 
  35     class Meta:
  36         model = ParticipantInvite
  37         fields = ['accept', 'reject']
  38 
  39 
  40 class ModeratorInviteForm(InviteForm):
  41 
  42     class Meta:
  43         model = ModeratorInvite
  44         fields = ['accept', 'reject']
  45 
  46 
  47 class InviteUsersFromEmailForm(forms.Form):
  48     add_users = user_fields.CommaSeparatedEmailField(
  49         required=False,
  50         label=_('Invite users via email')
  51     )
  52 
  53     add_users_upload = user_fields.EmailFileField(
  54         required=False,
  55         label=_('Invite users via file upload'),
  56         help_text=_('Upload a csv file containing email addresses.')
  57     )
  58 
  59     def __init__(self, *args, **kwargs):
  60         labels = kwargs.pop('labels', None)
  61         super().__init__(*args, **kwargs)
  62 
  63         if labels:
  64             self.fields['add_users'].label = labels[0]
  65             self.fields['add_users_upload'].label = labels[1]
  66 
  67     def clean(self):
  68         cleaned_data = super().clean()
  69         add_users = self.data.get('add_users')
  70         add_users_upload = self.files.get('add_users_upload')
  71         if not self.errors and not add_users and not add_users_upload:
  72             raise ValidationError(
  73                 _('Please enter email addresses or upload a file'))
  74         return cleaned_data
  75 
  76 
  77 class TopicForm(ProjectDashboardForm):
  78 
  79     class Meta:
  80         model = Project
  81         fields = ['topics']
  82         required_for_project_publish = ['topics']
  83 
  84 
  85 class PointForm(ProjectDashboardForm):
  86 
  87     class Meta:
  88         model = Project
  89         fields = ['administrative_district', 'point']
  90         required_for_project_publish = []
  91         widgets = {
  92             'point': maps_widgets.MapChoosePointWidget(
  93                 polygon=settings.BERLIN_POLYGON)
  94         }
  95
  [end of meinberlin/apps/projects/forms.py]
  </code>
  
  I need you to solve this issue by generating a single patch file that I can apply directly to this repository using git apply. Please respond with a single patch file in the following format.
  <patch>
  diff --git a/file.py b/file.py
  --- a/file.py
  +++ b/file.py
  @@ -1,27 +1,35 @@
   def euclidean(a, b):
  -    while b:
  -        a, b = b, a % b
  -    return a
  +    if b == 0:
  +        return a
  +    return euclidean(b, a % b)
   
   
   def bresenham(x0, y0, x1, y1):
       points = []
       dx = abs(x1 - x0)
       dy = abs(y1 - y0)
  -    sx = 1 if x0 < x1 else -1
  -    sy = 1 if y0 < y1 else -1
  -    err = dx - dy
  +    x, y = x0, y0
  +    sx = -1 if x0 > x1 else 1
  +    sy = -1 if y0 > y1 else 1
   
  -    while True:
  -        points.append((x0, y0))
  -        if x0 == x1 and y0 == y1:
  -            break
  -        e2 = 2 * err
  -        if e2 > -dy:
  -            err -= dy
  -            x0 += sx
  -        if e2 < dx:
  -            err += dx
  -            y0 += sy
  +    if dx > dy:
  +        err = dx / 2.0
  +        while x != x1:
  +            points.append((x, y))
  +            err -= dy
  +            if err < 0:
  +                y += sy
  +                err += dx
  +            x += sx
  +    else:
  +        err = dy / 2.0
  +        while y != y1:
  +            points.append((x, y))
  +            err -= dx
  +            if err < 0:
  +                x += sx
  +                err += dy
  +            y += sy
  +
  +    points.append((x, y))
       return points
  
  </patch>
golden_diff: diff --git a/meinberlin/apps/projects/forms.py b/meinberlin/apps/projects/forms.py
  --- a/meinberlin/apps/projects/forms.py
  +++ b/meinberlin/apps/projects/forms.py
  @@ -92,3 +92,7 @@
               'point': maps_widgets.MapChoosePointWidget(
                   polygon=settings.BERLIN_POLYGON)
           }
  +
  +    def __init__(self, *args, **kwargs):
  +        super().__init__(*args, **kwargs)
  +        self.fields['administrative_district'].empty_label = _('City wide')
  
verification_info: {"golden_diff": "diff --git a/meinberlin/apps/projects/forms.py b/meinberlin/apps/projects/forms.py\n--- a/meinberlin/apps/projects/forms.py\n+++ b/meinberlin/apps/projects/forms.py\n@@ -92,3 +92,7 @@\n             'point': maps_widgets.MapChoosePointWidget(\n                 polygon=settings.BERLIN_POLYGON)\n         }\n+\n+    def __init__(self, *args, **kwargs):\n+        super().__init__(*args, **kwargs)\n+        self.fields['administrative_district'].empty_label = _('City wide')\n", "issue": "dashboard: district \"gesamtst\u00e4dtisch\" ist ---\nin dashboard the default district is \"---\" and should be changed to \"Gesamtst\u00e4dtisch\"\n", "before_files": [{"content": "from django import forms\nfrom django.conf import settings\nfrom django.contrib.auth import get_user_model\nfrom django.core.exceptions import ValidationError\nfrom django.utils.translation import ugettext_lazy as _\n\nfrom adhocracy4.dashboard.forms import ProjectDashboardForm\nfrom adhocracy4.maps import widgets as maps_widgets\nfrom adhocracy4.projects.models import Project\nfrom meinberlin.apps.users import fields as user_fields\n\nfrom .models import ModeratorInvite\nfrom .models import ParticipantInvite\n\nUser = get_user_model()\n\n\nclass InviteForm(forms.ModelForm):\n    accept = forms.CharField(required=False)\n    reject = forms.CharField(required=False)\n\n    def clean(self):\n        data = self.data\n        if 'accept' not in data and 'reject' not in data:\n            raise ValidationError('Reject or accept')\n        return data\n\n    def is_accepted(self):\n        data = self.data\n        return 'accept' in data and 'reject' not in data\n\n\nclass ParticipantInviteForm(InviteForm):\n\n    class Meta:\n        model = ParticipantInvite\n        fields = ['accept', 'reject']\n\n\nclass ModeratorInviteForm(InviteForm):\n\n    class Meta:\n        model = ModeratorInvite\n        fields = ['accept', 'reject']\n\n\nclass InviteUsersFromEmailForm(forms.Form):\n    add_users = user_fields.CommaSeparatedEmailField(\n        required=False,\n        label=_('Invite users via email')\n    )\n\n    add_users_upload = user_fields.EmailFileField(\n        required=False,\n        label=_('Invite users via file upload'),\n        help_text=_('Upload a csv file containing email addresses.')\n    )\n\n    def __init__(self, *args, **kwargs):\n        labels = kwargs.pop('labels', None)\n        super().__init__(*args, **kwargs)\n\n        if labels:\n            self.fields['add_users'].label = labels[0]\n            self.fields['add_users_upload'].label = labels[1]\n\n    def clean(self):\n        cleaned_data = super().clean()\n        add_users = self.data.get('add_users')\n        add_users_upload = self.files.get('add_users_upload')\n        if not self.errors and not add_users and not add_users_upload:\n            raise ValidationError(\n                _('Please enter email addresses or upload a file'))\n        return cleaned_data\n\n\nclass TopicForm(ProjectDashboardForm):\n\n    class Meta:\n        model = Project\n        fields = ['topics']\n        required_for_project_publish = ['topics']\n\n\nclass PointForm(ProjectDashboardForm):\n\n    class Meta:\n        model = Project\n        fields = ['administrative_district', 'point']\n        required_for_project_publish = []\n        widgets = {\n            'point': maps_widgets.MapChoosePointWidget(\n                polygon=settings.BERLIN_POLYGON)\n        }\n", "path": "meinberlin/apps/projects/forms.py"}]}