replacements just operates on strings now