digraph G {
	rankdir = LR;
	label = "MSC_Tests component hierarchy";

	"BSC_ConnHdlr" [
		shape = "record"
		label = "<f0> BSC_ConnHdlr | <BSSAP> BSSAP | <BSSAP_PROC> BSSAP_PROC | <MNCC> MNCC | <MNCC_PROC> MNCC_PROC | <GSUP> GSUP | <GSUP_PROC> GSUP_PROC | <MGCP> MGCP | <MGCP_PROC> MGCP_PROC | <MGCP_MULTI> MGCP_MULTI | <SMPP> SMPP | <SMPP_PROC> SMPP_PROC | <IPA_CTRL> IPA_CTRL | <SGsAP> SGsAP | <SGsAP_PROC> SGsAP_PROC"
	];

	"RAN_Emulation_CT" [
		shape = "record"
		label = "<f0> RAN_Emulation_CT | <MGCP> MGCP | <CTRL> CTRL | <CTRL_CLIENT> CTRL_CLIENT | <CLIENT> CLIENT | <PROC> PROC | <BSSAP> BSSAP | <RANAP> RANAP"
	];
	"RAN_Emulation_CT":BSSAP -> "SCCP_CT":SCCP_SP_PORT
	"BSC_ConnHdlr":BSSAP -> "RAN_Emulation_CT":CLIENT
	"BSC_ConnHdlr":BSSAP_PROC -> "RAN_Emulation_CT":PROC
	"BSC_ConnHdlr":IPA_CTRL -> "IPA_Emulation_CT":IPA_CTRL_PORT


	"SCCP_CT" [
		shape = "record"
		label = "<f0> SCCP_CT | <MTP3_SCCP_PORT> MTP3_SCCP_PORT | <SCCP_SP_PORT> SCCP_SP_PORT"
	];
	"SCCP_CT":MTP3_SCCP_PORT -> "M3UA_CT":MTP3_SP_PORT

	"M3UA_CT" [

		shape = "record"
		label = "<f0> M3UA_CT | <STCP_PORT> SCTP_PORT | <MTP3_SP_PORT> MTP3_SP_PORT"
	];
	"M3UA_CT":SCTP_PORT -> "system":SCTP


	"MNCC_Emulation_CT" [
		shape = "record"
		label = "<f0> MNCC_Emulation_CT | <MNCC_CLIENT> MNCC_CLIENT | <MNCC_PROC> MNCC_PROC | <MNCC> MNCC"
	]
	"MNCC_Emulation_CT":MNCC -> "system":UD [label="MNCC_CODEC_PT"]
	"BSC_ConnHdlr":MNCC -> "MNCC_Emulation_CT":MNCC_CLIENT
	"BSC_ConnHdlr":MNCC_PROC -> "MNCC_Emulation_CT":MNCC_PROC


	"GSUP_Emulation_CT" [
		shape = "record"
		label = "<f0> GSUP_Emulation_CT | <GSUP_CLIENT> GSUP_CLIENT | <GSUP_PROC> GSUP_PROC | <GSUP> GSUP"
	]
	"GSUP_Emulation_CT":GSUP -> "IPA_Emulation_CT":IPA_GSUP_PORT
	"BSC_ConnHdlr":GSUP -> "GSUP_Emulation_CT":GSUP_CLIENT
	"BSC_ConnHdlr":GSUP_PROC -> "GSUP_Emulation_CT":GSUP_PROC


	"MGCP_Emulation_CT" [
		shape = "record"
		label = "<f0> MGCP_Emulation_CT | <MGCP_CLIENT> MGCP_CLIENT | <MGCP_PROC> MGCP_PROC | <MGCP_CLIENT_MULTI> MGCP_CLIENT_MULTI | <MGCP> MGCP"
	]
	"MGCP_Emulation_CT":MGCP -> "system":IPL4 [label="MGCP_CODEC_PT"]
	"MGCP_Emulation_CT":MGCP -> "IPA_Emulation_CT":IPA_MGCP_PORT
	"BSC_ConnHdlr":MGCP -> "MGCP_Emulation_CT":MGCP_CLIENT
	"BSC_ConnHdlr":MGCP_PROC -> "MGCP_Emulation_CT":MGCP_PROC
	"BSC_ConnHdlr":MGCP_MULTI -> "MGCP_Emulation_CT":MGCP_CLIENT_MULTI

	"SMPP_Emulation_CT" [
		shape = "record"
		label = "<f0> SMPP_Emulation_CT | <SMPP_CLIENT> SMPP_CLIENT | <SMPP_PROC> SMPP_PROC | <SMPP_PORT> SMPP_PORT"
	]
	"SMPP_Emulation_CT":SMPP_PORT -> "system":IPL4 [label="SMPP_CODEC_PT"]
	"BSC_ConnHdlr":SMPP -> "SMPP_Emulation_CT":SMPP_CLIENT
	"BSC_ConnHdlr":SMPP_PROC -> "SMPP_Emulation_CT":SMPP_PROC

	"SGsAP_Emulation_CT" [
		shape = "record"
		label = "<f0> SGsAP_Emulation_CT | <SGsAP_CLIENT> SGsAP_CLIENT | <SGsAP_PROC> SGsAP_PROC | <SGsAP_UNIT> SGsAP_UNIT | <SGsAP> SGsAP"
	]
	"SGsAP_Emulation_CT":SGsAP -> "system":IPL4 [label="SGsAP_CODEC_PT"]
	"BSC_ConnHdlr":SGsAP -> "SGsAP_Emulation_CT":SGsAP_CLIENT
	"BSC_ConnHdlr":SGsAP_PROC -> "SGsAP_Emulation_CT":SGsAP_PROC

	"IPA_Emulation_CT" [
		shape = "record"
		label = "<f0> IPA_Emulation_CT | <MTP3_SP_PORT> MTP3_SP_PORT | <IPA_MGCP_PORT> IPA_MGCP_PORT | <IPA_RSL_PORT> IPA_RSL_PORT | <IPA_OML_PORT> IPA_OML_PORT | <IPA_CTRL_PORT> IPA_CTRL_PORT | <IPA_GSUP_PORT> IPA_GSUP_PORT | <IPA_RSPRO_PORT> IPA_RSPRO_PORT | <IPA_OSMO_PCU_PORT> IPA_OSMO_PCU_PORT | <IPA_SP_PORT> IPA_SP_PORT | <IPA_PORT> IPA_PORT"
	];
	"IPA_Emulation_CT":IPA_PORT -> "system":IPL4 [label="IPA_CODEC_PT"]


	"system" [
		shape = "record"
		label = "<f0> system | <SCTP> SCTP | <IPL4> IPL4 | <UD> UD"
	];
}
