cde"));     test(S("abcde"), 0, 0, "00000", S("a00000cde"));     test(S("abcde"), 0, 0, "0000000000", S("a0000000000cde"));     test(S("abcde"), 0, 0, "00000000000000000000", S("a00000000000000000000cde"));     test(S("abcde"), 0, 0, "", S("ade"));     test(S("abcde"), 0, 0, "00000", S("a00000de"));     test(S("abcde"), 0, 0, "0000000000", S("a0000000000de"));     test(S("abcde"), 0, 0, "00000000000000000000", S("a00000000000000000000de"));     test(S("abcde"), 0, 0, "", S("ae"));     test(S("abcde"), 0, 0, "00000", S("a00000e"));     test(S("abcde"), 0, 0, "0000000000", S("a0000000000e"));     test(S("abcde"), 0, 0, "00000000000000000000", S("a00000000000000000000e"));     test(S("abcde"), 0, 0, "", S("a"));     test(S("abcde"), 0, 0, "00000", S("a00000"));     test(S("abcde"), 0, 0, "0000000000", S("a0000000000"));     test(S("abcde"), 0, 0, "00000000000000000000", S("a00000000000000000000"));     test(S("abcde"), 0, 0, "", S("abcde"));     test(S("abcde"), 0, 0, "00000", S("ab00000cde"));     test(S("abcde"), 0, 0, "0000000000", S("ab0000000000cde"));     test(S("abcde"), 0, 0, "00000000000000000000", S("ab00000000000000000000cde"));     test(S("abcde"), 0, 0, "", S("a