compile only doing things they must do