Nick Coghlan wrote: > else: > # Returned a different object, make a new proxy > result = type(self)(result) You might want to check that the result has the same type as the proxied object before doing that. -- Greg