#include <bits/stdc++.h>
using namespace std;
typedef struct {
  int e;
  long long sum[10];
} T;
T t[4 * 100005];
int ar[100005], ad[100005][3];
map<int, int> m;
T up(int at, int lo, int hi, int n, int v) {
  if (lo == hi) {
    t[at].e = 1;
    t[at].sum[0] = v;
    return t[at];
  }
  int mid = (lo + hi) / 2;
  T i, j;
  if (mid < n) {
    i = t[2 * at];
    j = up(2 * at + 1, mid + 1, hi, n, v);
  } else {
    i = up(2 * at, lo, mid, n, v);
    j = t[2 * at + 1];
  }
  t[at] = i;
  t[at].e = t[at].e + j.e;
  for (int a = 0; a < 5; a++)
    t[at].sum[(a + i.e) % 5] = t[at].sum[(a + i.e) % 5] + j.sum[a];
  return t[at];
}
T del(int at, int lo, int hi, int n, int v) {
  if (lo == hi) {
    t[at].e = 0;
    t[at].sum[0] = 0;
    return t[at];
  }
  int mid = (lo + hi) / 2;
  T i, j;
  if (mid < n) {
    i = t[2 * at];
    j = del(2 * at + 1, mid + 1, hi, n, v);
  } else {
    i = del(2 * at, lo, mid, n, v);
    j = t[2 * at + 1];
  }
  t[at] = i;
  t[at].e = t[at].e + j.e;
  for (int a = 0; a < 5; a++)
    t[at].sum[(a + i.e) % 5] = t[at].sum[(a + i.e) % 5] + j.sum[a];
  return t[at];
}
int main() {
  int a, b, c, d, x, y, z;
  cin >> y;
  string s;
  z = 1;
  for (a = 1; a <= y; a++) {
    cin >> s;
    if (s == "add") {
      ad[a][1] = 1;
      cin >> ad[a][2];
      ar[z] = ad[a][2];
      z++;
    }
    if (s == "del") {
      ad[a][1] = 2;
      cin >> ad[a][2];
    }
    if (s == "sum") ad[a][1] = 0;
  }
  sort(ar, ar + z);
  for (a = 1; a < z; a++) m[ar[a]] = a;
  for (a = 1; a <= y; a++) {
    if (ad[a][1] == 1) up(1, 1, z - 1, m[ad[a][2]], ad[a][2]);
    if (ad[a][1] == 2) {
      del(1, 1, z - 1, m[ad[a][2]], ad[a][2]);
    }
    if (ad[a][1] == 0) cout << t[1].sum[2] << endl;
  }
  return 0;
}
