moved defaults into constructor