def _instantiate(proxy, bindings=None):
 if (bindings is None):
  bindings = {}
 if isinstance(proxy, Proxy):
  return _instantiate_proxy_tuple(proxy, bindings)
 elif isinstance(proxy, dict):
  return dict(((_instantiate(k, bindings), _instantiate(v, bindings)) for (k, v) in six.iteritems(proxy)))
 elif isinstance(proxy, list):
  return [_instantiate(v, bindings) for v in proxy]
 elif isinstance(proxy, six.string_types):
  return preprocess(proxy)
 else:
  return proxy

def _instantiate ( proxy , bindings = None ) : if ( bindings is None ) : bindings = { } if isinstance ( proxy , Proxy ) : return _instantiate_proxy_tuple ( proxy , bindings ) elif isinstance ( proxy , dict ) : return dict ( ( ( _instantiate ( k , bindings ) , _instantiate ( v , bindings ) ) for ( k , v ) in six . iteritems ( proxy ) ) ) elif isinstance ( proxy , list ) : return [ _instantiate ( v , bindings ) for v in proxy ] elif isinstance ( proxy , six . string_types ) : return preprocess ( proxy ) else : return proxy
instantiate a proxy object(s) .