#include <bits/stdc++.h>
using namespace std;
string a, b, c, s;
map<string, long long> m[3];
long long f, q;
bool sach(string aa) {
  if (s.size() >= aa.size() && s.substr(s.size() - aa.size(), aa.size()) == aa)
    return true;
  return false;
}
void solve(long long i) {
  if (sach(a)) {
    if (m[i].count(b) || m[i].count(c)) {
      cout << "NO";
      exit(0);
    }
    f = 1;
    m[i][a]++;
  }
  if (sach(b)) {
    if (m[i].count(b) || m[i].count(c)) {
      cout << "NO";
      exit(0);
    }
    f = 1;
    q = 1;
    m[i][b]++;
  }
  if (sach(c)) {
    if (m[i].size() && m[i].count(b) == 0) {
      cout << "NO";
      exit(0);
    }
    m[i][c]++;
    f = 1;
  }
  if (m[1].size() && m[2].size()) {
    cout << "NO";
    exit(0);
  }
}
int32_t main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  vector<string> ss;
  while (cin >> s) {
    f = 0;
    ss.push_back(s);
    a = "lios", b = "etr", c = "initis";
    solve(1);
    a = "liala", b = "etra", c = "inites";
    solve(2);
    if (f == 0) {
      cout << "NO";
      exit(0);
    }
  }
  if (ss.size() == 1 || q)
    cout << "YES";
  else
    cout << "NO";
}
