```python
from typing import *
from collections import *

def lay_conveyor(floor: list, row: int, col: int, length: int) -> list:
    if row < 0 or row >= len(floor):
        raise ValueError("the run starts off the plan")
    
    if col + length > len(floor[0]):
        raise ValueError("the run would pass the last column")
    
    cells = list(floor[row])
    
    for i in range(length):
        if cells[col + i] != '.':
            raise ValueError(f"cell at ({row}, {col + i}) is not open")
    
    cells[col:col + length] = ['='] * length
    
    return [cells] + floor[1:]
```