'Create a left outer join against this ``Query`` object\'s criterion
and apply generatively, returning the newly resulting ``Query``.
Usage is the same as the ``join()`` method.'

def outerjoin(self, *props, **kwargs):

    (aliased, from_joinpoint) = (kwargs.pop('aliased', False), kwargs.pop('from_joinpoint', False))
    if kwargs:
        raise TypeError(('unknown    arguments:    %s' % ','.join(kwargs)))
    return self._join(props, outerjoin=True, create_aliases=aliased, from_joinpoint=from_joinpoint)
