add max listener limit