import math
def main(arr):
n=len(arr)
prefix=[0]*n
suffix=[0]*n
ps={-1:0}
curr=0
for i in range(n):
x=arr[i]
curr+=x
ps[i]=curr
prefix_maxi=-math.inf
for ij in range(n):
prefix_maxi=max(prefix_maxi,ps[ij])
prefix[ij]=prefix_maxi
suffix_maxi=-math.inf
for jk in range(n-1,-1,-1):
suffix_maxi=max(suffix_maxi,ps[jk])
suffix[jk]=suffix_maxi
maxAns=-math.inf
for j in range(n):
maxAns=max(maxAns,prefix[j] - ps[j] + suffix[j])
return 2*maxAns - ps[n-1]
print(main([-3,4,-5,2,6,-5]))
aW1wb3J0IG1hdGgKZGVmIG1haW4oYXJyKToKICAgIG49bGVuKGFycikKICAgIHByZWZpeD1bMF0qbgogICAgc3VmZml4PVswXSpuCiAgICAKICAgIHBzPXstMTowfQogICAgY3Vycj0wCiAgICBmb3IgaSBpbiByYW5nZShuKToKICAgICAgICB4PWFycltpXQogICAgICAgIGN1cnIrPXgKICAgICAgICBwc1tpXT1jdXJyCiAgICAKICAgIHByZWZpeF9tYXhpPS1tYXRoLmluZgogICAgZm9yIGlqIGluIHJhbmdlKG4pOgogICAgICAgIHByZWZpeF9tYXhpPW1heChwcmVmaXhfbWF4aSxwc1tpal0pCiAgICAgICAgcHJlZml4W2lqXT1wcmVmaXhfbWF4aQogICAgCiAgICBzdWZmaXhfbWF4aT0tbWF0aC5pbmYKICAgIGZvciBqayBpbiByYW5nZShuLTEsLTEsLTEpOgogICAgICAgIHN1ZmZpeF9tYXhpPW1heChzdWZmaXhfbWF4aSxwc1tqa10pCiAgICAgICAgc3VmZml4W2prXT1zdWZmaXhfbWF4aQogICAgICAgIAogICAgCiAgICBtYXhBbnM9LW1hdGguaW5mCiAgICBmb3IgaiBpbiByYW5nZShuKToKICAgICAgICBtYXhBbnM9bWF4KG1heEFucyxwcmVmaXhbal0gLSBwc1tqXSArIHN1ZmZpeFtqXSkKICAgIAogICAgcmV0dXJuIDIqbWF4QW5zIC0gcHNbbi0xXQogICAgCiAgICAKcHJpbnQobWFpbihbLTMsNCwtNSwyLDYsLTVdKSk=