rem: if (soap_element_begin_in(soap, tag, 0)) return NULL; if (*soap->type && soap_match_tag(soap, soap->type, type)) {	soap->error = SOAP_TYPE; return NULL; }
context: SOAP_FMAC3 struct __ngw__closeFreeBusySessionRequest * SOAP_FMAC4 soap_in___ngw__closeFreeBusySessionRequest(struct soap *soap, const char *tag, struct __ngw__closeFreeBusySessionRequest *a, const char *type){	short soap_flag_ngwm__closeFreeBusySessionRequest = 1;	if (soap_element_begin_in(soap, tag, 0))		return NULL;	if (*soap->type && soap_match_tag(soap, soap->type, type))	{	soap->error = SOAP_TYPE;		return NULL;	}	a = (struct __ngw__closeFreeBusySessionRequest *)soap_id_enter(soap, soap->id, a, SOAP_TYPE___ngw__closeFreeBusySessionRequest, sizeof(struct __ngw__closeFreeBusySessionRequest), 0, NULL, NULL, NULL);	if (!a)		return NULL;	if (soap->alloced)		soap_default___ngw__closeFreeBusySessionRequest(soap, a);	if (soap->body && !*soap->href)	{	for (;;)		{	soap->error = SOAP_TAG_MISMATCH;			if (soap_flag_ngwm__closeFreeBusySessionRequest && soap->error == SOAP_TAG_MISMATCH)				if (soap_in_PointerTo_ngwm__closeFreeBusySessionRequest(soap, "ngwm:closeFreeBusySessionRequest", &a->ngwm__closeFreeBusySessionRequest, ""))				{	soap_flag_ngwm__closeFreeBusySessionRequest = 0;					continue;				}			if (soap->error == SOAP_TAG_MISMATCH)				soap->error = soap_ignore_element(soap);			if (soap->error == SOAP_NO_TAG)				break;			if (soap->error)				return NULL;		}		if (soap_element_end_in(soap, tag))			return NULL;	}	else	{	a = (struct __ngw__closeFreeBusySessionRequest *)soap_id_forward(soap, soap->href, (void**)a, SOAP_TYPE___ngw__closeFreeBusySessionRequest, 0, sizeof(struct __ngw__closeFreeBusySessionRequest), 0, NULL);		if (soap->body && soap_element_end_in(soap, tag))			return NULL;	}	return a;}