def Receive(self, replytype, **kw):
self.ReceiveSOAP(**kw)<EOL>ps = self.ps<EOL>tp = _find_type(ps.body_root)<EOL>isarray = ((type(tp) in (tuple,list) and tp[<NUM_LIT:1>] == '<STR_LIT>') or _find_arraytype(ps.body_root))<EOL>if self.typesmodule is None or isarray:<EOL><INDENT>return _Binding.Receive(self, replytype, **kw)<EOL><DEDENT>if ps.IsAFault():<EOL><INDENT>msg = FaultFromFaultMessage(ps)<EOL>raise FaultException(msg)<EOL><DEDENT>tc = replytype<EOL>if hasattr(replytype, '<STR_LIT>'):<EOL><INDENT>tc = replytype.typecode<EOL><DEDENT>reply = {}<EOL>for elt in _child_elements(ps.body_root):<EOL><INDENT>name = str(elt.localName)<EOL>reply[name] = self.__parse_child(elt)<EOL><DEDENT>if self.address is not None:<EOL><INDENT>self.address.checkResponse(ps, kw.get('<STR_LIT>'))<EOL><DEDENT>return reply<EOL>
Parse message, create Python object.

        KeyWord data:
            faults   -- list of WSDL operation.fault typecodes
            wsaction -- If using WS-Address, must specify Action value we expect to
                receive.