added initialize back and added defaults