implemented wrapper and reponselistener