use aliases to avoid shadowing built-in set type