public function setTimeZone($timezone)
    {
        if(!$timezone) {
            return $this;
        }
        try {
            Carbon::now($timezone);
        } catch (\Exception $e) {
            $this->invalidArguments('10004', sprintf('Invalid timezone set "%s"', $timezone));
        }
        return $this->setParameter('timezone', $timezone);
    }