got rid of replaceExtension and concatPaths