This reverts commit 864827f788 partially. 型定義に関する実装はそのままに 一部型定義に合わない実装の修正
864827f788
substr
substring
2b6f789a5b