modify to use source and . command