Upgraded parser