add more data;add try/catch when no url/data, no crash; new fields