initial chekin of code received by Ericsson on 20170410
diff --git a/SCCP_CNL113341/src/SCCP_Mapping.ttcnpp b/SCCP_CNL113341/src/SCCP_Mapping.ttcnpp
new file mode 100644
index 0000000..0de496b
--- /dev/null
+++ b/SCCP_CNL113341/src/SCCP_Mapping.ttcnpp
@@ -0,0 +1,129 @@
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// Copyright Test Competence Center (TCC) ETH 2012                           //
+//                                                                           //
+// The copyright to the computer  program(s) herein  is the property of TCC. //
+// The program(s) may be used and/or copied only with the written permission //
+// of TCC or in accordance with  the terms and conditions  stipulated in the //
+// agreement/contract under which the program(s) have been supplied          //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+//  File:         SCCP_Mapping.ttcnpp
+//  Description:  SCCP <-> MTP3 dual faced port definition
+//  Rev:          R6A05
+//  Prodnr:       CNL 113 341
+//  Updated:      2012-11-05
+//  Contact:      http://ttcn.ericsson.se
+module SCCP_Mapping
+{
+import from MTP3asp_Types all;
+import from MTP3asp_PortType all;
+import from SCCP_Types  all;
+import from SCCPasp_Types all;
+
+// *************************************************************************
+// *************************************************************************
+//SCCP Component related declarations
+// *************************************************************************
+// *************************************************************************
+
+type integer UnhandledProtocol;
+
+//   SCCPasp_SP_PT SCCP_SP_PORT
+//+-----------------+-----------------+
+//|              SCCP_CT              /
+//|                                   /
+//+-----------------+-----------------+
+//MTP3asp_SCCP_PT MTP3_SCCP_PORT
+//                  |
+//
+
+//#ifdef USE_MTP3_DISTRIBUTOR
+//Version to internal port
+type port MTP3asp_SCCP_PT  message
+{
+  in  PDU_SCCP;
+  out ASP_MTP3_TRANSFERreq_sccp;
+}
+with 
+{ extension 
+   "internal user MTP3asp_PT
+    out(ASP_MTP3_TRANSFERreq_sccp 
+         -> ASP_MTP3_TRANSFERreq: function(f_enc_SCCP_to_MTP))
+    in( ASP_MTP3_TRANSFERind
+         -> PDU_SCCP: function(f_dec_MTP_to_SCCP),
+            - : discard;
+        ASP_MTP3_PAUSE -> -: discard;
+        ASP_MTP3_RESUME -> -: discard;
+        ASP_MTP3_STATUS -> -: discard)
+   "
+}
+/*#else
+//Version to external port
+type port MTP3asp_SCCP_PT  message
+{
+  in  PDU_SCCP;
+  in  UnhandledProtocol;
+  out ASP_MTP3_TRANSFERreq_sccp;
+}
+with 
+{ extension 
+   "user MTP3asp_PT
+    out(ASP_MTP3_TRANSFERreq_sccp 
+         -> ASP_MTP3_TRANSFERreq: function(f_enc_SCCP_to_MTP))
+    in( ASP_MTP3_TRANSFERind ->
+          PDU_SCCP: function(f_dec_MTP_to_SCCP),
+          UnhandledProtocol: function(f_dec_MTP_to_UnhandledProtocol);
+        ASP_MTP3_PAUSE -> -: discard;
+        ASP_MTP3_RESUME -> -: discard;
+        ASP_MTP3_STATUS -> -: discard)
+   "
+}
+
+function f_dec_MTP_to_UnhandledProtocol(in ASP_MTP3_TRANSFERind pl_in, out UnhandledProtocol pl_out) return integer
+{
+  pl_out := 1;
+  return 0;
+} with {extension "prototype(backtrack)" }
+
+#endif
+*/
+
+function f_enc_SCCP_to_MTP
+ (in  ASP_MTP3_TRANSFERreq_sccp pl_in, 
+  out ASP_MTP3_TRANSFERreq pl_out) return integer
+{
+  var bitstring vl_sio_bit := oct2bit(pl_in.sio);
+  var MTP3_Field_sio vl_sio_struct;
+  vl_sio_struct.ni := substr(vl_sio_bit,0,2);
+  vl_sio_struct.prio := substr(vl_sio_bit,2,2);
+  vl_sio_struct.si := substr(vl_sio_bit,4,4);
+
+  pl_out :=
+  {
+    sio := vl_sio_struct,
+    opc := pl_in.opc,
+    dpc := pl_in.dpc,
+    sls := pl_in.sls,
+    data:= enc_PDU_SCCP(pl_in.data)
+  }
+  return 0;
+} with {extension "prototype(backtrack)" }
+
+function f_dec_MTP_to_SCCP
+ (in  ASP_MTP3_TRANSFERind pl_in, 
+  out PDU_SCCP pl_out) return integer
+{
+  if (pl_in.sio.si != '0011'B)
+  {
+    log("The received message is not SCCP. Ignored.");
+    return 1;
+  }
+  pl_out := dec_PDU_SCCP(pl_in.data);
+
+  return 0;
+} with {extension "prototype(backtrack)" }
+
+
+
+}