Placed the CT_ASSERTs in a separate function