working on type parser