Use maxLength, not singleByte, to determine max char width.
Something odd here about encoding lookup and errors. Excluding.