diff --git a/share/libc/string.c b/share/libc/string.c
index fd18f6236c04c354c87367d755ed3eb38273a6cb..a31c1ec0e8e4d6e5441db72389aa17b4ef62892b 100644
--- a/share/libc/string.c
+++ b/share/libc/string.c
@@ -41,6 +41,22 @@ void* memcpy(void* restrict dest, const void* restrict src, size_t n)
   return dest;
 }
 
+// Non-POSIX; GNU extension
+void* mempcpy(void* restrict dest, const void* restrict src, size_t n)
+{
+  size_t i;
+  /*@
+    loop invariant no_eva: 0 <= i <= n;
+    loop invariant no_eva: \forall ℤ k; 0 <= k < i ==> ((char*)dest)[k] == ((char*)src)[k];
+    loop assigns i, ((char*)dest)[0 .. n-1];
+    loop variant n - i;
+   */
+  for (i = 0; i < n; i++) {
+    ((char*)dest)[i] = ((char*)src)[i];
+  }
+  return (char*)dest + i;
+}
+
 // memoverlap: auxiliary function that returns
 //   0 if p[0..n-1] and q[0..n-1] do not overlap;
 //   -1/+1 otherwise, according to whether p is before or after q in the memory
@@ -210,6 +226,16 @@ char* strcpy(char *dest, const char *src)
   return dest;
 }
 
