re-created feedback from with minor validation based on SitePoint article