part of ICM and main file