+// POSIX.1-2008
+char* stpcpy(char *dest, const char *src)
+{
+  size_t i;
+  for (i = 0; src[i] != 0; i++)
+    dest[i] = src[i];
+  dest[i] = 0;
+  return dest + i;
+}
+
 char *strncpy(char *dest, const char *src, size_t n)
 {
   size_t i;
diff --git a/share/libc/string.h b/share/libc/string.h
index 39b1c43044e73259b624ef6a348669f8a123279f..49758f99a59ca6431d144409deeb396a81e5cc07 100644
--- a/share/libc/string.h
+++ b/share/libc/string.h
@@ -104,6 +104,19 @@ extern void *memrchr(const void *s, int c, size_t n);
 extern void *memcpy(void *restrict dest,
 		    const void *restrict src, size_t n);
 
+// Non-POSIX; GNU extension
+/*@ requires valid_dest: valid_or_empty(dest, n);
+  @ requires valid_src: valid_read_or_empty(src, n);
+  @ requires separation:
+  @   \separated(((char *)dest)+(0..n-1),((char *)src)+(0..n-1));
+  @ assigns ((char*)dest)[0..n - 1] \from ((char*)src)[0..n-1];
+  @ assigns \result \from dest, n;
+  @ ensures copied_contents: memcmp{Post,Pre}((char*)dest,(char*)src,n) == 0;
+  @ ensures result_next_byte: \result == dest + n;
+  @*/
+extern void *mempcpy(void *restrict dest,
+                     const void *restrict src, size_t n);
+
 /*@ requires valid_dest: valid_or_empty(dest, n);
   @ requires valid_src: valid_read_or_empty(src, n);
   @ assigns ((char*)dest)[0..n - 1] \from ((char*)src)[0..n-1];
diff --git a/src/plugins/e-acsl/tests/bts/oracle/bts2252.res.oracle b/src/plugins/e-acsl/tests/bts/oracle/bts2252.res.oracle
index 75fbf8d3a073d69762ab1e527bc29beaf9abf4c7..d2df68cc06e70b91c80a9f2150ce5835a825eaba 100644
--- a/src/plugins/e-acsl/tests/bts/oracle/bts2252.res.oracle
+++ b/src/plugins/e-acsl/tests/bts/oracle/bts2252.res.oracle
@@ -2,28 +2,28 @@
 [e-acsl] Warning: annotating undefined function `strncpy':
   the generated program may miss memory instrumentation
   if there are memory-related annotations.
-[e-acsl] FRAMAC_SHARE/libc/string.h:375: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:388: Warning: 
   E-ACSL construct `logic functions performing read accesses'
   is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:378: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:391: Warning: 
   E-ACSL construct `logic functions performing read accesses'
   is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:366: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:379: Warning: 
   E-ACSL construct `logic functions with labels' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:365: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:378: Warning: 
   Some assumes clauses could not be translated.
   Ignoring complete and disjoint behaviors annotations.
-[e-acsl] FRAMAC_SHARE/libc/string.h:365: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:378: Warning: 
   E-ACSL construct `assigns clause in behavior' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:376: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:389: Warning: 
   E-ACSL construct `logic functions performing read accesses'
   is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:379: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:392: Warning: 
   E-ACSL construct `logic functions performing read accesses'
   is not yet supported.
   Ignoring annotation.
diff --git a/src/plugins/e-acsl/tests/bts/oracle/gen_bts2252.c b/src/plugins/e-acsl/tests/bts/oracle/gen_bts2252.c
index 7eb5b50ee3deb3dc2ef87ab941de3bf0be4f6cf1..65224637492ba5dafa3b4f4633c0bbeea345539a 100644
--- a/src/plugins/e-acsl/tests/bts/oracle/gen_bts2252.c
+++ b/src/plugins/e-acsl/tests/bts/oracle/gen_bts2252.c
@@ -108,7 +108,7 @@ char *__gen_e_acsl_strncpy(char * restrict dest, char const * restrict src,
                                         (void *)(& dest));
     __e_acsl_assert(__gen_e_acsl_valid,1,"Precondition","strncpy",
                     "room_nstring: \\valid(dest + (0 .. n - 1))",
-                    "FRAMAC_SHARE/libc/string.h",367);
+                    "FRAMAC_SHARE/libc/string.h",380);
     __gen_e_acsl__4 = __gmpz_get_ui((__e_acsl_mpz_struct const *)(__gen_e_acsl_add));
     __gen_e_acsl_size_2 = 1UL * __gen_e_acsl__4;
     if (__gen_e_acsl_size_2 <= 0UL) __gen_e_acsl_if_2 = 0UL;
@@ -119,7 +119,7 @@ char *__gen_e_acsl_strncpy(char * restrict dest, char const * restrict src,
                                                   (void *)(& dest));
     __e_acsl_assert(__gen_e_acsl_valid_read,1,"RTE","strncpy",
                     "separated_guard: \\valid_read(dest + (0 .. n - 1))",
-                    "FRAMAC_SHARE/libc/string.h",369);
+                    "FRAMAC_SHARE/libc/string.h",382);
     __gen_e_acsl__5 = __gmpz_get_ui((__e_acsl_mpz_struct const *)(__gen_e_acsl_add));
     __gen_e_acsl_size_3 = 1UL * __gen_e_acsl__5;
     if (__gen_e_acsl_size_3 <= 0UL) __gen_e_acsl_if_3 = 0UL;
@@ -130,7 +130,7 @@ char *__gen_e_acsl_strncpy(char * restrict dest, char const * restrict src,
                                                     (void *)(& src));
     __e_acsl_assert(__gen_e_acsl_valid_read_2,1,"RTE","strncpy",
                     "separated_guard: \\valid_read(src + (0 .. n - 1))",
-                    "FRAMAC_SHARE/libc/string.h",369);
+                    "FRAMAC_SHARE/libc/string.h",382);
     __gen_e_acsl__6 = __gmpz_get_ui((__e_acsl_mpz_struct const *)(__gen_e_acsl_add));
     __gen_e_acsl_size_4 = 1UL * __gen_e_acsl__6;
     if (__gen_e_acsl_size_4 <= 0UL) __gen_e_acsl_if_4 = 0UL;
@@ -145,7 +145,7 @@ char *__gen_e_acsl_strncpy(char * restrict dest, char const * restrict src,
                                                 __gen_e_acsl_if_5);
     __e_acsl_assert(__gen_e_acsl_separated,1,"Precondition","strncpy",
                     "separation: \\separated(dest + (0 .. n - 1), src + (0 .. n - 1))",
-                    "FRAMAC_SHARE/libc/string.h",369);
+                    "FRAMAC_SHARE/libc/string.h",382);
     __gmpz_clear(__gen_e_acsl_n);
     __gmpz_clear(__gen_e_acsl_);
     __gmpz_clear(__gen_e_acsl_sub);
@@ -175,7 +175,7 @@ char *__gen_e_acsl_strncpy(char * restrict dest, char const * restrict src,
     int __gen_e_acsl_initialized;
     __e_acsl_assert(__retres == __gen_e_acsl_at,1,"Postcondition","strncpy",
                     "result_ptr: \\result == \\old(dest)",
-                    "FRAMAC_SHARE/libc/string.h",372);
+                    "FRAMAC_SHARE/libc/string.h",385);
     __gmpz_init_set_si(__gen_e_acsl__8,1L);
     __gmpz_init(__gen_e_acsl_sub_3);
     __gmpz_sub(__gen_e_acsl_sub_3,
@@ -199,7 +199,7 @@ char *__gen_e_acsl_strncpy(char * restrict dest, char const * restrict src,
                                                     __gen_e_acsl_if_6);
     __e_acsl_assert(__gen_e_acsl_initialized,1,"Postcondition","strncpy",
                     "initialization: \\initialized(\\old(dest) + (0 .. \\old(n) - 1))",
-                    "FRAMAC_SHARE/libc/string.h",373);
+                    "FRAMAC_SHARE/libc/string.h",386);
     __e_acsl_contract_clean(__gen_e_acsl_contract);
     __e_acsl_delete_block((void *)(& src));
     __e_acsl_delete_block((void *)(& dest));
diff --git a/src/plugins/e-acsl/tests/builtin/oracle/gen_strcmp.c b/src/plugins/e-acsl/tests/builtin/oracle/gen_strcmp.c
index f07cda26a8b3a278cc708ff099b341b56ab2971a..6b1a1141469dc4b7fa4ce39adff55d37630e04cb 100644
--- a/src/plugins/e-acsl/tests/builtin/oracle/gen_strcmp.c
+++ b/src/plugins/e-acsl/tests/builtin/oracle/gen_strcmp.c
@@ -162,7 +162,7 @@ char *__gen_e_acsl_strdup(char const *s)
                                                     "Postcondition","strdup",
                                                     "no_allocation: result_null: \\result == \\null",
                                                     "FRAMAC_SHARE/libc/string.h",
-                                                    485);
+                                                    498);
     __e_acsl_contract_clean(__gen_e_acsl_contract);
     return __retres;
   }
diff --git a/src/plugins/e-acsl/tests/builtin/oracle/gen_strcpy.c b/src/plugins/e-acsl/tests/builtin/oracle/gen_strcpy.c
index 22687d22971d21545ac0e6c803e00cce93a92801..3088f87001a3f77ab98f69969ba7f2f46065cce2 100644
--- a/src/plugins/e-acsl/tests/builtin/oracle/gen_strcpy.c
+++ b/src/plugins/e-acsl/tests/builtin/oracle/gen_strcpy.c
@@ -138,7 +138,7 @@ char *__gen_e_acsl_strdup(char const *s)
                                                     "Postcondition","strdup",
                                                     "no_allocation: result_null: \\result == \\null",
                                                     "FRAMAC_SHARE/libc/string.h",
-                                                    485);
+                                                    498);
     __e_acsl_contract_clean(__gen_e_acsl_contract);
     return __retres;
   }
diff --git a/src/plugins/e-acsl/tests/builtin/oracle/gen_strlen.c b/src/plugins/e-acsl/tests/builtin/oracle/gen_strlen.c
index bc0cf9826213ca5c55748503faa0169d1919ce3a..4ef82acb2bc57aa6cc37466db271b4b6cb98996c 100644
--- a/src/plugins/e-acsl/tests/builtin/oracle/gen_strlen.c
+++ b/src/plugins/e-acsl/tests/builtin/oracle/gen_strlen.c
@@ -136,7 +136,7 @@ char *__gen_e_acsl_strdup(char const *s)
                                                     "Postcondition","strdup",
                                                     "no_allocation: result_null: \\result == \\null",
                                                     "FRAMAC_SHARE/libc/string.h",
-                                                    485);
+                                                    498);
     __e_acsl_contract_clean(__gen_e_acsl_contract);
     return __retres;
   }
diff --git a/src/plugins/e-acsl/tests/builtin/oracle/strcmp.res.oracle b/src/plugins/e-acsl/tests/builtin/oracle/strcmp.res.oracle
index 1d2d82a9d9f95b75ee73483951e1c6e8b9262341..03f34c41311fd2aa74f79cee4fc0b68233125962 100644
--- a/src/plugins/e-acsl/tests/builtin/oracle/strcmp.res.oracle
+++ b/src/plugins/e-acsl/tests/builtin/oracle/strcmp.res.oracle
@@ -17,30 +17,30 @@
 [e-acsl] Warning: annotating undefined function `strdup':
   the generated program may miss memory instrumentation
   if there are memory-related annotations.
-[e-acsl] FRAMAC_SHARE/libc/string.h:471: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:484: Warning: 
   E-ACSL construct `\fresh' is not yet supported. Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:475: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:488: Warning: 
   E-ACSL construct `predicate performing read accesses' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:482: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:495: Warning: 
   E-ACSL construct `predicate performing read accesses' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:471: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:484: Warning: 
   E-ACSL construct `logic functions with labels' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:471: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:484: Warning: 
   Some assumes clauses could not be translated.
   Ignoring complete and disjoint behaviors annotations.
-[e-acsl] FRAMAC_SHARE/libc/string.h:471: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:484: Warning: 
   E-ACSL construct `assigns clause in behavior' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:478: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:491: Warning: 
   E-ACSL construct `\fresh' is not yet supported. Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:480: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:493: Warning: 
   E-ACSL construct `logic functions performing read accesses'
   is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:480: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:493: Warning: 
   E-ACSL construct `assigns clause in behavior' is not yet supported.
   Ignoring annotation.
 [e-acsl] FRAMAC_SHARE/libc/unistd.h:857: Warning: 
diff --git a/src/plugins/e-acsl/tests/builtin/oracle/strcpy.res.oracle b/src/plugins/e-acsl/tests/builtin/oracle/strcpy.res.oracle
index 1450c3ca6aec2a244a700bd612940e3b17f41c47..b78b07cecd6da20814767c5383e9b4dbbaee35de 100644
--- a/src/plugins/e-acsl/tests/builtin/oracle/strcpy.res.oracle
+++ b/src/plugins/e-acsl/tests/builtin/oracle/strcpy.res.oracle
@@ -11,30 +11,30 @@
 [e-acsl] Warning: annotating undefined function `strdup':
   the generated program may miss memory instrumentation
   if there are memory-related annotations.
-[e-acsl] FRAMAC_SHARE/libc/string.h:471: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:484: Warning: 
   E-ACSL construct `\fresh' is not yet supported. Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:475: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:488: Warning: 
   E-ACSL construct `predicate performing read accesses' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:482: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:495: Warning: 
   E-ACSL construct `predicate performing read accesses' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:471: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:484: Warning: 
   E-ACSL construct `logic functions with labels' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:471: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:484: Warning: 
   Some assumes clauses could not be translated.
   Ignoring complete and disjoint behaviors annotations.
-[e-acsl] FRAMAC_SHARE/libc/string.h:471: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:484: Warning: 
   E-ACSL construct `assigns clause in behavior' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:478: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:491: Warning: 
   E-ACSL construct `\fresh' is not yet supported. Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:480: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:493: Warning: 
   E-ACSL construct `logic functions performing read accesses'
   is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:480: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:493: Warning: 
   E-ACSL construct `assigns clause in behavior' is not yet supported.
   Ignoring annotation.
 [e-acsl] FRAMAC_SHARE/libc/unistd.h:857: Warning: 
diff --git a/src/plugins/e-acsl/tests/builtin/oracle/strlen.res.oracle b/src/plugins/e-acsl/tests/builtin/oracle/strlen.res.oracle
index adf6231d8ec79085c7c42d888b9bc07547ce648f..396a374d1a48b34d07ec1190207370baff478126 100644
--- a/src/plugins/e-acsl/tests/builtin/oracle/strlen.res.oracle
+++ b/src/plugins/e-acsl/tests/builtin/oracle/strlen.res.oracle
@@ -14,30 +14,30 @@
 [e-acsl] Warning: annotating undefined function `strdup':
   the generated program may miss memory instrumentation
   if there are memory-related annotations.
-[e-acsl] FRAMAC_SHARE/libc/string.h:471: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:484: Warning: 
   E-ACSL construct `\fresh' is not yet supported. Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:475: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:488: Warning: 
   E-ACSL construct `predicate performing read accesses' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:482: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:495: Warning: 
   E-ACSL construct `predicate performing read accesses' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:471: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:484: Warning: 
   E-ACSL construct `logic functions with labels' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:471: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:484: Warning: 
   Some assumes clauses could not be translated.
   Ignoring complete and disjoint behaviors annotations.
-[e-acsl] FRAMAC_SHARE/libc/string.h:471: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:484: Warning: 
   E-ACSL construct `assigns clause in behavior' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:478: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:491: Warning: 
   E-ACSL construct `\fresh' is not yet supported. Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:480: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:493: Warning: 
   E-ACSL construct `logic functions performing read accesses'
   is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:480: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:493: Warning: 
   E-ACSL construct `assigns clause in behavior' is not yet supported.
   Ignoring annotation.
 [e-acsl] FRAMAC_SHARE/libc/unistd.h:857: Warning: 
diff --git a/src/plugins/e-acsl/tests/format/oracle/gen_printf.c b/src/plugins/e-acsl/tests/format/oracle/gen_printf.c
index 7268da8856d2fa7c9e31f8aa80193f48014b612e..6278c45241946aebba0469949eddcadb0cdab369 100644
--- a/src/plugins/e-acsl/tests/format/oracle/gen_printf.c
+++ b/src/plugins/e-acsl/tests/format/oracle/gen_printf.c
@@ -710,7 +710,7 @@ char *__gen_e_acsl_strcpy(char * restrict dest, char const * restrict src)
   __retres = strcpy(dest,src);
   __e_acsl_assert(__retres == __gen_e_acsl_at,1,"Postcondition","strcpy",
                   "result_ptr: \\result == \\old(dest)",
-                  "FRAMAC_SHARE/libc/string.h",361);
+                  "FRAMAC_SHARE/libc/string.h",374);
   __e_acsl_delete_block((void *)(& src));
   __e_acsl_delete_block((void *)(& dest));
   return __retres;
@@ -778,17 +778,17 @@ char *__gen_e_acsl_strchr(char const *s, int c)
       else __gen_e_acsl_and = 0;
       __e_acsl_assert(__gen_e_acsl_and,1,"RTE","strchr",
                       "mem_access: \\valid_read(__retres)",
-                      "FRAMAC_SHARE/libc/string.h",164);
+                      "FRAMAC_SHARE/libc/string.h",177);
       __gen_e_acsl_base_addr = __e_acsl_base_addr((void *)__retres);
       __gen_e_acsl_base_addr_2 = __e_acsl_base_addr((void *)__gen_e_acsl_at_2);
       __e_acsl_assert(__gen_e_acsl_base_addr == __gen_e_acsl_base_addr_2,1,
                       "Postcondition","strchr",
                       "found: result_same_base: \\base_addr(\\result) == \\base_addr(\\old(s))",
-                      "FRAMAC_SHARE/libc/string.h",165);
+                      "FRAMAC_SHARE/libc/string.h",178);
       __e_acsl_assert((int)*__retres == (int)((char)__gen_e_acsl_at),1,
                       "Postcondition","strchr",
                       "found: result_char: *\\result == (char)\\old(c)",
-                      "FRAMAC_SHARE/libc/string.h",164);
+                      "FRAMAC_SHARE/libc/string.h",177);
     }
     __gen_e_acsl_assumes_value = __e_acsl_contract_get_behavior_assumes
     ((__e_acsl_contract_t const *)__gen_e_acsl_contract,(size_t)1);
@@ -796,7 +796,7 @@ char *__gen_e_acsl_strchr(char const *s, int c)
                                                     "Postcondition","strchr",
                                                     "not_found: result_null: \\result == \\null",
                                                     "FRAMAC_SHARE/libc/string.h",
-                                                    171);
+                                                    184);
     __gen_e_acsl_assumes_value = __e_acsl_contract_get_behavior_assumes
     ((__e_acsl_contract_t const *)__gen_e_acsl_contract,(size_t)2);
     if (__gen_e_acsl_assumes_value) {
@@ -811,7 +811,7 @@ char *__gen_e_acsl_strchr(char const *s, int c)
       }
       __e_acsl_assert(__gen_e_acsl_or,1,"Postcondition","strchr",
                       "default: result_null_or_same_base:\n  \\result == \\null || \\base_addr(\\result) == \\base_addr(\\old(s))",
-                      "FRAMAC_SHARE/libc/string.h",174);
+                      "FRAMAC_SHARE/libc/string.h",187);
     }
     __e_acsl_contract_clean(__gen_e_acsl_contract);
     __e_acsl_delete_block((void *)(& s));
diff --git a/src/plugins/e-acsl/tests/format/oracle/printf.res.oracle b/src/plugins/e-acsl/tests/format/oracle/printf.res.oracle
index b3fd886b5c7a638bfe2c31df60b15a0f536e7e52..8ad5e3111800a42699d7250847a77ae9cd6dac1b 100644
--- a/src/plugins/e-acsl/tests/format/oracle/printf.res.oracle
+++ b/src/plugins/e-acsl/tests/format/oracle/printf.res.oracle
@@ -32,60 +32,60 @@
 [e-acsl] FRAMAC_SHARE/libc/unistd.h:857: Warning: 
   E-ACSL construct `assigns clause in behavior' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:354: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:367: Warning: 
   E-ACSL construct `logic functions with labels' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:355: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:368: Warning: 
   E-ACSL construct `logic functions performing read accesses'
   is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:357: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:370: Warning: 
   E-ACSL construct `logic functions performing read accesses'
   is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:354: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:367: Warning: 
   E-ACSL construct `assigns clause in behavior' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:360: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:373: Warning: 
   E-ACSL construct `logic functions performing read accesses'
   is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:163: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:176: Warning: 
   E-ACSL construct `user-defined logic type' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:170: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:183: Warning: 
   E-ACSL construct `user-defined logic type' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:160: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:173: Warning: 
   E-ACSL construct `logic functions with labels' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:160: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:173: Warning: 
   Some assumes clauses could not be translated.
   Ignoring complete and disjoint behaviors annotations.
-[e-acsl] FRAMAC_SHARE/libc/string.h:160: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:173: Warning: 
   E-ACSL construct `assigns clause in behavior' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:166: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:179: Warning: 
   E-ACSL construct `logic functions performing read accesses'
   is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:167: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:180: Warning: 
   E-ACSL construct `logic functions with labels' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:168: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:181: Warning: 
   E-ACSL construct
   `non integer variable p in quantification
   found: result_first_occur:
     ∀ char *p; \old(s) ≤ p < \result ⇒ *p ≢ (char)\old(c)'
   is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:128: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:141: Warning: 
   E-ACSL construct `logic functions with labels' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:128: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:141: Warning: 
   E-ACSL construct `assigns clause in behavior' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:130: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:143: Warning: 
   E-ACSL construct `logic functions performing read accesses'
   is not yet supported.
   Ignoring annotation.
diff --git a/src/plugins/e-acsl/tests/memory/oracle/mainargs.res.oracle b/src/plugins/e-acsl/tests/memory/oracle/mainargs.res.oracle
index 418f7a1cf34144755bddf1089d214c391fc76b83..267be0d7d500e86405f4b174f80ba4c842873bdd 100644
--- a/src/plugins/e-acsl/tests/memory/oracle/mainargs.res.oracle
+++ b/src/plugins/e-acsl/tests/memory/oracle/mainargs.res.oracle
@@ -2,13 +2,13 @@
 [e-acsl] Warning: annotating undefined function `strlen':
   the generated program may miss memory instrumentation
   if there are memory-related annotations.
-[e-acsl] FRAMAC_SHARE/libc/string.h:128: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:141: Warning: 
   E-ACSL construct `logic functions with labels' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:128: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:141: Warning: 
   E-ACSL construct `assigns clause in behavior' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:130: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:143: Warning: 
   E-ACSL construct `logic functions performing read accesses'
   is not yet supported.
   Ignoring annotation.
@@ -35,9 +35,9 @@
 [eva:alarm] tests/memory/mainargs.c:16: Warning: assertion got status unknown.
 [eva:alarm] tests/memory/mainargs.c:18: Warning: 
   function __gen_e_acsl_strlen: precondition 'valid_string_s' got status unknown.
-[eva:alarm] FRAMAC_SHARE/libc/string.h:128: Warning: 
+[eva:alarm] FRAMAC_SHARE/libc/string.h:141: Warning: 
   function strlen: precondition 'valid_string_s' got status unknown.
-[eva:alarm] FRAMAC_SHARE/libc/string.h:130: Warning: 
+[eva:alarm] FRAMAC_SHARE/libc/string.h:143: Warning: 
   function __gen_e_acsl_strlen: postcondition 'acsl_c_equiv' got status unknown.
 [eva:alarm] tests/memory/mainargs.c:19: Warning: 
   function __e_acsl_assert, behavior blocking: precondition got status invalid.
diff --git a/src/plugins/e-acsl/tests/temporal/oracle/gen_t_memcpy.c b/src/plugins/e-acsl/tests/temporal/oracle/gen_t_memcpy.c
index 6a152d6e672c7a5f7b2d5d72582b2211d71c4a7d..ce91bdc96a856e17c20c9c142944a8f1fc3f16cb 100644
--- a/src/plugins/e-acsl/tests/temporal/oracle/gen_t_memcpy.c
+++ b/src/plugins/e-acsl/tests/temporal/oracle/gen_t_memcpy.c
@@ -408,7 +408,7 @@ void *__gen_e_acsl_memset(void *s, int c, size_t n)
   __retres = memset(s,c,n);
   __e_acsl_assert(__retres == __gen_e_acsl_at,1,"Postcondition","memset",
                   "result_ptr: \\result == \\old(s)",
-                  "FRAMAC_SHARE/libc/string.h",122);
+                  "FRAMAC_SHARE/libc/string.h",135);
   __e_acsl_delete_block((void *)(& s));
   return __retres;
 }
diff --git a/src/plugins/e-acsl/tests/temporal/oracle/t_memcpy.res.oracle b/src/plugins/e-acsl/tests/temporal/oracle/t_memcpy.res.oracle
index 4c8bcab98c4a3841470d443080f17140a7e5e449..b2e2ee7e00a6bb9dad13197ac02c3fa6bc89cc27 100644
--- a/src/plugins/e-acsl/tests/temporal/oracle/t_memcpy.res.oracle
+++ b/src/plugins/e-acsl/tests/temporal/oracle/t_memcpy.res.oracle
@@ -5,13 +5,13 @@
 [e-acsl] Warning: annotating undefined function `memset':
   the generated program may miss memory instrumentation
   if there are memory-related annotations.
-[e-acsl] FRAMAC_SHARE/libc/string.h:118: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:131: Warning: 
   E-ACSL construct `logic functions with labels' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:118: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:131: Warning: 
   E-ACSL construct `assigns clause in behavior' is not yet supported.
   Ignoring annotation.
-[e-acsl] FRAMAC_SHARE/libc/string.h:121: Warning: 
+[e-acsl] FRAMAC_SHARE/libc/string.h:134: Warning: 
   E-ACSL construct `user-defined logic type' is not yet supported.
   Ignoring annotation.
 [e-acsl] FRAMAC_SHARE/libc/string.h:95: Warning: 
@@ -32,5 +32,5 @@
   function __e_acsl_assert, behavior blocking: precondition got status invalid.
 [eva:alarm] FRAMAC_SHARE/libc/string.h:101: Warning: 
   function __gen_e_acsl_memcpy: postcondition 'copied_contents' got status unknown.
-[eva:alarm] FRAMAC_SHARE/libc/string.h:121: Warning: 
+[eva:alarm] FRAMAC_SHARE/libc/string.h:134: Warning: 
   function __gen_e_acsl_memset: postcondition 'acsl_c_equiv' got status unknown.
diff --git a/src/plugins/markdown-report/tests/md/oracle/cwe126.res.oracle b/src/plugins/markdown-report/tests/md/oracle/cwe126.res.oracle
index 6d2973ada4468536c302d6f569eceab93bf4a838..eeb331627b87c51b8c037d6bb10d8a1957d262eb 100644
--- a/src/plugins/markdown-report/tests/md/oracle/cwe126.res.oracle
+++ b/src/plugins/markdown-report/tests/md/oracle/cwe126.res.oracle
@@ -6,7 +6,7 @@
   
 [eva] tests/md/cwe126.c:76: allocating variable __malloc_goodG2B_l76
 [eva] using specification for function exit
-[eva] FRAMAC_SHARE/libc/string.h:121: 
+[eva] FRAMAC_SHARE/libc/string.h:134: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memset
 [eva] tests/md/cwe126.c:62: starting to merge loop iterations
 [eva] tests/md/cwe126.c:40: 
diff --git a/src/plugins/markdown-report/tests/sarif/oracle/std_string.sarif b/src/plugins/markdown-report/tests/sarif/oracle/std_string.sarif
index 09463aba3706bc50f7c4ddc224a7f773ee9389a6..3719c61056256dfbd71fa7d208ec7a0d0da16b37 100644
--- a/src/plugins/markdown-report/tests/sarif/oracle/std_string.sarif
+++ b/src/plugins/markdown-report/tests/sarif/oracle/std_string.sarif
@@ -8974,9 +8974,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 242,
+                  "startLine": 268,
                   "startColumn": 5,
-                  "endLine": 249,
+                  "endLine": 275,
                   "endColumn": 1,
                   "byteLength": 225
                 }
@@ -8997,9 +8997,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 242,
+                  "startLine": 268,
                   "startColumn": 5,
-                  "endLine": 249,
+                  "endLine": 275,
                   "endColumn": 1,
                   "byteLength": 225
                 }
@@ -9020,9 +9020,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 242,
+                  "startLine": 268,
                   "startColumn": 5,
-                  "endLine": 249,
+                  "endLine": 275,
                   "endColumn": 1,
                   "byteLength": 225
                 }
@@ -9250,9 +9250,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 242,
+                  "startLine": 268,
                   "startColumn": 5,
-                  "endLine": 249,
+                  "endLine": 275,
                   "endColumn": 1,
                   "byteLength": 225
                 }
@@ -9298,9 +9298,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 147,
+                  "startLine": 163,
                   "startColumn": 4,
-                  "endLine": 155,
+                  "endLine": 171,
                   "endColumn": 1,
                   "byteLength": 243
                 }
@@ -9482,9 +9482,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 147,
+                  "startLine": 163,
                   "startColumn": 4,
-                  "endLine": 155,
+                  "endLine": 171,
                   "endColumn": 1,
                   "byteLength": 243
                 }
@@ -9880,9 +9880,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 72,
+                  "startLine": 88,
                   "startColumn": 4,
-                  "endLine": 102,
+                  "endLine": 118,
                   "endColumn": 1,
                   "byteLength": 1223
                 }
@@ -9903,9 +9903,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 107,
+                  "startLine": 120,
                   "startColumn": 25,
-                  "endLine": 107,
+                  "endLine": 120,
                   "endColumn": 48,
                   "byteLength": 23
                 }
@@ -9926,9 +9926,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 108,
+                  "startLine": 121,
                   "startColumn": 24,
-                  "endLine": 108,
+                  "endLine": 121,
                   "endColumn": 51,
                   "byteLength": 27
                 }
@@ -9949,9 +9949,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 111,
+                  "startLine": 124,
                   "startColumn": 29,
-                  "endLine": 111,
+                  "endLine": 124,
                   "endColumn": 76,
                   "byteLength": 47
                 }
@@ -9972,9 +9972,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 112,
+                  "startLine": 125,
                   "startColumn": 24,
-                  "endLine": 112,
+                  "endLine": 125,
                   "endColumn": 39,
                   "byteLength": 15
                 }
@@ -9995,9 +9995,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 109,
+                  "startLine": 122,
                   "startColumn": 12,
-                  "endLine": 109,
+                  "endLine": 122,
                   "endColumn": 35,
                   "byteLength": 23
                 }
@@ -10021,9 +10021,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 109,
+                  "startLine": 122,
                   "startColumn": 12,
-                  "endLine": 109,
+                  "endLine": 122,
                   "endColumn": 35,
                   "byteLength": 23
                 }
@@ -10046,9 +10046,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 110,
+                  "startLine": 123,
                   "startColumn": 12,
-                  "endLine": 110,
+                  "endLine": 123,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -10069,9 +10069,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 79,
+                  "startLine": 95,
                   "startColumn": 29,
-                  "endLine": 79,
+                  "endLine": 95,
                   "endColumn": 40,
                   "byteLength": 11
                 }
@@ -10092,9 +10092,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 80,
+                  "startLine": 96,
                   "startColumn": 29,
-                  "endLine": 80,
+                  "endLine": 96,
                   "endColumn": 109,
                   "byteLength": 80
                 }
@@ -10115,9 +10115,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 81,
+                  "startLine": 97,
                   "startColumn": 29,
-                  "endLine": 81,
+                  "endLine": 97,
                   "endColumn": 108,
                   "byteLength": 79
                 }
@@ -10138,9 +10138,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 82,
+                  "startLine": 98,
                   "startColumn": 19,
-                  "endLine": 82,
+                  "endLine": 98,
                   "endColumn": 20,
                   "byteLength": 1
                 }
@@ -10161,9 +10161,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 83,
+                  "startLine": 99,
                   "startColumn": 19,
-                  "endLine": 83,
+                  "endLine": 99,
                   "endColumn": 24,
                   "byteLength": 5
                 }
@@ -10175,7 +10175,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "error",
-          "message": { "text": "reachability of stmt line 85 in memmove." },
+          "message": { "text": "reachability of stmt line 101 in memmove." },
           "locations": [
             {
               "physicalLocation": {
@@ -10184,9 +10184,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 85,
+                  "startLine": 101,
                   "startColumn": 4,
-                  "endLine": 86,
+                  "endLine": 102,
                   "endColumn": 18,
                   "byteLength": 49
                 }
@@ -10198,7 +10198,9 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "error",
-          "message": { "text": "reachability post stmt line 85 in memmove." },
+          "message": {
+            "text": "reachability post stmt line 101 in memmove."
+          },
           "locations": [
             {
               "physicalLocation": {
@@ -10207,9 +10209,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 85,
+                  "startLine": 101,
                   "startColumn": 4,
-                  "endLine": 86,
+                  "endLine": 102,
                   "endColumn": 18,
                   "byteLength": 49
                 }
@@ -10230,9 +10232,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 91,
+                  "startLine": 107,
                   "startColumn": 29,
-                  "endLine": 91,
+                  "endLine": 107,
                   "endColumn": 39,
                   "byteLength": 10
                 }
@@ -10253,9 +10255,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 92,
+                  "startLine": 108,
                   "startColumn": 29,
-                  "endLine": 92,
+                  "endLine": 108,
                   "endColumn": 108,
                   "byteLength": 79
                 }
@@ -10276,9 +10278,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 93,
+                  "startLine": 109,
                   "startColumn": 29,
-                  "endLine": 93,
+                  "endLine": 109,
                   "endColumn": 109,
                   "byteLength": 80
                 }
@@ -10299,9 +10301,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 94,
+                  "startLine": 110,
                   "startColumn": 19,
-                  "endLine": 94,
+                  "endLine": 110,
                   "endColumn": 20,
                   "byteLength": 1
                 }
@@ -10322,9 +10324,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 95,
+                  "startLine": 111,
                   "startColumn": 19,
-                  "endLine": 95,
+                  "endLine": 111,
                   "endColumn": 20,
                   "byteLength": 1
                 }
@@ -10336,7 +10338,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "error",
-          "message": { "text": "reachability of stmt line 97 in memmove." },
+          "message": { "text": "reachability of stmt line 113 in memmove." },
           "locations": [
             {
               "physicalLocation": {
@@ -10345,9 +10347,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 97,
+                  "startLine": 113,
                   "startColumn": 4,
-                  "endLine": 98,
+                  "endLine": 114,
                   "endColumn": 18,
                   "byteLength": 51
                 }
@@ -10359,7 +10361,9 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "error",
-          "message": { "text": "reachability post stmt line 97 in memmove." },
+          "message": {
+            "text": "reachability post stmt line 113 in memmove."
+          },
           "locations": [
             {
               "physicalLocation": {
@@ -10368,9 +10372,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 97,
+                  "startLine": 113,
                   "startColumn": 4,
-                  "endLine": 98,
+                  "endLine": 114,
                   "endColumn": 18,
                   "byteLength": 51
                 }
@@ -10391,9 +10395,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 63,
+                  "startLine": 79,
                   "startColumn": 11,
-                  "endLine": 70,
+                  "endLine": 86,
                   "endColumn": 1,
                   "byteLength": 255
                 }
@@ -10416,9 +10420,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 63,
+                  "startLine": 79,
                   "startColumn": 11,
-                  "endLine": 70,
+                  "endLine": 86,
                   "endColumn": 1,
                   "byteLength": 255
                 }
@@ -10441,9 +10445,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 63,
+                  "startLine": 79,
                   "startColumn": 11,
-                  "endLine": 70,
+                  "endLine": 86,
                   "endColumn": 1,
                   "byteLength": 255
                 }
@@ -10464,9 +10468,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 63,
+                  "startLine": 79,
                   "startColumn": 11,
-                  "endLine": 70,
+                  "endLine": 86,
                   "endColumn": 1,
                   "byteLength": 255
                 }
@@ -10487,9 +10491,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 50,
+                  "startLine": 66,
                   "startColumn": 35,
-                  "endLine": 50,
+                  "endLine": 66,
                   "endColumn": 77,
                   "byteLength": 42
                 }
@@ -10510,9 +10514,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 53,
+                  "startLine": 69,
                   "startColumn": 32,
-                  "endLine": 53,
+                  "endLine": 69,
                   "endColumn": 75,
                   "byteLength": 43
                 }
@@ -10533,9 +10537,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 54,
+                  "startLine": 70,
                   "startColumn": 24,
-                  "endLine": 54,
+                  "endLine": 70,
                   "endColumn": 38,
                   "byteLength": 14
                 }
@@ -10556,9 +10560,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 57,
+                  "startLine": 73,
                   "startColumn": 32,
-                  "endLine": 57,
+                  "endLine": 73,
                   "endColumn": 75,
                   "byteLength": 43
                 }
@@ -10579,9 +10583,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 58,
+                  "startLine": 74,
                   "startColumn": 23,
-                  "endLine": 58,
+                  "endLine": 74,
                   "endColumn": 37,
                   "byteLength": 14
                 }
@@ -10602,9 +10606,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 51,
+                  "startLine": 67,
                   "startColumn": 31,
-                  "endLine": 51,
+                  "endLine": 67,
                   "endColumn": 43,
                   "byteLength": 12
                 }
@@ -10625,9 +10629,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 55,
+                  "startLine": 71,
                   "startColumn": 31,
-                  "endLine": 55,
+                  "endLine": 71,
                   "endColumn": 44,
                   "byteLength": 13
                 }
@@ -10648,9 +10652,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 59,
+                  "startLine": 75,
                   "startColumn": 30,
-                  "endLine": 59,
+                  "endLine": 75,
                   "endColumn": 42,
                   "byteLength": 12
                 }
@@ -10671,9 +10675,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 63,
+                  "startLine": 79,
                   "startColumn": 11,
-                  "endLine": 70,
+                  "endLine": 86,
                   "endColumn": 1,
                   "byteLength": 255
                 }
@@ -10696,9 +10700,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 48,
+                  "startLine": 64,
                   "startColumn": 10,
-                  "endLine": 48,
+                  "endLine": 64,
                   "endColumn": 17,
                   "byteLength": 7
                 }
@@ -10719,9 +10723,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 63,
+                  "startLine": 79,
                   "startColumn": 11,
-                  "endLine": 70,
+                  "endLine": 86,
                   "endColumn": 1,
                   "byteLength": 255
                 }
@@ -10742,9 +10746,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 63,
+                  "startLine": 79,
                   "startColumn": 11,
-                  "endLine": 70,
+                  "endLine": 86,
                   "endColumn": 1,
                   "byteLength": 255
                 }
@@ -10756,7 +10760,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "none",
-          "message": { "text": "behavior default! in function memset." },
+          "message": { "text": "behavior default! in function mempcpy." },
           "locations": [
             {
               "physicalLocation": {
@@ -10765,11 +10769,11 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 118,
+                  "startLine": 45,
                   "startColumn": 4,
-                  "endLine": 125,
+                  "endLine": 58,
                   "endColumn": 1,
-                  "byteLength": 144
+                  "byteLength": 396
                 }
               }
             }
@@ -10779,7 +10783,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "none",
-          "message": { "text": "valid_s." },
+          "message": { "text": "valid_dest." },
           "locations": [
             {
               "physicalLocation": {
@@ -10788,11 +10792,11 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 118,
-                  "startColumn": 22,
-                  "endLine": 118,
-                  "endColumn": 42,
-                  "byteLength": 20
+                  "startLine": 108,
+                  "startColumn": 25,
+                  "endLine": 108,
+                  "endColumn": 48,
+                  "byteLength": 23
                 }
               }
             }
@@ -10802,7 +10806,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "none",
-          "message": { "text": "acsl_c_equiv." },
+          "message": { "text": "valid_src." },
           "locations": [
             {
               "physicalLocation": {
@@ -10811,11 +10815,11 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 121,
-                  "startColumn": 26,
-                  "endLine": 121,
-                  "endColumn": 46,
-                  "byteLength": 20
+                  "startLine": 109,
+                  "startColumn": 24,
+                  "endLine": 109,
+                  "endColumn": 51,
+                  "byteLength": 27
                 }
               }
             }
@@ -10825,7 +10829,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "none",
-          "message": { "text": "result_ptr." },
+          "message": { "text": "separation." },
           "locations": [
             {
               "physicalLocation": {
@@ -10834,11 +10838,11 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 122,
-                  "startColumn": 24,
-                  "endLine": 122,
-                  "endColumn": 36,
-                  "byteLength": 12
+                  "startLine": 111,
+                  "startColumn": 4,
+                  "endLine": 111,
+                  "endColumn": 62,
+                  "byteLength": 58
                 }
               }
             }
@@ -10848,7 +10852,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "none",
-          "message": { "text": "assigns clause in function memset." },
+          "message": { "text": "copied_contents." },
           "locations": [
             {
               "physicalLocation": {
@@ -10857,11 +10861,11 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 119,
-                  "startColumn": 12,
-                  "endLine": 119,
-                  "endColumn": 32,
-                  "byteLength": 20
+                  "startLine": 114,
+                  "startColumn": 29,
+                  "endLine": 114,
+                  "endColumn": 76,
+                  "byteLength": 47
                 }
               }
             }
@@ -10871,10 +10875,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "none",
-          "message": {
-            "text":
-              "from clause of term *((char *)s + (0 .. n - 1)) in function memset."
-          },
+          "message": { "text": "result_next_byte." },
           "locations": [
             {
               "physicalLocation": {
@@ -10883,11 +10884,11 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 119,
-                  "startColumn": 12,
-                  "endLine": 119,
-                  "endColumn": 32,
-                  "byteLength": 20
+                  "startLine": 115,
+                  "startColumn": 30,
+                  "endLine": 115,
+                  "endColumn": 49,
+                  "byteLength": 19
                 }
               }
             }
@@ -10897,9 +10898,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "none",
-          "message": {
-            "text": "from clause of term \\result in function memset."
-          },
+          "message": { "text": "assigns clause in function mempcpy." },
           "locations": [
             {
               "physicalLocation": {
@@ -10908,11 +10907,11 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 120,
+                  "startLine": 112,
                   "startColumn": 12,
-                  "endLine": 120,
-                  "endColumn": 19,
-                  "byteLength": 7
+                  "endLine": 112,
+                  "endColumn": 35,
+                  "byteLength": 23
                 }
               }
             }
@@ -10922,12 +10921,367 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "none",
-          "message": { "text": "behavior default! in function mkstemp." },
+          "message": {
+            "text":
+              "from clause of term *((char *)dest + (0 .. n - 1)) in function mempcpy."
+          },
           "locations": [
             {
               "physicalLocation": {
                 "artifactLocation": {
-                  "uri": "libc/stdlib.h",
+                  "uri": "libc/string.h",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 112,
+                  "startColumn": 12,
+                  "endLine": 112,
+                  "endColumn": 35,
+                  "byteLength": 23
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "none",
+          "message": {
+            "text": "from clause of term \\result in function mempcpy."
+          },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/string.h",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 113,
+                  "startColumn": 12,
+                  "endLine": 113,
+                  "endColumn": 19,
+                  "byteLength": 7
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "none",
+          "message": { "text": "no_eva." },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/string.c",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 49,
+                  "startColumn": 27,
+                  "endLine": 49,
+                  "endColumn": 38,
+                  "byteLength": 11
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "none",
+          "message": { "text": "no_eva." },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/string.c",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 50,
+                  "startColumn": 27,
+                  "endLine": 50,
+                  "endColumn": 92,
+                  "byteLength": 65
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "none",
+          "message": { "text": "assigns clause in function mempcpy." },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/string.c",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 51,
+                  "startColumn": 17,
+                  "endLine": 51,
+                  "endColumn": 18,
+                  "byteLength": 1
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "none",
+          "message": { "text": "decrease clause in function mempcpy." },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/string.c",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 52,
+                  "startColumn": 17,
+                  "endLine": 52,
+                  "endColumn": 22,
+                  "byteLength": 5
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "error",
+          "message": { "text": "reachability of stmt line 54 in mempcpy." },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/string.c",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 54,
+                  "startColumn": 2,
+                  "endLine": 56,
+                  "endColumn": 3,
+                  "byteLength": 69
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "error",
+          "message": { "text": "reachability post stmt line 54 in mempcpy." },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/string.c",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 54,
+                  "startColumn": 2,
+                  "endLine": 56,
+                  "endColumn": 3,
+                  "byteLength": 69
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "none",
+          "message": { "text": "behavior default! in function memset." },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/string.c",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 134,
+                  "startColumn": 4,
+                  "endLine": 141,
+                  "endColumn": 1,
+                  "byteLength": 144
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "none",
+          "message": { "text": "valid_s." },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/string.h",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 131,
+                  "startColumn": 22,
+                  "endLine": 131,
+                  "endColumn": 42,
+                  "byteLength": 20
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "none",
+          "message": { "text": "acsl_c_equiv." },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/string.h",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 134,
+                  "startColumn": 26,
+                  "endLine": 134,
+                  "endColumn": 46,
+                  "byteLength": 20
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "none",
+          "message": { "text": "result_ptr." },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/string.h",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 135,
+                  "startColumn": 24,
+                  "endLine": 135,
+                  "endColumn": 36,
+                  "byteLength": 12
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "none",
+          "message": { "text": "assigns clause in function memset." },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/string.h",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 132,
+                  "startColumn": 12,
+                  "endLine": 132,
+                  "endColumn": 32,
+                  "byteLength": 20
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "none",
+          "message": {
+            "text":
+              "from clause of term *((char *)s + (0 .. n - 1)) in function memset."
+          },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/string.h",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 132,
+                  "startColumn": 12,
+                  "endLine": 132,
+                  "endColumn": 32,
+                  "byteLength": 20
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "none",
+          "message": {
+            "text": "from clause of term \\result in function memset."
+          },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/string.h",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 133,
+                  "startColumn": 12,
+                  "endLine": 133,
+                  "endColumn": 19,
+                  "byteLength": 7
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "none",
+          "message": { "text": "behavior default! in function mkstemp." },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/stdlib.h",
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
@@ -13648,15 +14002,15 @@
             {
               "physicalLocation": {
                 "artifactLocation": {
-                  "uri": "libc/string.h",
+                  "uri": "libc/string.c",
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 408,
-                  "startColumn": 12,
-                  "endLine": 408,
-                  "endColumn": 13,
-                  "byteLength": 1
+                  "startLine": 230,
+                  "startColumn": 4,
+                  "endLine": 237,
+                  "endColumn": 1,
+                  "byteLength": 141
                 }
               }
             }
@@ -13675,9 +14029,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 399,
+                  "startLine": 412,
                   "startColumn": 31,
-                  "endLine": 399,
+                  "endLine": 412,
                   "endColumn": 53,
                   "byteLength": 22
                 }
@@ -13698,9 +14052,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 400,
+                  "startLine": 413,
                   "startColumn": 26,
-                  "endLine": 400,
+                  "endLine": 413,
                   "endColumn": 55,
                   "byteLength": 29
                 }
@@ -13721,9 +14075,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 402,
+                  "startLine": 415,
                   "startColumn": 4,
-                  "endLine": 402,
+                  "endLine": 415,
                   "endColumn": 59,
                   "byteLength": 55
                 }
@@ -13744,9 +14098,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 405,
+                  "startLine": 418,
                   "startColumn": 28,
-                  "endLine": 405,
+                  "endLine": 418,
                   "endColumn": 49,
                   "byteLength": 21
                 }
@@ -13767,9 +14121,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 406,
+                  "startLine": 419,
                   "startColumn": 27,
-                  "endLine": 406,
+                  "endLine": 419,
                   "endColumn": 57,
                   "byteLength": 30
                 }
@@ -13790,9 +14144,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 403,
+                  "startLine": 416,
                   "startColumn": 12,
-                  "endLine": 403,
+                  "endLine": 416,
                   "endColumn": 32,
                   "byteLength": 20
                 }
@@ -13816,9 +14170,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 403,
+                  "startLine": 416,
                   "startColumn": 12,
-                  "endLine": 403,
+                  "endLine": 416,
                   "endColumn": 32,
                   "byteLength": 20
                 }
@@ -13841,9 +14195,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 404,
+                  "startLine": 417,
                   "startColumn": 12,
-                  "endLine": 404,
+                  "endLine": 417,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -13864,9 +14218,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 167,
+                  "startLine": 183,
                   "startColumn": 4,
-                  "endLine": 177,
+                  "endLine": 193,
                   "endColumn": 1,
                   "byteLength": 284
                 }
@@ -13933,9 +14287,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 167,
+                  "startLine": 183,
                   "startColumn": 4,
-                  "endLine": 177,
+                  "endLine": 193,
                   "endColumn": 1,
                   "byteLength": 284
                 }
@@ -13981,9 +14335,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 242,
+                  "startLine": 255,
                   "startColumn": 12,
-                  "endLine": 242,
+                  "endLine": 255,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -14004,9 +14358,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 234,
+                  "startLine": 247,
                   "startColumn": 36,
-                  "endLine": 234,
+                  "endLine": 247,
                   "endColumn": 63,
                   "byteLength": 27
                 }
@@ -14027,9 +14381,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 235,
+                  "startLine": 248,
                   "startColumn": 34,
-                  "endLine": 235,
+                  "endLine": 248,
                   "endColumn": 59,
                   "byteLength": 25
                 }
@@ -14050,9 +14404,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 239,
+                  "startLine": 252,
                   "startColumn": 4,
-                  "endLine": 240,
+                  "endLine": 253,
                   "endColumn": 65,
                   "byteLength": 82
                 }
@@ -14073,9 +14427,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 242,
+                  "startLine": 255,
                   "startColumn": 12,
-                  "endLine": 242,
+                  "endLine": 255,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -14098,9 +14452,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 236,
+                  "startLine": 249,
                   "startColumn": 12,
-                  "endLine": 236,
+                  "endLine": 249,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -14121,9 +14475,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 179,
+                  "startLine": 195,
                   "startColumn": 4,
-                  "endLine": 188,
+                  "endLine": 204,
                   "endColumn": 1,
                   "byteLength": 174
                 }
@@ -14144,9 +14498,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 411,
+                  "startLine": 424,
                   "startColumn": 31,
-                  "endLine": 411,
+                  "endLine": 424,
                   "endColumn": 53,
                   "byteLength": 22
                 }
@@ -14167,9 +14521,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 412,
+                  "startLine": 425,
                   "startColumn": 32,
-                  "endLine": 412,
+                  "endLine": 425,
                   "endColumn": 50,
                   "byteLength": 18
                 }
@@ -14190,9 +14544,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 413,
+                  "startLine": 426,
                   "startColumn": 26,
-                  "endLine": 413,
+                  "endLine": 426,
                   "endColumn": 70,
                   "byteLength": 44
                 }
@@ -14213,9 +14567,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 416,
+                  "startLine": 429,
                   "startColumn": 28,
-                  "endLine": 416,
+                  "endLine": 429,
                   "endColumn": 76,
                   "byteLength": 48
                 }
@@ -14236,9 +14590,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 419,
+                  "startLine": 432,
                   "startColumn": 4,
-                  "endLine": 419,
+                  "endLine": 432,
                   "endColumn": 60,
                   "byteLength": 56
                 }
@@ -14259,9 +14613,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 420,
+                  "startLine": 433,
                   "startColumn": 34,
-                  "endLine": 420,
+                  "endLine": 433,
                   "endColumn": 77,
                   "byteLength": 43
                 }
@@ -14282,9 +14636,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 421,
+                  "startLine": 434,
                   "startColumn": 24,
-                  "endLine": 421,
+                  "endLine": 434,
                   "endColumn": 39,
                   "byteLength": 15
                 }
@@ -14305,9 +14659,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 414,
+                  "startLine": 427,
                   "startColumn": 12,
-                  "endLine": 414,
+                  "endLine": 427,
                   "endColumn": 58,
                   "byteLength": 46
                 }
@@ -14331,9 +14685,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 414,
+                  "startLine": 427,
                   "startColumn": 12,
-                  "endLine": 414,
+                  "endLine": 427,
                   "endColumn": 58,
                   "byteLength": 46
                 }
@@ -14356,9 +14710,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 417,
+                  "startLine": 430,
                   "startColumn": 12,
-                  "endLine": 417,
+                  "endLine": 430,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -14371,7 +14725,7 @@
           "kind": "pass",
           "level": "none",
           "message": {
-            "text": "specialization of valid_string_s at stmt 191."
+            "text": "specialization of valid_string_s at stmt 202."
           },
           "locations": [
             {
@@ -14381,9 +14735,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 182,
+                  "startLine": 198,
                   "startColumn": 13,
-                  "endLine": 182,
+                  "endLine": 198,
                   "endColumn": 25,
                   "byteLength": 12
                 }
@@ -14395,7 +14749,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "error",
-          "message": { "text": "reachability of stmt line 182 in strcat." },
+          "message": { "text": "reachability of stmt line 198 in strcat." },
           "locations": [
             {
               "physicalLocation": {
@@ -14404,9 +14758,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 182,
+                  "startLine": 198,
                   "startColumn": 13,
-                  "endLine": 182,
+                  "endLine": 198,
                   "endColumn": 25,
                   "byteLength": 12
                 }
@@ -14427,9 +14781,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 225,
+                  "startLine": 251,
                   "startColumn": 5,
-                  "endLine": 232,
+                  "endLine": 258,
                   "endColumn": 1,
                   "byteLength": 158
                 }
@@ -14450,9 +14804,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 225,
+                  "startLine": 251,
                   "startColumn": 5,
-                  "endLine": 232,
+                  "endLine": 258,
                   "endColumn": 1,
                   "byteLength": 158
                 }
@@ -14473,9 +14827,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 225,
+                  "startLine": 251,
                   "startColumn": 5,
-                  "endLine": 232,
+                  "endLine": 258,
                   "endColumn": 1,
                   "byteLength": 158
                 }
@@ -14496,9 +14850,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 225,
+                  "startLine": 251,
                   "startColumn": 5,
-                  "endLine": 232,
+                  "endLine": 258,
                   "endColumn": 1,
                   "byteLength": 158
                 }
@@ -14519,9 +14873,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 160,
+                  "startLine": 173,
                   "startColumn": 29,
-                  "endLine": 160,
+                  "endLine": 173,
                   "endColumn": 49,
                   "byteLength": 20
                 }
@@ -14542,9 +14896,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 163,
+                  "startLine": 176,
                   "startColumn": 24,
-                  "endLine": 163,
+                  "endLine": 176,
                   "endColumn": 35,
                   "byteLength": 11
                 }
@@ -14565,9 +14919,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 170,
+                  "startLine": 183,
                   "startColumn": 28,
-                  "endLine": 170,
+                  "endLine": 183,
                   "endColumn": 40,
                   "byteLength": 12
                 }
@@ -14588,9 +14942,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 164,
+                  "startLine": 177,
                   "startColumn": 25,
-                  "endLine": 164,
+                  "endLine": 177,
                   "endColumn": 44,
                   "byteLength": 19
                 }
@@ -14611,9 +14965,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 165,
+                  "startLine": 178,
                   "startColumn": 30,
-                  "endLine": 165,
+                  "endLine": 178,
                   "endColumn": 66,
                   "byteLength": 36
                 }
@@ -14634,9 +14988,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 166,
+                  "startLine": 179,
                   "startColumn": 30,
-                  "endLine": 166,
+                  "endLine": 179,
                   "endColumn": 59,
                   "byteLength": 29
                 }
@@ -14657,9 +15011,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 167,
+                  "startLine": 180,
                   "startColumn": 33,
-                  "endLine": 167,
+                  "endLine": 180,
                   "endColumn": 59,
                   "byteLength": 26
                 }
@@ -14680,9 +15034,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 168,
+                  "startLine": 181,
                   "startColumn": 32,
-                  "endLine": 168,
+                  "endLine": 181,
                   "endColumn": 79,
                   "byteLength": 47
                 }
@@ -14703,9 +15057,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 171,
+                  "startLine": 184,
                   "startColumn": 25,
-                  "endLine": 171,
+                  "endLine": 184,
                   "endColumn": 41,
                   "byteLength": 16
                 }
@@ -14726,9 +15080,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 174,
+                  "startLine": 187,
                   "startColumn": 4,
-                  "endLine": 174,
+                  "endLine": 187,
                   "endColumn": 60,
                   "byteLength": 56
                 }
@@ -14749,9 +15103,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 225,
+                  "startLine": 251,
                   "startColumn": 5,
-                  "endLine": 232,
+                  "endLine": 258,
                   "endColumn": 1,
                   "byteLength": 158
                 }
@@ -14774,9 +15128,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 161,
+                  "startLine": 174,
                   "startColumn": 12,
-                  "endLine": 161,
+                  "endLine": 174,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -14797,9 +15151,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 182,
+                  "startLine": 195,
                   "startColumn": 12,
-                  "endLine": 182,
+                  "endLine": 195,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -14820,9 +15174,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 178,
+                  "startLine": 191,
                   "startColumn": 29,
-                  "endLine": 178,
+                  "endLine": 191,
                   "endColumn": 49,
                   "byteLength": 20
                 }
@@ -14843,9 +15197,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 180,
+                  "startLine": 193,
                   "startColumn": 30,
-                  "endLine": 180,
+                  "endLine": 193,
                   "endColumn": 64,
                   "byteLength": 34
                 }
@@ -14866,9 +15220,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 182,
+                  "startLine": 195,
                   "startColumn": 12,
-                  "endLine": 182,
+                  "endLine": 195,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -14891,9 +15245,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 179,
+                  "startLine": 192,
                   "startColumn": 12,
-                  "endLine": 179,
+                  "endLine": 192,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -14914,9 +15268,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 127,
+                  "startLine": 143,
                   "startColumn": 4,
-                  "endLine": 134,
+                  "endLine": 150,
                   "endColumn": 1,
                   "byteLength": 189
                 }
@@ -14937,9 +15291,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 140,
+                  "startLine": 153,
                   "startColumn": 30,
-                  "endLine": 140,
+                  "endLine": 153,
                   "endColumn": 51,
                   "byteLength": 21
                 }
@@ -14960,9 +15314,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 141,
+                  "startLine": 154,
                   "startColumn": 30,
-                  "endLine": 141,
+                  "endLine": 154,
                   "endColumn": 51,
                   "byteLength": 21
                 }
@@ -14983,9 +15337,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 143,
+                  "startLine": 156,
                   "startColumn": 26,
-                  "endLine": 143,
+                  "endLine": 156,
                   "endColumn": 50,
                   "byteLength": 24
                 }
@@ -15006,9 +15360,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 127,
+                  "startLine": 143,
                   "startColumn": 4,
-                  "endLine": 134,
+                  "endLine": 150,
                   "endColumn": 1,
                   "byteLength": 189
                 }
@@ -15031,9 +15385,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 142,
+                  "startLine": 155,
                   "startColumn": 12,
-                  "endLine": 142,
+                  "endLine": 155,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -15054,9 +15408,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 158,
+                  "startLine": 171,
                   "startColumn": 11,
-                  "endLine": 158,
+                  "endLine": 171,
                   "endColumn": 18,
                   "byteLength": 7
                 }
@@ -15077,9 +15431,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 154,
+                  "startLine": 167,
                   "startColumn": 30,
-                  "endLine": 154,
+                  "endLine": 167,
                   "endColumn": 51,
                   "byteLength": 21
                 }
@@ -15100,9 +15454,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 155,
+                  "startLine": 168,
                   "startColumn": 30,
-                  "endLine": 155,
+                  "endLine": 168,
                   "endColumn": 51,
                   "byteLength": 21
                 }
@@ -15123,9 +15477,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 158,
+                  "startLine": 171,
                   "startColumn": 11,
-                  "endLine": 158,
+                  "endLine": 171,
                   "endColumn": 18,
                   "byteLength": 7
                 }
@@ -15148,9 +15502,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 156,
+                  "startLine": 169,
                   "startColumn": 12,
-                  "endLine": 156,
+                  "endLine": 169,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -15171,9 +15525,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 204,
+                  "startLine": 220,
                   "startColumn": 4,
-                  "endLine": 211,
+                  "endLine": 227,
                   "endColumn": 1,
                   "byteLength": 137
                 }
@@ -15194,9 +15548,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 354,
+                  "startLine": 367,
                   "startColumn": 31,
-                  "endLine": 354,
+                  "endLine": 367,
                   "endColumn": 53,
                   "byteLength": 22
                 }
@@ -15217,9 +15571,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 355,
+                  "startLine": 368,
                   "startColumn": 26,
-                  "endLine": 355,
+                  "endLine": 368,
                   "endColumn": 55,
                   "byteLength": 29
                 }
@@ -15240,9 +15594,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 357,
+                  "startLine": 370,
                   "startColumn": 4,
-                  "endLine": 357,
+                  "endLine": 370,
                   "endColumn": 59,
                   "byteLength": 55
                 }
@@ -15263,9 +15617,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 360,
+                  "startLine": 373,
                   "startColumn": 28,
-                  "endLine": 360,
+                  "endLine": 373,
                   "endColumn": 49,
                   "byteLength": 21
                 }
@@ -15286,9 +15640,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 361,
+                  "startLine": 374,
                   "startColumn": 24,
-                  "endLine": 361,
+                  "endLine": 374,
                   "endColumn": 39,
                   "byteLength": 15
                 }
@@ -15309,9 +15663,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 358,
+                  "startLine": 371,
                   "startColumn": 12,
-                  "endLine": 358,
+                  "endLine": 371,
                   "endColumn": 32,
                   "byteLength": 20
                 }
@@ -15335,9 +15689,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 358,
+                  "startLine": 371,
                   "startColumn": 12,
-                  "endLine": 358,
+                  "endLine": 371,
                   "endColumn": 32,
                   "byteLength": 20
                 }
@@ -15360,9 +15714,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 359,
+                  "startLine": 372,
                   "startColumn": 12,
-                  "endLine": 359,
+                  "endLine": 372,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -15383,9 +15737,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 205,
+                  "startLine": 218,
                   "startColumn": 14,
-                  "endLine": 205,
+                  "endLine": 218,
                   "endColumn": 21,
                   "byteLength": 7
                 }
@@ -15406,9 +15760,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 200,
+                  "startLine": 213,
                   "startColumn": 29,
-                  "endLine": 200,
+                  "endLine": 213,
                   "endColumn": 49,
                   "byteLength": 20
                 }
@@ -15429,9 +15783,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 201,
+                  "startLine": 214,
                   "startColumn": 34,
-                  "endLine": 201,
+                  "endLine": 214,
                   "endColumn": 59,
                   "byteLength": 25
                 }
@@ -15452,9 +15806,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 203,
+                  "startLine": 216,
                   "startColumn": 28,
-                  "endLine": 203,
+                  "endLine": 216,
                   "endColumn": 53,
                   "byteLength": 25
                 }
@@ -15475,9 +15829,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 205,
+                  "startLine": 218,
                   "startColumn": 14,
-                  "endLine": 205,
+                  "endLine": 218,
                   "endColumn": 21,
                   "byteLength": 7
                 }
@@ -15500,9 +15854,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 202,
+                  "startLine": 215,
                   "startColumn": 12,
-                  "endLine": 202,
+                  "endLine": 215,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -15523,9 +15877,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 290,
+                  "startLine": 316,
                   "startColumn": 5,
-                  "endLine": 300,
+                  "endLine": 326,
                   "endColumn": 1,
                   "byteLength": 159
                 }
@@ -15546,9 +15900,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 290,
+                  "startLine": 316,
                   "startColumn": 5,
-                  "endLine": 300,
+                  "endLine": 326,
                   "endColumn": 1,
                   "byteLength": 159
                 }
@@ -15569,9 +15923,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 290,
+                  "startLine": 316,
                   "startColumn": 5,
-                  "endLine": 300,
+                  "endLine": 326,
                   "endColumn": 1,
                   "byteLength": 159
                 }
@@ -15592,9 +15946,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 471,
+                  "startLine": 484,
                   "startColumn": 29,
-                  "endLine": 471,
+                  "endLine": 484,
                   "endColumn": 49,
                   "byteLength": 20
                 }
@@ -15615,9 +15969,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 475,
+                  "startLine": 488,
                   "startColumn": 26,
-                  "endLine": 475,
+                  "endLine": 488,
                   "endColumn": 49,
                   "byteLength": 23
                 }
@@ -15638,9 +15992,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 482,
+                  "startLine": 495,
                   "startColumn": 29,
-                  "endLine": 482,
+                  "endLine": 495,
                   "endColumn": 53,
                   "byteLength": 24
                 }
@@ -15661,9 +16015,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 478,
+                  "startLine": 491,
                   "startColumn": 24,
-                  "endLine": 478,
+                  "endLine": 491,
                   "endColumn": 49,
                   "byteLength": 25
                 }
@@ -15684,9 +16038,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 480,
+                  "startLine": 493,
                   "startColumn": 4,
-                  "endLine": 480,
+                  "endLine": 493,
                   "endColumn": 51,
                   "byteLength": 47
                 }
@@ -15707,9 +16061,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 485,
+                  "startLine": 498,
                   "startColumn": 25,
-                  "endLine": 485,
+                  "endLine": 498,
                   "endColumn": 41,
                   "byteLength": 16
                 }
@@ -15730,9 +16084,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 476,
+                  "startLine": 489,
                   "startColumn": 12,
-                  "endLine": 476,
+                  "endLine": 489,
                   "endColumn": 28,
                   "byteLength": 16
                 }
@@ -15753,9 +16107,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 290,
+                  "startLine": 316,
                   "startColumn": 5,
-                  "endLine": 300,
+                  "endLine": 326,
                   "endColumn": 1,
                   "byteLength": 159
                 }
@@ -15776,9 +16130,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 290,
+                  "startLine": 316,
                   "startColumn": 5,
-                  "endLine": 300,
+                  "endLine": 326,
                   "endColumn": 1,
                   "byteLength": 159
                 }
@@ -15802,9 +16156,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 476,
+                  "startLine": 489,
                   "startColumn": 12,
-                  "endLine": 476,
+                  "endLine": 489,
                   "endColumn": 28,
                   "byteLength": 16
                 }
@@ -15827,9 +16181,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 477,
+                  "startLine": 490,
                   "startColumn": 12,
-                  "endLine": 477,
+                  "endLine": 490,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -15852,9 +16206,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 473,
+                  "startLine": 486,
                   "startColumn": 12,
-                  "endLine": 473,
+                  "endLine": 486,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -15877,9 +16231,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 483,
+                  "startLine": 496,
                   "startColumn": 12,
-                  "endLine": 483,
+                  "endLine": 496,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -15900,9 +16254,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 472,
+                  "startLine": 485,
                   "startColumn": 14,
-                  "endLine": 472,
+                  "endLine": 485,
                   "endColumn": 21,
                   "byteLength": 7
                 }
@@ -15923,9 +16277,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 290,
+                  "startLine": 316,
                   "startColumn": 5,
-                  "endLine": 300,
+                  "endLine": 326,
                   "endColumn": 1,
                   "byteLength": 159
                 }
@@ -15938,7 +16292,7 @@
           "kind": "pass",
           "level": "none",
           "message": {
-            "text": "specialization of valid_string_s at stmt 353."
+            "text": "specialization of valid_string_s at stmt 375."
           },
           "locations": [
             {
@@ -15948,9 +16302,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 292,
+                  "startLine": 318,
                   "startColumn": 13,
-                  "endLine": 292,
+                  "endLine": 318,
                   "endColumn": 22,
                   "byteLength": 9
                 }
@@ -15962,7 +16316,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "error",
-          "message": { "text": "reachability of stmt line 292 in strdup." },
+          "message": { "text": "reachability of stmt line 318 in strdup." },
           "locations": [
             {
               "physicalLocation": {
@@ -15971,9 +16325,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 292,
+                  "startLine": 318,
                   "startColumn": 13,
-                  "endLine": 292,
+                  "endLine": 318,
                   "endColumn": 22,
                   "byteLength": 9
                 }
@@ -15985,7 +16339,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "none",
-          "message": { "text": "specialization of valid_dest at stmt 360." },
+          "message": { "text": "specialization of valid_dest at stmt 382." },
           "locations": [
             {
               "physicalLocation": {
@@ -15994,9 +16348,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 298,
+                  "startLine": 324,
                   "startColumn": 2,
-                  "endLine": 298,
+                  "endLine": 324,
                   "endColumn": 17,
                   "byteLength": 15
                 }
@@ -16008,7 +16362,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "none",
-          "message": { "text": "specialization of valid_src at stmt 360." },
+          "message": { "text": "specialization of valid_src at stmt 382." },
           "locations": [
             {
               "physicalLocation": {
@@ -16017,9 +16371,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 298,
+                  "startLine": 324,
                   "startColumn": 2,
-                  "endLine": 298,
+                  "endLine": 324,
                   "endColumn": 17,
                   "byteLength": 15
                 }
@@ -16031,7 +16385,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "none",
-          "message": { "text": "specialization of separation at stmt 360." },
+          "message": { "text": "specialization of separation at stmt 382." },
           "locations": [
             {
               "physicalLocation": {
@@ -16040,9 +16394,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 298,
+                  "startLine": 324,
                   "startColumn": 2,
-                  "endLine": 298,
+                  "endLine": 324,
                   "endColumn": 17,
                   "byteLength": 15
                 }
@@ -16054,7 +16408,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "error",
-          "message": { "text": "reachability of stmt line 298 in strdup." },
+          "message": { "text": "reachability of stmt line 324 in strdup." },
           "locations": [
             {
               "physicalLocation": {
@@ -16063,9 +16417,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 298,
+                  "startLine": 324,
                   "startColumn": 2,
-                  "endLine": 298,
+                  "endLine": 324,
                   "endColumn": 17,
                   "byteLength": 15
                 }
@@ -16086,9 +16440,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 276,
+                  "startLine": 302,
                   "startColumn": 5,
-                  "endLine": 287,
+                  "endLine": 313,
                   "endColumn": 1,
                   "byteLength": 217
                 }
@@ -16109,9 +16463,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 346,
+                  "startLine": 359,
                   "startColumn": 33,
-                  "endLine": 346,
+                  "endLine": 359,
                   "endColumn": 59,
                   "byteLength": 26
                 }
@@ -16132,9 +16486,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 347,
+                  "startLine": 360,
                   "startColumn": 35,
-                  "endLine": 347,
+                  "endLine": 360,
                   "endColumn": 51,
                   "byteLength": 16
                 }
@@ -16155,9 +16509,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 348,
+                  "startLine": 361,
                   "startColumn": 33,
-                  "endLine": 348,
+                  "endLine": 361,
                   "endColumn": 59,
                   "byteLength": 26
                 }
@@ -16178,9 +16532,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 276,
+                  "startLine": 302,
                   "startColumn": 5,
-                  "endLine": 287,
+                  "endLine": 313,
                   "endColumn": 1,
                   "byteLength": 217
                 }
@@ -16203,9 +16557,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 345,
+                  "startLine": 358,
                   "startColumn": 12,
-                  "endLine": 345,
+                  "endLine": 358,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -16217,7 +16571,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "none",
-          "message": { "text": "specialization of valid_p at stmt 347." },
+          "message": { "text": "specialization of valid_p at stmt 369." },
           "locations": [
             {
               "physicalLocation": {
@@ -16226,9 +16580,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 281,
+                  "startLine": 307,
                   "startColumn": 4,
-                  "endLine": 281,
+                  "endLine": 307,
                   "endColumn": 43,
                   "byteLength": 39
                 }
@@ -16240,7 +16594,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "error",
-          "message": { "text": "reachability of stmt line 281 in strerror." },
+          "message": { "text": "reachability of stmt line 307 in strerror." },
           "locations": [
             {
               "physicalLocation": {
@@ -16249,9 +16603,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 281,
+                  "startLine": 307,
                   "startColumn": 4,
-                  "endLine": 281,
+                  "endLine": 307,
                   "endColumn": 43,
                   "byteLength": 39
                 }
@@ -16272,9 +16626,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 458,
+                  "startLine": 471,
                   "startColumn": 14,
-                  "endLine": 458,
+                  "endLine": 471,
                   "endColumn": 21,
                   "byteLength": 7
                 }
@@ -16295,9 +16649,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 451,
+                  "startLine": 464,
                   "startColumn": 31,
-                  "endLine": 451,
+                  "endLine": 464,
                   "endColumn": 53,
                   "byteLength": 22
                 }
@@ -16318,9 +16672,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 452,
+                  "startLine": 465,
                   "startColumn": 32,
-                  "endLine": 452,
+                  "endLine": 465,
                   "endColumn": 50,
                   "byteLength": 18
                 }
@@ -16341,9 +16695,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 453,
+                  "startLine": 466,
                   "startColumn": 27,
-                  "endLine": 453,
+                  "endLine": 466,
                   "endColumn": 48,
                   "byteLength": 21
                 }
@@ -16364,9 +16718,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 456,
+                  "startLine": 469,
                   "startColumn": 28,
-                  "endLine": 456,
+                  "endLine": 469,
                   "endColumn": 65,
                   "byteLength": 37
                 }
@@ -16387,9 +16741,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 454,
+                  "startLine": 467,
                   "startColumn": 12,
-                  "endLine": 454,
+                  "endLine": 467,
                   "endColumn": 33,
                   "byteLength": 21
                 }
@@ -16413,9 +16767,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 454,
+                  "startLine": 467,
                   "startColumn": 12,
-                  "endLine": 454,
+                  "endLine": 467,
                   "endColumn": 33,
                   "byteLength": 21
                 }
@@ -16438,9 +16792,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 455,
+                  "startLine": 468,
                   "startColumn": 12,
-                  "endLine": 455,
+                  "endLine": 468,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -16461,9 +16815,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 396,
+                  "startLine": 409,
                   "startColumn": 7,
-                  "endLine": 396,
+                  "endLine": 409,
                   "endColumn": 14,
                   "byteLength": 7
                 }
@@ -16484,9 +16838,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 387,
+                  "startLine": 400,
                   "startColumn": 31,
-                  "endLine": 387,
+                  "endLine": 400,
                   "endColumn": 53,
                   "byteLength": 22
                 }
@@ -16507,9 +16861,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 388,
+                  "startLine": 401,
                   "startColumn": 27,
-                  "endLine": 388,
+                  "endLine": 401,
                   "endColumn": 48,
                   "byteLength": 21
                 }
@@ -16530,9 +16884,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 390,
+                  "startLine": 403,
                   "startColumn": 4,
-                  "endLine": 390,
+                  "endLine": 403,
                   "endColumn": 61,
                   "byteLength": 57
                 }
@@ -16553,9 +16907,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 393,
+                  "startLine": 406,
                   "startColumn": 28,
-                  "endLine": 393,
+                  "endLine": 406,
                   "endColumn": 73,
                   "byteLength": 45
                 }
@@ -16576,9 +16930,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 394,
+                  "startLine": 407,
                   "startColumn": 28,
-                  "endLine": 394,
+                  "endLine": 407,
                   "endColumn": 50,
                   "byteLength": 22
                 }
@@ -16599,9 +16953,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 391,
+                  "startLine": 404,
                   "startColumn": 12,
-                  "endLine": 391,
+                  "endLine": 404,
                   "endColumn": 24,
                   "byteLength": 12
                 }
@@ -16625,9 +16979,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 391,
+                  "startLine": 404,
                   "startColumn": 12,
-                  "endLine": 391,
+                  "endLine": 404,
                   "endColumn": 24,
                   "byteLength": 12
                 }
@@ -16650,9 +17004,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 392,
+                  "startLine": 405,
                   "startColumn": 12,
-                  "endLine": 392,
+                  "endLine": 405,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -16673,9 +17027,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 104,
+                  "startLine": 120,
                   "startColumn": 7,
-                  "endLine": 109,
+                  "endLine": 125,
                   "endColumn": 1,
                   "byteLength": 80
                 }
@@ -16696,9 +17050,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 128,
+                  "startLine": 141,
                   "startColumn": 29,
-                  "endLine": 128,
+                  "endLine": 141,
                   "endColumn": 49,
                   "byteLength": 20
                 }
@@ -16719,9 +17073,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 130,
+                  "startLine": 143,
                   "startColumn": 26,
-                  "endLine": 130,
+                  "endLine": 143,
                   "endColumn": 46,
                   "byteLength": 20
                 }
@@ -16742,9 +17096,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 104,
+                  "startLine": 120,
                   "startColumn": 7,
-                  "endLine": 109,
+                  "endLine": 125,
                   "endColumn": 1,
                   "byteLength": 80
                 }
@@ -16767,9 +17121,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 129,
+                  "startLine": 142,
                   "startColumn": 12,
-                  "endLine": 129,
+                  "endLine": 142,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -16907,9 +17261,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 191,
+                  "startLine": 207,
                   "startColumn": 4,
-                  "endLine": 202,
+                  "endLine": 218,
                   "endColumn": 1,
                   "byteLength": 233
                 }
@@ -16930,9 +17284,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 191,
+                  "startLine": 207,
                   "startColumn": 4,
-                  "endLine": 202,
+                  "endLine": 218,
                   "endColumn": 1,
                   "byteLength": 233
                 }
@@ -16953,9 +17307,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 191,
+                  "startLine": 207,
                   "startColumn": 4,
-                  "endLine": 202,
+                  "endLine": 218,
                   "endColumn": 1,
                   "byteLength": 233
                 }
@@ -16976,9 +17330,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 426,
+                  "startLine": 439,
                   "startColumn": 32,
-                  "endLine": 426,
+                  "endLine": 439,
                   "endColumn": 58,
                   "byteLength": 26
                 }
@@ -16999,9 +17353,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 427,
+                  "startLine": 440,
                   "startColumn": 32,
-                  "endLine": 427,
+                  "endLine": 440,
                   "endColumn": 50,
                   "byteLength": 18
                 }
@@ -17022,9 +17376,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 433,
+                  "startLine": 446,
                   "startColumn": 26,
-                  "endLine": 433,
+                  "endLine": 446,
                   "endColumn": 74,
                   "byteLength": 48
                 }
@@ -17045,9 +17399,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 441,
+                  "startLine": 454,
                   "startColumn": 26,
-                  "endLine": 441,
+                  "endLine": 454,
                   "endColumn": 64,
                   "byteLength": 38
                 }
@@ -17068,9 +17422,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 432,
+                  "startLine": 445,
                   "startColumn": 35,
-                  "endLine": 432,
+                  "endLine": 445,
                   "endColumn": 77,
                   "byteLength": 42
                 }
@@ -17091,9 +17445,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 440,
+                  "startLine": 453,
                   "startColumn": 4,
-                  "endLine": 440,
+                  "endLine": 453,
                   "endColumn": 49,
                   "byteLength": 45
                 }
@@ -17114,9 +17468,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 430,
+                  "startLine": 443,
                   "startColumn": 24,
-                  "endLine": 430,
+                  "endLine": 443,
                   "endColumn": 39,
                   "byteLength": 15
                 }
@@ -17137,9 +17491,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 437,
+                  "startLine": 450,
                   "startColumn": 28,
-                  "endLine": 437,
+                  "endLine": 450,
                   "endColumn": 76,
                   "byteLength": 48
                 }
@@ -17160,9 +17514,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 445,
+                  "startLine": 458,
                   "startColumn": 36,
-                  "endLine": 445,
+                  "endLine": 458,
                   "endColumn": 74,
                   "byteLength": 38
                 }
@@ -17183,9 +17537,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 434,
+                  "startLine": 447,
                   "startColumn": 12,
-                  "endLine": 434,
+                  "endLine": 447,
                   "endColumn": 58,
                   "byteLength": 46
                 }
@@ -17206,9 +17560,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 428,
+                  "startLine": 441,
                   "startColumn": 12,
-                  "endLine": 428,
+                  "endLine": 441,
                   "endColumn": 50,
                   "byteLength": 38
                 }
@@ -17229,9 +17583,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 442,
+                  "startLine": 455,
                   "startColumn": 12,
-                  "endLine": 442,
+                  "endLine": 455,
                   "endColumn": 48,
                   "byteLength": 36
                 }
@@ -17255,9 +17609,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 434,
+                  "startLine": 447,
                   "startColumn": 12,
-                  "endLine": 434,
+                  "endLine": 447,
                   "endColumn": 58,
                   "byteLength": 46
                 }
@@ -17280,9 +17634,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 436,
+                  "startLine": 449,
                   "startColumn": 12,
-                  "endLine": 436,
+                  "endLine": 449,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -17306,9 +17660,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 428,
+                  "startLine": 441,
                   "startColumn": 12,
-                  "endLine": 428,
+                  "endLine": 441,
                   "endColumn": 50,
                   "byteLength": 38
                 }
@@ -17331,9 +17685,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 429,
+                  "startLine": 442,
                   "startColumn": 12,
-                  "endLine": 429,
+                  "endLine": 442,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -17357,9 +17711,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 442,
+                  "startLine": 455,
                   "startColumn": 12,
-                  "endLine": 442,
+                  "endLine": 455,
                   "endColumn": 48,
                   "byteLength": 36
                 }
@@ -17382,9 +17736,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 444,
+                  "startLine": 457,
                   "startColumn": 12,
-                  "endLine": 444,
+                  "endLine": 457,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -17397,7 +17751,7 @@
           "kind": "pass",
           "level": "none",
           "message": {
-            "text": "specialization of valid_string_s at stmt 204."
+            "text": "specialization of valid_string_s at stmt 215."
           },
           "locations": [
             {
@@ -17407,9 +17761,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 193,
+                  "startLine": 209,
                   "startColumn": 20,
-                  "endLine": 193,
+                  "endLine": 209,
                   "endColumn": 32,
                   "byteLength": 12
                 }
@@ -17421,7 +17775,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "error",
-          "message": { "text": "reachability of stmt line 193 in strncat." },
+          "message": { "text": "reachability of stmt line 209 in strncat." },
           "locations": [
             {
               "physicalLocation": {
@@ -17430,9 +17784,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 193,
+                  "startLine": 209,
                   "startColumn": 20,
-                  "endLine": 193,
+                  "endLine": 209,
                   "endColumn": 32,
                   "byteLength": 12
                 }
@@ -17453,9 +17807,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 136,
+                  "startLine": 152,
                   "startColumn": 4,
-                  "endLine": 145,
+                  "endLine": 161,
                   "endColumn": 1,
                   "byteLength": 267
                 }
@@ -17476,9 +17830,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 147,
+                  "startLine": 160,
                   "startColumn": 30,
-                  "endLine": 147,
+                  "endLine": 160,
                   "endColumn": 55,
                   "byteLength": 25
                 }
@@ -17499,9 +17853,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 148,
+                  "startLine": 161,
                   "startColumn": 30,
-                  "endLine": 148,
+                  "endLine": 161,
                   "endColumn": 55,
                   "byteLength": 25
                 }
@@ -17522,9 +17876,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 150,
+                  "startLine": 163,
                   "startColumn": 26,
-                  "endLine": 150,
+                  "endLine": 163,
                   "endColumn": 53,
                   "byteLength": 27
                 }
@@ -17545,9 +17899,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 136,
+                  "startLine": 152,
                   "startColumn": 4,
-                  "endLine": 145,
+                  "endLine": 161,
                   "endColumn": 1,
                   "byteLength": 267
                 }
@@ -17570,9 +17924,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 149,
+                  "startLine": 162,
                   "startColumn": 12,
-                  "endLine": 149,
+                  "endLine": 162,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -17593,9 +17947,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 213,
+                  "startLine": 239,
                   "startColumn": 5,
-                  "endLine": 223,
+                  "endLine": 249,
                   "endColumn": 1,
                   "byteLength": 198
                 }
@@ -17616,9 +17970,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 213,
+                  "startLine": 239,
                   "startColumn": 5,
-                  "endLine": 223,
+                  "endLine": 249,
                   "endColumn": 1,
                   "byteLength": 198
                 }
@@ -17639,9 +17993,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 213,
+                  "startLine": 239,
                   "startColumn": 5,
-                  "endLine": 223,
+                  "endLine": 249,
                   "endColumn": 1,
                   "byteLength": 198
                 }
@@ -17662,9 +18016,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 366,
+                  "startLine": 379,
                   "startColumn": 32,
-                  "endLine": 366,
+                  "endLine": 379,
                   "endColumn": 58,
                   "byteLength": 26
                 }
@@ -17685,9 +18039,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 367,
+                  "startLine": 380,
                   "startColumn": 27,
-                  "endLine": 367,
+                  "endLine": 380,
                   "endColumn": 50,
                   "byteLength": 23
                 }
@@ -17708,9 +18062,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 369,
+                  "startLine": 382,
                   "startColumn": 4,
-                  "endLine": 369,
+                  "endLine": 382,
                   "endColumn": 43,
                   "byteLength": 39
                 }
@@ -17731,9 +18085,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 375,
+                  "startLine": 388,
                   "startColumn": 22,
-                  "endLine": 375,
+                  "endLine": 388,
                   "endColumn": 37,
                   "byteLength": 15
                 }
@@ -17754,9 +18108,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 378,
+                  "startLine": 391,
                   "startColumn": 26,
-                  "endLine": 378,
+                  "endLine": 391,
                   "endColumn": 42,
                   "byteLength": 16
                 }
@@ -17777,9 +18131,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 372,
+                  "startLine": 385,
                   "startColumn": 24,
-                  "endLine": 372,
+                  "endLine": 385,
                   "endColumn": 39,
                   "byteLength": 15
                 }
@@ -17800,9 +18154,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 373,
+                  "startLine": 386,
                   "startColumn": 28,
-                  "endLine": 373,
+                  "endLine": 386,
                   "endColumn": 57,
                   "byteLength": 29
                 }
@@ -17823,9 +18177,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 376,
+                  "startLine": 389,
                   "startColumn": 30,
-                  "endLine": 376,
+                  "endLine": 389,
                   "endColumn": 51,
                   "byteLength": 21
                 }
@@ -17846,9 +18200,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 379,
+                  "startLine": 392,
                   "startColumn": 26,
-                  "endLine": 379,
+                  "endLine": 392,
                   "endColumn": 60,
                   "byteLength": 34
                 }
@@ -17869,9 +18223,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 370,
+                  "startLine": 383,
                   "startColumn": 12,
-                  "endLine": 370,
+                  "endLine": 383,
                   "endColumn": 26,
                   "byteLength": 14
                 }
@@ -17895,9 +18249,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 370,
+                  "startLine": 383,
                   "startColumn": 12,
-                  "endLine": 370,
+                  "endLine": 383,
                   "endColumn": 26,
                   "byteLength": 14
                 }
@@ -17920,9 +18274,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 371,
+                  "startLine": 384,
                   "startColumn": 12,
-                  "endLine": 371,
+                  "endLine": 384,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -17943,9 +18297,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 303,
+                  "startLine": 329,
                   "startColumn": 5,
-                  "endLine": 318,
+                  "endLine": 344,
                   "endColumn": 1,
                   "byteLength": 291
                 }
@@ -17966,9 +18320,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 303,
+                  "startLine": 329,
                   "startColumn": 5,
-                  "endLine": 318,
+                  "endLine": 344,
                   "endColumn": 1,
                   "byteLength": 291
                 }
@@ -17991,9 +18345,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 303,
+                  "startLine": 329,
                   "startColumn": 5,
-                  "endLine": 318,
+                  "endLine": 344,
                   "endColumn": 1,
                   "byteLength": 291
                 }
@@ -18014,9 +18368,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 489,
+                  "startLine": 502,
                   "startColumn": 29,
-                  "endLine": 489,
+                  "endLine": 502,
                   "endColumn": 49,
                   "byteLength": 20
                 }
@@ -18037,9 +18391,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 494,
+                  "startLine": 507,
                   "startColumn": 26,
-                  "endLine": 494,
+                  "endLine": 507,
                   "endColumn": 60,
                   "byteLength": 34
                 }
@@ -18060,9 +18414,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 504,
+                  "startLine": 517,
                   "startColumn": 29,
-                  "endLine": 504,
+                  "endLine": 517,
                   "endColumn": 64,
                   "byteLength": 35
                 }
@@ -18083,9 +18437,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 498,
+                  "startLine": 511,
                   "startColumn": 24,
-                  "endLine": 498,
+                  "endLine": 511,
                   "endColumn": 60,
                   "byteLength": 36
                 }
@@ -18108,9 +18462,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 500,
+                  "startLine": 513,
                   "startColumn": 4,
-                  "endLine": 502,
+                  "endLine": 515,
                   "endColumn": 29,
                   "byteLength": 124
                 }
@@ -18131,9 +18485,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 507,
+                  "startLine": 520,
                   "startColumn": 25,
-                  "endLine": 507,
+                  "endLine": 520,
                   "endColumn": 41,
                   "byteLength": 16
                 }
@@ -18154,9 +18508,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 495,
+                  "startLine": 508,
                   "startColumn": 12,
-                  "endLine": 495,
+                  "endLine": 508,
                   "endColumn": 28,
                   "byteLength": 16
                 }
@@ -18177,9 +18531,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 303,
+                  "startLine": 329,
                   "startColumn": 5,
-                  "endLine": 318,
+                  "endLine": 344,
                   "endColumn": 1,
                   "byteLength": 291
                 }
@@ -18200,9 +18554,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 303,
+                  "startLine": 329,
                   "startColumn": 5,
-                  "endLine": 318,
+                  "endLine": 344,
                   "endColumn": 1,
                   "byteLength": 291
                 }
@@ -18226,9 +18580,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 495,
+                  "startLine": 508,
                   "startColumn": 12,
-                  "endLine": 495,
+                  "endLine": 508,
                   "endColumn": 28,
                   "byteLength": 16
                 }
@@ -18251,9 +18605,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 496,
+                  "startLine": 509,
                   "startColumn": 12,
-                  "endLine": 496,
+                  "endLine": 509,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -18276,9 +18630,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 491,
+                  "startLine": 504,
                   "startColumn": 12,
-                  "endLine": 491,
+                  "endLine": 504,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -18301,9 +18655,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 505,
+                  "startLine": 518,
                   "startColumn": 12,
-                  "endLine": 505,
+                  "endLine": 518,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -18326,9 +18680,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 490,
+                  "startLine": 503,
                   "startColumn": 14,
-                  "endLine": 490,
+                  "endLine": 503,
                   "endColumn": 21,
                   "byteLength": 7
                 }
@@ -18351,9 +18705,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 303,
+                  "startLine": 329,
                   "startColumn": 5,
-                  "endLine": 318,
+                  "endLine": 344,
                   "endColumn": 1,
                   "byteLength": 291
                 }
@@ -18365,7 +18719,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "none",
-          "message": { "text": "specialization of valid_dest at stmt 380." },
+          "message": { "text": "specialization of valid_dest at stmt 402." },
           "locations": [
             {
               "physicalLocation": {
@@ -18374,9 +18728,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 315,
+                  "startLine": 341,
                   "startColumn": 2,
-                  "endLine": 315,
+                  "endLine": 341,
                   "endColumn": 17,
                   "byteLength": 15
                 }
@@ -18388,7 +18742,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "none",
-          "message": { "text": "specialization of valid_src at stmt 380." },
+          "message": { "text": "specialization of valid_src at stmt 402." },
           "locations": [
             {
               "physicalLocation": {
@@ -18397,9 +18751,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 315,
+                  "startLine": 341,
                   "startColumn": 2,
-                  "endLine": 315,
+                  "endLine": 341,
                   "endColumn": 17,
                   "byteLength": 15
                 }
@@ -18411,7 +18765,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "none",
-          "message": { "text": "specialization of separation at stmt 380." },
+          "message": { "text": "specialization of separation at stmt 402." },
           "locations": [
             {
               "physicalLocation": {
@@ -18420,9 +18774,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 315,
+                  "startLine": 341,
                   "startColumn": 2,
-                  "endLine": 315,
+                  "endLine": 341,
                   "endColumn": 17,
                   "byteLength": 15
                 }
@@ -18434,7 +18788,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "error",
-          "message": { "text": "reachability of stmt line 315 in strndup." },
+          "message": { "text": "reachability of stmt line 341 in strndup." },
           "locations": [
             {
               "physicalLocation": {
@@ -18443,9 +18797,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 315,
+                  "startLine": 341,
                   "startColumn": 2,
-                  "endLine": 315,
+                  "endLine": 341,
                   "endColumn": 17,
                   "byteLength": 15
                 }
@@ -18466,9 +18820,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 111,
+                  "startLine": 127,
                   "startColumn": 7,
-                  "endLine": 116,
+                  "endLine": 132,
                   "endColumn": 1,
                   "byteLength": 110
                 }
@@ -18489,9 +18843,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 134,
+                  "startLine": 147,
                   "startColumn": 29,
-                  "endLine": 134,
+                  "endLine": 147,
                   "endColumn": 53,
                   "byteLength": 24
                 }
@@ -18512,9 +18866,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 136,
+                  "startLine": 149,
                   "startColumn": 28,
-                  "endLine": 136,
+                  "endLine": 149,
                   "endColumn": 64,
                   "byteLength": 36
                 }
@@ -18535,9 +18889,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 111,
+                  "startLine": 127,
                   "startColumn": 7,
-                  "endLine": 116,
+                  "endLine": 132,
                   "endColumn": 1,
                   "byteLength": 110
                 }
@@ -18560,9 +18914,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 135,
+                  "startLine": 148,
                   "startColumn": 12,
-                  "endLine": 135,
+                  "endLine": 148,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -18583,9 +18937,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 221,
+                  "startLine": 234,
                   "startColumn": 12,
-                  "endLine": 221,
+                  "endLine": 234,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -18606,9 +18960,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 215,
+                  "startLine": 228,
                   "startColumn": 29,
-                  "endLine": 215,
+                  "endLine": 228,
                   "endColumn": 49,
                   "byteLength": 20
                 }
@@ -18629,9 +18983,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 216,
+                  "startLine": 229,
                   "startColumn": 34,
-                  "endLine": 216,
+                  "endLine": 229,
                   "endColumn": 59,
                   "byteLength": 25
                 }
@@ -18652,9 +19006,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 219,
+                  "startLine": 232,
                   "startColumn": 4,
-                  "endLine": 219,
+                  "endLine": 232,
                   "endColumn": 60,
                   "byteLength": 56
                 }
@@ -18675,9 +19029,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 221,
+                  "startLine": 234,
                   "startColumn": 12,
-                  "endLine": 221,
+                  "endLine": 234,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -18700,9 +19054,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 217,
+                  "startLine": 230,
                   "startColumn": 12,
-                  "endLine": 217,
+                  "endLine": 230,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -18723,9 +19077,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 234,
+                  "startLine": 260,
                   "startColumn": 5,
-                  "endLine": 240,
+                  "endLine": 266,
                   "endColumn": 1,
                   "byteLength": 165
                 }
@@ -18746,9 +19100,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 234,
+                  "startLine": 260,
                   "startColumn": 5,
-                  "endLine": 240,
+                  "endLine": 266,
                   "endColumn": 1,
                   "byteLength": 165
                 }
@@ -18769,9 +19123,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 234,
+                  "startLine": 260,
                   "startColumn": 5,
-                  "endLine": 240,
+                  "endLine": 266,
                   "endColumn": 1,
                   "byteLength": 165
                 }
@@ -18792,9 +19146,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 234,
+                  "startLine": 260,
                   "startColumn": 5,
-                  "endLine": 240,
+                  "endLine": 266,
                   "endColumn": 1,
                   "byteLength": 165
                 }
@@ -18815,9 +19169,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 184,
+                  "startLine": 197,
                   "startColumn": 29,
-                  "endLine": 184,
+                  "endLine": 197,
                   "endColumn": 49,
                   "byteLength": 20
                 }
@@ -18838,9 +19192,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 187,
+                  "startLine": 200,
                   "startColumn": 24,
-                  "endLine": 187,
+                  "endLine": 200,
                   "endColumn": 35,
                   "byteLength": 11
                 }
@@ -18861,9 +19215,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 192,
+                  "startLine": 205,
                   "startColumn": 28,
-                  "endLine": 192,
+                  "endLine": 205,
                   "endColumn": 40,
                   "byteLength": 12
                 }
@@ -18884,9 +19238,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 188,
+                  "startLine": 201,
                   "startColumn": 25,
-                  "endLine": 188,
+                  "endLine": 201,
                   "endColumn": 38,
                   "byteLength": 13
                 }
@@ -18907,9 +19261,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 189,
+                  "startLine": 202,
                   "startColumn": 30,
-                  "endLine": 189,
+                  "endLine": 202,
                   "endColumn": 66,
                   "byteLength": 36
                 }
@@ -18930,9 +19284,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 190,
+                  "startLine": 203,
                   "startColumn": 33,
-                  "endLine": 190,
+                  "endLine": 203,
                   "endColumn": 59,
                   "byteLength": 26
                 }
@@ -18953,9 +19307,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 193,
+                  "startLine": 206,
                   "startColumn": 25,
-                  "endLine": 193,
+                  "endLine": 206,
                   "endColumn": 41,
                   "byteLength": 16
                 }
@@ -18976,9 +19330,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 196,
+                  "startLine": 209,
                   "startColumn": 4,
-                  "endLine": 196,
+                  "endLine": 209,
                   "endColumn": 60,
                   "byteLength": 56
                 }
@@ -18999,9 +19353,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 234,
+                  "startLine": 260,
                   "startColumn": 5,
-                  "endLine": 240,
+                  "endLine": 266,
                   "endColumn": 1,
                   "byteLength": 165
                 }
@@ -19024,9 +19378,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 185,
+                  "startLine": 198,
                   "startColumn": 12,
-                  "endLine": 185,
+                  "endLine": 198,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -19039,7 +19393,7 @@
           "kind": "pass",
           "level": "none",
           "message": {
-            "text": "specialization of valid_string_s at stmt 269."
+            "text": "specialization of valid_string_s at stmt 291."
           },
           "locations": [
             {
@@ -19049,9 +19403,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 237,
+                  "startLine": 263,
                   "startColumn": 18,
-                  "endLine": 237,
+                  "endLine": 263,
                   "endColumn": 27,
                   "byteLength": 9
                 }
@@ -19063,7 +19417,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "error",
-          "message": { "text": "reachability of stmt line 237 in strrchr." },
+          "message": { "text": "reachability of stmt line 263 in strrchr." },
           "locations": [
             {
               "physicalLocation": {
@@ -19072,9 +19426,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 237,
+                  "startLine": 263,
                   "startColumn": 18,
-                  "endLine": 237,
+                  "endLine": 263,
                   "endColumn": 27,
                   "byteLength": 9
                 }
@@ -19095,9 +19449,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 337,
+                  "startLine": 350,
                   "startColumn": 12,
-                  "endLine": 337,
+                  "endLine": 350,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -19118,9 +19472,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 332,
+                  "startLine": 345,
                   "startColumn": 35,
-                  "endLine": 332,
+                  "endLine": 345,
                   "endColumn": 76,
                   "byteLength": 41
                 }
@@ -19141,9 +19495,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 333,
+                  "startLine": 346,
                   "startColumn": 33,
-                  "endLine": 333,
+                  "endLine": 346,
                   "endColumn": 57,
                   "byteLength": 24
                 }
@@ -19164,9 +19518,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 334,
+                  "startLine": 347,
                   "startColumn": 12,
-                  "endLine": 334,
+                  "endLine": 347,
                   "endColumn": 20,
                   "byteLength": 8
                 }
@@ -19189,9 +19543,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 334,
+                  "startLine": 347,
                   "startColumn": 12,
-                  "endLine": 334,
+                  "endLine": 347,
                   "endColumn": 20,
                   "byteLength": 8
                 }
@@ -19214,9 +19568,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 335,
+                  "startLine": 348,
                   "startColumn": 12,
-                  "endLine": 335,
+                  "endLine": 348,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -19237,9 +19591,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 322,
+                  "startLine": 348,
                   "startColumn": 5,
-                  "endLine": 333,
+                  "endLine": 359,
                   "endColumn": 1,
                   "byteLength": 224
                 }
@@ -19260,9 +19614,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 522,
+                  "startLine": 535,
                   "startColumn": 33,
-                  "endLine": 522,
+                  "endLine": 535,
                   "endColumn": 60,
                   "byteLength": 27
                 }
@@ -19283,9 +19637,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 523,
+                  "startLine": 536,
                   "startColumn": 35,
-                  "endLine": 523,
+                  "endLine": 536,
                   "endColumn": 51,
                   "byteLength": 16
                 }
@@ -19306,9 +19660,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 524,
+                  "startLine": 537,
                   "startColumn": 33,
-                  "endLine": 524,
+                  "endLine": 537,
                   "endColumn": 59,
                   "byteLength": 26
                 }
@@ -19329,9 +19683,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 322,
+                  "startLine": 348,
                   "startColumn": 5,
-                  "endLine": 333,
+                  "endLine": 359,
                   "endColumn": 1,
                   "byteLength": 224
                 }
@@ -19354,9 +19708,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 521,
+                  "startLine": 534,
                   "startColumn": 12,
-                  "endLine": 521,
+                  "endLine": 534,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -19368,7 +19722,7 @@
           "ruleId": "user-spec",
           "kind": "pass",
           "level": "none",
-          "message": { "text": "specialization of valid_p at stmt 386." },
+          "message": { "text": "specialization of valid_p at stmt 408." },
           "locations": [
             {
               "physicalLocation": {
@@ -19377,9 +19731,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 327,
+                  "startLine": 353,
                   "startColumn": 4,
-                  "endLine": 327,
+                  "endLine": 353,
                   "endColumn": 44,
                   "byteLength": 40
                 }
@@ -19392,7 +19746,7 @@
           "kind": "pass",
           "level": "error",
           "message": {
-            "text": "reachability of stmt line 327 in strsignal."
+            "text": "reachability of stmt line 353 in strsignal."
           },
           "locations": [
             {
@@ -19402,9 +19756,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 327,
+                  "startLine": 353,
                   "startColumn": 4,
-                  "endLine": 327,
+                  "endLine": 353,
                   "endColumn": 44,
                   "byteLength": 40
                 }
@@ -19425,9 +19779,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 213,
+                  "startLine": 226,
                   "startColumn": 14,
-                  "endLine": 213,
+                  "endLine": 226,
                   "endColumn": 20,
                   "byteLength": 6
                 }
@@ -19448,9 +19802,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 207,
+                  "startLine": 220,
                   "startColumn": 29,
-                  "endLine": 207,
+                  "endLine": 220,
                   "endColumn": 49,
                   "byteLength": 20
                 }
@@ -19471,9 +19825,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 208,
+                  "startLine": 221,
                   "startColumn": 34,
-                  "endLine": 208,
+                  "endLine": 221,
                   "endColumn": 59,
                   "byteLength": 25
                 }
@@ -19494,9 +19848,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 211,
+                  "startLine": 224,
                   "startColumn": 28,
-                  "endLine": 211,
+                  "endLine": 224,
                   "endColumn": 53,
                   "byteLength": 25
                 }
@@ -19517,9 +19871,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 209,
+                  "startLine": 222,
                   "startColumn": 12,
-                  "endLine": 209,
+                  "endLine": 222,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -19542,9 +19896,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 209,
+                  "startLine": 222,
                   "startColumn": 12,
-                  "endLine": 209,
+                  "endLine": 222,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -19567,9 +19921,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 210,
+                  "startLine": 223,
                   "startColumn": 12,
-                  "endLine": 210,
+                  "endLine": 223,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -19590,9 +19944,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 260,
+                  "startLine": 286,
                   "startColumn": 5,
-                  "endLine": 272,
+                  "endLine": 298,
                   "endColumn": 1,
                   "byteLength": 380
                 }
@@ -19613,9 +19967,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 223,
+                  "startLine": 236,
                   "startColumn": 36,
-                  "endLine": 223,
+                  "endLine": 236,
                   "endColumn": 63,
                   "byteLength": 27
                 }
@@ -19636,9 +19990,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 224,
+                  "startLine": 237,
                   "startColumn": 34,
-                  "endLine": 224,
+                  "endLine": 237,
                   "endColumn": 59,
                   "byteLength": 25
                 }
@@ -19659,9 +20013,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 228,
+                  "startLine": 241,
                   "startColumn": 4,
-                  "endLine": 230,
+                  "endLine": 243,
                   "endColumn": 59,
                   "byteLength": 141
                 }
@@ -19682,9 +20036,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 260,
+                  "startLine": 286,
                   "startColumn": 5,
-                  "endLine": 272,
+                  "endLine": 298,
                   "endColumn": 1,
                   "byteLength": 380
                 }
@@ -19707,9 +20061,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 225,
+                  "startLine": 238,
                   "startColumn": 12,
-                  "endLine": 225,
+                  "endLine": 238,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -20720,9 +21074,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 286,
+                  "startLine": 299,
                   "startColumn": 12,
-                  "endLine": 286,
+                  "endLine": 299,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -20743,9 +21097,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 286,
+                  "startLine": 299,
                   "startColumn": 12,
-                  "endLine": 286,
+                  "endLine": 299,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -20766,9 +21120,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 286,
+                  "startLine": 299,
                   "startColumn": 12,
-                  "endLine": 286,
+                  "endLine": 299,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -20789,9 +21143,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 248,
+                  "startLine": 261,
                   "startColumn": 31,
-                  "endLine": 248,
+                  "endLine": 261,
                   "endColumn": 55,
                   "byteLength": 24
                 }
@@ -20812,9 +21166,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 261,
+                  "startLine": 274,
                   "startColumn": 6,
-                  "endLine": 263,
+                  "endLine": 276,
                   "endColumn": 70,
                   "byteLength": 120
                 }
@@ -20835,9 +21189,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 271,
+                  "startLine": 284,
                   "startColumn": 29,
-                  "endLine": 271,
+                  "endLine": 284,
                   "endColumn": 53,
                   "byteLength": 24
                 }
@@ -20858,9 +21212,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 259,
+                  "startLine": 272,
                   "startColumn": 24,
-                  "endLine": 259,
+                  "endLine": 272,
                   "endColumn": 34,
                   "byteLength": 10
                 }
@@ -20881,9 +21235,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 270,
+                  "startLine": 283,
                   "startColumn": 20,
-                  "endLine": 270,
+                  "endLine": 283,
                   "endColumn": 30,
                   "byteLength": 10
                 }
@@ -20904,9 +21258,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 267,
+                  "startLine": 280,
                   "startColumn": 27,
-                  "endLine": 267,
+                  "endLine": 280,
                   "endColumn": 72,
                   "byteLength": 45
                 }
@@ -20927,9 +21281,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 268,
+                  "startLine": 281,
                   "startColumn": 24,
-                  "endLine": 268,
+                  "endLine": 281,
                   "endColumn": 57,
                   "byteLength": 33
                 }
@@ -20950,9 +21304,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 280,
+                  "startLine": 293,
                   "startColumn": 27,
-                  "endLine": 281,
+                  "endLine": 294,
                   "endColumn": 72,
                   "byteLength": 92
                 }
@@ -20973,9 +21327,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 282,
+                  "startLine": 295,
                   "startColumn": 24,
-                  "endLine": 282,
+                  "endLine": 295,
                   "endColumn": 77,
                   "byteLength": 53
                 }
@@ -20996,9 +21350,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 249,
+                  "startLine": 262,
                   "startColumn": 10,
-                  "endLine": 249,
+                  "endLine": 262,
                   "endColumn": 16,
                   "byteLength": 6
                 }
@@ -21019,9 +21373,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 264,
+                  "startLine": 277,
                   "startColumn": 12,
-                  "endLine": 264,
+                  "endLine": 277,
                   "endColumn": 27,
                   "byteLength": 15
                 }
@@ -21042,9 +21396,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 272,
+                  "startLine": 285,
                   "startColumn": 12,
-                  "endLine": 272,
+                  "endLine": 285,
                   "endColumn": 32,
                   "byteLength": 20
                 }
@@ -21067,9 +21421,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 249,
+                  "startLine": 262,
                   "startColumn": 10,
-                  "endLine": 249,
+                  "endLine": 262,
                   "endColumn": 16,
                   "byteLength": 6
                 }
@@ -21093,9 +21447,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 251,
+                  "startLine": 264,
                   "startColumn": 10,
-                  "endLine": 251,
+                  "endLine": 264,
                   "endColumn": 30,
                   "byteLength": 20
                 }
@@ -21118,9 +21472,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 253,
+                  "startLine": 266,
                   "startColumn": 10,
-                  "endLine": 253,
+                  "endLine": 266,
                   "endColumn": 17,
                   "byteLength": 7
                 }
@@ -21143,9 +21497,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 255,
+                  "startLine": 268,
                   "startColumn": 10,
-                  "endLine": 255,
+                  "endLine": 268,
                   "endColumn": 25,
                   "byteLength": 15
                 }
@@ -21168,9 +21522,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 264,
+                  "startLine": 277,
                   "startColumn": 12,
-                  "endLine": 264,
+                  "endLine": 277,
                   "endColumn": 27,
                   "byteLength": 15
                 }
@@ -21193,9 +21547,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 265,
+                  "startLine": 278,
                   "startColumn": 12,
-                  "endLine": 265,
+                  "endLine": 278,
                   "endColumn": 18,
                   "byteLength": 6
                 }
@@ -21218,9 +21572,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 266,
+                  "startLine": 279,
                   "startColumn": 12,
-                  "endLine": 266,
+                  "endLine": 279,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -21244,9 +21598,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 272,
+                  "startLine": 285,
                   "startColumn": 12,
-                  "endLine": 272,
+                  "endLine": 285,
                   "endColumn": 32,
                   "byteLength": 20
                 }
@@ -21269,9 +21623,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 275,
+                  "startLine": 288,
                   "startColumn": 12,
-                  "endLine": 275,
+                  "endLine": 288,
                   "endColumn": 27,
                   "byteLength": 15
                 }
@@ -21294,9 +21648,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 278,
+                  "startLine": 291,
                   "startColumn": 12,
-                  "endLine": 278,
+                  "endLine": 291,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -21317,9 +21671,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 286,
+                  "startLine": 299,
                   "startColumn": 12,
-                  "endLine": 286,
+                  "endLine": 299,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -21340,9 +21694,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 286,
+                  "startLine": 299,
                   "startColumn": 12,
-                  "endLine": 286,
+                  "endLine": 299,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -21363,9 +21717,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 330,
+                  "startLine": 343,
                   "startColumn": 12,
-                  "endLine": 330,
+                  "endLine": 343,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -21386,9 +21740,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 330,
+                  "startLine": 343,
                   "startColumn": 12,
-                  "endLine": 330,
+                  "endLine": 343,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -21409,9 +21763,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 330,
+                  "startLine": 343,
                   "startColumn": 12,
-                  "endLine": 330,
+                  "endLine": 343,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -21432,9 +21786,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 289,
+                  "startLine": 302,
                   "startColumn": 31,
-                  "endLine": 289,
+                  "endLine": 302,
                   "endColumn": 55,
                   "byteLength": 24
                 }
@@ -21455,9 +21809,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 290,
+                  "startLine": 303,
                   "startColumn": 26,
-                  "endLine": 290,
+                  "endLine": 303,
                   "endColumn": 41,
                   "byteLength": 15
                 }
@@ -21478,9 +21832,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 303,
+                  "startLine": 316,
                   "startColumn": 6,
-                  "endLine": 305,
+                  "endLine": 318,
                   "endColumn": 70,
                   "byteLength": 120
                 }
@@ -21501,9 +21855,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 314,
+                  "startLine": 327,
                   "startColumn": 29,
-                  "endLine": 314,
+                  "endLine": 327,
                   "endColumn": 46,
                   "byteLength": 17
                 }
@@ -21524,9 +21878,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 315,
+                  "startLine": 328,
                   "startColumn": 37,
-                  "endLine": 315,
+                  "endLine": 328,
                   "endColumn": 58,
                   "byteLength": 21
                 }
@@ -21547,9 +21901,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 301,
+                  "startLine": 314,
                   "startColumn": 24,
-                  "endLine": 301,
+                  "endLine": 314,
                   "endColumn": 34,
                   "byteLength": 10
                 }
@@ -21570,9 +21924,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 313,
+                  "startLine": 326,
                   "startColumn": 20,
-                  "endLine": 313,
+                  "endLine": 326,
                   "endColumn": 30,
                   "byteLength": 10
                 }
@@ -21593,9 +21947,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 309,
+                  "startLine": 322,
                   "startColumn": 27,
-                  "endLine": 309,
+                  "endLine": 322,
                   "endColumn": 72,
                   "byteLength": 45
                 }
@@ -21616,9 +21970,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 310,
+                  "startLine": 323,
                   "startColumn": 28,
-                  "endLine": 310,
+                  "endLine": 323,
                   "endColumn": 49,
                   "byteLength": 21
                 }
@@ -21639,9 +21993,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 311,
+                  "startLine": 324,
                   "startColumn": 28,
-                  "endLine": 311,
+                  "endLine": 324,
                   "endColumn": 54,
                   "byteLength": 26
                 }
@@ -21662,9 +22016,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 324,
+                  "startLine": 337,
                   "startColumn": 27,
-                  "endLine": 325,
+                  "endLine": 338,
                   "endColumn": 65,
                   "byteLength": 85
                 }
@@ -21685,9 +22039,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 326,
+                  "startLine": 339,
                   "startColumn": 28,
-                  "endLine": 326,
+                  "endLine": 339,
                   "endColumn": 67,
                   "byteLength": 39
                 }
@@ -21708,9 +22062,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 291,
+                  "startLine": 304,
                   "startColumn": 10,
-                  "endLine": 291,
+                  "endLine": 304,
                   "endColumn": 16,
                   "byteLength": 6
                 }
@@ -21731,9 +22085,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 306,
+                  "startLine": 319,
                   "startColumn": 12,
-                  "endLine": 306,
+                  "endLine": 319,
                   "endColumn": 20,
                   "byteLength": 8
                 }
@@ -21754,9 +22108,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 316,
+                  "startLine": 329,
                   "startColumn": 12,
-                  "endLine": 316,
+                  "endLine": 329,
                   "endColumn": 27,
                   "byteLength": 15
                 }
@@ -21779,9 +22133,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 291,
+                  "startLine": 304,
                   "startColumn": 10,
-                  "endLine": 291,
+                  "endLine": 304,
                   "endColumn": 16,
                   "byteLength": 6
                 }
@@ -21805,9 +22159,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 293,
+                  "startLine": 306,
                   "startColumn": 10,
-                  "endLine": 293,
+                  "endLine": 306,
                   "endColumn": 25,
                   "byteLength": 15
                 }
@@ -21830,9 +22184,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 295,
+                  "startLine": 308,
                   "startColumn": 10,
-                  "endLine": 295,
+                  "endLine": 308,
                   "endColumn": 17,
                   "byteLength": 7
                 }
@@ -21855,9 +22209,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 297,
+                  "startLine": 310,
                   "startColumn": 10,
-                  "endLine": 297,
+                  "endLine": 310,
                   "endColumn": 18,
                   "byteLength": 8
                 }
@@ -21880,9 +22234,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 306,
+                  "startLine": 319,
                   "startColumn": 12,
-                  "endLine": 306,
+                  "endLine": 319,
                   "endColumn": 20,
                   "byteLength": 8
                 }
@@ -21905,9 +22259,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 307,
+                  "startLine": 320,
                   "startColumn": 12,
-                  "endLine": 307,
+                  "endLine": 320,
                   "endColumn": 18,
                   "byteLength": 6
                 }
@@ -21930,9 +22284,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 308,
+                  "startLine": 321,
                   "startColumn": 12,
-                  "endLine": 308,
+                  "endLine": 321,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -21956,9 +22310,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 316,
+                  "startLine": 329,
                   "startColumn": 12,
-                  "endLine": 316,
+                  "endLine": 329,
                   "endColumn": 27,
                   "byteLength": 15
                 }
@@ -21981,9 +22335,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 319,
+                  "startLine": 332,
                   "startColumn": 12,
-                  "endLine": 319,
+                  "endLine": 332,
                   "endColumn": 20,
                   "byteLength": 8
                 }
@@ -22006,9 +22360,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 322,
+                  "startLine": 335,
                   "startColumn": 12,
-                  "endLine": 322,
+                  "endLine": 335,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -22029,9 +22383,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 330,
+                  "startLine": 343,
                   "startColumn": 12,
-                  "endLine": 330,
+                  "endLine": 343,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -22052,9 +22406,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 330,
+                  "startLine": 343,
                   "startColumn": 12,
-                  "endLine": 330,
+                  "endLine": 343,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -24642,9 +24996,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 466,
+                  "startLine": 479,
                   "startColumn": 14,
-                  "endLine": 466,
+                  "endLine": 479,
                   "endColumn": 21,
                   "byteLength": 7
                 }
@@ -24665,9 +25019,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 461,
+                  "startLine": 474,
                   "startColumn": 25,
-                  "endLine": 461,
+                  "endLine": 474,
                   "endColumn": 48,
                   "byteLength": 23
                 }
@@ -24688,9 +25042,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 462,
+                  "startLine": 475,
                   "startColumn": 31,
-                  "endLine": 462,
+                  "endLine": 475,
                   "endColumn": 53,
                   "byteLength": 22
                 }
@@ -24711,9 +25065,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 463,
+                  "startLine": 476,
                   "startColumn": 12,
-                  "endLine": 463,
+                  "endLine": 476,
                   "endColumn": 26,
                   "byteLength": 14
                 }
@@ -24737,9 +25091,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 463,
+                  "startLine": 476,
                   "startColumn": 12,
-                  "endLine": 463,
+                  "endLine": 476,
                   "endColumn": 26,
                   "byteLength": 14
                 }
@@ -24762,9 +25116,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 464,
+                  "startLine": 477,
                   "startColumn": 12,
-                  "endLine": 464,
+                  "endLine": 477,
                   "endColumn": 19,
                   "byteLength": 7
                 }
diff --git a/src/plugins/markdown-report/tests/sarif/oracle/with-libc.sarif b/src/plugins/markdown-report/tests/sarif/oracle/with-libc.sarif
index 1c47d708f582d55b6f2214609000909f832b3abe..2c4cfca3a396ccd25889040264c0d0866baff4c1 100644
--- a/src/plugins/markdown-report/tests/sarif/oracle/with-libc.sarif
+++ b/src/plugins/markdown-report/tests/sarif/oracle/with-libc.sarif
@@ -2097,9 +2097,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 114,
+                  "startLine": 127,
                   "startColumn": 12,
-                  "endLine": 114,
+                  "endLine": 127,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -2120,9 +2120,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 107,
+                  "startLine": 120,
                   "startColumn": 25,
-                  "endLine": 107,
+                  "endLine": 120,
                   "endColumn": 48,
                   "byteLength": 23
                 }
@@ -2143,9 +2143,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 108,
+                  "startLine": 121,
                   "startColumn": 24,
-                  "endLine": 108,
+                  "endLine": 121,
                   "endColumn": 51,
                   "byteLength": 27
                 }
@@ -2166,9 +2166,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 111,
+                  "startLine": 124,
                   "startColumn": 29,
-                  "endLine": 111,
+                  "endLine": 124,
                   "endColumn": 76,
                   "byteLength": 47
                 }
@@ -2189,9 +2189,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 112,
+                  "startLine": 125,
                   "startColumn": 24,
-                  "endLine": 112,
+                  "endLine": 125,
                   "endColumn": 39,
                   "byteLength": 15
                 }
@@ -2212,9 +2212,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 109,
+                  "startLine": 122,
                   "startColumn": 12,
-                  "endLine": 109,
+                  "endLine": 122,
                   "endColumn": 35,
                   "byteLength": 23
                 }
@@ -2238,9 +2238,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 109,
+                  "startLine": 122,
                   "startColumn": 12,
-                  "endLine": 109,
+                  "endLine": 122,
                   "endColumn": 35,
                   "byteLength": 23
                 }
@@ -2263,9 +2263,221 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 110,
+                  "startLine": 123,
+                  "startColumn": 12,
+                  "endLine": 123,
+                  "endColumn": 19,
+                  "byteLength": 7
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "none",
+          "message": { "text": "behavior default! in function mempcpy." },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/string.h",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 117,
+                  "startColumn": 12,
+                  "endLine": 117,
+                  "endColumn": 13,
+                  "byteLength": 1
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "none",
+          "message": { "text": "valid_dest." },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/string.h",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 108,
+                  "startColumn": 25,
+                  "endLine": 108,
+                  "endColumn": 48,
+                  "byteLength": 23
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "none",
+          "message": { "text": "valid_src." },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/string.h",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 109,
+                  "startColumn": 24,
+                  "endLine": 109,
+                  "endColumn": 51,
+                  "byteLength": 27
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "none",
+          "message": { "text": "separation." },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/string.h",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 111,
+                  "startColumn": 4,
+                  "endLine": 111,
+                  "endColumn": 62,
+                  "byteLength": 58
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "none",
+          "message": { "text": "copied_contents." },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/string.h",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 114,
+                  "startColumn": 29,
+                  "endLine": 114,
+                  "endColumn": 76,
+                  "byteLength": 47
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "none",
+          "message": { "text": "result_next_byte." },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/string.h",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 115,
+                  "startColumn": 30,
+                  "endLine": 115,
+                  "endColumn": 49,
+                  "byteLength": 19
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "none",
+          "message": { "text": "assigns clause in function mempcpy." },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/string.h",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 112,
+                  "startColumn": 12,
+                  "endLine": 112,
+                  "endColumn": 35,
+                  "byteLength": 23
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "none",
+          "message": {
+            "text":
+              "from clause of term *((char *)dest + (0 .. n - 1)) in function mempcpy."
+          },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/string.h",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 112,
+                  "startColumn": 12,
+                  "endLine": 112,
+                  "endColumn": 35,
+                  "byteLength": 23
+                }
+              }
+            }
+          ]
+        },
+        {
+          "ruleId": "user-spec",
+          "kind": "pass",
+          "level": "none",
+          "message": {
+            "text": "from clause of term \\result in function mempcpy."
+          },
+          "locations": [
+            {
+              "physicalLocation": {
+                "artifactLocation": {
+                  "uri": "libc/string.h",
+                  "uriBaseId": "FRAMAC_SHARE"
+                },
+                "region": {
+                  "startLine": 113,
                   "startColumn": 12,
-                  "endLine": 110,
+                  "endLine": 113,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -2286,9 +2498,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 124,
+                  "startLine": 137,
                   "startColumn": 12,
-                  "endLine": 124,
+                  "endLine": 137,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -2309,9 +2521,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 118,
+                  "startLine": 131,
                   "startColumn": 22,
-                  "endLine": 118,
+                  "endLine": 131,
                   "endColumn": 42,
                   "byteLength": 20
                 }
@@ -2332,9 +2544,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 121,
+                  "startLine": 134,
                   "startColumn": 26,
-                  "endLine": 121,
+                  "endLine": 134,
                   "endColumn": 46,
                   "byteLength": 20
                 }
@@ -2355,9 +2567,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 122,
+                  "startLine": 135,
                   "startColumn": 24,
-                  "endLine": 122,
+                  "endLine": 135,
                   "endColumn": 36,
                   "byteLength": 12
                 }
@@ -2378,9 +2590,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 119,
+                  "startLine": 132,
                   "startColumn": 12,
-                  "endLine": 119,
+                  "endLine": 132,
                   "endColumn": 32,
                   "byteLength": 20
                 }
@@ -2404,9 +2616,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 119,
+                  "startLine": 132,
                   "startColumn": 12,
-                  "endLine": 119,
+                  "endLine": 132,
                   "endColumn": 32,
                   "byteLength": 20
                 }
@@ -2429,9 +2641,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 120,
+                  "startLine": 133,
                   "startColumn": 12,
-                  "endLine": 120,
+                  "endLine": 133,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -2452,9 +2664,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 408,
+                  "startLine": 421,
                   "startColumn": 12,
-                  "endLine": 408,
+                  "endLine": 421,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -2475,9 +2687,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 399,
+                  "startLine": 412,
                   "startColumn": 31,
-                  "endLine": 399,
+                  "endLine": 412,
                   "endColumn": 53,
                   "byteLength": 22
                 }
@@ -2498,9 +2710,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 400,
+                  "startLine": 413,
                   "startColumn": 26,
-                  "endLine": 400,
+                  "endLine": 413,
                   "endColumn": 55,
                   "byteLength": 29
                 }
@@ -2521,9 +2733,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 402,
+                  "startLine": 415,
                   "startColumn": 4,
-                  "endLine": 402,
+                  "endLine": 415,
                   "endColumn": 59,
                   "byteLength": 55
                 }
@@ -2544,9 +2756,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 405,
+                  "startLine": 418,
                   "startColumn": 28,
-                  "endLine": 405,
+                  "endLine": 418,
                   "endColumn": 49,
                   "byteLength": 21
                 }
@@ -2567,9 +2779,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 406,
+                  "startLine": 419,
                   "startColumn": 27,
-                  "endLine": 406,
+                  "endLine": 419,
                   "endColumn": 57,
                   "byteLength": 30
                 }
@@ -2590,9 +2802,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 403,
+                  "startLine": 416,
                   "startColumn": 12,
-                  "endLine": 403,
+                  "endLine": 416,
                   "endColumn": 32,
                   "byteLength": 20
                 }
@@ -2616,9 +2828,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 403,
+                  "startLine": 416,
                   "startColumn": 12,
-                  "endLine": 403,
+                  "endLine": 416,
                   "endColumn": 32,
                   "byteLength": 20
                 }
@@ -2641,9 +2853,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 404,
+                  "startLine": 417,
                   "startColumn": 12,
-                  "endLine": 404,
+                  "endLine": 417,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -2781,9 +2993,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 242,
+                  "startLine": 255,
                   "startColumn": 12,
-                  "endLine": 242,
+                  "endLine": 255,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -2804,9 +3016,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 234,
+                  "startLine": 247,
                   "startColumn": 36,
-                  "endLine": 234,
+                  "endLine": 247,
                   "endColumn": 63,
                   "byteLength": 27
                 }
@@ -2827,9 +3039,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 235,
+                  "startLine": 248,
                   "startColumn": 34,
-                  "endLine": 235,
+                  "endLine": 248,
                   "endColumn": 59,
                   "byteLength": 25
                 }
@@ -2850,9 +3062,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 239,
+                  "startLine": 252,
                   "startColumn": 4,
-                  "endLine": 240,
+                  "endLine": 253,
                   "endColumn": 65,
                   "byteLength": 82
                 }
@@ -2873,9 +3085,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 242,
+                  "startLine": 255,
                   "startColumn": 12,
-                  "endLine": 242,
+                  "endLine": 255,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -2898,9 +3110,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 236,
+                  "startLine": 249,
                   "startColumn": 12,
-                  "endLine": 236,
+                  "endLine": 249,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -2921,9 +3133,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 423,
+                  "startLine": 436,
                   "startColumn": 12,
-                  "endLine": 423,
+                  "endLine": 436,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -2944,9 +3156,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 411,
+                  "startLine": 424,
                   "startColumn": 31,
-                  "endLine": 411,
+                  "endLine": 424,
                   "endColumn": 53,
                   "byteLength": 22
                 }
@@ -2967,9 +3179,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 412,
+                  "startLine": 425,
                   "startColumn": 32,
-                  "endLine": 412,
+                  "endLine": 425,
                   "endColumn": 50,
                   "byteLength": 18
                 }
@@ -2990,9 +3202,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 413,
+                  "startLine": 426,
                   "startColumn": 26,
-                  "endLine": 413,
+                  "endLine": 426,
                   "endColumn": 70,
                   "byteLength": 44
                 }
@@ -3013,9 +3225,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 416,
+                  "startLine": 429,
                   "startColumn": 28,
-                  "endLine": 416,
+                  "endLine": 429,
                   "endColumn": 76,
                   "byteLength": 48
                 }
@@ -3036,9 +3248,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 419,
+                  "startLine": 432,
                   "startColumn": 4,
-                  "endLine": 419,
+                  "endLine": 432,
                   "endColumn": 60,
                   "byteLength": 56
                 }
@@ -3059,9 +3271,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 420,
+                  "startLine": 433,
                   "startColumn": 34,
-                  "endLine": 420,
+                  "endLine": 433,
                   "endColumn": 77,
                   "byteLength": 43
                 }
@@ -3082,9 +3294,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 421,
+                  "startLine": 434,
                   "startColumn": 24,
-                  "endLine": 421,
+                  "endLine": 434,
                   "endColumn": 39,
                   "byteLength": 15
                 }
@@ -3105,9 +3317,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 414,
+                  "startLine": 427,
                   "startColumn": 12,
-                  "endLine": 414,
+                  "endLine": 427,
                   "endColumn": 58,
                   "byteLength": 46
                 }
@@ -3131,9 +3343,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 414,
+                  "startLine": 427,
                   "startColumn": 12,
-                  "endLine": 414,
+                  "endLine": 427,
                   "endColumn": 58,
                   "byteLength": 46
                 }
@@ -3156,9 +3368,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 417,
+                  "startLine": 430,
                   "startColumn": 12,
-                  "endLine": 417,
+                  "endLine": 430,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -3179,9 +3391,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 176,
+                  "startLine": 189,
                   "startColumn": 12,
-                  "endLine": 176,
+                  "endLine": 189,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -3202,9 +3414,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 176,
+                  "startLine": 189,
                   "startColumn": 12,
-                  "endLine": 176,
+                  "endLine": 189,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -3225,9 +3437,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 176,
+                  "startLine": 189,
                   "startColumn": 12,
-                  "endLine": 176,
+                  "endLine": 189,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -3248,9 +3460,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 176,
+                  "startLine": 189,
                   "startColumn": 12,
-                  "endLine": 176,
+                  "endLine": 189,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -3271,9 +3483,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 160,
+                  "startLine": 173,
                   "startColumn": 29,
-                  "endLine": 160,
+                  "endLine": 173,
                   "endColumn": 49,
                   "byteLength": 20
                 }
@@ -3294,9 +3506,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 163,
+                  "startLine": 176,
                   "startColumn": 24,
-                  "endLine": 163,
+                  "endLine": 176,
                   "endColumn": 35,
                   "byteLength": 11
                 }
@@ -3317,9 +3529,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 170,
+                  "startLine": 183,
                   "startColumn": 28,
-                  "endLine": 170,
+                  "endLine": 183,
                   "endColumn": 40,
                   "byteLength": 12
                 }
@@ -3340,9 +3552,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 164,
+                  "startLine": 177,
                   "startColumn": 25,
-                  "endLine": 164,
+                  "endLine": 177,
                   "endColumn": 44,
                   "byteLength": 19
                 }
@@ -3363,9 +3575,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 165,
+                  "startLine": 178,
                   "startColumn": 30,
-                  "endLine": 165,
+                  "endLine": 178,
                   "endColumn": 66,
                   "byteLength": 36
                 }
@@ -3386,9 +3598,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 166,
+                  "startLine": 179,
                   "startColumn": 30,
-                  "endLine": 166,
+                  "endLine": 179,
                   "endColumn": 59,
                   "byteLength": 29
                 }
@@ -3409,9 +3621,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 167,
+                  "startLine": 180,
                   "startColumn": 33,
-                  "endLine": 167,
+                  "endLine": 180,
                   "endColumn": 59,
                   "byteLength": 26
                 }
@@ -3432,9 +3644,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 168,
+                  "startLine": 181,
                   "startColumn": 32,
-                  "endLine": 168,
+                  "endLine": 181,
                   "endColumn": 79,
                   "byteLength": 47
                 }
@@ -3455,9 +3667,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 171,
+                  "startLine": 184,
                   "startColumn": 25,
-                  "endLine": 171,
+                  "endLine": 184,
                   "endColumn": 41,
                   "byteLength": 16
                 }
@@ -3478,9 +3690,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 174,
+                  "startLine": 187,
                   "startColumn": 4,
-                  "endLine": 174,
+                  "endLine": 187,
                   "endColumn": 60,
                   "byteLength": 56
                 }
@@ -3501,9 +3713,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 176,
+                  "startLine": 189,
                   "startColumn": 12,
-                  "endLine": 176,
+                  "endLine": 189,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -3526,9 +3738,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 161,
+                  "startLine": 174,
                   "startColumn": 12,
-                  "endLine": 161,
+                  "endLine": 174,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -3549,9 +3761,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 182,
+                  "startLine": 195,
                   "startColumn": 12,
-                  "endLine": 182,
+                  "endLine": 195,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -3572,9 +3784,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 178,
+                  "startLine": 191,
                   "startColumn": 29,
-                  "endLine": 178,
+                  "endLine": 191,
                   "endColumn": 49,
                   "byteLength": 20
                 }
@@ -3595,9 +3807,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 180,
+                  "startLine": 193,
                   "startColumn": 30,
-                  "endLine": 180,
+                  "endLine": 193,
                   "endColumn": 64,
                   "byteLength": 34
                 }
@@ -3618,9 +3830,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 182,
+                  "startLine": 195,
                   "startColumn": 12,
-                  "endLine": 182,
+                  "endLine": 195,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -3643,9 +3855,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 179,
+                  "startLine": 192,
                   "startColumn": 12,
-                  "endLine": 179,
+                  "endLine": 192,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -3666,9 +3878,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 145,
+                  "startLine": 158,
                   "startColumn": 11,
-                  "endLine": 145,
+                  "endLine": 158,
                   "endColumn": 17,
                   "byteLength": 6
                 }
@@ -3689,9 +3901,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 140,
+                  "startLine": 153,
                   "startColumn": 30,
-                  "endLine": 140,
+                  "endLine": 153,
                   "endColumn": 51,
                   "byteLength": 21
                 }
@@ -3712,9 +3924,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 141,
+                  "startLine": 154,
                   "startColumn": 30,
-                  "endLine": 141,
+                  "endLine": 154,
                   "endColumn": 51,
                   "byteLength": 21
                 }
@@ -3735,9 +3947,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 143,
+                  "startLine": 156,
                   "startColumn": 26,
-                  "endLine": 143,
+                  "endLine": 156,
                   "endColumn": 50,
                   "byteLength": 24
                 }
@@ -3758,9 +3970,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 145,
+                  "startLine": 158,
                   "startColumn": 11,
-                  "endLine": 145,
+                  "endLine": 158,
                   "endColumn": 17,
                   "byteLength": 6
                 }
@@ -3783,9 +3995,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 142,
+                  "startLine": 155,
                   "startColumn": 12,
-                  "endLine": 142,
+                  "endLine": 155,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -3806,9 +4018,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 158,
+                  "startLine": 171,
                   "startColumn": 11,
-                  "endLine": 158,
+                  "endLine": 171,
                   "endColumn": 18,
                   "byteLength": 7
                 }
@@ -3829,9 +4041,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 154,
+                  "startLine": 167,
                   "startColumn": 30,
-                  "endLine": 154,
+                  "endLine": 167,
                   "endColumn": 51,
                   "byteLength": 21
                 }
@@ -3852,9 +4064,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 155,
+                  "startLine": 168,
                   "startColumn": 30,
-                  "endLine": 155,
+                  "endLine": 168,
                   "endColumn": 51,
                   "byteLength": 21
                 }
@@ -3875,9 +4087,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 158,
+                  "startLine": 171,
                   "startColumn": 11,
-                  "endLine": 158,
+                  "endLine": 171,
                   "endColumn": 18,
                   "byteLength": 7
                 }
@@ -3900,9 +4112,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 156,
+                  "startLine": 169,
                   "startColumn": 12,
-                  "endLine": 156,
+                  "endLine": 169,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -3923,9 +4135,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 363,
+                  "startLine": 376,
                   "startColumn": 12,
-                  "endLine": 363,
+                  "endLine": 376,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -3946,9 +4158,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 354,
+                  "startLine": 367,
                   "startColumn": 31,
-                  "endLine": 354,
+                  "endLine": 367,
                   "endColumn": 53,
                   "byteLength": 22
                 }
@@ -3969,9 +4181,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 355,
+                  "startLine": 368,
                   "startColumn": 26,
-                  "endLine": 355,
+                  "endLine": 368,
                   "endColumn": 55,
                   "byteLength": 29
                 }
@@ -3992,9 +4204,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 357,
+                  "startLine": 370,
                   "startColumn": 4,
-                  "endLine": 357,
+                  "endLine": 370,
                   "endColumn": 59,
                   "byteLength": 55
                 }
@@ -4015,9 +4227,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 360,
+                  "startLine": 373,
                   "startColumn": 28,
-                  "endLine": 360,
+                  "endLine": 373,
                   "endColumn": 49,
                   "byteLength": 21
                 }
@@ -4038,9 +4250,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 361,
+                  "startLine": 374,
                   "startColumn": 24,
-                  "endLine": 361,
+                  "endLine": 374,
                   "endColumn": 39,
                   "byteLength": 15
                 }
@@ -4061,9 +4273,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 358,
+                  "startLine": 371,
                   "startColumn": 12,
-                  "endLine": 358,
+                  "endLine": 371,
                   "endColumn": 32,
                   "byteLength": 20
                 }
@@ -4087,9 +4299,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 358,
+                  "startLine": 371,
                   "startColumn": 12,
-                  "endLine": 358,
+                  "endLine": 371,
                   "endColumn": 32,
                   "byteLength": 20
                 }
@@ -4112,9 +4324,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 359,
+                  "startLine": 372,
                   "startColumn": 12,
-                  "endLine": 359,
+                  "endLine": 372,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -4135,9 +4347,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 205,
+                  "startLine": 218,
                   "startColumn": 14,
-                  "endLine": 205,
+                  "endLine": 218,
                   "endColumn": 21,
                   "byteLength": 7
                 }
@@ -4158,9 +4370,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 200,
+                  "startLine": 213,
                   "startColumn": 29,
-                  "endLine": 200,
+                  "endLine": 213,
                   "endColumn": 49,
                   "byteLength": 20
                 }
@@ -4181,9 +4393,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 201,
+                  "startLine": 214,
                   "startColumn": 34,
-                  "endLine": 201,
+                  "endLine": 214,
                   "endColumn": 59,
                   "byteLength": 25
                 }
@@ -4204,9 +4416,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 203,
+                  "startLine": 216,
                   "startColumn": 28,
-                  "endLine": 203,
+                  "endLine": 216,
                   "endColumn": 53,
                   "byteLength": 25
                 }
@@ -4227,9 +4439,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 205,
+                  "startLine": 218,
                   "startColumn": 14,
-                  "endLine": 205,
+                  "endLine": 218,
                   "endColumn": 21,
                   "byteLength": 7
                 }
@@ -4252,9 +4464,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 202,
+                  "startLine": 215,
                   "startColumn": 12,
-                  "endLine": 202,
+                  "endLine": 215,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -4275,9 +4487,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 487,
+                  "startLine": 500,
                   "startColumn": 12,
-                  "endLine": 487,
+                  "endLine": 500,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -4298,9 +4510,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 487,
+                  "startLine": 500,
                   "startColumn": 12,
-                  "endLine": 487,
+                  "endLine": 500,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -4321,9 +4533,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 487,
+                  "startLine": 500,
                   "startColumn": 12,
-                  "endLine": 487,
+                  "endLine": 500,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -4344,9 +4556,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 471,
+                  "startLine": 484,
                   "startColumn": 29,
-                  "endLine": 471,
+                  "endLine": 484,
                   "endColumn": 49,
                   "byteLength": 20
                 }
@@ -4367,9 +4579,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 475,
+                  "startLine": 488,
                   "startColumn": 26,
-                  "endLine": 475,
+                  "endLine": 488,
                   "endColumn": 49,
                   "byteLength": 23
                 }
@@ -4390,9 +4602,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 482,
+                  "startLine": 495,
                   "startColumn": 29,
-                  "endLine": 482,
+                  "endLine": 495,
                   "endColumn": 53,
                   "byteLength": 24
                 }
@@ -4413,9 +4625,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 478,
+                  "startLine": 491,
                   "startColumn": 24,
-                  "endLine": 478,
+                  "endLine": 491,
                   "endColumn": 49,
                   "byteLength": 25
                 }
@@ -4436,9 +4648,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 480,
+                  "startLine": 493,
                   "startColumn": 4,
-                  "endLine": 480,
+                  "endLine": 493,
                   "endColumn": 51,
                   "byteLength": 47
                 }
@@ -4459,9 +4671,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 485,
+                  "startLine": 498,
                   "startColumn": 25,
-                  "endLine": 485,
+                  "endLine": 498,
                   "endColumn": 41,
                   "byteLength": 16
                 }
@@ -4482,9 +4694,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 476,
+                  "startLine": 489,
                   "startColumn": 12,
-                  "endLine": 476,
+                  "endLine": 489,
                   "endColumn": 28,
                   "byteLength": 16
                 }
@@ -4505,9 +4717,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 487,
+                  "startLine": 500,
                   "startColumn": 12,
-                  "endLine": 487,
+                  "endLine": 500,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -4528,9 +4740,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 487,
+                  "startLine": 500,
                   "startColumn": 12,
-                  "endLine": 487,
+                  "endLine": 500,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -4554,9 +4766,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 476,
+                  "startLine": 489,
                   "startColumn": 12,
-                  "endLine": 476,
+                  "endLine": 489,
                   "endColumn": 28,
                   "byteLength": 16
                 }
@@ -4579,9 +4791,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 477,
+                  "startLine": 490,
                   "startColumn": 12,
-                  "endLine": 477,
+                  "endLine": 490,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -4604,9 +4816,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 473,
+                  "startLine": 486,
                   "startColumn": 12,
-                  "endLine": 473,
+                  "endLine": 486,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -4629,9 +4841,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 483,
+                  "startLine": 496,
                   "startColumn": 12,
-                  "endLine": 483,
+                  "endLine": 496,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -4652,9 +4864,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 472,
+                  "startLine": 485,
                   "startColumn": 14,
-                  "endLine": 472,
+                  "endLine": 485,
                   "endColumn": 21,
                   "byteLength": 7
                 }
@@ -4675,9 +4887,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 487,
+                  "startLine": 500,
                   "startColumn": 12,
-                  "endLine": 487,
+                  "endLine": 500,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -4698,9 +4910,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 350,
+                  "startLine": 363,
                   "startColumn": 12,
-                  "endLine": 350,
+                  "endLine": 363,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -4721,9 +4933,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 346,
+                  "startLine": 359,
                   "startColumn": 33,
-                  "endLine": 346,
+                  "endLine": 359,
                   "endColumn": 59,
                   "byteLength": 26
                 }
@@ -4744,9 +4956,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 347,
+                  "startLine": 360,
                   "startColumn": 35,
-                  "endLine": 347,
+                  "endLine": 360,
                   "endColumn": 51,
                   "byteLength": 16
                 }
@@ -4767,9 +4979,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 348,
+                  "startLine": 361,
                   "startColumn": 33,
-                  "endLine": 348,
+                  "endLine": 361,
                   "endColumn": 59,
                   "byteLength": 26
                 }
@@ -4790,9 +5002,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 350,
+                  "startLine": 363,
                   "startColumn": 12,
-                  "endLine": 350,
+                  "endLine": 363,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -4815,9 +5027,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 345,
+                  "startLine": 358,
                   "startColumn": 12,
-                  "endLine": 345,
+                  "endLine": 358,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -4838,9 +5050,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 458,
+                  "startLine": 471,
                   "startColumn": 14,
-                  "endLine": 458,
+                  "endLine": 471,
                   "endColumn": 21,
                   "byteLength": 7
                 }
@@ -4861,9 +5073,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 451,
+                  "startLine": 464,
                   "startColumn": 31,
-                  "endLine": 451,
+                  "endLine": 464,
                   "endColumn": 53,
                   "byteLength": 22
                 }
@@ -4884,9 +5096,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 452,
+                  "startLine": 465,
                   "startColumn": 32,
-                  "endLine": 452,
+                  "endLine": 465,
                   "endColumn": 50,
                   "byteLength": 18
                 }
@@ -4907,9 +5119,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 453,
+                  "startLine": 466,
                   "startColumn": 27,
-                  "endLine": 453,
+                  "endLine": 466,
                   "endColumn": 48,
                   "byteLength": 21
                 }
@@ -4930,9 +5142,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 456,
+                  "startLine": 469,
                   "startColumn": 28,
-                  "endLine": 456,
+                  "endLine": 469,
                   "endColumn": 65,
                   "byteLength": 37
                 }
@@ -4953,9 +5165,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 454,
+                  "startLine": 467,
                   "startColumn": 12,
-                  "endLine": 454,
+                  "endLine": 467,
                   "endColumn": 33,
                   "byteLength": 21
                 }
@@ -4979,9 +5191,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 454,
+                  "startLine": 467,
                   "startColumn": 12,
-                  "endLine": 454,
+                  "endLine": 467,
                   "endColumn": 33,
                   "byteLength": 21
                 }
@@ -5004,9 +5216,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 455,
+                  "startLine": 468,
                   "startColumn": 12,
-                  "endLine": 455,
+                  "endLine": 468,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -5027,9 +5239,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 396,
+                  "startLine": 409,
                   "startColumn": 7,
-                  "endLine": 396,
+                  "endLine": 409,
                   "endColumn": 14,
                   "byteLength": 7
                 }
@@ -5050,9 +5262,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 387,
+                  "startLine": 400,
                   "startColumn": 31,
-                  "endLine": 387,
+                  "endLine": 400,
                   "endColumn": 53,
                   "byteLength": 22
                 }
@@ -5073,9 +5285,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 388,
+                  "startLine": 401,
                   "startColumn": 27,
-                  "endLine": 388,
+                  "endLine": 401,
                   "endColumn": 48,
                   "byteLength": 21
                 }
@@ -5096,9 +5308,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 390,
+                  "startLine": 403,
                   "startColumn": 4,
-                  "endLine": 390,
+                  "endLine": 403,
                   "endColumn": 61,
                   "byteLength": 57
                 }
@@ -5119,9 +5331,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 393,
+                  "startLine": 406,
                   "startColumn": 28,
-                  "endLine": 393,
+                  "endLine": 406,
                   "endColumn": 73,
                   "byteLength": 45
                 }
@@ -5142,9 +5354,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 394,
+                  "startLine": 407,
                   "startColumn": 28,
-                  "endLine": 394,
+                  "endLine": 407,
                   "endColumn": 50,
                   "byteLength": 22
                 }
@@ -5165,9 +5377,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 391,
+                  "startLine": 404,
                   "startColumn": 12,
-                  "endLine": 391,
+                  "endLine": 404,
                   "endColumn": 24,
                   "byteLength": 12
                 }
@@ -5191,9 +5403,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 391,
+                  "startLine": 404,
                   "startColumn": 12,
-                  "endLine": 391,
+                  "endLine": 404,
                   "endColumn": 24,
                   "byteLength": 12
                 }
@@ -5216,9 +5428,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 392,
+                  "startLine": 405,
                   "startColumn": 12,
-                  "endLine": 392,
+                  "endLine": 405,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -5239,9 +5451,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 132,
+                  "startLine": 145,
                   "startColumn": 14,
-                  "endLine": 132,
+                  "endLine": 145,
                   "endColumn": 20,
                   "byteLength": 6
                 }
@@ -5262,9 +5474,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 128,
+                  "startLine": 141,
                   "startColumn": 29,
-                  "endLine": 128,
+                  "endLine": 141,
                   "endColumn": 49,
                   "byteLength": 20
                 }
@@ -5285,9 +5497,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 130,
+                  "startLine": 143,
                   "startColumn": 26,
-                  "endLine": 130,
+                  "endLine": 143,
                   "endColumn": 46,
                   "byteLength": 20
                 }
@@ -5308,9 +5520,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 132,
+                  "startLine": 145,
                   "startColumn": 14,
-                  "endLine": 132,
+                  "endLine": 145,
                   "endColumn": 20,
                   "byteLength": 6
                 }
@@ -5333,9 +5545,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 129,
+                  "startLine": 142,
                   "startColumn": 12,
-                  "endLine": 129,
+                  "endLine": 142,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -5473,9 +5685,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 447,
+                  "startLine": 460,
                   "startColumn": 12,
-                  "endLine": 447,
+                  "endLine": 460,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -5496,9 +5708,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 447,
+                  "startLine": 460,
                   "startColumn": 12,
-                  "endLine": 447,
+                  "endLine": 460,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -5519,9 +5731,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 447,
+                  "startLine": 460,
                   "startColumn": 12,
-                  "endLine": 447,
+                  "endLine": 460,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -5542,9 +5754,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 426,
+                  "startLine": 439,
                   "startColumn": 32,
-                  "endLine": 426,
+                  "endLine": 439,
                   "endColumn": 58,
                   "byteLength": 26
                 }
@@ -5565,9 +5777,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 427,
+                  "startLine": 440,
                   "startColumn": 32,
-                  "endLine": 427,
+                  "endLine": 440,
                   "endColumn": 50,
                   "byteLength": 18
                 }
@@ -5588,9 +5800,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 433,
+                  "startLine": 446,
                   "startColumn": 26,
-                  "endLine": 433,
+                  "endLine": 446,
                   "endColumn": 74,
                   "byteLength": 48
                 }
@@ -5611,9 +5823,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 441,
+                  "startLine": 454,
                   "startColumn": 26,
-                  "endLine": 441,
+                  "endLine": 454,
                   "endColumn": 64,
                   "byteLength": 38
                 }
@@ -5634,9 +5846,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 432,
+                  "startLine": 445,
                   "startColumn": 35,
-                  "endLine": 432,
+                  "endLine": 445,
                   "endColumn": 77,
                   "byteLength": 42
                 }
@@ -5657,9 +5869,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 440,
+                  "startLine": 453,
                   "startColumn": 4,
-                  "endLine": 440,
+                  "endLine": 453,
                   "endColumn": 49,
                   "byteLength": 45
                 }
@@ -5680,9 +5892,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 430,
+                  "startLine": 443,
                   "startColumn": 24,
-                  "endLine": 430,
+                  "endLine": 443,
                   "endColumn": 39,
                   "byteLength": 15
                 }
@@ -5703,9 +5915,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 437,
+                  "startLine": 450,
                   "startColumn": 28,
-                  "endLine": 437,
+                  "endLine": 450,
                   "endColumn": 76,
                   "byteLength": 48
                 }
@@ -5726,9 +5938,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 445,
+                  "startLine": 458,
                   "startColumn": 36,
-                  "endLine": 445,
+                  "endLine": 458,
                   "endColumn": 74,
                   "byteLength": 38
                 }
@@ -5749,9 +5961,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 434,
+                  "startLine": 447,
                   "startColumn": 12,
-                  "endLine": 434,
+                  "endLine": 447,
                   "endColumn": 58,
                   "byteLength": 46
                 }
@@ -5772,9 +5984,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 428,
+                  "startLine": 441,
                   "startColumn": 12,
-                  "endLine": 428,
+                  "endLine": 441,
                   "endColumn": 50,
                   "byteLength": 38
                 }
@@ -5795,9 +6007,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 442,
+                  "startLine": 455,
                   "startColumn": 12,
-                  "endLine": 442,
+                  "endLine": 455,
                   "endColumn": 48,
                   "byteLength": 36
                 }
@@ -5821,9 +6033,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 434,
+                  "startLine": 447,
                   "startColumn": 12,
-                  "endLine": 434,
+                  "endLine": 447,
                   "endColumn": 58,
                   "byteLength": 46
                 }
@@ -5846,9 +6058,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 436,
+                  "startLine": 449,
                   "startColumn": 12,
-                  "endLine": 436,
+                  "endLine": 449,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -5872,9 +6084,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 428,
+                  "startLine": 441,
                   "startColumn": 12,
-                  "endLine": 428,
+                  "endLine": 441,
                   "endColumn": 50,
                   "byteLength": 38
                 }
@@ -5897,9 +6109,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 429,
+                  "startLine": 442,
                   "startColumn": 12,
-                  "endLine": 429,
+                  "endLine": 442,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -5923,9 +6135,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 442,
+                  "startLine": 455,
                   "startColumn": 12,
-                  "endLine": 442,
+                  "endLine": 455,
                   "endColumn": 48,
                   "byteLength": 36
                 }
@@ -5948,9 +6160,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 444,
+                  "startLine": 457,
                   "startColumn": 12,
-                  "endLine": 444,
+                  "endLine": 457,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -5971,9 +6183,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 152,
+                  "startLine": 165,
                   "startColumn": 11,
-                  "endLine": 152,
+                  "endLine": 165,
                   "endColumn": 18,
                   "byteLength": 7
                 }
@@ -5994,9 +6206,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 147,
+                  "startLine": 160,
                   "startColumn": 30,
-                  "endLine": 147,
+                  "endLine": 160,
                   "endColumn": 55,
                   "byteLength": 25
                 }
@@ -6017,9 +6229,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 148,
+                  "startLine": 161,
                   "startColumn": 30,
-                  "endLine": 148,
+                  "endLine": 161,
                   "endColumn": 55,
                   "byteLength": 25
                 }
@@ -6040,9 +6252,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 150,
+                  "startLine": 163,
                   "startColumn": 26,
-                  "endLine": 150,
+                  "endLine": 163,
                   "endColumn": 53,
                   "byteLength": 27
                 }
@@ -6063,9 +6275,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 152,
+                  "startLine": 165,
                   "startColumn": 11,
-                  "endLine": 152,
+                  "endLine": 165,
                   "endColumn": 18,
                   "byteLength": 7
                 }
@@ -6088,9 +6300,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 149,
+                  "startLine": 162,
                   "startColumn": 12,
-                  "endLine": 149,
+                  "endLine": 162,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -6111,9 +6323,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 381,
+                  "startLine": 394,
                   "startColumn": 12,
-                  "endLine": 381,
+                  "endLine": 394,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -6134,9 +6346,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 381,
+                  "startLine": 394,
                   "startColumn": 12,
-                  "endLine": 381,
+                  "endLine": 394,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -6157,9 +6369,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 381,
+                  "startLine": 394,
                   "startColumn": 12,
-                  "endLine": 381,
+                  "endLine": 394,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -6180,9 +6392,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 366,
+                  "startLine": 379,
                   "startColumn": 32,
-                  "endLine": 366,
+                  "endLine": 379,
                   "endColumn": 58,
                   "byteLength": 26
                 }
@@ -6203,9 +6415,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 367,
+                  "startLine": 380,
                   "startColumn": 27,
-                  "endLine": 367,
+                  "endLine": 380,
                   "endColumn": 50,
                   "byteLength": 23
                 }
@@ -6226,9 +6438,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 369,
+                  "startLine": 382,
                   "startColumn": 4,
-                  "endLine": 369,
+                  "endLine": 382,
                   "endColumn": 43,
                   "byteLength": 39
                 }
@@ -6249,9 +6461,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 375,
+                  "startLine": 388,
                   "startColumn": 22,
-                  "endLine": 375,
+                  "endLine": 388,
                   "endColumn": 37,
                   "byteLength": 15
                 }
@@ -6272,9 +6484,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 378,
+                  "startLine": 391,
                   "startColumn": 26,
-                  "endLine": 378,
+                  "endLine": 391,
                   "endColumn": 42,
                   "byteLength": 16
                 }
@@ -6295,9 +6507,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 372,
+                  "startLine": 385,
                   "startColumn": 24,
-                  "endLine": 372,
+                  "endLine": 385,
                   "endColumn": 39,
                   "byteLength": 15
                 }
@@ -6318,9 +6530,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 373,
+                  "startLine": 386,
                   "startColumn": 28,
-                  "endLine": 373,
+                  "endLine": 386,
                   "endColumn": 57,
                   "byteLength": 29
                 }
@@ -6341,9 +6553,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 376,
+                  "startLine": 389,
                   "startColumn": 30,
-                  "endLine": 376,
+                  "endLine": 389,
                   "endColumn": 51,
                   "byteLength": 21
                 }
@@ -6364,9 +6576,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 379,
+                  "startLine": 392,
                   "startColumn": 26,
-                  "endLine": 379,
+                  "endLine": 392,
                   "endColumn": 60,
                   "byteLength": 34
                 }
@@ -6387,9 +6599,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 370,
+                  "startLine": 383,
                   "startColumn": 12,
-                  "endLine": 370,
+                  "endLine": 383,
                   "endColumn": 26,
                   "byteLength": 14
                 }
@@ -6413,9 +6625,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 370,
+                  "startLine": 383,
                   "startColumn": 12,
-                  "endLine": 370,
+                  "endLine": 383,
                   "endColumn": 26,
                   "byteLength": 14
                 }
@@ -6438,9 +6650,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 371,
+                  "startLine": 384,
                   "startColumn": 12,
-                  "endLine": 371,
+                  "endLine": 384,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -6461,9 +6673,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 509,
+                  "startLine": 522,
                   "startColumn": 12,
-                  "endLine": 509,
+                  "endLine": 522,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -6484,9 +6696,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 509,
+                  "startLine": 522,
                   "startColumn": 12,
-                  "endLine": 509,
+                  "endLine": 522,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -6509,9 +6721,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 509,
+                  "startLine": 522,
                   "startColumn": 12,
-                  "endLine": 509,
+                  "endLine": 522,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -6532,9 +6744,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 489,
+                  "startLine": 502,
                   "startColumn": 29,
-                  "endLine": 489,
+                  "endLine": 502,
                   "endColumn": 49,
                   "byteLength": 20
                 }
@@ -6555,9 +6767,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 494,
+                  "startLine": 507,
                   "startColumn": 26,
-                  "endLine": 494,
+                  "endLine": 507,
                   "endColumn": 60,
                   "byteLength": 34
                 }
@@ -6578,9 +6790,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 504,
+                  "startLine": 517,
                   "startColumn": 29,
-                  "endLine": 504,
+                  "endLine": 517,
                   "endColumn": 64,
                   "byteLength": 35
                 }
@@ -6601,9 +6813,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 498,
+                  "startLine": 511,
                   "startColumn": 24,
-                  "endLine": 498,
+                  "endLine": 511,
                   "endColumn": 60,
                   "byteLength": 36
                 }
@@ -6626,9 +6838,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 500,
+                  "startLine": 513,
                   "startColumn": 4,
-                  "endLine": 502,
+                  "endLine": 515,
                   "endColumn": 29,
                   "byteLength": 124
                 }
@@ -6649,9 +6861,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 507,
+                  "startLine": 520,
                   "startColumn": 25,
-                  "endLine": 507,
+                  "endLine": 520,
                   "endColumn": 41,
                   "byteLength": 16
                 }
@@ -6672,9 +6884,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 495,
+                  "startLine": 508,
                   "startColumn": 12,
-                  "endLine": 495,
+                  "endLine": 508,
                   "endColumn": 28,
                   "byteLength": 16
                 }
@@ -6695,9 +6907,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 509,
+                  "startLine": 522,
                   "startColumn": 12,
-                  "endLine": 509,
+                  "endLine": 522,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -6718,9 +6930,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 509,
+                  "startLine": 522,
                   "startColumn": 12,
-                  "endLine": 509,
+                  "endLine": 522,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -6744,9 +6956,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 495,
+                  "startLine": 508,
                   "startColumn": 12,
-                  "endLine": 495,
+                  "endLine": 508,
                   "endColumn": 28,
                   "byteLength": 16
                 }
@@ -6769,9 +6981,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 496,
+                  "startLine": 509,
                   "startColumn": 12,
-                  "endLine": 496,
+                  "endLine": 509,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -6794,9 +7006,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 491,
+                  "startLine": 504,
                   "startColumn": 12,
-                  "endLine": 491,
+                  "endLine": 504,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -6819,9 +7031,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 505,
+                  "startLine": 518,
                   "startColumn": 12,
-                  "endLine": 505,
+                  "endLine": 518,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -6844,9 +7056,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 490,
+                  "startLine": 503,
                   "startColumn": 14,
-                  "endLine": 490,
+                  "endLine": 503,
                   "endColumn": 21,
                   "byteLength": 7
                 }
@@ -6869,9 +7081,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 509,
+                  "startLine": 522,
                   "startColumn": 12,
-                  "endLine": 509,
+                  "endLine": 522,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -6892,9 +7104,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 138,
+                  "startLine": 151,
                   "startColumn": 14,
-                  "endLine": 138,
+                  "endLine": 151,
                   "endColumn": 21,
                   "byteLength": 7
                 }
@@ -6915,9 +7127,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 134,
+                  "startLine": 147,
                   "startColumn": 29,
-                  "endLine": 134,
+                  "endLine": 147,
                   "endColumn": 53,
                   "byteLength": 24
                 }
@@ -6938,9 +7150,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 136,
+                  "startLine": 149,
                   "startColumn": 28,
-                  "endLine": 136,
+                  "endLine": 149,
                   "endColumn": 64,
                   "byteLength": 36
                 }
@@ -6961,9 +7173,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 138,
+                  "startLine": 151,
                   "startColumn": 14,
-                  "endLine": 138,
+                  "endLine": 151,
                   "endColumn": 21,
                   "byteLength": 7
                 }
@@ -6986,9 +7198,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 135,
+                  "startLine": 148,
                   "startColumn": 12,
-                  "endLine": 135,
+                  "endLine": 148,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -7009,9 +7221,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 221,
+                  "startLine": 234,
                   "startColumn": 12,
-                  "endLine": 221,
+                  "endLine": 234,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -7032,9 +7244,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 215,
+                  "startLine": 228,
                   "startColumn": 29,
-                  "endLine": 215,
+                  "endLine": 228,
                   "endColumn": 49,
                   "byteLength": 20
                 }
@@ -7055,9 +7267,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 216,
+                  "startLine": 229,
                   "startColumn": 34,
-                  "endLine": 216,
+                  "endLine": 229,
                   "endColumn": 59,
                   "byteLength": 25
                 }
@@ -7078,9 +7290,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 219,
+                  "startLine": 232,
                   "startColumn": 4,
-                  "endLine": 219,
+                  "endLine": 232,
                   "endColumn": 60,
                   "byteLength": 56
                 }
@@ -7101,9 +7313,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 221,
+                  "startLine": 234,
                   "startColumn": 12,
-                  "endLine": 221,
+                  "endLine": 234,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -7126,9 +7338,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 217,
+                  "startLine": 230,
                   "startColumn": 12,
-                  "endLine": 217,
+                  "endLine": 230,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -7149,9 +7361,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 198,
+                  "startLine": 211,
                   "startColumn": 12,
-                  "endLine": 198,
+                  "endLine": 211,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -7172,9 +7384,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 198,
+                  "startLine": 211,
                   "startColumn": 12,
-                  "endLine": 198,
+                  "endLine": 211,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -7195,9 +7407,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 198,
+                  "startLine": 211,
                   "startColumn": 12,
-                  "endLine": 198,
+                  "endLine": 211,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -7218,9 +7430,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 198,
+                  "startLine": 211,
                   "startColumn": 12,
-                  "endLine": 198,
+                  "endLine": 211,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -7241,9 +7453,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 184,
+                  "startLine": 197,
                   "startColumn": 29,
-                  "endLine": 184,
+                  "endLine": 197,
                   "endColumn": 49,
                   "byteLength": 20
                 }
@@ -7264,9 +7476,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 187,
+                  "startLine": 200,
                   "startColumn": 24,
-                  "endLine": 187,
+                  "endLine": 200,
                   "endColumn": 35,
                   "byteLength": 11
                 }
@@ -7287,9 +7499,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 192,
+                  "startLine": 205,
                   "startColumn": 28,
-                  "endLine": 192,
+                  "endLine": 205,
                   "endColumn": 40,
                   "byteLength": 12
                 }
@@ -7310,9 +7522,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 188,
+                  "startLine": 201,
                   "startColumn": 25,
-                  "endLine": 188,
+                  "endLine": 201,
                   "endColumn": 38,
                   "byteLength": 13
                 }
@@ -7333,9 +7545,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 189,
+                  "startLine": 202,
                   "startColumn": 30,
-                  "endLine": 189,
+                  "endLine": 202,
                   "endColumn": 66,
                   "byteLength": 36
                 }
@@ -7356,9 +7568,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 190,
+                  "startLine": 203,
                   "startColumn": 33,
-                  "endLine": 190,
+                  "endLine": 203,
                   "endColumn": 59,
                   "byteLength": 26
                 }
@@ -7379,9 +7591,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 193,
+                  "startLine": 206,
                   "startColumn": 25,
-                  "endLine": 193,
+                  "endLine": 206,
                   "endColumn": 41,
                   "byteLength": 16
                 }
@@ -7402,9 +7614,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 196,
+                  "startLine": 209,
                   "startColumn": 4,
-                  "endLine": 196,
+                  "endLine": 209,
                   "endColumn": 60,
                   "byteLength": 56
                 }
@@ -7425,9 +7637,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 198,
+                  "startLine": 211,
                   "startColumn": 12,
-                  "endLine": 198,
+                  "endLine": 211,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -7450,9 +7662,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 185,
+                  "startLine": 198,
                   "startColumn": 12,
-                  "endLine": 185,
+                  "endLine": 198,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -7473,9 +7685,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 337,
+                  "startLine": 350,
                   "startColumn": 12,
-                  "endLine": 337,
+                  "endLine": 350,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -7496,9 +7708,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 332,
+                  "startLine": 345,
                   "startColumn": 35,
-                  "endLine": 332,
+                  "endLine": 345,
                   "endColumn": 76,
                   "byteLength": 41
                 }
@@ -7519,9 +7731,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 333,
+                  "startLine": 346,
                   "startColumn": 33,
-                  "endLine": 333,
+                  "endLine": 346,
                   "endColumn": 57,
                   "byteLength": 24
                 }
@@ -7542,9 +7754,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 334,
+                  "startLine": 347,
                   "startColumn": 12,
-                  "endLine": 334,
+                  "endLine": 347,
                   "endColumn": 20,
                   "byteLength": 8
                 }
@@ -7567,9 +7779,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 334,
+                  "startLine": 347,
                   "startColumn": 12,
-                  "endLine": 334,
+                  "endLine": 347,
                   "endColumn": 20,
                   "byteLength": 8
                 }
@@ -7592,9 +7804,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 335,
+                  "startLine": 348,
                   "startColumn": 12,
-                  "endLine": 335,
+                  "endLine": 348,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -7615,9 +7827,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 526,
+                  "startLine": 539,
                   "startColumn": 12,
-                  "endLine": 526,
+                  "endLine": 539,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -7638,9 +7850,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 522,
+                  "startLine": 535,
                   "startColumn": 33,
-                  "endLine": 522,
+                  "endLine": 535,
                   "endColumn": 60,
                   "byteLength": 27
                 }
@@ -7661,9 +7873,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 523,
+                  "startLine": 536,
                   "startColumn": 35,
-                  "endLine": 523,
+                  "endLine": 536,
                   "endColumn": 51,
                   "byteLength": 16
                 }
@@ -7684,9 +7896,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 524,
+                  "startLine": 537,
                   "startColumn": 33,
-                  "endLine": 524,
+                  "endLine": 537,
                   "endColumn": 59,
                   "byteLength": 26
                 }
@@ -7707,9 +7919,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 526,
+                  "startLine": 539,
                   "startColumn": 12,
-                  "endLine": 526,
+                  "endLine": 539,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -7732,9 +7944,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 521,
+                  "startLine": 534,
                   "startColumn": 12,
-                  "endLine": 521,
+                  "endLine": 534,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -7755,9 +7967,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 213,
+                  "startLine": 226,
                   "startColumn": 14,
-                  "endLine": 213,
+                  "endLine": 226,
                   "endColumn": 20,
                   "byteLength": 6
                 }
@@ -7778,9 +7990,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 207,
+                  "startLine": 220,
                   "startColumn": 29,
-                  "endLine": 207,
+                  "endLine": 220,
                   "endColumn": 49,
                   "byteLength": 20
                 }
@@ -7801,9 +8013,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 208,
+                  "startLine": 221,
                   "startColumn": 34,
-                  "endLine": 208,
+                  "endLine": 221,
                   "endColumn": 59,
                   "byteLength": 25
                 }
@@ -7824,9 +8036,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 211,
+                  "startLine": 224,
                   "startColumn": 28,
-                  "endLine": 211,
+                  "endLine": 224,
                   "endColumn": 53,
                   "byteLength": 25
                 }
@@ -7847,9 +8059,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 209,
+                  "startLine": 222,
                   "startColumn": 12,
-                  "endLine": 209,
+                  "endLine": 222,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -7872,9 +8084,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 209,
+                  "startLine": 222,
                   "startColumn": 12,
-                  "endLine": 209,
+                  "endLine": 222,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -7897,9 +8109,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 210,
+                  "startLine": 223,
                   "startColumn": 12,
-                  "endLine": 210,
+                  "endLine": 223,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -7920,9 +8132,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 232,
+                  "startLine": 245,
                   "startColumn": 12,
-                  "endLine": 232,
+                  "endLine": 245,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -7943,9 +8155,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 223,
+                  "startLine": 236,
                   "startColumn": 36,
-                  "endLine": 223,
+                  "endLine": 236,
                   "endColumn": 63,
                   "byteLength": 27
                 }
@@ -7966,9 +8178,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 224,
+                  "startLine": 237,
                   "startColumn": 34,
-                  "endLine": 224,
+                  "endLine": 237,
                   "endColumn": 59,
                   "byteLength": 25
                 }
@@ -7989,9 +8201,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 228,
+                  "startLine": 241,
                   "startColumn": 4,
-                  "endLine": 230,
+                  "endLine": 243,
                   "endColumn": 59,
                   "byteLength": 141
                 }
@@ -8012,9 +8224,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 232,
+                  "startLine": 245,
                   "startColumn": 12,
-                  "endLine": 232,
+                  "endLine": 245,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -8037,9 +8249,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 225,
+                  "startLine": 238,
                   "startColumn": 12,
-                  "endLine": 225,
+                  "endLine": 238,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -8060,9 +8272,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 286,
+                  "startLine": 299,
                   "startColumn": 12,
-                  "endLine": 286,
+                  "endLine": 299,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -8083,9 +8295,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 286,
+                  "startLine": 299,
                   "startColumn": 12,
-                  "endLine": 286,
+                  "endLine": 299,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -8106,9 +8318,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 286,
+                  "startLine": 299,
                   "startColumn": 12,
-                  "endLine": 286,
+                  "endLine": 299,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -8129,9 +8341,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 248,
+                  "startLine": 261,
                   "startColumn": 31,
-                  "endLine": 248,
+                  "endLine": 261,
                   "endColumn": 55,
                   "byteLength": 24
                 }
@@ -8152,9 +8364,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 261,
+                  "startLine": 274,
                   "startColumn": 6,
-                  "endLine": 263,
+                  "endLine": 276,
                   "endColumn": 70,
                   "byteLength": 120
                 }
@@ -8175,9 +8387,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 271,
+                  "startLine": 284,
                   "startColumn": 29,
-                  "endLine": 271,
+                  "endLine": 284,
                   "endColumn": 53,
                   "byteLength": 24
                 }
@@ -8198,9 +8410,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 259,
+                  "startLine": 272,
                   "startColumn": 24,
-                  "endLine": 259,
+                  "endLine": 272,
                   "endColumn": 34,
                   "byteLength": 10
                 }
@@ -8221,9 +8433,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 270,
+                  "startLine": 283,
                   "startColumn": 20,
-                  "endLine": 270,
+                  "endLine": 283,
                   "endColumn": 30,
                   "byteLength": 10
                 }
@@ -8244,9 +8456,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 267,
+                  "startLine": 280,
                   "startColumn": 27,
-                  "endLine": 267,
+                  "endLine": 280,
                   "endColumn": 72,
                   "byteLength": 45
                 }
@@ -8267,9 +8479,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 268,
+                  "startLine": 281,
                   "startColumn": 24,
-                  "endLine": 268,
+                  "endLine": 281,
                   "endColumn": 57,
                   "byteLength": 33
                 }
@@ -8290,9 +8502,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 280,
+                  "startLine": 293,
                   "startColumn": 27,
-                  "endLine": 281,
+                  "endLine": 294,
                   "endColumn": 72,
                   "byteLength": 92
                 }
@@ -8313,9 +8525,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 282,
+                  "startLine": 295,
                   "startColumn": 24,
-                  "endLine": 282,
+                  "endLine": 295,
                   "endColumn": 77,
                   "byteLength": 53
                 }
@@ -8336,9 +8548,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 249,
+                  "startLine": 262,
                   "startColumn": 10,
-                  "endLine": 249,
+                  "endLine": 262,
                   "endColumn": 16,
                   "byteLength": 6
                 }
@@ -8359,9 +8571,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 264,
+                  "startLine": 277,
                   "startColumn": 12,
-                  "endLine": 264,
+                  "endLine": 277,
                   "endColumn": 27,
                   "byteLength": 15
                 }
@@ -8382,9 +8594,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 272,
+                  "startLine": 285,
                   "startColumn": 12,
-                  "endLine": 272,
+                  "endLine": 285,
                   "endColumn": 32,
                   "byteLength": 20
                 }
@@ -8407,9 +8619,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 249,
+                  "startLine": 262,
                   "startColumn": 10,
-                  "endLine": 249,
+                  "endLine": 262,
                   "endColumn": 16,
                   "byteLength": 6
                 }
@@ -8433,9 +8645,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 251,
+                  "startLine": 264,
                   "startColumn": 10,
-                  "endLine": 251,
+                  "endLine": 264,
                   "endColumn": 30,
                   "byteLength": 20
                 }
@@ -8458,9 +8670,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 253,
+                  "startLine": 266,
                   "startColumn": 10,
-                  "endLine": 253,
+                  "endLine": 266,
                   "endColumn": 17,
                   "byteLength": 7
                 }
@@ -8483,9 +8695,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 255,
+                  "startLine": 268,
                   "startColumn": 10,
-                  "endLine": 255,
+                  "endLine": 268,
                   "endColumn": 25,
                   "byteLength": 15
                 }
@@ -8508,9 +8720,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 264,
+                  "startLine": 277,
                   "startColumn": 12,
-                  "endLine": 264,
+                  "endLine": 277,
                   "endColumn": 27,
                   "byteLength": 15
                 }
@@ -8533,9 +8745,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 265,
+                  "startLine": 278,
                   "startColumn": 12,
-                  "endLine": 265,
+                  "endLine": 278,
                   "endColumn": 18,
                   "byteLength": 6
                 }
@@ -8558,9 +8770,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 266,
+                  "startLine": 279,
                   "startColumn": 12,
-                  "endLine": 266,
+                  "endLine": 279,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -8584,9 +8796,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 272,
+                  "startLine": 285,
                   "startColumn": 12,
-                  "endLine": 272,
+                  "endLine": 285,
                   "endColumn": 32,
                   "byteLength": 20
                 }
@@ -8609,9 +8821,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 275,
+                  "startLine": 288,
                   "startColumn": 12,
-                  "endLine": 275,
+                  "endLine": 288,
                   "endColumn": 27,
                   "byteLength": 15
                 }
@@ -8634,9 +8846,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 278,
+                  "startLine": 291,
                   "startColumn": 12,
-                  "endLine": 278,
+                  "endLine": 291,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -8657,9 +8869,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 286,
+                  "startLine": 299,
                   "startColumn": 12,
-                  "endLine": 286,
+                  "endLine": 299,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -8680,9 +8892,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 286,
+                  "startLine": 299,
                   "startColumn": 12,
-                  "endLine": 286,
+                  "endLine": 299,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -8703,9 +8915,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 330,
+                  "startLine": 343,
                   "startColumn": 12,
-                  "endLine": 330,
+                  "endLine": 343,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -8726,9 +8938,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 330,
+                  "startLine": 343,
                   "startColumn": 12,
-                  "endLine": 330,
+                  "endLine": 343,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -8749,9 +8961,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 330,
+                  "startLine": 343,
                   "startColumn": 12,
-                  "endLine": 330,
+                  "endLine": 343,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -8772,9 +8984,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 289,
+                  "startLine": 302,
                   "startColumn": 31,
-                  "endLine": 289,
+                  "endLine": 302,
                   "endColumn": 55,
                   "byteLength": 24
                 }
@@ -8795,9 +9007,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 290,
+                  "startLine": 303,
                   "startColumn": 26,
-                  "endLine": 290,
+                  "endLine": 303,
                   "endColumn": 41,
                   "byteLength": 15
                 }
@@ -8818,9 +9030,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 303,
+                  "startLine": 316,
                   "startColumn": 6,
-                  "endLine": 305,
+                  "endLine": 318,
                   "endColumn": 70,
                   "byteLength": 120
                 }
@@ -8841,9 +9053,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 314,
+                  "startLine": 327,
                   "startColumn": 29,
-                  "endLine": 314,
+                  "endLine": 327,
                   "endColumn": 46,
                   "byteLength": 17
                 }
@@ -8864,9 +9076,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 315,
+                  "startLine": 328,
                   "startColumn": 37,
-                  "endLine": 315,
+                  "endLine": 328,
                   "endColumn": 58,
                   "byteLength": 21
                 }
@@ -8887,9 +9099,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 301,
+                  "startLine": 314,
                   "startColumn": 24,
-                  "endLine": 301,
+                  "endLine": 314,
                   "endColumn": 34,
                   "byteLength": 10
                 }
@@ -8910,9 +9122,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 313,
+                  "startLine": 326,
                   "startColumn": 20,
-                  "endLine": 313,
+                  "endLine": 326,
                   "endColumn": 30,
                   "byteLength": 10
                 }
@@ -8933,9 +9145,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 309,
+                  "startLine": 322,
                   "startColumn": 27,
-                  "endLine": 309,
+                  "endLine": 322,
                   "endColumn": 72,
                   "byteLength": 45
                 }
@@ -8956,9 +9168,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 310,
+                  "startLine": 323,
                   "startColumn": 28,
-                  "endLine": 310,
+                  "endLine": 323,
                   "endColumn": 49,
                   "byteLength": 21
                 }
@@ -8979,9 +9191,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 311,
+                  "startLine": 324,
                   "startColumn": 28,
-                  "endLine": 311,
+                  "endLine": 324,
                   "endColumn": 54,
                   "byteLength": 26
                 }
@@ -9002,9 +9214,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 324,
+                  "startLine": 337,
                   "startColumn": 27,
-                  "endLine": 325,
+                  "endLine": 338,
                   "endColumn": 65,
                   "byteLength": 85
                 }
@@ -9025,9 +9237,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 326,
+                  "startLine": 339,
                   "startColumn": 28,
-                  "endLine": 326,
+                  "endLine": 339,
                   "endColumn": 67,
                   "byteLength": 39
                 }
@@ -9048,9 +9260,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 291,
+                  "startLine": 304,
                   "startColumn": 10,
-                  "endLine": 291,
+                  "endLine": 304,
                   "endColumn": 16,
                   "byteLength": 6
                 }
@@ -9071,9 +9283,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 306,
+                  "startLine": 319,
                   "startColumn": 12,
-                  "endLine": 306,
+                  "endLine": 319,
                   "endColumn": 20,
                   "byteLength": 8
                 }
@@ -9094,9 +9306,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 316,
+                  "startLine": 329,
                   "startColumn": 12,
-                  "endLine": 316,
+                  "endLine": 329,
                   "endColumn": 27,
                   "byteLength": 15
                 }
@@ -9119,9 +9331,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 291,
+                  "startLine": 304,
                   "startColumn": 10,
-                  "endLine": 291,
+                  "endLine": 304,
                   "endColumn": 16,
                   "byteLength": 6
                 }
@@ -9145,9 +9357,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 293,
+                  "startLine": 306,
                   "startColumn": 10,
-                  "endLine": 293,
+                  "endLine": 306,
                   "endColumn": 25,
                   "byteLength": 15
                 }
@@ -9170,9 +9382,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 295,
+                  "startLine": 308,
                   "startColumn": 10,
-                  "endLine": 295,
+                  "endLine": 308,
                   "endColumn": 17,
                   "byteLength": 7
                 }
@@ -9195,9 +9407,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 297,
+                  "startLine": 310,
                   "startColumn": 10,
-                  "endLine": 297,
+                  "endLine": 310,
                   "endColumn": 18,
                   "byteLength": 8
                 }
@@ -9220,9 +9432,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 306,
+                  "startLine": 319,
                   "startColumn": 12,
-                  "endLine": 306,
+                  "endLine": 319,
                   "endColumn": 20,
                   "byteLength": 8
                 }
@@ -9245,9 +9457,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 307,
+                  "startLine": 320,
                   "startColumn": 12,
-                  "endLine": 307,
+                  "endLine": 320,
                   "endColumn": 18,
                   "byteLength": 6
                 }
@@ -9270,9 +9482,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 308,
+                  "startLine": 321,
                   "startColumn": 12,
-                  "endLine": 308,
+                  "endLine": 321,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -9296,9 +9508,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 316,
+                  "startLine": 329,
                   "startColumn": 12,
-                  "endLine": 316,
+                  "endLine": 329,
                   "endColumn": 27,
                   "byteLength": 15
                 }
@@ -9321,9 +9533,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 319,
+                  "startLine": 332,
                   "startColumn": 12,
-                  "endLine": 319,
+                  "endLine": 332,
                   "endColumn": 20,
                   "byteLength": 8
                 }
@@ -9346,9 +9558,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 322,
+                  "startLine": 335,
                   "startColumn": 12,
-                  "endLine": 322,
+                  "endLine": 335,
                   "endColumn": 19,
                   "byteLength": 7
                 }
@@ -9369,9 +9581,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 330,
+                  "startLine": 343,
                   "startColumn": 12,
-                  "endLine": 330,
+                  "endLine": 343,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -9392,9 +9604,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 330,
+                  "startLine": 343,
                   "startColumn": 12,
-                  "endLine": 330,
+                  "endLine": 343,
                   "endColumn": 13,
                   "byteLength": 1
                 }
@@ -9415,9 +9627,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 466,
+                  "startLine": 479,
                   "startColumn": 14,
-                  "endLine": 466,
+                  "endLine": 479,
                   "endColumn": 21,
                   "byteLength": 7
                 }
@@ -9438,9 +9650,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 461,
+                  "startLine": 474,
                   "startColumn": 25,
-                  "endLine": 461,
+                  "endLine": 474,
                   "endColumn": 48,
                   "byteLength": 23
                 }
@@ -9461,9 +9673,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 462,
+                  "startLine": 475,
                   "startColumn": 31,
-                  "endLine": 462,
+                  "endLine": 475,
                   "endColumn": 53,
                   "byteLength": 22
                 }
@@ -9484,9 +9696,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 463,
+                  "startLine": 476,
                   "startColumn": 12,
-                  "endLine": 463,
+                  "endLine": 476,
                   "endColumn": 26,
                   "byteLength": 14
                 }
@@ -9510,9 +9722,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 463,
+                  "startLine": 476,
                   "startColumn": 12,
-                  "endLine": 463,
+                  "endLine": 476,
                   "endColumn": 26,
                   "byteLength": 14
                 }
@@ -9535,9 +9747,9 @@
                   "uriBaseId": "FRAMAC_SHARE"
                 },
                 "region": {
-                  "startLine": 464,
+                  "startLine": 477,
                   "startColumn": 12,
-                  "endLine": 464,
+                  "endLine": 477,
                   "endColumn": 19,
                   "byteLength": 7
                 }
diff --git a/src/plugins/variadic/tests/known/oracle/snprintf.res.oracle b/src/plugins/variadic/tests/known/oracle/snprintf.res.oracle
index 3f928d34658aa98eea01088a65b1b8d542829b8d..e570fee7f285c16b155128a31382aee776f0f526 100644
--- a/src/plugins/variadic/tests/known/oracle/snprintf.res.oracle
+++ b/src/plugins/variadic/tests/known/oracle/snprintf.res.oracle
@@ -21,7 +21,7 @@
 [eva] Analyzing a complete application starting at main
 [eva] Computing initial state
 [eva] Initial state computed
-[eva] FRAMAC_SHARE/libc/string.h:121: 
+[eva] FRAMAC_SHARE/libc/string.h:134: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memset
 [eva] using specification for function snprintf_va_1
 [eva] FRAMAC_SHARE/libc/stdio.h:213: 
diff --git a/src/plugins/wp/tests/wp_plugin/oracle/string_c.res.oracle b/src/plugins/wp/tests/wp_plugin/oracle/string_c.res.oracle
index 6065e895512cd5689727b843c85877c8f0a40a69..01d8890819150fb8ee3f468e78405a38095a941d 100644
--- a/src/plugins/wp/tests/wp_plugin/oracle/string_c.res.oracle
+++ b/src/plugins/wp/tests/wp_plugin/oracle/string_c.res.oracle
@@ -260,7 +260,7 @@ Prove: true.
 
 ------------------------------------------------------------
 
-Goal Preservation of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 79):
+Goal Preservation of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 95):
 Let a = shift_sint8(dest_0, 0).
 Let a_1 = havoc(Mchar_undef_0, Mchar_0, a, n).
 Let a_2 = shift_sint8(src_0, 0).
@@ -298,7 +298,7 @@ Prove: to_uint64(1 + i) <= n.
 
 ------------------------------------------------------------
 
-Goal Establishment of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 79):
+Goal Establishment of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 95):
 Let a = shift_sint8(d, 0).
 Let a_1 = shift_sint8(s, 0).
 Assume {
@@ -324,7 +324,7 @@ Prove: 0 <= n.
 
 ------------------------------------------------------------
 
-Goal Preservation of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 80):
+Goal Preservation of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 96):
 Let a = shift_sint8(d, 0).
 Let a_1 = havoc(Mchar_undef_0, Mchar_0, a, n).
 Let a_2 = shift_sint8(s, 0).
@@ -365,12 +365,12 @@ Prove: a_1[shift_sint8(d, i) <- a_1[shift_sint8(s, i)]][shift_sint8(d, i_1)] =
 
 ------------------------------------------------------------
 
-Goal Establishment of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 80):
+Goal Establishment of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 96):
 Prove: true.
 
 ------------------------------------------------------------
 
-Goal Preservation of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 81):
+Goal Preservation of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 97):
 Let a = shift_sint8(d, 0).
 Let a_1 = havoc(Mchar_undef_0, Mchar_0, a, n).
 Let a_2 = shift_sint8(s, 0).
@@ -411,12 +411,12 @@ Prove: a_1[shift_sint8(d, i) <- a_1[shift_sint8(s, i)]][a_3] = Mchar_0[a_3].
 
 ------------------------------------------------------------
 
-Goal Establishment of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 81):
+Goal Establishment of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 97):
 Prove: true.
 
 ------------------------------------------------------------
 
-Goal Preservation of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 91):
+Goal Preservation of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 107):
 Let a = shift_sint8(dest_0, 0).
 Let a_1 = havoc(Mchar_undef_0, Mchar_0, a, n).
 Let a_2 = shift_sint8(src_0, 0).
@@ -454,7 +454,7 @@ Prove: to_uint64(i - 1) < n.
 
 ------------------------------------------------------------
 
-Goal Establishment of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 91):
+Goal Establishment of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 107):
 Let a = shift_sint8(d, 0).
 Let a_1 = shift_sint8(s, 0).
 Assume {
@@ -480,7 +480,7 @@ Prove: to_uint64(n - 1) < n.
 
 ------------------------------------------------------------
 
-Goal Preservation of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 92):
+Goal Preservation of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 108):
 Let a = shift_sint8(d, 0).
 Let a_1 = havoc(Mchar_undef_0, Mchar_0, a, n).
 Let a_2 = shift_sint8(s, 0).
@@ -521,7 +521,7 @@ Prove: a_1[shift_sint8(d, i) <- a_1[shift_sint8(s, i)]][shift_sint8(d, i_1)] =
 
 ------------------------------------------------------------
 
-Goal Establishment of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 92):
+Goal Establishment of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 108):
 Let a = shift_sint8(dest_0, 0).
 Let a_1 = shift_sint8(src_0, 0).
 Assume {
@@ -550,7 +550,7 @@ Prove: Mchar_0[shift_sint8(src_0, i)] = Mchar_0[shift_sint8(dest_0, i)].
 
 ------------------------------------------------------------
 
-Goal Preservation of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 93):
+Goal Preservation of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 109):
 Let a = shift_sint8(d, 0).
 Let a_1 = havoc(Mchar_undef_0, Mchar_0, a, n).
 Let a_2 = shift_sint8(s, 0).
@@ -591,24 +591,24 @@ Prove: a_1[shift_sint8(d, i) <- a_1[shift_sint8(s, i)]][a_3] = Mchar_0[a_3].
 
 ------------------------------------------------------------
 
-Goal Establishment of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 93):
+Goal Establishment of Invariant 'no_eva' (file FRAMAC_SHARE/libc/string.c, line 109):
 Prove: true.
 
 ------------------------------------------------------------
 
-Goal Loop assigns (file FRAMAC_SHARE/libc/string.c, line 82) (1/3):
+Goal Loop assigns (file FRAMAC_SHARE/libc/string.c, line 98) (1/3):
 Prove: true.
 
 ------------------------------------------------------------
 
-Goal Loop assigns (file FRAMAC_SHARE/libc/string.c, line 82) (2/3):
-Effect at line 85
+Goal Loop assigns (file FRAMAC_SHARE/libc/string.c, line 98) (2/3):
+Effect at line 101
 Prove: true.
 
 ------------------------------------------------------------
 
-Goal Loop assigns (file FRAMAC_SHARE/libc/string.c, line 82) (3/3):
-Effect at line 86
+Goal Loop assigns (file FRAMAC_SHARE/libc/string.c, line 98) (3/3):
+Effect at line 102
 Let a = shift_sint8(d, 0).
 Let a_1 = havoc(Mchar_undef_0, Mchar_0, a, n).
 Let a_2 = shift_sint8(src_0, 0).
@@ -649,19 +649,19 @@ Prove: included(a_3, 1, a, n).
 
 ------------------------------------------------------------
 
-Goal Loop assigns (file FRAMAC_SHARE/libc/string.c, line 94) (1/3):
+Goal Loop assigns (file FRAMAC_SHARE/libc/string.c, line 110) (1/3):
 Prove: true.
 
 ------------------------------------------------------------
 
-Goal Loop assigns (file FRAMAC_SHARE/libc/string.c, line 94) (2/3):
-Effect at line 97
+Goal Loop assigns (file FRAMAC_SHARE/libc/string.c, line 110) (2/3):
+Effect at line 113
 Prove: true.
 
 ------------------------------------------------------------
 
-Goal Loop assigns (file FRAMAC_SHARE/libc/string.c, line 94) (3/3):
-Effect at line 98
+Goal Loop assigns (file FRAMAC_SHARE/libc/string.c, line 110) (3/3):
+Effect at line 114
 Let a = shift_sint8(d, 0).
 Let a_1 = havoc(Mchar_undef_0, Mchar_0, a, n).
 Let a_2 = shift_sint8(src_0, 0).
@@ -702,42 +702,42 @@ Prove: included(a_3, 1, a, n).
 
 ------------------------------------------------------------
 
-Goal Assigns (file FRAMAC_SHARE/libc/string.h, line 109) in 'memmove':
+Goal Assigns (file FRAMAC_SHARE/libc/string.h, line 122) in 'memmove':
 Prove: true.
 
 ------------------------------------------------------------
 
-Goal Assigns (file FRAMAC_SHARE/libc/string.h, line 109) in 'memmove' (1/7):
+Goal Assigns (file FRAMAC_SHARE/libc/string.h, line 122) in 'memmove' (1/7):
 Prove: true.
 
 ------------------------------------------------------------
 
-Goal Assigns (file FRAMAC_SHARE/libc/string.h, line 109) in 'memmove' (2/7):
-Effect at line 74
+Goal Assigns (file FRAMAC_SHARE/libc/string.h, line 122) in 'memmove' (2/7):
+Effect at line 90
 Prove: true.
 
 ------------------------------------------------------------
 
-Goal Assigns (file FRAMAC_SHARE/libc/string.h, line 109) in 'memmove' (3/7):
-Call Result at line 77
+Goal Assigns (file FRAMAC_SHARE/libc/string.h, line 122) in 'memmove' (3/7):
+Call Result at line 93
 Prove: true.
 
 ------------------------------------------------------------
 
-Goal Assigns (file FRAMAC_SHARE/libc/string.h, line 109) in 'memmove' (4/7):
-Effect at line 85
+Goal Assigns (file FRAMAC_SHARE/libc/string.h, line 122) in 'memmove' (4/7):
+Effect at line 101
 Prove: true.
 
 ------------------------------------------------------------
 
-Goal Assigns (file FRAMAC_SHARE/libc/string.h, line 109) in 'memmove' (5/7):
-Effect at line 97
+Goal Assigns (file FRAMAC_SHARE/libc/string.h, line 122) in 'memmove' (5/7):
+Effect at line 113
 Prove: true.
 
 ------------------------------------------------------------
 
-Goal Assigns (file FRAMAC_SHARE/libc/string.h, line 109) in 'memmove' (6/7):
-Effect at line 99
+Goal Assigns (file FRAMAC_SHARE/libc/string.h, line 122) in 'memmove' (6/7):
+Effect at line 115
 Let a = shift_sint8(d, 0).
 Let a_1 = havoc(Mchar_undef_0, Mchar_0, a, n).
 Let a_2 = shift_sint8(src_0, 0).
@@ -777,13 +777,13 @@ Prove: 0 < n.
 
 ------------------------------------------------------------
 
-Goal Assigns (file FRAMAC_SHARE/libc/string.h, line 109) in 'memmove' (7/7):
-Effect at line 101
+Goal Assigns (file FRAMAC_SHARE/libc/string.h, line 122) in 'memmove' (7/7):
+Effect at line 117
 Prove: true.
 
 ------------------------------------------------------------
 
-Goal Decreasing of Loop variant at loop (file FRAMAC_SHARE/libc/string.c, line 85):
+Goal Decreasing of Loop variant at loop (file FRAMAC_SHARE/libc/string.c, line 101):
 Let a = shift_sint8(dest_0, 0).
 Let a_1 = havoc(Mchar_undef_0, Mchar_0, a, n).
 Let a_2 = shift_sint8(src_0, 0).
@@ -821,12 +821,12 @@ Prove: i < to_uint64(1 + i).
 
 ------------------------------------------------------------
 
-Goal Positivity of Loop variant at loop (file FRAMAC_SHARE/libc/string.c, line 85):
+Goal Positivity of Loop variant at loop (file FRAMAC_SHARE/libc/string.c, line 101):
 Prove: true.
 
 ------------------------------------------------------------
 
-Goal Decreasing of Loop variant at loop (file FRAMAC_SHARE/libc/string.c, line 97):
+Goal Decreasing of Loop variant at loop (file FRAMAC_SHARE/libc/string.c, line 113):
 Let a = shift_sint8(dest_0, 0).
 Let a_1 = havoc(Mchar_undef_0, Mchar_0, a, n).
 Let a_2 = shift_sint8(src_0, 0).
@@ -864,7 +864,7 @@ Prove: to_uint64(i - 1) < i.
 
 ------------------------------------------------------------
 
-Goal Positivity of Loop variant at loop (file FRAMAC_SHARE/libc/string.c, line 97):
+Goal Positivity of Loop variant at loop (file FRAMAC_SHARE/libc/string.c, line 113):
 Prove: true.
 
 ------------------------------------------------------------
diff --git a/tests/builtins/oracle/imprecise.res.oracle b/tests/builtins/oracle/imprecise.res.oracle
index eff74c8d72b3a2557d72f75731a08bea8fb12ef6..679fbcdf6bbb70a71ce088d729179f082bac2730 100644
--- a/tests/builtins/oracle/imprecise.res.oracle
+++ b/tests/builtins/oracle/imprecise.res.oracle
@@ -105,7 +105,7 @@
 [eva] tests/builtins/imprecise.c:51: Call to builtin memset
 [eva:alarm] tests/builtins/imprecise.c:51: Warning: 
   function memset: precondition 'valid_s' got status unknown.
-[eva] share/libc/string.h:121: 
+[eva] share/libc/string.h:134: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memset
 [eva:alarm] tests/builtins/imprecise.c:53: Warning: 
   out of bounds write. assert \valid(p2);
diff --git a/tests/builtins/oracle/memchr.res.oracle b/tests/builtins/oracle/memchr.res.oracle
index 5b0ee21abd93b73e51f1a9c21c4ca5a01f8aa72d..de08ce7a2e0bff2be0d8b357277a8416d418ebcb 100644
--- a/tests/builtins/oracle/memchr.res.oracle
+++ b/tests/builtins/oracle/memchr.res.oracle
@@ -152,7 +152,7 @@
 [eva] tests/builtins/memchr.c:193: Call to builtin memset
 [eva] tests/builtins/memchr.c:193: 
   function memset: precondition 'valid_s' got status valid.
-[eva] share/libc/string.h:121: 
+[eva] share/libc/string.h:134: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memset
 [eva] Recording results for init_array_nondet
 [eva] Done for function init_array_nondet
diff --git a/tests/builtins/oracle/memcpy.res.oracle b/tests/builtins/oracle/memcpy.res.oracle
index a5f20ab0df7f8edf1309e39f0e0d36f15ca80109..61a4686fb41a7545554b6aee89728e557cb4e1c7 100644
--- a/tests/builtins/oracle/memcpy.res.oracle
+++ b/tests/builtins/oracle/memcpy.res.oracle
@@ -1190,6 +1190,23 @@
 [  Valid  ] Default behavior
             by Frama-C kernel.
 
+--------------------------------------------------------------------------------
+--- Properties of Function 'mempcpy'
+--------------------------------------------------------------------------------
+
+[ Extern  ] Post-condition 'copied_contents'
+            Unverifiable but considered Valid.
+[ Extern  ] Post-condition 'result_next_byte'
+            Unverifiable but considered Valid.
+[ Extern  ] Assigns (file share/libc/string.h, line 112)
+            Unverifiable but considered Valid.
+[ Extern  ] Froms (file share/libc/string.h, line 112)
+            Unverifiable but considered Valid.
+[ Extern  ] Froms (file share/libc/string.h, line 113)
+            Unverifiable but considered Valid.
+[  Valid  ] Default behavior
+            by Frama-C kernel.
+
 --------------------------------------------------------------------------------
 --- Properties of Function 'memmove'
 --------------------------------------------------------------------------------
@@ -1198,11 +1215,11 @@
             Unverifiable but considered Valid.
 [ Extern  ] Post-condition 'result_ptr'
             Unverifiable but considered Valid.
-[ Extern  ] Assigns (file share/libc/string.h, line 109)
+[ Extern  ] Assigns (file share/libc/string.h, line 122)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 109)
+[ Extern  ] Froms (file share/libc/string.h, line 122)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 110)
+[ Extern  ] Froms (file share/libc/string.h, line 123)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -1215,11 +1232,11 @@
             Unverifiable but considered Valid.
 [ Extern  ] Post-condition 'result_ptr'
             Unverifiable but considered Valid.
-[ Extern  ] Assigns (file share/libc/string.h, line 119)
+[ Extern  ] Assigns (file share/libc/string.h, line 132)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 119)
+[ Extern  ] Froms (file share/libc/string.h, line 132)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 120)
+[ Extern  ] Froms (file share/libc/string.h, line 133)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -1232,7 +1249,7 @@
             Unverifiable but considered Valid.
 [ Extern  ] Assigns nothing
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 129)
+[ Extern  ] Froms (file share/libc/string.h, line 142)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -1245,7 +1262,7 @@
             Unverifiable but considered Valid.
 [ Extern  ] Assigns nothing
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 135)
+[ Extern  ] Froms (file share/libc/string.h, line 148)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -1258,7 +1275,7 @@
             Unverifiable but considered Valid.
 [ Extern  ] Assigns nothing
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 142)
+[ Extern  ] Froms (file share/libc/string.h, line 155)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -1271,7 +1288,7 @@
             Unverifiable but considered Valid.
 [ Extern  ] Assigns nothing
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 149)
+[ Extern  ] Froms (file share/libc/string.h, line 162)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -1282,7 +1299,7 @@
 
 [ Extern  ] Assigns nothing
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 156)
+[ Extern  ] Froms (file share/libc/string.h, line 169)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -1307,7 +1324,7 @@
             Unverifiable but considered Valid.
 [ Extern  ] Assigns nothing
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 161)
+[ Extern  ] Froms (file share/libc/string.h, line 174)
             Unverifiable but considered Valid.
 [  Valid  ] Behavior 'default'
             by Frama-C kernel.
@@ -1326,7 +1343,7 @@
             Unverifiable but considered Valid.
 [ Extern  ] Assigns nothing
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 179)
+[ Extern  ] Froms (file share/libc/string.h, line 192)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -1347,7 +1364,7 @@
             Unverifiable but considered Valid.
 [ Extern  ] Assigns nothing
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 185)
+[ Extern  ] Froms (file share/libc/string.h, line 198)
             Unverifiable but considered Valid.
 [  Valid  ] Behavior 'default'
             by Frama-C kernel.
@@ -1366,7 +1383,7 @@
             Unverifiable but considered Valid.
 [ Extern  ] Assigns nothing
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 202)
+[ Extern  ] Froms (file share/libc/string.h, line 215)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -1377,11 +1394,11 @@
 
 [ Extern  ] Post-condition 'result_bounded'
             Unverifiable but considered Valid.
-[ Extern  ] Assigns (file share/libc/string.h, line 209)
+[ Extern  ] Assigns (file share/libc/string.h, line 222)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 209)
+[ Extern  ] Froms (file share/libc/string.h, line 222)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 210)
+[ Extern  ] Froms (file share/libc/string.h, line 223)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -1394,7 +1411,7 @@
             Unverifiable but considered Valid.
 [ Extern  ] Assigns nothing
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 217)
+[ Extern  ] Froms (file share/libc/string.h, line 230)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -1407,7 +1424,7 @@
             Unverifiable but considered Valid.
 [ Extern  ] Assigns nothing
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 225)
+[ Extern  ] Froms (file share/libc/string.h, line 238)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -1420,7 +1437,7 @@
             Unverifiable but considered Valid.
 [ Extern  ] Assigns nothing
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 236)
+[ Extern  ] Froms (file share/libc/string.h, line 249)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -1437,31 +1454,31 @@
             Unverifiable but considered Valid.
 [ Extern  ] Post-condition for 'resume_str' 'ptr_subset'
             Unverifiable but considered Valid.
-[ Extern  ] Assigns (file share/libc/string.h, line 249)
+[ Extern  ] Assigns (file share/libc/string.h, line 262)
             Unverifiable but considered Valid.
-[ Extern  ] Assigns for 'new_str' (file share/libc/string.h, line 264)
+[ Extern  ] Assigns for 'new_str' (file share/libc/string.h, line 277)
             Unverifiable but considered Valid.
-[ Extern  ] Assigns for 'resume_str' (file share/libc/string.h, line 272)
+[ Extern  ] Assigns for 'resume_str' (file share/libc/string.h, line 285)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 249)
+[ Extern  ] Froms (file share/libc/string.h, line 262)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 251)
+[ Extern  ] Froms (file share/libc/string.h, line 264)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 253)
+[ Extern  ] Froms (file share/libc/string.h, line 266)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 255)
+[ Extern  ] Froms (file share/libc/string.h, line 268)
             Unverifiable but considered Valid.
-[ Extern  ] Froms for 'new_str' (file share/libc/string.h, line 264)
+[ Extern  ] Froms for 'new_str' (file share/libc/string.h, line 277)
             Unverifiable but considered Valid.
-[ Extern  ] Froms for 'new_str' (file share/libc/string.h, line 265)
+[ Extern  ] Froms for 'new_str' (file share/libc/string.h, line 278)
             Unverifiable but considered Valid.
-[ Extern  ] Froms for 'new_str' (file share/libc/string.h, line 266)
+[ Extern  ] Froms for 'new_str' (file share/libc/string.h, line 279)
             Unverifiable but considered Valid.
-[ Extern  ] Froms for 'resume_str' (file share/libc/string.h, line 272)
+[ Extern  ] Froms for 'resume_str' (file share/libc/string.h, line 285)
             Unverifiable but considered Valid.
-[ Extern  ] Froms for 'resume_str' (file share/libc/string.h, line 275)
+[ Extern  ] Froms for 'resume_str' (file share/libc/string.h, line 288)
             Unverifiable but considered Valid.
-[ Extern  ] Froms for 'resume_str' (file share/libc/string.h, line 278)
+[ Extern  ] Froms for 'resume_str' (file share/libc/string.h, line 291)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -1484,31 +1501,31 @@
             Unverifiable but considered Valid.
 [ Extern  ] Post-condition for 'resume_str' 'saveptr_subset'
             Unverifiable but considered Valid.
-[ Extern  ] Assigns (file share/libc/string.h, line 291)
+[ Extern  ] Assigns (file share/libc/string.h, line 304)
             Unverifiable but considered Valid.
-[ Extern  ] Assigns for 'new_str' (file share/libc/string.h, line 306)
+[ Extern  ] Assigns for 'new_str' (file share/libc/string.h, line 319)
             Unverifiable but considered Valid.
-[ Extern  ] Assigns for 'resume_str' (file share/libc/string.h, line 316)
+[ Extern  ] Assigns for 'resume_str' (file share/libc/string.h, line 329)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 291)
+[ Extern  ] Froms (file share/libc/string.h, line 304)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 293)
+[ Extern  ] Froms (file share/libc/string.h, line 306)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 295)
+[ Extern  ] Froms (file share/libc/string.h, line 308)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 297)
+[ Extern  ] Froms (file share/libc/string.h, line 310)
             Unverifiable but considered Valid.
-[ Extern  ] Froms for 'new_str' (file share/libc/string.h, line 306)
+[ Extern  ] Froms for 'new_str' (file share/libc/string.h, line 319)
             Unverifiable but considered Valid.
-[ Extern  ] Froms for 'new_str' (file share/libc/string.h, line 307)
+[ Extern  ] Froms for 'new_str' (file share/libc/string.h, line 320)
             Unverifiable but considered Valid.
-[ Extern  ] Froms for 'new_str' (file share/libc/string.h, line 308)
+[ Extern  ] Froms for 'new_str' (file share/libc/string.h, line 321)
             Unverifiable but considered Valid.
-[ Extern  ] Froms for 'resume_str' (file share/libc/string.h, line 316)
+[ Extern  ] Froms for 'resume_str' (file share/libc/string.h, line 329)
             Unverifiable but considered Valid.
-[ Extern  ] Froms for 'resume_str' (file share/libc/string.h, line 319)
+[ Extern  ] Froms for 'resume_str' (file share/libc/string.h, line 332)
             Unverifiable but considered Valid.
-[ Extern  ] Froms for 'resume_str' (file share/libc/string.h, line 322)
+[ Extern  ] Froms for 'resume_str' (file share/libc/string.h, line 335)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -1521,11 +1538,11 @@
 --- Properties of Function 'strsep'
 --------------------------------------------------------------------------------
 
-[ Extern  ] Assigns (file share/libc/string.h, line 334)
+[ Extern  ] Assigns (file share/libc/string.h, line 347)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 334)
+[ Extern  ] Froms (file share/libc/string.h, line 347)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 335)
+[ Extern  ] Froms (file share/libc/string.h, line 348)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -1542,7 +1559,7 @@
             Unverifiable but considered Valid.
 [ Extern  ] Assigns nothing
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 345)
+[ Extern  ] Froms (file share/libc/string.h, line 358)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -1555,11 +1572,11 @@
             Unverifiable but considered Valid.
 [ Extern  ] Post-condition 'result_ptr'
             Unverifiable but considered Valid.
-[ Extern  ] Assigns (file share/libc/string.h, line 358)
+[ Extern  ] Assigns (file share/libc/string.h, line 371)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 358)
+[ Extern  ] Froms (file share/libc/string.h, line 371)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 359)
+[ Extern  ] Froms (file share/libc/string.h, line 372)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -1576,11 +1593,11 @@
             Unverifiable but considered Valid.
 [ Extern  ] Post-condition for 'partial' 'equal_prefix'
             Unverifiable but considered Valid.
-[ Extern  ] Assigns (file share/libc/string.h, line 370)
+[ Extern  ] Assigns (file share/libc/string.h, line 383)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 370)
+[ Extern  ] Froms (file share/libc/string.h, line 383)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 371)
+[ Extern  ] Froms (file share/libc/string.h, line 384)
             Unverifiable but considered Valid.
 [  Valid  ] Behavior 'complete'
             by Frama-C kernel.
@@ -1597,11 +1614,11 @@
             Unverifiable but considered Valid.
 [ Extern  ] Post-condition 'bounded_result'
             Unverifiable but considered Valid.
-[ Extern  ] Assigns (file share/libc/string.h, line 391)
+[ Extern  ] Assigns (file share/libc/string.h, line 404)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 391)
+[ Extern  ] Froms (file share/libc/string.h, line 404)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 392)
+[ Extern  ] Froms (file share/libc/string.h, line 405)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -1614,11 +1631,11 @@
             Unverifiable but considered Valid.
 [ Extern  ] Post-condition 'points_to_end'
             Unverifiable but considered Valid.
-[ Extern  ] Assigns (file share/libc/string.h, line 403)
+[ Extern  ] Assigns (file share/libc/string.h, line 416)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 403)
+[ Extern  ] Froms (file share/libc/string.h, line 416)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 404)
+[ Extern  ] Froms (file share/libc/string.h, line 417)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -1635,11 +1652,11 @@
             Unverifiable but considered Valid.
 [ Extern  ] Post-condition 'result_ptr'
             Unverifiable but considered Valid.
-[ Extern  ] Assigns (file share/libc/string.h, line 414)
+[ Extern  ] Assigns (file share/libc/string.h, line 427)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 414)
+[ Extern  ] Froms (file share/libc/string.h, line 427)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 417)
+[ Extern  ] Froms (file share/libc/string.h, line 430)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -1654,23 +1671,23 @@
             Unverifiable but considered Valid.
 [ Extern  ] Post-condition for 'partial' 'sum_of_bounded_lengths'
             Unverifiable but considered Valid.
-[ Extern  ] Assigns for 'complete' (file share/libc/string.h, line 434)
+[ Extern  ] Assigns for 'complete' (file share/libc/string.h, line 447)
             Unverifiable but considered Valid.
-[ Extern  ] Assigns (file share/libc/string.h, line 428)
+[ Extern  ] Assigns (file share/libc/string.h, line 441)
             Unverifiable but considered Valid.
-[ Extern  ] Assigns for 'partial' (file share/libc/string.h, line 442)
+[ Extern  ] Assigns for 'partial' (file share/libc/string.h, line 455)
             Unverifiable but considered Valid.
-[ Extern  ] Froms for 'complete' (file share/libc/string.h, line 434)
+[ Extern  ] Froms for 'complete' (file share/libc/string.h, line 447)
             Unverifiable but considered Valid.
-[ Extern  ] Froms for 'complete' (file share/libc/string.h, line 436)
+[ Extern  ] Froms for 'complete' (file share/libc/string.h, line 449)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 428)
+[ Extern  ] Froms (file share/libc/string.h, line 441)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 429)
+[ Extern  ] Froms (file share/libc/string.h, line 442)
             Unverifiable but considered Valid.
-[ Extern  ] Froms for 'partial' (file share/libc/string.h, line 442)
+[ Extern  ] Froms for 'partial' (file share/libc/string.h, line 455)
             Unverifiable but considered Valid.
-[ Extern  ] Froms for 'partial' (file share/libc/string.h, line 444)
+[ Extern  ] Froms for 'partial' (file share/libc/string.h, line 457)
             Unverifiable but considered Valid.
 [  Valid  ] Behavior 'complete'
             by Frama-C kernel.
@@ -1685,11 +1702,11 @@
 
 [ Extern  ] Post-condition 'bounded_result'
             Unverifiable but considered Valid.
-[ Extern  ] Assigns (file share/libc/string.h, line 454)
+[ Extern  ] Assigns (file share/libc/string.h, line 467)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 454)
+[ Extern  ] Froms (file share/libc/string.h, line 467)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 455)
+[ Extern  ] Froms (file share/libc/string.h, line 468)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -1698,11 +1715,11 @@
 --- Properties of Function 'strxfrm'
 --------------------------------------------------------------------------------
 
-[ Extern  ] Assigns (file share/libc/string.h, line 463)
+[ Extern  ] Assigns (file share/libc/string.h, line 476)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 463)
+[ Extern  ] Froms (file share/libc/string.h, line 476)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 464)
+[ Extern  ] Froms (file share/libc/string.h, line 477)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -1717,19 +1734,19 @@
             Unverifiable but considered Valid.
 [ Extern  ] Post-condition for 'no_allocation' 'result_null'
             Unverifiable but considered Valid.
-[ Extern  ] Assigns for 'allocation' (file share/libc/string.h, line 476)
+[ Extern  ] Assigns for 'allocation' (file share/libc/string.h, line 489)
             Unverifiable but considered Valid.
 [ Extern  ] Assigns nothing
             Unverifiable but considered Valid.
 [ Extern  ] Assigns for 'no_allocation' nothing
             Unverifiable but considered Valid.
-[ Extern  ] Froms for 'allocation' (file share/libc/string.h, line 476)
+[ Extern  ] Froms for 'allocation' (file share/libc/string.h, line 489)
             Unverifiable but considered Valid.
-[ Extern  ] Froms for 'allocation' (file share/libc/string.h, line 477)
+[ Extern  ] Froms for 'allocation' (file share/libc/string.h, line 490)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 473)
+[ Extern  ] Froms (file share/libc/string.h, line 486)
             Unverifiable but considered Valid.
-[ Extern  ] Froms for 'no_allocation' (file share/libc/string.h, line 483)
+[ Extern  ] Froms for 'no_allocation' (file share/libc/string.h, line 496)
             Unverifiable but considered Valid.
 [  Valid  ] Behavior 'allocation'
             by Frama-C kernel.
@@ -1737,7 +1754,7 @@
             by Frama-C kernel.
 [  Valid  ] Behavior 'no_allocation'
             by Frama-C kernel.
-[ Extern  ] Frees/Allocates nothing/(file share/libc/string.h, line 472) 
+[ Extern  ] Frees/Allocates nothing/(file share/libc/string.h, line 485) 
             Unverifiable but considered Valid.
 [ Extern  ] Frees/Allocates for 'no_allocation' nothing/nothing 
             Unverifiable but considered Valid.
@@ -1752,19 +1769,19 @@
             Unverifiable but considered Valid.
 [ Extern  ] Post-condition for 'no_allocation' 'result_null'
             Unverifiable but considered Valid.
-[ Extern  ] Assigns for 'allocation' (file share/libc/string.h, line 495)
+[ Extern  ] Assigns for 'allocation' (file share/libc/string.h, line 508)
             Unverifiable but considered Valid.
 [ Extern  ] Assigns nothing
             Unverifiable but considered Valid.
 [ Extern  ] Assigns for 'no_allocation' nothing
             Unverifiable but considered Valid.
-[ Extern  ] Froms for 'allocation' (file share/libc/string.h, line 495)
+[ Extern  ] Froms for 'allocation' (file share/libc/string.h, line 508)
             Unverifiable but considered Valid.
-[ Extern  ] Froms for 'allocation' (file share/libc/string.h, line 496)
+[ Extern  ] Froms for 'allocation' (file share/libc/string.h, line 509)
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 491)
+[ Extern  ] Froms (file share/libc/string.h, line 504)
             Unverifiable but considered Valid.
-[ Extern  ] Froms for 'no_allocation' (file share/libc/string.h, line 505)
+[ Extern  ] Froms for 'no_allocation' (file share/libc/string.h, line 518)
             Unverifiable but considered Valid.
 [  Valid  ] Behavior 'allocation'
             by Frama-C kernel.
@@ -1772,7 +1789,7 @@
             by Frama-C kernel.
 [  Valid  ] Behavior 'no_allocation'
             by Frama-C kernel.
-[ Extern  ] Frees/Allocates nothing/(file share/libc/string.h, line 490) 
+[ Extern  ] Frees/Allocates nothing/(file share/libc/string.h, line 503) 
             Unverifiable but considered Valid.
 [ Extern  ] Frees/Allocates for 'no_allocation' nothing/nothing 
             Unverifiable but considered Valid.
@@ -1789,7 +1806,7 @@
             Unverifiable but considered Valid.
 [ Extern  ] Assigns nothing
             Unverifiable but considered Valid.
-[ Extern  ] Froms (file share/libc/string.h, line 521)
+[ Extern  ] Froms (file share/libc/string.h, line 534)
             Unverifiable but considered Valid.
 [  Valid  ] Default behavior
             by Frama-C kernel.
@@ -2251,10 +2268,10 @@
 --------------------------------------------------------------------------------
 --- Status Report Summary
 --------------------------------------------------------------------------------
-   163 Completely validated
+   164 Completely validated
      1 Locally validated
-   242 Considered valid
+   247 Considered valid
     32 To be validated
      4 Alarms emitted
-   442 Total
+   448 Total
 --------------------------------------------------------------------------------
diff --git a/tests/builtins/oracle/memset.res.oracle b/tests/builtins/oracle/memset.res.oracle
index f0aa5e3505dd50604e0f7b10a38d109ac9418922..343d5073b106f82d3908415fd75fd7f212d1839b 100644
--- a/tests/builtins/oracle/memset.res.oracle
+++ b/tests/builtins/oracle/memset.res.oracle
@@ -23,7 +23,7 @@
 [eva] tests/builtins/memset.c:33: Call to builtin memset
 [eva] tests/builtins/memset.c:33: 
   function memset: precondition 'valid_s' got status valid.
-[eva] share/libc/string.h:121: 
+[eva] share/libc/string.h:134: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memset
 [eva:alarm] tests/builtins/memset.c:34: Warning: 
   pointer downcast. assert (unsigned int)((int *)t2) ≤ 2147483647;
diff --git a/tests/builtins/oracle/memset_malloc_0.res.oracle b/tests/builtins/oracle/memset_malloc_0.res.oracle
index 02e895219affaa1e5b95535f9879ce64a699fbbe..e6f0e5cd735c1576231b6833fdbc32345ee09248 100644
--- a/tests/builtins/oracle/memset_malloc_0.res.oracle
+++ b/tests/builtins/oracle/memset_malloc_0.res.oracle
@@ -9,7 +9,7 @@
 [eva] tests/builtins/memset_malloc_0.c:18: Call to builtin memset
 [eva] tests/builtins/memset_malloc_0.c:18: 
   function memset: precondition 'valid_s' got status valid.
-[eva] share/libc/string.h:121: 
+[eva] share/libc/string.h:134: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memset
 [eva] Recording results for main
 [eva] done for function main
diff --git a/tests/builtins/oracle/precise_memset.res.oracle b/tests/builtins/oracle/precise_memset.res.oracle
index 4ec1113f41e38ab0f6980768e07ff29ae040700b..58911eec78ca3767220e6b408cb1dfcfeb750561 100644
--- a/tests/builtins/oracle/precise_memset.res.oracle
+++ b/tests/builtins/oracle/precise_memset.res.oracle
@@ -22,7 +22,7 @@
 [eva] tests/builtins/precise_memset.c:72: Call to builtin memset
 [eva] tests/builtins/precise_memset.c:72: 
   function memset: precondition 'valid_s' got status valid.
-[eva] share/libc/string.h:121: 
+[eva] share/libc/string.h:134: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memset
 [eva] tests/builtins/precise_memset.c:73: Call to builtin memset
 [eva] tests/builtins/precise_memset.c:73: 
diff --git a/tests/builtins/oracle/strchr.res.oracle b/tests/builtins/oracle/strchr.res.oracle
index 476e5595632608dff381b6c0c81fe735880fb468..2198323b8e33a288dcc577c70fab35a5a7bbd447 100644
--- a/tests/builtins/oracle/strchr.res.oracle
+++ b/tests/builtins/oracle/strchr.res.oracle
@@ -23,7 +23,7 @@
 [eva] tests/builtins/strchr.c:88: Call to builtin strchr
 [eva] tests/builtins/strchr.c:88: 
   function strchr: precondition 'valid_string_s' got status valid.
-[eva] share/libc/string.h:168: 
+[eva] share/libc/string.h:181: 
   cannot evaluate ACSL term, unsupported logic var p
 [eva] tests/builtins/strchr.c:88: Frama_C_show_each_mystrchr: {3}
 [eva] tests/builtins/strchr.c:89: assertion got status valid.
@@ -93,7 +93,7 @@
 [eva] tests/builtins/strchr.c:189: Call to builtin memset
 [eva] tests/builtins/strchr.c:189: 
   function memset: precondition 'valid_s' got status valid.
-[eva] share/libc/string.h:121: 
+[eva] share/libc/string.h:134: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memset
 [eva] Recording results for init_array_nondet
 [eva] Done for function init_array_nondet
diff --git a/tests/builtins/oracle/strlen.res.oracle b/tests/builtins/oracle/strlen.res.oracle
index 25eace5ce0afc562784ba03c340dda22198327c6..984a05a93ce1566bcb90453620f3a89a7da9864c 100644
--- a/tests/builtins/oracle/strlen.res.oracle
+++ b/tests/builtins/oracle/strlen.res.oracle
@@ -94,7 +94,7 @@
 [eva] tests/builtins/strlen.c:161: Call to builtin memset
 [eva] tests/builtins/strlen.c:161: 
   function memset: precondition 'valid_s' got status valid.
-[eva] share/libc/string.h:121: 
+[eva] share/libc/string.h:134: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memset
 [eva] Recording results for init_array_nondet
 [eva] Done for function init_array_nondet
diff --git a/tests/builtins/oracle/strnlen2.res.oracle b/tests/builtins/oracle/strnlen2.res.oracle
index 5bc8dab83db2e2fb0947d85d5a50139266d40473..133e7e286a95d01dcc77c05463abd200b42bbce1 100644
--- a/tests/builtins/oracle/strnlen2.res.oracle
+++ b/tests/builtins/oracle/strnlen2.res.oracle
@@ -94,7 +94,7 @@
 [eva] tests/builtins/strnlen2.c:138: Call to builtin memset
 [eva] tests/builtins/strnlen2.c:138: 
   function memset: precondition 'valid_s' got status valid.
-[eva] share/libc/string.h:121: 
+[eva] share/libc/string.h:134: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memset
 [eva] Recording results for init_array_nondet
 [eva] Done for function init_array_nondet
diff --git a/tests/builtins/oracle/wcslen.res.oracle b/tests/builtins/oracle/wcslen.res.oracle
index b6224f18bec7a5ac01cd50395e061cbb1a99029f..23125298b4daa64032e1a6fd774fc0c9f671a3ce 100644
--- a/tests/builtins/oracle/wcslen.res.oracle
+++ b/tests/builtins/oracle/wcslen.res.oracle
@@ -94,7 +94,7 @@
 [eva] tests/builtins/wcslen.c:161: Call to builtin memset
 [eva] tests/builtins/wcslen.c:161: 
   function memset: precondition 'valid_s' got status valid.
-[eva] share/libc/string.h:121: 
+[eva] share/libc/string.h:134: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memset
 [eva] Recording results for init_array_nondet
 [eva] Done for function init_array_nondet
diff --git a/tests/builtins/oracle/write-const.res.oracle b/tests/builtins/oracle/write-const.res.oracle
index 9423005733a661ade90bc56a8a55bb836b7af397..c5d0d64afc319bd9266cf0d710282d15b68813d9 100644
--- a/tests/builtins/oracle/write-const.res.oracle
+++ b/tests/builtins/oracle/write-const.res.oracle
@@ -42,7 +42,7 @@
 [eva] tests/builtins/write-const.c:25: Call to builtin memset
 [eva:alarm] tests/builtins/write-const.c:25: Warning: 
   function memset: precondition 'valid_s' got status unknown.
-[eva] share/libc/string.h:121: 
+[eva] share/libc/string.h:134: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memset
 [eva] tests/builtins/write-const.c:26: 
   Frama_C_dump_each:
diff --git a/tests/libc/oracle/coverage.res.oracle b/tests/libc/oracle/coverage.res.oracle
index f0696a6f2d10b1655035a8924f10f4055b0c0180..714c45dd1d976bd75299d40963eb4fed94c9b3ac 100644
--- a/tests/libc/oracle/coverage.res.oracle
+++ b/tests/libc/oracle/coverage.res.oracle
@@ -28,7 +28,7 @@
   main: 4 stmts out of 4 (100.0%)
 [metrics] Eva coverage statistics
   =======================
-  Syntactically reachable functions = 2 (out of 113)
+  Syntactically reachable functions = 2 (out of 114)
   Semantically reached functions = 2
   Coverage estimation = 100.0%
 [metrics] Statements analyzed by Eva
diff --git a/tests/libc/oracle/fc_libc.0.res.oracle b/tests/libc/oracle/fc_libc.0.res.oracle
index 42266a3a00f369cd9dfa692f7122427645010878..c978879e41d91977af43f29b02dab667e4681fa5 100644
--- a/tests/libc/oracle/fc_libc.0.res.oracle
+++ b/tests/libc/oracle/fc_libc.0.res.oracle
@@ -13,7 +13,7 @@
 [eva] ====== VALUES COMPUTED ======
 [eva:final-states] Values at end of function main:
   
-[metrics] Defined functions (84)
+[metrics] Defined functions (86)
   ======================
    Frama_C_abort (1 call); Frama_C_char_interval (1 call);
    Frama_C_double_interval (0 call); Frama_C_float_interval (0 call);
@@ -30,9 +30,9 @@
    islower (0 call); isprint (0 call); ispunct (0 call); isspace (1 call);
    isupper (0 call); isxdigit (0 call); localeconv (0 call); main (0 call);
    memchr (0 call); memcmp (0 call); memcpy (4 calls); memmove (0 call);
-   memoverlap (1 call); memrchr (0 call); memset (1 call);
+   memoverlap (1 call); mempcpy (0 call); memrchr (0 call); memset (1 call);
    posix_memalign (0 call); putenv (0 call); realpath (0 call);
-   res_search (1 call); setenv (0 call); setlocale (0 call);
+   res_search (1 call); setenv (0 call); setlocale (0 call); stpcpy (0 call);
    strcasecmp (0 call); strcat (0 call); strchr (3 calls); strcmp (0 call);
    strcpy (1 call); strdup (0 call); strerror (0 call); strlen (6 calls);
    strncat (0 call); strncmp (0 call); strncpy (2 calls); strndup (0 call);
@@ -41,7 +41,7 @@
    wcscpy (0 call); wcsdup (0 call); wcslen (3 calls); wcsncat (0 call);
    wcsncpy (0 call); wmemcpy (1 call); wmemset (0 call); 
   
-  Specified-only functions (422)
+  Specified-only functions (421)
   ==============================
    FD_CLR (0 call); FD_ISSET (0 call); FD_SET (0 call); FD_ZERO (0 call);
    Frama_C_int_interval (0 call); Frama_C_long_interval (0 call);
@@ -149,25 +149,24 @@
    sigprocmask (0 call); sin (0 call); sinf (0 call); sinl (0 call);
    sleep (0 call); socket (0 call); socketpair (0 call); sqrt (0 call);
    sqrtf (0 call); sqrtl (0 call); srand (0 call); srand48 (0 call);
-   srandom (0 call); stat (0 call); stpcpy (0 call); strcasestr (0 call);
-   strchrnul (0 call); strcoll (0 call); strcspn (0 call); strftime (0 call);
-   strlcat (0 call); strlcpy (0 call); strncasecmp (0 call); strpbrk (0 call);
-   strsep (0 call); strspn (0 call); strtod (0 call); strtof (0 call);
-   strtoimax (0 call); strtok (0 call); strtok_r (0 call); strtol (0 call);
-   strtold (0 call); strtoll (0 call); strtoul (0 call); strtoull (0 call);
-   strxfrm (0 call); sync (0 call); sysconf (0 call); syslog (0 call);
-   system (0 call); tcflush (0 call); tcgetattr (0 call); tcsetattr (0 call);
-   time (0 call); times (0 call); tmpfile (0 call); tmpnam (0 call);
-   trunc (0 call); truncf (0 call); truncl (0 call); ttyname (0 call);
-   tzset (0 call); umask (0 call); uname (0 call); ungetc (0 call);
-   unlink (0 call); usleep (0 call); utimes (0 call); vfprintf (0 call);
-   vfscanf (0 call); vprintf (0 call); vscanf (0 call); vsnprintf (0 call);
-   vsprintf (0 call); vsyslog (0 call); wait (0 call); waitpid (0 call);
-   wcscasecmp (0 call); wcschr (0 call); wcscmp (0 call); wcscspn (0 call);
-   wcslcat (0 call); wcslcpy (0 call); wcsncmp (0 call); wcspbrk (0 call);
-   wcsrchr (0 call); wcsspn (0 call); wcsstr (0 call); wcstombs (0 call);
-   wctomb (0 call); wmemchr (0 call); wmemcmp (0 call); wmemmove (0 call);
-   write (0 call); 
+   srandom (0 call); stat (0 call); strcasestr (0 call); strchrnul (0 call);
+   strcoll (0 call); strcspn (0 call); strftime (0 call); strlcat (0 call);
+   strlcpy (0 call); strncasecmp (0 call); strpbrk (0 call); strsep (0 call);
+   strspn (0 call); strtod (0 call); strtof (0 call); strtoimax (0 call);
+   strtok (0 call); strtok_r (0 call); strtol (0 call); strtold (0 call);
+   strtoll (0 call); strtoul (0 call); strtoull (0 call); strxfrm (0 call);
+   sync (0 call); sysconf (0 call); syslog (0 call); system (0 call);
+   tcflush (0 call); tcgetattr (0 call); tcsetattr (0 call); time (0 call);
+   times (0 call); tmpfile (0 call); tmpnam (0 call); trunc (0 call);
+   truncf (0 call); truncl (0 call); ttyname (0 call); tzset (0 call);
+   umask (0 call); uname (0 call); ungetc (0 call); unlink (0 call);
+   usleep (0 call); utimes (0 call); vfprintf (0 call); vfscanf (0 call);
+   vprintf (0 call); vscanf (0 call); vsnprintf (0 call); vsprintf (0 call);
+   vsyslog (0 call); wait (0 call); waitpid (0 call); wcscasecmp (0 call);
+   wcschr (0 call); wcscmp (0 call); wcscspn (0 call); wcslcat (0 call);
+   wcslcpy (0 call); wcsncmp (0 call); wcspbrk (0 call); wcsrchr (0 call);
+   wcsspn (0 call); wcsstr (0 call); wcstombs (0 call); wctomb (0 call);
+   wmemchr (0 call); wmemcmp (0 call); wmemmove (0 call); write (0 call); 
   
   Undefined and unspecified functions (1)
   =======================================
@@ -188,18 +187,18 @@
   
   Global metrics
   ============== 
-  Sloc = 1145
-  Decision point = 215
+  Sloc = 1163
+  Decision point = 217
   Global variables = 86
-  If = 200
-  Loop = 43
+  If = 202
+  Loop = 45
   Goto = 99
-  Assignment = 466
-  Exit point = 84
-  Function = 507
+  Assignment = 475
+  Exit point = 86
+  Function = 508
   Function call = 98
-  Pointer dereferencing = 161
-  Cyclomatic complexity = 299
+  Pointer dereferencing = 167
+  Cyclomatic complexity = 303
 [kernel] :0: Warning: unnamed requires
 [kernel] share/libc/sys/socket.h:451: Warning: 
   clause with '\initialized' must contain name 'initialization'
diff --git a/tests/libc/oracle/fc_libc.1.res.oracle b/tests/libc/oracle/fc_libc.1.res.oracle
index d091867259e5fe0c5544af9c413708fb01cea5bc..b647d40caefdab3371fc969f9c085857e3964a42 100644
--- a/tests/libc/oracle/fc_libc.1.res.oracle
+++ b/tests/libc/oracle/fc_libc.1.res.oracle
@@ -4096,6 +4096,8 @@ void *memrchr(void const *s, int c, size_t n);
 
 void *memcpy(void * restrict dest, void const * restrict src, size_t n);
 
+void *mempcpy(void * restrict dest, void const * restrict src, size_t n);
+
 void *memmove(void *dest, void const *src, size_t n);
 
 void *memset(void *s, int c, size_t n);
@@ -4337,19 +4339,7 @@ char *strncpy(char *dest, char const *src, size_t n);
  */
 size_t strlcpy(char * restrict dest, char const * restrict src, size_t n);
 
-/*@ requires valid_string_src: valid_read_string(src);
-    requires room_string: \valid(dest + (0 .. strlen(src)));
-    requires
-      separation:
-        \separated(dest + (0 .. strlen(src)), src + (0 .. strlen(src)));
-    ensures equal_contents: strcmp(\old(dest), \old(src)) ≡ 0;
-    ensures points_to_end: \result ≡ \old(dest) + strlen(\old(dest));
-    assigns *(dest + (0 .. strlen{Old}(src))), \result;
-    assigns *(dest + (0 .. strlen{Old}(src)))
-      \from *(src + (0 .. strlen{Old}(src)));
-    assigns \result \from dest;
- */
-extern char *stpcpy(char * restrict dest, char const * restrict src);
+char *stpcpy(char *dest, char const *src);
 
 char *strcat(char *dest, char const *src);
 
@@ -5667,6 +5657,42 @@ void *memcpy(void * restrict dest, void const * restrict src, size_t n)
   return dest;
 }
 
