Reimplement part select properly