polished up before new branch