private function validateTargeting(UnmanagedFacebookBlob $facebookBlob)
 {
     $validationResult = true;
     $validationMessage = "";
     $geographicTargeting = $facebookBlob->getGeographicTargeting();
     // instantiated by default
     if (!empty($geographicTargeting) && !$geographicTargeting->isEmpty() && !$geographicTargeting->isValid()) {
         $validationMessage .= "Geographic targeting is invalid. ";
         $validationResult = false;
     }
     $demographicTargeting = $facebookBlob->getDemographicTargeting();
     if (!empty($demographicTargeting) && !$demographicTargeting->isValid()) {
         $validationMessage .= "Demographic targeting is invalid. ";
         $validationResult = false;
     }
     $audienceTargeting = $facebookBlob->getAudienceTargeting();
     // instantiated by default
     if (!empty($audienceTargeting) && !$audienceTargeting->isEmpty() && !$audienceTargeting->isValid()) {
         $validationMessage .= "Audience targeting is invalid. ";
         $validationResult = false;
     }
     return new ValidationResult($validationResult, $validationMessage);
 }