improved parse call