Fix choose not returning a stable type, add constructor to help