changed require to more reliable dofile