[TASK]:
You will be given lines of pseudocode, your task is to write the corresponding C++ code. The pseudocode will provide detailed description of the c++ code line by line. The pseudocode is garanteed to be correct and complete.

[INSTRUCTION]:
The following libraries are already included in the code.
```cpp
#include <cstdio>
#include <iostream>
#include <vector>
#include <algorithm>
#include <numeric>
#include <cmath>
#include <cstring>
#include <set>
#include <map>
#include <queue>
#include <stack>
#include <list>
#include <fstream>
#include <climits>
#include <cassert>
#include <iomanip>
#include <sstream>
#include <bitset>
using namespace std;
```
Do not include them in your code again. Please surround your code with ```cpp and ``` markers. Note that the code should correspond to the pseudocode line by line.

[PSEUDOCODE]:
define the main function
    a,n,b,c=int
    s=array of 8 char
    w=array of 8 char filled with "jolteon", q=array of 8 char filled with "flareon"
    v=array of 8 char filled with "umbreon", z=array of 8 char filled with "leafeon", l=array of 8 char filled with "glaceeon", m=array of 8 char filled with "sylveon"
    read n
    read s
    if n is 8
        print "vaporeon"
    else if n is 6
        print "espeon"
    else
        a=0
        b=0
        c=0
        d=0
        e=0
        f=0
        for i=0 to 8 exclusive
            if s[i] is w[i] increment a
        end of the block
        for i=0 to 8 exclusive
            if s[i] is q[i] increment b
        end of the block
        for i=0 to 8 exclusive
            if s[i] is v[i] increment c
        end of the block
        for i=0 to 8 exclusive
            if s[i] is z[i] increment d
        end of the block
        for i=0 to 8 exclusive
            if s[i] is l[i] increment e
        end of the block
        for i=0 to 8 exclusive
            if s[i] is m[i] increment f
        end of the block
        if a>b and a>c and a>d and a>e and a>f
            print "jolteon"
        if b>a and b>c and b>d and b>e and b>f
            print "flareon"
        if c>a and c>b and c>d and c>e and c>f
            print "umbreon"
        if d>a and d>b and d>c and d>e and d>f
            print "leafeon"
        if e>a and e>b and e>c and e>d and e>f
            print "glaceon"
        if f>a and f>b and f>c and f>d and f>e
            print "sylveon"
        end of the block
    end of the block
    return to indicate successful execution
end of the block

[CODE]:

int main() {
    int a, n, b, c;
    char s[8];
    char w[8] = "jolteon", q[8] = "flareon";
    char v[8] = "umbreon", z[8] = "leafeon", l[8] = "glaceon", m[8] = "sylveon";
    cin >> n;
    cin >> s;
    if (n == 8) {
        cout << "vaporeon" << endl;
    } else if (n == 6) {
        cout << "espeon" << endl;
    } else {
        a = 0;
        b = 0;
        c = 0;
        int d = 0;
        int e = 0;
        int f = 0;
        for (int i = 0; i < 8; i++) {
            if (s[i] == w[i]) { a++; }
        }
        for (int i = 0; i < 8; i++) {
            if (s[i] == q[i]) { b++; }
        }
        for (int i = 0; i < 8; i++) {
            if (s[i] == v[i]) { c++; }
        }
        for (int i = 0; i < 8; i++) {
            if (s[i] == z[i]) { d++; }
        }
        for (int i = 0; i < 8; i++) {
            if (s[i] == l[i]) { e++; }
        }
        for (int i = 0; i < 8; i++) {
            if (s[i] == m[i]) { f++; }
        }
        if (a > b && a > c && a > d && a > e && a > f) {
            cout << "jolteon" << endl;
        } else if (b > a && b > c && b > d && b > e && b > f) {
            cout << "flareon" << endl;
        } else if (c > a && c > b && c > d && c > e && c > f) {
            cout << "umbreon" << endl;
        } else if (d > a && d > c && d > b && d > e && d > f) {
            cout << "leafeon" << endl;
        } else if (e > a && e > c && e > d && e > b && e > f) {
            cout << "glaceon" << endl;
        } else if (f > a && f > c && f > d && f > e && f > b) {
            cout << "sylveon" << endl;
        }
    }
    return 0;
}