rework substrate generation