improvements & bug fixes