'Register an alias for a calendar.
This is useful when multiple exchanges should share a calendar, or when
there are multiple ways to refer to the same exchange.
After calling ``register_alias(\'alias\', \'real_name\')``, subsequent
calls to ``get_calendar(\'alias\')`` will return the same result as
``get_calendar(\'real_name\')``.
Parameters
alias : str
The name to be used to refer to a calendar.
real_name : str
The canonical name of the registered calendar.
force : bool, optional
If True, old calendars will be overwritten on a name collision.
If False, name collisions will raise an exception.
Default is False.'

def register_calendar_alias(self, alias, real_name, force=False):

    if force:
        self.deregister_calendar(alias)
    if self.has_calendar(alias):
        raise CalendarNameCollision(calendar_name=alias)
    self._aliases[alias] = real_name
    try:
        self.resolve_alias(alias)
    except CyclicCalendarAlias:
        del self._aliases[alias]
        raise
