"""
    Kata source:

        https://www.codewars.com/kata/multiples-of-3-or-5/train/python

    If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9.
        The sum of these multiples is 23.

    Finish the solution so that it returns the sum of all the multiples of 3 or 5 below the number passed in.

    Note: If the number is a multiple of both 3 and 5, only count it once.

    Sample Test:

        test.describe("Multiples of 3 and 5")
        test.it("should handle basic cases")
        test.assert_equals(solution(10), 23)

"""


def solution(number):
    return sum(list(x for x in range(1, number) if x % 3 == 0 or x % 5 == 0))
