you cannot require defined types