From fa740d8aeab28d36c4ca54da59c54f0079df23b4 Mon Sep 17 00:00:00 2001
From: erititan <elemer.lelik@ericsson.com>
Date: Tue, 19 Jun 2018 10:40:24 +0200
Subject: [PATCH] R35B  ->  R36B

---
 TCCUsefulFunctions_CNL113472_Common.tpd       |   2 +-
 TCCUsefulFunctions_CNL113472_IPsec.tpd        |   2 +-
 TCCUsefulFunctions_CNL113472_Interface.tpd    |   2 +-
 TCCUsefulFunctions_CNL113472_Maths.tpd        |   2 +-
 TCCUsefulFunctions_CNL113472_OpenSecurity.tpd |   2 +-
 ...nctions_CNL113472_PermutatedParameters.tpd |   2 +-
 TCCUsefulFunctions_CNL113472_Regexp.tpd       |   2 +-
 TCCUsefulFunctions_CNL113472_TitanSim.tpd     |   2 +-
 TCCUsefulFunctions_CNL113472_XPath.tpd        |   2 +-
 demo/TCCAssertion_Example.ttcn                |   2 +-
 demo/TCCConversion_Example.ttcn               |  61 ++++++++-
 demo/TCCDateTime_Example.ttcn                 |  26 +++-
 demo/TCCEncoding_Example.ttcn                 |   4 +-
 demo/TCCEnv_Example.ttcn                      |   2 +-
 demo/TCCFileIO_Example.ttcn                   |   2 +-
 demo/TCCFileSystem_Example.ttcn               |   2 +-
 demo/TCCIPsec_Example.ttcn                    |   2 +-
 demo/TCCInterface_Example.ttcn                |   2 +-
 demo/TCCMaths_Example.ttcn                    |   2 +-
 demo/TCCMessageHandling_Example.ttcn          |   2 +-
 demo/TCCRegexp_Example.ttcn                   |   2 +-
 demo/TCCTemplate_Example.ttcn                 |   2 +-
 demo/TCCTitanMetadata_Example.ttcn            |   2 +-
 demo/TCCXPathSupport_Example.ttcn             |   2 +-
 doc/TCCUsefulFunctions_CNL113472_1551.doc     | Bin 392704 -> 393728 bytes
 doc/TCCUsefulFunctions_CNL113472_PRI.doc      | Bin 173056 -> 172032 bytes
 src/TCCAssertion.cc                           |   2 +-
 src/TCCAssertion_Functions.ttcn               |   2 +-
 src/TCCConversion.cc                          |   2 +-
 src/TCCConversion_Functions.ttcn              |   4 +-
 src/TCCDateTime.cc                            | 122 +++++++++++++++++-
 src/TCCDateTime_Functions.ttcn                |  53 +++++++-
 src/TCCEncoding.cc                            |   2 +-
 src/TCCEncoding_Functions.ttcn                |   4 +-
 src/TCCEnv.cc                                 |   2 +-
 src/TCCEnv_Functions.ttcn                     |   2 +-
 src/TCCFileIO.cc                              |   2 +-
 src/TCCFileIO_Functions.ttcn                  |   2 +-
 src/TCCFileSystem.cc                          |   2 +-
 src/TCCFileSystem_Functions.ttcn              |   2 +-
 src/TCCIPsec.cc                               |   2 +-
 src/TCCIPsec_Definitions.ttcn                 |   2 +-
 src/TCCIPsec_Functions.ttcn                   |   2 +-
 src/TCCIPsec_XFRM.cc                          |   2 +-
 src/TCCIPsec_XFRM.hh                          |   2 +-
 src/TCCIPsec_XFRM_Definitions.ttcn            |   2 +-
 src/TCCIPsec_XFRM_SA.cc                       |   2 +-
 src/TCCIPsec_XFRM_SP.cc                       |   2 +-
 src/TCCInterface.cc                           |   2 +-
 src/TCCInterface_Functions.ttcn               |   2 +-
 src/TCCInterface_ip.h                         |   2 +-
 src/TCCMaths.cc                               |   2 +-
 src/TCCMaths_Functions.ttcn                   |   2 +-
 src/TCCMaths_GenericTypes.ttcn                |   2 +-
 src/TCCMessageHandling.cc                     |   2 +-
 src/TCCMessageHandling_Functions.ttcn         |   2 +-
 src/TCCOpenSecurity.cc                        |   2 +-
 src/TCCOpenSecurity_Functions.ttcn            |   2 +-
 src/TCCPermutatedParameters_Definitions.ttcn  |   4 +-
 src/TCCPermutatedParameters_Functions.ttcn    |   4 +-
 src/TCCRegexp.cc                              |   2 +-
 src/TCCRegexp_Functions.ttcn                  |   2 +-
 src/TCCSystem.cc                              |   2 +-
 src/TCCSystem_Functions.ttcn                  |   2 +-
 src/TCCTemplate_Functions.ttcn                |   2 +-
 src/TCCTitanMetadata.cc                       |   2 +-
 src/TCCTitanMetadata_Functions.ttcn           |   2 +-
 src/TCCUsefulFunctions_Library.grp            |   2 +-
 ...CCUsefulFunctions_PermutatedParameters.grp |   2 +-
 src/TCCXPathSupport.cc                        |   2 +-
 src/TCCXPathSupport_Functions.ttcn            |   2 +-
 71 files changed, 319 insertions(+), 83 deletions(-)
 mode change 100644 => 100755 demo/TCCXPathSupport_Example.ttcn
 mode change 100644 => 100755 src/TCCXPathSupport.cc
 mode change 100644 => 100755 src/TCCXPathSupport_Functions.ttcn

diff --git a/TCCUsefulFunctions_CNL113472_Common.tpd b/TCCUsefulFunctions_CNL113472_Common.tpd
index 4862ac0..56be283 100644
--- a/TCCUsefulFunctions_CNL113472_Common.tpd
+++ b/TCCUsefulFunctions_CNL113472_Common.tpd
@@ -10,7 +10,7 @@
 
    File:               TCCUsefulFunctions_CNL113472_Common.tpd
    Description:        tpd project file
-   Rev:                R35B
+   Rev:                R36B
    Prodnr:             CNL 113 472
 
  -->
diff --git a/TCCUsefulFunctions_CNL113472_IPsec.tpd b/TCCUsefulFunctions_CNL113472_IPsec.tpd
index 483ad67..30ebe0c 100644
--- a/TCCUsefulFunctions_CNL113472_IPsec.tpd
+++ b/TCCUsefulFunctions_CNL113472_IPsec.tpd
@@ -10,7 +10,7 @@
 
    File:               TCCUsefulFunctions_CNL113472_IPsec.tpd
    Description:        tpd project file
-   Rev:                R35B
+   Rev:                R36B
    Prodnr:             CNL 113 472
 
  -->
diff --git a/TCCUsefulFunctions_CNL113472_Interface.tpd b/TCCUsefulFunctions_CNL113472_Interface.tpd
index 5584d4e..13ace51 100644
--- a/TCCUsefulFunctions_CNL113472_Interface.tpd
+++ b/TCCUsefulFunctions_CNL113472_Interface.tpd
@@ -10,7 +10,7 @@
 
    File:               TCCUsefulFunctions_CNL113472_Interface.tpd
    Description:        tpd project file
-   Rev:                R35B
+   Rev:                R36B
    Prodnr:             CNL 113 472
 
  -->
diff --git a/TCCUsefulFunctions_CNL113472_Maths.tpd b/TCCUsefulFunctions_CNL113472_Maths.tpd
index 2a83bf5..7710172 100644
--- a/TCCUsefulFunctions_CNL113472_Maths.tpd
+++ b/TCCUsefulFunctions_CNL113472_Maths.tpd
@@ -10,7 +10,7 @@
 
    File:               TCCUsefulFunctions_CNL113472_Maths.tpd
    Description:        tpd project file
-   Rev:                R35B
+   Rev:                R36B
    Prodnr:             CNL 113 472
 
  -->
diff --git a/TCCUsefulFunctions_CNL113472_OpenSecurity.tpd b/TCCUsefulFunctions_CNL113472_OpenSecurity.tpd
index 5620ded..831ea5c 100644
--- a/TCCUsefulFunctions_CNL113472_OpenSecurity.tpd
+++ b/TCCUsefulFunctions_CNL113472_OpenSecurity.tpd
@@ -10,7 +10,7 @@
 
    File:               TCCUsefulFunctions_CNL113472_OpenSecurity.tpd
    Description:        tpd project file
-   Rev:                R35B
+   Rev:                R36B
    Prodnr:             CNL 113 472
 
  -->
diff --git a/TCCUsefulFunctions_CNL113472_PermutatedParameters.tpd b/TCCUsefulFunctions_CNL113472_PermutatedParameters.tpd
index 26527f0..ceb6591 100644
--- a/TCCUsefulFunctions_CNL113472_PermutatedParameters.tpd
+++ b/TCCUsefulFunctions_CNL113472_PermutatedParameters.tpd
@@ -10,7 +10,7 @@
 
    File:               TCCUsefulFunctions_CNL113472_PermutatedParameters.tpd
    Description:        tpd project file
-   Rev:                R35B
+   Rev:                R36B
    Prodnr:             CNL 113 472
 
  -->
diff --git a/TCCUsefulFunctions_CNL113472_Regexp.tpd b/TCCUsefulFunctions_CNL113472_Regexp.tpd
index b0538dc..96d5c2f 100644
--- a/TCCUsefulFunctions_CNL113472_Regexp.tpd
+++ b/TCCUsefulFunctions_CNL113472_Regexp.tpd
@@ -10,7 +10,7 @@
 
    File:               TCCUsefulFunctions_CNL113472_Regexp.tpd
    Description:        tpd project file
-   Rev:                R35B
+   Rev:                R36B
    Prodnr:             CNL 113 472
 
  -->
diff --git a/TCCUsefulFunctions_CNL113472_TitanSim.tpd b/TCCUsefulFunctions_CNL113472_TitanSim.tpd
index 3f3f871..2c9fde3 100644
--- a/TCCUsefulFunctions_CNL113472_TitanSim.tpd
+++ b/TCCUsefulFunctions_CNL113472_TitanSim.tpd
@@ -10,7 +10,7 @@
 
    File:               TCCUsefulFunctions_CNL113472_TitanSim.tpd
    Description:        tpd project file
-   Rev:                R35B
+   Rev:                R36B
    Prodnr:             CNL 113 472
 
  -->
diff --git a/TCCUsefulFunctions_CNL113472_XPath.tpd b/TCCUsefulFunctions_CNL113472_XPath.tpd
index 1105eb8..df450bb 100644
--- a/TCCUsefulFunctions_CNL113472_XPath.tpd
+++ b/TCCUsefulFunctions_CNL113472_XPath.tpd
@@ -10,7 +10,7 @@
 
    File:               TCCUsefulFunctions_CNL113472_XPath.tpd
    Description:        tpd project file
-   Rev:                R35B
+   Rev:                R36B
    Prodnr:             CNL 113 472
 
  -->
diff --git a/demo/TCCAssertion_Example.ttcn b/demo/TCCAssertion_Example.ttcn
index ac1c613..675f423 100644
--- a/demo/TCCAssertion_Example.ttcn
+++ b/demo/TCCAssertion_Example.ttcn
@@ -11,7 +11,7 @@
 //
 //  File:               TCCAssertion_Example.ttcn
 //  Description:        TCC Useful Functions: Assertion Functions.
-//  Rev:                R32A
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //  Updated:            2007-11-14
 //  Contact:            http://ttcn.ericsson.se
diff --git a/demo/TCCConversion_Example.ttcn b/demo/TCCConversion_Example.ttcn
index ba5a25d..49cfb85 100644
--- a/demo/TCCConversion_Example.ttcn
+++ b/demo/TCCConversion_Example.ttcn
@@ -1,6 +1,6 @@
 ///////////////////////////////////////////////////////////////////////////////
 //                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2013                           //
+// Copyright Test Competence Center (TCC) ETH 2018                           //
 //                                                                           //
 // The copyright to the computer  program(s) herein  is the property of TCC. //
 // The program(s) may be used and/or copied only with the written permission //
@@ -11,9 +11,8 @@
 //
 //  File:               TCCConversion_Example.ttcn
 //  Description:        TCC Useful Functions: Conversion Functions.
-//  Rev:                R32A
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
-//  Updated:            2013-09-24
 //  Contact:            http://ttcn.ericsson.se
 ///////////////////////////////////////////////
 
@@ -120,7 +119,7 @@ testcase f_test_HM83229() runs on Conversion_CT
   log(" ----------- f_test_HM83229 ----------- ");
   log("Original string: ", ch);
   tmpStr := 
-    f_replaceEveryOccurenceOfSubstring(replacestr, "%2F", "/");
+    f_replaceEveryOccurenceOfSubstring(ch, "%2F", "/");
   log("Replace every occurence of %2F to /: ", tmpStr); 
 
   if (tmpStr == "sip:annc@192.168.73.1:5068;play=http://extMrfc.ericsson.com/play/1")  { setverdict(pass); }
@@ -224,6 +223,56 @@ testcase f_test_isWhitespace() runs on Conversion_CT
   
 }
 
+// test f_substr_token_oct testcase
+testcase f_test_substrTokenOct() runs on Conversion_CT
+{
+  log(" ----------- f_substr_token_oct ----------- ");
+  var octetstring v_octetstr := '000102030405060708090a0b0c0d0e0f'O;
+  var octetstring v_begin := '0102'O;
+  var octetstring v_end := '0b0c'O;
+  var octetstring v_substr := f_substr_token_oct(v_octetstr,v_begin,v_end);
+  if ( v_substr == '0102030405060708090a0b0c'O)  { setverdict(pass); }
+  else { setverdict(fail); }
+  v_begin := ''O;
+  v_substr := f_substr_token_oct(v_octetstr,v_begin,v_end);
+  if ( v_substr == '000102030405060708090a0b0c'O)  { setverdict(pass); }
+  else { setverdict(fail); }
+  v_begin := '0102'O;
+  v_end := ''O;
+  v_substr := f_substr_token_oct(v_octetstr,v_begin,v_end);
+  if ( v_substr == '0102030405060708090a0b0c0d0e0f'O)  { setverdict(pass); }
+  else { setverdict(fail); }
+  v_begin := ''O;
+  v_substr := f_substr_token_oct(v_octetstr,v_begin,v_end);
+  if ( v_substr == '000102030405060708090a0b0c0d0e0f'O)  { setverdict(pass); }
+  else { setverdict(fail); }
+  v_octetstr := ''O;
+  v_substr := f_substr_token_oct(v_octetstr,v_begin,v_end);
+  if ( v_substr == ''O)  { setverdict(pass); }
+  else { setverdict(fail); }
+  
+}
+
+// test f_strstr_oct testcase
+testcase f_test_strstrOct() runs on Conversion_CT
+{
+  log(" ----------- f_substr_token_oct ----------- ");
+  var octetstring v_octetstr := '0001020304050607080903040a0b0c0d0e0f'O;
+  var octetstring v_otc2search := '0304'O;
+  var integer v_index := f_strstr_oct(v_octetstr,v_otc2search);
+  if ( v_index == 3)  { setverdict(pass); }
+  else { setverdict(fail); }
+  v_index := f_strstr_oct(v_octetstr,v_otc2search,4);
+  if (v_index == 10)  { setverdict(pass); }
+  else { setverdict(fail); }
+  v_index := f_strstr_oct(v_octetstr,v_otc2search,11);
+  if (v_index == -1 )  { setverdict(pass); }
+  else { setverdict(fail); }
+  v_index := f_strstr_oct(v_octetstr,''O,11);
+  if (v_index == 0 )  { setverdict(pass); }
+  else { setverdict(fail); }
+}
+
 
 
 // execute all conversion tests
@@ -245,10 +294,12 @@ control
   execute(f_test_compOctetstring());
   execute(f_test_IPv6CreateLiteral());
   execute(f_test_isWhitespace());
+  execute(f_test_substrTokenOct());
+  execute(f_test_strstrOct());
 }
 
 }//end of module
 with {
-extension "version R32A"
+extension "version R36B"
 }
 
diff --git a/demo/TCCDateTime_Example.ttcn b/demo/TCCDateTime_Example.ttcn
index 40347a4..92cf2eb 100644
--- a/demo/TCCDateTime_Example.ttcn
+++ b/demo/TCCDateTime_Example.ttcn
@@ -1,6 +1,6 @@
 ///////////////////////////////////////////////////////////////////////////////
 //                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2011                           //
+// Copyright Test Competence Center (TCC) ETH 2018                           //
 //                                                                           //
 // The copyright to the computer  program(s) herein  is the property of TCC. //
 // The program(s) may be used and/or copied only with the written permission //
@@ -11,7 +11,7 @@
 //
 //  File:               TCCDateTime_Example.ttcn
 //  Description:        TCC Useful testcases: DateTime testcases.
-//  Rev:                R32A
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //  Updated:            2011-05-30
 //  Contact:            http://ttcn.ericsson.se
@@ -123,8 +123,25 @@ testcase f_test_ctime_ms_UTC() runs on DateTime_CT
     setverdict(fail);
   }
 }
+// test f_getTpscts testcase
+testcase f_test_getTpscts() runs on DateTime_CT
+{
+  log(" ----------- f_getTpscts ----------- ");
+  log("Tpscts time (f_getTpscts): ");
+  var integer vl_time_int := f_time() - 7200; //GMT+00 time
+  var charstring vl_func := f_getTpscts();
+  var charstring vl_test := f_getTimeFormatted(vl_time_int,"%y%m%d%H%M%S00")
+
+  log("Tpscts (f_getTpscts) - test string: ",vl_test);
+  log("Tpscts (f_getTpscts) - func result: ",vl_func);
+  if (match(vl_test,vl_func)) {
+    setverdict(pass);
+  } else {
+    setverdict(fail);
+  }
+}
 
-// test f_time2str testcase
+// test f_getTimeFormatted testcase
 testcase f_test_getTimeFormatted() runs on DateTime_CT
 {
   log(" ----------- f_getTimeFormatted ----------- ");
@@ -356,6 +373,7 @@ control
   execute(f_test_ctime_ms());
   execute(f_test_ctime_UTC());
   execute(f_test_ctime_ms_UTC());
+  execute(f_test_getTpscts());
   execute(f_test_getTimeFormatted());
   execute(f_test_time2sec());
   execute(f_test_getCurrentDateWithOffset());
@@ -364,6 +382,6 @@ control
   execute(f_test_tic());
   execute(f_test_toc());
   execute(f_test_timeDiff());
-  execute(f_test_HO42714())
+  execute(f_test_HO42714());
 }
 }
diff --git a/demo/TCCEncoding_Example.ttcn b/demo/TCCEncoding_Example.ttcn
index fb62fc4..a5e9397 100644
--- a/demo/TCCEncoding_Example.ttcn
+++ b/demo/TCCEncoding_Example.ttcn
@@ -11,7 +11,7 @@
 //
 //  File:               TCCEncoding_Example.ttcn
 //  Description:        TCC Useful Functions: Message Encoding Functions.
-//  Rev:                R32A
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //  Updated:            2013-02-05
 //  Contact:            http://ttcn.ericsson.se
@@ -152,5 +152,5 @@ control {
   execute(tc_005_artf265694());   
 }
 
-} with {extension "version R32A"}
+} with {extension "version R36B"}
 
diff --git a/demo/TCCEnv_Example.ttcn b/demo/TCCEnv_Example.ttcn
index 452f7cd..4e3136c 100644
--- a/demo/TCCEnv_Example.ttcn
+++ b/demo/TCCEnv_Example.ttcn
@@ -11,7 +11,7 @@
 //
 //  File:               TCCEnv_Example.ttcn
 //  Description:        TCC Useful Functions: Environment Handling Functions.
-//  Rev:                R32A
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //  Updated:            2008-12-10
 //  Contact:            http://ttcn.ericsson.se
