add block rule preservedBlocks list and parsing