prelude: |
  str1 = [*"a".."z",*"0".."9"].join("")
  str10 = str1 * 10 + ":"
  str100 = str1 * 100 + ":"
  str1000 = str1 * 1000 + ":"
  nonascii1 = [*"\u{e0}".."\u{ff}"].join("")
  nonascii10 = nonascii1 * 10 + ":"
  nonascii100 = nonascii1 * 100 + ":"
  nonascii1000 = nonascii1 * 1000 + ":"
benchmark:
  rpartition-1: str1.rpartition(":")
  rpartition-10: str10.rpartition(":")
  rpartition-100: str100.rpartition(":")
  rpartition-1000: str1000.rpartition(":")
  rpartition-nonascii1: nonascii1.rpartition(":")
  rpartition-nonascii10: nonascii10.rpartition(":")
  rpartition-nonascii100: nonascii100.rpartition(":")
  rpartition-nonascii1000: nonascii1000.rpartition(":")
