add command substitution