no longer need to explicitly state discrete