
def a__   (	A_,					A_,					A_ ):






  '''simple docstring'''





  __magic_name__    					=	[1 / first_term]
  __magic_name__    					=	1 / first_term
  for _ in range(number_of_terms - 1 ):
    first_term += common_difference
    arithmetic_progression.append(A_ )
  __magic_name__    					=	[1 / step for step in arithmetic_progression]
  return sum(A_ )


if __name__ == "__main__":
    import doctest

    doctest.testmod()
    print(sum_of_harmonic_progression(1 / 2, 2, 2))



from itertools import compress, repeat
from math import ceil, sqrt

def a__   (	A_ ):






  '''simple docstring'''





  if num <= 2:
    return []
  if num == 3:
    return [2]

  # Odd sieve for numbers in range [3, num - 1]
  __magic_name__    					=	bytearray(b"""\x01""" ) * ((num >> 1) - 1)

  for i in range(3,					int(sqrt(A_ ) ) + 1,					2 ):
    if sieve[(i >> 1) - 1]:
      __magic_name__    					=	i**2
      __magic_name__    					=	repeat(
          0,					ceil((num - i_squared) / (i << 1) ) )

  return [2] + list(compress(range(3,					A_,					2 ),					A_ ) )


if __name__ == "__main__":
    import doctest

    doctest.testmod()

