support different total spin number