more blocks, optimized