def MakeProxyType(name, exposed, _cache={}):
 exposed = tuple(exposed)
 try:
  return _cache[(name, exposed)]
 except KeyError:
  pass
 dic = {}
 for meth in exposed:
  exec ('def %s(self, *args, **kwds):\n        return self._callmethod(%r, args, kwds)' % (meth, meth)) in dic
 ProxyType = type(name, (BaseProxy,), dic)
 ProxyType._exposed_ = exposed
 _cache[(name, exposed)] = ProxyType
 return ProxyType

def MakeProxyType ( name , exposed , _cache = { } ) : exposed = tuple ( exposed ) try : return _cache [ ( name , exposed ) ] except KeyError : pass dic = { } for meth in exposed : exec ( 'def %s(self, *args, **kwds):\n        return self._callmethod(%r, args, kwds)' % ( meth , meth ) ) in dic ProxyType = type ( name , ( BaseProxy , ) , dic ) ProxyType . _exposed_ = exposed _cache [ ( name , exposed ) ] = ProxyType return ProxyType
return an proxy type whose methods are given by exposed .