'Parse `source` and mixin interpreted Python objects from `namespaces`.
:type source: str
:arg  source: Code to parse.
:type namespaces: list of dict
:arg  namespaces: a list of namespace dictionaries such as the one
returned by :func:`locals`.
Other optional arguments are same as the ones for :class:`Script`.
If `line` and `column` are None, they are assumed be at the end of
`source`.'

def __init__(self, source, namespaces, **kwds):

    try:
        namespaces = [dict(n) for n in namespaces]
    except Exception:
        raise TypeError('namespaces    must    be    a    non-empty    list    of    dicts.')
    super(Interpreter, self).__init__(source, **kwds)
    self.namespaces = namespaces
