
    Given an array of normalized credit risk scores from multiple assessment criteria, determine the strongest creditworthiness indicator by finding the highest possible product of scores that form an increasing pattern over time. The scores must be selected in a way that maintains their chronological order, and each selected score must be higher than the previously selected score.
    

    
def max_product(arr):
    """
    Given an array of normalized credit risk scores from multiple assessment criteria, determine the strongest creditworthiness indicator by finding the highest possible product of scores that form an increasing pattern over time. The scores must be selected in a way that maintains their chronological order, and each selected score must be higher than the previously selected score.
    

    """
def max_product(arr):
    """
    Given an array of normalized credit risk scores from multiple assessment criteria, determine the strongest creditworthiness indicator by finding the highest possible product of scores that form an increasing pattern over time. The scores must be selected in a way that maintains their chronological order, and each selected score must be higher than the previously selected score.
    

    """
    n = len(arr)
    mpis = arr[:]
    for i in range(n):
        current_prod = arr[i]
        j = i + 1
        while j < n:
            if arr[j - 1] > arr[j]:
                break
            current_prod *= arr[j]
            if current_prod > mpis[j]:
                mpis[j] = current_prod
            j = j + 1
    return max(mpis)