some logic in showing options