#include <bits/stdc++.h>
using namespace std;
char str[100005];
int cnt, num[1000];
int main() {
  scanf("%s", str);
  int len = (int)strlen(str);
  long long tmp = 0, ans = 0;
  int flag = 1;
  for (int i = 0; i < len; i++) {
    if ('0' <= str[i] && str[i] <= '9') {
      tmp = tmp * 10 + str[i] - '0';
    } else if (str[i] == '.') {
      if (str[i + 3] <= '9' && str[i + 3] >= '0') {
        tmp = tmp * 10 + str[i + 1] - '0';
        tmp = tmp * 10 + str[i + 2] - '0';
        tmp = tmp * 10 + str[i + 3] - '0';
        i += 3;
      } else {
        flag = 0;
        tmp = tmp * 10 + str[i + 1] - '0';
        tmp = tmp * 10 + str[i + 2] - '0';
        i += 2;
      }
    } else {
      if (flag == 1) tmp *= 100;
      flag = 1;
      ans += tmp;
      tmp = 0;
    }
  }
  if (flag == 1) tmp *= 100;
  ans += tmp;
  cnt = 0;
  while (ans) {
    num[++cnt] = ans % 10;
    ans /= 10;
  }
  reverse(num + 1, num + 1 + cnt);
  cnt -= 2;
  if (cnt > 3) {
    for (int i = 1; i <= cnt % 3; i++) {
      printf("%d", num[i]);
    }
    if (cnt == 6) {
      printf("%d%d%d", num[cnt - 5], num[cnt - 4], num[cnt - 3]);
    } else if (cnt > 6) {
      printf(".%d%d%d", num[cnt - 5], num[cnt - 4], num[cnt - 3]);
    }
    printf(".%d%d%d", num[cnt - 2], num[cnt - 1], num[cnt]);
  } else {
    for (int i = 1; i <= cnt; i++) {
      printf("%d", num[i]);
    }
  }
  if (cnt <= 0) printf("0");
  if (num[cnt + 1] == 0 && num[cnt + 2] == 0) {
    return 0;
  } else {
    printf(".%d%d\n", num[cnt + 1], num[cnt + 2]);
  }
  return 0;
}
