aaaoc, caoc, haoc