made sourceReplacement lazily resolved. You can now use closures and GStrings ("string with $vals")