diff --git a/morphisms/runtime/include/array/length-prefix.h b/morphisms/runtime/include/array/length-prefix.h
index 9017950..35a4aec 100644
--- a/morphisms/runtime/include/array/length-prefix.h
+++ b/morphisms/runtime/include/array/length-prefix.h
@@ -3,7 +3,6 @@
 #include <stdio.h>
 #include <stdint.h>
 
-// Macro to define length-prefixed array structures and functions
 #define DEFINE_LENGTH_PREFIX_ARRAY(LEN_TYPE, ITEM_TYPE)                        \
     typedef struct {                                                           \
         LEN_TYPE len;                                                          \
@@ -40,29 +39,18 @@
         printf("\n");                                                          \
     }
 
+#define DEFINE_ALL_LENGTH_PREFIX_ARRAYS(LEN_TYPE)  \
+    DEFINE_LENGTH_PREFIX_ARRAY(LEN_TYPE, uint8_t)  \
+    DEFINE_LENGTH_PREFIX_ARRAY(LEN_TYPE, uint16_t) \
+    DEFINE_LENGTH_PREFIX_ARRAY(LEN_TYPE, uint32_t) \
+    DEFINE_LENGTH_PREFIX_ARRAY(LEN_TYPE, uint64_t)
+
+DEFINE_ALL_LENGTH_PREFIX_ARRAYS(uint8_t)
+DEFINE_ALL_LENGTH_PREFIX_ARRAYS(uint16_t)
+DEFINE_ALL_LENGTH_PREFIX_ARRAYS(uint32_t)
+DEFINE_ALL_LENGTH_PREFIX_ARRAYS(uint64_t)
 
-// Define all combinations of length and item types
-DEFINE_LENGTH_PREFIX_ARRAY(uint8_t, uint8_t)
-DEFINE_LENGTH_PREFIX_ARRAY(uint8_t, uint16_t)
-DEFINE_LENGTH_PREFIX_ARRAY(uint8_t, uint32_t)
-DEFINE_LENGTH_PREFIX_ARRAY(uint8_t, uint64_t)
-DEFINE_LENGTH_PREFIX_ARRAY(uint16_t, uint8_t)
-DEFINE_LENGTH_PREFIX_ARRAY(uint16_t, uint16_t)
-DEFINE_LENGTH_PREFIX_ARRAY(uint16_t, uint32_t)
-DEFINE_LENGTH_PREFIX_ARRAY(uint16_t, uint64_t)
-DEFINE_LENGTH_PREFIX_ARRAY(uint32_t, uint8_t)
-DEFINE_LENGTH_PREFIX_ARRAY(uint32_t, uint16_t)
-DEFINE_LENGTH_PREFIX_ARRAY(uint32_t, uint32_t)
-DEFINE_LENGTH_PREFIX_ARRAY(uint32_t, uint64_t)
-DEFINE_LENGTH_PREFIX_ARRAY(uint64_t, uint8_t)
-DEFINE_LENGTH_PREFIX_ARRAY(uint64_t, uint16_t)
-DEFINE_LENGTH_PREFIX_ARRAY(uint64_t, uint32_t)
-DEFINE_LENGTH_PREFIX_ARRAY(uint64_t, uint64_t)
 
-/*
- * Map
- */
-// Macro to define map function between different item types
 #define DEFINE_LENGTH_PREFIX_ARRAY_MAP(LEN_TYPE, SRC_ITEM_TYPE, DST_ITEM_TYPE) \
     static inline int length_prefix_##LEN_TYPE##_array_map_##SRC_ITEM_TYPE##_to_##DST_ITEM_TYPE( \
         int (*f)(SRC_ITEM_TYPE const * restrict, DST_ITEM_TYPE * restrict),    \
@@ -78,12 +66,12 @@ DEFINE_LENGTH_PREFIX_ARRAY(uint64_t, uint64_t)
     }
 
 #define DEFINE_ALL_MAPS(LEN_TYPE)                        \
-    DEFINE_LENGTH_PREFIX_ARRAY_MAP(LEN_TYPE, uint8_t, uint8_t)  \
+    DEFINE_LENGTH_PREFIX_ARRAY_MAP(LEN_TYPE, uint8_t, uint8_t)   \
     DEFINE_LENGTH_PREFIX_ARRAY_MAP(LEN_TYPE, uint8_t, uint16_t)  \
     DEFINE_LENGTH_PREFIX_ARRAY_MAP(LEN_TYPE, uint8_t, uint32_t)  \
     DEFINE_LENGTH_PREFIX_ARRAY_MAP(LEN_TYPE, uint8_t, uint64_t)  \
     DEFINE_LENGTH_PREFIX_ARRAY_MAP(LEN_TYPE, uint16_t, uint8_t)  \
-    DEFINE_LENGTH_PREFIX_ARRAY_MAP(LEN_TYPE, uint16_t, uint16_t)  \
+    DEFINE_LENGTH_PREFIX_ARRAY_MAP(LEN_TYPE, uint16_t, uint16_t) \
     DEFINE_LENGTH_PREFIX_ARRAY_MAP(LEN_TYPE, uint16_t, uint32_t) \
     DEFINE_LENGTH_PREFIX_ARRAY_MAP(LEN_TYPE, uint16_t, uint64_t) \
     DEFINE_LENGTH_PREFIX_ARRAY_MAP(LEN_TYPE, uint32_t, uint8_t)  \
diff --git a/morphisms/unicode.morphism-base b/morphisms/unicode.morphism-base
index 63f32be..c2854e5 100644
--- a/morphisms/unicode.morphism-base
+++ b/morphisms/unicode.morphism-base
@@ -34,7 +34,7 @@ morph_string_as_utf8_to_ascii ()
 morph_string_as_ascii_to_utf32 ()
      <Seq ~ <ValueTerminated 0>  Char~Ascii~native.UInt8>
 -->  <Seq Char~Unicode>
-    ~ UTF-32LE
+    ~ UTF-32
     ~ <Seq~<ValueTerminated 0> native.UInt32>
 ```
     while( *src ) { *dst++ = *src++; }
@@ -49,7 +49,7 @@ morph_string_as_utf8_to_utf32 ()
     ~ <Seq~<ValueTerminated 0> native.UInt8>
 
 -->   <Seq Char~Unicode>
-    ~ UTF-32LE
+    ~ UTF-32
     ~ <Seq~<ValueTerminated 0> native.UInt32>
 
 ```