<p>Given a 2D <code>grid</code> of <code>0</code>s and <code>1</code>s, return the number of elements in the largest <strong>square</strong> subgrid that has all <code>1</code>s on its <strong>border</strong>, or <code>0</code> if such a subgrid doesn't exist in the <code>grid</code>.</p> <p> </p> <p><strong>Example 1:</strong></p> <pre> <strong>Input:</strong> grid = [[1,1,1],[1,0,1],[1,1,1]] <strong>Output:</strong> 9 </pre> <p><strong>Example 2:</strong></p> <pre> <strong>Input:</strong> grid = [[1,1,0,0]] <strong>Output:</strong> 1 </pre> <p> </p> <p><strong>Constraints:</strong></p> <ul> <li><code>1 <= grid.length <= 100</code></li> <li><code>1 <= grid[0].length <= 100</code></li> <li><code>grid[i][j]</code> is <code>0</code> or <code>1</code></li> </ul>