We are given a list of (axis-aligned) `rectangles`

. Each `rectangle[i] = [x`

, where _{i1}, y_{i1}, x_{i2}, y_{i2}] `(x`

are the coordinates of the bottom-left corner, and _{i1}, y_{i1})`(x`

are the coordinates of the top-right corner of the _{i2}, y_{i2})`i`

rectangle.^{th}

Find the total area covered by all `rectangles`

in the plane. Since the answer may be too large, return it **modulo** `10`

.^{9} + 7

**Example 1:**

Input:rectangles = [[0,0,2,2],[1,0,2,3],[1,0,3,1]]Output:6Explanation:As illustrated in the picture.

**Example 2:**

Input:rectangles = [[0,0,1000000000,1000000000]]Output:49Explanation:The answer is 10^{18}modulo (10^{9}+ 7), which is (10^{9})^{2}= (-7)^{2}= 49.

**Constraints:**

`1 <= rectangles.length <= 200`

`rectanges[i].length = 4`

`0 <= rectangles[i][j] <= 10`

^{9}- The total area covered by all rectangles will never exceed
`2`

and thus will fit in a^{63}- 1**64-bit**signed integer.

class Solution {
public:
int rectangleArea(vector<vector<int>>& rectangles) {
}
};