bug fix + polish