refactor IccService