```python
from typing import List

def crate_fill(items: int, crates: int) -> List[int]:
    if crates <= 0:
        raise ValueError("Number of crates must be greater than zero")
    
    base_size = items // crates
    remainder = items % crates
    
    return [base_size + 1] * remainder + [base_size] * (crates - remainder)

def crate_total(sizes: List[int]) -> int:
    return sum(sizes)
```