We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Next Button in DTS is not working
**URL:** https://opin-stage.liqd.net/de/blueprints/liquid-democracy-ev/
**user:** * initiator*
**expected behaviour:** *If I click on next(weiter) then I come to the next page*
**behaviour:** *I can click on it, but nothing happens*
**important screensize:** * desktop?*
**device & browser:** *Desktop, firefox 78.2.(64-Bit)*



--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `euth/blueprints/blueprints.py`
Content:
```
1 from collections import namedtuple
2 from enum import Enum, unique
3 
4 from django.utils.translation import ugettext_lazy as _
5 
6 from adhocracy4.polls import phases as poll_phases
7 from euth.communitydebate import phases as communitydebate_phases
8 from euth.documents import phases as documents_phases
9 from euth.ideas import phases as ideas_phases
10 from euth.maps import phases as map_phases
11 
12 from .names import BlueprintNames
13 
14 
15 class BlueprintEnum(Enum):
16     def __new__(cls, value, label):
17         obj = object.__new__(cls)
18         obj._value_ = len(cls.__members__) + 1
19         obj._value = value
20         obj.label = label
21         return obj
22 
23     @property
24     def value(self):
25         return self._value
26 
27     @classmethod
28     def get(cls, value):
29         return next(m for m in cls if m._value == value)
30 
31 
32 @unique
33 class Aim(Enum):
34     collect_ideas = (
35         'collect_ideas',
36         _('Create and collect new ideas or visions.'),
37         [_('(Urban) planning processes'),
38          _('Develop concepts or guiding principles')]
39     )
40     discuss_topic = (
41         'discuss_topic',
42         _('Gather feedback on a topic and discuss it in greater detail.'),
43         [_('Discuss existing concepts or plans'),
44          _('Develop solutions for existing problems')]
45     )
46     agenda_setting = (
47         'agenda_setting',
48         _('Agenda Setting'),
49         [_('Set the agenda of an event, a process, a project etc.')]
50     )
51     design_place = (
52         'design_place',
53         _('Design a place.'),
54         [_('(Urban) planning processes'),
55          _('Small scale design projects, e.g. renew your premises')]
56     )
57     run_survey = (
58         'run_survey',
59         _('Learn about what people like most.'),
60         [_('Opinion polls, majority votes etc.')]
61     )
62     run_competition = (
63         'run_competition',
64         _('Run a competition.'),
65         [_('All sorts of competitions, '
66            'like idea contests etc.')]
67     )
68     work_document = (
69         'work_document',
70         _('Work together with other people on a text document.'),
71         [_('Draft or revise statutes, articles, charters etc.'),
72          _('Involve different authors in writing a shared text')]
73     )
74     communitydebate = (
75         'communitydebate',
76         _('Find and debate topics and questions.'),
77         [_('Start a discussion and moderate it'),
78          _('Participants can upload documents to deepen the exchange '
79            'and share information')]
80     )
81 
82     def __new__(cls, value, label, examples):
83         obj = object.__new__(cls)
84         obj._value_ = value
85         obj.label = label
86         obj.examples = examples
87         return obj
88 
89 
90 @unique
91 class Result(BlueprintEnum):
92     collect_ideas = 3, _('Collection of commented ideas')
93     majority_vote = 2, _('Majority vote')
94     both = 1, _('Both')
95 
96 
97 @unique
98 class Experience(BlueprintEnum):
99     five_projects = 4, _('More than 5 participative projects')
100     two_projects = 3, _('More than 2 participative projects')
101     one_project = 2, _('1-2 participative projects')
102     no_projects = 1, _('I have no experiences in organising '
103                        'participative projects')
104 
105 
106 class Motivation(BlueprintEnum):
107     high = 4, _('High motivation')
108     medium = 3, _('Medium motivation')
109     low = 2, _('Low motivation')
110     not_found = 1, _('No motivation')
111     unkown = 2, _('I don\'t know.')
112 
113 
114 @unique
115 class Participants(BlueprintEnum):
116     few = 0, '< 25'
117     some = 1, '25-50'
118     many = 2, '50+'
119 
120 
121 @unique
122 class Duration(BlueprintEnum):
123     one_weeks = 0, _('1-2 weeks')
124     two_weeks = 1, _('2-4 weeks')
125     four_weeks = 2, _('more than 4 weeks')
126 
127 
128 @unique
129 class Scope(BlueprintEnum):
130     local = 0, _('Local')
131     regional = 1, _('Regional')
132     national = 2, _('National or international')
133 
134 
135 class Accessibility(BlueprintEnum):
136     very_easy = 1, _('Very easy to access')
137     easy = 2, _('Easy to access')
138     hard = 3, _('Hard to access')
139     very_hard = 4, _('Very hard to access')
140     unkown = 3, _('I don\'t know')
141 
142 
143 ComplexityVector = namedtuple(
144     'ComplexityVector', [
145         'participants', 'duration', 'scope'
146     ]
147 )
148 
149 
150 COMPLEXITY_VECTOR_AC = ComplexityVector(
151     participants=(0, 0.5),
152     duration=(0, 1),
153     scope=(0, 0.5)
154 )
155 
156 COMPLEXITY_VECTOR_BD = ComplexityVector(
157     participants=(0, 1),
158     duration=(0, 1),
159     scope=(0, 1)
160 )
161 
162 COMPLEXITY_VECTOR_E = ComplexityVector(
163     participants=(0, 1 / 3),
164     duration=(0, 0),
165     scope=(0, 1 / 3)
166 )
167 
168 COMPLEXITY_VECTOR_F = ComplexityVector(
169     participants=(1, 1),
170     duration=(0, 1),
171     scope=(0, 0)
172 )
173 
174 Requirements = namedtuple(
175     'Requirements', [
176         'aims', 'results', 'experience', 'motivation'
177     ])
178 
179 
180 Blueprint = namedtuple(
181     'Blueprint', [
182         'title', 'description', 'content', 'image', 'settings_model',
183         'requirements', 'complexity', 'type'
184     ])
185 
186 
187 blueprints = [
188     (BlueprintNames.brainstorming.value,
189      Blueprint(
190          title=_('Brainstorming'),
191          description=_('Collect ideas, questions and input concerning '
192                        'a problem or a question from a wide array of people.'),
193          content=[
194              ideas_phases.CollectPhase(),
195          ],
196          image='images/brainstorming.png',
197          settings_model=None,
198          requirements=Requirements(
199              aims=[Aim.collect_ideas, Aim.discuss_topic],
200              results=[Result.collect_ideas],
201              experience=Experience.no_projects,
202              motivation=Motivation.not_found
203          ),
204          complexity=COMPLEXITY_VECTOR_AC,
205          type=BlueprintNames.brainstorming.name
206      )),
207     (BlueprintNames.map_brainstorming.value,
208      Blueprint(
209          title=_('Spatial Brainstorming'),
210          description=_('Collect ideas, questions and input concerning a '
211                        'problem or a question from a wide array of people.'),
212          content=[
213              map_phases.CollectPhase(),
214          ],
215          image='images/spatial_brainstorming.png',
216          settings_model=('a4maps', 'AreaSettings'),
217          requirements=Requirements(
218              aims=[Aim.design_place],
219              results=[Result.collect_ideas],
220              experience=Experience.no_projects,
221              motivation=Motivation.not_found
222          ),
223          complexity=COMPLEXITY_VECTOR_AC,
224          type=BlueprintNames.map_brainstorming.name
225      )),
226     (BlueprintNames.idea_challenge.value,
227      Blueprint(
228          title=_('Idea Challenge'),
229          description=_('Run a challenge and find the best ideas to solve '
230                        'a particular problem.'),
231          content=[
232              ideas_phases.CollectPhase(),
233              ideas_phases.RatingPhase(),
234          ],
235          image='images/challenge.png',
236          settings_model=None,
237          requirements=Requirements(
238              aims=[Aim.run_competition, Aim.run_survey],
239              results=list(Result),
240              experience=Experience.one_project,
241              motivation=Motivation.low
242          ),
243          complexity=COMPLEXITY_VECTOR_BD,
244          type=BlueprintNames.idea_challenge.name
245      )),
246     (BlueprintNames.map_idea_challenge.value,
247      Blueprint(
248          title=_('Spatial Idea Challenge'),
249          description=_('Run a challenge concerning a certain area or space in '
250                        'your community and find the best ideas to solve a '
251                        'particular problem.'),
252          content=[
253              map_phases.CollectPhase(),
254              map_phases.RatingPhase(),
255          ],
256          image='images/spatial_challenge.png',
257          settings_model=('a4maps', 'AreaSettings'),
258          requirements=Requirements(
259              aims=[Aim.design_place],
260              results=list(Result),
261              experience=Experience.one_project,
262              motivation=Motivation.low
263          ),
264          complexity=COMPLEXITY_VECTOR_BD,
265          type=BlueprintNames.map_idea_challenge.name
266      )),
267     (BlueprintNames.agenda_setting.value,
268      Blueprint(
269          title=_('Agenda Setting'),
270          description=_('You can involve everyone in planning a meeting. '
271                        'Collect ideas for an upcoming event and let your '
272                        'participants vote on the topics you want to tackle.'),
273          content=[
274              ideas_phases.CollectPhase(),
275              ideas_phases.RatingPhase(),
276          ],
277          image='images/agenda_setting.png',
278          settings_model=None,
279          requirements=Requirements(
280              aims=[Aim.collect_ideas, Aim.discuss_topic,
281                    Aim.run_survey, Aim.agenda_setting],
282              results=list(Result),
283              experience=Experience.one_project,
284              motivation=Motivation.low
285          ),
286          complexity=COMPLEXITY_VECTOR_AC,
287          type=BlueprintNames.agenda_setting.name
288      )),
289     (BlueprintNames.commenting_text.value,
290      Blueprint(
291          title=_('Text Review'),
292          description=_('Let participants discuss individual paragraphs of a '
293                        'text. This is ideal for discussing position papers or '
294                        'a mission statements with many people.'),
295          content=[
296              documents_phases.CreateDocumentPhase(),
297              documents_phases.CommentPhase(),
298          ],
299          image='images/text_review.png',
300          settings_model=None,
301          requirements=Requirements(
302              aims=[Aim.work_document],
303              results=None,
304              experience=None,
305              motivation=None
306          ),
307          complexity=COMPLEXITY_VECTOR_F,
308          type=BlueprintNames.commenting_text.name
309      )),
310     (BlueprintNames.a4_poll.value,
311      Blueprint(
312          title=_('Poll'),
313          description=_('Run customizable, multi-step polls on OPIN to get '
314                        'detailed opinions on topics from the public or your '
315                        'members. Via the OPIN polling app for iOS and Android '
316                        'these polls are also accessible on smartphones.'),
317          content=[
318              poll_phases.VotingPhase(),
319          ],
320          image='images/poll.png',
321          settings_model=None,
322          requirements=Requirements(
323              aims=[Aim.run_survey],
324              results=[Result.majority_vote],
325              experience=Experience.no_projects,
326              motivation=Motivation.not_found
327          ),
328          complexity=COMPLEXITY_VECTOR_E,
329          type=BlueprintNames.a4_poll.name
330      )),
331     (BlueprintNames.communitydebate.value,
332      Blueprint(
333          title=_('Community debate'),
334          description=_('Collect topics and questions to discuss, '
335                        'debate and prioritize them.'),
336          content=[
337              communitydebate_phases.DebatePhase(),
338          ],
339          image='images/brainstorming.png',
340          settings_model=None,
341          requirements=Requirements(
342              aims=[Aim.communitydebate],
343              results=[Result.both],
344              experience=Experience.no_projects,
345              motivation=Motivation.not_found
346          ),
347          complexity=COMPLEXITY_VECTOR_AC,
348          type=BlueprintNames.communitydebate.name
349      )),
350 ]
351 
352 
353 fallbacks = {
354     Aim.collect_ideas: BlueprintNames.brainstorming.value,
355     Aim.discuss_topic: BlueprintNames.brainstorming.value,
356     Aim.agenda_setting: BlueprintNames.agenda_setting.value,
357     Aim.design_place: BlueprintNames.map_brainstorming.value,
358     Aim.run_survey: BlueprintNames.a4_poll.value,
359     Aim.run_competition: BlueprintNames.agenda_setting.value,
360     Aim.work_document: BlueprintNames.commenting_text.value,
361     Aim.communitydebate: BlueprintNames.communitydebate.value
362 }
363
```
--- END FILES ---

Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.

