diff --git a/etc/config.py.example b/etc/config.py.example
index f7db910c8d24c676a30bba7a76e80c983ab6f1db..af31c885e4b8e54e644833d85064433a921fb6df 100644
--- a/etc/config.py.example
+++ b/etc/config.py.example
@@ -53,3 +53,6 @@ REG_MAX_PER_MINUTE = 10
 
 # Jak dlouho vydrží tokeny používané při registraci a změnách e-mailu [min]
 REG_TOKEN_VALIDITY = 10
+
+# Aktuální ročník MO
+CURRENT_YEAR = 71
diff --git a/mo/__init__.py b/mo/__init__.py
index 98d16b9ad30321087b30790a71fe913ae7eec036..d98ba045b8e901ab953bcc40df33a46e096b8c94 100644
--- a/mo/__init__.py
+++ b/mo/__init__.py
@@ -2,9 +2,6 @@
 
 import datetime
 
-# Aktuální ročník
-current_year = 71
-
 # Referenční čas nastavovaný v initu requestu (web) nebo při volání skriptu
 now: datetime.datetime
 
diff --git a/mo/imports.py b/mo/imports.py
index 005f62f029da3f0a8840b9c16d462352ce53b38a..4cf8deede795e083e67eb21f7d97b0bd1a6c1408 100644
--- a/mo/imports.py
+++ b/mo/imports.py
@@ -7,6 +7,7 @@ from sqlalchemy import and_
 from sqlalchemy.orm import joinedload, Query
 from typing import List, Optional, Any, Dict, Type, Union
 
+import mo.config as config
 import mo.csv
 from mo.csv import FileFormat, MissingHeaderError
 import mo.db as db
@@ -449,7 +450,7 @@ class ContestImport(Import):
         if user is None:
             return
 
-        part = self.find_or_create_participant(user, mo.current_year, school_place.place_id if school_place else None, rok_naroz, rocnik)
+        part = self.find_or_create_participant(user, config.CURRENT_YEAR, school_place.place_id if school_place else None, rok_naroz, rocnik)
         if part is None:
             return
 
diff --git a/mo/web/acct.py b/mo/web/acct.py
index cd3bc74e15d377bc877887ec678a6f6a2fbcab9d..a07888d3dd7b1682c5e3bbf0102374e26097384a 100644
--- a/mo/web/acct.py
+++ b/mo/web/acct.py
@@ -120,7 +120,7 @@ def user_settings():
     if g.user.is_org or g.user.is_admin:
         pant = None
     else:
-        pant = sess.query(db.Participant).get((g.user.user_id, mo.current_year))
+        pant = sess.query(db.Participant).get((g.user.user_id, config.CURRENT_YEAR))
 
     return render_template('settings.html', user=g.user, pant=pant, roles=roles, roles_by_type=mo.rights.roles_by_type)
 
diff --git a/mo/web/org.py b/mo/web/org.py
index aebbfae957f8f0677327553d3a9a4e20b7671015..a07d62610d05d51728386fee3f087b75a2556cd3 100644
--- a/mo/web/org.py
+++ b/mo/web/org.py
@@ -3,6 +3,7 @@ from sqlalchemy import and_, or_
 from sqlalchemy.orm import aliased, joinedload
 from typing import List, Set, Dict
 
+import mo.config as config
 import mo.db as db
 import mo.rights
 import mo.users
@@ -38,7 +39,7 @@ def org_index():
                             or_(db.UserRole.category == None, db.UserRole.category == db.Round.category),
                             or_(db.UserRole.year == None, db.UserRole.year == db.Round.year),
                             or_(db.UserRole.seq == None, db.UserRole.seq == db.Round.seq),
-                            db.Round.year == mo.current_year,
+                            db.Round.year == config.CURRENT_YEAR,
                             db.Contest.round_id == db.Round.round_id,
                             db.Contest.place_id == db.UserRole.place_id))
                .options(joinedload(db.Contest.place))
diff --git a/mo/web/org_round.py b/mo/web/org_round.py
index 88da8505708ee535929ad8fb9ccc2cc639a9153a..587821c920575090d5133294189a80db888588e7 100644
--- a/mo/web/org_round.py
+++ b/mo/web/org_round.py
@@ -16,7 +16,7 @@ import wtforms
 from wtforms import validators, ValidationError
 from wtforms.widgets.html5 import NumberInput
 
-import mo
+import mo.config as config
 import mo.db as db
 import mo.imports
 from mo.rights import Right, RoundRights
@@ -54,7 +54,7 @@ def get_task(round: db.Round, task_id: int) -> db.Task:
 def org_rounds():
     sess = db.get_session()
 
-    rounds = sess.query(db.Round).filter_by(year=mo.current_year).order_by(db.Round.year, db.Round.category, db.Round.seq, db.Round.part)
+    rounds = sess.query(db.Round).filter_by(year=config.CURRENT_YEAR).order_by(db.Round.year, db.Round.category, db.Round.seq, db.Round.part)
     return render_template('org_rounds.html', rounds=rounds, history=False)
 
 
diff --git a/mo/web/user.py b/mo/web/user.py
index ee53d404bccf1edcc9f0fd24b9aeb363a922ee66..4ac6b05af25726f8f34de0f6085f6eea3ddea26f 100644
--- a/mo/web/user.py
+++ b/mo/web/user.py
@@ -8,7 +8,6 @@ import werkzeug.exceptions
 import wtforms
 from wtforms.validators import Required
 
-import mo
 import mo.config as config
 import mo.email
 import mo.db as db
@@ -41,7 +40,7 @@ def load_pcrs() -> List[Tuple[db.Participation, db.Contest, db.Round]]:
             .join(db.Contest, db.Contest.master_contest_id == db.Participation.contest_id)
             .join(db.Round)
             .filter(db.Participation.user == g.user)
-            .filter(db.Round.year == mo.current_year)
+            .filter(db.Round.year == config.CURRENT_YEAR)
             .options(joinedload(db.Contest.place))
             .order_by(db.Round.category, db.Round.seq, db.Round.part)
             .all())
@@ -52,7 +51,7 @@ def user_join():
     available_rounds: List[db.Round] = (
         db.get_session().query(db.Round)
         .select_from(db.Round)
-        .filter_by(year=mo.current_year)
+        .filter_by(year=config.CURRENT_YEAR)
         .filter(db.Round.enroll_mode.in_([db.RoundEnrollMode.register, db.RoundEnrollMode.confirm]))
         .filter_by(state=db.RoundState.running)
         .order_by(db.Round.category, db.Round.seq)
@@ -87,7 +86,7 @@ def user_join_round(round_id):
     if not round:
         raise werkzeug.exceptions.NotFound()
 
-    if (round.year != mo.current_year
+    if (round.year != config.CURRENT_YEAR
             or round.part > 1
             or round.enroll_mode not in [db.RoundEnrollMode.register, db.RoundEnrollMode.confirm]
             or round.state != db.RoundState.running):
@@ -155,7 +154,7 @@ def user_join_round(round_id):
 def join_create_pant(form: JoinRoundForm) -> db.Participant:
     assert form.school.place is not None
     pant = db.Participant(user=g.user,
-                          year=mo.current_year,
+                          year=config.CURRENT_YEAR,
                           school_place=form.school.place,
                           grade=form.grade.data,
                           birth_year=form.birth_year.data)