update order of member initialization
update variable names
wip