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<cstdio>
#include<cstring>
char s[105];
int main(){
	scanf("%s",s);
	printf("%c%d%c",s[0],strlen(s)-2,s[strlen(s)-1]);
	return 0;
}