def __init__(self, **kwargs):

        # get arguments
        user = kwargs.get('user')
        allow_none = kwargs.get('allow_none', False)
        assume_yes = kwargs.get('assume_yes', False)
        filename = kwargs.get('filename')
        self.public = not kwargs.get('create_private', False)

        # instantiate local tools & check for user
        self.local = LocalTools(filename, assume_yes)
        if not user:
            message = """
                No default user set yet. To avoid this prompt set an
                environmental variable called  `GETGIST_USER`.'
            """
            self.local.oops(message)

        # instantiate filename, guthub tools and fetch gist
        self.github = GitHubTools(user, filename, assume_yes)
        self.gist = self.github.select_gist(allow_none)
.. todo::
dataset/ETHPy150Open cuducos/getgist/getgist/__main__.py/GetGist.__init__--crossover with--dataset/ETHPy150Open lisa-lab/pylearn2/pylearn2/datasets/preprocessing.py/Downsample.apply