subroutine store_ci_coeff
integer :: ic, ex(2, 4), nIEx(nel)
integer(int64) :: i
real(dp) :: sign_tmp(lenof_sign)
nCyc = nCyc + 1
! loop through all occupied determinants
do i = 1, TotWalkers
! definition of the max ic as input for get_bit_excitmat
ic = n_store_ci_level + 1
! extraction of the excitation level from every determinant
call get_bit_excitmat(iLutRef(:, 1), CurrentDets(:, i), ex, ic)
if (ic <= n_store_ci_level) then
call extract_sign(CurrentDets(:, i), sign_tmp)
call decode_bit_det(nIEx, CurrentDets(:, i))
call cache_sign(sign_tmp, nIEx)
end if
end do
end subroutine store_ci_coeff