def copy(self, **params):
        '''Creates the new instance of the Route substituting the requested
        parameters.'''
        new_params = dict()
        for name in ['owner', 'priority', 'key', 'final']:
            new_params[name] = params.get(name, getattr(self, name))
        return Route(**new_params)