handling ci