changed is_possible logic