// 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/zonedbx/tzfiles
//     --output_dir /home/brian/src/AceTimeSuite/libraries/AceTimeLib/src/zonedbx
//     --tz_version 2025b
//     --action zonedb
//     --language arduino
//     --scope extended
//     --db_namespace zonedbx
//     --zi_namespace extended::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: 597 (340 zones, 257 links)
// Unsupported Zones: 0 (0 zones, 0 links)
//
// Requested Years: [2000,2200]
// Accurate Years: [2000,32767]
//
// Original Years:  [1844,2087]
// Generated Years: [1950,2087]
// Lower/Upper Truncated: [True,False]
//
// Estimator Years: [1950,2090]
// Max Buffer Size: 7
//
// Records:
//   Infos: 597
//   Eras: 647
//   Policies: 82
//   Rules: 731
//
// Memory (8-bits):
//   Context: 16
//   Rules: 6579
//   Policies: 246
//   Eras: 7117
//   Zones: 4420
//   Links: 3341
//   Registry: 1194
//   Formats: 231
//   Letters: 46
//   Fragments: 150
//   Names: 5660 (original: 9094)
//   TOTAL: 29000
//
// Memory (32-bits):
//   Context: 24
//   Rules: 8772
//   Policies: 656
//   Eras: 10352
//   Zones: 8160
//   Links: 6168
//   Registry: 2388
//   Formats: 231
//   Letters: 64
//   Fragments: 178
//   Names: 5660 (original: 9094)
//   TOTAL: 42653
//
// DO NOT EDIT

#ifndef ACE_TIME_ZONEDBX_ZONE_POLICIES_H
#define ACE_TIME_ZONEDBX_ZONE_POLICIES_H

#include <zoneinfo/infos.h>

