type parser