redo a better make subsitute