added block parsing functions