#lang typed/racket (define s (set 0 1 2 3)) (define q (seteq 0 1 2 3)) (define v (seteqv 0 1 2 3)) (define s0 (ann (set) (Setof Byte))) (set-empty? s) (set-empty? q) (set-empty? v) (set-empty? s0) (set-count s) (set-count q) (set-count v) (set-count s0) (set-member? s 0) (set-member? q 0) (set-member? v 0) (set-member? s0 0) (set-add s 4) (set-add q 4) (set-add v 4) (set-add s0 4) (set-remove s 4) (set-remove q 4) (set-remove v 4) (set-remove s0 4) (subset? s s0) (set-map v add1) (set-for-each s0 display) (set-equal? s) (set-eqv? v) (set-eq? q) (cast (and (set? s0) s0) (Setof Any)) (generic-set? s0) (in-set s) (for ([x (in-set s)]) s0)