Anton's favourite geometric figures are regular polyhedrons. Note that there are five kinds of regular polyhedrons: 

  * Tetrahedron. Tetrahedron has 4 triangular faces. 
  * Cube. Cube has 6 square faces. 
  * Octahedron. Octahedron has 8 triangular faces. 
  * Dodecahedron. Dodecahedron has 12 pentagonal faces. 
  * Icosahedron. Icosahedron has 20 triangular faces. 



All five kinds of polyhedrons are shown on the picture below:

<image>

Anton has a collection of n polyhedrons. One day he decided to know, how many faces his polyhedrons have in total. Help Anton and find this number!

Input

The first line of the input contains a single integer n (1 ≤ n ≤ 200 000) — the number of polyhedrons in Anton's collection.

Each of the following n lines of the input contains a string si — the name of the i-th polyhedron in Anton's collection. The string can look like this:

  * "Tetrahedron" (without quotes), if the i-th polyhedron in Anton's collection is a tetrahedron. 
  * "Cube" (without quotes), if the i-th polyhedron in Anton's collection is a cube. 
  * "Octahedron" (without quotes), if the i-th polyhedron in Anton's collection is an octahedron. 
  * "Dodecahedron" (without quotes), if the i-th polyhedron in Anton's collection is a dodecahedron. 
  * "Icosahedron" (without quotes), if the i-th polyhedron in Anton's collection is an icosahedron. 

Output

Output one number — the total number of faces in all the polyhedrons in Anton's collection.

Examples

Input

4
Icosahedron
Cube
Tetrahedron
Dodecahedron


Output

42


Input

3
Dodecahedron
Octahedron
Octahedron


Output

28

Note

In the first sample Anton has one icosahedron, one cube, one tetrahedron and one dodecahedron. Icosahedron has 20 faces, cube has 6 faces, tetrahedron has 4 faces and dodecahedron has 12 faces. In total, they have 20 + 6 + 4 + 12 = 42 faces.
#include <bits/stdc++.h>
using namespace std;
int vocala(char c) {
  if (c == 'a' || c == 'A' || c == 'e' || c == 'E' || c == 'i' || c == 'I' ||
      c == 'o' || c == 'O' || c == 'u' || c == 'U')
    return 1;
  if (c == 'y' || c == 'Y') return 1;
  return 0;
}
int isprime(long long n) {
  if (n <= 1) return 0;
  if (n <= 3) return 1;
  if (n % 2 == 0 || n % 3 == 0) return 0;
  for (int i = 5; i * i <= n; i = i + 6)
    if (n % i == 0 || n % (i + 2) == 0) return 0;
  return 1;
}
int isfibo(long long n) {
  long long a = 5 * n * n + 4;
  long long b = a - 8;
  if (sqrt(a) == int(sqrt(a)) || sqrt(b) == int(sqrt(b))) return 1;
  return 0;
}
int gcd(long long a, long long b) {
  long long r;
  while (b) {
    r = a % b;
    a = b;
    b = r;
  }
  return a;
}
ifstream in("input.txt");
ofstream out("output.txt");
long long const nrmax = 1e18;
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  long long n;
  cin >> n;
  long long cnt = 0;
  for (int i = 1; i <= n; ++i) {
    string s;
    cin >> s;
    if (s[0] == 'I') cnt += 20;
    if (s[0] == 'T') cnt += 4;
    if (s[0] == 'O') cnt += 8;
    if (s[0] == 'C') cnt += 6;
    if (s[0] == 'D') cnt += 12;
  }
  cout << cnt << '\n';
  in.close();
  out.close();
  return 0;
}
