// This file was generated by the following script:
//
//   $ /home/brian/src/AceTimeSuite/compiler/src/acetimecompiler/tzcompiler.py
//     --input_dir /home/brian/src/AceTimeSuite/libraries/AceTimeLib/src/zonedb/tzfiles
//     --output_dir /home/brian/src/AceTimeSuite/libraries/AceTimeLib/src/zonedb
//     --tz_version 2025b
//     --action zonedb
//     --language arduino
//     --scope basic
//     --db_namespace zonedb
//     --zi_namespace basic::Info
//     --start_year 2000
//     --until_year 2200
//
// using the TZ Database files
//
//   africa
//   antarctica
//   asia
//   australasia
//   backward
//   etcetera
//   europe
//   northamerica
//   southamerica
//
// from https://github.com/eggert/tz/releases/tag/2025b
//
// Supported Zones: 446 (215 zones, 231 links)
// Unsupported Zones: 151 (125 zones, 26 links)
//
// Requested Years: [2000,2200]
// Accurate Years: [2000,32767]
//
// Original Years:  [1844,2087]
// Generated Years: [1950,2023]
// Lower/Upper Truncated: [True,False]
//
// Estimator Years: [1950,2025]
// Max Buffer Size: 6
//
// Records:
//   Infos: 446
//   Eras: 227
//   Policies: 63
//   Rules: 352
//
// Memory (8-bits):
//   Context: 16
//   Rules: 3168
//   Policies: 189
//   Eras: 2497
//   Zones: 2795
//   Links: 3003
//   Registry: 892
//   Formats: 175
//   Letters: 29
//   Fragments: 116
//   Names: 4142 (original: 6494)
//   TOTAL: 17022
//
// Memory (32-bits):
//   Context: 24
//   Rules: 4224
//   Policies: 504
//   Eras: 3632
//   Zones: 5160
//   Links: 5544
//   Registry: 1784
//   Formats: 175
//   Letters: 41
//   Fragments: 138
//   Names: 4142 (original: 6494)
//   TOTAL: 25368
//
// DO NOT EDIT

#ifndef ACE_TIME_ZONEDB_ZONE_POLICIES_H
#define ACE_TIME_ZONEDB_ZONE_POLICIES_H

#include <zoneinfo/infos.h>

