Simplify the interface by adding Selection class