```python
from typing import List

def crate_fill(items: int, crates: int) -> List[int]:
    if crates == 0:
        return []
    
    # Calculate the base size for each crate
    base_size = items // crates
    
    # Calculate the number of items that will be left over
    leftover_items = items % crates
    
    # Create the list of crate sizes
    crate_sizes = [base_size] * crates
    
    # Distribute the leftover items
    for i in range(leftover_items):
        crate_sizes[i] += 1
    
    return crate_sizes

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