
import os


def    A (      lowercase				)     ->						Tuple:
		'''simple docstring'''

		UpperCamelCase						=  len(grid[0]				)
		UpperCamelCase						=  len(lowercase				)

		UpperCamelCase						=  0
		UpperCamelCase						=  0
		UpperCamelCase						=  0

		# Check vertically, horizontally, diagonally at the same time (only works
		# for nxn grid)
		for i in range(lowercase				):
				for j in range(n_rows - 3				):
						UpperCamelCase						=  grid[j][i] * grid[j + 1][i] * grid[j + 2][i] * grid[j + 3][i]
						UpperCamelCase						=  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:
								UpperCamelCase						=  (
								    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:
								UpperCamelCase						=  (
								    grid[i][j]
								    * grid[i - 1][j + 1]
								    * grid[i - 2][j + 2]
								    * grid[i - 3][j + 3]
								)

						UpperCamelCase						=  max(
						    lowercase					, lowercase					, lowercase					, lowercase				)
						if max_product > largest:
								UpperCamelCase						=  max_product

		return largest


def    A (      )     ->						Optional[Any]:
		'''simple docstring'''

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

		UpperCamelCase						=  [[int(lowercase				) for i in grid[j]] for j in range(len(lowercase				)				)]

		return largest_product(lowercase				)


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


def    A (      lowercase				)     ->						str:
		'''simple docstring'''

		UpperCamelCase						=  int(lowercase				)
		if decimal in (0, 1):  # Exit cases for the recursion
				return str(lowercase				)
		UpperCamelCase			,						UpperCamelCase						=  divmod(lowercase					, 2				)
		return binary_recursive(lowercase				) + str(lowercase				)


def    A (      lowercase				)     ->						str:
		'''simple docstring'''

		UpperCamelCase						=  str(lowercase				).strip()
		if not number:
				raise ValueError('No input value was provided'				)
		UpperCamelCase						=  '-' if number.startswith('-'				) else ''
		UpperCamelCase						=  number.lstrip('-'				)
		if not number.isnumeric():
				raise ValueError('Input value is not an integer'				)
		return f'''{negative}0b{binary_recursive(int(lowercase				)				)}'''


if __name__ == "__main__":
					from doctest import testmod

					testmod()
