-Ap |U8* |utf16_to_utf8 |U8* p|U8 *d|I32 bytelen|I32 *newlen
-Ap |U8* |utf16_to_utf8_reversed|U8* p|U8 *d|I32 bytelen|I32 *newlen
-Ap |I32 |utf8_distance |U8 *a|U8 *b
-Ap |U8* |utf8_hop |U8 *s|I32 off
-ApM |U8* |utf8_to_bytes |U8 *s|STRLEN *len
-ApM |U8* |bytes_to_utf8 |U8 *s|STRLEN *len
-Ap |UV |utf8_to_uv |U8 *s|I32* retlen
-Ap |UV |utf8_to_uv_chk |U8 *s|I32* retlen|bool checking
-Ap |U8* |uv_to_utf8 |U8 *d|UV uv
+ApM |U8* |utf16_to_utf8 |U8* p|U8 *d|I32 bytelen|I32 *newlen
+ApM |U8* |utf16_to_utf8_reversed|U8* p|U8 *d|I32 bytelen|I32 *newlen
+ApMd |STRLEN |utf8_length |U8* s|U8 *e
+ApMd |IV |utf8_distance |U8 *a|U8 *b
+ApMd |U8* |utf8_hop |U8 *s|I32 off
+ApMd |U8* |utf8_to_bytes |U8 *s|STRLEN *len
+ApMd |U8* |bytes_from_utf8|U8 *s|STRLEN *len|bool *is_utf8
+ApMd |U8* |bytes_to_utf8 |U8 *s|STRLEN *len
+ApMd |UV |utf8_to_uv_simple|U8 *s|STRLEN* retlen
+ApMd |UV |utf8_to_uv |U8 *s|STRLEN curlen|STRLEN* retlen|U32 flags
+ApMd |U8* |uv_to_utf8 |U8 *d|UV uv