more constructor work