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 <stdio.h>
#include <string.h>
char s[105];

int main(){
	int n;
	scanf("%s",s);
	n=strlen(s);
	printf("%c%d%c\n",s[0],n-2,s[n-1]);
}