cleaned up and added defaults