insertSecret :: (Gate g, Monad m) => Ref -> SecretId -> BuilderT g m ()
insertSecret !ref !id = do
    bs_circ . circ_secrets . at (getSecretId id) ?= ref
    insertGate ref (gateBase (Secret id))
insertSecret :: (Gate g, Monad m) => Ref -> SecretId -> BuilderT g m ()
insertSecret !ref !id = do
    bs_circ . circ_secrets . at (getSecretId id) ?= ref
    insertGate ref (gateBase (Secret id))
insertSecret !ref !id = do
    bs_circ . circ_secrets . at (getSecretId id) ?= ref
    insertGate ref (gateBase (Secret id))