working on caretlistener