> ## Documentation Index
> Fetch the complete documentation index at: https://docs.aliengh.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Data

> Small helpers for working with Grasshopper data trees.

Small, reliable helpers for the fiddly parts of Grasshopper.

| Component | What it's for |
| - | - |
| [Branch picker](#branch-picker) | Pass chosen branches of a data tree through, by index (`0, 2, 4-6`, `-1`, `*`, `even`), in the order you ask for. |

***

## Branch picker

`branch_picker`

Pass chosen branches of a data tree through, by index (`0, 2, 4-6`, `-1`, `*`, `even`), in the order you ask for.

**Cost:** Free.

### Inputs

| Input | Type | On the component | Default | What it does |
| - | - | - | - | - |
| `tree` | tree of Data | Wire | — | data tree to pick from |
| `pick` | Text | Text field | `0` | branches to keep: 0, 2, 4-6, -1 (last), \* (all), even, odd |
| `flatten` | Boolean | Switch | off | merge the picked branches into one list |

### Outputs

| Output | Type | What it gives you |
| - | - | - |
| `picked` | Data | the picked branches, in the order asked for |
| `rest` | Data | the branches not picked |
| `count` | Integer | branches picked |
| `branches` | Text | every branch: index, size, contents |

<AccordionGroup>
  <Accordion title="How it works">
    * Pick forms: '0, 2, 4-6', '-1' (last), '\*' (all), 'even', 'odd'.
    * Out-of-range or junk picks are ignored and reported; flatten merges the picked branches.
    * Works by branch index: original path labels such as \{0;2} are not kept.
  </Accordion>
</AccordionGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.