# Requirement change

We are fitting a display board at the entrance. It has to tell the driver where to go before the
barrier lifts, so two things change.

**Allocation is now always the lowest-numbered free spot.** Drivers complain about walking, and
the gate staff want the front of the lot filled first. If spot 2 empties while 5 and 6 are also
free, the next car goes to 2. A truck takes the lowest pair of adjacent free spots.

**The board has to be able to ask before anything is parked.** Your contract folder has an
updated `ParkingLotApi` with one extra call:

    String nextSpotFor(VehicleType type)

It returns the spot the next vehicle of that type would be given — the same spot `park` would
actually use, so the board and the barrier can never disagree. Asking must not reserve or consume
anything: ask twice and you get the same answer, and availability does not move. If nothing
suitable is free it fails the same way `park` does.

For a truck, return the first of the two spots it would take — the same one its ticket shows.

Everything else — prices, rounding, the truck's two adjacent spots, the errors on exit — is
unchanged.

> The updated interface file replaces the one you were given; drop it over
> `contract/ParkingLotApi.java`. Adding the new method is expected to cost you a few lines, and
> the budget accounts for it.
