move CFirstListener to main package