(mac bias args (w/uniq (bs r) `(withs (,bs (list ,@(map car (pair args))) ,r (rand (apply + ,bs))) (if ,@(mappend (fn (c) `((< (-- ,r (pop ,bs)) 0) ,c)) (map cadr (pair args)))))))