This too seems excessive?
Doesn't transocding to a wider range always take, at most, simply as much?
EG: `Dst[] buffer = new Dst[s.length];`