Problem: The word `internationalization` is sometimes abbreviated to `i18n`. This comes from the fact that there are 18 letters between the first `i` and the last `n`.

You are given a string s of length at least 3 consisting of lowercase English letters. Abbreviate s in the same way.

Constraints

* 3 ≤ |s| ≤ 100 (|s| denotes the length of s.)
* s consists of lowercase English letters.

Input

Input is given from Standard Input in the following format:


s


Output

Print the abbreviation of s.

Examples

Input

internationalization


Output

i18n


Input

smiles


Output

s4s


Input

xyz


Output

x1z

Solution (in CPP):

Solution:
#include <bits/stdc++.h>
using namespace std;

int main(){
  string s;
  cin >> s;
  int n = s.size();
  cout << s[0]+to_string(n-2)+s[n-1];
}