[Документация Yandex Cloud](../../../../../index.md) > [Yandex Serverless Integrations](../../../../index.md) > [Концепции](../../../index.md) > Workflows > [Спецификация YaWL](../index.md) > Управляющие шаги > Parallel

# Parallel

Выполняет параллельно несколько веток — последовательностей шагов. Результат выполнения — объект, где ключом является имя ветки выполнения, а значением — выходные данные ветки выполнения. Подробнее о [состоянии рабочего процесса при выполнении шага Parallel](../../workflow.md#state-for-Parallel).

Имя поля | Тип | Обязательное | Значение по умолчанию | Поддерживается [шаблонизация](../../templating.md) | Описание
--- | --- | --- | --- | --- | ---
`input` | `string` | Нет | [Полное состояние рабочего процесса](../../workflow.md#state) | Да | jq-шаблон, фильтрующий состояние рабочего процесса, которое передается в шаг.
`output` | `string` | Нет | Выходные данные шага | Да | jq-шаблон, фильтрующий выходные данные шага, которые добавляются в состояние рабочего процесса.
`branches` | `map<string,` [Branch](#Branch)`>` | Да | Нет | Нет | Объект с описанием веток выполнения. Ключ — идентификатор ветки, значение — описание шагов в ветке выполнения.
`concurrency` | `int` | Нет  | 30 | Нет | Количество одновременно выполняющихся веток. Например, если значение `concurrency` — 2, а в `branches` описаны 5 веток, одновременно будут выполняться не больше 2 веток, выбранных случайным образом.
`next` | `string` | Нет | Нет | Нет | Идентификатор следующего шага.

## Объект Branch {#Branch}

Имя поля | Тип | Обязательное | Описание
--- | --- | --- | ---
`start` | `string` | Да | Идентификатор шага, с которого начнется выполнение ветки.
`steps` | `map<string, Step>` | Да | Описание шагов ветки выполнения. Объект, где ключ — идентификатор шага, значение — объект, который описывает параметры шага. Структура аналогична структуре поля `steps` [верхнего уровня спецификации](../index.md#workflow).