added understanding of block types