


'''simple docstring'''







import os






def       lowercase					(_A       ):







       """simple docstring"""







       _lowerCAmelCase     :				Any       =							len(grid[0]       )
       _lowerCAmelCase     :				Optional[int]       =							len(_A       )

       _lowerCAmelCase     :				int       =							0
       _lowerCAmelCase     :				Union[str, Any]       =							0
       _lowerCAmelCase     :				Union[str, Any]       =							0

       # Check vertically, horizontally, diagonally at the same time (only works
       # for nxn grid)
       for i in range(_A       ):
              for j in range(n_rows - 3       ):
                     _lowerCAmelCase     :				Any       =							grid[j][i] * grid[j + 1][i] * grid[j + 2][i] * grid[j + 3][i]
                     _lowerCAmelCase     :				int       =							grid[i][j] * grid[i][j + 1] * grid[i][j + 2] * grid[i][j + 3]

                     # Left-to-right diagonal (\) product
                     if i < n_columns - 3:
                            _lowerCAmelCase     :				List[str]       =							(
                                grid[i][j]
                                * grid[i + 1][j + 1]
                                * grid[i + 2][j + 2]
                                * grid[i + 3][j + 3]
                            )

                     # Right-to-left diagonal(/) product
                     if i > 2:
                            _lowerCAmelCase     :				Any       =							(
                                grid[i][j]
                                * grid[i - 1][j + 1]
                                * grid[i - 2][j + 2]
                                * grid[i - 3][j + 3]
                            )

                     _lowerCAmelCase     :				int       =							max(
                         _A ,    _A ,    _A ,    _A       )
                     if max_product > largest:
                            _lowerCAmelCase     :				str       =							max_product

       return largest






def       lowercase					():







       """simple docstring"""







       _lowerCAmelCase     :				int       =							[]
       with open(os.path.dirname(_A       ) + '/grid.txt'       ) as file:
              for line in file:
                     grid.append(line.strip('\n'       ).split(' '       )       )

       _lowerCAmelCase     :				str       =							[[int(_A       ) for i in grid[j]] for j in range(len(_A       )       )]

       return largest_product(_A       )


if __name__ == "__main__":
       print(solution())





'''simple docstring'''







import argparse

from transformers import TaConfig, TaForConditionalGeneration, load_tf_weights_in_ta
from transformers.utils import logging


logging.set_verbosity_info()






def       lowercase					(_A ,    _A ,    _A       ):







       """simple docstring"""







       _lowerCAmelCase     :				Optional[Any]       =							TaConfig.from_json_file(_A       )
       print(f'Building PyTorch model from configuration: {config}'       )
       _lowerCAmelCase     :				Union[str, Any]       =							TaForConditionalGeneration(_A       )

       # Load weights from tf checkpoint
       load_tf_weights_in_ta(_A ,    _A ,    _A       )

       # Save pytorch-model
       print(f'Save PyTorch model to {pytorch_dump_path}'       )
       model.save_pretrained(_A       )


if __name__ == "__main__":
       lowerCAmelCase     :  str											=    argparse.ArgumentParser()
       # Required parameters
       parser.add_argument(
           """--tf_checkpoint_path""", default=None, type=str, required=True, help="""Path to the TensorFlow checkpoint path."""
       )
       parser.add_argument(
           """--config_file""",
           default=None,
           type=str,
           required=True,
           help=(
               """The config json file corresponding to the pre-trained T5 model. \nThis specifies the model architecture."""
           ),
       )
       parser.add_argument(
           """--pytorch_dump_path""", default=None, type=str, required=True, help="""Path to the output PyTorch model."""
       )
       lowerCAmelCase     :  int											=    parser.parse_args()
       convert_tf_checkpoint_to_pytorch(args.tf_checkpoint_path, args.config_file, args.pytorch_dump_path)

