add more constructor variations