class FlowStepBuilder extends StepBuilderHelper<FlowStepBuilder> {

	private Flow flow;

	/**
	 * Create a new builder initialized with any properties in the parent. The parent is
	 * copied, so it can be re-used.
	 * @param parent a parent helper containing common step properties
	 */
	public FlowStepBuilder(StepBuilderHelper<?> parent) {
		super(parent);
	}

	/**
	 * Provide a flow to execute during the step.
	 * @param flow the flow to execute
	 * @return this for fluent chaining
	 */
	public FlowStepBuilder flow(Flow flow) {
		this.flow = flow;
		return this;
	}

	/**
	 * Build a step that executes the flow provided, normally composed of other steps. The
	 * flow is not executed in a transaction because the individual steps are supposed to
	 * manage their own transaction state.
	 * @return a flow step
	 */
	public Step build() {<FILL_FUNCTION_BODY>}

	@Override
	protected FlowStepBuilder self() {
		return this;
	}

}

		FlowStep step = new FlowStep();
		step.setName(getName());
		step.setFlow(flow);
		super.enhance(step);
		try {
			step.afterPropertiesSet();
		}
		catch (Exception e) {
			throw new StepBuilderException(e);
		}
		return step;
	
<methods>public void <init>(java.lang.String) ,public void <init>(java.lang.String, org.springframework.batch.core.repository.JobRepository) ,public org.springframework.batch.core.step.builder.FlowStepBuilder allowStartIfComplete(boolean) ,public org.springframework.batch.core.step.builder.FlowStepBuilder listener(java.lang.Object) ,public org.springframework.batch.core.step.builder.FlowStepBuilder listener(org.springframework.batch.core.StepExecutionListener) ,public org.springframework.batch.core.step.builder.FlowStepBuilder meterRegistry(io.micrometer.core.instrument.MeterRegistry) ,public org.springframework.batch.core.step.builder.FlowStepBuilder observationConvention(org.springframework.batch.core.observability.BatchStepObservationConvention) ,public org.springframework.batch.core.step.builder.FlowStepBuilder observationRegistry(io.micrometer.observation.ObservationRegistry) ,public org.springframework.batch.core.step.builder.FlowStepBuilder repository(org.springframework.batch.core.repository.JobRepository) ,public org.springframework.batch.core.step.builder.FlowStepBuilder startLimit(int) <variables>protected final org.apache.commons.logging.Log logger,protected final non-sealed org.springframework.batch.core.step.builder.StepBuilderHelper.CommonStepProperties properties