<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def register_migration(self, migration: 'Migration'):
 """Register a migration. You can only register migrations in order. For example, you can register migrations from version 1 to 2, then 2 to 3, then 3 to 4. You cannot register 1 to 2 followed by 3 to 4. """

        if migration.from_ver >= migration.to_ver:
            raise ValueError('Migration cannot downgrade verson')
        if migration.from_ver != self._final_ver:
            raise ValueError('Cannot register disjoint migration')
        self._migrations[migration.from_ver] = migration
        self._final_ver = migration.to_ver