open-ended type