make flow simpler