cut down
simplify more: no len, replace rather than fail
strong, replace needs a loop
automatic cap