给你两个整数 n 和 m,以及两个整数数组 hBars 和 vBars。网格由 n + 2 条水平线和 m + 2 条竖直线组成,形成 1x1 的单元格。网格中的线条从 1 开始编号。
你可以从 hBars 中 删除 一些水平线条,并从 vBars 中删除一些竖直线条。注意,其他线条是固定的,无法删除。
返回一个整数表示移除一些线条(可以不移除任何线条)后,网格中 正方形空洞的最大面积 。
示例 1:

输入: n = 2, m = 1, hBars = [2,3], vBars = [2]
输出: 4
解释:
左侧图片展示了网格的初始状态。水平线是 [1,2,3,4],竖直线是 [1,2,3]。
构造最大正方形空洞的一种方法是移除水平线 2 和竖直线 2。
示例 2:

输入: n = 1, m = 1, hBars = [2], vBars = [2]
输出: 4
解释:
移除水平线 2 和竖直线 2,可以得到最大正方形空洞。
示例 3:

输入: n = 2, m = 3, hBars = [2,3], vBars = [2,4]
输出: 4
解释:
构造最大正方形空洞的一种方法是移除水平线 3 和竖直线 4。
提示:
1 <= n <= 1091 <= m <= 1091 <= hBars.length <= 1002 <= hBars[i] <= n + 11 <= vBars.length <= 1002 <= vBars[i] <= m + 1hBars 中所有值互不相同。vBars 中所有值互不相同。