Block Generation using Array of delegates