':param model: An instance of the Model class.
:param back: The backend to use. Either \'tf\' (default) or \'th\'.
:param sess: The tf session to run graphs in (use None for Theano)'

def __init__(self, model, back='tf', sess=None):

    if (not ((back == 'tf') or (back == 'th'))):
        raise ValueError("Backend    argument    must    either    be    'tf'    or    'th'.")
    if ((back == 'th') and (sess is not None)):
        raise Exception('A    session    should    not    be    provided    when    using    th.')
    if (not isinstance(model, Model)):
        if hasattr(model, '__call__'):
            warnings.warn('CleverHans    support    for    supplying    a    callable    instead    of    an    instance    of    the    Model    class    is    deprecated    and    will    be    dropped    on    2018-01-11.')
        else:
            raise ValueError('The    model    argument    should    be    an    instance    of    the    Model    class.')
    if (back == 'th'):
        warnings.warn('CleverHans    support    for    Theano    is    deprecated    and    will    be    dropped    on    2017-11-08.')
    self.model = model
    self.back = back
    self.sess = sess
    self.graphs = {}
    self.feedable_kwargs = {}
    self.structural_kwargs = []
