#include <bits/stdc++.h>
using namespace std;
mt19937 Rand(time(nullptr));
const int INF = 1e9 + 7;
struct tnode {
  int key, siz;
  long long sum;
  unsigned int fix;
  tnode *lson, *rson;
  tnode(int x = 0) {
    key = sum = x, siz = 1, fix = Rand();
    lson = rson = nullptr;
  }
  static int Siz(tnode* x) { return x ? x->siz : 0; }
  static long long Sum(tnode* x) { return x ? x->sum : 0; }
  void maintain() {
    siz = Siz(lson) + Siz(rson) + 1;
    sum = Sum(lson) + Sum(rson) + key;
  }
};
tnode *tre[5], *ltre[5], *rtre[5];
namespace Treap {
void split(tnode* cur, tnode*& x, tnode*& y, int k) {
  if (!cur)
    x = y = nullptr;
  else if (k <= cur->key)
    y = cur, split(y->lson, x, y->lson, k), y->maintain();
  else
    x = cur, split(x->rson, x->rson, y, k), x->maintain();
}
void merge(tnode*& cur, tnode* x, tnode* y) {
  if (!x || !y)
    cur = x ? x : y;
  else if (x->fix < y->fix)
    merge(x->rson, x->rson, y), x->maintain(), cur = x;
  else
    merge(y->lson, x, y->lson), y->maintain(), cur = y;
}
int getmin(tnode* cur) {
  if (!cur) return INF;
  while (cur->lson) cur = cur->lson;
  return cur->key;
}
}  // namespace Treap
int N;
int main() {
  scanf("%d", &N);
  for (int i = 0; i < (int)(5); ++i) tre[i] = nullptr;
  for (int i = 0; i < (int)(N); ++i) {
    string s;
    int x;
    cin >> s;
    if (s[0] == 's') {
      printf("%lld\n", tnode::Sum(tre[2]));
      continue;
    }
    scanf("%d", &x);
    for (int i = 0; i < (int)(5); ++i)
      Treap::split(tre[i], ltre[i], rtre[i], x);
    if (s[0] == 'a') {
      int pos = 0;
      for (int i = 0; i < (int)(5); ++i) pos += tnode::Siz(ltre[i]);
      for (int i = 0; i < (int)(5); ++i)
        if (pos % 5 == i) Treap::merge(ltre[i], ltre[i], new tnode(x));
      for (int i = 0; i < (int)(5); ++i)
        Treap::merge(tre[i], ltre[i], rtre[(i + 4) % 5]);
    } else {
      for (int i = 0; i < (int)(5); ++i)
        if (Treap::getmin(rtre[i]) == x) {
          tnode* t;
          Treap::split(rtre[i], t, rtre[i], x + 1);
          delete t;
        }
      for (int i = 0; i < (int)(5); ++i)
        Treap::merge(tre[i], ltre[i], rtre[(i + 1) % 5]);
    }
  }
  return 0;
}
