conditional logic is bad here