# Copyright (C) 2016 and later: Unicode, Inc. and others.
# License & terms of use: http://www.unicode.org/copyright.html
######################################################################
# Copyright (C) 2013-2014, International Business Machines
# Corporation and others.  All Rights Reserved.
######################################################################
# This is an ICU-specific file including zone/region mapping.
#
# Each line below indicates zone and its region in the syntax below -
# <zone_id> <region_code>
#
Africa/Asmera ER
America/Coral_Harbour CA
America/Montreal CA
Europe/Simferopol UA
Pacific/Johnston UM

