added network request and parsing