add <=> and "all"