fixed everything so far that at least the listener works as intended