You are given a 2D grid representing a city's map during a rainy season.
Each cell in the grid represents the water level in a region of the city.
However, you have the ability to regulate water levels between
neighboring cells in a 2x2 grid, by evenly distributing the water in that
grid. But, each cell can be regulated only once. Your task is to regulate
the water levels to ensure that no region has water levels exceeding a
certain shallow depth of 10 units.

Write a function to find the number of regions that are still prone (i.e.,
have water levels exceeding 10 units) after regulating the water levels.

Input:
A 2D grid (a list of lists) where each cell contains a positive integer
representing the water level in a region.

Output:
The number of regions that are still prone (i.e., have water levels
exceeding 10 units) after regulating the water levels.

Example:
city_map = [[11, 12, 7, 9], [15, 8, 13, 11], [7, 8, 12, 6], [14, 10, 5, 91]

output: 3