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>
int main()
{
	char a[100];
	scanf("%s",&a);
	printf("%c%d%c\n",a[0],strlen(a)-2,a[strlen(a)-1]);
}