typo safe_substitute