#include <stdio.h>

typedef struct
{
    int start_index[10];        //标记数字子串的开始下标
    int len;                    //数字子串的长度
}Sub_str_t;

/* 记录数字子串 */
int add_substr(Sub_str_t *sub_str_t, int *index, int num_size, int i)
{
    /* 有相同长度时,增加子串下标,长度不变*/
    if(num_size == sub_str_t->len)
    {
        ++(*index);
        sub_str_t->start_index[*index] = i - num_size;
        sub_str_t->len = num_size;
    }
    else if(num_size > sub_str_t->len)
    {/* 有更大长度时,清除之前记录的子串 */
        (*index) = 0;
        sub_str_t->start_index[*index] = i - num_size;
        sub_str_t->len = num_size;
    }   
    
    return 0;
}

int main()
{
    char str[201] = {0};
    while(gets(str) != NULL)
    {
        Sub_str_t sub_str_t;
        int len = strlen(str);
        int num_size = 0;
        int flag = 0;
        int index = 0;
        
        memset(&sub_str_t, 0, sizeof(Sub_str_t));
        for(int i = 0; i < len; i++)
        {
            if(str[i] >= '0' && str[i] <= '9')
            { 
                flag = 1;
                num_size++;
                
                //末尾仍为数字时,记录此 数字子串
                if(i == len - 1)
                {
                    add_substr(&sub_str_t, &index, num_size, i+1);               
                }
                
            }
            else if(flag == 1) //记录子串
            {
                
                add_substr(&sub_str_t, &index, num_size, i);
               
                flag = 0;
                num_size = 0;
            }
        }

        for(int j = 0; j <= index; j++)
        {
            for(int i = sub_str_t.start_index[j]; i < sub_str_t.start_index[j] + sub_str_t.len; i++)
            {
                printf("%c", str[i]);
            }
        }
        
        printf(",%d\n", sub_str_t.len);
        
        memset(str, 0, sizeof(char) * 201);
        
    }
    return 0;
}