#include <bits/stdc++.h>
using namespace std;
int main() {
  long long n, m, t, p = 0, k, x, y, flag = 0, q = 0, l = 0, r = 0, z = 0,
                     sum = 0, i, j, k1, k2, k3, k4;
  vector<long> v;
  string s;
  cin >> s;
  k = count(s.begin(), s.end(), '@');
  if (k == 0) {
    cout << "No solution";
  } else {
    for (i = 0; i < s.size(); i++) {
      if (s[0] == '@' || s[s.size() - 1] == '@') {
        flag = 1;
        cout << "No solution";
        break;
      }
      if (s[i] == '@' && s[i + 2] == '@' && i != n - 2) {
        flag = 1;
        cout << "No solution";
        break;
      } else if (s[i] == '@' && s[i + 1] != '@' && i != n - 1 && k != 1) {
        v.push_back(i + 1);
        k--;
      } else if (s[i] == '@' && s[i + 1] != '@' && i != n - 1 && k == 1) {
        v.push_back(s.size() - 1);
        k--;
      } else if (s[i] == '@' && s[i + 1] == '@' && i != n - 1) {
        flag = 1;
        cout << "No solution";
        break;
      }
    }
    if (flag == 0) {
      for (i = 0; i < v.size(); i++) {
        if (i == 0) {
          for (j = 0; j <= v[i]; j++) {
            cout << s[j];
            if (j == v[i] && i != v.size() - 1) {
              cout << ',';
            }
          }
        } else {
          for (j = v[i - 1] + 1; j <= v[i]; j++) {
            cout << s[j];
            if (j == v[i] && i != v.size() - 1) {
              cout << ',';
            }
          }
        }
      }
    }
  }
  return 0;
}
