all (TimeZone)

    # File lib/active_support/values/time_zone.rb, line 93
        def all
          unless @@zones
            @@zones = []
            [[-43_200, "International Date Line West" ],
             [-39_600, "Midway Island", "Samoa" ],
             [-36_000, "Hawaii" ],
             [-32_400, "Alaska" ],
             [-28_800, "Pacific Time (US & Canada)", "Tijuana" ],
             [-25_200, "Mountain Time (US & Canada)", "Chihuahua", "La Paz",
                       "Mazatlan", "Arizona" ],
             [-21_600, "Central Time (US & Canada)", "Saskatchewan", "Guadalajara",
                       "Mexico City", "Monterrey", "Central America" ],
             [-18_000, "Eastern Time (US & Canada)", "Indiana (East)", "Bogota",
                       "Lima", "Quito" ],
             [-14_400, "Atlantic Time (Canada)", "Caracas", "La Paz", "Santiago" ],
             [-12_600, "Newfoundland" ],
             [-10_800, "Brasilia", "Buenos Aires", "Georgetown", "Greenland" ],
             [ -7_200, "Mid-Atlantic" ],
             [ -3_600, "Azores", "Cape Verde Is." ],
             [      0, "Dublin", "Edinburgh", "Lisbon", "London", "Casablanca",
                       "Monrovia" ],
             [  3_600, "Belgrade", "Bratislava", "Budapest", "Ljubljana", "Prague",
                       "Sarajevo", "Skopje", "Warsaw", "Zagreb", "Brussels",
                       "Copenhagen", "Madrid", "Paris", "Amsterdam", "Berlin",
                       "Bern", "Rome", "Stockholm", "Vienna",
                       "West Central Africa" ],
             [  7_200, "Bucharest", "Cairo", "Helsinki", "Kyev", "Riga", "Sofia",
                       "Tallinn", "Vilnius", "Athens", "Istanbul", "Minsk",
                       "Jerusalem", "Harare", "Pretoria" ],
             [ 10_800, "Moscow", "St. Petersburg", "Volgograd", "Kuwait", "Riyadh",
                       "Nairobi", "Baghdad" ],
             [ 12_600, "Tehran" ],
             [ 14_400, "Abu Dhabi", "Muscat", "Baku", "Tbilisi", "Yerevan" ],
             [ 16_200, "Kabul" ],
             [ 18_000, "Ekaterinburg", "Islamabad", "Karachi", "Tashkent" ],
             [ 19_800, "Chennai", "Kolkata", "Mumbai", "New Delhi" ],
             [ 20_700, "Kathmandu" ],
             [ 21_600, "Astana", "Dhaka", "Sri Jayawardenepura", "Almaty",
                       "Novosibirsk" ],
             [ 23_400, "Rangoon" ],
             [ 25_200, "Bangkok", "Hanoi", "Jakarta", "Krasnoyarsk" ],
             [ 28_800, "Beijing", "Chongqing", "Hong Kong", "Urumqi",
                       "Kuala Lumpur", "Singapore", "Taipei", "Perth", "Irkutsk",
                       "Ulaan Bataar" ],
             [ 32_400, "Seoul", "Osaka", "Sapporo", "Tokyo", "Yakutsk" ],
             [ 34_200, "Darwin", "Adelaide" ],
             [ 36_000, "Canberra", "Melbourne", "Sydney", "Brisbane", "Hobart",
                       "Vladivostok", "Guam", "Port Moresby" ],
             [ 39_600, "Magadan", "Solomon Is.", "New Caledonia" ],
             [ 43_200, "Fiji", "Kamchatka", "Marshall Is.", "Auckland",
                       "Wellington" ],
             [ 46_800, "Nuku'alofa" ]].
            each do |offset, *places|
              places.each { |place| @@zones << create(place, offset).freeze }
            end
            @@zones.sort!
          end
          @@zones
        end