Kadane's Algorithm To Find maximum sum of subarray

I have understand the concept of Kadane’s algorithm. Here , we take the currentSum as max(currentSum+arr[i],currentSum). and then maximumSum as max(currentSum,maximumSum)

But I cannot understand why this algorithm works ? . Please help me understand it

Thank You.

Algorithm is based on simiple idea, merge two

POSITIVESUM + POSTIVESUM = BIGGER POSTIVE
NEGATIVESUM + POSITIVESUM = SMALLERPOSITIVE
Hence, we make NEGATIVESUM as 0, when cumulative sum becomes -ve.