namespace ace_time {
namespace zonedbx {

//---------------------------------------------------------------------------
// Supported policies: 82
//---------------------------------------------------------------------------

extern const extended::Info::ZonePolicy kZonePolicyAN;
extern const extended::Info::ZonePolicy kZonePolicyAQ;
extern const extended::Info::ZonePolicy kZonePolicyAS;
extern const extended::Info::ZonePolicy kZonePolicyAT;
extern const extended::Info::ZonePolicy kZonePolicyAV;
extern const extended::Info::ZonePolicy kZonePolicyAW;
extern const extended::Info::ZonePolicy kZonePolicyArg;
extern const extended::Info::ZonePolicy kZonePolicyArmenia;
extern const extended::Info::ZonePolicy kZonePolicyAus;
extern const extended::Info::ZonePolicy kZonePolicyAzer;
extern const extended::Info::ZonePolicy kZonePolicyBarb;
extern const extended::Info::ZonePolicy kZonePolicyBelize;
extern const extended::Info::ZonePolicy kZonePolicyBrazil;
extern const extended::Info::ZonePolicy kZonePolicyCO;
extern const extended::Info::ZonePolicy kZonePolicyCR;
extern const extended::Info::ZonePolicy kZonePolicyCanada;
extern const extended::Info::ZonePolicy kZonePolicyChatham;
extern const extended::Info::ZonePolicy kZonePolicyChile;
extern const extended::Info::ZonePolicy kZonePolicyCook;
extern const extended::Info::ZonePolicy kZonePolicyCuba;
extern const extended::Info::ZonePolicy kZonePolicyDhaka;
extern const extended::Info::ZonePolicy kZonePolicyE_EurAsia;
extern const extended::Info::ZonePolicy kZonePolicyEU;
extern const extended::Info::ZonePolicy kZonePolicyEUAsia;
extern const extended::Info::ZonePolicy kZonePolicyEcuador;
extern const extended::Info::ZonePolicy kZonePolicyEgypt;
extern const extended::Info::ZonePolicy kZonePolicyEire;
extern const extended::Info::ZonePolicy kZonePolicyFalk;
extern const extended::Info::ZonePolicy kZonePolicyFiji;
extern const extended::Info::ZonePolicy kZonePolicyGuam;
extern const extended::Info::ZonePolicy kZonePolicyGuat;
extern const extended::Info::ZonePolicy kZonePolicyHK;
extern const extended::Info::ZonePolicy kZonePolicyHaiti;
extern const extended::Info::ZonePolicy kZonePolicyHoliday;
extern const extended::Info::ZonePolicy kZonePolicyHond;
extern const extended::Info::ZonePolicy kZonePolicyIran;
extern const extended::Info::ZonePolicy kZonePolicyIraq;
extern const extended::Info::ZonePolicy kZonePolicyJapan;
extern const extended::Info::ZonePolicy kZonePolicyJordan;
extern const extended::Info::ZonePolicy kZonePolicyKyrgyz;
extern const extended::Info::ZonePolicy kZonePolicyLH;
extern const extended::Info::ZonePolicy kZonePolicyLebanon;
extern const extended::Info::ZonePolicy kZonePolicyLibya;
extern const extended::Info::ZonePolicy kZonePolicyMacau;
extern const extended::Info::ZonePolicy kZonePolicyMauritius;
extern const extended::Info::ZonePolicy kZonePolicyMexico;
extern const extended::Info::ZonePolicy kZonePolicyMoldova;
extern const extended::Info::ZonePolicy kZonePolicyMoncton;
extern const extended::Info::ZonePolicy kZonePolicyMongol;
extern const extended::Info::ZonePolicy kZonePolicyMorocco;
extern const extended::Info::ZonePolicy kZonePolicyNC;
extern const extended::Info::ZonePolicy kZonePolicyNT_YK;
extern const extended::Info::ZonePolicy kZonePolicyNZ;
extern const extended::Info::ZonePolicy kZonePolicyNamibia;
extern const extended::Info::ZonePolicy kZonePolicyNic;
extern const extended::Info::ZonePolicy kZonePolicyPRC;
extern const extended::Info::ZonePolicy kZonePolicyPakistan;
extern const extended::Info::ZonePolicy kZonePolicyPalestine;
extern const extended::Info::ZonePolicy kZonePolicyPara;
extern const extended::Info::ZonePolicy kZonePolicyPeru;
extern const extended::Info::ZonePolicy kZonePolicyPhil;
extern const extended::Info::ZonePolicy kZonePolicyROK;
extern const extended::Info::ZonePolicy kZonePolicyRussia;
extern const extended::Info::ZonePolicy kZonePolicyRussiaAsia;
extern const extended::Info::ZonePolicy kZonePolicySA;
extern const extended::Info::ZonePolicy kZonePolicySalv;
extern const extended::Info::ZonePolicy kZonePolicySanLuis;
extern const extended::Info::ZonePolicy kZonePolicyStJohns;
extern const extended::Info::ZonePolicy kZonePolicySudan;
extern const extended::Info::ZonePolicy kZonePolicySyria;
extern const extended::Info::ZonePolicy kZonePolicyTaiwan;
extern const extended::Info::ZonePolicy kZonePolicyThule;
extern const extended::Info::ZonePolicy kZonePolicyTonga;
extern const extended::Info::ZonePolicy kZonePolicyTroll;
extern const extended::Info::ZonePolicy kZonePolicyTunisia;
extern const extended::Info::ZonePolicy kZonePolicyTurkey;
extern const extended::Info::ZonePolicy kZonePolicyUS;
extern const extended::Info::ZonePolicy kZonePolicyUruguay;
extern const extended::Info::ZonePolicy kZonePolicyVanuatu;
extern const extended::Info::ZonePolicy kZonePolicyWS;
extern const extended::Info::ZonePolicy kZonePolicyWinn;
extern const extended::Info::ZonePolicy kZonePolicyZion;


//---------------------------------------------------------------------------
// Unsupported policies: 52
//---------------------------------------------------------------------------

// Albania {unused}
// Algeria {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}
// Edm {unused}
// EgyptAsia {unused}
// Finland {unused}
// France {unused}
// GB-Eire {unused}
// Germany {unused}
// Greece {unused}
// Halifax {unused}
// Hungary {unused}
// Indianapolis {unused}
// Italy {unused}
// Latvia {unused}
// Louisville {unused}
// Malta {unused}
// Marengo {unused}
// Menominee {unused}
// NBorneo {unused}
// NYC {unused}
// Perry {unused}
// Pike {unused}
// Poland {unused}
// Port {unused}
// Pulaski {unused}
// Regina {unused}
// Romania {unused}
// Shang {unused}
// SovietZone {unused}
// Spain {unused}
// SpainAfrica {unused}
// Starke {unused}
// Swift {unused}
// Swiss {unused}
// Toronto {unused}
// Vanc {unused}
// Vincennes {unused}
// W-Eur {unused}
// Yukon {unused}


//---------------------------------------------------------------------------
// Notable zone policies: 9
//---------------------------------------------------------------------------

// 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}
// Morocco {SAVE '-1:00' is a negative DST}
// Namibia {
//   LETTER 'CAT' not single character,
//   LETTER 'WAT' not single character,
//   SAVE '-1:00' is a negative DST,
// }
// Palestine {AT '0:01' not multiple of :15 min}
// StJohns {
//   AT '0:01' not multiple of :15 min,
//   LETTER 'DD' not single character,
//   SAVE '2:00' different from 1:00,
// }
// Troll {
//   LETTER '+00' not single character,
//   LETTER '+02' not single character,
//   SAVE '2:00' different from 1:00,
// }


}
}

#endif
