block pattern environments