added blocking queue