dofile implemented instead  of shell.run