str substitution added