puzzle: use elemsof instead of sizeof