------
## 最终结论
```python
def odd_sum_subarrays(arr):
    MOD = 10**9 + 7
    odd_count = 0
    even_count = 1  # Start with 1 to account for the empty subarray which has an even sum
    current_sum = 0
    result = 0
    
    for num in arr:
        current_sum += num
        
        if current_sum % 2 == 0:  # Current sum is even
            result += odd_count  # Add the number of odd prefix sums seen so far
            even_count += 1      # Increment even count
        else:                     # Current sum is odd
            result += even_count  # Add the number of even prefix sums seen so far
            odd_count += 1        # Increment odd count
        
        result %= MOD  # Take result modulo

    return result
```