Here is an example:

```diff
diff --git a/examples/server_async.py b/examples/server_async.py
--- a/examples/server_async.py
+++ b/examples/server_async.py
@@ -313,4 +313,4 @@
 
 
 if __name__ == "__main__":
-    asyncio.run(run_async_server("."), debug=True)
+    asyncio.run(run_async_server(), debug=True)
diff --git a/examples/server_sync.py b/examples/server_sync.py
--- a/examples/server_sync.py
+++ b/examples/server_sync.py
@@ -313,5 +313,5 @@
 
 
 if __name__ == "__main__":
-    server = run_sync_server(".")
+    server = run_sync_server()
     server.shutdown()

```

diff --git a/euth/blueprints/blueprints.py b/euth/blueprints/blueprints.py
--- a/euth/blueprints/blueprints.py
+++ b/euth/blueprints/blueprints.py
@@ -74,8 +74,9 @@
     communitydebate = (
         'communitydebate',
         _('Find and debate topics and questions.'),
-        [_('Do this.'),
-         _('Do that.')]
+        [_('Start a discussion and moderate it'),
+         _('Participants can upload documents to deepen the exchange '
+           'and share information')]
     )
 
     def __new__(cls, value, label, examples):

{"golden_diff": "diff --git a/euth/blueprints/blueprints.py b/euth/blueprints/blueprints.py\n--- a/euth/blueprints/blueprints.py\n+++ b/euth/blueprints/blueprints.py\n@@ -74,8 +74,9 @@\n     communitydebate = (\n         'communitydebate',\n         _('Find and debate topics and questions.'),\n-        [_('Do this.'),\n-         _('Do that.')]\n+        [_('Start a discussion and moderate it'),\n+         _('Participants can upload documents to deepen the exchange '\n+           'and share information')]\n     )\n \n     def __new__(cls, value, label, examples):\n", "issue": "Next Button in DTS is not working\n**URL:** https://opin-stage.liqd.net/de/blueprints/liquid-democracy-ev/\r\n**user:** * initiator*\r\n**expected behaviour:** *If I click on next(weiter) then I come to the next page*\r\n**behaviour:** *I can click on it, but nothing happens*\r\n**important screensize:** * desktop?*\r\n**device & browser:** *Desktop, firefox 78.2.(64-Bit)*\r\n\r\n\n", "before_files": [{"content": "from collections import namedtuple\nfrom enum import Enum, unique\n\nfrom django.utils.translation import ugettext_lazy as _\n\nfrom adhocracy4.polls import phases as poll_phases\nfrom euth.communitydebate import phases as communitydebate_phases\nfrom euth.documents import phases as documents_phases\nfrom euth.ideas import phases as ideas_phases\nfrom euth.maps import phases as map_phases\n\nfrom .names import BlueprintNames\n\n\nclass BlueprintEnum(Enum):\n    def __new__(cls, value, label):\n        obj = object.__new__(cls)\n        obj._value_ = len(cls.__members__) + 1\n        obj._value = value\n        obj.label = label\n        return obj\n\n    @property\n    def value(self):\n        return self._value\n\n    @classmethod\n    def get(cls, value):\n        return next(m for m in cls if m._value == value)\n\n\n@unique\nclass Aim(Enum):\n    collect_ideas = (\n        'collect_ideas',\n        _('Create and collect new ideas or visions.'),\n        [_('(Urban) planning processes'),\n         _('Develop concepts or guiding principles')]\n    )\n    discuss_topic = (\n        'discuss_topic',\n        _('Gather feedback on a topic and discuss it in greater detail.'),\n        [_('Discuss existing concepts or plans'),\n         _('Develop solutions for existing problems')]\n    )\n    agenda_setting = (\n        'agenda_setting',\n        _('Agenda Setting'),\n        [_('Set the agenda of an event, a process, a project etc.')]\n    )\n    design_place = (\n        'design_place',\n        _('Design a place.'),\n        [_('(Urban) planning processes'),\n         _('Small scale design projects, e.g. renew your premises')]\n    )\n    run_survey = (\n        'run_survey',\n        _('Learn about what people like most.'),\n        [_('Opinion polls, majority votes etc.')]\n    )\n    run_competition = (\n        'run_competition',\n        _('Run a competition.'),\n        [_('All sorts of competitions, '\n           'like idea contests etc.')]\n    )\n    work_document = (\n        'work_document',\n        _('Work together with other people on a text document.'),\n        [_('Draft or revise statutes, articles, charters etc.'),\n         _('Involve different authors in writing a shared text')]\n    )\n    communitydebate = (\n        'communitydebate',\n        _('Find and debate topics and questions.'),\n        [_('Start a discussion and moderate it'),\n         _('Participants can upload documents to deepen the exchange '\n           'and share information')]\n    )\n\n    def __new__(cls, value, label, examples):\n        obj = object.__new__(cls)\n        obj._value_ = value\n        obj.label = label\n        obj.examples = examples\n        return obj\n\n\n@unique\nclass Result(BlueprintEnum):\n    collect_ideas = 3, _('Collection of commented ideas')\n    majority_vote = 2, _('Majority vote')\n    both = 1, _('Both')\n\n\n@unique\nclass Experience(BlueprintEnum):\n    five_projects = 4, _('More than 5 participative projects')\n    two_projects = 3, _('More than 2 participative projects')\n    one_project = 2, _('1-2 participative projects')\n    no_projects = 1, _('I have no experiences in organising '\n                       'participative projects')\n\n\nclass Motivation(BlueprintEnum):\n    high = 4, _('High motivation')\n    medium = 3, _('Medium motivation')\n    low = 2, _('Low motivation')\n    not_found = 1, _('No motivation')\n    unkown = 2, _('I don\\'t know.')\n\n\n@unique\nclass Participants(BlueprintEnum):\n    few = 0, '< 25'\n    some = 1, '25-50'\n    many = 2, '50+'\n\n\n@unique\nclass Duration(BlueprintEnum):\n    one_weeks = 0, _('1-2 weeks')\n    two_weeks = 1, _('2-4 weeks')\n    four_weeks = 2, _('more than 4 weeks')\n\n\n@unique\nclass Scope(BlueprintEnum):\n    local = 0, _('Local')\n    regional = 1, _('Regional')\n    national = 2, _('National or international')\n\n\nclass Accessibility(BlueprintEnum):\n    very_easy = 1, _('Very easy to access')\n    easy = 2, _('Easy to access')\n    hard = 3, _('Hard to access')\n    very_hard = 4, _('Very hard to access')\n    unkown = 3, _('I don\\'t know')\n\n\nComplexityVector = namedtuple(\n    'ComplexityVector', [\n        'participants', 'duration', 'scope'\n    ]\n)\n\n\nCOMPLEXITY_VECTOR_AC = ComplexityVector(\n    participants=(0, 0.5),\n    duration=(0, 1),\n    scope=(0, 0.5)\n)\n\nCOMPLEXITY_VECTOR_BD = ComplexityVector(\n    participants=(0, 1),\n    duration=(0, 1),\n    scope=(0, 1)\n)\n\nCOMPLEXITY_VECTOR_E = ComplexityVector(\n    participants=(0, 1 / 3),\n    duration=(0, 0),\n    scope=(0, 1 / 3)\n)\n\nCOMPLEXITY_VECTOR_F = ComplexityVector(\n    participants=(1, 1),\n    duration=(0, 1),\n    scope=(0, 0)\n)\n\nRequirements = namedtuple(\n    'Requirements', [\n        'aims', 'results', 'experience', 'motivation'\n    ])\n\n\nBlueprint = namedtuple(\n    'Blueprint', [\n        'title', 'description', 'content', 'image', 'settings_model',\n        'requirements', 'complexity', 'type'\n    ])\n\n\nblueprints = [\n    (BlueprintNames.brainstorming.value,\n     Blueprint(\n         title=_('Brainstorming'),\n         description=_('Collect ideas, questions and input concerning '\n                       'a problem or a question from a wide array of people.'),\n         content=[\n             ideas_phases.CollectPhase(),\n         ],\n         image='images/brainstorming.png',\n         settings_model=None,\n         requirements=Requirements(\n             aims=[Aim.collect_ideas, Aim.discuss_topic],\n             results=[Result.collect_ideas],\n             experience=Experience.no_projects,\n             motivation=Motivation.not_found\n         ),\n         complexity=COMPLEXITY_VECTOR_AC,\n         type=BlueprintNames.brainstorming.name\n     )),\n    (BlueprintNames.map_brainstorming.value,\n     Blueprint(\n         title=_('Spatial Brainstorming'),\n         description=_('Collect ideas, questions and input concerning a '\n                       'problem or a question from a wide array of people.'),\n         content=[\n             map_phases.CollectPhase(),\n         ],\n         image='images/spatial_brainstorming.png',\n         settings_model=('a4maps', 'AreaSettings'),\n         requirements=Requirements(\n             aims=[Aim.design_place],\n             results=[Result.collect_ideas],\n             experience=Experience.no_projects,\n             motivation=Motivation.not_found\n         ),\n         complexity=COMPLEXITY_VECTOR_AC,\n         type=BlueprintNames.map_brainstorming.name\n     )),\n    (BlueprintNames.idea_challenge.value,\n     Blueprint(\n         title=_('Idea Challenge'),\n         description=_('Run a challenge and find the best ideas to solve '\n                       'a particular problem.'),\n         content=[\n             ideas_phases.CollectPhase(),\n             ideas_phases.RatingPhase(),\n         ],\n         image='images/challenge.png',\n         settings_model=None,\n         requirements=Requirements(\n             aims=[Aim.run_competition, Aim.run_survey],\n             results=list(Result),\n             experience=Experience.one_project,\n             motivation=Motivation.low\n         ),\n         complexity=COMPLEXITY_VECTOR_BD,\n         type=BlueprintNames.idea_challenge.name\n     )),\n    (BlueprintNames.map_idea_challenge.value,\n     Blueprint(\n         title=_('Spatial Idea Challenge'),\n         description=_('Run a challenge concerning a certain area or space in '\n                       'your community and find the best ideas to solve a '\n                       'particular problem.'),\n         content=[\n             map_phases.CollectPhase(),\n             map_phases.RatingPhase(),\n         ],\n         image='images/spatial_challenge.png',\n         settings_model=('a4maps', 'AreaSettings'),\n         requirements=Requirements(\n             aims=[Aim.design_place],\n             results=list(Result),\n             experience=Experience.one_project,\n             motivation=Motivation.low\n         ),\n         complexity=COMPLEXITY_VECTOR_BD,\n         type=BlueprintNames.map_idea_challenge.name\n     )),\n    (BlueprintNames.agenda_setting.value,\n     Blueprint(\n         title=_('Agenda Setting'),\n         description=_('You can involve everyone in planning a meeting. '\n                       'Collect ideas for an upcoming event and let your '\n                       'participants vote on the topics you want to tackle.'),\n         content=[\n             ideas_phases.CollectPhase(),\n             ideas_phases.RatingPhase(),\n         ],\n         image='images/agenda_setting.png',\n         settings_model=None,\n         requirements=Requirements(\n             aims=[Aim.collect_ideas, Aim.discuss_topic,\n                   Aim.run_survey, Aim.agenda_setting],\n             results=list(Result),\n             experience=Experience.one_project,\n             motivation=Motivation.low\n         ),\n         complexity=COMPLEXITY_VECTOR_AC,\n         type=BlueprintNames.agenda_setting.name\n     )),\n    (BlueprintNames.commenting_text.value,\n     Blueprint(\n         title=_('Text Review'),\n         description=_('Let participants discuss individual paragraphs of a '\n                       'text. This is ideal for discussing position papers or '\n                       'a mission statements with many people.'),\n         content=[\n             documents_phases.CreateDocumentPhase(),\n             documents_phases.CommentPhase(),\n         ],\n         image='images/text_review.png',\n         settings_model=None,\n         requirements=Requirements(\n             aims=[Aim.work_document],\n             results=None,\n             experience=None,\n             motivation=None\n         ),\n         complexity=COMPLEXITY_VECTOR_F,\n         type=BlueprintNames.commenting_text.name\n     )),\n    (BlueprintNames.a4_poll.value,\n     Blueprint(\n         title=_('Poll'),\n         description=_('Run customizable, multi-step polls on OPIN to get '\n                       'detailed opinions on topics from the public or your '\n                       'members. Via the OPIN polling app for iOS and Android '\n                       'these polls are also accessible on smartphones.'),\n         content=[\n             poll_phases.VotingPhase(),\n         ],\n         image='images/poll.png',\n         settings_model=None,\n         requirements=Requirements(\n             aims=[Aim.run_survey],\n             results=[Result.majority_vote],\n             experience=Experience.no_projects,\n             motivation=Motivation.not_found\n         ),\n         complexity=COMPLEXITY_VECTOR_E,\n         type=BlueprintNames.a4_poll.name\n     )),\n    (BlueprintNames.communitydebate.value,\n     Blueprint(\n         title=_('Community debate'),\n         description=_('Collect topics and questions to discuss, '\n                       'debate and prioritize them.'),\n         content=[\n             communitydebate_phases.DebatePhase(),\n         ],\n         image='images/brainstorming.png',\n         settings_model=None,\n         requirements=Requirements(\n             aims=[Aim.communitydebate],\n             results=[Result.both],\n             experience=Experience.no_projects,\n             motivation=Motivation.not_found\n         ),\n         complexity=COMPLEXITY_VECTOR_AC,\n         type=BlueprintNames.communitydebate.name\n     )),\n]\n\n\nfallbacks = {\n    Aim.collect_ideas: BlueprintNames.brainstorming.value,\n    Aim.discuss_topic: BlueprintNames.brainstorming.value,\n    Aim.agenda_setting: BlueprintNames.agenda_setting.value,\n    Aim.design_place: BlueprintNames.map_brainstorming.value,\n    Aim.run_survey: BlueprintNames.a4_poll.value,\n    Aim.run_competition: BlueprintNames.agenda_setting.value,\n    Aim.work_document: BlueprintNames.commenting_text.value,\n    Aim.communitydebate: BlueprintNames.communitydebate.value\n}\n", "path": "euth/blueprints/blueprints.py"}], "after_files": [{"content": "from collections import namedtuple\nfrom enum import Enum, unique\n\nfrom django.utils.translation import ugettext_lazy as _\n\nfrom adhocracy4.polls import phases as poll_phases\nfrom euth.communitydebate import phases as communitydebate_phases\nfrom euth.documents import phases as documents_phases\nfrom euth.ideas import phases as ideas_phases\nfrom euth.maps import phases as map_phases\n\nfrom .names import BlueprintNames\n\n\nclass BlueprintEnum(Enum):\n    def __new__(cls, value, label):\n        obj = object.__new__(cls)\n        obj._value_ = len(cls.__members__) + 1\n        obj._value = value\n        obj.label = label\n        return obj\n\n    @property\n    def value(self):\n        return self._value\n\n    @classmethod\n    def get(cls, value):\n        return next(m for m in cls if m._value == value)\n\n\n@unique\nclass Aim(Enum):\n    collect_ideas = (\n        'collect_ideas',\n        _('Create and collect new ideas or visions.'),\n        [_('(Urban) planning processes'),\n         _('Develop concepts or guiding principles')]\n    )\n    discuss_topic = (\n        'discuss_topic',\n        _('Gather feedback on a topic and discuss it in greater detail.'),\n        [_('Discuss existing concepts or plans'),\n         _('Develop solutions for existing problems')]\n    )\n    agenda_setting = (\n        'agenda_setting',\n        _('Agenda Setting'),\n        [_('Set the agenda of an event, a process, a project etc.')]\n    )\n    design_place = (\n        'design_place',\n        _('Design a place.'),\n        [_('(Urban) planning processes'),\n         _('Small scale design projects, e.g. renew your premises')]\n    )\n    run_survey = (\n        'run_survey',\n        _('Learn about what people like most.'),\n        [_('Opinion polls, majority votes etc.')]\n    )\n    run_competition = (\n        'run_competition',\n        _('Run a competition.'),\n        [_('All sorts of competitions, '\n           'like idea contests etc.')]\n    )\n    work_document = (\n        'work_document',\n        _('Work together with other people on a text document.'),\n        [_('Draft or revise statutes, articles, charters etc.'),\n         _('Involve different authors in writing a shared text')]\n    )\n    communitydebate = (\n        'communitydebate',\n        _('Find and debate topics and questions.'),\n        [_('Start a discussion and moderate it'),\n         _('Participants can upload documents to deepen the exchange '\n           'and share information')]\n    )\n\n    def __new__(cls, value, label, examples):\n        obj = object.__new__(cls)\n        obj._value_ = value\n        obj.label = label\n        obj.examples = examples\n        return obj\n\n\n@unique\nclass Result(BlueprintEnum):\n    collect_ideas = 3, _('Collection of commented ideas')\n    majority_vote = 2, _('Majority vote')\n    both = 1, _('Both')\n\n\n@unique\nclass Experience(BlueprintEnum):\n    five_projects = 4, _('More than 5 participative projects')\n    two_projects = 3, _('More than 2 participative projects')\n    one_project = 2, _('1-2 participative projects')\n    no_projects = 1, _('I have no experiences in organising '\n                       'participative projects')\n\n\nclass Motivation(BlueprintEnum):\n    high = 4, _('High motivation')\n    medium = 3, _('Medium motivation')\n    low = 2, _('Low motivation')\n    not_found = 1, _('No motivation')\n    unkown = 2, _('I don\\'t know.')\n\n\n@unique\nclass Participants(BlueprintEnum):\n    few = 0, '< 25'\n    some = 1, '25-50'\n    many = 2, '50+'\n\n\n@unique\nclass Duration(BlueprintEnum):\n    one_weeks = 0, _('1-2 weeks')\n    two_weeks = 1, _('2-4 weeks')\n    four_weeks = 2, _('more than 4 weeks')\n\n\n@unique\nclass Scope(BlueprintEnum):\n    local = 0, _('Local')\n    regional = 1, _('Regional')\n    national = 2, _('National or international')\n\n\nclass Accessibility(BlueprintEnum):\n    very_easy = 1, _('Very easy to access')\n    easy = 2, _('Easy to access')\n    hard = 3, _('Hard to access')\n    very_hard = 4, _('Very hard to access')\n    unkown = 3, _('I don\\'t know')\n\n\nComplexityVector = namedtuple(\n    'ComplexityVector', [\n        'participants', 'duration', 'scope'\n    ]\n)\n\n\nCOMPLEXITY_VECTOR_AC = ComplexityVector(\n    participants=(0, 0.5),\n    duration=(0, 1),\n    scope=(0, 0.5)\n)\n\nCOMPLEXITY_VECTOR_BD = ComplexityVector(\n    participants=(0, 1),\n    duration=(0, 1),\n    scope=(0, 1)\n)\n\nCOMPLEXITY_VECTOR_E = ComplexityVector(\n    participants=(0, 1 / 3),\n    duration=(0, 0),\n    scope=(0, 1 / 3)\n)\n\nCOMPLEXITY_VECTOR_F = ComplexityVector(\n    participants=(1, 1),\n    duration=(0, 1),\n    scope=(0, 0)\n)\n\nRequirements = namedtuple(\n    'Requirements', [\n        'aims', 'results', 'experience', 'motivation'\n    ])\n\n\nBlueprint = namedtuple(\n    'Blueprint', [\n        'title', 'description', 'content', 'image', 'settings_model',\n        'requirements', 'complexity', 'type'\n    ])\n\n\nblueprints = [\n    (BlueprintNames.brainstorming.value,\n     Blueprint(\n         title=_('Brainstorming'),\n         description=_('Collect ideas, questions and input concerning '\n                       'a problem or a question from a wide array of people.'),\n         content=[\n             ideas_phases.CollectPhase(),\n         ],\n         image='images/brainstorming.png',\n         settings_model=None,\n         requirements=Requirements(\n             aims=[Aim.collect_ideas, Aim.discuss_topic],\n             results=[Result.collect_ideas],\n             experience=Experience.no_projects,\n             motivation=Motivation.not_found\n         ),\n         complexity=COMPLEXITY_VECTOR_AC,\n         type=BlueprintNames.brainstorming.name\n     )),\n    (BlueprintNames.map_brainstorming.value,\n     Blueprint(\n         title=_('Spatial Brainstorming'),\n         description=_('Collect ideas, questions and input concerning a '\n                       'problem or a question from a wide array of people.'),\n         content=[\n             map_phases.CollectPhase(),\n         ],\n         image='images/spatial_brainstorming.png',\n         settings_model=('a4maps', 'AreaSettings'),\n         requirements=Requirements(\n             aims=[Aim.design_place],\n             results=[Result.collect_ideas],\n             experience=Experience.no_projects,\n             motivation=Motivation.not_found\n         ),\n         complexity=COMPLEXITY_VECTOR_AC,\n         type=BlueprintNames.map_brainstorming.name\n     )),\n    (BlueprintNames.idea_challenge.value,\n     Blueprint(\n         title=_('Idea Challenge'),\n         description=_('Run a challenge and find the best ideas to solve '\n                       'a particular problem.'),\n         content=[\n             ideas_phases.CollectPhase(),\n             ideas_phases.RatingPhase(),\n         ],\n         image='images/challenge.png',\n         settings_model=None,\n         requirements=Requirements(\n             aims=[Aim.run_competition, Aim.run_survey],\n             results=list(Result),\n             experience=Experience.one_project,\n             motivation=Motivation.low\n         ),\n         complexity=COMPLEXITY_VECTOR_BD,\n         type=BlueprintNames.idea_challenge.name\n     )),\n    (BlueprintNames.map_idea_challenge.value,\n     Blueprint(\n         title=_('Spatial Idea Challenge'),\n         description=_('Run a challenge concerning a certain area or space in '\n                       'your community and find the best ideas to solve a '\n                       'particular problem.'),\n         content=[\n             map_phases.CollectPhase(),\n             map_phases.RatingPhase(),\n         ],\n         image='images/spatial_challenge.png',\n         settings_model=('a4maps', 'AreaSettings'),\n         requirements=Requirements(\n             aims=[Aim.design_place],\n             results=list(Result),\n             experience=Experience.one_project,\n             motivation=Motivation.low\n         ),\n         complexity=COMPLEXITY_VECTOR_BD,\n         type=BlueprintNames.map_idea_challenge.name\n     )),\n    (BlueprintNames.agenda_setting.value,\n     Blueprint(\n         title=_('Agenda Setting'),\n         description=_('You can involve everyone in planning a meeting. '\n                       'Collect ideas for an upcoming event and let your '\n                       'participants vote on the topics you want to tackle.'),\n         content=[\n             ideas_phases.CollectPhase(),\n             ideas_phases.RatingPhase(),\n         ],\n         image='images/agenda_setting.png',\n         settings_model=None,\n         requirements=Requirements(\n             aims=[Aim.collect_ideas, Aim.discuss_topic,\n                   Aim.run_survey, Aim.agenda_setting],\n             results=list(Result),\n             experience=Experience.one_project,\n             motivation=Motivation.low\n         ),\n         complexity=COMPLEXITY_VECTOR_AC,\n         type=BlueprintNames.agenda_setting.name\n     )),\n    (BlueprintNames.commenting_text.value,\n     Blueprint(\n         title=_('Text Review'),\n         description=_('Let participants discuss individual paragraphs of a '\n                       'text. This is ideal for discussing position papers or '\n                       'a mission statements with many people.'),\n         content=[\n             documents_phases.CreateDocumentPhase(),\n             documents_phases.CommentPhase(),\n         ],\n         image='images/text_review.png',\n         settings_model=None,\n         requirements=Requirements(\n             aims=[Aim.work_document],\n             results=None,\n             experience=None,\n             motivation=None\n         ),\n         complexity=COMPLEXITY_VECTOR_F,\n         type=BlueprintNames.commenting_text.name\n     )),\n    (BlueprintNames.a4_poll.value,\n     Blueprint(\n         title=_('Poll'),\n         description=_('Run customizable, multi-step polls on OPIN to get '\n                       'detailed opinions on topics from the public or your '\n                       'members. Via the OPIN polling app for iOS and Android '\n                       'these polls are also accessible on smartphones.'),\n         content=[\n             poll_phases.VotingPhase(),\n         ],\n         image='images/poll.png',\n         settings_model=None,\n         requirements=Requirements(\n             aims=[Aim.run_survey],\n             results=[Result.majority_vote],\n             experience=Experience.no_projects,\n             motivation=Motivation.not_found\n         ),\n         complexity=COMPLEXITY_VECTOR_E,\n         type=BlueprintNames.a4_poll.name\n     )),\n    (BlueprintNames.communitydebate.value,\n     Blueprint(\n         title=_('Community debate'),\n         description=_('Collect topics and questions to discuss, '\n                       'debate and prioritize them.'),\n         content=[\n             communitydebate_phases.DebatePhase(),\n         ],\n         image='images/brainstorming.png',\n         settings_model=None,\n         requirements=Requirements(\n             aims=[Aim.communitydebate],\n             results=[Result.both],\n             experience=Experience.no_projects,\n             motivation=Motivation.not_found\n         ),\n         complexity=COMPLEXITY_VECTOR_AC,\n         type=BlueprintNames.communitydebate.name\n     )),\n]\n\n\nfallbacks = {\n    Aim.collect_ideas: BlueprintNames.brainstorming.value,\n    Aim.discuss_topic: BlueprintNames.brainstorming.value,\n    Aim.agenda_setting: BlueprintNames.agenda_setting.value,\n    Aim.design_place: BlueprintNames.map_brainstorming.value,\n    Aim.run_survey: BlueprintNames.a4_poll.value,\n    Aim.run_competition: BlueprintNames.agenda_setting.value,\n    Aim.work_document: BlueprintNames.commenting_text.value,\n    Aim.communitydebate: BlueprintNames.communitydebate.value\n}\n", "path": "euth/blueprints/blueprints.py"}]}