publish loop