actually call publish