Please solve the programming task below using a self-contained code snippet in a markdown code block.

You are given an m x n binary matrix image where 0 represents a white pixel and 1 represents a black pixel.
The black pixels are connected (i.e., there is only one black region). Pixels are connected horizontally and vertically.
Given two integers x and y that represents the location of one of the black pixels, return the area of the smallest (axis-aligned) rectangle that encloses all black pixels.
You must write an algorithm with less than O(mn) runtime complexity
 
Please complete the following python code precisely:
```python
class Solution:
    def minArea(self, image: List[List[str]], x: int, y: int) -> int:
```