adding substeps feature