CUNY SPS DATA-607 Week 9 Assignment

Description

The assignment is to choose one of the New York Times APIs, construct an interface in R to read in the JSON data, and transform it to an R dataframe.

Data Acquisition

I have chosen to pull the top stories from the upshot section of the paper. I will request the data from the API

library(httr)
source("hidden/NYT API.R") # Load my API key into api_key
base_url <- "https://api.nytimes.com/svc/topstories/v2/upshot.json"
url <- paste0(base_url, "?api-key=", api_key)
response <- GET(url)

Data Transformation

Now the JSON response needs to be transformed into a data frame:

library(jsonlite)
json <- fromJSON(content(response, as = "text"))
df <- data.frame( json$results )

Results

The following is the data pulled from the New York Times API:

Table 1. Response from the API
section subsection title abstract url byline item_type updated_date created_date published_date material_type_facet kicker des_facet org_facet per_facet geo_facet multimedia short_url
The Upshot The Problem With Probiotics There are potential harms as well as benefits, and a lot of wishful thinking and imprecision in the marketing of products containing them. https://www.nytimes.com/2018/10/22/upshot/the-problem-with-probiotics.html By AARON E. CARROLL Article 2018-10-22T05:00:01-04:00 2018-10-22T05:00:01-04:00 2018-10-22T05:00:01-04:00 c(“Probiotics”, “Dietary Supplements and Herbal Remedies”, “Diet and Nutrition”, “Preventive Medicine”, “Research”, “Digestive Tract”) character(0) character(0) character(0) list(url = c(“https://static01.nyt.com/images/2018/10/23/upshot/23up-probiofinal/23up-probiofinal-thumbStandard.jpg”, “https://static01.nyt.com/images/2018/10/23/upshot/23up-probiofinal/23up-probiofinal-thumbLarge.jpg”, “https://static01.nyt.com/images/2018/10/23/upshot/23up-probiofinal/23up-probiofinal-articleInline.jpg”, “https://static01.nyt.com/images/2018/10/23/upshot/23up-probiofinal/23up-probiofinal-mediumThreeByTwo210.jpg”, “https://static01.nyt.com/images/2018/10/23/upshot/23up-probiofinal/23up-probiofinal-superJumbo.jpg” ), format = c(“Standard Thumbnail”, “thumbLarge”, “Normal”, “mediumThreeByTwo210”, “superJumbo”), height = c(75, 150, 102, 140, 616), width = c(75, 150, 190, 210, 1148), type = c(“image”, “image”, “image”, “image”, “image”), subtype = c(“photo”, “photo”, “photo”, “photo”, “photo”), caption = c(“A lot of trust has been put into the idea that gut bacteria can be a key to good health.”, “A lot of trust has been put into the idea that gut bacteria can be a key to good health.”, “A lot of trust has been put into the idea that gut bacteria can be a key to good health.”, “A lot of trust has been put into the idea that gut bacteria can be a key to good health.”, “A lot of trust has been put into the idea that gut bacteria can be a key to good health.”), copyright = c(“Alfred Pasteka/Photo Researchers Inc.”, “Alfred Pasteka/Photo Researchers Inc.”, “Alfred Pasteka/Photo Researchers Inc.”, “Alfred Pasteka/Photo Researchers Inc.”, “Alfred Pasteka/Photo Researchers Inc.”)) https://nyti.ms/2Am6Vx2
The Upshot Unemployment Looks Like 2000 Again. But Wage Growth Doesn’t. Trying to solve an economic mystery. https://www.nytimes.com/2018/10/22/upshot/mystery-slow-wage-growth-econony.html By ERNIE TEDESCHI Article 2018-10-22T05:00:04-04:00 2018-10-22T05:00:04-04:00 2018-10-22T05:00:04-04:00 c(“Wages and Salaries”, “Productivity”, “Unemployment”, “Income Inequality”, “United States Economy”, “Labor and Jobs”) character(0) character(0) character(0) list(url = c(“https://static01.nyt.com/images/2018/10/18/upshot/up-wage-arrows-1539813418570/up-wage-arrows-1539813418570-thumbStandard.png”, “https://static01.nyt.com/images/2018/10/18/upshot/up-wage-arrows-1539813418570/up-wage-arrows-1539813418570-thumbLarge.png”, “https://static01.nyt.com/images/2018/10/18/upshot/up-wage-arrows-1539813418570/up-wage-arrows-1539813418570-articleInline-v2.png”, “https://static01.nyt.com/images/2018/10/18/upshot/up-wage-arrows-1539813418570/up-wage-arrows-1539813418570-mediumThreeByTwo210.png”, “https://static01.nyt.com/images/2018/10/18/upshot/up-wage-arrows-1539813418570/up-wage-arrows-1539813418570-superJumbo-v2.png”), format = c(“Standard Thumbnail”, “thumbLarge”, “Normal”, “mediumThreeByTwo210”, “superJumbo”), height = c(75, 150, 107, 140, 1022), width = c(75, 150, 190, 210, 1820), type = c(“image”, “image”, “image”, “image”, “image”), subtype = c(“photo”, “photo”, “photo”, “photo”, “photo”), caption = c(“”, “”, “”, “”, “”), copyright = c(“”, “”, “”, “”, “”)) https://nyti.ms/2Am6V00
The Upshot Advice From Health Care’s Power Users When you’re sick, the health care system can be scary and confusing. But in a recent survey, seriously ill Americans shared some hard-won wisdom. https://www.nytimes.com/2018/10/20/upshot/advice-from-health-cares-power-users.html By MARGOT SANGER-KATZ Article 2018-10-20T05:00:01-04:00 2018-10-20T05:00:01-04:00 2018-10-20T05:00:01-04:00 c(“Health Insurance and Managed Care”, “Medicine and Health”, “Doctors”) character(0) character(0) character(0) list(url = c(“https://static01.nyt.com/images/2018/10/23/upshot/23up-ill/23up-ill-thumbStandard.jpg”, “https://static01.nyt.com/images/2018/10/23/upshot/23up-ill/23up-ill-thumbLarge.jpg”, “https://static01.nyt.com/images/2018/10/23/upshot/23up-ill/merlin_135924975_064a2fed-27b6-4aca-82f3-ace249b5ea52-articleInline.jpg”, “https://static01.nyt.com/images/2018/10/23/upshot/23up-ill/23up-ill-mediumThreeByTwo210.jpg”, “https://static01.nyt.com/images/2018/10/23/upshot/23up-ill/merlin_135924975_064a2fed-27b6-4aca-82f3-ace249b5ea52-superJumbo.jpg” ), format = c(“Standard Thumbnail”, “thumbLarge”, “Normal”, “mediumThreeByTwo210”, “superJumbo”), height = c(75, 150, 128, 140, 1384), width = c(75, 150, 190, 210, 2048), type = c(“image”, “image”, “image”, “image”, “image”), subtype = c(“photo”, “photo”, “photo”, “photo”, “photo”), caption = c(“People who spend a lot of time in the health care system have some advice for the rest of us.”, “People who spend a lot of time in the health care system have some advice for the rest of us.”, “People who spend a lot of time in the health care system have some advice for the rest of us.”, “People who spend a lot of time in the health care system have some advice for the rest of us.”, “People who spend a lot of time in the health care system have some advice for the rest of us.”), copyright = c(“Saul Loeb/Agence France-Presse — Getty Images”, “Saul Loeb/Agence France-Presse — Getty Images”, “Saul Loeb/Agence France-Presse — Getty Images”, “Saul Loeb/Agence France-Presse — Getty Images”, “Saul Loeb/Agence France-Presse — Getty Images”)) https://nyti.ms/2QZuQaX
The Upshot For a Change, Democrats Seem Set to Equal or Exceed Republicans in Turnout Polls show enthusiasm surging in many mostly white suburban districts, but less so among young and nonwhite voters. https://www.nytimes.com/2018/10/19/upshot/midterms-democrats-turnout-enthusiasm.html By NATE COHN Article 2018-10-19T05:00:11-04:00 2018-10-19T05:00:11-04:00 2018-10-19T05:00:11-04:00 c(“Midterm Elections (2018)”, “Voting and Voters”, “Polls and Public Opinion”, “Elections, House of Representatives”, “United States Politics and Government”, “Youth”, “Race and Ethnicity”) c(“Democratic Party”, “Republican Party”) character(0) character(0) list(url = c(“https://static01.nyt.com/images/2018/10/19/upshot/19up-turnout/19up-turnout-thumbStandard.jpg”, “https://static01.nyt.com/images/2018/10/19/upshot/19up-turnout/19up-turnout-thumbLarge.jpg”, “https://static01.nyt.com/images/2018/10/19/upshot/19up-turnout/merlin_145287387_c7f643c4-6a3c-4db4-b180-543c26d55251-articleInline.jpg”, “https://static01.nyt.com/images/2018/10/19/upshot/19up-turnout/19up-turnout-mediumThreeByTwo210.jpg”, “https://static01.nyt.com/images/2018/10/19/upshot/19up-turnout/merlin_145287387_c7f643c4-6a3c-4db4-b180-543c26d55251-superJumbo.jpg” ), format = c(“Standard Thumbnail”, “thumbLarge”, “Normal”, “mediumThreeByTwo210”, “superJumbo”), height = c(75, 150, 106, 140, 1147), width = c(75, 150, 190, 210, 2048), type = c(“image”, “image”, “image”, “image”, “image”), subtype = c(“photo”, “photo”, “photo”, “photo”, “photo”), caption = c(“Lining up for early voting in Raleigh, N.C., in 2016. Midterm elections generally attract fewer voters than those in presidential years, so small shifts in who shows up can have a big effect.”, “Lining up for early voting in Raleigh, N.C., in 2016. Midterm elections generally attract fewer voters than those in presidential years, so small shifts in who shows up can have a big effect.”, “Lining up for early voting in Raleigh, N.C., in 2016. Midterm elections generally attract fewer voters than those in presidential years, so small shifts in who shows up can have a big effect.”, “Lining up for early voting in Raleigh, N.C., in 2016. Midterm elections generally attract fewer voters than those in presidential years, so small shifts in who shows up can have a big effect.”, “Lining up for early voting in Raleigh, N.C., in 2016. Midterm elections generally attract fewer voters than those in presidential years, so small shifts in who shows up can have a big effect.” ), copyright = c(“Gerry Broome/Associated Press”, “Gerry Broome/Associated Press”, “Gerry Broome/Associated Press”, “Gerry Broome/Associated Press”, “Gerry Broome/Associated Press”)) https://nyti.ms/2R1gaYS
The Upshot 1,495 Americans Describe the Financial Reality of Being Really Sick “Do you pay the hospital bill or do you pay the utility bill?” Don’t count on your health insurance for serious illnesses, a new survey warns. https://www.nytimes.com/2018/10/17/upshot/health-insurance-severely-ill-financial-toxicity-.html By MARGOT SANGER-KATZ Article 2018-10-17T13:34:17-04:00 2018-10-17T05:00:03-04:00 2018-10-17T05:00:03-04:00 c(“Health Insurance and Managed Care”, “Medicine and Health”, “Polls and Public Opinion”) character(0) character(0) character(0) list(url = c(“https://static01.nyt.com/images/2017/10/27/upshot/00up-nodes/00up-nodes-thumbStandard.jpg”, “https://static01.nyt.com/images/2017/10/27/upshot/00up-nodes/00up-nodes-thumbLarge.jpg”, “https://static01.nyt.com/images/2017/10/27/upshot/00up-nodes/00up-nodes-articleInline.jpg”, “https://static01.nyt.com/images/2017/10/27/upshot/00up-nodes/00up-nodes-mediumThreeByTwo210.jpg”, “https://static01.nyt.com/images/2017/10/27/upshot/00up-nodes/00up-nodes-superJumbo.gif”), format = c(“Standard Thumbnail”, “thumbLarge”, “Normal”, “mediumThreeByTwo210”, “superJumbo”), height = c(75, 150, 190, 140, 600), width = c(75, 150, 190, 210, 600), type = c(“image”, “image”, “image”, “image”, “image”), subtype = c(“photo”, “photo”, “photo”, “photo”, “photo”), caption = c(“”, “”, “”, “”, “”), copyright = c(“Jay Keeree”, “Jay Keeree”, “Jay Keeree”, “Jay Keeree”, “Jay Keeree”)) https://nyti.ms/2AeMAd2
The Upshot Republicans Are Suddenly Running Ads on Pre-existing Conditions. But How Accurate Are They? It’s a sign of the issue’s importance that several candidates in close races are feeling pressure to respond. https://www.nytimes.com/2018/10/16/upshot/republicans-health-care-ads-midterms.html By MARGOT SANGER-KATZ Article 2018-10-16T09:44:32-04:00 2018-10-16T05:00:01-04:00 2018-10-16T05:00:01-04:00 c(“Midterm Elections (2018)”, “Health Insurance and Managed Care”, “Political Advertising”, “Patient Protection and Affordable Care Act (2010)”, “United States Politics and Government”) character(0) Hawley, Josh D (1979- ) character(0) list(url = c(“https://static01.nyt.com/images/2018/10/16/upshot/16up-gopads1/16up-gopads1-thumbStandard.png”, “https://static01.nyt.com/images/2018/10/16/upshot/16up-gopads1/16up-gopads1-thumbLarge.png”, “https://static01.nyt.com/images/2018/10/16/upshot/16up-gopads1/16up-gopads1-articleInline.png”, “https://static01.nyt.com/images/2018/10/16/upshot/16up-gopads1/16up-gopads1-mediumThreeByTwo210-v2.png”, “https://static01.nyt.com/images/2018/10/16/upshot/16up-gopads1/16up-gopads1-superJumbo.png”), format = c(“Standard Thumbnail”, “thumbLarge”, “Normal”, “mediumThreeByTwo210”, “superJumbo”), height = c(75, 150, 123, 140, 1006), width = c(75, 150, 190, 210, 1551), type = c(“image”, “image”, “image”, “image”, “image”), subtype = c(“photo”, “photo”, “photo”, “photo”, “photo”), caption = c(“The longtime California congressman Dana Rohrabacher with his family in his recent health care ad. His stated commitment to protecting pre-existing conditions is not a great match with his legislative record.”, “The longtime California congressman Dana Rohrabacher with his family in his recent health care ad. His stated commitment to protecting pre-existing conditions is not a great match with his legislative record.”, “The longtime California congressman Dana Rohrabacher with his family in his recent health care ad. His stated commitment to protecting pre-existing conditions is not a great match with his legislative record.”, “The longtime California congressman Dana Rohrabacher with his family in his recent health care ad. His stated commitment to protecting pre-existing conditions is not a great match with his legislative record.”, “The longtime California congressman Dana Rohrabacher with his family in his recent health care ad. His stated commitment to protecting pre-existing conditions is not a great match with his legislative record.”), copyright = c(“”, “”, “”, “”, “”)) https://nyti.ms/2Ad9y43
The Upshot Polarization Seems to Be Helping Republicans in Run-Up to Midterms Energized voters on the right dim prospects for big Democratic gains in red districts and states. https://www.nytimes.com/2018/10/16/upshot/midterms-polarization-republicans-polls.html By NATE COHN Article 2018-10-16T05:00:03-04:00 2018-10-16T05:00:03-04:00 2018-10-16T05:00:03-04:00 c(“Midterm Elections (2018)”, “Elections, House of Representatives”, “Polls and Public Opinion”, “Elections, Senate”, “United States Politics and Government”) character(0) character(0) character(0) list(url = c(“https://static01.nyt.com/images/2018/10/17/upshot/17up-polarization-print/16-up-polarization-thumbStandard.jpg”, “https://static01.nyt.com/images/2018/10/17/upshot/17up-polarization-print/16-up-polarization-thumbLarge.jpg”, “https://static01.nyt.com/images/2018/10/17/upshot/17up-polarization-print/merlin_123742556_c53fd472-9a29-4c80-90b4-d0f480964540-articleInline.jpg”, “https://static01.nyt.com/images/2018/10/17/upshot/17up-polarization-print/16-up-polarization-mediumThreeByTwo210-v3.jpg”, “https://static01.nyt.com/images/2018/10/17/upshot/17up-polarization-print/merlin_123742556_c53fd472-9a29-4c80-90b4-d0f480964540-superJumbo.jpg”), format = c(“Standard Thumbnail”, “thumbLarge”, “Normal”, “mediumThreeByTwo210”, “superJumbo”), height = c(75, 150, 127, 140, 1365), width = c(75, 150, 190, 210, 2048), type = c(“image”, “image”, “image”, “image”, “image”), subtype = c(“photo”, “photo”, “photo”, “photo”, “photo”), caption = c(“On the surface, the major components of a blue wave remain in place. But underlying geographic factors and an increasingly polarized electorate figure to help Republicans. The midterms are Nov. 6.”, “On the surface, the major components of a blue wave remain in place. But underlying geographic factors and an increasingly polarized electorate figure to help Republicans. The midterms are Nov. 6.”, “On the surface, the major components of a blue wave remain in place. But underlying geographic factors and an increasingly polarized electorate figure to help Republicans. The midterms are Nov. 6.”, “On the surface, the major components of a blue wave remain in place. But underlying geographic factors and an increasingly polarized electorate figure to help Republicans. The midterms are Nov. 6.”, “On the surface, the major components of a blue wave remain in place. But underlying geographic factors and an increasingly polarized electorate figure to help Republicans. The midterms are Nov. 6.”), copyright = c(“David Goldman/Associated Press”, “David Goldman/Associated Press”, “David Goldman/Associated Press”, “David Goldman/Associated Press”, “David Goldman/Associated Press”)) https://nyti.ms/2Acyn00
The Upshot Did Minnesota’s Eighth District Really Swing by Almost 20 Points? An apparent drastic shift toward the Republican candidate highlights the challenges of polling generally, and of polling in certain states particularly. https://www.nytimes.com/2018/10/15/upshot/minnesotas-eighth-district-gop-gains-real-or-not.html By NATE COHN Article 2018-10-15T21:14:59-04:00 2018-10-15T16:29:14-04:00 2018-10-15T16:29:14-04:00 c(“Midterm Elections (2018)”, “Polls and Public Opinion”, “Elections, House of Representatives”) character(0) character(0) Minnesota list(url = c(“https://static01.nyt.com/images/2018/10/15/upshot/oakImage-1539650289082/oakImage-1539650289082-thumbStandard.png”, “https://static01.nyt.com/images/2018/10/15/upshot/oakImage-1539650289082/oakImage-1539650289082-thumbLarge.png”, “https://static01.nyt.com/images/2018/10/15/upshot/oakImage-1539650289082/oakImage-1539650289082-articleInline.png”, “https://static01.nyt.com/images/2018/10/15/upshot/oakImage-1539650289082/oakImage-1539650289082-mediumThreeByTwo210.png”, “https://static01.nyt.com/images/2018/10/15/upshot/oakImage-1539650289082/oakImage-1539650289082-superJumbo.png” ), format = c(“Standard Thumbnail”, “thumbLarge”, “Normal”, “mediumThreeByTwo210”, “superJumbo”), height = c(75, 150, 153, 140, 1030), width = c(75, 150, 190, 210, 1282), type = c(“image”, “image”, “image”, “image”, “image”), subtype = c(“photo”, “photo”, “photo”, “photo”, “photo”), caption = c(“”, “”, “”, “”, “”), copyright = c(“”, “”, “”, “”, “”)) https://nyti.ms/2QRDdoT
The Upshot Is Medicare for All the Answer to Sky-High Administrative Costs? It would save money compared with private plans, but would also probably shed features that some might miss. https://www.nytimes.com/2018/10/15/upshot/is-medicare-for-all-the-answer-to-sky-high-administrative-costs.html By AUSTIN FRAKT Article 2018-10-15T05:00:12-04:00 2018-10-15T05:00:12-04:00 2018-10-15T05:00:12-04:00 c(“Medicare”, “Health Insurance and Managed Care”, “Prices (Fares, Fees and Rates)”) character(0) character(0) character(0) list(url = c(“https://static01.nyt.com/images/2018/10/16/upshot/16up-health-medicarePRINT/up-health-medicare-thumbStandard.jpg”, “https://static01.nyt.com/images/2018/10/16/upshot/16up-health-medicarePRINT/up-health-medicare-thumbLarge.jpg”, “https://static01.nyt.com/images/2018/10/16/upshot/16up-health-medicarePRINT/merlin_97741400_0250a847-6d4f-49ae-90c1-9669fc77c0ea-articleInline.jpg”, “https://static01.nyt.com/images/2018/10/16/upshot/16up-health-medicarePRINT/merlin_97741400_0250a847-6d4f-49ae-90c1-9669fc77c0ea-mediumThreeByTwo210.jpg”, “https://static01.nyt.com/images/2018/10/16/upshot/16up-health-medicarePRINT/merlin_97741400_0250a847-6d4f-49ae-90c1-9669fc77c0ea-superJumbo.jpg”), format = c(“Standard Thumbnail”, “thumbLarge”, “Normal”, “mediumThreeByTwo210”, “superJumbo”), height = c(75, 150, 127, 140, 1365), width = c(75, 150, 190, 210, 2048), type = c(“image”, “image”, “image”, “image”, “image”), subtype = c(“photo”, “photo”, “photo”, “photo”, “photo”), caption = c(“Nurses rallying for Medicare for All in Washington in 2015, on the 50th anniversary of the founding of Medicare. Three years later, the idea has a lot of support.”, “Nurses rallying for Medicare for All in Washington in 2015, on the 50th anniversary of the founding of Medicare. Three years later, the idea has a lot of support.”, “Nurses rallying for Medicare for All in Washington in 2015, on the 50th anniversary of the founding of Medicare. Three years later, the idea has a lot of support.”, “Nurses rallying for Medicare for All in Washington in 2015, on the 50th anniversary of the founding of Medicare. Three years later, the idea has a lot of support.”, “Nurses rallying for Medicare for All in Washington in 2015, on the 50th anniversary of the founding of Medicare. Three years later, the idea has a lot of support.” ), copyright = c(“Jacquelyn Martin/Associated Press”, “Jacquelyn Martin/Associated Press”, “Jacquelyn Martin/Associated Press”, “Jacquelyn Martin/Associated Press”, “Jacquelyn Martin/Associated Press”)) NA
The Upshot Interest Rates Are Rising for All the Right Reasons Here’s what the bond market is really telling us about the economic future. https://www.nytimes.com/2018/10/11/upshot/interest-rates-are-rising-thats-great-news-for-most.html By NEIL IRWIN Article 2018-10-13T10:23:48-04:00 2018-10-11T05:00:02-04:00 2018-10-11T05:00:02-04:00 c(“Interest Rates”, “United States Economy”, “Government Bonds”, “Stocks and Bonds”, “Mortgages”, “Prices (Fares, Fees and Rates)”) Federal Reserve System character(0) character(0) list(url = c(“https://static01.nyt.com/images/2018/10/14/upshot/up-bonds/merlin_144444924_7bbb7bf1-8fdf-4feb-9c8f-47d42bab77e5-thumbStandard.jpg”, “https://static01.nyt.com/images/2018/10/14/upshot/up-bonds/merlin_144444924_7bbb7bf1-8fdf-4feb-9c8f-47d42bab77e5-thumbLarge.jpg”, “https://static01.nyt.com/images/2018/10/14/upshot/up-bonds/merlin_144444924_7bbb7bf1-8fdf-4feb-9c8f-47d42bab77e5-articleInline.jpg”, “https://static01.nyt.com/images/2018/10/14/upshot/up-bonds/merlin_144444924_7bbb7bf1-8fdf-4feb-9c8f-47d42bab77e5-mediumThreeByTwo210.jpg”, “https://static01.nyt.com/images/2018/10/14/upshot/up-bonds/merlin_144444924_7bbb7bf1-8fdf-4feb-9c8f-47d42bab77e5-superJumbo.jpg”), format = c(“Standard Thumbnail”, “thumbLarge”, “Normal”, “mediumThreeByTwo210”, “superJumbo”), height = c(75, 150, 125, 140, 1343), width = c(75, 150, 190, 210, 2048), type = c(“image”, “image”, “image”, “image”, “image”), subtype = c(“photo”, “photo”, “photo”, “photo”, “photo”), caption = c(“The housing sector is especially sensitive to the longer-term interest rates set on the bond market, which in turn determine mortgage rates.”, “The housing sector is especially sensitive to the longer-term interest rates set on the bond market, which in turn determine mortgage rates.”, “The housing sector is especially sensitive to the longer-term interest rates set on the bond market, which in turn determine mortgage rates.”, “The housing sector is especially sensitive to the longer-term interest rates set on the bond market, which in turn determine mortgage rates.”, “The housing sector is especially sensitive to the longer-term interest rates set on the bond market, which in turn determine mortgage rates.” ), copyright = c(“Ben Nelms/Reuters”, “Ben Nelms/Reuters”, “Ben Nelms/Reuters”, “Ben Nelms/Reuters”, “Ben Nelms/Reuters”)) https://nyti.ms/2CaUUMh

Mike Silva

22 October 2018