```python
def fold_ends(values: list) -> list:
    """Fold a list onto itself by adding the first entry to the last, the second to the second-last, and so on, returning the totals in that order. A list of an odd length leaves its middle entry as its own total."""
    return [values[i] + values[-i - 1] for i in range((len(values) + 1) // 2)]
```