just organizing the flow