namespace ace_time {
namespace zonedb {

//---------------------------------------------------------------------------
// Supported policies: 63
//---------------------------------------------------------------------------

extern const basic::Info::ZonePolicy kZonePolicyAN;
extern const basic::Info::ZonePolicy kZonePolicyAQ;
extern const basic::Info::ZonePolicy kZonePolicyAS;
extern const basic::Info::ZonePolicy kZonePolicyAT;
extern const basic::Info::ZonePolicy kZonePolicyAV;
extern const basic::Info::ZonePolicy kZonePolicyAW;
extern const basic::Info::ZonePolicy kZonePolicyArmenia;
extern const basic::Info::ZonePolicy kZonePolicyAus;
extern const basic::Info::ZonePolicy kZonePolicyAzer;
extern const basic::Info::ZonePolicy kZonePolicyBarb;
extern const basic::Info::ZonePolicy kZonePolicyBelize;
extern const basic::Info::ZonePolicy kZonePolicyBrazil;
extern const basic::Info::ZonePolicy kZonePolicyCO;
extern const basic::Info::ZonePolicy kZonePolicyCR;
extern const basic::Info::ZonePolicy kZonePolicyCanada;
extern const basic::Info::ZonePolicy kZonePolicyChatham;
extern const basic::Info::ZonePolicy kZonePolicyChile;
extern const basic::Info::ZonePolicy kZonePolicyCook;
extern const basic::Info::ZonePolicy kZonePolicyCuba;
extern const basic::Info::ZonePolicy kZonePolicyDhaka;
extern const basic::Info::ZonePolicy kZonePolicyEU;
extern const basic::Info::ZonePolicy kZonePolicyEUAsia;
extern const basic::Info::ZonePolicy kZonePolicyEcuador;
extern const basic::Info::ZonePolicy kZonePolicyEire;
extern const basic::Info::ZonePolicy kZonePolicyFiji;
extern const basic::Info::ZonePolicy kZonePolicyGuat;
extern const basic::Info::ZonePolicy kZonePolicyHK;
extern const basic::Info::ZonePolicy kZonePolicyHaiti;
extern const basic::Info::ZonePolicy kZonePolicyHoliday;
extern const basic::Info::ZonePolicy kZonePolicyHond;
extern const basic::Info::ZonePolicy kZonePolicyIran;
extern const basic::Info::ZonePolicy kZonePolicyIraq;
extern const basic::Info::ZonePolicy kZonePolicyJapan;
extern const basic::Info::ZonePolicy kZonePolicyJordan;
extern const basic::Info::ZonePolicy kZonePolicyLH;
extern const basic::Info::ZonePolicy kZonePolicyLebanon;
extern const basic::Info::ZonePolicy kZonePolicyMacau;
extern const basic::Info::ZonePolicy kZonePolicyMauritius;
extern const basic::Info::ZonePolicy kZonePolicyMexico;
extern const basic::Info::ZonePolicy kZonePolicyMoldova;
extern const basic::Info::ZonePolicy kZonePolicyMoncton;
extern const basic::Info::ZonePolicy kZonePolicyMongol;
extern const basic::Info::ZonePolicy kZonePolicyNC;
extern const basic::Info::ZonePolicy kZonePolicyNZ;
extern const basic::Info::ZonePolicy kZonePolicyNamibia;
extern const basic::Info::ZonePolicy kZonePolicyNic;
extern const basic::Info::ZonePolicy kZonePolicyPRC;
extern const basic::Info::ZonePolicy kZonePolicyPakistan;
extern const basic::Info::ZonePolicy kZonePolicyPeru;
extern const basic::Info::ZonePolicy kZonePolicyPhil;
extern const basic::Info::ZonePolicy kZonePolicyROK;
extern const basic::Info::ZonePolicy kZonePolicyRussiaAsia;
extern const basic::Info::ZonePolicy kZonePolicySA;
extern const basic::Info::ZonePolicy kZonePolicySalv;
extern const basic::Info::ZonePolicy kZonePolicyTaiwan;
extern const basic::Info::ZonePolicy kZonePolicyThule;
extern const basic::Info::ZonePolicy kZonePolicyTonga;
extern const basic::Info::ZonePolicy kZonePolicyTunisia;
extern const basic::Info::ZonePolicy kZonePolicyUS;
extern const basic::Info::ZonePolicy kZonePolicyUruguay;
extern const basic::Info::ZonePolicy kZonePolicyVanuatu;
extern const basic::Info::ZonePolicy kZonePolicyWinn;
extern const basic::Info::ZonePolicy kZonePolicyZion;


//---------------------------------------------------------------------------
// Unsupported policies: 71
//---------------------------------------------------------------------------

// Albania {unused}
// Algeria {unused}
// Arg {unused}
// Austria {unused}
// Belgium {unused}
// Bermuda {unused}
// Bulg {unused}
// C-Eur {unused}
// CA {unused}
// Chicago {unused}
// Cyprus {unused}
// Czech {unused}
// DR {unused}
// Denver {unused}
// Detroit {unused}
// E-Eur {unused}
// E-EurAsia {unused}
// Edm {unused}
// Egypt {Found 2 transitions in year/month '2010-09'}
// EgyptAsia {unused}
// Falk {unused}
// Finland {unused}
// France {unused}
// GB-Eire {unused}
// Germany {unused}
// Greece {unused}
// Guam {unused}
// Halifax {unused}
// Hungary {unused}
// Indianapolis {unused}
// Italy {unused}
// Kyrgyz {unused}
// Latvia {unused}
// Libya {unused}
// Louisville {unused}
// Malta {unused}
// Marengo {unused}
// Menominee {unused}
// Morocco {unused}
// NBorneo {unused}
// NT_YK {unused}
// NYC {unused}
// Palestine {Found 2 transitions in year/month '2074-10'}
// Para {unused}
// Perry {unused}
// Pike {unused}
// Poland {unused}
// Port {unused}
// Pulaski {unused}
// Regina {unused}
// Romania {unused}
// Russia {unused}
// SanLuis {unused}
// Shang {unused}
// SovietZone {unused}
// Spain {unused}
// SpainAfrica {unused}
// StJohns {unused}
// Starke {unused}
// Sudan {unused}
// Swift {unused}
// Swiss {unused}
// Syria {unused}
// Toronto {unused}
// Troll {unused}
// Turkey {unused}
// Vanc {unused}
// Vincennes {unused}
// W-Eur {unused}
// WS {unused}
// Yukon {unused}


//---------------------------------------------------------------------------
// Notable zone policies: 5
//---------------------------------------------------------------------------

// Belize {LETTER 'CST' not single character}
// Eire {SAVE '-1:00' is a negative DST}
// LH {SAVE '0:30' different from 1:00}
// Moncton {AT '0:01' not multiple of :15 min}
// Namibia {
//   LETTER 'CAT' not single character,
//   LETTER 'WAT' not single character,
//   SAVE '-1:00' is a negative DST,
// }


}
}

#endif
