allow multiple before and after blocks per spec