added bad-json resilient parser