summaryrefslogtreecommitdiffstats
path: root/contrib/awk/test
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/awk/test')
-rw-r--r--contrib/awk/test/arynocls.awk95
-rw-r--r--contrib/awk/test/arynocls.in30
-rw-r--r--contrib/awk/test/arynocls.ok0
-rw-r--r--contrib/awk/test/arysubnm.awk1
-rw-r--r--contrib/awk/test/arysubnm.ok1
-rw-r--r--contrib/awk/test/fnamedat.awk1
-rw-r--r--contrib/awk/test/fnamedat.in1
-rw-r--r--contrib/awk/test/fnamedat.ok1
-rw-r--r--contrib/awk/test/fnparydl.awk31
-rw-r--r--contrib/awk/test/fnparydl.ok10
-rw-r--r--contrib/awk/test/funsmnam.awk6
-rw-r--r--contrib/awk/test/funsmnam.ok1
-rw-r--r--contrib/awk/test/getlnbuf.awk18
-rw-r--r--contrib/awk/test/getlnbuf.in1708
-rw-r--r--contrib/awk/test/getlnbuf.ok1708
-rw-r--r--contrib/awk/test/getnr2tb.awk111
-rw-r--r--contrib/awk/test/getnr2tb.in6
-rw-r--r--contrib/awk/test/getnr2tb.ok6
-rw-r--r--contrib/awk/test/getnr2tm.awk75
-rw-r--r--contrib/awk/test/getnr2tm.in1
-rw-r--r--contrib/awk/test/getnr2tm.ok1
-rw-r--r--contrib/awk/test/gtlnbufv.awk2
-rw-r--r--contrib/awk/test/igncdym.awk56
-rw-r--r--contrib/awk/test/igncdym.in2
-rw-r--r--contrib/awk/test/igncdym.ok4
-rw-r--r--contrib/awk/test/nasty.awk92
-rw-r--r--contrib/awk/test/nasty.ok2
-rw-r--r--contrib/awk/test/nlstrina.awk77
-rw-r--r--contrib/awk/test/nlstrina.ok3
-rw-r--r--contrib/awk/test/numindex.awk55
-rw-r--r--contrib/awk/test/numindex.in4
-rw-r--r--contrib/awk/test/numindex.ok1
-rw-r--r--contrib/awk/test/opasnidx.awk1
-rw-r--r--contrib/awk/test/opasnidx.ok1
-rw-r--r--contrib/awk/test/opasnslf.awk6
-rw-r--r--contrib/awk/test/opasnslf.ok3
-rw-r--r--contrib/awk/test/printf1.awk19
-rw-r--r--contrib/awk/test/printf1.ok7
-rw-r--r--contrib/awk/test/reg/Obsolete/exp.awk1
-rw-r--r--contrib/awk/test/reg/Obsolete/exp.good2
-rw-r--r--contrib/awk/test/reg/Obsolete/exp.in0
-rw-r--r--contrib/awk/test/reg/Obsolete/log.awk1
-rw-r--r--contrib/awk/test/reg/Obsolete/log.good4
-rw-r--r--contrib/awk/test/reg/Obsolete/log.in0
-rw-r--r--contrib/awk/test/strftime.awk15
-rw-r--r--contrib/awk/test/subslash.awk6
-rw-r--r--contrib/awk/test/subslash.ok1
-rw-r--r--contrib/awk/test/zeroflag.awk1
-rw-r--r--contrib/awk/test/zeroflag.ok1
49 files changed, 4179 insertions, 0 deletions
diff --git a/contrib/awk/test/arynocls.awk b/contrib/awk/test/arynocls.awk
new file mode 100644
index 0000000..724c9ac
--- /dev/null
+++ b/contrib/awk/test/arynocls.awk
@@ -0,0 +1,95 @@
+#To: bug-gnu-utils@gnu.org
+#From: Kristján Jónasson <kristjan@decode.is>
+#Subject: Gawk bug
+#Cc: arnold@gnu.org
+#
+#Hi!
+#
+#The following seems to be a bug in gawk. I have tried as I could to
+#minimize the bug-causing program, so of course it does not seem to do
+#anything useful in its present form. The error message received is:
+#
+#gawk: test.awk:15: fatal error: internal error
+#Aborted
+#
+#Note that there is an attached file that the program reads, called "a". I
+#played with the program a fair bit and my feeling is that the error is
+#related with the delete statement, and not the reading of the file and the
+#close statement. At one point I was able to remove the file reading and
+#still obtain the error. If, for example, I remove the close statement and
+#make two copies of the file instead, (reading one copy in sub1 and the
+#other in sub2), the error still occurs.
+#
+#The operating system is Red Hat Linux, version 6.0, the gawk is version
+#3.0.4, and the gawk was obtained from an rpm file gawk-3.0.4-1.i386.rpm.
+#
+#The program is:
+#
+
+# Wed Mar 8 13:41:34 IST 2000
+# ADR: modified to use INPUT, so can set it from command line.
+# When run, no output is produced, but it shouldn't core
+# dump, either.
+#
+# The program bug is to not close the file in sub2.
+
+function sub1(x) {
+# while (getline < "a" == 1) i++
+ while (getline < INPUT == 1) i++
+# close("a")
+ close(INPUT)
+}
+
+function sub2(x) {
+ i=0
+ delete y
+# while (getline < "a" == 1) z[++i] = $1
+ while (getline < INPUT == 1) z[++i] = $1
+ for(i in z) y[i] = x[i] + z[i]
+}
+
+function sub3(x, y, z) {
+ sub2(x)
+ for(i=1; i<=4; i++) z[i] = y[i]
+}
+
+BEGIN {
+ sub1(x)
+ sub2(x)
+ sub3(x, y, z)
+}
+#
+#And the data file is:
+#
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+# 32.440 3.830 3.383700000000000 10.08 298 865
+#
+#
diff --git a/contrib/awk/test/arynocls.in b/contrib/awk/test/arynocls.in
new file mode 100644
index 0000000..8f4712c
--- /dev/null
+++ b/contrib/awk/test/arynocls.in
@@ -0,0 +1,30 @@
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
+ 32.440 3.830 3.383700000000000 10.08 298 865
diff --git a/contrib/awk/test/arynocls.ok b/contrib/awk/test/arynocls.ok
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/contrib/awk/test/arynocls.ok
diff --git a/contrib/awk/test/arysubnm.awk b/contrib/awk/test/arysubnm.awk
new file mode 100644
index 0000000..961b54a
--- /dev/null
+++ b/contrib/awk/test/arysubnm.awk
@@ -0,0 +1 @@
+BEGIN { n = 11 ; foo[n] = n; print (2 <= n) }
diff --git a/contrib/awk/test/arysubnm.ok b/contrib/awk/test/arysubnm.ok
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/contrib/awk/test/arysubnm.ok
@@ -0,0 +1 @@
+1
diff --git a/contrib/awk/test/fnamedat.awk b/contrib/awk/test/fnamedat.awk
new file mode 100644
index 0000000..33a0704
--- /dev/null
+++ b/contrib/awk/test/fnamedat.awk
@@ -0,0 +1 @@
+function foo() { print foo } {foo()}
diff --git a/contrib/awk/test/fnamedat.in b/contrib/awk/test/fnamedat.in
new file mode 100644
index 0000000..257cc56
--- /dev/null
+++ b/contrib/awk/test/fnamedat.in
@@ -0,0 +1 @@
+foo
diff --git a/contrib/awk/test/fnamedat.ok b/contrib/awk/test/fnamedat.ok
new file mode 100644
index 0000000..0dd0ae5
--- /dev/null
+++ b/contrib/awk/test/fnamedat.ok
@@ -0,0 +1 @@
+gawk: fnamedat.awk:1: (FILENAME=- FNR=1) fatal: can't use function name `foo' as variable or array
diff --git a/contrib/awk/test/fnparydl.awk b/contrib/awk/test/fnparydl.awk
new file mode 100644
index 0000000..ef3a822
--- /dev/null
+++ b/contrib/awk/test/fnparydl.awk
@@ -0,0 +1,31 @@
+# fnparydl.awk --- check that deleting works with arrays
+# that are parameters.
+#
+# Tue Jul 11 14:20:58 EDT 2000
+
+function delit(a, k)
+{
+ print "BEFORE LOOP"
+ for (k in a) {
+ print "DELETING KEY", k
+ delete a[k]
+ }
+ print "AFTER LOOP"
+}
+
+BEGIN {
+ for (i = 1 ; i <= 7; i++) {
+ q[i] = sprintf("element %d", i)
+ x[i] = i
+ y[i] = q[i]
+ }
+# adump(q)
+ delit(q)
+# for (i in q)
+# delete q[i]
+ j = 0;
+ for (i in q)
+ j++
+ print j, "elements still in q[]"
+# adump(q)
+}
diff --git a/contrib/awk/test/fnparydl.ok b/contrib/awk/test/fnparydl.ok
new file mode 100644
index 0000000..26a5c39
--- /dev/null
+++ b/contrib/awk/test/fnparydl.ok
@@ -0,0 +1,10 @@
+BEFORE LOOP
+DELETING KEY 4
+DELETING KEY 5
+DELETING KEY 6
+DELETING KEY 7
+DELETING KEY 1
+DELETING KEY 2
+DELETING KEY 3
+AFTER LOOP
+0 elements still in q[]
diff --git a/contrib/awk/test/funsmnam.awk b/contrib/awk/test/funsmnam.awk
new file mode 100644
index 0000000..1e8ca50
--- /dev/null
+++ b/contrib/awk/test/funsmnam.awk
@@ -0,0 +1,6 @@
+function foo( \
+ foo)
+{
+ print foo
+}
+{ foo() }
diff --git a/contrib/awk/test/funsmnam.ok b/contrib/awk/test/funsmnam.ok
new file mode 100644
index 0000000..bc68a2f
--- /dev/null
+++ b/contrib/awk/test/funsmnam.ok
@@ -0,0 +1 @@
+gawk: funsmnam.awk:6: fatal: function `foo': can't use function name as parameter name
diff --git a/contrib/awk/test/getlnbuf.awk b/contrib/awk/test/getlnbuf.awk
new file mode 100644
index 0000000..8a4483e
--- /dev/null
+++ b/contrib/awk/test/getlnbuf.awk
@@ -0,0 +1,18 @@
+#Date: Tue, 21 Dec 1999 16:11:07 +0100
+#From: Daniel Schnell <Daniel.Schnell.GP@icn.siemens.de>
+#To: bug-gnu-utils@gnu.org
+#CC: arnold@gnu.org
+#Subject: BUG in gawk (version 3.0.4 linux, windows): Text mangeling in between
+
+# search for "@K@CODE" segment
+
+$0 ~ /@K@CODE/ {
+ # get next record
+ getline temp
+ printf ("@K@CODE\n")
+ printf ("%s\n",temp)
+ }
+
+$0 !~ /@K@CODE/ {
+ printf ("%s\n", $0)
+ }
diff --git a/contrib/awk/test/getlnbuf.in b/contrib/awk/test/getlnbuf.in
new file mode 100644
index 0000000..062b377
--- /dev/null
+++ b/contrib/awk/test/getlnbuf.in
@@ -0,0 +1,1708 @@
+EXTRA_INFO.TYP3.EC := EC;
+EXTRA_INFO.TYP3.TEXT:= 'CONNECT_SERVICE TO OAM FAILED';
+
+G9PXYA1S!G9TE500_EHP_P(
+'G9IBSA1C003', /*@@ID*/
+G9PXYA1S!G9TE102_ERR_CLASS_SWERR, /*@@CLASS*/
+ADDR(EXTRA_INFO.ERROR_HANDLER), /* EXTRA-INFO ADDR */
+G9PXYA1S!G9TE100_GB_LM, /* USER-ID */
+NULL /* OPTIONAL-SWET-INFO ADDR */
+);
+/***@@@ END OF ERROR ***/
+
+@K@FREEZE
+917596041
+@K@NAME
+T_ERR4_1
+@K@INSCRIPT
+ERROR_HANDLING:
+DB_OVERFLOW
+MP/NSEI
+@K@CODE
+/***@@@ ERROR ***/
+/*@@ERRORTEXT
+*@ DB-OVERFLOW
+*@
+*@
+*@@DESCRIPTION
+*@ THE INSTANCE-CREATION WAS NOT POSSIBLE
+*@ BECAUSE THE DATABASE WOULD OVERFLOW
+*@
+*@@EXTRA INFO
+*@ (EXTRA_INFO_4_STRUCT)
+*@ NSEI
+*@ NSVCI
+*@ TEXT
+*@
+*/
+
+EXTRA_INFO.TYP4.NSEI := EVD_PTR->.KEYS.INT_ARR(0);
+EXTRA_INFO.TYP4.NSVCI:= EVD_PTR->.KEYS.INT_ARR(1);
+EXTRA_INFO.TYP4.TEXT := 'NSVC-HAND.: MP/NSEI-OVERFLOW';
+
+G9PXYA1S!G9TE500_EHP_P(
+'G9IBSA1C004', /*@@ID*/
+G9PXYA1S!G9TE102_ERR_CLASS_ESC_MAX_ANY, /*@@CLASS*/
+ADDR(EXTRA_INFO.ERROR_HANDLER), /* EXTRA-INFO ADDR */
+G9PXYA1S!G9TE100_GB_LM, /* USER-ID */
+NULL /* OPTIONAL-SWET-INFO ADDR */
+);
+/***@@@ END OF ERROR ***/
+
+@K@FREEZE
+920903219
+@K@NAME
+T_ERR4_2
+@K@INSCRIPT
+ERROR_HANDLING:
+DB_OVERFLOW
+MP/NSVCI
+@K@CODE
+/***@@@ ERROR ***/
+/*@@ERRORTEXT
+*@ DB-OVERFLOW
+*@
+*@
+*@@DESCRIPTION
+*@ THE INSTANCE-CREATION WAS NOT POSSIBLE
+*@ BECAUSE THE DATABASE WOULD OVERFLOW
+*@
+*@@EXTRA INFO
+*@ (EXTRA_INFO_4_STRUCT)
+*@ NSEI
+*@ NSVCI
+*@ TEXT
+*@
+*/
+
+EXTRA_INFO.TYP4.NSEI := EVD_PTR->.KEYS.INT_ARR(0);
+EXTRA_INFO.TYP4.NSVCI:= EVD_PTR->.KEYS.INT_ARR(1);
+EXTRA_INFO.TYP4.TEXT := 'NSVC-HAND.: MP/NSVCI-OVERFLOW';
+
+G9PXYA1S!G9TE500_EHP_P(
+'G9IBSA1C004', /*@@ID*/
+G9PXYA1S!G9TE102_ERR_CLASS_ESC_MAX_ANY, /*@@CLASS*/
+ADDR(EXTRA_INFO.ERROR_HANDLER), /* EXTRA-INFO ADDR */
+G9PXYA1S!G9TE100_GB_LM, /* USER-ID */
+NULL /* OPTIONAL-SWET-INFO ADDR */
+);
+/***@@@ END OF ERROR ***/
+
+@K@FREEZE
+920903222
+@K@NAME
+T_ERR4_3
+@K@INSCRIPT
+ERROR_HANDLING:
+DB_OVERFLOW
+NSEI/NSVCI
+@K@CODE
+/***@@@ ERROR ***/
+/*@@ERRORTEXT
+*@ DB-OVERFLOW
+*@
+*@
+*@@DESCRIPTION
+*@ THE INSTANCE-CREATION WAS NOT POSSIBLE
+*@ BECAUSE THE DATABASE WOULD OVERFLOW
+*@
+*@@EXTRA INFO
+*@ (EXTRA_INFO_4_STRUCT)
+*@ NSEI
+*@ NSVCI
+*@ TEXT
+*@
+*/
+
+EXTRA_INFO.TYP4.NSEI := EVD_PTR->.KEYS.INT_ARR(0);
+EXTRA_INFO.TYP4.NSVCI:= EVD_PTR->.KEYS.INT_ARR(1);
+EXTRA_INFO.TYP4.TEXT := 'NSVC-HAND.: NSEI/NSVC-OVERFLOW';
+
+G9PXYA1S!G9TE500_EHP_P(
+'G9IBSA1C004', /*@@ID*/
+G9PXYA1S!G9TE102_ERR_CLASS_ESC_MAX_ANY, /*@@CLASS*/
+ADDR(EXTRA_INFO.ERROR_HANDLER), /* EXTRA-INFO ADDR */
+G9PXYA1S!G9TE100_GB_LM, /* USER-ID */
+NULL /* OPTIONAL-SWET-INFO ADDR */
+);
+/***@@@ END OF ERROR ***/
+
+@K@FREEZE
+920903226
+@K@NAME
+TR_RESET
+@K@INSCRIPT
+RESTART_
+TNS_RESET_
+TIMER
+@K@CODE
+/* TIMER EVENT DESCRIPTOR STILL THERE */
+
+/* INITIALIZATION OF THE TIMER-EVENT-DESCRIPTOR STILL VALID */
+NSVCI_CON_PTR->.TIM_EVD_PTR->.TIMER:= TNS_RESET_MAP;
+
+/* START TIMER */
+G9PX508_START_TIMER_P
+(
+NSVCI_CON_PTR->.TIM_EVD_PTR
+);
+
+@K@FREEZE
+924684867
+@K@NAME
+TX_AUDIT
+@K@INSCRIPT
+FOR
+AUDIT
+
+@K@NAME
+M_BLKOACKM
+@K@INSCRIPT
+NS_
+BLOCK_ACK
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9IBDF4_NS_LM_M) + G9IBD44_NS_PDU_DATA_OFFSET_C),
+TX_EVD_PTR
+);
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9IBD40_NS_LM_PDU_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= GBDL_HANDLE;
+
+IF
+/* 'OTHER' ALIVE NSVC TO THIS NSEI EXISTING? */
+NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR /= NULL
+THEN
+/* USE THIS 'OTHER' FOR TRANSPORT */
+TX_EVD_PTR->.KEYS.INT_ARR(0):=
+
+NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI;
+/* NSEI TO BE USED FOR TRANSPORT */
+TX_EVD_PTR->.KEYS.INT_ARR(1):=
+
+NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+/* NSVCI TO BE USED FOR TRANSPORT */
+ELSE
+/* USE AFFECTED NSVC AGAIN FOR TRANSPORT */
+TX_EVD_PTR->.KEYS.INT_ARR(0):=
+ NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; /* NSEI TO BE USED FOR
+TRANSPORT */
+TX_EVD_PTR->.KEYS.INT_ARR(1):=
+ NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVCI TO BE USED FOR
+TRANSPORT */
+FI;
+
+
+/* POINTER TO PDU IN POOL-ELEMENT */
+NS_PDU_PTR:= NS_PDU_REF_M (INT(TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT)
+ + G9IBD44_NS_PDU_DATA_OFFSET_C);
+/* OFFSET OF THE PDU IN POOL-ELEMENT */
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= G9IBD44_NS_PDU_DATA_OFFSET_C;
+/* LENGTH OF THE PDU IN POOL-ELEMENT */
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(NS_PDU_PTR->.G9IBDF4_PDU_TYPE) +
+SIZE(NS_PDU_PTR->.D3);
+
+/* NOW THE POOL-ELEMENT */
+NS_PDU_PTR->.G9IBDF4_PDU_TYPE:= G9IBDR2_NS_BLOCK_ACK_C; /* PDU-TYPE */
+
+NS_PDU_PTR->.D3.NSVCI_TLV.NSVCI_VAL :=
+ NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVC TO BE BLOCKED */
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+938805885
+@K@NAME
+T_RCTRUE
+@K@INSCRIPT
+RC
+=
+TRUE
+@K@CODE
+RC:= TRUE;
+
+@K@FREEZE
+922176328
+@K@NAME
+M_AC_SBVCN
+@K@INSCRIPT
+G9IBME0_
+ACT_
+SIGN_BVC_C
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB512_GET_MSG_LESS_EV_DESCR_P
+(
+SID_GBNSVC,
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+TX_EVD_PTR->.EVENT_CMD:= G9IBME0_ACT_SIGN_BVC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= GBBVC_HANDLE;
+TX_EVD_PTR->.KEYS.INT_ARR(0):= EVD_PTR->.KEYS.INT_ARR(0);
+TX_EVD_PTR->.KEYS.INT_ARR(1):= SIGN_BVCI;
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+938788211
+@K@NAME
+T_RC_EOD
+@K@INSCRIPT
+RC
+=
+END OF DATA
+
+@K@CODE
+RC:= G9IBSM4_RC_END_OF_DATA;
+
+@K@FREEZE
+921083785
+@K@NAME
+T_RC_EMP
+@K@INSCRIPT
+RC
+=
+EMPTY
+
+@K@CODE
+RC:= G9IBSM4_RC_EMPTY;
+
+@K@FREEZE
+921083757
+@K@NAME
+T_RC_ERR
+@K@INSCRIPT
+RC
+=
+ERROR
+
+@K@CODE
+RC:= G9IBSM4_RC_ERROR;
+
+@K@FREEZE
+921083731
+@K@NAME
+S_UNUSED
+@K@INSCRIPT
+G9IBSM0_
+UNUSED
+@K@CODE
+
+
+@K@FREEZE
+919416670
+@K@NAME
+TA_UNBLOCK
+@K@INSCRIPT
+START_
+TNS_UNBLOCK_
+TIMER
+@K@CODE
+/* GET TIMER-EVENT DESCRIPTOR */
+G9PB513_GET_TIMER_EV_DESCR_P
+(
+SID_GBNSVC,
+NSVCI_CON_PTR->.TIM_EVD_PTR
+);
+
+/* INITIALIZATION OF THE TIMER-EVENT-DESCRIPTOR */
+NSVCI_CON_PTR->.TIM_EVD_PTR->.EVENT_CMD:= G9IBSE4_TO_TNS_C;
+NSVCI_CON_PTR->.TIM_EVD_PTR->.EVENT_DESTINATION:= GBNSVC_HANDLE;
+NSVCI_CON_PTR->.TIM_EVD_PTR->.KEYS.INT_ARR(0):=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI;
+NSVCI_CON_PTR->.TIM_EVD_PTR->.KEYS.INT_ARR(1):=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+NSVCI_CON_PTR->.TIM_EVD_PTR->.TIMER:= TNS_UNBLOCK_MAP;
+
+/* START TIMER */
+G9PX508_START_TIMER_P
+(
+NSVCI_CON_PTR->.TIM_EVD_PTR
+);
+
+@K@FREEZE
+924686210
+@K@NAME
+M_BLK_ACKM
+@K@INSCRIPT
+NS_
+BLOCK_ACK
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9IBDF4_NS_LM_M) + G9IBD44_NS_PDU_DATA_OFFSET_C),
+TX_EVD_PTR
+);
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9IBD40_NS_LM_PDU_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= GBDL_HANDLE;
+TX_EVD_PTR->.KEYS.INT_ARR(0):=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; /* NSEI TO BE USED FOR
+TRANSPORT */
+TX_EVD_PTR->.KEYS.INT_ARR(1):=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVCI TO BE USED FOR
+TRANSPORT */
+/* POINTER TO PDU IN POOL-ELEMENT */
+NS_PDU_PTR:= NS_PDU_REF_M (INT(TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT)
+ + G9IBD44_NS_PDU_DATA_OFFSET_C);
+/* OFFSET OF THE PDU IN POOL-ELEMENT */
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= G9IBD44_NS_PDU_DATA_OFFSET_C;
+/* LENGTH OF THE PDU IN POOL-ELEMENT */
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(NS_PDU_PTR->.G9IBDF4_PDU_TYPE) +
+SIZE(NS_PDU_PTR->.D3);
+
+/* NOW THE POOL-ELEMENT */
+NS_PDU_PTR->.G9IBDF4_PDU_TYPE:= G9IBDR2_NS_BLOCK_ACK_C; /* PDU-TYPE */
+
+NS_PDU_PTR->.D3.NSVCI_TLV.NSVCI_VAL :=
+ NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVC TO BE BLOCKED */
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+926348442
+@K@NAME
+TA_NXTALIV
+@K@INSCRIPT
+DEFINE
+NEW 'NEXT_
+ALIVE'
+@K@CODE
+IF
+/* ALIVE NSVC TO THE NSEI EXISTING? */
+NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR /= NULL
+
+THEN
+/* TAKE NEXT ELEMENT IN THE LINKED LIST AS THE NEXT ALIVE NSVC */
+NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR:=
+
+NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR->.NEXT_ALV_NSVCI_CON_PTR;
+
+FI;
+
+@K@FREEZE
+938801086
+@K@NAME
+M_DE_CBVCN
+@K@INSCRIPT
+G9IBME2_
+DEACT_
+CELL_BVC_C
+
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB512_GET_MSG_LESS_EV_DESCR_P
+(
+SID_GBNSVC,
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+TX_EVD_PTR->.EVENT_CMD:= G9IBME2_DEACT_CELL_BVC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= GBBVC_HANDLE;
+TX_EVD_PTR->.KEYS.INT_ARR(0):=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI;
+TX_EVD_PTR->.KEYS.INT_ARR(1):= EVD_PTR->.ADD_DATA(3);
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+933318270
+@K@NAME
+TA_NXTRESP
+@K@INSCRIPT
+DEFINE
+NEW 'NEXT_
+RESPONSIBLE'
+@K@CODE
+NSEI_CON_PTR->.NEXT_RESP_NSVCI_CON_PTR:=
+ NSEI_CON_PTR->.NEXT_RESP_NSVCI_CON_PTR->.NEXT_LSP_NSVCI_CON_PTR;
+
+
+@K@FREEZE
+938005006
+@K@NAME
+TA_NXTSUBS
+@K@INSCRIPT
+DEFINE
+NEW 'NEXT_
+SUBSTITUTE'
+@K@CODE
+NSEI_CON_PTR->.NEXT_SUBS_NSVCI_CON_PTR:=
+ NSEI_CON_PTR->.NEXT_SUBS_NSVCI_CON_PTR->.NEXT_UBL_NSVCI_CON_PTR;
+
+@K@NAME
+M_BLK_O__M
+@K@INSCRIPT
+NS_
+BLOCK
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9IBDF4_NS_LM_M) + G9IBD44_NS_PDU_DATA_OFFSET_C),
+TX_EVD_PTR
+);
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9IBD40_NS_LM_PDU_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= GBDL_HANDLE;
+
+IF
+/* 'OTHER' ALIVE NSVC TO THIS NSEI EXISTING? */
+NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR /= NULL
+THEN
+/* USE THIS 'OTHER' FOR TRANSPORT */
+TX_EVD_PTR->.KEYS.INT_ARR(0):=
+
+NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI;
+/* NSEI TO BE USED FOR TRANSPORT */
+TX_EVD_PTR->.KEYS.INT_ARR(1):=
+
+NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+/* NSVCI TO BE USED FOR TRANSPORT */
+ELSE
+/* USE AFFECTED NSVC AGAIN FOR TRANSPORT */
+TX_EVD_PTR->.KEYS.INT_ARR(0):=
+ NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; /* NSEI TO BE USED FOR
+TRANSPORT */
+TX_EVD_PTR->.KEYS.INT_ARR(1):=
+ NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVCI TO BE USED FOR
+TRANSPORT */
+FI;
+
+
+/* POINTER TO PDU IN POOL-ELEMENT */
+NS_PDU_PTR:= NS_PDU_REF_M (INT(TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT)
+ + G9IBD44_NS_PDU_DATA_OFFSET_C);
+/* OFFSET OF THE PDU IN POOL-ELEMENT */
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= G9IBD44_NS_PDU_DATA_OFFSET_C;
+/* LENGTH OF THE PDU IN POOL-ELEMENT */
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(NS_PDU_PTR->.G9IBDF4_PDU_TYPE) +
+SIZE(NS_PDU_PTR->.D2);
+
+
+/* NOW THE POOL-ELEMENT */
+NS_PDU_PTR->.G9IBDF4_PDU_TYPE:= G9IBDR1_NS_BLOCK_C; /* PDU-TYPE */
+
+NS_PDU_PTR->.D2.CAUSE_TLV.CAUSE_VAL:=
+ G9IBBA2_NS_TRANSIT_NETWORK_FAILURE; /* CAUSE FOR BLOCK */
+NS_PDU_PTR->.D2.NSVCI_TLV.NSVCI_VAL :=
+ NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVC TO BE BLOCKED */
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@TEXT
+GSM 8.16 CHAP. 7.2:
+THE NS-BLOCK-PDU MAY BE SENT IN ANY ALIVE
+(BLOCKED OR UNBLOCKED) NS-VC...
+@K@FREEZE
+938803215
+@K@NAME
+M_DE_SBVCN
+@K@INSCRIPT
+G9IBME1_
+DEACT_
+SIGN_BVC_C
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB512_GET_MSG_LESS_EV_DESCR_P
+(
+SID_GBNSVC,
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+TX_EVD_PTR->.EVENT_CMD:= G9IBME1_DEACT_SIGN_BVC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= GBBVC_HANDLE;
+TX_EVD_PTR->.KEYS.INT_ARR(0):= EVD_PTR->.KEYS.INT_ARR(0);
+TX_EVD_PTR->.KEYS.INT_ARR(1):= SIGN_BVCI;
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+938788201
+@K@NAME
+M_OAME401M
+@K@INSCRIPT
+ERROR_MESSAGE:
+ERRONOUS_PDU
+RESET_PDU
+
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSE */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSE;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSE_ID:= EVD_PTR->.KEYS.INT_ARR(0); /*
+USED NSEI (FROM ECI) */
+
+/* ERROR-CAUSE = ERRONEOUS_PDU */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU;
+/* ADDITIONAL_PDU_INFO */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:=
+ G9OC124_RESET_PDU;
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:=
+ EVD_PTR->.ADD_DATA(0); /* AFFECTED NSEI (FROM PDU) */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:=
+ EVD_PTR->.ADD_DATA(1); /* AFFECTED NSVCI (FROM PDU) */
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+935766108
+@K@NAME
+M_OAME402M
+@K@INSCRIPT
+ERROR_MESSAGE:
+ERRONOUS_PDU
+RESET_PDU
+
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= EVD_PTR->.KEYS.INT_ARR(1); /*
+USED NSVCI (FROM ECI) */
+
+/* ERROR-CAUSE = ERRONEOUS_PDU */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU;
+/* ADDITIONAL_PDU_INFO */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:=
+ G9OC124_RESET_PDU;
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:=
+ EVD_PTR->.ADD_DATA(0); /* NSEI FROM PDU */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:=
+ EVD_PTR->.ADD_DATA(1); /* NSVCI FROM PDU */
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+935766407
+@K@NAME
+M_OAME411M
+@K@INSCRIPT
+ERROR_MESSAGE:
+ERRONOUS_PDU
+RESET_ACK_PDU
+
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSE */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSE;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSE_ID:= EVD_PTR->.KEYS.INT_ARR(0); /*
+USED NSEI (FROM ECI) */
+
+/* ERROR-CAUSE = ERRONEOUS_PDU */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU;
+/* ADDITIONAL_PDU_INFO */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:=
+ G9OC124_RESET_ACK_PDU;
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:=
+ EVD_PTR->.ADD_DATA(0); /* NSEI FROM PDU */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:=
+ EVD_PTR->.ADD_DATA(1); /* NSVCI FROM PDU */
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+935767332
+@K@NAME
+M_OAME412M
+@K@INSCRIPT
+ERROR_MESSAGE:
+ERRONOUS_PDU
+RESET_ACK_PDU
+
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= EVD_PTR->.KEYS.INT_ARR(1); /*
+USED NSVCI (FROM ECI) */
+
+/* ERROR-CAUSE = ERRONEOUS_PDU */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU;
+/* ADDITIONAL_PDU_INFO */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:=
+ G9OC124_RESET_ACK_PDU;
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:=
+ EVD_PTR->.ADD_DATA(0); /* NSEI FROM PDU */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:=
+ EVD_PTR->.ADD_DATA(1); /* NSVCI FROM PDU */
+
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+935767189
+@K@NAME
+C_CON
+@K@INSCRIPT
+RC_DB
+@K@CODE
+RC_DB
+
+@K@FREEZE
+922176673
+@K@NAME
+M_BLK____M
+@K@INSCRIPT
+NS_
+BLOCK
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9IBDF4_NS_LM_M) + G9IBD44_NS_PDU_DATA_OFFSET_C),
+TX_EVD_PTR
+);
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9IBD40_NS_LM_PDU_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= GBDL_HANDLE;
+TX_EVD_PTR->.KEYS.INT_ARR(0):=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; /* NSEI TO BE USED FOR
+TRANSPORT */
+TX_EVD_PTR->.KEYS.INT_ARR(1):=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVCI TO BE USED FOR
+TRANSPORT */
+/* POINTER TO PDU IN POOL-ELEMENT */
+NS_PDU_PTR:= NS_PDU_REF_M (INT(TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT)
+ + G9IBD44_NS_PDU_DATA_OFFSET_C);
+/* OFFSET OF THE PDU IN POOL-ELEMENT */
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= G9IBD44_NS_PDU_DATA_OFFSET_C;
+/* LENGTH OF THE PDU IN POOL-ELEMENT */
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(NS_PDU_PTR->.G9IBDF4_PDU_TYPE) +
+SIZE(NS_PDU_PTR->.D2);
+
+
+/* NOW THE POOL-ELEMENT */
+NS_PDU_PTR->.G9IBDF4_PDU_TYPE:= G9IBDR1_NS_BLOCK_C; /* PDU-TYPE */
+
+NS_PDU_PTR->.D2.CAUSE_TLV.CAUSE_VAL:=
+ G9IBBA2_NS_OAM_INTERVENTION; /* CAUSE FOR BLOCK */
+NS_PDU_PTR->.D2.NSVCI_TLV.NSVCI_VAL :=
+ NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVC TO BE BLOCKED */
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@TEXT
+GSM 8.16 CHAP. 7.2:
+THE NS-BLOCK-PDU MAY BE SENT IN ANY ALIVE
+(BLOCKED OR UNBLOCKED) NS-VC...
+@K@FREEZE
+926348613
+@K@NAME
+S_BLOCKED
+@K@INSCRIPT
+G9IBSM0_
+BLOCKED
+@K@CODE
+
+
+@K@FREEZE
+922176496
+@K@NAME
+D_CON
+@K@INSCRIPT
+CONTEXT
+GOT
+@K@CODE
+RC_DB = G9IBSR0_RC_OK
+
+@K@FREEZE
+921772339
+@K@NAME
+M_OAME901M
+@K@INSCRIPT
+ERROR_MESSAGE:
+OPERATIONAL_STATE_CHANGE
+UBL->BLK
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = OPERATIONAL_STATE_CHANGE */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_OPERATIONAL_STATE_CHANGE;
+/* ADDITIONAL_OPERATIONAL_STATE_INFO */
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_OLD:=
+ G9OC101_UNBLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_NEW:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_OLD:=
+ G9OC102_ENABLED;
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_NEW:=
+ G9OC102_ENABLED;
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+925970975
+@K@NAME
+M_OAME902M
+@K@INSCRIPT
+ERROR_MESSAGE:
+OPERATIONAL_STATE_CHANGE
+UBL->BLK
+
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = OPERATIONAL_STATE_CHANGE */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_OPERATIONAL_STATE_CHANGE;
+/* ADDITIONAL_OPERATIONAL_STATE_INFO */
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_OLD:=
+ G9OC101_UNBLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_NEW:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_OLD:=
+ G9OC102_ENABLED;
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_NEW:=
+ G9OC102_DISABLED;
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+925970987
+@K@NAME
+M_OAME10SM
+@K@INSCRIPT
+ERROR_MESSAGE:
+ALARM_BEGIN_NS_ALIVE_TEST
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = ALARM_BEGIN_NS_ALIVE_TEST*/
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_BEGIN_NS_ALIVE_TEST;
+/* ADDITIONAL_ALARM_INFO */
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:=
+ TRUE;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:=
+ G9OC103_DEAD;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:=
+ G9OC103_DEAD;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:=
+ TRUE;
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@NAME
+M_OAME911M
+@K@INSCRIPT
+ERROR_MESSAGE:
+OPERATIONAL_STATE_CHANGE
+BLK->UBL
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = OPERATIONAL_STATE_CHANGE */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_OPERATIONAL_STATE_CHANGE;
+/* ADDITIONAL_OPERATIONAL_STATE_INFO */
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_OLD:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_NEW:=
+ G9OC101_UNBLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_OLD:=
+ G9OC102_ENABLED;
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_NEW:=
+ G9OC102_ENABLED;
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+925970996
+@K@NAME
+M_OAME20SM
+@K@INSCRIPT
+ERROR_MESSAGE:
+ALARM_END_NS_ALIVE_TEST
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = ALARM_END_NS_ALIVE_TEST */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_END_NS_ALIVE_TEST;
+/* ADDITIONAL_ALARM_INFO */
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:=
+ TRUE;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:=
+ G9OC103_DEAD;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:=
+ G9OC103_DEAD;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:=
+ TRUE;
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@NAME
+M_OAME10_M
+@K@INSCRIPT
+ERROR_MESSAGE:
+ALARM_BEGIN_NS_ALIVE_TEST
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = ALARM_BEGIN_NS_ALIVE_TEST*/
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_BEGIN_NS_ALIVE_TEST;
+/* ADDITIONAL_ALARM_INFO */
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:=
+ TRUE;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:=
+ G9OC103_DEAD;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:=
+ G9OC103_DEAD;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:=
+ TRUE;
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+922443813
+@K@NAME
+D_SEM
+@K@INSCRIPT
+CALL_SEM
+=
+TRUE
+@K@CODE
+CALL_SEM = TRUE
+
+@K@FREEZE
+922176624
+@K@NAME
+D_N_0
+@K@INSCRIPT
+N = 0
+
+@K@CODE
+NSVCI_CON_PTR->.N = 0
+
+@K@FREEZE
+921511000
+@K@NAME
+M_OAME12_M
+@K@INSCRIPT
+ERROR_MESSAGE:
+ALARM_BEGIN_NS_ALIVE_TEST
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = ALARM_BEGIN_NS_ALIVE_TEST*/
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_BEGIN_NS_ALIVE_TEST;
+/* ADDITIONAL_ALARM_INFO */
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:=
+ FALSE;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:=
+ G9OC103_ALIVE;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:=
+ G9OC103_DEAD;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:=
+ TRUE;
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+922443829
+@K@NAME
+M_OAME21_M
+@K@INSCRIPT
+ERROR_MESSAGE:
+ALARM_END_NS_ALIVE_TEST
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = ALARM_END_NS_ALIVE_TEST */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_END_NS_ALIVE_TEST;
+/* ADDITIONAL_ALARM_INFO */
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:=
+ TRUE;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:=
+ G9OC103_DEAD;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:=
+ G9OC103_DEAD;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:=
+ FALSE;
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+922443856
+@K@NAME
+M_OAME13_M
+@K@INSCRIPT
+ERROR_MESSAGE:
+ALARM_BEGIN_NS_ALIVE_TEST
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = ALARM_BEGIN_NS_ALIVE_TEST*/
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_BEGIN_NS_ALIVE_TEST;
+/* ADDITIONAL_ALARM_INFO */
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:=
+ FALSE;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:=
+ G9OC101_UNBLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:=
+ G9OC103_ALIVE;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:=
+ G9OC103_DEAD;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:=
+ TRUE;
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+922443838
+@K@NAME
+M_OAME22_M
+@K@INSCRIPT
+ERROR_MESSAGE:
+ALARM_END_NS_ALIVE_TEST
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = ALARM_END_NS_ALIVE_TEST */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_END_NS_ALIVE_TEST;
+/* ADDITIONAL_ALARM_INFO */
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:=
+ FALSE;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:=
+ G9OC103_DEAD;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:=
+ G9OC103_ALIVE;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:=
+ TRUE;
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+922443864
+@K@NAME
+M_OAME30_M
+@K@INSCRIPT
+ERROR_MESSAGE:
+NO_ANSWER_FORM_BSS
+RESET_PROCEDURE
+
+
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = NO_ANSWER_FROM_BSS */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_NO_ANSWER_FROM_BSS;
+/* INITIATED_PROCEDURE */
+OAM_MSG_PTR->.INITIATED_PROCEDURE:=
+ G9OC123_RESET_PROCEDURE;
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+922175973
+@K@NAME
+M_OAME31_M
+@K@INSCRIPT
+ERROR_MESSAGE:
+NO_ANSWER_FROM_BSS
+BLOCK_PROCEDURE
+
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = NO_ANSWER_FROM_BSS */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_NO_ANSWER_FROM_BSS;
+/* INITIATED_PROCEDURE */
+OAM_MSG_PTR->.INITIATED_PROCEDURE:=
+ G9OC123_BLOCK_PROCEDURE;
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+922175976
+@K@NAME
+M_OAME32_M
+@K@INSCRIPT
+ERROR_MESSAGE:
+NO_ANSWER_FROM_BSS
+UNBLOCK_PROCEDURE
+
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = NO_ANSWER_FROM_BSS */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_NO_ANSWER_FROM_BSS;
+/* INITIATED_PROCEDURE */
+OAM_MSG_PTR->.INITIATED_PROCEDURE:=
+ G9OC123_UNBLOCK_PROCEDURE;
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+922175980
+@K@NAME
+M_OAME42_M
+@K@INSCRIPT
+ERROR_MESSAGE:
+ERRONOUS_PDU
+BLOCK_PDU
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= EVD_PTR->.ADD_DATA(1); /*
+USED NSVCI (FROM ECI) */
+
+/* ERROR-CAUSE = ERRONEOUS_PDU */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU;
+/* ADDITIONAL_PDU_INFO */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:=
+ G9OC124_BLOCK_PDU;
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:=
+ EVD_PTR->.KEYS.INT_ARR(0); /* AFFECTED NSEI (FROM PDU) */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:=
+ EVD_PTR->.KEYS.INT_ARR(1); /* AFFECTED NSVCI (FROM PDU) */
+
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+934296141
+@K@NAME
+M_OAME50_M
+@K@INSCRIPT
+ERROR_MESSAGE:
+STATUS_PDU_CONTAINS_ERROR_INFO
+RECEIVED
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR-CAUSE = STATUS_PDU_CONTAINS_ERROR_INFO */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_STATUS_PDU_CONTAINS_ERROR_INFO;
+/* ADDITIONAL_STATUS_PDU_INFO */
+INT_CAUSE_PTR.INT_PTR:= ADDR(EVD_PTR->.ADD_DATA(2));
+OAM_MSG_PTR->.ADDITIONAL_STATUS_PDU_INFO:=
+ INT_CAUSE_PTR.CAUSE_PTR->; /* CAUSE */
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@TEXT
+NICHT OK
+
+@K@FREEZE
+934298924
+@K@NAME
+M_OAME43_M
+@K@INSCRIPT
+ERROR_MESSAGE:
+ERRONOUS_PDU
+BLOCK_ACK_PDU
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= EVD_PTR->.ADD_DATA(1); /*
+USED NSVCI (FROM ECI) */
+
+/* ERROR-CAUSE = ERRONEOUS_PDU */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU;
+/* ADDITIONAL_PDU_INFO */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:=
+ G9OC124_BLOCK_ACK_PDU;
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:=
+ EVD_PTR->.KEYS.INT_ARR(0); /* AFFECTED NSEI (FROM PDU) */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:=
+ EVD_PTR->.KEYS.INT_ARR(1); /* AFFECTED NSVCI (FROM PDU) */
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+934297710
diff --git a/contrib/awk/test/getlnbuf.ok b/contrib/awk/test/getlnbuf.ok
new file mode 100644
index 0000000..062b377
--- /dev/null
+++ b/contrib/awk/test/getlnbuf.ok
@@ -0,0 +1,1708 @@
+EXTRA_INFO.TYP3.EC := EC;
+EXTRA_INFO.TYP3.TEXT:= 'CONNECT_SERVICE TO OAM FAILED';
+
+G9PXYA1S!G9TE500_EHP_P(
+'G9IBSA1C003', /*@@ID*/
+G9PXYA1S!G9TE102_ERR_CLASS_SWERR, /*@@CLASS*/
+ADDR(EXTRA_INFO.ERROR_HANDLER), /* EXTRA-INFO ADDR */
+G9PXYA1S!G9TE100_GB_LM, /* USER-ID */
+NULL /* OPTIONAL-SWET-INFO ADDR */
+);
+/***@@@ END OF ERROR ***/
+
+@K@FREEZE
+917596041
+@K@NAME
+T_ERR4_1
+@K@INSCRIPT
+ERROR_HANDLING:
+DB_OVERFLOW
+MP/NSEI
+@K@CODE
+/***@@@ ERROR ***/
+/*@@ERRORTEXT
+*@ DB-OVERFLOW
+*@
+*@
+*@@DESCRIPTION
+*@ THE INSTANCE-CREATION WAS NOT POSSIBLE
+*@ BECAUSE THE DATABASE WOULD OVERFLOW
+*@
+*@@EXTRA INFO
+*@ (EXTRA_INFO_4_STRUCT)
+*@ NSEI
+*@ NSVCI
+*@ TEXT
+*@
+*/
+
+EXTRA_INFO.TYP4.NSEI := EVD_PTR->.KEYS.INT_ARR(0);
+EXTRA_INFO.TYP4.NSVCI:= EVD_PTR->.KEYS.INT_ARR(1);
+EXTRA_INFO.TYP4.TEXT := 'NSVC-HAND.: MP/NSEI-OVERFLOW';
+
+G9PXYA1S!G9TE500_EHP_P(
+'G9IBSA1C004', /*@@ID*/
+G9PXYA1S!G9TE102_ERR_CLASS_ESC_MAX_ANY, /*@@CLASS*/
+ADDR(EXTRA_INFO.ERROR_HANDLER), /* EXTRA-INFO ADDR */
+G9PXYA1S!G9TE100_GB_LM, /* USER-ID */
+NULL /* OPTIONAL-SWET-INFO ADDR */
+);
+/***@@@ END OF ERROR ***/
+
+@K@FREEZE
+920903219
+@K@NAME
+T_ERR4_2
+@K@INSCRIPT
+ERROR_HANDLING:
+DB_OVERFLOW
+MP/NSVCI
+@K@CODE
+/***@@@ ERROR ***/
+/*@@ERRORTEXT
+*@ DB-OVERFLOW
+*@
+*@
+*@@DESCRIPTION
+*@ THE INSTANCE-CREATION WAS NOT POSSIBLE
+*@ BECAUSE THE DATABASE WOULD OVERFLOW
+*@
+*@@EXTRA INFO
+*@ (EXTRA_INFO_4_STRUCT)
+*@ NSEI
+*@ NSVCI
+*@ TEXT
+*@
+*/
+
+EXTRA_INFO.TYP4.NSEI := EVD_PTR->.KEYS.INT_ARR(0);
+EXTRA_INFO.TYP4.NSVCI:= EVD_PTR->.KEYS.INT_ARR(1);
+EXTRA_INFO.TYP4.TEXT := 'NSVC-HAND.: MP/NSVCI-OVERFLOW';
+
+G9PXYA1S!G9TE500_EHP_P(
+'G9IBSA1C004', /*@@ID*/
+G9PXYA1S!G9TE102_ERR_CLASS_ESC_MAX_ANY, /*@@CLASS*/
+ADDR(EXTRA_INFO.ERROR_HANDLER), /* EXTRA-INFO ADDR */
+G9PXYA1S!G9TE100_GB_LM, /* USER-ID */
+NULL /* OPTIONAL-SWET-INFO ADDR */
+);
+/***@@@ END OF ERROR ***/
+
+@K@FREEZE
+920903222
+@K@NAME
+T_ERR4_3
+@K@INSCRIPT
+ERROR_HANDLING:
+DB_OVERFLOW
+NSEI/NSVCI
+@K@CODE
+/***@@@ ERROR ***/
+/*@@ERRORTEXT
+*@ DB-OVERFLOW
+*@
+*@
+*@@DESCRIPTION
+*@ THE INSTANCE-CREATION WAS NOT POSSIBLE
+*@ BECAUSE THE DATABASE WOULD OVERFLOW
+*@
+*@@EXTRA INFO
+*@ (EXTRA_INFO_4_STRUCT)
+*@ NSEI
+*@ NSVCI
+*@ TEXT
+*@
+*/
+
+EXTRA_INFO.TYP4.NSEI := EVD_PTR->.KEYS.INT_ARR(0);
+EXTRA_INFO.TYP4.NSVCI:= EVD_PTR->.KEYS.INT_ARR(1);
+EXTRA_INFO.TYP4.TEXT := 'NSVC-HAND.: NSEI/NSVC-OVERFLOW';
+
+G9PXYA1S!G9TE500_EHP_P(
+'G9IBSA1C004', /*@@ID*/
+G9PXYA1S!G9TE102_ERR_CLASS_ESC_MAX_ANY, /*@@CLASS*/
+ADDR(EXTRA_INFO.ERROR_HANDLER), /* EXTRA-INFO ADDR */
+G9PXYA1S!G9TE100_GB_LM, /* USER-ID */
+NULL /* OPTIONAL-SWET-INFO ADDR */
+);
+/***@@@ END OF ERROR ***/
+
+@K@FREEZE
+920903226
+@K@NAME
+TR_RESET
+@K@INSCRIPT
+RESTART_
+TNS_RESET_
+TIMER
+@K@CODE
+/* TIMER EVENT DESCRIPTOR STILL THERE */
+
+/* INITIALIZATION OF THE TIMER-EVENT-DESCRIPTOR STILL VALID */
+NSVCI_CON_PTR->.TIM_EVD_PTR->.TIMER:= TNS_RESET_MAP;
+
+/* START TIMER */
+G9PX508_START_TIMER_P
+(
+NSVCI_CON_PTR->.TIM_EVD_PTR
+);
+
+@K@FREEZE
+924684867
+@K@NAME
+TX_AUDIT
+@K@INSCRIPT
+FOR
+AUDIT
+
+@K@NAME
+M_BLKOACKM
+@K@INSCRIPT
+NS_
+BLOCK_ACK
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9IBDF4_NS_LM_M) + G9IBD44_NS_PDU_DATA_OFFSET_C),
+TX_EVD_PTR
+);
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9IBD40_NS_LM_PDU_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= GBDL_HANDLE;
+
+IF
+/* 'OTHER' ALIVE NSVC TO THIS NSEI EXISTING? */
+NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR /= NULL
+THEN
+/* USE THIS 'OTHER' FOR TRANSPORT */
+TX_EVD_PTR->.KEYS.INT_ARR(0):=
+
+NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI;
+/* NSEI TO BE USED FOR TRANSPORT */
+TX_EVD_PTR->.KEYS.INT_ARR(1):=
+
+NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+/* NSVCI TO BE USED FOR TRANSPORT */
+ELSE
+/* USE AFFECTED NSVC AGAIN FOR TRANSPORT */
+TX_EVD_PTR->.KEYS.INT_ARR(0):=
+ NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; /* NSEI TO BE USED FOR
+TRANSPORT */
+TX_EVD_PTR->.KEYS.INT_ARR(1):=
+ NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVCI TO BE USED FOR
+TRANSPORT */
+FI;
+
+
+/* POINTER TO PDU IN POOL-ELEMENT */
+NS_PDU_PTR:= NS_PDU_REF_M (INT(TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT)
+ + G9IBD44_NS_PDU_DATA_OFFSET_C);
+/* OFFSET OF THE PDU IN POOL-ELEMENT */
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= G9IBD44_NS_PDU_DATA_OFFSET_C;
+/* LENGTH OF THE PDU IN POOL-ELEMENT */
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(NS_PDU_PTR->.G9IBDF4_PDU_TYPE) +
+SIZE(NS_PDU_PTR->.D3);
+
+/* NOW THE POOL-ELEMENT */
+NS_PDU_PTR->.G9IBDF4_PDU_TYPE:= G9IBDR2_NS_BLOCK_ACK_C; /* PDU-TYPE */
+
+NS_PDU_PTR->.D3.NSVCI_TLV.NSVCI_VAL :=
+ NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVC TO BE BLOCKED */
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+938805885
+@K@NAME
+T_RCTRUE
+@K@INSCRIPT
+RC
+=
+TRUE
+@K@CODE
+RC:= TRUE;
+
+@K@FREEZE
+922176328
+@K@NAME
+M_AC_SBVCN
+@K@INSCRIPT
+G9IBME0_
+ACT_
+SIGN_BVC_C
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB512_GET_MSG_LESS_EV_DESCR_P
+(
+SID_GBNSVC,
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+TX_EVD_PTR->.EVENT_CMD:= G9IBME0_ACT_SIGN_BVC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= GBBVC_HANDLE;
+TX_EVD_PTR->.KEYS.INT_ARR(0):= EVD_PTR->.KEYS.INT_ARR(0);
+TX_EVD_PTR->.KEYS.INT_ARR(1):= SIGN_BVCI;
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+938788211
+@K@NAME
+T_RC_EOD
+@K@INSCRIPT
+RC
+=
+END OF DATA
+
+@K@CODE
+RC:= G9IBSM4_RC_END_OF_DATA;
+
+@K@FREEZE
+921083785
+@K@NAME
+T_RC_EMP
+@K@INSCRIPT
+RC
+=
+EMPTY
+
+@K@CODE
+RC:= G9IBSM4_RC_EMPTY;
+
+@K@FREEZE
+921083757
+@K@NAME
+T_RC_ERR
+@K@INSCRIPT
+RC
+=
+ERROR
+
+@K@CODE
+RC:= G9IBSM4_RC_ERROR;
+
+@K@FREEZE
+921083731
+@K@NAME
+S_UNUSED
+@K@INSCRIPT
+G9IBSM0_
+UNUSED
+@K@CODE
+
+
+@K@FREEZE
+919416670
+@K@NAME
+TA_UNBLOCK
+@K@INSCRIPT
+START_
+TNS_UNBLOCK_
+TIMER
+@K@CODE
+/* GET TIMER-EVENT DESCRIPTOR */
+G9PB513_GET_TIMER_EV_DESCR_P
+(
+SID_GBNSVC,
+NSVCI_CON_PTR->.TIM_EVD_PTR
+);
+
+/* INITIALIZATION OF THE TIMER-EVENT-DESCRIPTOR */
+NSVCI_CON_PTR->.TIM_EVD_PTR->.EVENT_CMD:= G9IBSE4_TO_TNS_C;
+NSVCI_CON_PTR->.TIM_EVD_PTR->.EVENT_DESTINATION:= GBNSVC_HANDLE;
+NSVCI_CON_PTR->.TIM_EVD_PTR->.KEYS.INT_ARR(0):=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI;
+NSVCI_CON_PTR->.TIM_EVD_PTR->.KEYS.INT_ARR(1):=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+NSVCI_CON_PTR->.TIM_EVD_PTR->.TIMER:= TNS_UNBLOCK_MAP;
+
+/* START TIMER */
+G9PX508_START_TIMER_P
+(
+NSVCI_CON_PTR->.TIM_EVD_PTR
+);
+
+@K@FREEZE
+924686210
+@K@NAME
+M_BLK_ACKM
+@K@INSCRIPT
+NS_
+BLOCK_ACK
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9IBDF4_NS_LM_M) + G9IBD44_NS_PDU_DATA_OFFSET_C),
+TX_EVD_PTR
+);
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9IBD40_NS_LM_PDU_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= GBDL_HANDLE;
+TX_EVD_PTR->.KEYS.INT_ARR(0):=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; /* NSEI TO BE USED FOR
+TRANSPORT */
+TX_EVD_PTR->.KEYS.INT_ARR(1):=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVCI TO BE USED FOR
+TRANSPORT */
+/* POINTER TO PDU IN POOL-ELEMENT */
+NS_PDU_PTR:= NS_PDU_REF_M (INT(TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT)
+ + G9IBD44_NS_PDU_DATA_OFFSET_C);
+/* OFFSET OF THE PDU IN POOL-ELEMENT */
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= G9IBD44_NS_PDU_DATA_OFFSET_C;
+/* LENGTH OF THE PDU IN POOL-ELEMENT */
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(NS_PDU_PTR->.G9IBDF4_PDU_TYPE) +
+SIZE(NS_PDU_PTR->.D3);
+
+/* NOW THE POOL-ELEMENT */
+NS_PDU_PTR->.G9IBDF4_PDU_TYPE:= G9IBDR2_NS_BLOCK_ACK_C; /* PDU-TYPE */
+
+NS_PDU_PTR->.D3.NSVCI_TLV.NSVCI_VAL :=
+ NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVC TO BE BLOCKED */
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+926348442
+@K@NAME
+TA_NXTALIV
+@K@INSCRIPT
+DEFINE
+NEW 'NEXT_
+ALIVE'
+@K@CODE
+IF
+/* ALIVE NSVC TO THE NSEI EXISTING? */
+NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR /= NULL
+
+THEN
+/* TAKE NEXT ELEMENT IN THE LINKED LIST AS THE NEXT ALIVE NSVC */
+NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR:=
+
+NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR->.NEXT_ALV_NSVCI_CON_PTR;
+
+FI;
+
+@K@FREEZE
+938801086
+@K@NAME
+M_DE_CBVCN
+@K@INSCRIPT
+G9IBME2_
+DEACT_
+CELL_BVC_C
+
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB512_GET_MSG_LESS_EV_DESCR_P
+(
+SID_GBNSVC,
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+TX_EVD_PTR->.EVENT_CMD:= G9IBME2_DEACT_CELL_BVC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= GBBVC_HANDLE;
+TX_EVD_PTR->.KEYS.INT_ARR(0):=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI;
+TX_EVD_PTR->.KEYS.INT_ARR(1):= EVD_PTR->.ADD_DATA(3);
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+933318270
+@K@NAME
+TA_NXTRESP
+@K@INSCRIPT
+DEFINE
+NEW 'NEXT_
+RESPONSIBLE'
+@K@CODE
+NSEI_CON_PTR->.NEXT_RESP_NSVCI_CON_PTR:=
+ NSEI_CON_PTR->.NEXT_RESP_NSVCI_CON_PTR->.NEXT_LSP_NSVCI_CON_PTR;
+
+
+@K@FREEZE
+938005006
+@K@NAME
+TA_NXTSUBS
+@K@INSCRIPT
+DEFINE
+NEW 'NEXT_
+SUBSTITUTE'
+@K@CODE
+NSEI_CON_PTR->.NEXT_SUBS_NSVCI_CON_PTR:=
+ NSEI_CON_PTR->.NEXT_SUBS_NSVCI_CON_PTR->.NEXT_UBL_NSVCI_CON_PTR;
+
+@K@NAME
+M_BLK_O__M
+@K@INSCRIPT
+NS_
+BLOCK
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9IBDF4_NS_LM_M) + G9IBD44_NS_PDU_DATA_OFFSET_C),
+TX_EVD_PTR
+);
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9IBD40_NS_LM_PDU_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= GBDL_HANDLE;
+
+IF
+/* 'OTHER' ALIVE NSVC TO THIS NSEI EXISTING? */
+NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR /= NULL
+THEN
+/* USE THIS 'OTHER' FOR TRANSPORT */
+TX_EVD_PTR->.KEYS.INT_ARR(0):=
+
+NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI;
+/* NSEI TO BE USED FOR TRANSPORT */
+TX_EVD_PTR->.KEYS.INT_ARR(1):=
+
+NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+/* NSVCI TO BE USED FOR TRANSPORT */
+ELSE
+/* USE AFFECTED NSVC AGAIN FOR TRANSPORT */
+TX_EVD_PTR->.KEYS.INT_ARR(0):=
+ NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; /* NSEI TO BE USED FOR
+TRANSPORT */
+TX_EVD_PTR->.KEYS.INT_ARR(1):=
+ NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVCI TO BE USED FOR
+TRANSPORT */
+FI;
+
+
+/* POINTER TO PDU IN POOL-ELEMENT */
+NS_PDU_PTR:= NS_PDU_REF_M (INT(TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT)
+ + G9IBD44_NS_PDU_DATA_OFFSET_C);
+/* OFFSET OF THE PDU IN POOL-ELEMENT */
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= G9IBD44_NS_PDU_DATA_OFFSET_C;
+/* LENGTH OF THE PDU IN POOL-ELEMENT */
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(NS_PDU_PTR->.G9IBDF4_PDU_TYPE) +
+SIZE(NS_PDU_PTR->.D2);
+
+
+/* NOW THE POOL-ELEMENT */
+NS_PDU_PTR->.G9IBDF4_PDU_TYPE:= G9IBDR1_NS_BLOCK_C; /* PDU-TYPE */
+
+NS_PDU_PTR->.D2.CAUSE_TLV.CAUSE_VAL:=
+ G9IBBA2_NS_TRANSIT_NETWORK_FAILURE; /* CAUSE FOR BLOCK */
+NS_PDU_PTR->.D2.NSVCI_TLV.NSVCI_VAL :=
+ NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVC TO BE BLOCKED */
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@TEXT
+GSM 8.16 CHAP. 7.2:
+THE NS-BLOCK-PDU MAY BE SENT IN ANY ALIVE
+(BLOCKED OR UNBLOCKED) NS-VC...
+@K@FREEZE
+938803215
+@K@NAME
+M_DE_SBVCN
+@K@INSCRIPT
+G9IBME1_
+DEACT_
+SIGN_BVC_C
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB512_GET_MSG_LESS_EV_DESCR_P
+(
+SID_GBNSVC,
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+TX_EVD_PTR->.EVENT_CMD:= G9IBME1_DEACT_SIGN_BVC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= GBBVC_HANDLE;
+TX_EVD_PTR->.KEYS.INT_ARR(0):= EVD_PTR->.KEYS.INT_ARR(0);
+TX_EVD_PTR->.KEYS.INT_ARR(1):= SIGN_BVCI;
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+938788201
+@K@NAME
+M_OAME401M
+@K@INSCRIPT
+ERROR_MESSAGE:
+ERRONOUS_PDU
+RESET_PDU
+
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSE */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSE;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSE_ID:= EVD_PTR->.KEYS.INT_ARR(0); /*
+USED NSEI (FROM ECI) */
+
+/* ERROR-CAUSE = ERRONEOUS_PDU */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU;
+/* ADDITIONAL_PDU_INFO */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:=
+ G9OC124_RESET_PDU;
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:=
+ EVD_PTR->.ADD_DATA(0); /* AFFECTED NSEI (FROM PDU) */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:=
+ EVD_PTR->.ADD_DATA(1); /* AFFECTED NSVCI (FROM PDU) */
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+935766108
+@K@NAME
+M_OAME402M
+@K@INSCRIPT
+ERROR_MESSAGE:
+ERRONOUS_PDU
+RESET_PDU
+
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= EVD_PTR->.KEYS.INT_ARR(1); /*
+USED NSVCI (FROM ECI) */
+
+/* ERROR-CAUSE = ERRONEOUS_PDU */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU;
+/* ADDITIONAL_PDU_INFO */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:=
+ G9OC124_RESET_PDU;
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:=
+ EVD_PTR->.ADD_DATA(0); /* NSEI FROM PDU */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:=
+ EVD_PTR->.ADD_DATA(1); /* NSVCI FROM PDU */
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+935766407
+@K@NAME
+M_OAME411M
+@K@INSCRIPT
+ERROR_MESSAGE:
+ERRONOUS_PDU
+RESET_ACK_PDU
+
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSE */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSE;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSE_ID:= EVD_PTR->.KEYS.INT_ARR(0); /*
+USED NSEI (FROM ECI) */
+
+/* ERROR-CAUSE = ERRONEOUS_PDU */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU;
+/* ADDITIONAL_PDU_INFO */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:=
+ G9OC124_RESET_ACK_PDU;
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:=
+ EVD_PTR->.ADD_DATA(0); /* NSEI FROM PDU */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:=
+ EVD_PTR->.ADD_DATA(1); /* NSVCI FROM PDU */
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+935767332
+@K@NAME
+M_OAME412M
+@K@INSCRIPT
+ERROR_MESSAGE:
+ERRONOUS_PDU
+RESET_ACK_PDU
+
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= EVD_PTR->.KEYS.INT_ARR(1); /*
+USED NSVCI (FROM ECI) */
+
+/* ERROR-CAUSE = ERRONEOUS_PDU */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU;
+/* ADDITIONAL_PDU_INFO */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:=
+ G9OC124_RESET_ACK_PDU;
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:=
+ EVD_PTR->.ADD_DATA(0); /* NSEI FROM PDU */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:=
+ EVD_PTR->.ADD_DATA(1); /* NSVCI FROM PDU */
+
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+935767189
+@K@NAME
+C_CON
+@K@INSCRIPT
+RC_DB
+@K@CODE
+RC_DB
+
+@K@FREEZE
+922176673
+@K@NAME
+M_BLK____M
+@K@INSCRIPT
+NS_
+BLOCK
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9IBDF4_NS_LM_M) + G9IBD44_NS_PDU_DATA_OFFSET_C),
+TX_EVD_PTR
+);
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9IBD40_NS_LM_PDU_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= GBDL_HANDLE;
+TX_EVD_PTR->.KEYS.INT_ARR(0):=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; /* NSEI TO BE USED FOR
+TRANSPORT */
+TX_EVD_PTR->.KEYS.INT_ARR(1):=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVCI TO BE USED FOR
+TRANSPORT */
+/* POINTER TO PDU IN POOL-ELEMENT */
+NS_PDU_PTR:= NS_PDU_REF_M (INT(TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT)
+ + G9IBD44_NS_PDU_DATA_OFFSET_C);
+/* OFFSET OF THE PDU IN POOL-ELEMENT */
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= G9IBD44_NS_PDU_DATA_OFFSET_C;
+/* LENGTH OF THE PDU IN POOL-ELEMENT */
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(NS_PDU_PTR->.G9IBDF4_PDU_TYPE) +
+SIZE(NS_PDU_PTR->.D2);
+
+
+/* NOW THE POOL-ELEMENT */
+NS_PDU_PTR->.G9IBDF4_PDU_TYPE:= G9IBDR1_NS_BLOCK_C; /* PDU-TYPE */
+
+NS_PDU_PTR->.D2.CAUSE_TLV.CAUSE_VAL:=
+ G9IBBA2_NS_OAM_INTERVENTION; /* CAUSE FOR BLOCK */
+NS_PDU_PTR->.D2.NSVCI_TLV.NSVCI_VAL :=
+ NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVC TO BE BLOCKED */
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@TEXT
+GSM 8.16 CHAP. 7.2:
+THE NS-BLOCK-PDU MAY BE SENT IN ANY ALIVE
+(BLOCKED OR UNBLOCKED) NS-VC...
+@K@FREEZE
+926348613
+@K@NAME
+S_BLOCKED
+@K@INSCRIPT
+G9IBSM0_
+BLOCKED
+@K@CODE
+
+
+@K@FREEZE
+922176496
+@K@NAME
+D_CON
+@K@INSCRIPT
+CONTEXT
+GOT
+@K@CODE
+RC_DB = G9IBSR0_RC_OK
+
+@K@FREEZE
+921772339
+@K@NAME
+M_OAME901M
+@K@INSCRIPT
+ERROR_MESSAGE:
+OPERATIONAL_STATE_CHANGE
+UBL->BLK
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = OPERATIONAL_STATE_CHANGE */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_OPERATIONAL_STATE_CHANGE;
+/* ADDITIONAL_OPERATIONAL_STATE_INFO */
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_OLD:=
+ G9OC101_UNBLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_NEW:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_OLD:=
+ G9OC102_ENABLED;
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_NEW:=
+ G9OC102_ENABLED;
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+925970975
+@K@NAME
+M_OAME902M
+@K@INSCRIPT
+ERROR_MESSAGE:
+OPERATIONAL_STATE_CHANGE
+UBL->BLK
+
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = OPERATIONAL_STATE_CHANGE */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_OPERATIONAL_STATE_CHANGE;
+/* ADDITIONAL_OPERATIONAL_STATE_INFO */
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_OLD:=
+ G9OC101_UNBLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_NEW:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_OLD:=
+ G9OC102_ENABLED;
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_NEW:=
+ G9OC102_DISABLED;
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+925970987
+@K@NAME
+M_OAME10SM
+@K@INSCRIPT
+ERROR_MESSAGE:
+ALARM_BEGIN_NS_ALIVE_TEST
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = ALARM_BEGIN_NS_ALIVE_TEST*/
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_BEGIN_NS_ALIVE_TEST;
+/* ADDITIONAL_ALARM_INFO */
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:=
+ TRUE;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:=
+ G9OC103_DEAD;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:=
+ G9OC103_DEAD;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:=
+ TRUE;
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@NAME
+M_OAME911M
+@K@INSCRIPT
+ERROR_MESSAGE:
+OPERATIONAL_STATE_CHANGE
+BLK->UBL
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = OPERATIONAL_STATE_CHANGE */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_OPERATIONAL_STATE_CHANGE;
+/* ADDITIONAL_OPERATIONAL_STATE_INFO */
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_OLD:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_NEW:=
+ G9OC101_UNBLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_OLD:=
+ G9OC102_ENABLED;
+OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_NEW:=
+ G9OC102_ENABLED;
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+925970996
+@K@NAME
+M_OAME20SM
+@K@INSCRIPT
+ERROR_MESSAGE:
+ALARM_END_NS_ALIVE_TEST
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = ALARM_END_NS_ALIVE_TEST */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_END_NS_ALIVE_TEST;
+/* ADDITIONAL_ALARM_INFO */
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:=
+ TRUE;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:=
+ G9OC103_DEAD;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:=
+ G9OC103_DEAD;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:=
+ TRUE;
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@NAME
+M_OAME10_M
+@K@INSCRIPT
+ERROR_MESSAGE:
+ALARM_BEGIN_NS_ALIVE_TEST
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = ALARM_BEGIN_NS_ALIVE_TEST*/
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_BEGIN_NS_ALIVE_TEST;
+/* ADDITIONAL_ALARM_INFO */
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:=
+ TRUE;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:=
+ G9OC103_DEAD;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:=
+ G9OC103_DEAD;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:=
+ TRUE;
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+922443813
+@K@NAME
+D_SEM
+@K@INSCRIPT
+CALL_SEM
+=
+TRUE
+@K@CODE
+CALL_SEM = TRUE
+
+@K@FREEZE
+922176624
+@K@NAME
+D_N_0
+@K@INSCRIPT
+N = 0
+
+@K@CODE
+NSVCI_CON_PTR->.N = 0
+
+@K@FREEZE
+921511000
+@K@NAME
+M_OAME12_M
+@K@INSCRIPT
+ERROR_MESSAGE:
+ALARM_BEGIN_NS_ALIVE_TEST
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = ALARM_BEGIN_NS_ALIVE_TEST*/
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_BEGIN_NS_ALIVE_TEST;
+/* ADDITIONAL_ALARM_INFO */
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:=
+ FALSE;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:=
+ G9OC103_ALIVE;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:=
+ G9OC103_DEAD;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:=
+ TRUE;
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+922443829
+@K@NAME
+M_OAME21_M
+@K@INSCRIPT
+ERROR_MESSAGE:
+ALARM_END_NS_ALIVE_TEST
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = ALARM_END_NS_ALIVE_TEST */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_END_NS_ALIVE_TEST;
+/* ADDITIONAL_ALARM_INFO */
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:=
+ TRUE;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:=
+ G9OC103_DEAD;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:=
+ G9OC103_DEAD;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:=
+ FALSE;
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+922443856
+@K@NAME
+M_OAME13_M
+@K@INSCRIPT
+ERROR_MESSAGE:
+ALARM_BEGIN_NS_ALIVE_TEST
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = ALARM_BEGIN_NS_ALIVE_TEST*/
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_BEGIN_NS_ALIVE_TEST;
+/* ADDITIONAL_ALARM_INFO */
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:=
+ FALSE;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:=
+ G9OC101_UNBLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:=
+ G9OC103_ALIVE;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:=
+ G9OC103_DEAD;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:=
+ TRUE;
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+922443838
+@K@NAME
+M_OAME22_M
+@K@INSCRIPT
+ERROR_MESSAGE:
+ALARM_END_NS_ALIVE_TEST
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = ALARM_END_NS_ALIVE_TEST */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_END_NS_ALIVE_TEST;
+/* ADDITIONAL_ALARM_INFO */
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:=
+ FALSE;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:=
+ G9OC101_BLOCKED;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:=
+ G9OC103_DEAD;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:=
+ G9OC103_ALIVE;
+OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:=
+ TRUE;
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+922443864
+@K@NAME
+M_OAME30_M
+@K@INSCRIPT
+ERROR_MESSAGE:
+NO_ANSWER_FORM_BSS
+RESET_PROCEDURE
+
+
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = NO_ANSWER_FROM_BSS */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_NO_ANSWER_FROM_BSS;
+/* INITIATED_PROCEDURE */
+OAM_MSG_PTR->.INITIATED_PROCEDURE:=
+ G9OC123_RESET_PROCEDURE;
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+922175973
+@K@NAME
+M_OAME31_M
+@K@INSCRIPT
+ERROR_MESSAGE:
+NO_ANSWER_FROM_BSS
+BLOCK_PROCEDURE
+
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = NO_ANSWER_FROM_BSS */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_NO_ANSWER_FROM_BSS;
+/* INITIATED_PROCEDURE */
+OAM_MSG_PTR->.INITIATED_PROCEDURE:=
+ G9OC123_BLOCK_PROCEDURE;
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+922175976
+@K@NAME
+M_OAME32_M
+@K@INSCRIPT
+ERROR_MESSAGE:
+NO_ANSWER_FROM_BSS
+UNBLOCK_PROCEDURE
+
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR_CAUSE = NO_ANSWER_FROM_BSS */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_NO_ANSWER_FROM_BSS;
+/* INITIATED_PROCEDURE */
+OAM_MSG_PTR->.INITIATED_PROCEDURE:=
+ G9OC123_UNBLOCK_PROCEDURE;
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+922175980
+@K@NAME
+M_OAME42_M
+@K@INSCRIPT
+ERROR_MESSAGE:
+ERRONOUS_PDU
+BLOCK_PDU
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= EVD_PTR->.ADD_DATA(1); /*
+USED NSVCI (FROM ECI) */
+
+/* ERROR-CAUSE = ERRONEOUS_PDU */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU;
+/* ADDITIONAL_PDU_INFO */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:=
+ G9OC124_BLOCK_PDU;
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:=
+ EVD_PTR->.KEYS.INT_ARR(0); /* AFFECTED NSEI (FROM PDU) */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:=
+ EVD_PTR->.KEYS.INT_ARR(1); /* AFFECTED NSVCI (FROM PDU) */
+
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+934296141
+@K@NAME
+M_OAME50_M
+@K@INSCRIPT
+ERROR_MESSAGE:
+STATUS_PDU_CONTAINS_ERROR_INFO
+RECEIVED
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:=
+NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI;
+
+/* ERROR-CAUSE = STATUS_PDU_CONTAINS_ERROR_INFO */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_STATUS_PDU_CONTAINS_ERROR_INFO;
+/* ADDITIONAL_STATUS_PDU_INFO */
+INT_CAUSE_PTR.INT_PTR:= ADDR(EVD_PTR->.ADD_DATA(2));
+OAM_MSG_PTR->.ADDITIONAL_STATUS_PDU_INFO:=
+ INT_CAUSE_PTR.CAUSE_PTR->; /* CAUSE */
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@TEXT
+NICHT OK
+
+@K@FREEZE
+934298924
+@K@NAME
+M_OAME43_M
+@K@INSCRIPT
+ERROR_MESSAGE:
+ERRONOUS_PDU
+BLOCK_ACK_PDU
+@K@CODE
+/* GETTING THE EVENT DESCRIPTOR */
+G9PB511_GET_MSG_BOUND_EV_DESCR_P
+(
+SID_GBNSVC,
+(SIZE(G9OC109_REPORTED_EVENT_STR_M)),
+TX_EVD_PTR
+);
+
+
+/* COMPOSING THE EVENT */
+/* FIRST THE DESCRIPTOR */
+TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C;
+TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE;
+TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX;
+TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0;
+TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M);
+
+/* NOW THE POOL-ELEMENT */
+/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */
+OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT);
+
+/* COMPOSING THE MESSAGE */
+/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */
+OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC;
+OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= EVD_PTR->.ADD_DATA(1); /*
+USED NSVCI (FROM ECI) */
+
+/* ERROR-CAUSE = ERRONEOUS_PDU */
+OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU;
+/* ADDITIONAL_PDU_INFO */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:=
+ G9OC124_BLOCK_ACK_PDU;
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:=
+ EVD_PTR->.KEYS.INT_ARR(0); /* AFFECTED NSEI (FROM PDU) */
+OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:=
+ EVD_PTR->.KEYS.INT_ARR(1); /* AFFECTED NSVCI (FROM PDU) */
+
+
+
+/* SENDING */
+G9PX503_POST_EVENT_P(TX_EVD_PTR);
+
+@K@FREEZE
+934297710
diff --git a/contrib/awk/test/getnr2tb.awk b/contrib/awk/test/getnr2tb.awk
new file mode 100644
index 0000000..204acf4
--- /dev/null
+++ b/contrib/awk/test/getnr2tb.awk
@@ -0,0 +1,111 @@
+#From vp@dmat.uevora.pt Thu Jun 18 09:10 EDT 1998
+#Received: from mescaline.gnu.org (we-refuse-to-spy-on-our-users@mescaline.gnu.org [158.121.106.21]) by cssun.mathcs.emory.edu (8.7.5/8.6.9-940818.01cssun) with ESMTP id JAA23649 for <arnold@mathcs.emory.edu>; Thu, 18 Jun 1998 09:10:54 -0400 (EDT)
+#Received: from khromeleque.dmat.uevora.pt by mescaline.gnu.org (8.8.5/8.6.12GNU) with ESMTP id JAA21732 for <arnold@gnu.ai.mit.edu>; Thu, 18 Jun 1998 09:11:19 -0400
+#Received: from khromeleque.dmat.uevora.pt (vp@localhost [127.0.0.1])
+# by khromeleque.dmat.uevora.pt (8.8.8/8.8.8/Debian/GNU) with ESMTP id OAA11817
+# for <arnold@gnu.ai.mit.edu>; Thu, 18 Jun 1998 14:13:57 +0100
+#Message-Id: <199806181313.OAA11817@khromeleque.dmat.uevora.pt>
+#To: arnold@gnu.org
+#Subject: concatenation bug in gawk 3.0.3
+#Date: Thu, 18 Jun 1998 14:13:57 +0200
+#From: Vasco Pedro <vp@dmat.uevora.pt>
+#Content-Type: text
+#Content-Length: 2285
+#Status: RO
+#
+#Hi,
+#
+#The gawk program '{print NR " " 10/NR}' will print:
+#
+#1 10
+#5 5
+#3 3.33333
+#2 2.5
+#2 2
+#1 1.66667
+#
+#instead of the correct:
+#
+#1 10
+#2 5
+#3 3.33333
+#4 2.5
+#5 2
+#6 1.66667
+#
+#You'll notice, on the incorrect output, that the first column is
+#the first digit of the second.
+#
+#I think the problem comes from the way builtin variables are handled.
+#Since the items to be concatenated are processed in reverse order and
+#the return value of tree_eval(``NR'') is a pointer to the value part
+#of `NR_node', the `unref()' of `NR_node' due to its second occurrence
+#will leave a dangling pointer in `strlist'. The reason that it doesn't
+#reuse the freed space with objects of the same type. (Using Electric
+#Fence with EF_PROTECT_FREE set confirms that freed space is being
+#accessed.)
+#
+#The enclosed patch (hack would be a better word to describe it) is
+#all I could come up with. With it installed, things seem to work ok,
+#but I doubt this is the correct way to do it. (If I treated the
+#case for `Node_field_spec' as the I did others, `make check' would
+#fail in several places.)
+#
+#Regards,
+#vasco
+#
+#*** eval.c~ Tue May 6 21:39:55 1997
+#--- eval.c Thu Jun 18 13:39:25 1998
+#***************
+#*** 685,697 ****
+# return func_call(tree->rnode, tree->lnode);
+#
+# /* unary operations */
+# case Node_NR:
+# case Node_FNR:
+# case Node_NF:
+# case Node_FIELDWIDTHS:
+# case Node_FS:
+# case Node_RS:
+#- case Node_field_spec:
+# case Node_subscript:
+# case Node_IGNORECASE:
+# case Node_OFS:
+#--- 685,700 ----
+# return func_call(tree->rnode, tree->lnode);
+#
+# /* unary operations */
+#+ case Node_field_spec:
+#+ lhs = get_lhs(tree, (Func_ptr *) NULL);
+#+ return *lhs;
+#+
+# case Node_NR:
+# case Node_FNR:
+# case Node_NF:
+# case Node_FIELDWIDTHS:
+# case Node_FS:
+# case Node_RS:
+# case Node_subscript:
+# case Node_IGNORECASE:
+# case Node_OFS:
+#***************
+#*** 699,705 ****
+# case Node_OFMT:
+# case Node_CONVFMT:
+# lhs = get_lhs(tree, (Func_ptr *) NULL);
+#! return *lhs;
+#
+# case Node_var_array:
+# fatal("attempt to use array `%s' in a scalar context",
+#--- 702,710 ----
+# case Node_OFMT:
+# case Node_CONVFMT:
+# lhs = get_lhs(tree, (Func_ptr *) NULL);
+#! r = dupnode(*lhs);
+#! r->flags |= TEMP;
+#! return r;
+#
+# case Node_var_array:
+# fatal("attempt to use array `%s' in a scalar context",
+#
+{ print NR " " 10/NR }
diff --git a/contrib/awk/test/getnr2tb.in b/contrib/awk/test/getnr2tb.in
new file mode 100644
index 0000000..f985857
--- /dev/null
+++ b/contrib/awk/test/getnr2tb.in
@@ -0,0 +1,6 @@
+line 1
+line 2
+line 3
+line 4
+line 5
+line 6
diff --git a/contrib/awk/test/getnr2tb.ok b/contrib/awk/test/getnr2tb.ok
new file mode 100644
index 0000000..7b40e8d
--- /dev/null
+++ b/contrib/awk/test/getnr2tb.ok
@@ -0,0 +1,6 @@
+1 10
+2 5
+3 3.33333
+4 2.5
+5 2
+6 1.66667
diff --git a/contrib/awk/test/getnr2tm.awk b/contrib/awk/test/getnr2tm.awk
new file mode 100644
index 0000000..dfe377a
--- /dev/null
+++ b/contrib/awk/test/getnr2tm.awk
@@ -0,0 +1,75 @@
+#From dhw@gamgee.acad.emich.edu Sat Oct 31 22:54:07 1998
+#Return-Path: <dhw@gamgee.acad.emich.edu>
+#Received: from cssun.mathcs.emory.edu (cssun.mathcs.emory.edu [170.140.150.1])
+# by amx.netvision.net.il (8.9.0.Beta5/8.8.6) with ESMTP id HAA08891
+# for <arobbins@netvision.net.il>; Sat, 31 Oct 1998 07:14:07 +0200 (IST)
+#Received: from mescaline.gnu.org (we-refuse-to-spy-on-our-users@mescaline.gnu.org [158.121.106.21]) by cssun.mathcs.emory.edu (8.7.5/8.6.9-940818.01cssun) with ESMTP id AAA14947 for <arnold@mathcs.emory.edu>; Sat, 31 Oct 1998 00:14:32 -0500 (EST)
+#Received: from gamgee.acad.emich.edu (gamgee.acad.emich.edu [164.76.102.76])
+# by mescaline.gnu.org (8.9.1a/8.9.1) with SMTP id AAA20645
+# for <arnold@gnu.ai.mit.edu>; Sat, 31 Oct 1998 00:17:54 -0500
+#Received: by gamgee.acad.emich.edu (Smail3.1.29.1 #57)
+# id m0zZUKY-000IDSC; Sat, 31 Oct 98 00:16 CST
+#Message-Id: <m0zZUKY-000IDSC@gamgee.acad.emich.edu>
+#Date: Sat, 31 Oct 98 00:16 CST
+#From: dhw@gamgee.acad.emich.edu (David H. West)
+#To: bug-gnu-utils@gnu.org
+#Subject: gawk 3.0.3 bug report
+#Cc: arnold@gnu.org
+#X-UIDL: 7474b825cff989adf38f13883d84fdd7
+#Status: RO
+#
+#gawk version: 3.03
+#System used: Linux, kernel 2.0.28, libc 5.4.33, AMD K5PR133 (i586 clone)
+#Remark: There seems to be at least one bug shown by the demo below.
+# There may also be a Dark Corner involving the value of NR in an
+# END block, a topic on which the info file is silent. In gawk
+# 3.0.3, NR often seems to have the least-surprise value in an
+# END block, but sometimes it doesn't - see example below.
+#Problem descr: the log below shows a case where:
+# a) (this may be a red herring) the output of the gawk script
+# is different depending on whether its input file is named on
+# the command line or catted to stdin, without any use of the
+# legitimate means which could produce this effect.
+# b) NR is clearly getting clobbered; I have tried to simplify
+# the 19-line script "awkerr1" below, but seemingly unrelated
+# changes, like shortening constant strings which appear only in
+# print statements, or removing unexecuted or irrelevant code,
+# cause the clobbering to go away. Some previous (larger)
+# versions of this code would clobber NR also when reading from
+# stdin, but I thought you'd prefer a shorter example :-).
+#Reproduce-By: using the gawk script "awkerr1", the contents of
+# which appear in the transcript below as the output of the
+# command "cat awkerr1". Comments following # were added
+# to the transcript later as explanation.
+#---------------------------------------------- Script started on Fri
+#Oct 30 20:04:16 1998 chipmunk:/ram0# ls -l a1 awkerr1 -rw-r--r-- 1
+#root root 2 Oct 30 18:42 a1 -rwxr-xr-x 1 root root
+#389 Oct 30 19:54 awkerr1 chipmunk:/ram0# cat a1 #a1 contains
+#one printable char and a newline a chipmunk:/ram0# od -c xc a1
+#0000000 0a61
+# a \n
+#0000002 chipmunk:/ram0# cat a1 | awkerr1 #no surprises here
+#1 lines in 1 sec: 1 lines/sec; nlines=1 chipmunk:/ram0# awkerr1 a1 Č
+#lines in 1 sec: 1 lines/sec; nlines=1 #?! first char is an uppercase
+#E-grave chipmunk:/ram0# awkerr1 a1 | od -N1 -xc 0000000 00c8
+# 310 \0
+#0000001 chipmunk:/ram0# cat awkerr1 #the apparent ^M's are not
+#actually in the file
+#!/usr/bin/awk -f
+function process(w) {
+ if(w in ws) {
+ printf " : found\n"; lc[p " " w]++; rc[w " " n]++; }
+ }
+BEGIN {IGNORECASE=1;
+ }
+/^/ {if(NR % 10 ==0)print "processing line " NR;
+ process($1); nlines++;
+ }
+END {p=w; w=n; n="";
+ if(w)process(w); t=1; print NR " lines in " t " sec: " NR+0 " lines/sec; nlines=" nlines;
+ }
+#chipmunk:/ram0# exit Script done on Fri Oct 30 20:07:31 1998
+#---------------------------------------------
+#
+#-David West dhw@gamgee.acad.emich.edu
+#
diff --git a/contrib/awk/test/getnr2tm.in b/contrib/awk/test/getnr2tm.in
new file mode 100644
index 0000000..7898192
--- /dev/null
+++ b/contrib/awk/test/getnr2tm.in
@@ -0,0 +1 @@
+a
diff --git a/contrib/awk/test/getnr2tm.ok b/contrib/awk/test/getnr2tm.ok
new file mode 100644
index 0000000..d63fca0
--- /dev/null
+++ b/contrib/awk/test/getnr2tm.ok
@@ -0,0 +1 @@
+1 lines in 1 sec: 1 lines/sec; nlines=1
diff --git a/contrib/awk/test/gtlnbufv.awk b/contrib/awk/test/gtlnbufv.awk
new file mode 100644
index 0000000..ce7d243
--- /dev/null
+++ b/contrib/awk/test/gtlnbufv.awk
@@ -0,0 +1,2 @@
+/@K@CODE/ { print ; getline temp ; print temp ;next }
+{print}
diff --git a/contrib/awk/test/igncdym.awk b/contrib/awk/test/igncdym.awk
new file mode 100644
index 0000000..3119c3e
--- /dev/null
+++ b/contrib/awk/test/igncdym.awk
@@ -0,0 +1,56 @@
+#From Jeffrey.B.Woodward@Hitchcock.ORG Mon Feb 21 09:33:32 2000
+#Message-id: <12901034@mailbox2.Hitchcock.ORG>
+#Date: 20 Feb 2000 18:14:11 EST
+#From: Jeffrey.B.Woodward@Hitchcock.ORG (Jeffrey B. Woodward)
+#Subject: gawk 3.0.4 bug
+#To: bug-gnu-utils@gnu.org
+#Cc: arnold@gnu.org
+#
+#O/S: Digital UNIX 4.0D
+#
+#C Compiler: DEC C
+#
+#gawk version: 3.0.4
+#
+#Sample Program:
+#gawk '
+ BEGIN {
+ pattern[1] = "bar" ; ignore[1] = 1
+ pattern[2] = "foo" ; ignore[2] = 0
+ }
+
+ {
+ for (i = 1 ; i <= 2 ; i++) {
+ IGNORECASE = ignore[i]
+ print match($0, pattern[i]) " " pattern[i] ":" $0
+ }
+ }
+#' << -EOF-
+#This is foo
+#This is bar
+#-EOF-
+#
+#Program Output:
+#0 bar:This is foo
+#0 foo:This is foo
+#9 bar:This is bar
+#9 foo:This is bar
+#
+#
+#**Expected** Output:
+#0 bar:This is foo
+#9 foo:This is foo
+#9 bar:This is bar
+#0 foo:This is bar
+#
+#
+#This problem appears to be directly related to IGNORECASE. If
+#IGNORECASE remains constant, the program behaves as expected;
+#however, switching IGNORECASE seems to causes problems - it is
+#almost as though the pattern stored in the variable is treated
+#as a constant and the regexp() is not recompiled(?) - just a
+#guess...
+#
+#
+#Thanks,
+#-Jeff Woodward
diff --git a/contrib/awk/test/igncdym.in b/contrib/awk/test/igncdym.in
new file mode 100644
index 0000000..43e361a
--- /dev/null
+++ b/contrib/awk/test/igncdym.in
@@ -0,0 +1,2 @@
+This is foo
+This is bar
diff --git a/contrib/awk/test/igncdym.ok b/contrib/awk/test/igncdym.ok
new file mode 100644
index 0000000..e715a6d
--- /dev/null
+++ b/contrib/awk/test/igncdym.ok
@@ -0,0 +1,4 @@
+0 bar:This is foo
+9 foo:This is foo
+9 bar:This is bar
+0 foo:This is bar
diff --git a/contrib/awk/test/nasty.awk b/contrib/awk/test/nasty.awk
new file mode 100644
index 0000000..b9c20c8
--- /dev/null
+++ b/contrib/awk/test/nasty.awk
@@ -0,0 +1,92 @@
+#From hankedr@manatee.dms.auburn.edu Tue Oct 13 22:15:59 1998
+#Return-Path: <hankedr@manatee.dms.auburn.edu>
+#Received: from cssun.mathcs.emory.edu (cssun.mathcs.emory.edu [170.140.150.1])
+# by dmx.netvision.net.il (8.9.0.Beta5/8.8.6) with ESMTP id PAA03924
+# for <arobbins@netvision.net.il>; Tue, 13 Oct 1998 15:32:13 +0200 (IST)
+#Received: from mescaline.gnu.org (we-refuse-to-spy-on-our-users@mescaline.gnu.org [158.121.106.21]) by cssun.mathcs.emory.edu (8.7.5/8.6.9-940818.01cssun) with ESMTP id KAA11644 for <arnold@mathcs.emory.edu>; Tue, 13 Oct 1998 10:22:32 -0400 (EDT)
+#Received: from manatee.dms.auburn.edu (manatee.dms.auburn.edu [131.204.53.104])
+# by mescaline.gnu.org (8.9.1a/8.9.1) with ESMTP id KAA03250
+# for <arnold@gnu.org>; Tue, 13 Oct 1998 10:25:32 -0400
+#Received: (from hankedr@localhost)
+# by manatee.dms.auburn.edu (8.9.1a/8.9.1) id JAA13348;
+# Tue, 13 Oct 1998 09:22:29 -0500 (CDT)
+#Date: Tue, 13 Oct 1998 09:22:29 -0500 (CDT)
+#Message-Id: <199810131422.JAA13348@manatee.dms.auburn.edu>
+#From: Darrel Hankerson <hankedr@dms.auburn.edu>
+#To: arnold@gnu.org
+#In-reply-to: <199810131313.QAA31784@alpha.netvision.net.il> (message from
+# Aharon Robbins on Tue, 13 Oct 1998 16:10:36 +0200)
+#Subject: Re: full text of bug report?
+#Mime-Version: 1.0
+#Content-Type: text/plain; charset=US-ASCII
+#X-UIDL: bf3fce492dad4ab030c561e7b2f27d0a
+#Status: RO
+#
+# Do you have the full text of the a = a "\n" f() bug report?
+# I can't find it.... I'm not sure there really is a bug.
+#
+#Yes, see below.
+#
+#His example has unnecessary fragments (in particular, the use of
+#gensub is irrelevant). As I wrote to you earlier, the interesting
+#question for me is:
+#
+# Is the concatenation result undefined? If the result is defined or
+# implementation-dependent, then gawk has a bug.
+#
+#
+#=== Original report =====================================================
+#From: Attila Torcsvari <arcdev@mail.matav.hu>
+#To: "'bug-gnu-utils@prep.ai.mit.edu'" <bug-gnu-utils@gnu.org>
+#Subject: gawk 3.0.3 bug
+#Date: Thu, 17 Sep 1998 18:12:13 +0200
+#MIME-Version: 1.0
+#Content-Transfer-Encoding: 7bit
+#Resent-From: bug-gnu-utils@gnu.org
+#X-Mailing-List: <bug-gnu-utils@gnu.org> archive/latest/3396
+#X-Loop: bug-gnu-utils@gnu.org
+#Precedence: list
+#Resent-Sender: bug-gnu-utils-request@gnu.org
+#Content-Transfer-Encoding: 7bit
+#Content-Type: text/plain; charset="us-ascii"
+#Content-Length: 618
+#
+#Bug-gnuers,
+#please pass it to the responsible.
+#
+#The following generates something interesting:
+#
+BEGIN{
+a="aaaaa"
+a=a a #10
+a=a a #20
+a=a a #40
+a=a a #80
+a=a a #160
+a=a a # i.e. a is long enough
+
+a=a"\n"f() # this causes the trouble
+print a # guess the result
+}
+
+function f()
+{
+#print "a before: ", a
+#a=gensub("a","123,","g",a) # 'a' will be just a bit longer (4 times, but still should fit: 4*160=640)
+gsub(/a/, "123", a)
+#print "a after: ", a
+return "X"
+}
+#
+#Possible reason:
+#during f the a is modified,
+#it can be even freed, because gensub modifies its size
+#the printout contains trash.
+#
+#Used version: VC compiled WinNT 32 bit Intel.
+#
+#Regards,
+#
+#Attila Torcsvari
+#Arcanum Development
+#
diff --git a/contrib/awk/test/nasty.ok b/contrib/awk/test/nasty.ok
new file mode 100644
index 0000000..5189cf8
--- /dev/null
+++ b/contrib/awk/test/nasty.ok
@@ -0,0 +1,2 @@
+123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123
+X
diff --git a/contrib/awk/test/nlstrina.awk b/contrib/awk/test/nlstrina.awk
new file mode 100644
index 0000000..41dbd5f
--- /dev/null
+++ b/contrib/awk/test/nlstrina.awk
@@ -0,0 +1,77 @@
+# From E.Ab@chem.rug.nl Wed Aug 2 13:16:53 2000
+# Received: from mail.actcom.co.il
+# by localhost with POP3 (fetchmail-5.1.2)
+# for arnold@localhost (single-drop); Wed, 02 Aug 2000 13:16:53 -0400 (EDT)
+# Received: from lmail.actcom.co.il by actcom.co.il with ESMTP
+# (8.9.1a/actcom-0.2) id MAA21699 for <arobbins@actcom.co.il>;
+# Wed, 2 Aug 2000 12:20:38 +0300 (EET DST)
+# (rfc931-sender: lmail.actcom.co.il [192.114.47.13])
+# Received: from freefriends.org (freefriends.org [63.85.55.109])
+# by lmail.actcom.co.il (8.9.3/8.9.1) with ESMTP id LAA22723
+# for <arobbins@actcom.co.il>; Wed, 2 Aug 2000 11:23:22 +0300
+# Received: from mescaline.gnu.org (mescaline.gnu.org [158.121.106.21])
+# by freefriends.org (8.9.3/8.9.3) with ESMTP id FAA23582
+# for <arnold@skeeve.com>; Wed, 2 Aug 2000 05:18:59 -0400
+# Received: from dep.chem.rug.nl (dep.chem.rug.nl [129.125.7.81])
+# by mescaline.gnu.org (8.9.1a/8.9.1) with ESMTP id FAA30670;
+# Wed, 2 Aug 2000 05:20:24 -0400
+# Received: from rugmd34.chem.rug.nl (rugmd34.chem.rug.nl [129.125.42.34])
+# by dep.chem.rug.nl (8.9.3/8.9.3/Debian 8.9.3-21) with ESMTP id LAA17089;
+# Wed, 2 Aug 2000 11:20:23 +0200
+# Received: from chem.rug.nl (localhost [127.0.0.1]) by rugmd34.chem.rug.nl (980427.SGI.8.8.8/980728.SGI.AUTOCF) via ESMTP id LAA25392; Wed, 2 Aug 2000 11:20:22 +0200 (MDT)
+# Sender: E.Ab@chem.rug.nl
+# Message-ID: <3987E7D5.2BDC5FD3@chem.rug.nl>
+# Date: Wed, 02 Aug 2000 11:20:21 +0200
+# From: Eiso AB <E.Ab@chem.rug.nl>
+# X-Mailer: Mozilla 4.72C-SGI [en] (X11; I; IRIX 6.5 IP32)
+# X-Accept-Language: en
+# MIME-Version: 1.0
+# To: bug-gnu-utils@gnu.org, arnold@gnu.org
+# Subject: bug? [GNU Awk 3.0.5]
+#
+# Content-Type: text/plain; charset=us-ascii
+# Content-Transfer-Encoding: 7bit
+# X-UIDL: \f8"!(8G!!ZL$#!h>X!!
+# Status: R
+#
+# hi Arnold,
+#
+#
+# Please try the script beneath...
+# I'm not sure if this is a bug or not, but I would expect
+# the empty string as an array index just to be treated
+# like any other string
+#
+# so if ("" in ta) would be true, and for ( i in ta ) should loop only once.
+#
+BEGIN {
+ v=""
+ ta[v]++
+ if ( v in ta) print "a",v,++ta[v],ta[v]
+ print "b",v,++ta[v],ta[v]
+ for( i in ta) print "c",++c,i,ta[i]
+}
+#
+# goodluck, Eiso
+#
+# --
+# _________
+# _______________________________/ Eiso AB \_________________________
+#
+# o
+#
+# o Dept. of Biochemistry
+# University of Groningen
+# The Netherlands
+# o
+# . .
+# o ^ mailto:eiso@chem.rug.nl
+# | - _ mailto:eiso@dds.nl
+# \__|__/ http://md.chem.rug.nl/~eiso
+# | tel 4326
+# |
+# / \
+# / \
+# | |
+# ________ ._| |_. ________________________________________________
+#
diff --git a/contrib/awk/test/nlstrina.ok b/contrib/awk/test/nlstrina.ok
new file mode 100644
index 0000000..690f1a2
--- /dev/null
+++ b/contrib/awk/test/nlstrina.ok
@@ -0,0 +1,3 @@
+a 2 2
+b 3 3
+c 1 3
diff --git a/contrib/awk/test/numindex.awk b/contrib/awk/test/numindex.awk
new file mode 100644
index 0000000..1762e45
--- /dev/null
+++ b/contrib/awk/test/numindex.awk
@@ -0,0 +1,55 @@
+#To: bug-gnu-utils@gnu.org
+#cc: arnold@gnu.org
+#Subject: Possible bug in GNU Awk 3.0.4
+#Date: Wed, 24 Nov 1999 21:47:24 +0000
+#From: Daniel Elphick <de397@ecs.soton.ac.uk>
+#Message-Id: <E11qkG4-0000l0-00@cameron>
+#
+#This is a multipart MIME message.
+#
+#--==_Exmh_-11192982200
+#Content-Type: text/plain; charset=us-ascii
+#
+#
+#When I use the attached awk script unique on the attached data file, it
+#reports that all 4 lines of the data are the same. Using mawk it correctly
+#reports that there are no repeats.
+#
+#I don't know if there are limits on the size of associative array keys for the
+#purposes of reliable indexing but if there is then it is not (obviously)
+#documented.
+#
+#
+#--==_Exmh_-11192982200
+#Content-Type: text/plain ; name="data"; charset=us-ascii
+#Content-Description: data
+#Content-Disposition: attachment; filename="data"
+#
+#322322111111112232231111
+#322322111111112213223111
+#322322111111112211132231
+#322322111111112211113223
+#
+#--==_Exmh_-11192982200
+#Content-Type: text/plain ; name="unique"; charset=us-ascii
+#Content-Description: unique
+#Content-Disposition: attachment; filename="unique"
+#
+{
+ if($0 in a)
+ {
+ printf("line %d has been seen before at line %d\n", NR, a[$0])
+ repeat_count += 1
+ }
+ else
+ {
+ a[$0] = NR
+ }
+ count += 1
+}
+END {
+# printf("%d %f%%\n", repeat_count, (float)repeat_count / count * 100)
+ printf("%d %f%%\n", repeat_count, repeat_count / count * 100)
+}
+#
+#--==_Exmh_-11192982200--
diff --git a/contrib/awk/test/numindex.in b/contrib/awk/test/numindex.in
new file mode 100644
index 0000000..3852058
--- /dev/null
+++ b/contrib/awk/test/numindex.in
@@ -0,0 +1,4 @@
+322322111111112232231111
+322322111111112213223111
+322322111111112211132231
+322322111111112211113223
diff --git a/contrib/awk/test/numindex.ok b/contrib/awk/test/numindex.ok
new file mode 100644
index 0000000..8e086f6
--- /dev/null
+++ b/contrib/awk/test/numindex.ok
@@ -0,0 +1 @@
+0 0.000000%
diff --git a/contrib/awk/test/opasnidx.awk b/contrib/awk/test/opasnidx.awk
new file mode 100644
index 0000000..e398860
--- /dev/null
+++ b/contrib/awk/test/opasnidx.awk
@@ -0,0 +1 @@
+BEGIN { b = 1; a[b] = 2; a[b++] += 1; print b,a[1] }
diff --git a/contrib/awk/test/opasnidx.ok b/contrib/awk/test/opasnidx.ok
new file mode 100644
index 0000000..654d526
--- /dev/null
+++ b/contrib/awk/test/opasnidx.ok
@@ -0,0 +1 @@
+2 3
diff --git a/contrib/awk/test/opasnslf.awk b/contrib/awk/test/opasnslf.awk
new file mode 100644
index 0000000..46cd2b8
--- /dev/null
+++ b/contrib/awk/test/opasnslf.awk
@@ -0,0 +1,6 @@
+BEGIN {
+ print b += b += 1
+ b = 6
+ print b += b++
+ print b
+}
diff --git a/contrib/awk/test/opasnslf.ok b/contrib/awk/test/opasnslf.ok
new file mode 100644
index 0000000..2fa9fd5
--- /dev/null
+++ b/contrib/awk/test/opasnslf.ok
@@ -0,0 +1,3 @@
+2
+13
+13
diff --git a/contrib/awk/test/printf1.awk b/contrib/awk/test/printf1.awk
new file mode 100644
index 0000000..1cd7b99
--- /dev/null
+++ b/contrib/awk/test/printf1.awk
@@ -0,0 +1,19 @@
+# Tue May 25 16:36:16 IDT 1999
+#
+# Test cases based on email from Andreas Schwab, schwab@gnu.org
+
+BEGIN {
+ fmt[1] = "%8.5d"; data[1] = 100
+ fmt[2] = "%#o"; data[2] = 0
+ fmt[3] = "%#.1o"; data[3] = 0
+ fmt[4] = "%#.0o"; data[4] = 0
+ fmt[5] = "%#x"; data[5] = 0
+ fmt[6] = "%.0d"; data[6] = 0
+ fmt[7] = "%5.0d"; data[7] = 0
+
+ for (i = 1; i <= 7; i++) {
+ format = "%s, %d --- |" fmt[i] "|\n"
+ printf(format, fmt[i], data[i], data[i])
+ }
+
+}
diff --git a/contrib/awk/test/printf1.ok b/contrib/awk/test/printf1.ok
new file mode 100644
index 0000000..32b3a7d
--- /dev/null
+++ b/contrib/awk/test/printf1.ok
@@ -0,0 +1,7 @@
+%8.5d, 100 --- | 00100|
+%#o, 0 --- |0|
+%#.1o, 0 --- |0|
+%#.0o, 0 --- |0|
+%#x, 0 --- |0|
+%.0d, 0 --- ||
+%5.0d, 0 --- | |
diff --git a/contrib/awk/test/reg/Obsolete/exp.awk b/contrib/awk/test/reg/Obsolete/exp.awk
new file mode 100644
index 0000000..4e707f8
--- /dev/null
+++ b/contrib/awk/test/reg/Obsolete/exp.awk
@@ -0,0 +1 @@
+BEGIN { print exp(0), exp(1000000), exp(0.5) }
diff --git a/contrib/awk/test/reg/Obsolete/exp.good b/contrib/awk/test/reg/Obsolete/exp.good
new file mode 100644
index 0000000..07b8853
--- /dev/null
+++ b/contrib/awk/test/reg/Obsolete/exp.good
@@ -0,0 +1,2 @@
+1 gawk: reg/exp.awk:1: warning: exp argument 1e+06 is out of range
+Inf 1.64872
diff --git a/contrib/awk/test/reg/Obsolete/exp.in b/contrib/awk/test/reg/Obsolete/exp.in
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/contrib/awk/test/reg/Obsolete/exp.in
diff --git a/contrib/awk/test/reg/Obsolete/log.awk b/contrib/awk/test/reg/Obsolete/log.awk
new file mode 100644
index 0000000..bcae90b
--- /dev/null
+++ b/contrib/awk/test/reg/Obsolete/log.awk
@@ -0,0 +1 @@
+BEGIN { print log(0), log(-1), log(100) }
diff --git a/contrib/awk/test/reg/Obsolete/log.good b/contrib/awk/test/reg/Obsolete/log.good
new file mode 100644
index 0000000..857ab77
--- /dev/null
+++ b/contrib/awk/test/reg/Obsolete/log.good
@@ -0,0 +1,4 @@
+log: SING error
+-Inf gawk: reg/log.awk:1: warning: log called with negative argument -1
+log: DOMAIN error
+NaN 4.60517
diff --git a/contrib/awk/test/reg/Obsolete/log.in b/contrib/awk/test/reg/Obsolete/log.in
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/contrib/awk/test/reg/Obsolete/log.in
diff --git a/contrib/awk/test/strftime.awk b/contrib/awk/test/strftime.awk
new file mode 100644
index 0000000..8c1f401
--- /dev/null
+++ b/contrib/awk/test/strftime.awk
@@ -0,0 +1,15 @@
+# strftime.awk ; test the strftime code
+#
+# input is the output of `date', see Makefile.in
+#
+# The mucking about with $0 and $N is to avoid problems
+# on cygwin, where the timezone field is empty and there
+# are two consecutive blanks.
+
+{
+ $3 = sprintf("%02d", $3 + 0)
+ print > "strftime.ok"
+ $0 = strftime()
+ $NF = $NF
+ print > OUTPUT
+}
diff --git a/contrib/awk/test/subslash.awk b/contrib/awk/test/subslash.awk
new file mode 100644
index 0000000..87ab029
--- /dev/null
+++ b/contrib/awk/test/subslash.awk
@@ -0,0 +1,6 @@
+BEGIN {
+ i = 2
+ a[i] = 5
+ a[i] /= 2
+ printf "a[%s] = %f\n", i, a[i]
+}
diff --git a/contrib/awk/test/subslash.ok b/contrib/awk/test/subslash.ok
new file mode 100644
index 0000000..4f3beff
--- /dev/null
+++ b/contrib/awk/test/subslash.ok
@@ -0,0 +1 @@
+a[2] = 2.500000
diff --git a/contrib/awk/test/zeroflag.awk b/contrib/awk/test/zeroflag.awk
new file mode 100644
index 0000000..526ed0e
--- /dev/null
+++ b/contrib/awk/test/zeroflag.awk
@@ -0,0 +1 @@
+BEGIN { printf("%2.1d---%02.1d\n", 2, 2) }
diff --git a/contrib/awk/test/zeroflag.ok b/contrib/awk/test/zeroflag.ok
new file mode 100644
index 0000000..937c0ed
--- /dev/null
+++ b/contrib/awk/test/zeroflag.ok
@@ -0,0 +1 @@
+ 2--- 2
OpenPOWER on IntegriCloud