
"""simple docstring"""







from __future__ import annotations

import time
from collections.abc import Sequence
from random import randint

from matplotlib import pyplot as plt
def    __lowerCAmelCase    (_UpperCamelCase	,  _UpperCamelCase	,  _UpperCamelCase		):
	if not arr:
		return None, None, 0
	if low == high:
		return low, high, arr[low]

	__lowerCAmelCase      :						Union[str, Any]						      =				(low + high) // 2
	__lowerCAmelCase      :						Dict						      =				max_subarray(_UpperCamelCase	,  _UpperCamelCase	,  _UpperCamelCase		)
	__lowerCAmelCase      :						Union[str, Any]						      =				max_subarray(_UpperCamelCase	,  mid + 1	,  _UpperCamelCase		)
	__lowerCAmelCase      :						Optional[int]						      =				max_cross_sum(_UpperCamelCase	,  _UpperCamelCase	,  _UpperCamelCase	,  _UpperCamelCase		)
	if left_sum >= right_sum and left_sum >= cross_sum:
		return left_low, left_high, left_sum
	elif right_sum >= left_sum and right_sum >= cross_sum:
		return right_low, right_high, right_sum
	return cross_left, cross_right, cross_sum
def    __lowerCAmelCase    (_UpperCamelCase	,  _UpperCamelCase	,  _UpperCamelCase	,  _UpperCamelCase		):
	__lowerCAmelCase      :						List[str]						      =				float('-inf'		), -1
	__lowerCAmelCase      :						List[str]						      =				float('-inf'		), -1

	__lowerCAmelCase      :						int | float						      =				0
	for i in range(_UpperCamelCase	,  low - 1	,  -1		):
		summ += arr[i]
		if summ > left_sum:
			__lowerCAmelCase      :						Union[str, Any]						      =				summ
			__lowerCAmelCase      :						Any						      =				i

	__lowerCAmelCase      :						Tuple						      =				0
	for i in range(mid + 1	,  high + 1		):
		summ += arr[i]
		if summ > right_sum:
			__lowerCAmelCase      :						str						      =				summ
			__lowerCAmelCase      :						int						      =				i

	return max_left, max_right, (left_sum + right_sum)
def    __lowerCAmelCase    (_UpperCamelCase		):
	__lowerCAmelCase      :						Union[str, Any]						      =				[randint(1	,  _UpperCamelCase		) for _ in range(_UpperCamelCase		)]
	__lowerCAmelCase      :						List[Any]						      =				time.time()
	max_subarray(_UpperCamelCase	,  0	,  input_size - 1		)
	__lowerCAmelCase      :						Tuple						      =				time.time()
	return end - start
def    __lowerCAmelCase    ():
	__lowerCAmelCase      :						str						      =				[10, 100, 1000, 1_0000, 5_0000, 10_0000, 20_0000, 30_0000, 40_0000, 50_0000]
	__lowerCAmelCase      :						int						      =				[time_max_subarray(_UpperCamelCase		) for input_size in input_sizes]
	print('No of Inputs\t\tTime Taken'		)
	for input_size, runtime in zip(_UpperCamelCase	,  _UpperCamelCase		):
		print(_UpperCamelCase	,  '\t\t'	,  _UpperCamelCase		)
	plt.plot(_UpperCamelCase	,  _UpperCamelCase		)
	plt.xlabel('Number of Inputs'		)
	plt.ylabel('Time taken in seconds'		)
	plt.show()


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

							testmod()

"""simple docstring"""







from .glue import glue_convert_examples_to_features, glue_output_modes, glue_processors, glue_tasks_num_labels
from .squad import SquadExample, SquadFeatures, SquadVaProcessor, SquadVaProcessor, squad_convert_examples_to_features
from .utils import DataProcessor, InputExample, InputFeatures, SingleSentenceClassificationProcessor
from .xnli import xnli_output_modes, xnli_processors, xnli_tasks_num_labels