package com.javarush.task.task18.task1821;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
public class Solution {
public static void main(String[] args) throws IOException {
FileInputStream reader = new FileInputStream(args[0]);
Map<Character, Integer> map = new HashMap<>();
ArrayList<Character> list = new ArrayList();
/* list.add('d');
list.add(',');
list.add(',');
list.add('h');
list.add('d');
list.add('d');
list.add('h');
list.add(',');
list.add('d');
list.add('u');
list.add('p');
list.add('p');
list.add(',');
list.add(',');*/
while (reader.available()>0){
list.add((char) reader.read());
}
Collections.sort(list);
int count=1; //333377755/ 123
for (int i =list.size()-1; i>0;i--){
if(list.get(i).equals(list.get(i-1))){
count++;
}else{
map.put(list.get(i),count);
count=1;
}
}
reader.close();
/* for (int a :list
) {
System.out.print(a+" ");
}*/
for (Map.Entry<Character, Integer> pair : map.entrySet())
{
String key = String.valueOf(pair.getKey());
String value = String.valueOf(pair.getValue());
System.out.println(key + " " + value);
}
}
}