move reply to it's own class