some improvements in subscribe block