The subscript operator appears to operate in terms of two-byte chunks of UTF-16 encoded data (whereas it should operate in terms of codepoints)