initialize all variables properly in the constructor