added discrete option