Sets: module { A: con 2r1010; B: con 2r1100; PATH: con "/dis/lib/sets32.dis"; init: fn(); set: fn(): Set; str2set: fn(str: string): Set; bytes2set: fn(d: array of byte): Set; Set: adt { s: int; X: fn(s1: self Set, o: int, s2: Set): Set; add: fn(s: self Set, n: int): Set; addlist: fn(s: self Set, ns: list of int): Set; # dellist: fn(s: self Set, ns: list of int): Set; del: fn(s: self Set, n: int): Set; invert: fn(s: self Set): Set; eq: fn(s1: self Set, s2: Set): int; holds: fn(s: self Set, n: int): int; isempty: fn(s: self Set): int; msb: fn(s: self Set): int; limit: fn(s: self Set): int; str: fn(s: self Set): string; bytes: fn(s: self Set, lim: int): array of byte; debugstr: fn(s: self Set): string; }; All: con Set(~0); None: con Set(0); };