'''simple docstring'''


class 					__SCREAMING_SNAKE_CASE						:







  '''simple docstring'''






  def __init__(			self				,		snake_case_						):




       '''simple docstring'''

       UpperCAmelCase_							:       int       =				len(A__						)
       UpperCAmelCase_							:       Optional[int]       =				[0] * len_array

       if len_array > 0:
            UpperCAmelCase_							:       List[Any]       =				array[0]

       for i in range(1				,		A__						):
            UpperCAmelCase_							:       Optional[int]       =				self.prefix_sum[i - 1] + array[i]


  def _UpperCamelCase					(			self				,		snake_case_				,		snake_case_						):




       '''simple docstring'''

       if start == 0:
            return self.prefix_sum[end]

       return self.prefix_sum[end] - self.prefix_sum[start - 1]






  def _UpperCamelCase					(			self				,		snake_case_						):




       '''simple docstring'''

       UpperCAmelCase_							:       int       =				{0}
       for sum_item in self.prefix_sum:
            if sum_item - target_sum in sums:
                 return True

            sums.add(A__						)

       return False


if __name__ == "__main__":
 import doctest

 doctest.testmod()







'''simple docstring'''


snake_case__					:      str				      =  '''Tobias Carryer'''

from time import time






class 					__SCREAMING_SNAKE_CASE						:







  '''simple docstring'''






  def __init__(			self				,		snake_case_				,		snake_case_				,		snake_case_				,		snake_case_=int(time()						)						):  # noqa: B008




       '''simple docstring'''

       UpperCAmelCase_							:       str       =				multiplier
       UpperCAmelCase_							:       Dict       =				increment
       UpperCAmelCase_							:       Tuple       =				modulo
       UpperCAmelCase_							:       Dict       =				seed






  def _UpperCamelCase					(			self						):




       '''simple docstring'''

       UpperCAmelCase_							:       Union[str, Any]       =				(self.multiplier * self.seed + self.increment) % self.modulo
       return self.seed


if __name__ == "__main__":
 # Show the LCG in action.
 snake_case__					:      Any				      =  LinearCongruentialGenerator(166_4525, 10_1390_4223, 2 << 31)
 while True:
  print(lcg.next_number())






