Using proper super data types