moved private members above constructor