#include <bits/stdc++.h>
#ifndef ONLINE_JUDGE
#include "debug.h"
#else
#define debug(...)
#endif
// #define int long long
#define pep_Guardiola \
ios::sync_with_stdio(0); \
cin.tie(0); \
cout.tie(0);
using namespace std;
void io()
{
#ifndef ONLINE_JUDGE
freopen("input.txt", "r", stdin);
// freopen("output.txt", "w", stdout);
#endif
}
void Guardiola()
{
int n, q;
cin >> n >> q;
vector<int> a(n + 1, 0), prefix(n + 1, 0);
for (int i = 1; i <= n; i++)
{
cin >> a[i];
prefix[i] = prefix[i - 1] + a[i];
}
set<int> cuts;
cuts.insert(1), cuts.insert(n + 1);
multiset<int> sums;
sums.insert(prefix[n] - prefix[0]);
while (q--)
{
int type, x;
cin >> type >> x;
if (type == 1)
{
if (cuts.count(x))
{
cout << *sums.rbegin() << '\n';
continue;
}
auto it = cuts.upper_bound(x);
int r = *it - 1, l = *prev(it);
sums.erase(sums.find(prefix[r] - prefix[l - 1]));
sums.insert(prefix[x - 1] - prefix[l - 1]);
sums.insert(prefix[r] - prefix[x - 1]);
cuts.insert(x);
}
else
{
auto it = cuts.find(x);
int r = *next(it) - 1, l = *prev(it);
sums.erase(sums.find(prefix[x - 1] - prefix[l - 1]));
sums.erase(sums.find(prefix[r] - prefix[x - 1]));
sums.insert(prefix[r] - prefix[l - 1]);
cuts.erase(it);
}
cout << *sums.rbegin() << '\n';
}
}
signed main()
{
pep_Guardiola;
io();
int t = 1;
// cin >> t;
while (t--)
Guardiola();
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNpZm5kZWYgT05MSU5FX0pVREdFCiNpbmNsdWRlICJkZWJ1Zy5oIgojZWxzZQojZGVmaW5lIGRlYnVnKC4uLikKI2VuZGlmCi8vICNkZWZpbmUgaW50IGxvbmcgbG9uZwojZGVmaW5lIHBlcF9HdWFyZGlvbGEgICAgICBcCiAgaW9zOjpzeW5jX3dpdGhfc3RkaW8oMCk7IFwKICBjaW4udGllKDApOyAgICAgICAgICAgICAgXAogIGNvdXQudGllKDApOwp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdm9pZCBpbygpCnsKI2lmbmRlZiBPTkxJTkVfSlVER0UKICBmcmVvcGVuKCJpbnB1dC50eHQiLCAiciIsIHN0ZGluKTsKICAvLyBmcmVvcGVuKCJvdXRwdXQudHh0IiwgInciLCBzdGRvdXQpOwojZW5kaWYKfQoKdm9pZCBHdWFyZGlvbGEoKQp7CiAgaW50IG4sIHE7CiAgY2luID4+IG4gPj4gcTsKICB2ZWN0b3I8aW50PiBhKG4gKyAxLCAwKSwgcHJlZml4KG4gKyAxLCAwKTsKICBmb3IgKGludCBpID0gMTsgaSA8PSBuOyBpKyspCiAgewogICAgY2luID4+IGFbaV07CiAgICBwcmVmaXhbaV0gPSBwcmVmaXhbaSAtIDFdICsgYVtpXTsKICB9CiAgc2V0PGludD4gY3V0czsKICBjdXRzLmluc2VydCgxKSwgY3V0cy5pbnNlcnQobiArIDEpOwogIG11bHRpc2V0PGludD4gc3VtczsKICBzdW1zLmluc2VydChwcmVmaXhbbl0gLSBwcmVmaXhbMF0pOwogIHdoaWxlIChxLS0pCiAgewogICAgaW50IHR5cGUsIHg7CiAgICBjaW4gPj4gdHlwZSA+PiB4OwogICAgaWYgKHR5cGUgPT0gMSkKICAgIHsKICAgICAgaWYgKGN1dHMuY291bnQoeCkpCiAgICAgIHsKICAgICAgICBjb3V0IDw8ICpzdW1zLnJiZWdpbigpIDw8ICdcbic7CiAgICAgICAgY29udGludWU7CiAgICAgIH0KICAgICAgYXV0byBpdCA9IGN1dHMudXBwZXJfYm91bmQoeCk7CiAgICAgIGludCByID0gKml0IC0gMSwgbCA9ICpwcmV2KGl0KTsKICAgICAgc3Vtcy5lcmFzZShzdW1zLmZpbmQocHJlZml4W3JdIC0gcHJlZml4W2wgLSAxXSkpOwogICAgICBzdW1zLmluc2VydChwcmVmaXhbeCAtIDFdIC0gcHJlZml4W2wgLSAxXSk7CiAgICAgIHN1bXMuaW5zZXJ0KHByZWZpeFtyXSAtIHByZWZpeFt4IC0gMV0pOwogICAgICBjdXRzLmluc2VydCh4KTsKICAgIH0KICAgIGVsc2UKICAgIHsKICAgICAgYXV0byBpdCA9IGN1dHMuZmluZCh4KTsKICAgICAgaW50IHIgPSAqbmV4dChpdCkgLSAxLCBsID0gKnByZXYoaXQpOwogICAgICBzdW1zLmVyYXNlKHN1bXMuZmluZChwcmVmaXhbeCAtIDFdIC0gcHJlZml4W2wgLSAxXSkpOwogICAgICBzdW1zLmVyYXNlKHN1bXMuZmluZChwcmVmaXhbcl0gLSBwcmVmaXhbeCAtIDFdKSk7CiAgICAgIHN1bXMuaW5zZXJ0KHByZWZpeFtyXSAtIHByZWZpeFtsIC0gMV0pOwogICAgICBjdXRzLmVyYXNlKGl0KTsKICAgIH0KICAgCiAgICBjb3V0IDw8ICpzdW1zLnJiZWdpbigpIDw8ICdcbic7CiAgfQp9CgpzaWduZWQgbWFpbigpCnsKICBwZXBfR3VhcmRpb2xhOwogIGlvKCk7CiAgaW50IHQgPSAxOwogLy8gY2luID4+IHQ7CiAgd2hpbGUgKHQtLSkKICAgIEd1YXJkaW9sYSgpOwogIHJldHVybiAwOwp9