complete parsing