diff --git a/demo/TCCFileIO_Example.ttcn b/demo/TCCFileIO_Example.ttcn
index 1931195..18925a6 100644
--- a/demo/TCCFileIO_Example.ttcn
+++ b/demo/TCCFileIO_Example.ttcn
@@ -11,7 +11,7 @@
 //
 //  File:               TCCFileIO_Example.ttcn
 //  Description:        TCC Useful Functions: File IO Functions.
-//  Rev:                R32A
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //  Updated:            2008-12-10
 //  Contact:            http://ttcn.ericsson.se
diff --git a/demo/TCCFileSystem_Example.ttcn b/demo/TCCFileSystem_Example.ttcn
index 6b84283..ac8ffa9 100644
--- a/demo/TCCFileSystem_Example.ttcn
+++ b/demo/TCCFileSystem_Example.ttcn
@@ -11,7 +11,7 @@
 //
 //  File:               TCCFileSystem_Example.ttcn
 //  Description:        TCC Useful testcases: FileSystem testcases.
-//  Rev:                R32A
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //  Updated:            2011-07-14
 //  Contact:            http://ttcn.ericsson.se
diff --git a/demo/TCCIPsec_Example.ttcn b/demo/TCCIPsec_Example.ttcn
index 1e69870..e898d63 100644
--- a/demo/TCCIPsec_Example.ttcn
+++ b/demo/TCCIPsec_Example.ttcn
@@ -11,7 +11,7 @@
 //
 //  File:               TCCAssertion_Example.ttcn
 //  Description:        TCC Useful Functions: Assertion Functions.
-//  Rev:                R32A
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //  Updated:            2013-01-09
 //  Contact:            http://ttcn.ericsson.se
diff --git a/demo/TCCInterface_Example.ttcn b/demo/TCCInterface_Example.ttcn
index 88eb01a..27689f7 100644
--- a/demo/TCCInterface_Example.ttcn
+++ b/demo/TCCInterface_Example.ttcn
@@ -11,7 +11,7 @@
 //
 //  File:               TCCInterface_Example.ttcn
 //  Description:        TCC Useful Functions: Interface Functions.
-//  Rev:                R32A
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //  Updated:            2008-12-10
 //  Contact:            http://ttcn.ericsson.se
diff --git a/demo/TCCMaths_Example.ttcn b/demo/TCCMaths_Example.ttcn
index 27b3b38..e9a44c4 100644
--- a/demo/TCCMaths_Example.ttcn
+++ b/demo/TCCMaths_Example.ttcn
@@ -11,7 +11,7 @@
 //
 //  File:               TCCMaths_Example.ttcn
 //  Description:        TCC Useful testcases: Maths testcases.
-//  Rev:                R32A
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //  Updated:            2007-12-09
 //  Contact:            http://ttcn.ericsson.se
diff --git a/demo/TCCMessageHandling_Example.ttcn b/demo/TCCMessageHandling_Example.ttcn
index b935bd7..14a13bb 100644
--- a/demo/TCCMessageHandling_Example.ttcn
+++ b/demo/TCCMessageHandling_Example.ttcn
@@ -11,7 +11,7 @@
 //
 //  File:               TCCMessageHandling_Example.ttcn
 //  Description:        TCC Useful Functions: Message Handling Functions.
-//  Rev:                R32A
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //  Updated:            2013-03-28
 //  Contact:            http://ttcn.ericsson.se
diff --git a/demo/TCCRegexp_Example.ttcn b/demo/TCCRegexp_Example.ttcn
index 8c7b547..553b154 100644
--- a/demo/TCCRegexp_Example.ttcn
+++ b/demo/TCCRegexp_Example.ttcn
@@ -11,7 +11,7 @@
 //
 //  File:               TCCRegexp_Example.ttcn
 //  Description:        TCC Useful Functions: Regular Expression Functions.
-//  Rev:                R32A
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //  Contact:            http://ttcn.ericsson.se
 ///////////////////////////////////////////////
diff --git a/demo/TCCTemplate_Example.ttcn b/demo/TCCTemplate_Example.ttcn
index fd04560..246919a 100644
--- a/demo/TCCTemplate_Example.ttcn
+++ b/demo/TCCTemplate_Example.ttcn
@@ -11,7 +11,7 @@
 //
 //  File:               TCCTemplate_Example.ttcn
 //  Description:        TCC Useful Functions: Template Functions.
-//  Rev:                R32A
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //  Updated:            2007-12-20
 //  Contact:            http://ttcn.ericsson.se
diff --git a/demo/TCCTitanMetadata_Example.ttcn b/demo/TCCTitanMetadata_Example.ttcn
index 2db083f..6021547 100644
--- a/demo/TCCTitanMetadata_Example.ttcn
+++ b/demo/TCCTitanMetadata_Example.ttcn
@@ -11,7 +11,7 @@
 //
 //  File:               TCCTitanMetadata_Example.ttcn
 //  Description:        TCC Useful Functions: Titan Metadata Functions.
-//  Rev:                R32A
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //  Updated:            2007-11-14
 //  Contact:            http://ttcn.ericsson.se
diff --git a/demo/TCCXPathSupport_Example.ttcn b/demo/TCCXPathSupport_Example.ttcn
old mode 100644
new mode 100755
index f495c7c..3db0fef
--- a/demo/TCCXPathSupport_Example.ttcn
+++ b/demo/TCCXPathSupport_Example.ttcn
@@ -11,7 +11,7 @@
 //
 //  File:               TCCXPathSupport_Example.ttcn
 //  Description:        TCC Useful Functions: XPath Support Functions
-//  Rev:                R32A
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //  Updated:            2008-09-04
 //  Contact:            http://ttcn.ericsson.se
diff --git a/doc/TCCUsefulFunctions_CNL113472_1551.doc b/doc/TCCUsefulFunctions_CNL113472_1551.doc
index 609b2ff757a4e3a675f4f43958d1fce3380d1498..7ba4e1e0bff1d8809a6c87f6741e3a5965e738ad 100644
GIT binary patch
delta 64176
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
Vof>DNQ;X#^G%R=E&z)zx{skqu^l1P9

