public function timeZoneSelect($field, array $options = [])
    {
        $regions = [
            'Europe' => DateTimeZone::EUROPE,
            'America' => DateTimeZone::AMERICA,
            'Africa' => DateTimeZone::AFRICA,
            'Antarctica' => DateTimeZone::ANTARCTICA,
            'Asia' => DateTimeZone::ASIA,
            'Atlantic' => DateTimeZone::ATLANTIC,
            'Indian' => DateTimeZone::INDIAN,
            'Pacific' => DateTimeZone::PACIFIC
        ];
        $timezones = [];
        foreach ($regions as $name => $mask) {
            $zones = DateTimeZone::listIdentifiers($mask);
            foreach ($zones as $timezone) {
                // Lets sample the time there right now
                $time = new DateTime(null, new DateTimeZone($timezone));
                // Us dumb Americans can't handle millitary time
                // Remove region name and add a sample time
                $timezones[$name][] = [
                    'value' => $timezone,
                    'text' => 'UTC ' . $time->format('P') . ' ' . substr($timezone, strlen($name) + 1)
                ];
            }
        }
        $options['options'] = $timezones;
        return $this->input($field, $options);
    }