better abstractions for choose dialog... no more manual copypasta