improved level chooser