delta 62447
zcmcfK2VfM{8tCzv-GrV7gccwPy^~Fk^xlgIh)N3r0s;bxB5grwB0_M1QB;Zo7L*Q)
z4Jj%hMNmKlk*<J9lOp~7znz_Ab|&HKz3;u~Z?k)5=FB<YIdi7$WEeN0*tk1IGvZv~
z4n_Y7SCoRhSNU}B{{8!sn4ixD5Q0#IVeHEE&s9f@E}qhkvV{jYm9+QrbrrA7k|h;o
zlNP(wQOL6(D9AI=@wz+FsVLv3DatSWemvPXhjJ@iRf_QW-8zagvaq6*?4T%nm~@`s
z@?-rS(@{~T)K-)aG8Cn2grWq!t0*h-D2j`GD3OxDZ~4jQcNN=&a-@V8R+V)u`E3zZ
zInT0>l0i4m%%DQ~n)-`a_G3O4iIp|WkMX<g$NFdE_oJTM&S<w$UVWNg{zS4}BlRTl
zu`l!~*58s#a*(1JD>d@5ewKQge~f(mX`bm9D_1v4l+(PjOhIDa=(eI9)SD>dVye4=
zL(ke+H4X1;`HcEUr<L0DW9E8|^v6~x%3QLEx~C|0O=T)Y5ot-~JATLUTbfvY9%H^U
z%)hFb{`s%fic*^@%jeOG;#3+qw3W{U7xH9WOlTv8S;Rud%)T6WG2(HW>8T;a^&`c%
zl2iOHBP;R8H`h}75}(WPTh+5&5ENcUW|tr9Z)tV;c{JRZw@`4+^@>tOi_Hj%tz}=p
z$iS$a5p&ybPgL&t@kT9-rT+78&-jaVBW$y+u9at_BTrmfVq8jET8hV+zjAK>2T%Ku
z7-K@J=ZXBTtPc-|L>nK{JfG*UlJ$Wpp|X5xTwGk47`1SGUQe}<QoiYu<S~}ygUi#m
zKy_n^%RD9Cv$;T3V@kYvN`j|kNaivL<|&Du5g|>DWfIL(l01Kg#2ZtR%u|v*Z9_{N
zQ<BY7Qao>kW|knuvpZC;FQrcPTnjB{ER*Vq4a=-=n$$NTuV;B!abtR#Ob^%N;qt{J
zp@u83=ldolJa@{3`{#1S$y{Onxm><nYPdW#3r86<xXd%e8#9bAT+!E5sYEg+EXK$n
z!I&ObDb~m!!BZo`sDUfdb0=JHF_uh}DaN8n#-cMLGuNHuac3=>>{${~%g8j@bGe}2
zLC7b?6H%~?F(pN&7@4N(nZ|o4uQ5ZadC@e_rh=7>DQTuD@o}Ewg^ZH&AuH2(f0W`q
zStX5ky<RxRAM1F3kZ6sFC!;(&OB%6`k7p+Ty5bW&l?oeWj!!U6Nc4;>T*H_vkqQ2~
z#QOu3;32k|X)#^<(eN(M!U9IS$0vK@BC8l>N%qf><hdMC%*ZvxGc~e|F-MAj4kDU0
zN2=$StT|G%n<LFrqey0W(mXwj80AdxceO-QCrXGj&)|<=qN!05T;>`40ZcU2G$CFu
zM7-xxgi+Ik1W!g$qoxT7{ux|S4}W|T67}{^l&11mI3dwIqdz1GNuJupjBSn&n~G&t
zCt1%T$y}Xe^9(7*3|W0FA;mm{zY``&b&U0;$_&PbG|&9vMl2KPk(nz`^v5zu%J1La
z5<MG>8QCPdJgrJp^Jl|{y(NrdC;DTUY$|qQym<!yrkZSOg~SB&4F1^BoidA^nCLkk
zWfVIx$+JAlC^jFM;tzYGKW53MEhI77yl9H&iIQcEx&1vb-m|cR(X@%Fo=-~FG-mL3
zz<?RjJOxT+=8$G|j;tJ#;ym3;)$r$#6qn5mF3%UGDj74lj2VtsDQ=|sLzv=;DO5Hy
z%`~4s?nw!r!KIC&BpKb%Lq^67G+Ak5_(@9iG>A3=mE_;1Q%$Xulw_X4AIVfxD<vhH
zXYlvFR8uP@rFb5WF<L1p)e{|Kv=SefV$?<7XVgeFwNg@=Y0>03&yLJR`Oq%bSTxzc
z38$ILo$NBt;E!FJsocr&<{A9mFU?f$<OENTGDf+R6Ft?-80F>zQ~c#l_6IG^RPN*?
z^P<U~pUWipH}_=!2uR<~8sCyrJhjV~HRka5zrZ<CJu}MIH0JPkz`!}uJQvDV_BU~I
znkTxPu>(jkcD8ZSbNq9p#F^(XcC>M(I;6N{4rBIs&$V(XSs!*~O-b-{EuWcdg2yx^
z(X+g~QRWo?FvoV6RqvD}PiO_B%zRi_F|*A6j^<)_o>k^#^Bn%3#vEDuy_6K0!zgB|
zC$ge`pq3h!l4@So-_>04rVf*mW|||_h?#j;of>D#J=Nu@RLLkiAF|e)$}*LV!J7}J
zDG8omDwXvQoT;7#6^(&2mAzBtI++vhXH7`*yj|IdZfer&m5j=zCVMVcuIaC7YO-lU
zil=Rr%yOl8+*OR2ruqkdSAr>~si`uDzbmI2aq(nCmNfEClNtOU(&9Xwsv5^9d@xOM
zc|NIXR4vUjwu(`;wD{Mn8G}t)ym^TP&!g3h<JYtVPt9sZLDT$0JqKi2`>-@ZR4pb_
zKQc@+j?NNm#B&g-jelG%u0?lJLp{x^8;3V(>>{gW7ChNAxq2I;7RjC-)ibB0c!Fv)
z_itHg{%tQQ-qcIeQaz(<7!l>eCp9t)YQ!ti6w$OanL}Tdi=+Iwn*R2a4@`;hRlyZ!
zY;#F@wFbl0qMr3({*p7v^F&SmI$Ux7q0433<CAEf!#K)K$_ke&E<xrnN|ET99oI1H
zLug#)lq64XS9@bhlILjF6e8yGN6ZzMY@R~I;#(NYq<DI`GILAyjEVP0%Ej3MQwsWP
zYeXuk2Im&#V)d@h(SCQAzoWSL;7Tw;#fPkH*~BL#7}@e+S-i1AHsB)({$9s~PvT?s
zhIF}%n6U2&FYhla9iK)0C2|>^EQRxn<Awca1TOlVX&$4SrPScet6XMDlg#rNBUMTb
zj{nN|cd{;5vdrUeYnL%rrRLSzzp57Yypv$GH75(qXO!C5LQOkhmn+pghY?41j9K+c
z^K48s>J@K{TxkLI;*`NOkJ0zi0_qj-GS6f5yR?9M#mCD$#r0N=_eVKCE^miEPxTow
zB&M%tMVSA%-o-hEE5)c<yg%HOBlBd=6`yFH!yjzs$UK{)edAJ$HjVd3ni(<=0bO!>
zk(#*@f1H^kbFblwPchG7oPqiFbpBq*ULe(I+xRrkhBVWM+7B6hjgyA3hm5Yo2h$Xn
zr}slf84~=5ZpjI&XFZfB!}HE}Gd(qT%;tBJ=hlu6yno0ud1on4<6Uh$rN4_>{mHIp
zgFLZ6oJAu~+aG&*R{nUxGizTR&yf9jJwNYj=_$8=hSoDd4fcGx|Ago51K0Eq+E3-Q
z!j04<EvyWq-hwURtH1iWK@qO)q_4VkWKG#Oay3yp<x#_&1LU$xk$(QqWh47dsZ>+{
zJZG^Q)hRU30RPmumZ?g=JW8}9&v@s6$5|*>9yPLG;B;~fx27q@^>vuiwIPeuW=>Y=
z{cN$C;LMx3N-eyoqqMs@7pbz(Jkq!F9b7JCdS;>ZBDK|1O{-C)$P`ImYA;uq%u89T
zo=eY9iOz3|fwpI*TDb8)sgtoXy)Yg1m6;0Tz5byZqPFnIS)Z$R@PjM*6<6oXMUJ+X
zOzXK+4XgPN+Q8DT#Twfi#i)Q02Wx!vD1M{2jW1T-TT7{uJD^HcxEB1Nw)-TvrAodQ
zjnh+2;WA32uXS~<z@^M(D<(~B6xtS{|Dx@Z^_7_l<Gucgn%7y+7H7S1Z{-UtoZhyj
z^;A<XTHTdu(VRBClBTAeliN{D%UG%AO|h-fsHeS0T5Db^Z|1_@>nqhTOV=yFwc7`^
z(~JUvl`?lA-&U#(T&?E)Ctc50usWFq3vA@s`2$yJZse>s_TF1fr|T5Z>28HRxH4n(
z>6QUQu`Q+bT&otX>d!j+)pJ$b)Kc1KTh%Cgee@oXD>SE4nOjf0wN|}p8Uba%(ZaoI
zSWeyT>4Je_(pPqY?_vVmQ|s<ki+0PQGWtSS!>tP$Es}FTvsK^R&%A1+rJw!6HxYs5
zGFG8)JU#U3nN4HP-nShL{Ph2FH|tX<Fn-y$v-jSoYJN*M`>yDN>(WM_o>><?$b0zO
zDKG+B_s{=jH(T(z8rdLlv&m++YD89F?}13`dcD^_r%pNbt6C)j<D%!Xp|~{{t^Sue
z4`bGiy|C<|ay|ZaF>5YHS#$1aIq#v&eZ+g=OEpS$2gW9IpI^CDc6IugFQx)p#3+s4
zCu{1{E$z4}DyOBwBTHJ2gY1JutsF|2r01HsE+Zc1Ug^E{72|gyW5_d)Kfci-Zd1;q
zMXBiQBCw#ewJzG&P5(uoj18<+Hht22eUn<qvK>v~i^2!RKfgXbGbVaZoE~dkO6$HQ
z=bmWpB))-U#TGTMeW*6#Z61<+y&>DWY*8!cco=ZATy~Kjt*4p~1G;Zji#9PD(|7pu
zQdw)&j1FlpmbqTO-B0<zHZUCw1@@t>wqt++6?0mxz8(BoA+Sc~RZB?SL-ZL;l{3nn
z^Tw-Z{a5+Gtj$Hu+ShY;fHiN$G{UG&e23@Wd)sYC1YN2;xN3(h2d-c5V%_yr(>k@D
zJN{W0^EE}*u29>+a+Pf@W3P_h|Gf8hsA`TQ^Y&`l6}GjWYA$TuU24&shY1;p>vyP{
zQ($u563p%Ht7j=&#mw#Jy|qhqSxyTcs+rSj_5Sc>jqIveUr#kv(db|1A}Q@!I+cgf
zy``e0w`6xKy-(Y-RSj-sE2zG@E!6{8XD)tD-A}vqeKrSbdvhLom%0L1qW7^Hda9{T
zTKB#G#nAh24+j#t6(n%b^<Ll0&>VP1S~Af(ml1J2aPt!a>tt>R84^;<=rfqAXJlaS
z`=(9Vw<VXd?<9>*X>B0AG>hZ2O5?rtBLiIEc|pFE2iN8`?l2-ImK{yFo@%Os)_wo~
zhZZW5WG$`t`u+zTu#MtYE_><krCM{*>i?AU7-nq){{dT&Ef=F1jTW&tXU=23xtDk^
z{PchWw*IxVtJ8UI01E88MrrhZ@Qgm)(vDXi%4w<p<$!Ito@?g1jCh!PsQ1>-ww>)E
zZqa&B9lGh$GxN>9VYGpV)x4(N%-F;KMaTRnM{S4ILe9XAX<LH_SD=+XJ*xt~Lz~_8
ztxIX$kLKJR%{@gwYCHPBAGMK%nvlbuAg!^ld|9Qo9bL<AQ)_)ZAne_bTMywjH?-E%
z=%V%w#azjMbqIIdwqO0IX-=!vw~Xrg^sMUn8f8V3oR-RY8`kqnXkr?2Wlw4D_U1ij
zKpo}u)zoQkoy=xOdOGJFX;ceK8~G|Ruer4nTKCic#n$j|cchD&S=Z~me%iJpoz}`a
zm(d^eK!)klGaJSnFW-*zbq;2-A1~}3$~sp3>m6yNzA|5FytjV0?MO$q&8aYYZSJ=5
zP0y^2eyB4}PYu|Sp8fyOLX%osOY6OU_5nN6KiX$k`oVgtx%Bn_$a&<lwt;^~`dm9}
zS&V*Q>^SVrne#?y?j_y}e>`AE`tu{%)v2qVYO0e_8oeEla@V*0kfN8Kn$1%G%Z~K)
z!-4BE;$a?9ytn?e?MPd8&MBgL9d>mJ%s2an(FR@&7}3XG{4YA@KiQF9v|av4eeA&%
z_`Hjy0>0s{uAXXY1g-n!oV%mBr|3J<%m3?+RJ(pzecmx7UQ@qOD{J$=QA=pmKXR1N
z?q5+uv?HCJ73JL)nGm9Vzg!LR{_>Yv{sEV*d^^?}*8-ZM{x!8|asRcElG%K3cukG^
zC*L`kYyU6yu-dI_>gk-06yE6;*eo&TBZZ8cY7y;%!;wp?aYN19$9Axh^Cqo#+V{E!
zW^UdH9=Ka=61XbG9yDVMpHxNle|cL$UzxcpUB97T3;ZH4wC96+>C7I1B{qlLen$R}
zid9(8(o`;^?ABOE=X7GPbq_36PH{93y53tiRcDTuklnokbJTZj4m~xSqU!BAF+Fgp
z|6G4<^ldf&zxl$?7L)&URpvG$QM-Waj+c7-N||FVp4F#k?$+(K(7N7LqwH7T|5JB=
z@yWpO{F7$#^@V^7>qa-zuHRMv%xSYte=2ZQ=6>oM7;D`BZ#LMc`UYm3Qw{8UpB1dn
za?Htbbk^2+u1`*l64+_)+nV!-{y8nFcgjxs^anPl>WH%UBXi7r!)Z>N-xK}*Syaq5
z(Qc`ZpR>LIl{Rs29QfdxG}5PM)<oYZzkNEVrT$ZYY@sh{<X1k&(;DkWSERYQD*i5N
z+iw}eSXLwN9AGV~_qx+j)Uti98El=)$VqR|6n(l;Y&E;>Gx&dM&^m*BCCFSuPTkxb
z1?^U_<Hwvf$MQo1Gc<QCnm*P(mYB2F1N@&_v+9t*b>viN^R}rZ<ry#6k+p*>)dKE9
z)*-QLp7HkJ8jX?FtjnIsslk-;37k16A{A+9gSKdg{uqF#F(_VfD}#CS42EDRhG9Bp
zAOka@;SDUo`}hExu?1h_TWrNPY{z%lf!}ckXK@afa2YC>ZXIwYaEZDUZ!VuXcxK<u
zeVcaf+qvf8nlt;(EV_JVwxmpzl-ZIp(x1X#XcpJPx2m~n&v`bd5a@ljxIR6zM_D>R
zvB7T-%PE8Z)b7#xl9^fmlXmxggXFgNu?MzxRcRIpX*r_w0`{RIm(C~P2vWI}`zlT$
zh0Dova1kxJApH(5pb?i?J(!)U6jVOs%@#D^nr=t*(9-ic8q2YCqW1kSYFq7-sg4k>
z4M)}bJ9i=<L+;AUOb)?c%I_HKmL@BWXv9J;#g~N?vOFrFAsV4EnxGY0qa!+@GlpO&
zhT%C3$McYij=+nUjXBWp2Hs9kqLp`evl6SY8oRI?-(zor_F1?irkeX1_nGr&dY?a|
z=-nar^MTu{d7JdLP1o$UMSZ-VIy|SIqURl=PtWWR_BPc%3vv8+ClvN^D!cPnIds>{
zQs}wBdMXw75|tnDBc%WA#{pcyU$}~ExQ#mqqF)6g7h)3Kv@vhWpd8Ah0;CgGLS-~T
zQ#3<!v_>1GqZgjU7>tD*<M9$+hIHhKn1pxn9&VgFbZ+miy<aZdJAd!4(l>U^y0PoV
zx%rYbVcFh8dw1Q~^`fNsW@0=jsvRrf$mPEMLSV)9rW>oLT8G)paH*E1%%g;H*q8Nv
zpS@u-hvpWUXFU`2o|erjjh3^I0@mJG%HHhOK}M-6v08-1Sc;GF89v7sIDnsU5QlIW
zzd#0#UvU(-aR+yC4?zqh!RQ>xi+oX36fVRg0ZB+k3S{(2!$atdN6`h3p$B@RANpee
zCM0R|ia3gD+d~~S-2+EHc%!=bVs`C0Oi#@wxc_O;zBVEtznl-f%w0f}E6SF(_(!L{
zBlNXpQ%<GY1VS+plQ0FZU@BxFpN7})AwI%VxIgA)1y*7cHe(Bp;8z^Qah$+O$ll;I
zeuIO(ffGRpMt&4PVML+`;^0C&5|M;t$Q~s%nWKcO=g*u!yz}suGh0?K+A?bk1M4f2
zGD}ikT(o7Uqzu;Q@ej90Mh8S&)wjl;dTKUN(Fd=Sqby7LE`8+EZw&X1(wdyrJQ8><
zBH*m1ubxFVtFUi%0WB?eSXx?|jEzm!y7lShJ*)TO%z<C2O1P9XbV6r5iZ1Am9(Wed
zVK`<W12f^ltYik;*}RdxxP~{d25YenUVMoS*oj@(jWallb2yJbaRG89a0!<Y!jV8I
z!Vr!kD2j@xgvw~7rfBmDIEuS(d~@TkFaMhQ<zHVe{$}xwziy1&r>Af;KD&M2Wx}?U
zHT$m(^w8`bYiUZ~QXTcwY+A>>`MOPi36MEb|1>5rLu-qe8}na{+?fOS<N6vR`{mpX
zY<;L^BjVN=P0$R@(E@S=)(WlB5B)I!Ph%*CVI)RjH0D6V8|XZjm$&dX<S=d?=HqjG
zfiJNEUtuG5U?+Crcbvgl{DJfM6BknCz$mun3$n2el#TTTMgU){d^J8WwAOpDE7}91
zFZj*4zy%+$f6R<>bA6d?x_~XXnHOP#<j+QY7X<7jdGHpxL+_?pTWA$IB)*7CD8P|$
z2tpBtf+&O-#G(vpqYmn#ek$2D;7vowadl%fK{|TjN%Te^^u-Vi#V}06YnYA<%*5-E
zWAj<y_*}Vi_Vn5P-=1A}_VlvT?=3sM?8-Vx@qBxByrew8>~#3DE8_=qr781A`?Hv%
zhH)>Jwc$#)PJY?fLfJ%HZ^2Jr3T#2^R%JafDeN17?X8e?YFb;*F`G3SEoE<K^Tr>z
z?JE@|EY`CY_XJK|CSo4uV*%d7B7BJrIDnsU5Qp&#dT>+4Ae_TrsK5;!wNVFk(E*R3
zBRtrI&Desk@hgtjQqq-^yg7w4xP-qEQk$(6ORx*SA-ImBl)$a)S1z3S^~~O1cl^q)
z4f5-=b*t7b`{=#-AHDb1d~H?6EAuDLpE!QvNS~2ft|&)oEiuaRQSL(eWgcyBl%u$|
zvzVjIBTAf652O4>*`?eAAZ3?wOPMLJuc$RC&KyKhoJvSR2lT~A@53b>%T>1&Ri;V$
z>(KBaHeww&j(m-J^@tIk!Vc`jFSv+HxQr_Zs!#Qi8+ni)wNM+K&>4^7aXf*p^_4ct
zo4olHpJ6NZ;x}yPrjPG%5_c~CdJ%g!Ui@PH>h;T)F4F&7|MvQsZ@>2T^7XGw96xIO
zsG+0eX--+uD^K)}m3A!1RV=dK*Hu!q7154%ZiPO{2c^<TD)=&{K`Q<RjEe8%{VzC!
zzY#<b3L^$_sD}>dj=>m<*YPflpdIG@MK}peQB=j>iud^#$5gehd@x5<BHE2g8$tMk
zN_T9iD96ye5xo*S@Ea~R($rW-No{Nf=jfL@I77525_mT#$r<9EUdAy@bxX)j;WW<R
zEF`zyEd4U(V*x(JXZRc&@D(;f)^>;+IS%70uHiav;ugZWPay(TP!-is6LI*mnNmXu
zmK!KA8e=dA8s5O$cn7t)_2SBz6K8(WmX~vsaeTB&+gr|Y&YgGY5YE0FijuELzt!ob
z^!NS^qDViP%JG5BP~5j8TRhP}nwh33l`m3(mfU_b5nFK;c`0~f%)lKq<NlRN*o$}y
zKE_x0YI?!jP`J5R%-sveF_3#I*5GJsMiA~jID`&uwV4%Zha)YWCA1l@bFE}g1xH(X
zDKV$IqoOvjqFh6%PCD;qxuw1>VPt)d_kSRW?1PaD`H&wOco&NxMK}s6Mnj5V6s5cr
z1@%xL4bTKlu>|kKC~ogIN)@FKWgd&0*G^wMa_xsByN_JkdTq-m+LmjRx45@F=icq!
zGGt3nCi%{=H&k-m(x%jOglp?7J7U~yHO^X3vj2?ir?lzJh%KLDB|A6dc8m#_2no$e
z1aV_WFgjp0)?h7m<9qDEKJ3Q<oWyyk+}03^+USl=*xZ_z!}tY9a2zLa88O^V5sMKx
zh10l)`%t(OAPB)Ih8{@wuC3x|rKU^4WTmna$w!tq=9$ZUA7Ujo<0gV1q0`_3>UE^^
zqI4(D)36&YI#XFBc43Qw;!UsSn6J9iS+*C3;|074$=}F#X9wy8$-k+89mDzkJZ2yR
zGcg-;uoj!}C!{P2<tT@`ka9hPA$SE-J1WV_tGt<k3@pdzkiwUu&{BbNsD$N^%526~
z@7fv!$-R~LQn`a@PUWPM4X9iPJc5qs1gWsxeb5Mv(FBj6H~OG2=HVNBi$j?6I3ogf
zcB3LlPG>iUS@;!4)0KwGYrWWi(ecXl;i>~_p$VFzE!trcj^Hm`#Xa0d?!N4Yv`ul2
z@0>@IW@yu0j$!EvE0%&b^%vqaze`bwsu&6>)MZ3IL2xh_YjFi7x-!n8KUU%x>QnF~
zSc}iG)0-Yot9LdkRjE5?+Nj!t-h=kog?>G`e1mN`h;z6P2?7<*toQrW{b+B!{^k2<
zGp9N#d$~kAUX3VE4XYvnzQ}kZk{uV-2#HXAG(=-G@kXSQ9%4kT6=|)#ArCqJQX^aQ
zz6}B*sgX}9t;PsP32*D#jx}ne#P(O5!g=`OEOS-y)~oB-q((^4Z{jxY;+}t%MneSA
z5W(J%hODwkFz<80*Esyv@Xk|OTwN+wuQ9o~^N=#fKjkfc-$$vZI9Bh+u{w&NC>Hc*
zmxY_SgW3Z)tidRZ!3HEfO-NA(d$1SH2C}hZ6t3e2;s((r&}@*>UFpD^N6;1BpkW8X
z2Q%cNB3y_^ZPdYw_!ytyJM6$!<a>r89g!%481Ip$j<Ra<J5(r^LQ8?&{=!N@2l)#r
zg_A<Lkb-(>I!L=*&GEwQ1<pim!x%@H*1o>uh_<VRBO%0JcBM75we^OyB+{X6dEXv-
zbtJ+`Jg~Ejw@+)wTWW+<unQi?6X@!VXiGOKZdBT+a0Hboil$oq!5mQ48|(=2)@x5Y
zg-U8P^pKeH?;!b0kgA~u;^6W|bd+vr1WvwTO!J0xmOhcj`&ux9DM7qC*xx6*u&yE!
z%4@g{Ct=jXDsz<7=z|pLap{N>>2MT8VMKZ(y2?t8=tq%O${W&MR$7Yp(TG7TI%D)R
z{+0HWju<$FQJ6Vi#~XMPUfe^WAq<4*if-tR$#@6z@F70J8mz@ZT!3>ZB}7rgpcA^G
zJ9-S|$(y5iGZCBd9d@F~FlNTPSc3Pl7GA8!ZhVhJ-Y<JO8mXm6Q^1!n6-EVS@qP~8
z@Kx6z!DhW3pQ^D&-K0)ZhbfqjIgt8v*J|{26!$*V*YT|yVpQ-wCM@=b^pjq<nD_5P
zue7OG43J(SVOWlpSdBH_h=J1UjL=9(q?Sf)vU*(!U)S@zcCm^!;}u6f?`wk{&#IA9
z<4^Gww!&9?En)-%nBFahNVkx9?85;Z#366QFzFVDcz+njaKan%9OZW#X{Sm19e?8{
z(x2sIANLXZ9Q_(?@gf%CBu?Qn$`0qU58lB#oP*<ewg(J;fetf*;dvw{tH?i!9TJ9M
z@)$0?&KSd)EmmN=n+*Y*$8p?`5#t$Q&}S06Nt{OHWCqtMY{WSA3Wb`=`2H%L0M6Gq
z{=s1UfHl+UELb#yA@j<evnLLm{o&3Q`R@zg>zys$d(S%@YQza@d<qhU-|)Mam|j!|
zOGF+Nh5uChr-{H)oI_P2A<<Zkul-SJPGrX7Gh7(q+udnj-QgIz{wPO-z!(4bmB!SH
z+V`Uzt^pTVu*{1LYnX;F@EeK{Y6*EGv_=~|4f#@H4%T2T_Ty*dra2PP5(6;{A7L4m
z<LD?EiwDSerX?7V_sD?UF#RY~<dSyL(Tv#WgvanWreGR2;2QGNzF`PQNz_CKJc}1F
z0weJ<R^c1$_NI^J=wiTb-oH7PCPFm*L#|Ra!Q=Q}`;5_7e0^kw)UtBsInGPku~Uv2
z+Oe~o+UywbNOJ2laS0-WaN;mxXVQ6b6XRZIl)+qV$HN}_4@Tf!{DJ(lSROB73g+Tn
zY{C}o#m_i|bNB;svuVQFO1v_KH@8t>4hN4|fQ9%R2T?_1vqLL%#SHJtmmKZX^gC<;
z*%j6(q!dmHB`cG4NdA(a<Z%MGQS=RVTbO~vc=k;SjH+|#H{SFKa`Z3L4q2vGVY<wd
zAoHOkp2Slah0&OZx3L)O@fCi=FZdN_a2LUE(R)x8ZO{#`K*RR8l(xzd-h{nPH$yc3
zc!y0NMdxt<gSO~{@pv6y;Q&g^=lB4_F?Ru{T-fd1HOY~{={GBu0!u-qkWxS?oD@h3
zBL$H{P=Nnpy_&0@bAlFflD+!HDUJwrfE1+~QqUSku_p0;8fIe-mSZJW;U^r#HC#s&
z#V>_;yn)R)ioy%|iW^nYVWBp2w4<B$$tA}P-}db8K<d*Nin&;coyherJpxZ)AfCrU
zY```g!x=c<BWE;3FO0`zEWi?cfE8GU@30epE15rD_cV_5-Md+1K62}`n0}3CmoO?|
z7FOfp`_vOfKA@fm`-pyuiTDAx(RwMP33lKnrhd$Zg<hY~$B?*;Lp-#{1Qc4%hK#Dq
zdH8k@-fYA>D;OYg0Ds^-l$EmYTsYm)Lrs_B@51*uiSwwoh^-xKum{I*4Mt^-QE;OI
zxhQ-AM8c>{9PiWc14?_-GuWv5m;R8@V+3BoJp8wnHY#hbqpwcX>z1~+rL%&Ui#tPA
z_X!fBR?)%XLOdGc!_{n+ID#99Si=DT%Aq<Mqd8jRVRS_|^h6(wfCqCiA4~87uHY|}
zSxbIvmC{NN-lSt3#^Ymrf-U&k`_3%Klj;B|q){j-!26KQhO8q)jPf!ReoA4m5+y(5
zT<LT6x%dKKqSO~e8qpYvVQBj$r`qt~EE;Xl7Ibh{*2etIR=Qx0qo?Zrnqr*BZ)n7-
z8e=eI)$_3cpW$;{h7>21;uJ&?M4<vIq6%uFAsV46T45xl3a?`>c40T}dX<)(b#fxS
zp0fx%fv%X0DVT@(*oaLiP2Ho>0!BPW@cu=t@NR#@k)pa+@Lpo{8Ft`%{D^}%fs^<R
ze?a0`9gWZfJ@Fwv!gbt0Jz`rQqagAA91`=A#8+Z&#QXAzJ)8K?>z>QT-$`1ajVby|
zc)v8W6)4dL)_}j^{EE<_Djvh*NJoD}ZKQ-qK%%$P+m5AbdLx#Rd1ZPc>8sIY6U(9>
z2E&bsn2zyV*h^zOb|CN9YznB0-k6EqIErHk^`_60ouK6X9u{FKRzcQv6lZV_7x6dB
zv!1GW6xOn+n>qJEMYzxn{ZaiJ&hoJgo3InRup6VcDqi;jBKdeIpQ^%`Tc-Yoi%9*J
zeu8Z{i7Uvx)wi^=gx{x7a2va7%*1h&+0MWZ?{@uy{GDoCi!T++29fcuV~FZz&Aw$%
z@cX1``N1qZ8WS-ClHXArgOTrWf8MkB{VtYbExfpazi|_Fzhk(@2~^y{bv!ghvmKmC
zwBSu2^h19Pz(Bl&sdyFBFdZLYDL%$0SdPuuhVA$cJ8>RCJ2~z^F62QJVo(O<P#%~6
ztbKUrw#z&D@6S!!c5eIg@?qoc<v%a4Td`!`l6g74ESab6-s*5^XFqfl36X2g<;#A`
zWglL(>5CmhtJak;SgS8pk4IhjL!h+Wp&!34@4z+sko?Yyp+gkYPj@bLm(Xr~?5OP6
z{<fwrb^NTYd*AU;jI54}@nj_7GeS3r_Y%5ScW9eBJ4<S{KISOc_t!~n>N_&Lw?1+N
zt3`4dL7l;z5>yH346WwJoHW<?*ztoJX+(Gh6C}bCU1Nr2%n)IOdlwTV+`-<66`XrT
z7$MK=4|REO#41Uba92QOG)6OT#2V7wMtUXE>Y$;2dQ+JP&CwD)&>MZx5B)I!12Gm8
zF&R_wDyCsNKEiUW#A>X;T6nQ>C;jgm-fYEoe1{#_g_Agq-|#!m;tFoyCT`;n?&3b`
z@8awR&CmiZ(F$$wB1U2~+!&9S@bWG<TLy0?VJmiGH}+sJe!xEbfxmDS*Kh-&yV)h7
zD2ky3;*o+h)Ix34K|M4<3$(<oOK0T2TbDxozx7{Q^j1gFyprzwtd-pAsKA3n95oAe
zHQJ&TRh2gA?~VA_QBc*&dL2h1jK&zm1Zjj<jftN!(P)hsOpsRKYKp$(=S(!3V?7h3
z6}~eje#u0mId(Han&UTP;#W*G+T|P*q&@B!6E`u@Xc&b!NrSZXMr@W|Xf#S&(xeey
z_C~Dp)#4i#dYJ@ijLDEj*lSGO&P1a%_A^0R<Ek-n2NR8E`I`ySEJeK$J7sl7(?pRb
zO;Xz%v0KuOW~on_Gz-Ps<0~HTTcIrmVu&~5YhUqxbR2O@yUD~h{)x}X3>b=M@jPC@
z7>tD*<8T~9zUR~&-{P@7Z14C4cd=wI^WZK@{=guKawv~@42AXsTgqzQc(EP_p!~>T
z2Y$!&eH>q+#C|fsGY8m`(B>y<gOG!qq`}v-jNW%@|E|sQ|Ec|_HpqX=H+;Z<@^SyE
zU8m+woqK9-);Q>SE2xNe>yV>%ZvRlL&0Op#UzqRwd;?+O$bR1xh}OUJ(=xU?o+%h-
z1m`&dAVF~((cJGil59k0JQH5R%b0+Pn1sogf>$sVuj2S_Z}I`hcj^Emq((Tcp-dn;
z61JS8l%EJ0k#g}q1@-X?eu9I@1)=5v*)w$0*fUhrE*#{G+cu+QIIqBq<(+(o8+AM@
zT$DE8gLdpSN3?c$j3e6Zi&s#X@>Fl%x1}X&vZhDT1p_e{(tgrz?Jx>s@F5Q1I&L68
z?J4aViZ&PrFFwU3ME}eoF1lg}hT++t6|KJ8QArDrb-b;$b#u{-cU-Y~%~3$}9&wa&
zM@cssiLqdI<qurKEu1>UY7Y|_OvF^o!l5G^E&s|<3ihJ@QN97hMBG5iG5R@vgOk8C
zK`(rWW2kz9&zN_@&0u<xM<~I0idH}kJdd#7xKMyJyntQ5Gfv<J8lK_A6YnAKIrhs)
zz}HaD)1tVFA{Q9k@dI{V<dE(Xdj(uPe&o2=<-Pl>!>RU_ic5uW;~^?t8^f^(JFyGL
zaS{@gzWzYW=JzgqkKDho0iy#R!Bgmu0T_vwf00ANqtXCv<wlJXo_B)6<%(Hxt#nyO
zl(wt9GxX`=FEi&Mlp(~AV;Ek;n^*>G=>NO0)00kSUd5{@cPjX<;_;Gs6)%J)d4Xmy
z!f%A#2(uC1ZG_bv+B1YV?lPxh_#3^haJ?H1|Ki(b6u!#-5tFe3e<Su9n*^T6En1Kt
z@1axtff_eWJRxNY@?GC|my)(Kui#f!a17^g0mcfKvBDMqa>XlH`47l@ox^7I#CWX7
z4b;4m&W3e^PJthg>u=7GP#bm75uNZTx}Y1nqc8g5X$-_DjK%~^1joLA{?32AYR7+b
z6!l*J&5=(XAi?<0Wy-!tbI5iuk^BuEZ*xHoKjAl=$6Yw@aA5`g?s)f}a^zCwvUNpm
zK@2A>asgYy9?5rudGs!N>}N+V{{SXso`h+54YMFCY<!a~9W!wXm07t94e>C#;7JUG
z6z+MvfY&e`8JKy?+x?v5JyqtP0}b=B5KHhr*1?OfunAw|8|=g`?8i?yf?shOzuoe7
zI4}3M@m>Pb72PljqcIk4Ou$6Eh8dWRId}^a!~-w~vL6BTqS;-_d5@9vK0RJhmA&{>
zRh3h?^2_#h+ke@<KwiD$E;z=iZdokDzvyv(=VS4vkZhWfO>+!{WVry_u>&_yf>k7;
zBc4VEX5t(Ci3_-i+!P@Nwa^{3kn!W)72_zR>LU@mf*7|<pMWV?iQU)(qZ*(2tMVJa
z3-NF9)xr>bj8E_f7)O;{2uDR!MRm+T-XK+pM<RM+DlFxp1N#2ptp0MI^uQT&qIN8n
zom9`-j$m!O<_L9{lvrM5MUv4p<jGCO7y&Jhs*KC0D&w&Y+wmQo`Bfzd!6=HV@Ztyj
zjphYZB^~4NKJKDwh^kD+8vKZ$P*s^2T1{0Z@n#FYMzb(JV>(tKKmVj)IkZCSaPLP~
z9i7!4Qq9HKjqh<A#e!9(1foy_DVU1=2+zgZ@eta<Tsx_Olw3;eFR8XE#?e)FB{SyC
zbcC2`TqF-+{}L+WX0UTrS`BUCOh<QjQFHyIUQ#7<b)*`t@ix9isR&hh6dzzGniN!(
z1t?xfRi48_Y{f+sFRUu>p>w3F977NOjZHSUte;z2+<3=R{==&|98_I+@XJAF@jdgy
zHz;ug#$P9na^!XoZ#YfK6Q<;=pyY2_lH;mZ9%D7WBdmrm?(@I%9cx9Is}e==OG2uY
z2%}nG@!qIfTdLL_8UAX1%<m15>Xtz~Qrx`ML2o<@2X!t0ssBI>#%q|48F&{Gm-nF%
zmmuUresqGws~bjRDn7(ge1{#_iKCF1-b2Ac1hz1`LxQ}mi1)W!juNVS8y~*IS=_^Y
zIE$)Ef2_tD6yo3Ctbqn-h+bHVPp}imaRNn(v#BB-+i?n4a07p1TnV-|Ohu(ARjC}M
zHc~X+yn#9;RizR7V<_Ahhw+Fir7Az;5YFNvjzp_USd6NC5$oN2&rw%>N~$HLH%cre
zl~Ng{krK$-S*ve_M#kn$mC_7I2tzO{NJlS>#W;+QR<(yKa^&T^62$R-3Ddj!H~Gj#
zY%US`|L!&GFJR5@+RD@~>a)|dyzID4cm47%|G-3XR-}A@5AiJy;~J#K1yKkcz`s?f
zypIpC3Hxyl_fRmFQ59+EfT!>xUc~~ui}&yub|7nX_3n(Jhx!M5r!&^g)LpoS;4-RG
zp)5IJeR)+0t;hg`C-5Ae#|v12?bwOE_!0YX8doaO{i~=-2wE^o4y>*!8==&smm(66
zqg0%#lt#lxczFu_unxsss!|Qr@gjc4pSXaOc($<wRe2qs;vl|B^llDv)>Yk7&!hOu
zUz6O_CJ$neh$d);=6Dt#;3J&EX<S4ZYF-;1FdQ?m5MN;*en)UQ#&$e`thg%Hy=Z@#
z-UB@`4If}De#Uv+MHo>ogLt$+R}92xybcc*VlBLoR@sZ_3IvI0OKa@(4$bAHNqzgv
zj6BXnM*2wY$GpyJT}wy{8Ld*kvZ@Ti=aANk!wXo8d{wCv%q@19Ry&2H8that7c1}$
zXiaTl2WL{|m|amT)q$?xW{Lcfcyr@j)`%|O)yi(DV(3>{djJmFG*@|NajniPOnp4s
zSwLG*-kDEZpWvvgy_?tR>RCj(jdU03B}VTsdWH0cb&1jg=;ZhXC-4Wtk{EW-1kKS0
z9?XV@b@(bt)ndmx`Uf8Bh6LVC5~5WLbIQqCK{@h`)GmcNgSEq9&T`t}Bu<!%8Y`Df
z$xzvc^C*$b*oNg;fsa!dRPi;w!ME6oZ8(bJsSLtsh{y3H`e7_4VKV09JuJo&e3Hrr
zwv0DlVGF*&xA+-{@H_s%pSY0f{iuMmv-+r%QcCm<euBc<8(|1$K}ss6k`hU2`a?<)
zn?_&7hxiB;A7ZG-Q5<`Se`k4uBdb5y_vV?q@4=-R9(N^jb}=JA@A6gVWo&iROPFVV
zP^|V+n6rp>tdKKWTYW>1dyw{SS!WS<?9&7Nd-W2-ORx*QK-q5M779?VP!vWaVqlb8
z%Df7zu^qecJ@()vPT?}H;RgPOlez`r+=0ypmL52#ZT5`zJ`?Vosk$Y#2#TRJq9GA^
z6r(T|ufZQ3<qYr7LaoIJg51c1D3nBHR7Xw3p%!YR4IaiL=!idl+W6Clix+y`g`F>{
zGT{kyMPCfSKn%ij7>@CH8Lwa}W@8Sj)Mju;0us>*t!sNb6mc$7ThX4rnKaXkZJ1#=
z-oR3PjQn+oIi}zhl&{Mk1S?Uvo~o3sr)uM0XQ%4>6Np^}rR4)(m|#w0Bq*WneV3Q6
zg`6Sk3hn!*&f;u+5t&<GF720SXIbs(LQbv)6mphuuYW|oIcrU6q=fD8Fgl<Q`r=tU
z2Pypvco8Ep5tE=nYBd)Nun-^MBS=k+S{9^+g%E|3h(mlZFNt-$V~aUoR^7Z$LOZla
zI-W#dJcVI+7L#BNSv5jd9Z5(=J3N9;=!|sq!XOOAvv>}ZF$J^Wm{ZsLQVFM9b@SnE
zyn_{x_SlG>IEs@fNc;HPNU6;G7MO|GF{A;<5cmm4pf+Kj0kt_R#`mbxf{_Soum{I*
z8+BW9pjD5T_gZ=<m2{3&pP(1`*6<L&>qFKgYgvjls8FAF!Fn9Td8n+_D8)8YNiOjI
zD(<3FLsgqUl~IS=-Am|y<Mf3LE?F;w!uaTW@%;r<)&$?Xth8+2(dqJN-J_k4WsX0&
z+;Z90H|P{$)k<f)fETeCORx!B@D092a3fWTK@arA2rR=2{DzW^89oq=Mi_-L_yS+z
zXB@%>{O#Qm<0xeuyK$oaq@-TLW&DL=G*K*?HDz1JVtm?+Gfw2xbkb7o(HT9^6Z5eh
z_gboQR#{2TDigJ@<j=``J92sMi}?hT_ig8tCDfd$SCljLToSoFnS1j(zRQ{JV(*dX
zF05}&RN7EhRKpeg1y4Kb(w^?~FlQxjAs#K!3ROC==Y|(0A7Q{nYqY@#yog0ujNSMi
zSMV1?JC@|Ipd*z<NA$oDT*j4--nkW=ebpzZu~MQH!!PQgKF;DM9F*E9@gPb&8S}9e
zohiALei2T?Ni7PaJkrpny)TjtC6X28kvS!NC*@k5^76IwNlw@HX|7is#ghULj{=UB
za{i#Tjdm83Xa|LC3(n==JMvCjSk_r6cM!c+KCGmbIu@ZM${LvCT-6j$36T++H+jDa
zhkPO8=&BO~U}pwMd@LR%u3h}+P4bi=^|%)8;SzRL4_(D~3gp|e^v#RYBJ~@seG=2V
zCNbUjB44MlRQp2C;*9q4OGbV<1jt=5D43Fa>h#V!iPxU2>>RJj)kn9lqJ^(evg4FW
zN>+~&b;S^5;4RF9QQ9Gtb{e{MVULK{Fdav6>oI!M<EqjWk7GE##-b-Uy25>w?8*TT
zs-b#iUT)zw>h@seXn=8;jXC%ZJ9>EEt>Wyi_8?A~Ys)G3>SXqGH)6_yl3_25g=Dq^
zmr$T5hw3PgKA47gd-{)LId={5-EpN2`I#=}J0|C*h7zXJQF>fO>3071k#`Jrp<18H
z&IqTY?LO_*>dp@CqO!W3xQeo@LRQ%u3-#40qtiLGz?)cvlc?33`or6oOKK?i6vs2D
zj}HCVonbjnp;3SK!T1c@u^R`TW*{8Oes@?NwyI&ASPt_}s=*#4oeC<u@lV$l%Nk^D
zBcZ`qYba}}3S;eycrPXROG~fjte_2&`*R-rGDf544$8}XJ@XRR1C@9&K89F6s{6Qm
zq>3-H+NA_%n6}X6On$VexynabdBOm;GL)eDyC7khKbS)i#1M{DG{A>M<T9=x{#g!l
z&>Js8c~0wI&Y7(3kw@V!xI`JbKvq#d*s7Z#wQ?CRvYqN5<q%6h&f2D>yQs+SBxh0W
zbUSCb_Ej?uyfYG<?c9++vbufPkBhhjDTeYKyDmf{2364z6EG1oF&AZrbEJe~&ohXl
z8=l5M48mZ%2oL6AK9*t)K7YO#`$FD)iS76SPrSg<)C=A@$<6`llTr#PK?C$dc57b4
z+Bcg@AZwk0PhicsKbbGZr}zt3Ur@DUb2x&{I+q=r%AqHL_Fee#T@mvA0dI*p{E@Yl
zoLkEF6{Q_cbCz@G4pW@voayD9{;z-Y`aTz0G(yQrEA|wtm13}JW!gyg`?!g`qf{jV
zu_%i!7=*zXf)BA2pW-v@#Sb`#KX7T3o6f_V2BV1+7Gfn<VIz*B))<B!G(-kw;x=-R
z<&rrnqbge9Ao=}_Q{&j_;p_1n_~01+MCeO&ZuG%Id>hHjd6a&caSd)vf7yHCA!k9=
zE!8bKg5yiLUSyNNALvfid%zruGSoss@C=6G1AK(dIE+h>ny#TnYjGQQQHGk71z!ec
z{m8e(e797$jx)EGT8Cz}yyTPZ=l|^sJtVgycR_7e8vDN$Eu2BxsmqR%Pf1Z5KpI0D
z;&p7pcHDwAOe76a1Xa)yt*{X9;yD`UdAy7Fum^illg5g}8mt|sY7t3X%AwZ7wLP_+
zZRN3kAzF_*&Ia1|^_+Qp-}-%7$Jyv9W>pU2XVjp5YoayUU@qRqdVGokG;;{z(HqhS
z=3@cA!5=6^^GjFIy8$Br?-#wSYM1Lef0dFn&@vJUJ;xCxv`-p1JM=2fROLgg!jDiU
zaA1oNG{?(Why6H((<n8OUXA8xftT<By!aenVmE%m4Na96uw1<Tzy0wYIluj+q9eaH
ztQl)N*@#;OUv1`0bQhgYouoWlunSVIYLhtJz+&vfejLD6T*Gw)Po_nXiiT)}jo5?+
zQ#eyXH+07^yo^_|7Td8GKTPS$ISFrW;67@<!of1S;4uusSWLoVEWtMXg0nb>dkCA#
zz6@>972~k(HSeLu&I)Q9iL%sY0A5B0q-IhhqbB(%brfPy8B#N;QENzz?jec-`fk22
zt_^NW|L|>}zWZ=~$l9{GebW5l2f0~a4m0JKw!0~d`R?ZNU4tMO8K@()q0O9iv^6c9
z4Rbp<{N$S>tz9#Yu9r7*mS|g0R$C1cR0*O4P~s)AlGsQ*r2a<T(|JD(FF@k36030n
zSG8y2DTigW$?;>YRM~I8$BVoR4XBxZokTm_l+8t6s7Schw}tb~JVEA4xC_d9OTNlR
zfvTv7255+9F&v9<3a9ZGa!+I5gM6rkIv9wRScQ$)hXeQtA+HewG(rZl23zm6md@O&
zwx=aK&|WQ^(d|ph^qH8C)mV#l*or-fo=*S6P>h8Kd1r8lJ(G?9b^51=&Wky-*)V2v
zCeq5;Re!F=jERnrDDIce`U&{(xz@9yqk^%!R@Z6uN^xEyPvjtWC4FC%YD?O2_P?o>
zv#z_4lxZ(6pfqKWa!FZ^;{>EkUuSR_j8ixbqm1pOobX^4j^I~RqTH3y4pNWjFb?am
z5mK+&)N9V{7`_S8E2x~}cjY<Ei1)D;KhN>bYwhf%K1KvGXGmwlFuVZs%)jvY48k;8
z9sTh<=3_H%qS_k_CFqRaxTrnTmY(X{#zw`{$40TSXw~G9@?Y&2qqttD@#4Sg>$@=1
zD%x3yT}(c0*CWnK+V~b6AMxd_Hm?Pje>XI9#<-QppDFGk9EKGCcSscqP}C5F!d#u<
zd^W1Ik@uS*Rr?!KJ(ViuMii<-s+$6-awkZ&pM+HXMhGwJo1Fb))SKR^?VZo7-DJve
ze1t8y0hwVC*5fXE%w;;tzD3FL%G<0R^WWj9Xdc5S3eBfv__U)_ncT^#yn^$lQ|N5Y
zqdA3cmq1s|I<fv&@8monbVJrg!8>ioqt4Q$YcAwg{Sr#pgo6dTg9}}?+H>N~p?2?L
z1GZ@sA8|H!7a2vpM#GJ97>`MK171kocVRaq22%f3{us<51{yxYAxKP06OU+&!4%BH
zCj5fGA@Q0=yd-87=Ebqi5VUwm02f1oSdaipAS<I4T4NF>&-X6t=<J}nC-Y%BHbJ6&
z0w<vm^|C03Zs?9zF%3)cG1kLqohh`=RJ@AUFdZ3~2@hst4m51W7JSpm=~lkw%~ou~
zc3j5|<mv2G@**GdBOVE;i+ZS!o7c|Yyms#9HUEFd5ANBi|F>=9+GT5(EuPEETF=^L
zlg3VZe$rTOl#G-I<8d#pyw=JyJ}lDhPpC2EB}pizKRe8r&7aCMljP4RvKCb$odagC
z<@*)W(#*tz+Vpv3xkfDubJv(TMV6AzWlpQfVwt6q#cJmn&z-~aPT}{IN;N69zL@Wm
z_VHuRN7NeL2K61!sTxnPn6~b5XLpC1=<U(fnNM{#ZPh><*v(lxSDOYMo3v`DebUWY
zBPgMIyh}UU%~@S-#?u>|S5&ubOVV1?Agwh6(ps-WT5A@J7W<m_w3M%*q>-dSB>3Eb
zmG$%QKGe_`%y}X19n1Q;t8Hq?2wS~3R{}G%*xuawFHa|6UsOP=o$lPMt$Ea0sz<n#
zsR4T7Nn~IaW`mm&vwi|TyqT5G-{<A{p($4@YIx`McJilsdBZtTbrdP5w&=@t!r7@q
z$z`m(AuDT*HfW1>co-ef72VJSJz*4X4(~VMEBuIk*pCCajXMZ`)Tu<E;G=9Zg?N*K
zRHWfa^u}n6!C1Jl1n*-RmSY80Vm}Vx7>?rvP9lF7r&0i+2tzm`@DOUDHf~->xq0E-
zg`51x>+wBX_N?2pg%8Uw++1?=_=THq@kak>dA&&lBi)uwKsJ{LZ#XiC!XxOiHoig4
zm7u|Rwt1nTtSPd^1WbvwZ)~0NxK;B!mhH8GZ<F(_&{9mvoMHxS&1urFq?u?EUyGFF
zcR5r>bw~?wGj-MvcVKJnM{&dITUy_qTv2oPWM^-@EY-R^<y@i->FumhQpsbquC%1I
znzWF#M(r-%68)UNsqxYjbx;@eP#+D@5RK3nP0$q0(7cN`exP%=TFShjKEbK9V1^r)
z&YwBz^$jbYjEmK^kxx4#6Me&vF&t6*&qB5{c=`q>Vwd$v#=79<<U&r`rkjo!FC$YQ
zm5lm(uRY`3<H#SUq$!C?9Jg7fX+vIe4zneMnC4)fp_+3@Hc0`C9iL#yM-nm@N@Z<v
z+QJ#8e6o@<^C4-@8B;ddeAd3795{nLVdy!_9Fkxui8{_!5=k<bM5{m5l8+=<@^Ou@
z<s(S}`K+8~$wv|_`2<8*kBlS*<g@3ZB_CVDxI4}PTKGt3o`B`DPi=6;lA9z1l**;;
zoouO{o)nOK`0JK@B*Bu8E!r;47VYt~Ecr-+B_CU~U793?8NF2k=TcI%ho5y0&NeZi
z<gquhi&kc;C4;o=a@7+9N*QnO<$6-Ux{tkSsjVbf^07rf-q#=j`8@o#B_Bz!<YS9I
z|27?cJ)nN^N|L>PMxrG@TPwudTOmHXRxlDR`Puq@yl=n>sOO4>mU>D;Kt2ifxa&y)
z`NS@=<Rb}|d~9(~@WnkKUI|KqJzhqlB|lsI6YTL%$S(dyq9s3D{1bff52)w34=weS
z1WP`)xF^`-etD@SA4v$vC($1FY?InOYZ*%twQQ1Xu}`$eJ~6x48;O>(*<zn)A9>oZ
zwA4`&Ecw`Co@kHxrqz~wB*Bu8E#`^7m<RN&ME1D05zI&o$S=tr`)reJflji=KFL1X
z>q!CqD&|v59VNk1CR@yt>@lDDxg{S-u;gQld6IpcNy=`VF%m8L*<zn$k9|^hu{RO}
z@=LbIUQY^$*QJe?dP;&NA6uVKwvY4aTP*oVf+ZhY+>`C&OmcSPjFD)`&ldk=d;F8L
zi@%X*$<G%5Wczrtahs){k`RzjiaqXnQb62YJ1qG~f+ZhY+*9mhO-goSjge@{&ldj_
zd;C+fi@%X*$<G%56#JNyvBy$RNwDN&i+hSa?&^=0d?X<tpHzF?^`wBf?-^#vM-nXg
z*y5gQ@9zzUTk??vOFp)Er`pGvo(C=Y*b-`vu*_jg*n7w_ha_0aVvBLAJ;n=0TJn*E
zfPB*IG1ij;VjMBXl8+=<^0CD@%^u^pW0rhu3HRNWIcy0FPgv%V1WQ?L{W#6uj|0v^
zIgIz6mRj<$#aKTv4Tw#^S*YY=ISX~!&q9qPQ$8-sS*Y!^^`z5fPq3VYx-`pKsI1n~
zgN-C}Nvvm~E?<HvGO~~*!bVa+K9;jkmu5K&m4z%3Hj)DJv7B_eG+RP;=bJ7q`&7$W
zs7te)g}M~mS*Vc|P%6t=s7te)g~~#<Xxq+0U7F=AR8I(qwtmW)O_J#tj<wnMi&=>Q
zCC@zH%s$nUtL?~8a<!d>x)j@4sF4(~7Ry<vOS7DX%0iZr#7GLr$8r|x(ky48vXCwM
zwzE*?vhN+U5(7f6pK@lC6c8`tgfrVj%fhz4Z#xThX_m84Js}_;+gYfK0|>e76%a4W
zS*S}RVSsk&wlkL&`nNMw8<!Rw<Xw8*S-D!!z5Dm?dt0{*Zm+6MG*`KxqLC2}{$w38
zWiP)YQAF!hF6hYuk`%{B7qqX-1vL+mlppxi6wS2a<%25vX6nGlM`Whf<%1T4kLKMN
zxN(;Sv^(X4hUCpyd3;)_O+TuIwBZ$k+<fnRtwPWQb$~XqV$gul72oamP1I-7u2c*f
zmYJqc^A4*N<WSYZ+VILOUDJDwUwwifW)(HOFU|<+rt&SxPZ>c&^7Fg-+d)4TRztic
zR|eIno~IRGd=}^V6IzE~gDOR?XNk}71vX$KwrDec4f@>oPkG9}4=MkY;DjWel99|q
z>r(hja>zftBmW-E$p$>=pap*@--ho79_Hymo%r&wui|@BwmcqL9{M`t4W7`!mx}Vh
zL3#3@JS=bM7y4u5<iTg<cj}Krl1GlnlN{th0yA&%s2h1qf&6v1{JF0D4eJ-N+%l9X
zf5D{xF^>EhjQqJrVjaF4uPc9Nz&!>X^*dzcW<|MwPHv=;@9gEPWBJljz5<l*FXYm&
zTngU9C2P4+<VWyF!pZ^sgo6rqt_PLYt~L#>rj=_JTuE!+jCbRj1;@BU_$GuRDFsmo
zk)U`A#gji%Q_@fm4bTM5LD7^}XpOdLk1lu$12F^?S$P)Ry{J%hWh6#nEaV<1?wC=y
zJI1YW+l#{eB?|X&DBPE!aL<9<1EI_Ut*cN^h3`X^_pli6;{z<mYAAVlCQN=F;mEgk
zT}#uUD^Y-W9`E%KE2UNC-<-MFh-a3xW!}elghDr3sSgjcLX$pjYQY<M)c;k;ll$dK
z{qmT4dA7VfOWt@SzC8Eccm%#Yxm}*kZam^%9;z-+9GAz4%hSOZ!+7+$JgeLHWO9DX
z^QGlk((<@wd1&%(_ZXftMZc0q%gXa!J1nGx@A2rF5A{AKk1CW0_{o#s<iTw6m^FEl
znmjBmn7$_cO&+8r&&!g>V#(95<RMq`EGv0rl{}tGo<b!Lo04Zr$@8P+SyA%nCwZEY
zTb^1Z4<C|8_Q)e*<l!vxToidUhdjbT9-AP4<1c?zFMqKtf9NZJlq!D+Du0M6okafl
zPX4$`{v<~JhD82?L;mJK?#h=t#NX|y-;gYwL2ihYI{@XjJ8pdI?z=-xZa|Woc;v<z
zx!ptVM38SfrE|--H7R_HBAwj-O$E<v;1L)&hV$S_C5n@>P(~#bVTeFsZF{res@jB@
zphPXMd2l)HR7_Ce*!oPNlu9E|Ql%-Hp#|EYomM9{C|cXsJUF#YKR)-z06dLB7>sAY
z-OI{wJdY805u-uv6gQ}$G9KI%D7W+}Q?z$l1Q!kA1{j4pDs05c8(MmqphDH>^L7Ci
z;$1Al5`2PXSb>#Tg*D#gr-Sb2bGNNRsW1qGF$5WSA6xJ(wqiTZ!cmo8g;<n9IW$Hm
z48?O8ju)U|6?S7Ue!xClMQ}CpsK$m{jyL5|5zWvGV=*2tVFDK6bNqxuIE*8>iz3x|
zm=KbXj8t?%e@w&_yn<J;6r1rYj^jjiHr!LZ397-61s4*LgcLlA=a2ypW?>H2VHeKg
zJpRN*gw^CBl4y)(XpWW`fKkve7jNMmeCg(8C(hsxoW})(#t|OWL47npBRq+rcnukt
z2@fW?cmxXG!<YC8hfyn)f0_Z0V|yBv#Tm@6#Xb)14ZIv;e7lC52xpv=v92aY*QdmI
z8|NC(W(|4%3d%R8P-ueQO~?cju%;<P6!u|LGoHJK<2covClMluz2fjz6dbehOlzg4
zGPN~>HRj)?WGHiw2e?$>CKQ~;_CDNchfuz3Z>4#={1x;;t~qytGRjwEw_F)*@fe=K
z1Wd*&SdA^(+B-oB>Q(RAJ3%f-=0O?XLh@gVR{4I=?978HU!t}*e{huc+x?($OZxFL
z!BMkI2Up9?!}paLPf~v@cueN3zBFxoG_&3d4!6u2KYJ!wr>enKEEBj0uG%tLn3tK0
zID*5gn!jp_Q<9Vrr3e3L(KE`Eybqj~tUc@q9%U)b%v{06wJVO`zLxayPF66^8Jw~1
zR#1I4;u6uifIqPh`?ZH}2NlixJ8yr%5pC%0po(!n^7ahQ;vD|KdB{PZxafa>ncr8S
zZMz**JwFqSA1yp6xUuQTG){{Sp&TQFg8K$UMNR}S23exw(l+IxGOq{QW{%gQbCXS(
zT*18ps_D|wgIMCDT(%_=Wr@I+b7`0J1((vk%^lp!QkG;r`wn?**%RGT+OMQrmPpmw
z<+WuWD^<OkH@J7e%<)v!SNfOoS+b9p`j*l{^INiy=j6tn-;#a2Uez)MELDwH5@qHn
zZB+qV_S82@s~uu1P_ni>#Fjl(jnX=X2KNq#FsEz9Nk0}E+}x7hpakjd!z}3u+Db{^
zNP0jw_^JpsjSIKWU4Zm=!-Ja!%ssy-so@cpJi>~RI?kHvmefnu)QghZv!Er19>q!B
zV@>^DQtKD8%v-MnsVl6h%Oy3Yu%#Y}+NL7ZI>Vm6vOsXuoJia33#Ed?B7>U-1T|5M
zkYb;(r;nHP4n=~SRyGd_iTwLzISm(yTDny0SC+A?!`Gm#i`vTMYtS#O=}CHnRx4(i
zKS`=wN}E^Al0RRmNZmq<+tPh?9&1k@T9WxM*wc?odiN5xd>$@E`fhvrCP}XwWt*S+
zmeQ8l)2VMMt#nDt{K-<^QrdKTdTbQw_w4C2C4F!yTRy6k|5tlDZ5*YwE*;!FV3?4v
zOlq=c(KeK}3<t?dvP>CcnLS0H{Xn#3v*$aN(yX{wjIBVv2Hq26X~-14f$PWG(tUk;
zMQm{IfNk@B2)WlTW7+@7HyBTp32qS3*Z3Mmc5`1dvo+m8`W?~(vfg_ysFapi);9O1
zvJ&C4!J(F1d=*_%)>6?F%~#RF<t!CS)hjx|p6;vYReQQ@yjt(_wtVQxQQAIxy02v$
zSFp{`)*Gd*v8P{_^l}w#^RwkfX|wF<zAZPXl5KupeV?<Yr|I=QMS2tSsFB76zMMvl
zG_IKCI8F1_ds=17`qO08qBThm7@g7{a4?gm`RYEUiY>39m1*l+RV;0qrX82`0ab13
zzPcZ*8jz11UHEoG&8ykceQmv-bkpX<{OoeWst3Pm>R^(Iuflt(+cNQ0xPA>=`tdjl
zxvEA$AtfJQWn*gE=Jz#phCN*xdQO~ec3)kGkRDKWS;0{kEpQ?(VC0Ysx!e~lQwF<i
zQ{rWc`2a~~_SJVnyk*5My@9XV)BjI<=NcVVb%x<HB%6y-xfvlMBnWCS4Uij|Xd($I
z1j<D)LO`pCC{zJaEDMX(vASqs0dfmDx&*1qWd*_Iiq?*bXhBqvD%FbOCDIxRR6~?o
z0TJ!H&o_JaH+#OS{nI~|wVpY9pFGSY@64R@%|82_30~OO7bN)=J@KIL6sVsh<cT8$
zdVO|bLYb|9&9FbYP)%~=Nx6`lAt$UyL88}}7bUH)=!^BW$?NO&`u$j+kXk-ASiJ_Q
zNzTebe+5>$kC=sfIJY?Y5%r&QOY-{Q&)kajZ0nZiFUiJ>qiZ<n_rPF#E7irnDXjV?
zJZ^#Cu>kk~XZL>;czMy2VYNLJS&2`E|A}?@nM4IXHEJg2TV|kbxB$bSnoDC`fu&&u
z+Kfoh*@~5#J)j!nq%P0nqp6Gj9`WyE2OO6sth3<5z3v<-O-6q`u}eMHxeObH0Ud{f
zm*Yyb4(ZhxKyWxGas@`?9R4sCV=@jK(Raxnhmiz_oEm&Kcc?<&<+JhlbOs`(p_kuI
zOXlgB_?YZaISV5V4s&N?5Y*u*^f|Af&lx-igFCp1)1ell3yj%5Mgtg&(B|xX5Tgl<
zMzlG9Uxkr7&KmR?N7vx_*I!^|IQ{n++GBJ>o6{eC&Vq+AkieMm90nQ~H>1s&hdw7a
zvI%2f4o&ED4!wv^%8ax(FdWRtLYq^JKIf))FuKH;i?$)68xQPC<X<hgP&y;+3p^m>
zJhV9%AIF8h86(l=OgMp57~wWJSqz-$5Q^v<?@SD#a?VGevnLB@*E@WLzROMw7rX4j
z&@tyT^eq@Y4P__tC-hx*VVy>gIL*%?3i5Ft6&M<0B9@x^7_Vc=Nh`#quo(N$-WSm~
zF}}u<(;0)^oK9h!ti>oso3k4O<D9KH$iuk?2YfiQ(U0gGLtBihbGo9>DKE$AXc*7#
zfU#`O`RH>(7~kGpoyhw?$I&Fl0klCx-vl&YgNqw5240WTYZ*0YbH2uapXOc+`f)mA
z@SIbRV?><&=v(moZ<&>dzK90rDfBtp(C2)F5qXybSm*L2M(thFBRE=>&gg?SXCV5V
zk?0$)L)$PMN4z-GacIDBH`<0ev<<uN#`CXlG))exaXf)@WIm3l#JC$r(F}EH8;0Yk
znn9llZ8&=ouCWlKCzgw1;B4oD;FRaPa5QGneRw~EwM+1#TZ$_MgUgrU&?U%Uj#Guf
zMjX)?;YX)bs^{BA)}lI**n;(jYE&sM)AMockZ}o$4$T<Gjc6M-qpkUvfkGt`R4a{G
zX{wbe#kf2@<JB;ZjX3Cv<@N7iFMj6If^{x!%dqEaTb9ULR3|Q*vCd@-suh>Bs&Np@
zp*#96eXqc=a*eKBOy`edF|zNl1AUkNs8(Et)Zn<7!)55Zd@~+n$c%{YoH0F_mr<>_
z3`e!%a?flWJ#yHJKIaYeITPk!Pew$7Mvqz?>tf9Fv4dySqRsi_K^#(Ie2zBf2&xrM
z3yKqtLIFbH`PYrJ9QvWp38T+hjcSE66%`5RF7!Ez(dQJQIN7Vwl}pgTvc;kGOE^!C
zk%5YY(;t1#K=e8K!sDEK(C0j{3ze(BF{Gj*;dDcva}oNS5yx>fo}s^Kf-?iv3a1SU
z5>Ahf*mL0~PA=M<6Im#499p3|acRW5Bv7F=GQL8a(+-75yKL;asDZ0TV1=OpZH=x}
zR-sbSRG<>kjE^xDOU-tNx6$Whq9EZMML&+NTuw)Y!s&)SXFwPi<75m(o6~$T_W6vr
zOYsXZZbos!xf6XuL^ryiLg8eg&-qz7_U))xdZR+&j6gpRRSKsW6$@t{3KPyL^cfNF
z2&xs%I8-Q{iRg1qp<2=Ss8~1`Ps5iKFq%-IaJt@#JtCuJ7A8K-!t+lJTt^TU31<uX
zoWG*aX}%qQsl!q9U0z1T;?fI6M}V$ebfd(f3VqHb^bI$mZJ3CPg)<kGi9ugE%kU7|
zhP^0K43QReIQ6JlIIU2b7?z@KcnEF7xP^Gi826xU$U>FES%`iV=xekbT7>uiov2#2
zffJ}&9z)gA1r^ICFlHI*ZjiSelU2a;s9NUN>dFNd2KqL|!?w|TztgrePV;d1Gw6Mg
z(EAX*PF^VZS<ZTFj?czrMT5$R*5Ts{eukC$zvD7eP*$KfB~bj{W7S8YjA&?_8Wjqr
zZs;i+OMscOp{Hu>2WF~<o}y6+%oGhhHKPugsTq1o#$jNlWaya~Lx7oyp=V$`0?Z5y
zJ@evgfSDJOVCsdQa!~`!lnXu8;&EW6T6}_bN?$v}LeH!i2h7Y0J)`0oU}jY4nG|RC
zvok6542m0pnL(jvPP_m%^}{|=&z#URCNL}(pE03lN?ZrbObI<hVga6@g<ui54=e%8
zz;aLvR)YJ%E8umIhKV(&g9=ay#(-*Y9q_@s;JqT;bgsj@8$^J<kW4*z3N(UGK}WnQ
zI)O4U44}U4I6)PL{HiNeel&8W>hYt08b|!_r%}Jp^i$~r_i4E_o^Ez1+Ws1q{i6@|
zfB61b&fgcYw?%phUjI4ZhrT}s+V{wTYt?UC{eS!RUv1y`HtxH&bNbE0w{?0O7vHAw
zO<FFVyYJhkRoLeY+qK@IXvGxuQbk>p%C1|h4i#46d)G1M3P#PGHDl8BzSqzE<&5~c
z(G?@JYK9IQjUNZ=QnAc0@Gn@WF08o!*riuvM_8_ZR(@NXHMn#|(7vn3;tMZ|wda32
zThA8P`&|7qy?iT7%V)3h?^~yuLLd6GA6GN0mX`0Kx#O`V%=o`Iy>Z@V?=nmT9psJj
zD!mW9vEHlR9&d;DF=j&V#w_SvSffu0sPJ>vtCBMl@64aIUTw_ehfi^C9qwHJHl^OV
z!SZkZstqbHBT*`}l3%w$6+8EVp@)R~crCaON5Viyg0xwZFiMgjZImSJBx6$dVEIh4
zGyqfP5~U|43C}>nJ*|_ZVn=#Jk_I@^YDuzL(=YBzlFgc=Ws+nQCuyN1*~CejCrLJO
zk|L616Ymk^^{ZqFX933}An7(qvWb&4Ly~ObBu$khn>b06B*`XD(p8dV6DMh`B-zAC
zx=fO6;v@}|B%3%%m6Bu=&kPbTOO|lXdpvQHiY3V=PEwvE*~Cf8ktCZqN#{$FO`N1m
zNwSHPlp#qragsVql1-eXGbG6-PEs35vWa&M5)TDZ7T*vSu*69^>G`WSsQ!*+BPZ*q
zXxYrk`a-m9=w$s<v~22RHHwyvova4YvbmG>o@m+N$$Cq)Z1QC75G@;hMiBigf|bv*
zC+j8Ave}dMoM_qX$$DC}Z1!Y5K~}=f5hvxv--Q`|(?<10Mu*nHUs0S!JD1nm&~nS7
zXv+&~o;t0}qcHlUxGx@@4u`!r>Bj0MS|+kGoC~IR-`xevMrN!oqGcj8R!7k?kr^vZ
zv`l2iQle!dGuF4Ql9Rw(;CK@BH=YnJ^Kv!!by&2_%hgy1M9XGRkGM~?Z1(2_+5bbZ
zaN247w<qgE(X!c-wM(>Y_GIl8Et@@A+eOP}Pu9z#WwR%1lW5uO$%=}W&7Q1!(X!c-
zwO+Jr_T7T)9~CUU$u{pHvet-}&7Q0WM9XGR)(X+G*^{+cv~2cd{Z6!O_GJA=v~2cd
z-62{wd$MMWmd&25nWAN~FZDVF+25FC>EuoJ#+oczCVOLDEm|gfW7UY3$=+CFM9XAv
ztl^?%vNzUX(K6W^YoKVE?2T0-S|)pA6^NG2zH^X$u3&{(_GDcsS~h#KdWx3Ko~&-7
zWwR$MU9@cWWVIJ9n>|_WM9XGRRti}OpEkqz1Wa3iQje@t$t7PnzN<CTF-fw?(+A{(
z$&x-B%RC%OpG%U>ous{zWMe03PayT;WoR+Zlt_HI_c8pC;$OQ#bx){7?Jl%5Rwg_w
z);Ts(+U-3kS~gO$R*IH=Ig_<Sv}~xfv0orqb{AUek#(<V*;vWCQ?zWZWX%yR8!TD3
zik5vjlQm7W?8}*~8$`=yPu4`yve}b0L9}f4WL1ln&7L;)BL&OuLQ6feszl3XPgaF!
z+3d->M6_)7WEF{)&7Q1&qGhuutB+{e?8)jSS~h#Kx{H?0o~$mSWwI~wXtbrHW6{Z;
zW@}=sG|@8I8%vQDp95}A99{L1`gJFq*{X*(ap3@OaO`s1J9AU>{H2>zSO40zD%GFU
zpw6bNZ!c?56ZOTpqlX*RWYznpg@uEQ!h=e33-j{|atliam*fr_QZXcVaAiTba!658
z-k{?C(YcKn1&?MoslBP`L-Bz`kB{mH+Y9u+s_1#2t2^*z!_6w}H#DoiM4vdIcDH(L
z!IvuJFFvS7_zefuFZ^ML)UW;RhtzKW(ZlF=JfeC>OOD|39w{rUU-WB_svDxGj;g$n
zpMOkE^B+E@#`~v^sdN4A$5nZn{=)c^SAXSAZGY0g<+$q8nueMEHOE!S=*&jX%ls7J
zH_B`R`*40Z4pi#PX>7w}Up*{~WwZWev22Mgzl<#p#g_X+<-yO_Mzc?-+f&N6uAe;h
zmYhyi`@OC0Xh`?jt8j%1Pk-o3^-?<M4}p51*RIuT^uL}dp1=82YP!Ds@C6~i>o@A0
t)?08y7atSD->5fRwIA(Ocq6?muf`kd4Z{~p;F8q-MWNR3>MN<={%?Ub@`nHb

diff --git a/doc/TCCUsefulFunctions_CNL113472_PRI.doc b/doc/TCCUsefulFunctions_CNL113472_PRI.doc
index ac0448adf3a7e532e2913ee0782bd7df5b378850..6765e7603c44ff7c5bcf64dc1eb3763e2cf75bda 100644
GIT binary patch
delta 36277
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

delta 38167
zcmeI5cVHAnANO}Jp#(@s2q7c{5_*SR%iVzjp;ze$(gh(>1f+vL2Vy}{5e8ULKoJyF
zAV9z<3Ic*uDbl1vkRrX8NO`}%o88;J-MuK!%kw;cyl>9W?e5HPW`6UXvb(c;IBs3O
zaa;0zlw6^ODDb~XL1>A6I(+o_@nZ^Xii2jLImnEfZCNBvwIo>T^<^b2rDNhn!81Q!
z7h*^kp2Z#un-W@t4X{l0{(&R~Y6-$6#9XV%quZ?)gwHI3a1Y^ABLv~S7J_g9Q9YjH
z@%rtwmV(f#h#>s&k{}GrEeIV42*NWVg0Od;ARrrIKeqH|vaMu@D1(q&KMTUQNcr_I
zf{=pk{dIy61DB)o9hF_2Hi&9aib|$G|8|gkEN}0xV-G?~com0vB(I1A6^}qg;kR(j
z%VYH0X~<?wE<sRARr1jvQ$@9ZN<MO!^kE^fVl~Q){(>1(qC2Q;uXG4tk;WGin|h;G
z@ia=oXm4MGkGr&U<FpNXQ3d{|ghveL$Iq`o3n-D;{<KaI3S(Oa6;8&MTA2PA?EZx^
zPj2DIl>Tj0n2tvYLWmHxiX3U!lpHw>8^w^DtIAwN{Jwl>2)UBVR#8GZ_O)BNQtBbk
zNI9m4ra!dXl+bdyr;QPWF1fH<s)k~r-zqiHhpWddA<tZ!;<p;i3krTr^{!RO7@zS>
z-XWH}$sT8l$C{GNR^=<F9$51yDhF1UPkW$=v9XT%{b_7W6Juvf@|RUIuxn!+Oe|1d
ziE*&x0*R5b2hLJSVqt4Fdl;KiErty%5UE%>$x1m$VHpJ~st1}F7t0@RRbpJ)G;Y>E
z++U`fiIM)?JZyb<B_)kV6XQx|@exWI9H?nrRyH`oDW}1KCdS70MR=4Ln>NPIo+(&1
z53i_eYGjgP<X|5aEUq4C@^Z4HYK&8xR|=~T=}(hFF;(P@U8JDBnj@@@BQ@C(7M;{8
zwNZmM4H_nOZ#SryQ#NABQU2oHY@M2wn^~h2VO$<oAj)5eM-$^tW*z-8I6#`JJZHC+
z7w-;hlaiWjGcVq4)#hbm*P@Ea)pw%<`OA0PS&c#^lo&fZ6|H#YcCdHU7zf2vlgsyY
zAbT~dEv$_zHQ64-0jD;z6jn02gxoG}b~0K~#_eLSMElEkX_L6w4{D5C8{=Vl3;WY}
zG@f~qxiVH)SQ~dxX*|hne5@j-M;6lxHIXDpWjw5BjN-D##;*E{#{u$^_4A<j#VC&9
zKojF&@2W8lZH$v0P-C1FBg^bb;gzx3!`gW2CR@#A_M~VtbFsli{NA{<F>bcDNTS>T
z9yTu4UmJ8lwE`YBi7h#qy`aR<fxkAkWGh>w##q_)IJrz)vW?wQV{8;t-PdVs$#z~F
zdvaJCYjXV{)qxqMDJ-XP$Z4!dV`ZmeqPftvWQVp)Cp%fx?|@SqlftUS$(6Pxvukm3
zrESSB_L}OmOPj>awy800ZH$K%jrSMhVNnT6Zq{Vh*B^re#PF%sW|cda-OUEY$I8y5
zCa~aR*=DuLRrH{W_Egh0h7qOUlaI|R3+W&s?RA5sV37$WmGT_y(_-=zW3xK6jyu^U
zHO8rpNnxG@f0`7n!^+%;$<OKt=CDiau$x!W;iMEn9iCF$@34m@6)(>Fs?Exd`y<eX
z1B)wO;owAZr3qlRT8*)4V{9x>34a<J#mLgzWFeg-q$@~GY<6v44mMBC%b|^NvMXwg
zll4gSdzQj#Ci=@y(Z;ygL^Z}mF^XrhVop-bUEjQkZEkG}57*e4LMa*qN#W6yZck=|
zk`%vipn7b#vLDqL47((yE_NFWE9p;TqZrv^yR2mjw6xiRXlcjkB}wVVc6n^4U~JoL
zL3)Lq^(>|I3cHhCE2;DfJ6ozoq_Ag8`MpYE>81Ssy4ZVaj7uBiW(U<6H^nG5k(Eq=
zlD3p!et9%`Ig;6s(n|R_P|J5%*;+Nms*SO+{AK)UY;1X1#b<||byQ>Q6eD})kQH;0
zV(uWGIUJNio+=#jiQ0t|was16yjM8bva*WCjuckAtlzB^ty?bkz8d4w#<<xbHO8%V
zSeDWSDecL@iuW*YdBtI;eExRf{B2JT((#?lT3&J3X=UrmDV@T}{-s9PSa^A*CQcib
zAy0=+J9|Nmv1?--Y@r(Cpcq+tr!1r!LfV5(dQPV{uN0PA!C!ugHpaz1tWaD&K{#DW
zUDD`k+{M~gtRp(ujEZF}&eV(_EA9;y8)bY{ElbQ}uWGZ$)Cgzk$+nDdlDns{n6%@f
zi``0FE;`wlFLw=T*esRh?)OaY7OCwTG;7Hk^{W<2X);Flt0FRSz|Jsd?qfocw7(Lz
zv%!-}usZ_^h9#6tl|v#1#+F8m&_1tNFr**d;rJ}+xN=OIn)3MYq>j-sY5s&la#OdE
zmRCr$<Q*T<?**jGombSyBa=vdm=MQ{(S);g151a%iHx(@dS!2T#*MKiV4iV|ui)*t
z6Ggn==in|r$1OF*`l?`XF%tC>Drl>|Y)<)_f%QfrUi=>1PHT(L%^eZ6QnKtJe`y4N
z^lEIhT*U;9GpxeUlFfpY@>6JFDcanrp_Ebsyhc;k|0m)rDsa8)@}jhk-5L5<VnCZz
z%Byb^7CGEsDZLY{<M4uBL&c1pK=FeMn}IbUt+2tWY^<TS*9y+O<6AZj5i-sWuPPdy
z;6;6cH3)4{T!<1pR3k*7gY&}7QkCJMCaH24DMKSr5R4uND2C2f+@O}W_8HkD?^=`|
zq^&H&5cP8B3xw-iDA4)I1<af;#6wM-&)H{zByJ75HDy1{NidETrGILxLH(BNKRv(d
zOh)$DTw-8v%Py#|3oG$@Y^Q)8DHv=5>pKA}lG-NLJECs^&2U}&dTd2Qdl>cLRm^zw
zdQ8xM*1u4o6TGReMCq#+==u;I@1Nj!s#{pmMTJb8DnU0%8z!@|hWeN_P)4@5v=}%U
zAH{m0d8xc5yYqORuUXN-QW<5`HUxDmwsKBsV}IhMy~OkNmu6mx@wtLFNQ+pXWBv@d
zw7apoYhFpCyWEksJcU0WeeWu)c&4o#or)V8&Q@LWjt@RFa{ms*=>5yMGoie$rPjvj
zjRJdBDv$TO%(LEDG*~KQ)wOjA-cm}<^^$Pm8u9XcUa;)9ZrTkUliO8K@cHHUwv49V
zv!r(_20L#$iv_0Bd!cxztqZlwzj5CDE?zHP#+`RU#3ljL)Mq91MuDwTn#TvLXOjEN
z;=wY=xq%qYD$g3k)yu)fuE@*qJHbU_kKVmr+mHiK5mho!X5N{mCFy--)h5MOmIcw5
z9i%BrYG&f3cj6oV-Qf5*QD3N{uvQ?JJ?U{^%e+xKSUO(CTs+<{imnGHxhIwimVvfl
zpEHK}_@A~+eqM&(39ebjqYsW*f{mP;Wqoe>lV~R#7BMAOBX6}S|LMkg4bSQRerC<c
zo)RT0*Ea$FmS9?cYq3~Q!075%K3Mj~Uc)|QvCsZZSNxlX8$7A_{KrgpvC^ip-Un7<
zy6$47V<o+f(non;J5tdX?{72xPzji=Ft9akxOVyzU93zGezEd%)j%ism~O~JHPdgP
z>szasrE1PYO;Sb1Jhh7zNq@28z(Y&(-o|CltZwFO4IXOhYfjfy!B2s_v^CWNOH<}M
zZR2KS&kE6<$4l9BuEZC%z-)OlRp6l}mEg{NV+~BDb)x7~zM-tf%hLFgap#jnQPXKl
z%!v)W%q-%}xze*7f$sB4C-6{BK}z4uc_1q-SKe@T)5@Z%lJRIxN!_Rq#fm{-S7Wt4
zjcpJxJLPlfZT^{iPjc%1ASF;3<<$M@<3NFL)ClGa?;pc?ynhDb0^jrGoN6qO_ovdz
z_q2P}BZJ}@cjg85s`<KJbrvr-1U8b=0KC#K^LW4eywaEO@`!n=r`@aO>wDF{+WMkd
ztuJ)F>M&ln`FGrVl3vx7m*E#ix$OAju_druZKxZ}8Ln^x9`DbHE4(E&=Tyyjyg$`{
zvRmz}qxU7_&R2om>Kk3R`nJA4Nnp3~@OZ!bywX3`3zq6>cdKtg{1;OJ%Z-JXXs@kn
zEzxzXuN(e*4n9f8s>;joOQTFzOYUmU4v&`V1fSXDpL@ppT```*Uyim1sq=c^qA#5l
z<TWjUy*8;(q*gp?VYY6L$+Z@5-MNkRE@s?G57V7A-fpfpVkMUQS5dXavBt|wRyUlT
za_%V94#tHOv#SnuA+BIEpGQ8OSoZROMe7y1Rv3f#`u^#}!&~7Y-UvjB|6VJM;{|Fi
z2r}+u=vyJJwZ0y##Ht{zu<F0k3fEhzI<f3k0j=<@t`)kp)qAf@KE~d`Tj4|-HFs+H
z|M*yVkrx=y3Yq%ls-_)+)q{KeYx_X2`7mq6Lp50kuf6uBNx9;C(($pko$5tK_V@a0
zb$6$nEAc}|H91MoD^ZJwnpA>Uef{%+sk9CDw6Ch_^RhI)WZd~7@btGv*8{6`&biX*
zcrvIR^}NzH9;zwm$y)B8U#qXtUsc6-(>u&+{iHkjC3V%?{4@8S<m5NMOQ0~y$?vBk
z4cC<uggxL8cmzsgVZ#P$fleR|{0mG33&2Y73pfETfv^gK5MO~=N2jnBd&Akpec>#8
zb2!_x?kl$DXt<9#q50X8%~2ua>ds^9H%GI@>t}kYxceX*`~@C>hk#so3`!vDBv2BR
z0$R5e7pVBFS%)?rTKC<$CEu<4E^Ff#^JdSRIqjqO-<&t@wU0&(nLV#>*S>gI?EfoN
zB#m`>7DJL{Y)xbdo1#L_mTSwBH<islugVxmR3z<C;t|$ylcNS74^z4a>ZTnJ!A|D1
zrt3A%h{k0hrI~pzEzFBD>7_y`s_0E{A4Ed$B0kLp;TX0Bv4ArK%mN>Sbzr?0U+2Ji
z5RVn0N}w`m0-AysKxgm<m;hFR&EOKa45G2JWCb?R6?6jwz@1C@Wc{ACef{?JS(#a1
zXY$WyGv5E~jp1*kb;C&W{aNtl_LVJr+5WAS@(2)pVdd*=+19db*Typ5lJW4m5@-mX
z2gASwFc*9cHUO&GH9)m14eEhTfNDy$Tn~-{s-Oi9QzfZ_R5_~HAV3wn>u-AO_zp1Z
z@IPbJ|5XeVH<xSqwDY|Fdt5|do(w@#H;4QGV~aMY4v43!eh!p&+=qQ?$811tN$se#
z;VA6C4SoS9z+DiIMYATL510S~%T#os?Om!TOWzjn8|9NR(l71|XBDo;i`!Y!{W#Y0
zdOT}(E}YdkO+>OCyX>s*_BXuI)O|*R`Ct>E;`f6C;5Z;xvcPF@6Wju~!5u&@7Jysi
zW-0ItXbi~Zh2SfYh}FX9KpW5&ya;-MG|;aqt_y}^X9So7=7KN5Vz2}}xcA`RO?=KA
zJacdFu6x^mUb}tm%I(Xx-&?%s-hxj)dUNc(VS@*xX>~vc&)Tsk8q<Yu+K4T96rB*W
zi?uu3eK?M7+ET9nw(5_3aR?L2k*ehCM%h(6N^JqiWpbBXCGXw^9|H351o#U?VL8tV
z8iD6QSFj0`!}4JV(4{(Cf2*SOLxdPEo|`^OEGJFOErv%N()xRj6})bzHrf@3?@zPh
zWOLeO-(-ao;yE_&b~Kx~YoIrlR9Oo4fZxDTa10y=<dcB%Eg%vo{-t2w4am>3@QeKW
z2rF_^Kz*zd&IEJ88qg4HjhSE{*bh#D&RA6I3c5LP+U$;<L*Ott0#1Tc;5N7m?qS{T
zK6n5gg1a~GUcGzqT-Ld)WAt@y|GBN_GC@ZA!t~G5r!RbeVfw`MiEoa3ZP*}zh3;u*
ziRi&z*fZ4|RwRuYs#Ya>u|;XJsrF{RrlUnQIxGC)O2AyCys<<_xTF#)cR>Xuum<b~
ze}MZS3ah~-0j&zR00Y3QU<o(^j)E)zVaf}Vtj;Ssg`%Mdsni@~;>Q+y6W9wl!REy4
zqr%zizs37b#C$)Tt^JLM)j?Xm&ri}gQBxO)XLNQ>znv@G>ggc}p%$TUZ|t!nd*fcf
zEH0upVnK9mrLCwbs2NCll6^E*0llEKOAsmo0c&MtKqW8|902*TR#yn5fM>uCy!d@D
zq1a_@|2(5TIL3OekCW1Ki{+&s(UW~&T{dbhehPZ9S{t)Udk_$_OdInJ>v^#_TXs7%
zyiX@4i-0}WdH)P=v{K92sO67f4Y;YP@l@1$F?cN3J^?i@4M+ugyQ>}O42FXdfK<sR
zD^g9PN=NK>0_(vB@H5!v!6UWp*m-d87CzT*;dA`pt-U+8?8Rr}ij7NWjhoeb+$`x-
zQA;%YEVNKwm+wWj4|=kb2adB}4tm(_-BDij;Hjawo}!#~fZxD%a05I9xohA$4&(!g
zAPH0gl|c${fd-%<cn-7#ok17yBJhIuz!b0)tOXmv5n!n)R1iY2uo(lcoZNYGjqZ~^
zCw=nklLz%|HK-^1`S3$_^hjy;(~%^Wc_67xqTbs_@RqzJ56L_7jJzU`^xjNDnBJoh
z*82BK?AWbTw)<9jw(dgt>6gUkFa!$vhCs!pFUqZtJvQjjP;WsD2enURmG6n4sZm8r
zgEF8j=nDFQQQ!kG1Iz&{KqjCc<DCb&vF4ixgo6lB2HZHccT?t<nKP$+@Y*Xqx-_dn
zlK}k{j7bYCUth?0=lCcw51m+654ngFOH9*3B&AYvW$aVwy#STW0G0Y3pi;8{l}M#^
z1l_@#U=qk?-5$iTHy^wqRTaf>mh`YZD|)O-xNqhQrE2Fbn#i6#w$vL%ewG7ufs#uf
z>?=9V$Nn~O5d03ZL4julVHwB-Yr#=a4@<jEK}RqMWP#J*0=NQNV+p!D=mGkI$>8VO
zIQ5^w&RLLsBm45X(<grSefI6zx@rBIZ&!S?X5m~maqgRA2ls5B@$<==Vn12CB5A!l
z9i*2=F~iGyLP@GQ`4$Zn|H!w~pagtSd{q2Wd^v~WuYkpM1R(>&Vx8EQifODKJAN;o
zUA&j7T=__`c}ULF@vJH?f#!rpP|pf!SY<G4a{6;`G}VJL6Ol<GP%``x`{%)*;0Cx2
zLQzNzC<3U!(jXbwKwa=0XbZZ7Uf^}$1yjH*@EKSHz5-u^C8;>)T)%wwa@OHp8xMcK
z{QJYpznVMs?UBAu|1R|DC<OjxWc^WG6a}{QWD$1sWbrnMR5q1C`E3WkfvQ+)cYsg9
zmmmh~%?Y3b=nO`Hv0yP+4t9V&APlS35v=vu;_Rb)4(RA$*UqLX`jK{dSnXrE!ee_b
zh8EN%vB!p-o9tbJLRW%qKyl(I_WuF`9Ecz%KovmFB?Bw40XraP=K^w=oUIJnf%br$
z9uCOq1%RAh1IX#$z`=S#E#VAy&Vs8T4{DJY6b1KhU%!0j*#0xy&TLq_8lM$smVQ0|
z>)A7xPWup-9-{}09yfYi8vRa~-8p}Zo&Ga{t@@)RP0zjyi~=#fEk7zt`IQ5;KpoHn
z^aL-1{$MiL47Py7;25|E?t_R1xbOfyKu<6gFt8f@0Db}a8wx@(kk|=dNuVAW0$u~(
zg5BUZP@oa!ED!}Mfy&_K)te{xZQZviV}b7T*{08CPse8hE|_Q2PoP=R%jejd^NC@o
zrLQH6vY*ZueZE`-+_VC!%3wg%Ay>&I#hb?1pAE<h@}Q7hdJ}BZz(8;jTmyv~V~{jv
zgD)hYH^npWHR@3`GI56@Z!26c&mNu)XP2_dqjTl+b*{VpXULtahGh{OdvS<w%J(@M
zLlx}<`T{DBfrWsIj6!i#WLGc&yai^1IbbDN1-5}5-~>1cayLPr2Z<mFxPTk904>3b
zpcn0=fkj|3SOT_yE8y~x9b49K!KC-u6vM|mcG%c0V_ys$zBpn9uHIm~FE#EWl#YcD
z<S+Ts3)v~fC`B}DDhNA4XI%XL3Vs7&&C#1cZ}2i$12%vQ;3|k~fuYmFC%gATI7vUf
zt5_cLQxk;aOdF1~tb;{d4EITYA}gM?#D10gG`_>B2|`xXyu-#`AM7ncRlElBz=ymb
z5hMX8aDl;KD0mM{0-uBV;5)DyWP=AF8h#fBl|dEI05k&Q!2~cH%mMR3Cio6~-^`1~
z!j8V;%~8qcK`%feOb0&z5`si{2#P`k5~7Ar3^Y8phrnS_>p5J)gKNig`0PSlxnDM{
z&BP~TamJzrbMTopb=IU=)Sj3Z`ZRkHKb0uZ`d5LKzBvnRT8902v%~-)r5%ds1Tp~?
zOGRD*k3a;9Edi<la-%iq0EUD2z+A8b`~oh6{4H?}52}IA;1%!|VBqVPbj{9Myb_)x
zT`{zF-+B&EyT|*NDX_!7zMblgCn;J1@`d~u0Tf@zkDY*g$%it@pEytqQ~=}~`85!b
zZ{q;@Hx<x7u<#Z58f1Vy-~@<jh5i6iK#Nv5%Rh&mmY^Nz4KQV&J-+w&mUaB|-4glp
z#m8SveP`-xQ-{3VO&L=eSMNlM?COog0hr6EEvRK^%a2M^+39k*f5>H*&=fZj`yYTc
zU;{{O4Xr_c@D11tV%lJJ4!jK}fmUsydkXZ74;V)@jVa5kfm@o|^3pX2JN&RLn{vOm
zH-@U221bC9U^EyD-T{hF4EsNT9|8GCekB7d7zmbtw`9MzWBV8gZ6PIS1y+G$phY{}
z^MkEm8z|epJWgZnaca7J@60`%8-LyK>;Bd0tJ4>xubw>xpLfTP9@1w>x3&VinEhoG
z@8?;4(}aPI!$OBP4r8DHRe>G;t1R34R}@=$H<IPP8_jOsDbjgzxiX4PXp-W=YT1h{
z*^@T#U_00i$cf6JJs8~qi`rlv*aSvAkDde4LH6_VWnE|OC0)Gll1{#ylg^4_9BcdV
zeQ&fj*TKknKKK@V2R4JP;3zl_?tptB3MEE^Dxeyu1L}fypaW36TZ{dlfZ}B?c=sy!
z3Xr#+jxV6|;F4`>C!CnTBCrH32P?oM@EF{?b?y8y{b&E4Uw+6)UzEOQ!N&_`OrG@C
z*x_l^(c^qKkn3J#_a0@j3y)*i5826WDrEbL!%T+KsKgKCQYGZBl=>>X83`J7h8+m+
zf>R{;8DxRNU2**nCW36%8h0OEAB3~9=*e{E=!g9`9}KUsLK$te4Sui?*A|88se<%J
z9<i9zR}|m$MpIn{cn}GqKq)W;D4vbQ{%c?h*b26RBj6~w3@XFx2B0CJTC@VK!5lCb
zd<vF;rQi&>2kwJxkiSb6Ugg`DZlBFMa&XV)^(!}jvw6?K1qbKMn*8o-lZQ?o_|m}c
z9R~9HNw+LwJIl`AQqvHzgS03_ENa=@OWF`3KI^3grzL$K_-2=mLkePcnbg|lTZZy&
z^YP>4rlWj6@3|N|TehIz$O+NPA{B*`4J}k9QBxEFv7i^|4PF96!7#8GtOpx_m)dI+
z*a`N4-@qwAZTJVc0<M9_pb*-!2q*)}0Vik-nu8ZXZ!i?R1E}3+fsesia1NXYe}V@$
zE}gh>;KuGPySF5)S-E@3$|aw#+`V$Q?+eE(ch8<VX~NJ+1L@j14hrlmbHVrcL@43w
zu1EVopS+?pB$pU1y^u?MuV6%xv}xY{{ux4AWf99-_P<1OJG)a%d2;6iP#*Jp6|fnM
z?~a)lECMUQkDx{mTm^#u;3%lq6CDWb2Y-OaAR5<Q<v}v=yomXuBAq2^eXYE2eH?4#
zzBO6jmvfh(`P-)17jigYC$Ug_2@AD)a2X|a&LfWU79k<;f_s`;J%d_33u=M)z$EZK
z_yo)ba{<--2)GPx01>sefG`jN;(-g)26aGP&=P3X`mwtg6BPmvfg|85xD7&j;3NP%
zfMgs5MglLG23CS^!QBgIvyL9vnf3F|)jJPl9aw%~`O)P^7vb~y(a&ek{BY(w@@Il~
z!l(&e!S{#LFD=0Pp4tggqcHI$>ANtoP&}T#;kh2d>DxCf_~X3OeWl}}Vy(OwVAO#G
zsb4NJo}Sf-&i$}fI#o6DX9w5`4uQj<DVn)07y}qs0X75b2KCYG9YF0~7+zoqxC9;p
zp*QLb27@8sRWJ+;2P45KFTTcrvEX$;$K$|wuox@>%fNE50%U-b;Qnn~y4=2g0iR>n
zkL@`2!?EQ{zPvE^WB!@(zITLoL|=U4UOc2<=a+G5;rmG-9~aN$9bd0$Vc+DC8}-LJ
zx6~s}jPboi$}Qw*yc180-~p*1AB`ZIr|2iU>cTi3VZM>7go`buIpJcWR47a=?p51}
zk|>W%=v1#>+R{-44`~P*0Mc_H7!BS9)4>;DIam*V1;@Z8@EGKW*2O?&K<&^H@U|$1
zsRswM!7{KB{0^vr1ZhY<v3TaLd}5R+MdlY%rIY!^q`K5*xq#AUL$Ob7HUdzajRw?Y
zuK{YZe*vZ0mSR7>w{HrdXW=<P&&er%;4ZpH^&x#wNE|7BR7k8EmOD}?QbugjN0g=)
z6wCTV<f|aJhSrc*DSdm9=_rvp2z8EIAo(R+wt+TaF6!w2o8sTY&cr7>kR}!qUn9q=
zOQF%C&2k}4az~4+ak8SmcnaJAHvzeD8zi9k;-DI+4#*`Ncm_NRYJu7y71RaIK?~3l
zv;yS*o8T?*HdqSM!OvhL*aUv@;_D)~1ai?y0OSQ#Kvhr;bOfEi5b!D(3WkACz-%xd
zEC64CFTpmj9qb1Oz(Mdk5c*<j1QrkiLV-6IzN&%hzyX{f1>E@a#z}nm_hH{YzV~kP
zharZJ*7z)zX|4VHN(=d49pEF8CM$V##(9;WxAQ3amZSKnmIrRVrUiUsO&!VtPNIr6
z{YqGkq4a8q-$v&IO#ra;y%Z$Wr?zSf#sS`DQlY})C`<lVq$}~bJX=^;{KWF{Kwp<B
zBZN|uQuF13s?=IhAP$rOr9hQFQmG<hwq@EYQi)hGD_&_$YB_2pY7tUDrLPnpFaBn!
zJSY>z6cTNuybHL22h;#H!871lPz%%sbwDbp+gGwBh^sBx$RGh36xU|J4RFGT;oWPO
z&Yz-xacu&Pfnoly8ifPSLGqL+)r}J?=F3$V2`O>5Ny1@l@Wlvv<P?JWF!N!exW$q`
zS?~x>AqC%7DYCBksv#g;V<DtSVzM~cBq$)+`1-nhC_tCUTEUPH1r-b^O>ju9ON+0V
z1_qQksFAKj3eY7>G0Tew>U^75+u$1o1(bNQiLOKn(B-qoWyptu0`h6yT$c|81mxo~
zYR-cK>gN({#`-CNy8H~<yCj45E;H?wKwW-A8tLlkk|-#kp37S6>PZ2*d<?p~B!liH
z+v)P509`%?-CYs|1?c4#l8t&PfdTosjr#K-U4AC|yX8jF<!8{}?bAO%uW_Ap^`rn@
zJ_g<0M%}M>*5yM1x_k_}yM4OrtXh`VwX$0>2{LH!HfrxN(_RS-DAi-so(BbJ)vBki
zjufEF$Dp~#sQLO{x_l@=mybbnk5BV}zTm+;X_&W^KwW+Y?L9{AJw~BTgACexeA;WY
zvPnrV2h@=VXneAvZFF<I5)_cnl>WMWC_tBwPIJmfH_sr*IM1koy8Lw7Q+^br(VmhT
zv{wUl`RTN${B-k;O}aK%S5FGi<)hP`@}Zyry?PGS<wF4h`B;s*^PqtGS&j3&O;7@L
z`5E-L8uhoD>8}Lp@-ygf)z3FJY27GYJt;t!k3n~<QFrTDT|N|`%g3O*RX^9*1ZoW3
zSX2W8^0OKB=RpDbBe7Y2JW!XPL4TWm&ap`!jnmbW0(AKpbhjCG7bocQp#WVz2HkB&
z-FKJL<wF6wd<?qVjQu^etS%o42*}57)SCwd=xsOCTL}ypVbv?>N~8c?UWV&Qn_!m*
zfX+9A=60jzpH<S8NCCQh44T`GnnzXD<wF6wd<>e~jeXr=*4LH50IeQZ*Of>C0a`iC
zbXNicd~^6ZwMkGwiGyvr5-C8J$e_8ysQD>}E*}ce<zvv?;nQ4arMq~sp&w9CfY-ZR
zy3!~hKqse}=1O2diB4mG=RpA_)~TT@kpgu280HnHab8*ej4mGv(B)&$+v(F=S3i^U
zDQ*~jlVE`7pVrnFkoj<ecq(t^nGZy}nCDZh24ZzBGjXzbD!2b$b{JkDjQ)0pc(P{R
zdRVwEiiKb4{2sAF%oYn4MZgZQ6YK_irLw<?pLU{OCeWMR^tv#;C`oS^())4r&KSMw
zL~rWQi!Agi1wG!U$G`MAk{+AU(;9j(LCe;(;z|oibpK7a%noVKR7<p2Q?l+A%S(ls
zrHWLaS(01BF9D_kt=(Y(L7+!gR2i&B3iM=U5Euep1;YSVKk46z7si0sz`p=39*+la
zfVZXaePS^${Um|jp{KXB>7`zJ+m&8Dq?hgJl`(qjiC$QtHz??dJ3Z;8XO8q(jGiOV
z!X+&l(o!6)h0p>AEm}}@lvMzzBVgf9XaMjqRlq{KfVE=*Njp$l0rs@SB=iFVz$;)d
z7z&1ikzh0!3tk7~zy$CncniD(XjSiB@E&+S^Wi?RS(tZ8Sv<!9N5MX{RX0@f5a?*d
z10S#rEQd#rK_njQjs;u65kQrk3zmQ)c!=5?3<a~$e&@hl@GKrtP6D3*>NwHu_dT9I
zE;_vM<LHjl9!F<}oDf;4wDh#-mM)zZdsnof`#3-+&>Qptlfe|gz#8x~*qb@}578@%
zJEi+)#Ce*LV8t2<E?>`yangpfVnbbwRf;_)j@AX*q*E8L4z>E6SV<RS=P?oI4KWU>
z(Rs0f&K$#=%3XQhP;Ls(sLY>+jBrbTPK=d?{V6uq<>uyT&KlF;mWa}%T+pR)q2|7-
zEV>|8(##=N!6jWkCl;3;AUvQHT6l0?6ff%n?UMD9xJMW0kfJW@s_YV+6j)3eciE6}
z3Xj=`7@aHY&mu*+D`FL00dA@16+;0Yp3Uwnx&mkkz*lsctGWW*RM%qCh^x8+=q7*p
zRb2sY!A^n2q@-(x0vtSMm@&r5W40J$u<&+WY!Fakx8$qvE7uMFxOp}kuN#W?@R*`E
zbTPi0?;E-TJW}E{H14_^Vnl$V9#pvGHPr2%F$PyjXVF!w-4r8rX>cy5m_CRJsD?+H
z@+b0|YfO>CQyehHV10@5inwLSYY_E;h6vY{j=OY9@vp!bx--N*B*lDdjKSRv#auDQ
z;QE_l%H0kqhjNqa-^~~!*MA0LH1((36JPyz8dJ#i&wa;Gid_F%h|%TctN#dN3c3DE
z^)XhZ{%4Iba{Wu(6(hasvaIiJQwSHj3+-^`>xISRz&LvjagH3~oH@j$cyow!<q+r2
zA<h#tjv6wsf?j2jobDa1x=3xDEr+<^%HY~FhjdWJ8$@m!&PsuvYMlwLj151T37*cV
zOfKIe0%^}VF*=|t*mDpAH)%o3u;aEXSoydi%OTDgyersq5W_A67sH-|7<N1u33OD`
z6&!|sqN?x6K^fde=`z)(3$BcVlnK@q92kj#o@z4<-c1}iDC00u#><};QJ2+AqZUY$
zLNI5XIVj`IK^Z6SGeu439Vf2d_x~kU4CtNC93-Jy1ozN|OIbX41tEYgcGr~%WDkzD
zlupENB@%I+FYoxaHUuhkD~+pQnY-93B;pELiyg-bEwJBK!;9D-A@d=&T2A2jL|NQt
z&`wl2l}6bAJD!J4PIM@b8wQyHxNlK7ihYGC6>&LDKLV$nnYgi0Xo%~7g(J8JP`Ho#
zH-*vFaGxPl8aG1<Ws-4UCzBud3<@dOSJ;7l1#cG{?xtiWVXLqf`wC_4cs&SomH7Z$
zVuj36Y>7M$PDgBsH)RSq@n9P)lR1hlQ7;AUk1yf0Ob_%U;+)K4yevo19V<~4_h!VW
zGISS9bdVW=?P9P4gyEL3KPXlU1%dF|xDy2zL7_UhJH_qdqExj1uk~PDAGbMR4Y&Z>
zHNgE}L%hx02=|fT1Zau-%86hNc)Kayrfr6oTR@BEa1NBiJ?CiLI<EtC?>QB>YKy?D
zZP1_E!hv>3-yZLv;TCK&82>zOtHL^BtaQQKN!?dkYJ|WWK8nU*`zF|pQKRK|9BZM$
zW7Y92jurZ2;3yO*gI18Sq0eh+j$`1ZFM&pl!bI$AnS*03**I26#-LE>fc?Lt3v2>G
z{j~v|F@h9^VB{#A!oI=`3?79!7(@!qFo+aRVh|}jz#vli7Y2|*1q`AJUitzRF@h8#
zF<KOAVqako_7!?!uqb?leTAQ~uTTjCgm_VADz*eIV-WP?YA=0-W7H7cWZuJ;D1;G1
zd@GZMEztynhxk*b4+al$S!M+W5U~dXh_GYu5MRg?!(bs^sEPK+moNq_1G@qJ4ssAk
z#0Y8xqH1F@16M(jI#>(AC|V5Yr()q4IB8%#xB@yhz>C}%L{%|(mV(ouEe6l~U_GFp
zh<uL$bPBY_0NT|Y?OzF_=yi;sjbJH8(F}~B#b5+RQM0yipdB)3kHspCpjH?`Z-IUo
zM4`Sxgdu~!5I`fSLL^>v1uuhsU?h;hci?;Q3pfk%MBx<|5bed69kc`OK@Ttv%mbf;
zCE!;;|3v#$kPYGsp-+HkKqJr>Oa$+OX<#MT4-SA+K#a!wGoUo62A%_hz+m7Vi?2_>
zk6;bh0?vc5!uYiXhyhN}0Xz?01aE-(U;#)6yTCPY9XtRDF_;fPEzktK4Bi8izzpy$
zI0$}^LHnP^PDl})LqJ)O4Cw#LIRv~4UI%l)TJRIt1}=d7v6x&yEO3F2pcCi~-UMHO
zFTrxK2iyQR!6Q(jC|>vhb&8_>n_;IvcprQKW`gg)A#fO+0lDHZ+k*1I2HJq3U>NX%
zPr*8{9_#>@KzKY>2SFV0fEPe#&<DH?7J@}yd}V;W;1;+Igkt!C6G#PhK?^Vtd<Z6k
zkHKni1RMqDK%NA2K2Q-jKszuTi~!@oJg@=$40eJmpkQ%0ABnGGpeE=7x`H$?5qt%{
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

diff --git a/src/TCCAssertion.cc b/src/TCCAssertion.cc
index 5813a0d..ff5fd06 100644
--- a/src/TCCAssertion.cc
+++ b/src/TCCAssertion.cc
@@ -10,7 +10,7 @@
 //
 //  File:               TCCAssertion.cc
 //  Description:        TCC Useful Functions: Assert Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCAssertion_Functions.ttcn b/src/TCCAssertion_Functions.ttcn
index eebea19..618ab23 100644
--- a/src/TCCAssertion_Functions.ttcn
+++ b/src/TCCAssertion_Functions.ttcn
@@ -10,7 +10,7 @@
 //
 //  File:               TCCAssertion_Functions.ttcn
 //  Description:        TCC Useful Functions: Assert Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCConversion.cc b/src/TCCConversion.cc
index 27fae12..f34b3ea 100644
--- a/src/TCCConversion.cc
+++ b/src/TCCConversion.cc
@@ -10,7 +10,7 @@
 //
 //  File:               TCCConversion.cc
 //  Description:        TCC Useful Functions: Conversion Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCConversion_Functions.ttcn b/src/TCCConversion_Functions.ttcn
index f52ea2b..36a8036 100644
--- a/src/TCCConversion_Functions.ttcn
+++ b/src/TCCConversion_Functions.ttcn
@@ -10,7 +10,7 @@
 //
 //  File:               TCCConversion_Functions.ttcn
 //  Description:        TCC Useful Functions: Conversion Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
@@ -969,5 +969,5 @@ return boolean
 
 }//end of module
 with {
-extension "version R35B"}
+extension "version R36B"}
 
diff --git a/src/TCCDateTime.cc b/src/TCCDateTime.cc
index 0256c88..37b444d 100644
--- a/src/TCCDateTime.cc
+++ b/src/TCCDateTime.cc
@@ -1,6 +1,6 @@
 ///////////////////////////////////////////////////////////////////////////////
 //
-// Copyright (c) 2000-2017 Ericsson Telecom AB
+// Copyright (c) 2000-2018 Ericsson Telecom AB
 //
 // All rights reserved. This program and the accompanying materials
 // are made available under the terms of the Eclipse Public License v1.0
@@ -10,7 +10,7 @@
 //
 //  File:               TCCDateTime.cc
 //  Description:        TCC Useful Functions: DateTime Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
@@ -198,6 +198,124 @@ namespace TCCDateTime__Functions
     return formatTimeString(ti,msec);
   }
 
+
+
+//////////////////////////////////////////////////////////////////////////////
+// Function: f__getTpscts
+//
+// Purpose:
+// get special timestamp called Tpscts
+// where 18020714540200 = 2018 February 07 14:54:02 GMT+00
+//
+// Parameters:
+//   pl_sec  - *in* *integer* - time value in seconds since epoc or -1
+//             if -1 is supplied the current time is used
+//   pl_tz   - *in* *integer* - time zone offset in seconds, currently not used
+//
+// Return Value:
+// charstring - tpscts
+//
+// Errors:
+// -
+//
+// Detailed description:
+// -
+//
+///////////////////////////////////////////////////////////////////////////////
+  CHARSTRING f__getTpscts(const INTEGER& pl__sec, const INTEGER& pl__tz)
+  {
+  time_t rawtime;
+  struct tm *ptm;
+  if(pl__sec == -1){
+    time(&rawtime);
+  } else {
+    rawtime = pl__sec.get_long_long_val();
+  }
+  ptm = gmtime(&rawtime);
+  char result[15];
+  sprintf(result, "%02d%02d%02d%02d%02d%02d00",
+      ptm->tm_year%100,
+      ptm->tm_mon+1,
+      ptm->tm_mday,
+      ptm->tm_hour,
+      ptm->tm_min,
+      ptm->tm_sec);
+  return result;
+  }
+
+
+/*
+Semi octet
+
+Each half octet within the field represents one decimal digit. 
+The octets with the lowest octet numbers shall contain the most significant decimal digits.
+Within one octet, the half octet containing the bits with bit numbers 0 to 3, shall 
+represent the most significant digit.
+
++---------+---------+
+| Digit 2 | Digit 1 |
++---------+---------+
+
+if ch == 17 -> return 0x71
+
+*/
+
+unsigned char encode_2_semioctet(unsigned char ch){
+  return ((ch % 10) << 4 ) | ( ch / 10 );
+}
+
+//////////////////////////////////////////////////////////////////////////////
+// Function: f_getOctTpscts
+//
+// Purpose:
+// get special timestamp called TP Service Centre Time Stamp (TP SCTS), 3GPP TS 23.040
+// where '81207041452000'O = 2018 February 07 14:54:02 GMT+00
+//
+// Parameters:
+//   pl_sec  - *in* *integer* - time value in seconds since epoc or -1
+//             if -1 is supplied the current time is used
+//   pl_tz   - *in* *integer* - time zone offset in minutes
+//
+// Return Value:
+// charstring - tpscts
+//
+// Errors:
+// -
+//
+// Detailed description:
+// -
+//
+///////////////////////////////////////////////////////////////////////////////
+OCTETSTRING f__getOctTpscts(const INTEGER& pl__sec, const INTEGER& pl__tz)
+{
+  time_t rawtime;
+  struct tm *ptm;
+  if(pl__sec == -1){
+    time(&rawtime);
+  } else {
+    rawtime = pl__sec.get_long_long_val() + (pl__tz.get_long_long_val() * 60 );
+  }
+  
+  ptm = gmtime(&rawtime);
+  
+  unsigned char tpscts[7];
+  
+  tpscts[0] = encode_2_semioctet(ptm->tm_year%100);
+  tpscts[1] = encode_2_semioctet(ptm->tm_mon+1);
+  tpscts[2] = encode_2_semioctet(ptm->tm_mday);
+  tpscts[3] = encode_2_semioctet(ptm->tm_hour);
+  tpscts[4] = encode_2_semioctet(ptm->tm_min);
+  tpscts[5] = encode_2_semioctet(ptm->tm_sec);
+  tpscts[6] = encode_2_semioctet(abs(pl__tz/15));
+  if(pl__tz<0){
+    tpscts[6] |= 0x08; // set the bit 3 to 1 -> time zoen is negative
+  }
+
+
+  return OCTETSTRING(7, tpscts);
+}
+  
+
 ///////////////////////////////////////////////////////////////////////////////
 //  Function: f__getTimeFormatted
 //
diff --git a/src/TCCDateTime_Functions.ttcn b/src/TCCDateTime_Functions.ttcn
index 9343310..9ebb0d7 100644
--- a/src/TCCDateTime_Functions.ttcn
+++ b/src/TCCDateTime_Functions.ttcn
@@ -1,6 +1,6 @@
 ///////////////////////////////////////////////////////////////////////////////
 //
-// Copyright (c) 2000-2017 Ericsson Telecom AB
+// Copyright (c) 2000-2018 Ericsson Telecom AB
 //
 // All rights reserved. This program and the accompanying materials
 // are made available under the terms of the Eclipse Public License v1.0
@@ -10,7 +10,7 @@
 //
 //  File:               TCCDateTime_Functions.ttcn
 //  Description:        TCC Useful Functions: DateTime Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
@@ -30,6 +30,7 @@
 ///////////////////////////////////////////////////////////////////////////////
 module TCCDateTime_Functions {
 
+
 ///////////////////////////////////////////////////////////////////////////////
 //  Function: f_time
 //
@@ -160,6 +161,54 @@ external function f_ctime_UTC(integer pl_sec) return charstring;
 ///////////////////////////////////////////////////////////////////////////////
 external function f_ctime_ms_UTC(integer pl_msec) return charstring;
 
+//////////////////////////////////////////////////////////////////////////////
+// Function: f_getTpscts
+//
+// Purpose:
+// get special timestamp called Tpscts
+// where 18020714540200 = 2018 February 07 14:54:02 GMT+00
+//
+// Parameters:
+//   pl_sec  - *in* *integer* - time value in seconds since epoc or -1
+//             if -1 is supplied the current time is used
+//   pl_tz   - *in* *integer* - time zone offset in minutes, currently not used
+//
+// Return Value:
+// charstring - tpscts
+//
+// Errors:
+// -
+//
+// Detailed description:
+// -
+//
+///////////////////////////////////////////////////////////////////////////////
+external function f_getTpscts(in integer pl_sec:=-1, in integer pl_tz:=0) return charstring;
+
+//////////////////////////////////////////////////////////////////////////////
+// Function: f_getOctTpscts
+//
+// Purpose:
+// get special timestamp called TP Service Centre Time Stamp (TP SCTS), 3GPP TS 23.040
+// where '81207041452000'O = 2018 February 07 14:54:02 GMT+00
+//
+// Parameters:
+//   pl_sec  - *in* *integer* - time value in seconds since epoc or -1
+//             if -1 is supplied the current time is used
+//   pl_tz   - *in* *integer* - time zone offset in minutes
+//
+// Return Value:
+// charstring - tpscts
+//
+// Errors:
+// -
+//
+// Detailed description:
+// -
+//
+///////////////////////////////////////////////////////////////////////////////
+external function f_getOctTpscts(in integer pl_sec:=-1, in integer pl_tz:=0) return octetstring;
+
 ///////////////////////////////////////////////////////////////////////////////
 //  Function: f_getTimeFormatted
 //
diff --git a/src/TCCEncoding.cc b/src/TCCEncoding.cc
index 182c95f..02d2cf4 100644
--- a/src/TCCEncoding.cc
+++ b/src/TCCEncoding.cc
@@ -10,7 +10,7 @@
 //
 //  File:               TCCEncoding.cc
 //  Description:        TCC Useful Functions: Message Encoding Functions.
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCEncoding_Functions.ttcn b/src/TCCEncoding_Functions.ttcn
index 6c00fbb..ba0b643 100644
--- a/src/TCCEncoding_Functions.ttcn
+++ b/src/TCCEncoding_Functions.ttcn
@@ -10,7 +10,7 @@
 //
 //  File:               TCCEncoding_Functions.ttcn
 //  Description:        TCC Useful Functions: Message Encoding Functions.
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
@@ -730,4 +730,4 @@ public function f_enc_TBCD_hex(in hexstring pl_hex) return octetstring
   return vl_oct;
 }
 
-} with {extension "version R35B"}
+} with {extension "version R36B"}
diff --git a/src/TCCEnv.cc b/src/TCCEnv.cc
index 40757fd..98281cc 100644
--- a/src/TCCEnv.cc
+++ b/src/TCCEnv.cc
@@ -10,7 +10,7 @@
 //
 //  File:               TCCEnv.cc
 //  Description:        TCC Useful Functions: Environment Handling Functions.
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCEnv_Functions.ttcn b/src/TCCEnv_Functions.ttcn
index 5723950..03db751 100644
--- a/src/TCCEnv_Functions.ttcn
+++ b/src/TCCEnv_Functions.ttcn
@@ -10,7 +10,7 @@
 //
 //  File:               TCCEnv_Functions.ttcn
 //  Description:        TCC Useful Functions: Environment Handling Functions.
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCFileIO.cc b/src/TCCFileIO.cc
index c40e650..582787b 100644
--- a/src/TCCFileIO.cc
+++ b/src/TCCFileIO.cc
@@ -10,7 +10,7 @@
 //
 //  File:               TCCFileIO.cc
 //  Description:        TCC Useful Functions: FileIO Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCFileIO_Functions.ttcn b/src/TCCFileIO_Functions.ttcn
index ffe4ef6..2dcb9d6 100644
--- a/src/TCCFileIO_Functions.ttcn
+++ b/src/TCCFileIO_Functions.ttcn
@@ -10,7 +10,7 @@
 //
 //  File:               TCCFileIO_Functions.ttcn
 //  Description:        TCC Useful Functions: FileIO Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCFileSystem.cc b/src/TCCFileSystem.cc
index 9c56ca9..1af99b9 100644
--- a/src/TCCFileSystem.cc
+++ b/src/TCCFileSystem.cc
@@ -10,7 +10,7 @@
 //
 //  File:               TCCFileSystem.cc
 //  Description:        TCC Useful Functions: FileSystem Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCFileSystem_Functions.ttcn b/src/TCCFileSystem_Functions.ttcn
index 32d4d82..5409f2d 100644
--- a/src/TCCFileSystem_Functions.ttcn
+++ b/src/TCCFileSystem_Functions.ttcn
@@ -10,7 +10,7 @@
 //
 //  File:               TCC_FileSystem_Functions.ttcn
 //  Description:        TCC Useful Functions: FileSystem Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCIPsec.cc b/src/TCCIPsec.cc
index 5dddc62..1d2fcef 100644
--- a/src/TCCIPsec.cc
+++ b/src/TCCIPsec.cc
@@ -10,7 +10,7 @@
 //
 //  File:               TCCIPsec.cc
 //  Description:        TCC Useful Functions: IPsec Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCIPsec_Definitions.ttcn b/src/TCCIPsec_Definitions.ttcn
index 5751e08..5a69403 100644
--- a/src/TCCIPsec_Definitions.ttcn
+++ b/src/TCCIPsec_Definitions.ttcn
@@ -10,7 +10,7 @@
 //
 //  File:               TCCIPsec_Definitions.ttcn
 //  Description:        TCC Useful Functions: Definitions for IPsec functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCIPsec_Functions.ttcn b/src/TCCIPsec_Functions.ttcn
index 34a44ad..030515b 100644
--- a/src/TCCIPsec_Functions.ttcn
+++ b/src/TCCIPsec_Functions.ttcn
@@ -10,7 +10,7 @@
 //
 //  File:               TCCIPsec_Functions.ttcn
 //  Description:        TCC Useful Functions: IPsec Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCIPsec_XFRM.cc b/src/TCCIPsec_XFRM.cc
index 633709e..62551b7 100644
--- a/src/TCCIPsec_XFRM.cc
+++ b/src/TCCIPsec_XFRM.cc
@@ -10,7 +10,7 @@
 //
 //  File:               TCCIPsec_XFRM.cc
 //  Description:        TCC Useful Functions: IPsec XFRM Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCIPsec_XFRM.hh b/src/TCCIPsec_XFRM.hh
index d27e02a..30f484b 100644
--- a/src/TCCIPsec_XFRM.hh
+++ b/src/TCCIPsec_XFRM.hh
@@ -10,7 +10,7 @@
 //
 //  File:               TCCIPsec_XFRM.hh
 //  Description:        TCC Useful Functions: IPsec XFRM Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCIPsec_XFRM_Definitions.ttcn b/src/TCCIPsec_XFRM_Definitions.ttcn
index 5791371..a2b5c35 100644
--- a/src/TCCIPsec_XFRM_Definitions.ttcn
+++ b/src/TCCIPsec_XFRM_Definitions.ttcn
@@ -10,7 +10,7 @@
 //
 //  File:               TCCIPsec_XFRM_Definitions.ttcn
 //  Description:        TCC Useful Functions: IPsec XFRM Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCIPsec_XFRM_SA.cc b/src/TCCIPsec_XFRM_SA.cc
index d993b57..a7f28a4 100644
--- a/src/TCCIPsec_XFRM_SA.cc
+++ b/src/TCCIPsec_XFRM_SA.cc
@@ -10,7 +10,7 @@
 //
 //  File:               TCCIPsec_XFRM_SA.cc
 //  Description:        TCC Useful Functions: IPsec XFRM Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCIPsec_XFRM_SP.cc b/src/TCCIPsec_XFRM_SP.cc
index 23f2581..e73731b 100644
--- a/src/TCCIPsec_XFRM_SP.cc
+++ b/src/TCCIPsec_XFRM_SP.cc
@@ -10,7 +10,7 @@
 //
 //  File:               TCCIPsec_XFRM_SP.cc
 //  Description:        TCC Useful Functions: IPsec XFRM Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCInterface.cc b/src/TCCInterface.cc
index ebcf52e..db64184 100644
--- a/src/TCCInterface.cc
+++ b/src/TCCInterface.cc
@@ -10,7 +10,7 @@
 //
 //  File:               TCCInterface.cc
 //  Description:        TCC Useful Functions: Interface Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCInterface_Functions.ttcn b/src/TCCInterface_Functions.ttcn
index 6c75e6c..67fa29c 100644
--- a/src/TCCInterface_Functions.ttcn
+++ b/src/TCCInterface_Functions.ttcn
@@ -10,7 +10,7 @@
 //
 //  File:               TCCInterface_Functions.ttcn
 //  Description:        TCC Useful Functions: Interface Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCInterface_ip.h b/src/TCCInterface_ip.h
index 0f071ab..8eeebd5 100644
--- a/src/TCCInterface_ip.h
+++ b/src/TCCInterface_ip.h
@@ -10,7 +10,7 @@
 //
 //  File:               TCCInterface_ip.h
 //  Description:        TCC Useful Functions: Interface Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCMaths.cc b/src/TCCMaths.cc
index 2cd8142..35f934f 100644
--- a/src/TCCMaths.cc
+++ b/src/TCCMaths.cc
@@ -10,7 +10,7 @@
 //
 //  File:               TCCMaths.cc
 //  Description:        TCC Useful Functions: Maths Functions.
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCMaths_Functions.ttcn b/src/TCCMaths_Functions.ttcn
index 55ace3b..3762c56 100644
--- a/src/TCCMaths_Functions.ttcn
+++ b/src/TCCMaths_Functions.ttcn
@@ -10,7 +10,7 @@
 //
 //  File:               TCCMaths_Functions.ttcn
 //  Description:        TCC Useful Functions: Math Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCMaths_GenericTypes.ttcn b/src/TCCMaths_GenericTypes.ttcn
index 106aa0e..8f7dd58 100644
--- a/src/TCCMaths_GenericTypes.ttcn
+++ b/src/TCCMaths_GenericTypes.ttcn
@@ -10,7 +10,7 @@
 //
 //  File:               TCCMaths_GenericTypes.ttcn
 //  Description:        TCC Useful Functions: Generic Types For Maths
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCMessageHandling.cc b/src/TCCMessageHandling.cc
index 43a802b..5d7cbb6 100644
--- a/src/TCCMessageHandling.cc
+++ b/src/TCCMessageHandling.cc
@@ -9,7 +9,7 @@
 ///////////////////////////////////////////////////////////////////////////////
 //
 //  File:     TCCMessageHandling.cc
-//  Rev:      R35B
+//  Rev:      R36B
 //  Prodnr:   CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCMessageHandling_Functions.ttcn b/src/TCCMessageHandling_Functions.ttcn
index aadfb44..32a3927 100644
--- a/src/TCCMessageHandling_Functions.ttcn
+++ b/src/TCCMessageHandling_Functions.ttcn
@@ -10,7 +10,7 @@
 //
 //  File:               TCCMessageHandling_Functions.ttcn
 //  Description:        TCC Useful Functions: MessageHandling Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCOpenSecurity.cc b/src/TCCOpenSecurity.cc
index 6044607..54b8f77 100644
--- a/src/TCCOpenSecurity.cc
+++ b/src/TCCOpenSecurity.cc
@@ -10,7 +10,7 @@
 //
 //  File:               TCCOpenSecurity.cc
 //  Description:        TCC Useful Functions: Security Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCOpenSecurity_Functions.ttcn b/src/TCCOpenSecurity_Functions.ttcn
index ec4f212..e6695ff 100644
--- a/src/TCCOpenSecurity_Functions.ttcn
+++ b/src/TCCOpenSecurity_Functions.ttcn
@@ -10,7 +10,7 @@
 //
 //  File:               TCCOpenSecurity.ttcn
 //  Description:        TCC Useful Functions: Security Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCPermutatedParameters_Definitions.ttcn b/src/TCCPermutatedParameters_Definitions.ttcn
index 14338d6..99b9f2c 100644
--- a/src/TCCPermutatedParameters_Definitions.ttcn
+++ b/src/TCCPermutatedParameters_Definitions.ttcn
@@ -10,7 +10,7 @@
 //
 //  File:               TCCPermutatedParameters_Definitions.ttcn
 //  Description:        definitions for permutated params
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //////////////////////////////////////////////////////////////////////////////
 
@@ -156,4 +156,4 @@ type record of PP_ParamSet PP_ParamSetList; // is each CGPN has its own current
 ///////////////////////////////////////////////////////////
 type set of PP_SingleParam PP_ParamSet;  // ie params belonging to one particular call
 
-} with { extension "version R35B"}
+} with { extension "version R36B"}
diff --git a/src/TCCPermutatedParameters_Functions.ttcn b/src/TCCPermutatedParameters_Functions.ttcn
index 145d62b..7a8b104 100644
--- a/src/TCCPermutatedParameters_Functions.ttcn
+++ b/src/TCCPermutatedParameters_Functions.ttcn
@@ -10,7 +10,7 @@
 //
 //  File:               TCCPermutatedParameters_Functions.ttcn
 //  Description:        functions for permutated params
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //////////////////////////////////////////////////////////////////////////////
 
@@ -905,4 +905,4 @@ public function f_PP_getParamValueFromSet(
   return vl_ret;
 }
 
-} with { extension "version R35B"}
+} with { extension "version R36B"}
diff --git a/src/TCCRegexp.cc b/src/TCCRegexp.cc
index cfac587..f03b1d2 100644
--- a/src/TCCRegexp.cc
+++ b/src/TCCRegexp.cc
@@ -10,7 +10,7 @@
 //
 //  File:               TCCRegexp_Functions.ttcn
 //  Description:        TCC Useful Functions: Regexp Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCRegexp_Functions.ttcn b/src/TCCRegexp_Functions.ttcn
index a496e0a..a3331c9 100644
--- a/src/TCCRegexp_Functions.ttcn
+++ b/src/TCCRegexp_Functions.ttcn
@@ -10,7 +10,7 @@
 //
 //  File:               TCCRegexp_Functions.ttcn
 //  Description:        TCC Useful Functions: Regexp Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCSystem.cc b/src/TCCSystem.cc
index 5f8e664..e62c847 100644
--- a/src/TCCSystem.cc
+++ b/src/TCCSystem.cc
@@ -10,7 +10,7 @@
 //
 //  File:               TCCSystem.cc
 //  Description:        TCC Useful Functions: System Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCSystem_Functions.ttcn b/src/TCCSystem_Functions.ttcn
index 2c669db..59bd546 100644
--- a/src/TCCSystem_Functions.ttcn
+++ b/src/TCCSystem_Functions.ttcn
@@ -10,7 +10,7 @@
 //
 //  File:               TCCSystem_Functions.ttcn
 //  Description:        TCC Useful Functions: System Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCTemplate_Functions.ttcn b/src/TCCTemplate_Functions.ttcn
index 3e8812f..5e6725d 100644
--- a/src/TCCTemplate_Functions.ttcn
+++ b/src/TCCTemplate_Functions.ttcn
@@ -10,7 +10,7 @@
 //
 //  File:               TCCTemplate_Functions.ttcn
 //  Description:        TCC Useful Functions: Template Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCTitanMetadata.cc b/src/TCCTitanMetadata.cc
index 581f12a..acaa877 100644
--- a/src/TCCTitanMetadata.cc
+++ b/src/TCCTitanMetadata.cc
@@ -10,7 +10,7 @@
 //
 //  File:               TCCTitanMetadata.cc
 //  Description:        TCC Useful Functions: TitanMetadata Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCTitanMetadata_Functions.ttcn b/src/TCCTitanMetadata_Functions.ttcn
index 7bb2c39..e443831 100644
--- a/src/TCCTitanMetadata_Functions.ttcn
+++ b/src/TCCTitanMetadata_Functions.ttcn
@@ -10,7 +10,7 @@
 //
 //  File:               TCCTitanMetadata_Functions.ttcn
 //  Description:        TCC Useful Functions: TitanMetadata Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCUsefulFunctions_Library.grp b/src/TCCUsefulFunctions_Library.grp
index d570477..d9175f4 100644
--- a/src/TCCUsefulFunctions_Library.grp
+++ b/src/TCCUsefulFunctions_Library.grp
@@ -11,7 +11,7 @@
 //
 //  File:        TCCUsefulFunctions_Library.grp
 //  Description: FileGroup file for TCCUsefulFunctions ApplicationLibrary
-//  Rev:         R35B
+//  Rev:         R36B
 //  Prodnr:      CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCUsefulFunctions_PermutatedParameters.grp b/src/TCCUsefulFunctions_PermutatedParameters.grp
index ad37c1d..648dc12 100644
--- a/src/TCCUsefulFunctions_PermutatedParameters.grp
+++ b/src/TCCUsefulFunctions_PermutatedParameters.grp
@@ -11,7 +11,7 @@
 //
 //  File:        TCCUsefulFunctions_PermutatedParameters.grp
 //  Description: FileGroup file for TCCUsefulFunctions Permutated Parameters
-//  Rev:         R35B
+//  Rev:         R36B
 //  Prodnr:      CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCXPathSupport.cc b/src/TCCXPathSupport.cc
old mode 100644
new mode 100755
index cf1077a..1539b09
--- a/src/TCCXPathSupport.cc
+++ b/src/TCCXPathSupport.cc
@@ -10,7 +10,7 @@
 //
 //  File:               TCCXPathSupport_Functions.ttcn
 //  Description:        TCC Useful Functions: XPath Support Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
diff --git a/src/TCCXPathSupport_Functions.ttcn b/src/TCCXPathSupport_Functions.ttcn
old mode 100644
new mode 100755
index 4d6b0c9..f8222d1
--- a/src/TCCXPathSupport_Functions.ttcn
+++ b/src/TCCXPathSupport_Functions.ttcn
@@ -10,7 +10,7 @@
 //
 //  File:               TCCXPathSupport_Functions.ttcn
 //  Description:        TCC Useful Functions: XPath Support Functions
-//  Rev:                R35B
+//  Rev:                R36B
 //  Prodnr:             CNL 113 472
 //
 ///////////////////////////////////////////////////////////////////////////////
-- 
GitLab