rem: if (is_strict(uri)) {
add: if (is_strict(&puri.params)) {
context: static inline int route_after_loose(struct sip_msg* _m){	struct hdr_field* hdr;	int res;		str* uri;	rr_t* rt, *prev;	hdr = _m->route;	rt = (rr_t*)hdr->parsed;	uri = &rt->nameaddr.uri;	     /* IF the URI was added by me, remove it */	if (is_myself(&_m->rcv, uri)) {		DBG("ral(): Topmost URI is myself\n");		if (remove_route(_m, _m->route, rt, 0) < 0) {			LOG(L_ERR, "ral(): Error while removing the topmost Route URI\n");			return -2;		}		res = find_next_route(_m, &hdr, &rt, &prev);		if (res < 0) {			LOG(L_ERR, "ral(): Error while trying to find next Route header field\n");			return -3;		}		     /* No next Route URI found */		if (res != 0) {			DBG("ral(): No next URI found\n");			return 0;		}		uri = &rt->nameaddr.uri;		if (enable_double_rr && is_2rr(uri)) {			res = remove_2nd_route(_m, &hdr, &rt, &prev);			if (res < 0) return -2;  /* Error */			if (res > 0) return 0;   /* No next route found */		}		uri = &rt->nameaddr.uri;	} else {		DBG("ral(): Topmost URI is NOT myself\n");	}	DBG("ral(): URI to be processed: '%.*s'\n", uri->len, uri->s);	if (is_strict(uri)) {		DBG("ral(): Next URI is a strict router\n");		if (handle_strict_router(_m, hdr, rt, prev) < 0) {			LOG(L_ERR, "ral(): Error while handling strict router\n");			return -5;		}	} else {		     /* Next hop is loose router */		DBG("ral(): Next URI is a loose router\n");		_m->dst_uri.s = uri->s;		_m->dst_uri.len = uri->len;	}	return 0;}