+/*@ requires valid_dest: valid_or_empty(dest, n);
+    requires valid_src: valid_read_or_empty(src, n);
+    requires
+      separation:
+        \separated((char *)dest + (0 .. n - 1), (char *)src + (0 .. n - 1));
+    ensures
+      copied_contents:
+        memcmp{Post, Pre}((char *)\old(dest), (char *)\old(src), \old(n)) ≡
+        0;
+    ensures result_next_byte: \result ≡ \old(dest) + \old(n);
+    assigns *((char *)dest + (0 .. n - 1)), \result;
+    assigns *((char *)dest + (0 .. n - 1))
+      \from *((char *)src + (0 .. n - 1));
+    assigns \result \from dest, n;
+ */
+void *mempcpy(void * restrict dest, void const * restrict src, size_t n)
+{
+  void *__retres;
+  size_t i;
+  i = (unsigned int)0;
+  /*@ loop invariant no_eva: 0 ≤ i ≤ n;
+      loop invariant
+        no_eva:
+          ∀ ℤ k;
+            0 ≤ k < i ⇒ *((char *)dest + k) ≡ *((char *)src + k);
+      loop assigns i, *((char *)dest + (0 .. n - 1));
+      loop variant n - i;
+  */
+  while (i < n) {
+    *((char *)dest + i) = *((char *)src + i);
+    i += (size_t)1;
+  }
+  __retres = (void *)((char *)dest + i);
+  return __retres;
+}
+
 /*@ assigns \result;
     assigns \result \from (indirect: p), (indirect: q), (indirect: n);
     
@@ -6113,6 +6139,32 @@ char *strcpy(char *dest, char const *src)
   return dest;
 }
 
+/*@ requires valid_string_src: valid_read_string(src);
+    requires room_string: \valid(dest + (0 .. strlen(src)));
+    requires
+      separation:
+        \separated(dest + (0 .. strlen(src)), src + (0 .. strlen(src)));
+    ensures equal_contents: strcmp(\old(dest), \old(src)) ≡ 0;
+    ensures points_to_end: \result ≡ \old(dest) + strlen(\old(dest));
+    assigns *(dest + (0 .. strlen{Old}(src))), \result;
+    assigns *(dest + (0 .. strlen{Old}(src)))
+      \from *(src + (0 .. strlen{Old}(src)));
+    assigns \result \from dest;
+ */
+char *stpcpy(char *dest, char const *src)
+{
+  char *__retres;
+  size_t i;
+  i = (unsigned int)0;
+  while ((int)*(src + i) != 0) {
+    *(dest + i) = *(src + i);
+    i += (size_t)1;
+  }
+  *(dest + i) = (char)0;
+  __retres = dest + i;
+  return __retres;
+}
+
 /*@ requires valid_nstring_src: valid_read_nstring(src, n);
     requires room_nstring: \valid(dest + (0 .. n - 1));
     requires separation: \separated(dest + (0 .. n - 1), src + (0 .. n - 1));
diff --git a/tests/libc/oracle/netdb_c.res.oracle b/tests/libc/oracle/netdb_c.res.oracle
index dcce9e252a9bb2f80e23d8ed6ce71e674d87a838..75b421147917c7fdf6b9f9bcbd1001f867f21829 100644
--- a/tests/libc/oracle/netdb_c.res.oracle
+++ b/tests/libc/oracle/netdb_c.res.oracle
@@ -18,6 +18,7 @@
   \return(ttyname) == 0 (auto)
   \return(memchr) == 0 (auto)
   \return(memcpy) == 0 (auto)
+  \return(mempcpy) == 0 (auto)
   \return(memmove) == 0 (auto)
   \return(memset) == 0 (auto)
   \return(strchr) == 0 (auto)
@@ -57,7 +58,7 @@
 [eva] tests/libc/netdb_c.c:25: Call to builtin memset
 [eva] tests/libc/netdb_c.c:25: 
   function memset: precondition 'valid_s' got status valid.
-[eva] share/libc/string.h:121: 
+[eva] share/libc/string.h:134: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memset
 [eva] computing for function getaddrinfo <- main.
   Called from tests/libc/netdb_c.c:34.
@@ -136,7 +137,7 @@
   function strcpy: precondition 'room_string' got status valid.
 [eva] share/libc/netdb.c:74: 
   function strcpy: precondition 'separation' got status valid.
-[eva] share/libc/string.h:360: 
+[eva] share/libc/string.h:373: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function strcmp
 [eva] Done for function strcpy
 [eva] Recording results for getaddrinfo
@@ -263,7 +264,7 @@
   function strncpy: precondition 'room_nstring' got status valid.
 [eva] share/libc/netdb.c:149: 
   function strncpy: precondition 'separation' got status valid.
-[eva] share/libc/string.h:376: 
+[eva] share/libc/string.h:389: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function strcmp
 [eva] Done for function strncpy
 [eva] Recording results for gethostbyname
diff --git a/tests/libc/oracle/socket.0.res.oracle b/tests/libc/oracle/socket.0.res.oracle
index 02ea91c38a587f467ef5ed8466820b2ed78645ae..c0f9285b9913c93af17f9c46cecdd5f9e2b994d1 100644
--- a/tests/libc/oracle/socket.0.res.oracle
+++ b/tests/libc/oracle/socket.0.res.oracle
@@ -143,7 +143,7 @@
 [eva] using specification for function memset
 [eva] tests/libc/socket.c:103: 
   function memset: precondition 'valid_s' got status valid.
-[eva] share/libc/string.h:121: 
+[eva] share/libc/string.h:134: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memset
 [eva] Done for function memset
 [eva] computing for function bind <- test_server_echo <- main.
diff --git a/tests/libc/oracle/socket.1.res.oracle b/tests/libc/oracle/socket.1.res.oracle
index b20c456d6a35250afb73bcd9284f7990ba95e33f..a60c6913b0fb68fee18a85d1c2bc363f9fadb3a7 100644
--- a/tests/libc/oracle/socket.1.res.oracle
+++ b/tests/libc/oracle/socket.1.res.oracle
@@ -143,7 +143,7 @@
 [eva] using specification for function memset
 [eva] tests/libc/socket.c:103: 
   function memset: precondition 'valid_s' got status valid.
-[eva] share/libc/string.h:121: 
+[eva] share/libc/string.h:134: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memset
 [eva] Done for function memset
 [eva] computing for function bind <- test_server_echo <- main.
diff --git a/tests/libc/oracle/stdlib_c.2.res.oracle b/tests/libc/oracle/stdlib_c.2.res.oracle
index f7de7fafd0dfa347db4dc2d2b1a9b568c00e18a6..bdb44209b2a377bdcbbb6335c2e88d4a56aa814f 100644
--- a/tests/libc/oracle/stdlib_c.2.res.oracle
+++ b/tests/libc/oracle/stdlib_c.2.res.oracle
@@ -13,7 +13,7 @@
 [eva] using specification for function memset
 [eva] share/libc/stdlib.c:73: 
   function memset: precondition 'valid_s' got status valid.
-[eva] share/libc/string.h:121: 
+[eva] share/libc/string.h:134: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memset
 [eva] Done for function memset
 [eva] Recording results for calloc
diff --git a/tests/libc/oracle/stdlib_c_env.res.oracle b/tests/libc/oracle/stdlib_c_env.res.oracle
index ec542fd1b029ce11e98e446bc4c387f8cf332ce2..6d0f546fe124c9d274e0c5aa1ef81cd7597c45d9 100644
--- a/tests/libc/oracle/stdlib_c_env.res.oracle
+++ b/tests/libc/oracle/stdlib_c_env.res.oracle
@@ -9,7 +9,7 @@
 [eva] share/libc/stdlib.c:114: Call to builtin strchr
 [eva] share/libc/stdlib.c:114: 
   function strchr: precondition 'valid_string_s' got status valid.
-[eva] share/libc/string.h:168: 
+[eva] share/libc/string.h:181: 
   cannot evaluate ACSL term, unsupported logic var p
 [eva] share/libc/stdlib.c:115: 
   assertion 'string_contains_separator' got status valid.
@@ -107,7 +107,7 @@
   function strcpy: precondition 'room_string' got status valid.
 [eva] tests/libc/stdlib_c_env.c:15: 
   function strcpy: precondition 'separation' got status valid.
-[eva] share/libc/string.h:360: 
+[eva] share/libc/string.h:373: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function strcmp
 [eva] Done for function strcpy
 [eva] computing for function getenv <- main.
diff --git a/tests/libc/oracle/string_c.res.oracle b/tests/libc/oracle/string_c.res.oracle
index 092b636ecee8c5ce4cfc48a3e8dadade0e2b235b..13c1776dafcb5fd574746b90639a626049ca1ee1 100644
--- a/tests/libc/oracle/string_c.res.oracle
+++ b/tests/libc/oracle/string_c.res.oracle
@@ -5,7 +5,7 @@
 [eva:initial-state] Values of globals at initialization
   v ∈ [--..--]
 [eva] computing for function test_memcpy <- main.
-  Called from tests/libc/string_c.c:281.
+  Called from tests/libc/string_c.c:294.
 [eva] computing for function memcpy <- test_memcpy <- main.
   Called from tests/libc/string_c.c:10.
 [eva] tests/libc/string_c.c:10: 
@@ -74,7 +74,7 @@
 [eva] Recording results for test_memcpy
 [eva] Done for function test_memcpy
 [eva] computing for function test_memmove <- main.
-  Called from tests/libc/string_c.c:282.
+  Called from tests/libc/string_c.c:295.
 [eva] tests/libc/string_c.c:34: Frama_C_show_each_s0: {1}
 [eva] tests/libc/string_c.c:35: Frama_C_show_each_s0: {2}
 [eva] tests/libc/string_c.c:36: Frama_C_show_each_s0: {3}
@@ -90,16 +90,16 @@
 [eva] tests/libc/string_c.c:42: 
   function memmove: precondition 'valid_src' got status valid.
 [eva] computing for function memoverlap <- memmove <- test_memmove <- main.
-  Called from share/libc/string.c:77.
-[eva] share/libc/string.c:59: 
+  Called from share/libc/string.c:93.
+[eva] share/libc/string.c:75: 
   function memoverlap, behavior not_separated_gt: postcondition 'result_p_after_q' got status valid.
 [eva] Recording results for memoverlap
 [eva] Done for function memoverlap
-[eva] share/libc/string.h:111: 
+[eva] share/libc/string.h:124: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memcmp
-[eva:alarm] share/libc/string.h:111: Warning: 
+[eva:alarm] share/libc/string.h:124: Warning: 
   function memmove: postcondition 'copied_contents' got status unknown.
-[eva] share/libc/string.h:112: 
+[eva] share/libc/string.h:125: 
   function memmove: postcondition 'result_ptr' got status valid.
 [eva] Recording results for memmove
 [eva] Done for function memmove
@@ -112,8 +112,8 @@
 [eva] tests/libc/string_c.c:49: 
   function memmove: precondition 'valid_src' got status valid.
 [eva] computing for function memoverlap <- memmove <- test_memmove <- main.
-  Called from share/libc/string.c:77.
-[eva] share/libc/string.c:55: 
+  Called from share/libc/string.c:93.
+[eva] share/libc/string.c:71: 
   function memoverlap, behavior not_separated_lt: postcondition 'result_p_before_q' got status valid.
 [eva] Recording results for memoverlap
 [eva] Done for function memoverlap
@@ -127,7 +127,7 @@
 [eva] tests/libc/string_c.c:52: 
   function memmove: precondition 'valid_src' got status valid.
 [eva] computing for function memoverlap <- memmove <- test_memmove <- main.
-  Called from share/libc/string.c:77.
+  Called from share/libc/string.c:93.
 [eva] Recording results for memoverlap
 [eva] Done for function memoverlap
 [eva] Recording results for memmove
@@ -140,8 +140,8 @@
 [eva] tests/libc/string_c.c:56: 
   function memmove: precondition 'valid_src' got status valid.
 [eva] computing for function memoverlap <- memmove <- test_memmove <- main.
-  Called from share/libc/string.c:77.
-[eva] share/libc/string.c:51: 
+  Called from share/libc/string.c:93.
+[eva] share/libc/string.c:67: 
   function memoverlap, behavior separated: postcondition 'result_no_overlap' got status valid.
 [eva] Recording results for memoverlap
 [eva] Done for function memoverlap
@@ -151,12 +151,12 @@
 [eva] Recording results for test_memmove
 [eva] Done for function test_memmove
 [eva] computing for function test_strlen <- main.
-  Called from tests/libc/string_c.c:283.
+  Called from tests/libc/string_c.c:296.
 [eva] computing for function strlen <- test_strlen <- main.
   Called from tests/libc/string_c.c:64.
 [eva] tests/libc/string_c.c:64: 
   function strlen: precondition 'valid_string_s' got status valid.
-[eva] share/libc/string.h:130: 
+[eva] share/libc/string.h:143: 
   function strlen: postcondition 'acsl_c_equiv' got status valid.
 [eva] Recording results for strlen
 [eva] Done for function strlen
@@ -178,12 +178,12 @@
 [eva] Recording results for test_strlen
 [eva] Done for function test_strlen
 [eva] computing for function test_strnlen <- main.
-  Called from tests/libc/string_c.c:284.
+  Called from tests/libc/string_c.c:297.
 [eva] computing for function strnlen <- test_strnlen <- main.
   Called from tests/libc/string_c.c:75.
 [eva] tests/libc/string_c.c:75: 
   function strnlen: precondition 'valid_string_s' got status valid.
-[eva] share/libc/string.h:136: 
+[eva] share/libc/string.h:149: 
   function strnlen: postcondition 'result_bounded' got status valid.
 [eva] Recording results for strnlen
 [eva] Done for function strnlen
@@ -226,16 +226,16 @@
 [eva] Recording results for test_strnlen
 [eva] Done for function test_strnlen
 [eva] computing for function test_memset <- main.
-  Called from tests/libc/string_c.c:285.
+  Called from tests/libc/string_c.c:298.
 [eva] computing for function memset <- test_memset <- main.
   Called from tests/libc/string_c.c:92.
 [eva] tests/libc/string_c.c:92: 
   function memset: precondition 'valid_s' got status valid.
-[eva] share/libc/string.h:121: 
+[eva] share/libc/string.h:134: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memset
-[eva:alarm] share/libc/string.h:121: Warning: 
+[eva:alarm] share/libc/string.h:134: Warning: 
   function memset: postcondition 'acsl_c_equiv' got status unknown.
-[eva] share/libc/string.h:122: 
+[eva] share/libc/string.h:135: 
   function memset: postcondition 'result_ptr' got status valid.
 [eva] Recording results for memset
 [eva] Done for function memset
@@ -252,16 +252,16 @@
 [eva] Recording results for test_memset
 [eva] Done for function test_memset
 [eva] computing for function test_strcmp <- main.
-  Called from tests/libc/string_c.c:286.
+  Called from tests/libc/string_c.c:299.
 [eva] computing for function strcmp <- test_strcmp <- main.
   Called from tests/libc/string_c.c:104.
 [eva] tests/libc/string_c.c:104: 
   function strcmp: precondition 'valid_string_s1' got status valid.
 [eva] tests/libc/string_c.c:104: 
   function strcmp: precondition 'valid_string_s2' got status valid.
-[eva] share/libc/string.h:143: 
+[eva] share/libc/string.h:156: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function strcmp
-[eva:alarm] share/libc/string.h:143: Warning: 
+[eva:alarm] share/libc/string.h:156: Warning: 
   function strcmp: postcondition 'acsl_c_equiv' got status unknown.
 [eva] Recording results for strcmp
 [eva] Done for function strcmp
@@ -323,16 +323,16 @@
 [eva] Recording results for test_strcmp
 [eva] Done for function test_strcmp
 [eva] computing for function test_strncmp <- main.
-  Called from tests/libc/string_c.c:287.
+  Called from tests/libc/string_c.c:300.
 [eva] computing for function strncmp <- test_strncmp <- main.
   Called from tests/libc/string_c.c:167.
 [eva] tests/libc/string_c.c:167: 
   function strncmp: precondition 'valid_string_s1' got status valid.
 [eva] tests/libc/string_c.c:167: 
   function strncmp: precondition 'valid_string_s2' got status valid.
-[eva] share/libc/string.h:150: 
+[eva] share/libc/string.h:163: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function strncmp
-[eva:alarm] share/libc/string.h:150: Warning: 
+[eva:alarm] share/libc/string.h:163: Warning: 
   function strncmp: postcondition 'acsl_c_equiv' got status unknown.
 [eva] Recording results for strncmp
 [eva] Done for function strncmp
@@ -403,7 +403,7 @@
 [eva] Recording results for test_strncmp
 [eva] Done for function test_strncmp
 [eva] computing for function test_memcmp <- main.
-  Called from tests/libc/string_c.c:288.
+  Called from tests/libc/string_c.c:301.
 [eva] computing for function memcmp <- test_memcmp <- main.
   Called from tests/libc/string_c.c:188.
 [eva] tests/libc/string_c.c:188: 
@@ -479,7 +479,7 @@
 [eva] Recording results for test_memcmp
 [eva] Done for function test_memcmp
 [eva] computing for function test_strcat <- main.
-  Called from tests/libc/string_c.c:289.
+  Called from tests/libc/string_c.c:302.
 [eva] computing for function strcat <- test_strcat <- main.
   Called from tests/libc/string_c.c:124.
 [eva] tests/libc/string_c.c:124: 
@@ -489,18 +489,18 @@
 [eva] tests/libc/string_c.c:124: 
   function strcat: precondition 'room_string' got status valid.
 [eva] computing for function strlen <- strcat <- test_strcat <- main.
-  Called from share/libc/string.c:182.
-[eva] share/libc/string.c:182: 
+  Called from share/libc/string.c:198.
+[eva] share/libc/string.c:198: 
   function strlen: precondition 'valid_string_s' got status valid.
 [eva] Recording results for strlen
 [eva] Done for function strlen
-[eva] share/libc/string.h:416: 
+[eva] share/libc/string.h:429: 
   function strcat: postcondition 'sum_of_lengths' got status valid.
-[eva] share/libc/string.h:419: 
+[eva] share/libc/string.h:432: 
   function strcat: postcondition 'initialization,dest' got status valid.
-[eva] share/libc/string.h:420: 
+[eva] share/libc/string.h:433: 
   function strcat: postcondition 'dest_null_terminated' got status valid.
-[eva] share/libc/string.h:421: 
+[eva] share/libc/string.h:434: 
   function strcat: postcondition 'result_ptr' got status valid.
 [eva] Recording results for strcat
 [eva] Done for function strcat
@@ -515,7 +515,7 @@
 [eva] tests/libc/string_c.c:132: 
   function strcat: precondition 'room_string' got status valid.
 [eva] computing for function strlen <- strcat <- test_strcat <- main.
-  Called from share/libc/string.c:182.
+  Called from share/libc/string.c:198.
 [eva] Recording results for strlen
 [eva] Done for function strlen
 [eva] Recording results for strcat
@@ -530,7 +530,7 @@
 [eva] tests/libc/string_c.c:134: 
   function strcat: precondition 'room_string' got status valid.
 [eva] computing for function strlen <- strcat <- test_strcat <- main.
-  Called from share/libc/string.c:182.
+  Called from share/libc/string.c:198.
 [eva] Recording results for strlen
 [eva] Done for function strlen
 [eva] Recording results for strcat
@@ -543,14 +543,14 @@
   function strcat: precondition 'valid_string_dest' got status valid.
 [eva] tests/libc/string_c.c:135: 
   function strcat: precondition 'room_string' got status valid.
-[eva] share/libc/string.c:182: Reusing old results for call to strlen
+[eva] share/libc/string.c:198: Reusing old results for call to strlen
 [eva] Recording results for strcat
 [eva] Done for function strcat
 [eva] tests/libc/string_c.c:136: assertion got status valid.
 [eva] Recording results for test_strcat
 [eva] Done for function test_strcat
 [eva] computing for function test_strcpy <- main.
-  Called from tests/libc/string_c.c:291.
+  Called from tests/libc/string_c.c:304.
 [eva] computing for function strcpy <- test_strcpy <- main.
   Called from tests/libc/string_c.c:142.
 [eva] tests/libc/string_c.c:142: 
@@ -559,11 +559,11 @@
   function strcpy: precondition 'room_string' got status valid.
 [eva] tests/libc/string_c.c:142: 
   function strcpy: precondition 'separation' got status valid.
-[eva] share/libc/string.h:360: 
+[eva] share/libc/string.h:373: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function strcmp
-[eva:alarm] share/libc/string.h:360: Warning: 
+[eva:alarm] share/libc/string.h:373: Warning: 
   function strcpy: postcondition 'equal_contents' got status unknown.
-[eva] share/libc/string.h:361: 
+[eva] share/libc/string.h:374: 
   function strcpy: postcondition 'result_ptr' got status valid.
 [eva] Recording results for strcpy
 [eva] Done for function strcpy
@@ -594,7 +594,7 @@
 [eva] Recording results for test_strcpy
 [eva] Done for function test_strcpy
 [eva] computing for function test_strncpy <- main.
-  Called from tests/libc/string_c.c:292.
+  Called from tests/libc/string_c.c:305.
 [eva] computing for function strncpy <- test_strncpy <- main.
   Called from tests/libc/string_c.c:154.
 [eva] tests/libc/string_c.c:154: 
@@ -603,13 +603,13 @@
   function strncpy: precondition 'room_nstring' got status valid.
 [eva] tests/libc/string_c.c:154: 
   function strncpy: precondition 'separation' got status valid.
-[eva] share/libc/string.h:372: 
+[eva] share/libc/string.h:385: 
   function strncpy: postcondition 'result_ptr' got status valid.
-[eva] share/libc/string.h:373: 
+[eva] share/libc/string.h:386: 
   function strncpy: postcondition 'initialization' got status valid.
-[eva] share/libc/string.h:376: 
+[eva] share/libc/string.h:389: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function strcmp
-[eva:alarm] share/libc/string.h:376: Warning: 
+[eva:alarm] share/libc/string.h:389: Warning: 
   function strncpy, behavior complete: postcondition 'equal_after_copy' got status unknown.
 [eva] Recording results for strncpy
 [eva] Done for function strncpy
@@ -623,9 +623,9 @@
   function strncpy: precondition 'room_nstring' got status valid.
 [eva] tests/libc/string_c.c:157: 
   function strncpy: precondition 'separation' got status valid.
-[eva] share/libc/string.h:379: 
+[eva] share/libc/string.h:392: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memcmp
-[eva:alarm] share/libc/string.h:379: Warning: 
+[eva:alarm] share/libc/string.h:392: Warning: 
   function strncpy, behavior partial: postcondition 'equal_prefix' got status unknown.
 [eva] Recording results for strncpy
 [eva] Done for function strncpy
@@ -655,24 +655,24 @@
 [eva] Recording results for test_strncpy
 [eva] Done for function test_strncpy
 [eva] computing for function test_strchr <- main.
-  Called from tests/libc/string_c.c:293.
+  Called from tests/libc/string_c.c:306.
 [eva] computing for function strchr <- test_strchr <- main.
   Called from tests/libc/string_c.c:201.
 [eva] tests/libc/string_c.c:201: 
   function strchr: precondition 'valid_string_s' got status valid.
-[eva] share/libc/string.h:164: 
+[eva] share/libc/string.h:177: 
   function strchr, behavior found: postcondition 'result_char' got status valid.
-[eva] share/libc/string.h:165: 
+[eva] share/libc/string.h:178: 
   function strchr, behavior found: postcondition 'result_same_base' got status valid.
-[eva] share/libc/string.h:166: 
+[eva] share/libc/string.h:179: 
   function strchr, behavior found: postcondition 'result_in_length' got status valid.
-[eva] share/libc/string.h:167: 
+[eva] share/libc/string.h:180: 
   function strchr, behavior found: postcondition 'result_valid_string' got status valid.
-[eva] share/libc/string.h:168: 
+[eva] share/libc/string.h:181: 
   cannot evaluate ACSL term, unsupported logic var p
-[eva:alarm] share/libc/string.h:168: Warning: 
+[eva:alarm] share/libc/string.h:181: Warning: 
   function strchr, behavior found: postcondition 'result_first_occur' got status unknown.
-[eva] share/libc/string.h:174: 
+[eva] share/libc/string.h:187: 
   function strchr, behavior default: postcondition 'result_null_or_same_base' got status valid.
 [eva] Recording results for strchr
 [eva] Done for function strchr
@@ -681,7 +681,7 @@
   Called from tests/libc/string_c.c:203.
 [eva] tests/libc/string_c.c:203: 
   function strchr: precondition 'valid_string_s' got status valid.
-[eva] share/libc/string.h:171: 
+[eva] share/libc/string.h:184: 
   function strchr, behavior not_found: postcondition 'result_null' got status valid.
 [eva] Recording results for strchr
 [eva] Done for function strchr
@@ -703,24 +703,24 @@
 [eva] Recording results for test_strchr
 [eva] Done for function test_strchr
 [eva] computing for function test_strrchr <- main.
-  Called from tests/libc/string_c.c:294.
+  Called from tests/libc/string_c.c:307.
 [eva] computing for function strrchr <- test_strrchr <- main.
   Called from tests/libc/string_c.c:214.
 [eva] tests/libc/string_c.c:214: 
   function strrchr: precondition 'valid_string_s' got status valid.
 [eva] computing for function strlen <- strrchr <- test_strrchr <- main.
-  Called from share/libc/string.c:237.
-[eva] share/libc/string.c:237: 
+  Called from share/libc/string.c:263.
+[eva] share/libc/string.c:263: 
   function strlen: precondition 'valid_string_s' got status valid.
 [eva] Recording results for strlen
 [eva] Done for function strlen
-[eva] share/libc/string.h:188: 
+[eva] share/libc/string.h:201: 
   function strrchr, behavior found: postcondition 'result_char' got status valid.
-[eva] share/libc/string.h:189: 
+[eva] share/libc/string.h:202: 
   function strrchr, behavior found: postcondition 'result_same_base' got status valid.
-[eva] share/libc/string.h:190: 
+[eva] share/libc/string.h:203: 
   function strrchr, behavior found: postcondition 'result_valid_string' got status valid.
-[eva] share/libc/string.h:196: 
+[eva] share/libc/string.h:209: 
   function strrchr, behavior default: postcondition 'result_null_or_same_base' got status valid.
 [eva] Recording results for strrchr
 [eva] Done for function strrchr
@@ -729,8 +729,8 @@
   Called from tests/libc/string_c.c:216.
 [eva] tests/libc/string_c.c:216: 
   function strrchr: precondition 'valid_string_s' got status valid.
-[eva] share/libc/string.c:237: Reusing old results for call to strlen
-[eva] share/libc/string.h:193: 
+[eva] share/libc/string.c:263: Reusing old results for call to strlen
+[eva] share/libc/string.h:206: 
   function strrchr, behavior not_found: postcondition 'result_null' got status valid.
 [eva] Recording results for strrchr
 [eva] Done for function strrchr
@@ -739,7 +739,7 @@
   Called from tests/libc/string_c.c:218.
 [eva] tests/libc/string_c.c:218: 
   function strrchr: precondition 'valid_string_s' got status valid.
-[eva] share/libc/string.c:237: Reusing old results for call to strlen
+[eva] share/libc/string.c:263: Reusing old results for call to strlen
 [eva] Recording results for strrchr
 [eva] Done for function strrchr
 [eva] tests/libc/string_c.c:219: assertion got status valid.
@@ -747,14 +747,14 @@
   Called from tests/libc/string_c.c:220.
 [eva] tests/libc/string_c.c:220: 
   function strrchr: precondition 'valid_string_s' got status valid.
-[eva] share/libc/string.c:237: Reusing old results for call to strlen
+[eva] share/libc/string.c:263: Reusing old results for call to strlen
 [eva] Recording results for strrchr
 [eva] Done for function strrchr
 [eva] tests/libc/string_c.c:221: assertion got status valid.
 [eva] Recording results for test_strrchr
 [eva] Done for function test_strrchr
 [eva] computing for function test_memchr <- main.
-  Called from tests/libc/string_c.c:295.
+  Called from tests/libc/string_c.c:308.
 [eva] computing for function memchr <- test_memchr <- main.
   Called from tests/libc/string_c.c:227.
 [eva] tests/libc/string_c.c:227: 
@@ -844,7 +844,7 @@
 [eva] Recording results for test_memchr
 [eva] Done for function test_memchr
 [eva] computing for function test_memrchr <- main.
-  Called from tests/libc/string_c.c:296.
+  Called from tests/libc/string_c.c:309.
 [eva] computing for function memrchr <- test_memrchr <- main.
   Called from tests/libc/string_c.c:244.
 [eva] Recording results for memrchr
@@ -878,16 +878,16 @@
 [eva] Recording results for test_memrchr
 [eva] Done for function test_memrchr
 [eva] computing for function test_strstr <- main.
-  Called from tests/libc/string_c.c:297.
+  Called from tests/libc/string_c.c:310.
 [eva] computing for function strstr <- test_strstr <- main.
   Called from tests/libc/string_c.c:261.
 [eva] tests/libc/string_c.c:261: 
   function strstr: precondition 'valid_string_haystack' got status valid.
 [eva] tests/libc/string_c.c:261: 
   function strstr: precondition 'valid_string_needle' got status valid.
-[eva] share/libc/string.h:230: 
+[eva] share/libc/string.h:243: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memcmp
-[eva:alarm] share/libc/string.h:228: Warning: 
+[eva:alarm] share/libc/string.h:241: Warning: 
   function strstr: postcondition 'result_null_or_in_haystack' got status unknown.
 [eva] Recording results for strstr
 [eva] Done for function strstr
@@ -907,7 +907,7 @@
   function strstr: precondition 'valid_string_haystack' got status valid.
 [eva] tests/libc/string_c.c:265: 
   function strstr: precondition 'valid_string_needle' got status valid.
-[eva] share/libc/string.h:228: 
+[eva] share/libc/string.h:241: 
   function strstr: postcondition 'result_null_or_in_haystack' got status valid.
 [eva] Recording results for strstr
 [eva] Done for function strstr
@@ -959,6 +959,51 @@
 [eva] tests/libc/string_c.c:276: assertion got status valid.
 [eva] Recording results for test_strstr
 [eva] Done for function test_strstr
+[eva] computing for function test_mempcpy <- main.
+  Called from tests/libc/string_c.c:314.
+[eva] computing for function mempcpy <- test_mempcpy <- main.
+  Called from tests/libc/string_c.c:282.
+[eva] tests/libc/string_c.c:282: 
+  function mempcpy: precondition 'valid_dest' got status valid.
+[eva] tests/libc/string_c.c:282: 
+  function mempcpy: precondition 'valid_src' got status valid.
+[eva] tests/libc/string_c.c:282: 
+  function mempcpy: precondition 'separation' got status valid.
+[eva] share/libc/string.h:114: 
+  cannot evaluate ACSL term, unsupported ACSL construct: logic function memcmp
+[eva:alarm] share/libc/string.h:114: Warning: 
+  function mempcpy: postcondition 'copied_contents' got status unknown.
+[kernel] share/libc/string.c:57: Warning: using size of 'void'
+[eva:alarm] share/libc/string.h:115: Warning: 
+  function mempcpy: postcondition 'result_next_byte' got status unknown.
+[eva] Recording results for mempcpy
+[eva] Done for function mempcpy
+[eva] tests/libc/string_c.c:283: assertion got status valid.
+[eva] tests/libc/string_c.c:284: assertion got status valid.
+[eva] computing for function mempcpy <- test_mempcpy <- main.
+  Called from tests/libc/string_c.c:286.
+[eva] tests/libc/string_c.c:286: 
+  function mempcpy: precondition 'valid_dest' got status valid.
+[eva] tests/libc/string_c.c:286: 
+  function mempcpy: precondition 'valid_src' got status valid.
+[eva] tests/libc/string_c.c:286: 
+  function mempcpy: precondition 'separation' got status valid.
+[eva] Recording results for mempcpy
+[eva] Done for function mempcpy
+[eva] tests/libc/string_c.c:287: assertion got status valid.
+[eva] computing for function mempcpy <- test_mempcpy <- main.
+  Called from tests/libc/string_c.c:288.
+[eva] tests/libc/string_c.c:288: 
+  function mempcpy: precondition 'valid_dest' got status valid.
+[eva] tests/libc/string_c.c:288: 
+  function mempcpy: precondition 'valid_src' got status valid.
+[eva] tests/libc/string_c.c:288: 
+  function mempcpy: precondition 'separation' got status valid.
+[eva] Recording results for mempcpy
+[eva] Done for function mempcpy
+[eva] tests/libc/string_c.c:289: assertion got status valid.
+[eva] Recording results for test_mempcpy
+[eva] Done for function test_mempcpy
 [eva] Recording results for main
 [eva] done for function main
 [eva] ====== VALUES COMPUTED ======
@@ -993,6 +1038,15 @@
      [4] ∈ {3; 4; 5}
      [5] ∈ {4; 5; 6}
   __retres ∈ {{ (void *)&buf{[0], [2], [3]} }}
+[eva:final-states] Values at end of function mempcpy:
+  i ∈ {0; 3; 6}
+  dest[0] ∈ {97; 104}
+      [1] ∈ {0; 101}
+      [2] ∈ {98; 108}
+      [3] ∈ {108}
+      [4] ∈ {111}
+      [5] ∈ {0}
+  __retres ∈ {{ (void *)&dest{[0], [3], [6]} }}
 [eva:final-states] Values at end of function memrchr:
   ch ∈ {1; 2; 5}
   ss ∈ {{ (unsigned char const *)&s }}
@@ -1093,6 +1147,23 @@
   s ∈ {{ &buf[0] }}
   d ∈ {{ &buf[3] }}
   p ∈ {{ &buf[2] }}
+[eva:final-states] Values at end of function test_mempcpy:
+  dest[0] ∈ {97}
+      [1] ∈ {0}
+      [2] ∈ {98}
+      [3] ∈ {108}
+      [4] ∈ {111}
+      [5] ∈ {0}
+  src[0] ∈ {104}
+     [1] ∈ {101}
+     [2..3] ∈ {108}
+     [4] ∈ {111}
+     [5] ∈ {0}
+  p ∈ {{ &dest[0] }}
+  src2[0] ∈ {97}
+      [1] ∈ {0}
+      [2] ∈ {98}
+      [3..4] ∈ {0}
 [eva:final-states] Values at end of function test_memrchr:
   s[0] ∈ {1}
    [1] ∈ {2}
diff --git a/tests/libc/oracle/string_c_generic.res.oracle b/tests/libc/oracle/string_c_generic.res.oracle
index a56dbf77d66ed1dffd06b58ce3ce2ca5189508b9..e55a81a354dfc0cf30fc4163f11554c48428458b 100644
--- a/tests/libc/oracle/string_c_generic.res.oracle
+++ b/tests/libc/oracle/string_c_generic.res.oracle
@@ -12,11 +12,11 @@
   function strcpy: precondition 'room_string' got status valid.
 [eva] tests/libc/string_c_generic.c:56: 
   function strcpy: precondition 'separation' got status valid.
-[eva] share/libc/string.h:360: 
+[eva] share/libc/string.h:373: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function strcmp
-[eva:alarm] share/libc/string.h:360: Warning: 
+[eva:alarm] share/libc/string.h:373: Warning: 
   function strcpy: postcondition 'equal_contents' got status unknown.
-[eva] share/libc/string.h:361: 
+[eva] share/libc/string.h:374: 
   function strcpy: postcondition 'result_ptr' got status valid.
 [eva] Recording results for strcpy
 [eva] Done for function strcpy
@@ -26,9 +26,9 @@
   function strcmp: precondition 'valid_string_s1' got status valid.
 [eva] tests/libc/string_c_generic.c:57: 
   function strcmp: precondition 'valid_string_s2' got status valid.
-[eva] share/libc/string.h:143: 
+[eva] share/libc/string.h:156: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function strcmp
-[eva:alarm] share/libc/string.h:143: Warning: 
+[eva:alarm] share/libc/string.h:156: Warning: 
   function strcmp: postcondition 'acsl_c_equiv' got status unknown.
 [eva] Recording results for strcmp
 [eva] Done for function strcmp
@@ -144,11 +144,11 @@
   Called from tests/libc/string_c_generic.c:72.
 [eva] tests/libc/string_c_generic.c:72: 
   function memset: precondition 'valid_s' got status valid.
-[eva] share/libc/string.h:121: 
+[eva] share/libc/string.h:134: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memset
-[eva:alarm] share/libc/string.h:121: Warning: 
+[eva:alarm] share/libc/string.h:134: Warning: 
   function memset: postcondition 'acsl_c_equiv' got status unknown.
-[eva] share/libc/string.h:122: 
+[eva] share/libc/string.h:135: 
   function memset: postcondition 'result_ptr' got status valid.
 [eva] Recording results for memset
 [eva] Done for function memset
@@ -160,14 +160,14 @@
   function strncpy: precondition 'room_nstring' got status valid.
 [eva] tests/libc/string_c_generic.c:73: 
   function strncpy: precondition 'separation' got status valid.
-[eva] share/libc/string.c:220: starting to merge loop iterations
-[eva] share/libc/string.h:372: 
+[eva] share/libc/string.c:246: starting to merge loop iterations
+[eva] share/libc/string.h:385: 
   function strncpy: postcondition 'result_ptr' got status valid.
-[eva] share/libc/string.h:373: 
+[eva] share/libc/string.h:386: 
   function strncpy: postcondition 'initialization' got status valid.
-[eva] share/libc/string.h:376: 
+[eva] share/libc/string.h:389: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function strcmp
-[eva:alarm] share/libc/string.h:376: Warning: 
+[eva:alarm] share/libc/string.h:389: Warning: 
   function strncpy, behavior complete: postcondition 'equal_after_copy' got status unknown.
 [eva] Recording results for strncpy
 [eva] Done for function strncpy
@@ -199,9 +199,9 @@
   function strncpy: precondition 'room_nstring' got status valid.
 [eva] tests/libc/string_c_generic.c:78: 
   function strncpy: precondition 'separation' got status valid.
-[eva] share/libc/string.h:379: 
+[eva] share/libc/string.h:392: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memcmp
-[eva:alarm] share/libc/string.h:379: Warning: 
+[eva:alarm] share/libc/string.h:392: Warning: 
   function strncpy, behavior partial: postcondition 'equal_prefix' got status unknown.
 [eva] Recording results for strncpy
 [eva] Done for function strncpy
@@ -211,10 +211,10 @@
   function strncmp: precondition 'valid_string_s1' got status valid.
 [eva] tests/libc/string_c_generic.c:82: 
   function strncmp: precondition 'valid_string_s2' got status valid.
-[eva] share/libc/string.c:138: starting to merge loop iterations
-[eva] share/libc/string.h:150: 
+[eva] share/libc/string.c:154: starting to merge loop iterations
+[eva] share/libc/string.h:163: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function strncmp
-[eva:alarm] share/libc/string.h:150: Warning: 
+[eva:alarm] share/libc/string.h:163: Warning: 
   function strncmp: postcondition 'acsl_c_equiv' got status unknown.
 [eva] Recording results for strncmp
 [eva] Done for function strncmp
@@ -245,16 +245,16 @@
 [eva] tests/libc/string_c_generic.c:86: 
   function strncat, behavior partial: precondition 'room_string' got status valid.
 [eva] computing for function strlen <- strncat <- main.
-  Called from share/libc/string.c:193.
-[eva] share/libc/string.c:193: 
+  Called from share/libc/string.c:209.
+[eva] share/libc/string.c:209: 
   function strlen: precondition 'valid_string_s' got status valid.
-[eva] share/libc/string.h:130: 
+[eva] share/libc/string.h:143: 
   function strlen: postcondition 'acsl_c_equiv' got status valid.
 [eva] Recording results for strlen
 [eva] Done for function strlen
-[eva] share/libc/string.h:430: 
+[eva] share/libc/string.h:443: 
   function strncat: postcondition 'result_ptr' got status valid.
-[eva] share/libc/string.h:445: 
+[eva] share/libc/string.h:458: 
   function strncat, behavior partial: postcondition 'sum_of_bounded_lengths' got status valid.
 [eva] Recording results for strncat
 [eva] Done for function strncat
@@ -280,19 +280,19 @@
   Called from tests/libc/string_c_generic.c:91.
 [eva] tests/libc/string_c_generic.c:91: 
   function strchr: precondition 'valid_string_s' got status valid.
-[eva] share/libc/string.h:164: 
+[eva] share/libc/string.h:177: 
   function strchr, behavior found: postcondition 'result_char' got status valid.
-[eva] share/libc/string.h:165: 
+[eva] share/libc/string.h:178: 
   function strchr, behavior found: postcondition 'result_same_base' got status valid.
-[eva] share/libc/string.h:166: 
+[eva] share/libc/string.h:179: 
   function strchr, behavior found: postcondition 'result_in_length' got status valid.
-[eva] share/libc/string.h:167: 
+[eva] share/libc/string.h:180: 
   function strchr, behavior found: postcondition 'result_valid_string' got status valid.
-[eva] share/libc/string.h:168: 
+[eva] share/libc/string.h:181: 
   cannot evaluate ACSL term, unsupported logic var p
-[eva:alarm] share/libc/string.h:168: Warning: 
+[eva:alarm] share/libc/string.h:181: Warning: 
   function strchr, behavior found: postcondition 'result_first_occur' got status unknown.
-[eva] share/libc/string.h:174: 
+[eva] share/libc/string.h:187: 
   function strchr, behavior default: postcondition 'result_null_or_same_base' got status valid.
 [eva] Recording results for strchr
 [eva] Done for function strchr
@@ -300,7 +300,7 @@
   Called from tests/libc/string_c_generic.c:92.
 [eva] tests/libc/string_c_generic.c:92: 
   function strchr: precondition 'valid_string_s' got status valid.
-[eva] share/libc/string.h:171: 
+[eva] share/libc/string.h:184: 
   function strchr, behavior not_found: postcondition 'result_null' got status valid.
 [eva] Recording results for strchr
 [eva] Done for function strchr
@@ -309,18 +309,18 @@
 [eva] tests/libc/string_c_generic.c:93: 
   function strrchr: precondition 'valid_string_s' got status valid.
 [eva] computing for function strlen <- strrchr <- main.
-  Called from share/libc/string.c:237.
-[eva] share/libc/string.c:237: 
+  Called from share/libc/string.c:263.
+[eva] share/libc/string.c:263: 
   function strlen: precondition 'valid_string_s' got status valid.
 [eva] Recording results for strlen
 [eva] Done for function strlen
-[eva] share/libc/string.h:188: 
+[eva] share/libc/string.h:201: 
   function strrchr, behavior found: postcondition 'result_char' got status valid.
-[eva] share/libc/string.h:189: 
+[eva] share/libc/string.h:202: 
   function strrchr, behavior found: postcondition 'result_same_base' got status valid.
-[eva] share/libc/string.h:190: 
+[eva] share/libc/string.h:203: 
   function strrchr, behavior found: postcondition 'result_valid_string' got status valid.
-[eva] share/libc/string.h:196: 
+[eva] share/libc/string.h:209: 
   function strrchr, behavior default: postcondition 'result_null_or_same_base' got status valid.
 [eva] Recording results for strrchr
 [eva] Done for function strrchr
@@ -328,9 +328,9 @@
   Called from tests/libc/string_c_generic.c:94.
 [eva] tests/libc/string_c_generic.c:94: 
   function strrchr: precondition 'valid_string_s' got status valid.
-[eva] share/libc/string.c:237: Reusing old results for call to strlen
-[eva] share/libc/string.c:237: starting to merge loop iterations
-[eva] share/libc/string.h:193: 
+[eva] share/libc/string.c:263: Reusing old results for call to strlen
+[eva] share/libc/string.c:263: starting to merge loop iterations
+[eva] share/libc/string.h:206: 
   function strrchr, behavior not_found: postcondition 'result_null' got status valid.
 [eva] Recording results for strrchr
 [eva] Done for function strrchr
diff --git a/tests/libc/oracle/string_c_strchr.res.oracle b/tests/libc/oracle/string_c_strchr.res.oracle
index 58c1b64452539bdb7fe3553b2bb1a29b2ceebe44..9d01e19ffa905b2e14c72c624ccbfb2d08975b85 100644
--- a/tests/libc/oracle/string_c_strchr.res.oracle
+++ b/tests/libc/oracle/string_c_strchr.res.oracle
@@ -12,9 +12,9 @@
   Called from tests/libc/string_c_strchr.c:62.
 [eva] tests/libc/string_c_strchr.c:62: 
   function strchr: precondition 'valid_string_s' got status valid.
-[eva] share/libc/string.h:171: 
+[eva] share/libc/string.h:184: 
   function strchr, behavior not_found: postcondition 'result_null' got status valid.
-[eva] share/libc/string.h:174: 
+[eva] share/libc/string.h:187: 
   function strchr, behavior default: postcondition 'result_null_or_same_base' got status valid.
 [eva] Recording results for strchr
 [eva] Done for function strchr
@@ -46,7 +46,7 @@
   Called from tests/libc/string_c_strchr.c:67.
 [eva] tests/libc/string_c_strchr.c:67: 
   function strchr: precondition 'valid_string_s' got status valid.
-[eva] share/libc/string.c:229: Trace partitioning superposing up to 100 states
+[eva] share/libc/string.c:255: Trace partitioning superposing up to 100 states
 [eva] Recording results for strchr
 [eva] Done for function strchr
 [eva] computing for function strchr <- main.
@@ -59,17 +59,17 @@
   Called from tests/libc/string_c_strchr.c:70.
 [eva] tests/libc/string_c_strchr.c:70: 
   function strchr: precondition 'valid_string_s' got status valid.
-[eva] share/libc/string.h:164: 
+[eva] share/libc/string.h:177: 
   function strchr, behavior found: postcondition 'result_char' got status valid.
-[eva] share/libc/string.h:165: 
+[eva] share/libc/string.h:178: 
   function strchr, behavior found: postcondition 'result_same_base' got status valid.
-[eva] share/libc/string.h:166: 
+[eva] share/libc/string.h:179: 
   function strchr, behavior found: postcondition 'result_in_length' got status valid.
-[eva] share/libc/string.h:167: 
+[eva] share/libc/string.h:180: 
   function strchr, behavior found: postcondition 'result_valid_string' got status valid.
-[eva] share/libc/string.h:168: 
+[eva] share/libc/string.h:181: 
   cannot evaluate ACSL term, unsupported logic var p
-[eva:alarm] share/libc/string.h:168: Warning: 
+[eva:alarm] share/libc/string.h:181: Warning: 
   function strchr, behavior found: postcondition 'result_first_occur' got status unknown.
 [eva] Recording results for strchr
 [eva] Done for function strchr
@@ -173,7 +173,7 @@
   Called from tests/libc/string_c_strchr.c:87.
 [eva] tests/libc/string_c_strchr.c:87: 
   function strchr: precondition 'valid_string_s' got status valid.
-[eva] share/libc/string.c:229: Trace partitioning superposing up to 200 states
+[eva] share/libc/string.c:255: Trace partitioning superposing up to 200 states
 [eva] Recording results for strchr
 [eva] Done for function strchr
 [eva] computing for function strchr <- main.
diff --git a/tests/libc/oracle/string_c_strstr.res.oracle b/tests/libc/oracle/string_c_strstr.res.oracle
index d05d2e49cd3de7f0d9aea564896536061c8b598c..5f33acfdc3237c5f114e27ec8b89afd2122ecf04 100644
--- a/tests/libc/oracle/string_c_strstr.res.oracle
+++ b/tests/libc/oracle/string_c_strstr.res.oracle
@@ -10,7 +10,7 @@
   function strstr: precondition 'valid_string_haystack' got status valid.
 [eva] tests/libc/string_c_strstr.c:52: 
   function strstr: precondition 'valid_string_needle' got status valid.
-[eva] share/libc/string.h:228: 
+[eva] share/libc/string.h:241: 
   function strstr: postcondition 'result_null_or_in_haystack' got status valid.
 [eva] Recording results for strstr
 [eva] Done for function strstr
@@ -68,7 +68,7 @@
   function strstr: precondition 'valid_string_haystack' got status valid.
 [eva] tests/libc/string_c_strstr.c:59: 
   function strstr: precondition 'valid_string_needle' got status valid.
-[eva] share/libc/string.c:266: starting to merge loop iterations
+[eva] share/libc/string.c:292: starting to merge loop iterations
 [eva] Recording results for strstr
 [eva] Done for function strstr
 [eva] computing for function strstr <- main.
@@ -101,9 +101,9 @@
   function strstr: precondition 'valid_string_haystack' got status valid.
 [eva] tests/libc/string_c_strstr.c:64: 
   function strstr: precondition 'valid_string_needle' got status valid.
-[eva] share/libc/string.h:230: 
+[eva] share/libc/string.h:243: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memcmp
-[eva:alarm] share/libc/string.h:228: Warning: 
+[eva:alarm] share/libc/string.h:241: Warning: 
   function strstr: postcondition 'result_null_or_in_haystack' got status unknown.
 [eva] Recording results for strstr
 [eva] Done for function strstr
diff --git a/tests/libc/oracle/string_h.res.oracle b/tests/libc/oracle/string_h.res.oracle
index a7cb7e2344c89a1c94f386b665431f6bdf0d7a4a..09f4a4d97f5354aa180a8ae2eb5def8c2006e562 100644
--- a/tests/libc/oracle/string_h.res.oracle
+++ b/tests/libc/oracle/string_h.res.oracle
@@ -13,7 +13,7 @@
   function strcmp: precondition 'valid_string_s1' got status valid.
 [eva] tests/libc/string_h.c:5: 
   function strcmp: precondition 'valid_string_s2' got status valid.
-[eva] share/libc/string.h:143: 
+[eva] share/libc/string.h:156: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function strcmp
 [eva] Done for function strcmp
 [eva:alarm] tests/libc/string_h.c:6: Warning: assertion got status unknown.
@@ -51,7 +51,7 @@
   function strstr: precondition 'valid_string_haystack' got status valid.
 [eva] tests/libc/string_h.c:24: 
   function strstr: precondition 'valid_string_needle' got status valid.
-[eva] share/libc/string.h:230: 
+[eva] share/libc/string.h:243: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memcmp
 [eva] Done for function strstr
 [eva:alarm] tests/libc/string_h.c:25: Warning: assertion got status unknown.
@@ -325,7 +325,7 @@
 [eva] tests/libc/string_h.c:154: Call to builtin strchr
 [eva] tests/libc/string_h.c:154: 
   function strchr: precondition 'valid_string_s' got status valid.
-[eva] share/libc/string.h:168: 
+[eva] share/libc/string.h:181: 
   cannot evaluate ACSL term, unsupported logic var p
 [eva] computing for function strchrnul <- main.
   Called from tests/libc/string_h.c:155.
@@ -341,6 +341,21 @@
 [eva] tests/libc/string_h.c:158: 
   function strchrnul: precondition 'valid_string_s' got status valid.
 [eva] Done for function strchrnul
+[eva] computing for function mempcpy <- main.
+  Called from tests/libc/string_h.c:160.
+[eva] using specification for function mempcpy
+[eva] tests/libc/string_h.c:160: 
+  function mempcpy: precondition 'valid_dest' got status valid.
+[eva] tests/libc/string_h.c:160: 
+  function mempcpy: precondition 'valid_src' got status valid.
+[eva] tests/libc/string_h.c:160: 
+  function mempcpy: precondition 'separation' got status valid.
+[eva] share/libc/string.h:114: 
+  cannot evaluate ACSL term, unsupported ACSL construct: logic function memcmp
+[kernel] tests/libc/string_h.c:160: Warning: using size of 'void'
+[eva] Done for function mempcpy
+[eva:alarm] tests/libc/string_h.c:161: Warning: 
+  assertion 'imprecise' got status unknown.
 [eva] Recording results for main
 [eva] done for function main
 [eva] ====== VALUES COMPUTED ======
@@ -412,4 +427,7 @@
   nul1 ∈ {{ "haystack" + [0..8] }}
   chr2 ∈ {{ NULL ; "haystack" + {1} }}
   nul2 ∈ {{ "haystack" + [0..8] }}
+  pdest[0..8] ∈ [--..--] or UNINITIALIZED
+       [9] ∈ UNINITIALIZED
+  pend ∈ {{ &pdest[9] }}
   __retres ∈ {0}
diff --git a/tests/libc/oracle/sys_select.res.oracle b/tests/libc/oracle/sys_select.res.oracle
index f784239499a3c4eeef28ff6852ceee7a4c6496b0..6d1d0ce7d53b5af37508dc1b4e06606b1b2c3da8 100644
--- a/tests/libc/oracle/sys_select.res.oracle
+++ b/tests/libc/oracle/sys_select.res.oracle
@@ -15,7 +15,7 @@
 [eva] tests/libc/sys_select.c:16: Call to builtin memset
 [eva] tests/libc/sys_select.c:16: 
   function memset: precondition 'valid_s' got status valid.
-[eva] share/libc/string.h:121: 
+[eva] share/libc/string.h:134: 
   cannot evaluate ACSL term, unsupported ACSL construct: logic function memset
 [eva] computing for function htonl <- main.
   Called from tests/libc/sys_select.c:18.
diff --git a/tests/libc/string_c.c b/tests/libc/string_c.c
index e5bff29eaf38398b3cf99d6cddebd238e1d08fc0..27a2aad0c9ca86ef90126fc3833ddef18e5ad929 100644
--- a/tests/libc/string_c.c
+++ b/tests/libc/string_c.c
@@ -276,6 +276,19 @@ void test_strstr()
   //@assert p == s;
 }
 
+void test_mempcpy()
+{
+  char dest[6], src[6] = "hello";
+  char *p = mempcpy(dest, src, 6);
+  //@assert p == dest + 6;
+  //@assert dest[5] == '\0';
+  char src2[5] = "a\0b\0";
+  p = mempcpy(dest, src2, 3);
+  //@assert p == dest + 3;
+  p = mempcpy(dest, "", 0);
+  //@assert p == dest;
+}
+
 int main(int argc, char **argv)
 {
   test_memcpy();
@@ -298,5 +311,6 @@ int main(int argc, char **argv)
   // strerror not tested
   // strdup not tested (uses malloc)
   // strndup not tested (uses malloc)
+  test_mempcpy();
   return 0;
 }
diff --git a/tests/libc/string_h.c b/tests/libc/string_h.c
index cf18b8e546389f5c93439f6b462502c9af391485..7c0194e1c5b093828ea3e7aad584741437004947 100644
--- a/tests/libc/string_h.c
+++ b/tests/libc/string_h.c
@@ -156,5 +156,8 @@ int main(int argc, char **argv)
   d = nondet ? 'a' : 'n';
   char *chr2 = strchr(c, d);
   char *nul2 = strchrnul(c, d);
+  char pdest[10];
+  char *pend = mempcpy(pdest, "gnu-only function", 9);
+  //@ assert imprecise: pend == pdest + 9 && *pend == '\0';
   return 0;
 }