longest substring
maximalRectangle