From 0f582ecc3add02132f80bbaa4582a0287aca500f Mon Sep 17 00:00:00 2001 From: Rodrigo Osorio Date: Mon, 9 Nov 2015 07:54:02 +0100 Subject: [PATCH 1/8] Add ICAO registration country --- country_list.h | 207 +++++++++++++++++++++++++++++++++++++++++++++++++ dump1090.c | 30 +++++-- gmap.html | 1 + 3 files changed, 232 insertions(+), 6 deletions(-) create mode 100644 country_list.h diff --git a/country_list.h b/country_list.h new file mode 100644 index 000000000..cd500ac68 --- /dev/null +++ b/country_list.h @@ -0,0 +1,207 @@ +enum blockSize { + BLK_1024 = 1024, + BLK_4096 = 4096, + BLK_32768 = 32768, + BLK_262144 = 262144, + BLK_1048576= 1048576 +}; + + +struct countryCodes { + char *code; + uint32_t len; + uint32_t icao_addr; + uint32_t icao_mask; +} countryList[] = { +{"ZW",BLK_1024,0x4000,0xfffc00}, +{"BW",BLK_1024,0x30000,0xfffc00}, +{"KM",BLK_1024,0x35000,0xfffc00}, +{"GW",BLK_1024,0x48000,0xfffc00}, +{"LS",BLK_1024,0x4a000,0xfffc00}, +{"MV",BLK_1024,0x5a000,0xfffc00}, +{"MR",BLK_1024,0x5e000,0xfffc00}, +{"MU",BLK_1024,0x60000,0xfffc00}, +{"QA",BLK_1024,0x6a000,0xfffc00}, +{"SC",BLK_1024,0x74000,0xfffc00}, +{"SL",BLK_1024,0x76000,0xfffc00}, +{"SZ",BLK_1024,0x7a000,0xfffc00}, +{"BJ",BLK_1024,0x94000,0xfffc00}, +{"CV",BLK_1024,0x96000,0xfffc00}, +{"DJ",BLK_1024,0x98000,0xfffc00}, +{"ST",BLK_1024,0x9e000,0xfffc00}, +{"BB",BLK_1024,0xaa000,0xfffc00}, +{"BZ",BLK_1024,0xab000,0xfffc00}, +{"VC",BLK_1024,0xbc000,0xfffc00}, +{"AG",BLK_1024,0xca000,0xfffc00}, +{"GD",BLK_1024,0xcc000,0xfffc00}, +{"NA",BLK_1024,0x201000,0xfffc00}, +{"ER",BLK_1024,0x202000,0xfffc00}, +{"CY",BLK_1024,0x4c8000,0xfffc00}, +{"LU",BLK_1024,0x4d0000,0xfffc00}, +{"MT",BLK_1024,0x4d2000,0xfffc00}, +{"MC",BLK_1024,0x4d4000,0xfffc00}, +{"SM",BLK_1024,0x500000,0xfffc00}, +{"AL",BLK_1024,0x501000,0xfffc00}, +{"HR",BLK_1024,0x501c00,0xfffc00}, +{"LV",BLK_1024,0x502c00,0xfffc00}, +{"LT",BLK_1024,0x503c00,0xfffc00}, +{"MD",BLK_1024,0x504c00,0xfffc00}, +{"SK",BLK_1024,0x505c00,0xfffc00}, +{"SI",BLK_1024,0x506c00,0xfffc00}, +{"UZ",BLK_1024,0x507c00,0xfffc00}, +{"BY",BLK_1024,0x510000,0xfffc00}, +{"EE",BLK_1024,0x511000,0xfffc00}, +{"MK",BLK_1024,0x512000,0xfffc00}, +{"BA",BLK_1024,0x513000,0xfffc00}, +{"GE",BLK_1024,0x514000,0xfffc00}, +{"TJ",BLK_1024,0x515000,0xfffc00}, +{"AM",BLK_1024,0x600000,0xfffc00}, +{"AZ",BLK_1024,0x600800,0xfffc00}, +{"KG",BLK_1024,0x601000,0xfffc00}, +{"TM",BLK_1024,0x601800,0xfffc00}, +{"BT",BLK_1024,0x680000,0xfffc00}, +{"FM",BLK_1024,0x681000,0xfffc00}, +{"MN",BLK_1024,0x682000,0xfffc00}, +{"KZ",BLK_1024,0x683000,0xfffc00}, +{"PW",BLK_1024,0x684000,0xfffc00}, +{"OM",BLK_1024,0x70c000,0xfffc00}, +{"BN",BLK_1024,0x895000,0xfffc00}, +{"SB",BLK_1024,0x897000,0xfffc00}, +{"00",BLK_1024,0x899000,0xfffc00}, +{"MH",BLK_1024,0x900000,0xfffc00}, +{"CK",BLK_1024,0x901000,0xfffc00}, +{"WS",BLK_1024,0x902000,0xfffc00}, +{"NR",BLK_1024,0xc8a000,0xfffc00}, +{"LC",BLK_1024,0xc8c000,0xfffc00}, +{"TO",BLK_1024,0xc8d000,0xfffc00}, +{"KI",BLK_1024,0xc8e000,0xfffc00}, +{"VU",BLK_1024,0xc90000,0xfffc00}, +{"00",BLK_1024,0xf09000,0xfffc00}, +{"MZ",BLK_4096,0x6000,0xfff000}, +{"BI",BLK_4096,0x32000,0xfff000}, +{"CM",BLK_4096,0x34000,0xfff000}, +{"CG",BLK_4096,0x36000,0xfff000}, +{"CI",BLK_4096,0x38000,0xfff000}, +{"GA",BLK_4096,0x3e000,0xfff000}, +{"ET",BLK_4096,0x40000,0xfff000}, +{"GQ",BLK_4096,0x42000,0xfff000}, +{"GH",BLK_4096,0x44000,0xfff000}, +{"GN",BLK_4096,0x46000,0xfff000}, +{"KE",BLK_4096,0x4c000,0xfff000}, +{"LR",BLK_4096,0x50000,0xfff000}, +{"MG",BLK_4096,0x54000,0xfff000}, +{"MW",BLK_4096,0x58000,0xfff000}, +{"ML",BLK_4096,0x5c000,0xfff000}, +{"NE",BLK_4096,0x62000,0xfff000}, +{"NG",BLK_4096,0x64000,0xfff000}, +{"UG",BLK_4096,0x68000,0xfff000}, +{"CF",BLK_4096,0x6c000,0xfff000}, +{"RW",BLK_4096,0x6e000,0xfff000}, +{"SN",BLK_4096,0x70000,0xfff000}, +{"SO",BLK_4096,0x78000,0xfff000}, +{"SD",BLK_4096,0x7c000,0xfff000}, +{"TZ",BLK_4096,0x80000,0xfff000}, +{"TD",BLK_4096,0x84000,0xfff000}, +{"TG",BLK_4096,0x88000,0xfff000}, +{"ZM",BLK_4096,0x8a000,0xfff000}, +{"CD",BLK_4096,0x8c000,0xfff000}, +{"AO",BLK_4096,0x90000,0xfff000}, +{"GM",BLK_4096,0x9a000,0xfff000}, +{"BF",BLK_4096,0x9c000,0xfff000}, +{"BS",BLK_4096,0xa8000,0xfff000}, +{"CO",BLK_4096,0xac000,0xfff000}, +{"CR",BLK_4096,0xae000,0xfff000}, +{"CU",BLK_4096,0xb0000,0xfff000}, +{"SV",BLK_4096,0xb2000,0xfff000}, +{"GT",BLK_4096,0xb4000,0xfff000}, +{"GY",BLK_4096,0xb6000,0xfff000}, +{"HT",BLK_4096,0xb8000,0xfff000}, +{"HN",BLK_4096,0xba000,0xfff000}, +{"JM",BLK_4096,0xbe000,0xfff000}, +{"NI",BLK_4096,0xc0000,0xfff000}, +{"PA",BLK_4096,0xc2000,0xfff000}, +{"DO",BLK_4096,0xc4000,0xfff000}, +{"TT",BLK_4096,0xc6000,0xfff000}, +{"SR",BLK_4096,0xc8000,0xfff000}, +{"IE",BLK_4096,0x4ca000,0xfff000}, +{"IS",BLK_4096,0x4cc000,0xfff000}, +{"AF",BLK_4096,0x700000,0xfff000}, +{"BD",BLK_4096,0x702000,0xfff000}, +{"MM",BLK_4096,0x704000,0xfff000}, +{"KW",BLK_4096,0x706000,0xfff000}, +{"LA",BLK_4096,0x708000,0xfff000}, +{"NP",BLK_4096,0x70a000,0xfff000}, +{"KH",BLK_4096,0x70e000,0xfff000}, +{"YE",BLK_4096,0x890000,0xfff000}, +{"BH",BLK_4096,0x894000,0xfff000}, +{"AE",BLK_4096,0x896000,0xfff000}, +{"PG",BLK_4096,0x898000,0xfff000}, +{"FJ",BLK_4096,0xc88000,0xfff000}, +{"CL",BLK_4096,0xe80000,0xfff000}, +{"EC",BLK_4096,0xe84000,0xfff000}, +{"PY",BLK_4096,0xe88000,0xfff000}, +{"PE",BLK_4096,0xe8c000,0xfff000}, +{"UY",BLK_4096,0xe90000,0xfff000}, +{"BO",BLK_4096,0xe94000,0xfff000}, +{"ZA",BLK_32768,0x8000,0xff8000}, +{"EG",BLK_32768,0x10000,0xff8000}, +{"LY",BLK_32768,0x18000,0xff8000}, +{"MA",BLK_32768,0x20000,0xff8000}, +{"TN",BLK_32768,0x28000,0xff8000}, +{"DZ",BLK_32768,0xa0000,0xff8000}, +{"MX",BLK_32768,0xd0000,0xff8000}, +{"VE",BLK_32768,0xd8000,0xff8000}, +{"AT",BLK_32768,0x440000,0xff8000}, +{"BE",BLK_32768,0x448000,0xff8000}, +{"BG",BLK_32768,0x450000,0xff8000}, +{"DK",BLK_32768,0x458000,0xff8000}, +{"FI",BLK_32768,0x460000,0xff8000}, +{"GR",BLK_32768,0x468000,0xff8000}, +{"HU",BLK_32768,0x470000,0xff8000}, +{"NO",BLK_32768,0x478000,0xff8000}, +{"NL",BLK_32768,0x480000,0xff8000}, +{"PL",BLK_32768,0x488000,0xff8000}, +{"PT",BLK_32768,0x490000,0xff8000}, +{"CZ",BLK_32768,0x498000,0xff8000}, +{"RO",BLK_32768,0x4a0000,0xff8000}, +{"SE",BLK_32768,0x4a8000,0xff8000}, +{"CH",BLK_32768,0x4b0000,0xff8000}, +{"TR",BLK_32768,0x4b8000,0xff8000}, +{"YU",BLK_32768,0x4c0000,0xff8000}, +{"UA",BLK_32768,0x508000,0xff8000}, +{"SA",BLK_32768,0x710000,0xff8000}, +{"KR",BLK_32768,0x718000,0xff8000}, +{"KP",BLK_32768,0x720000,0xff8000}, +{"IQ",BLK_32768,0x728000,0xff8000}, +{"IR",BLK_32768,0x730000,0xff8000}, +{"IL",BLK_32768,0x738000,0xff8000}, +{"JO",BLK_32768,0x740000,0xff8000}, +{"LB",BLK_32768,0x748000,0xff8000}, +{"MY",BLK_32768,0x750000,0xff8000}, +{"PH",BLK_32768,0x758000,0xff8000}, +{"PK",BLK_32768,0x760000,0xff8000}, +{"SG",BLK_32768,0x768000,0xff8000}, +{"LK",BLK_32768,0x770000,0xff8000}, +{"SY",BLK_32768,0x778000,0xff8000}, +{"TH",BLK_32768,0x880000,0xff8000}, +{"VN",BLK_32768,0x888000,0xff8000}, +{"ID",BLK_32768,0x8a0000,0xff8000}, +{"NZ",BLK_32768,0xc80000,0xff8000}, +{"00",BLK_32768,0xf00000,0xff8000}, +{"IT",BLK_262144,0x300000,0xfc0000}, +{"ES",BLK_262144,0x340000,0xfc0000}, +{"FR",BLK_262144,0x380000,0xfc0000}, +{"DE",BLK_262144,0x3c0000,0xfc0000}, +{"GB",BLK_262144,0x400000,0xfc0000}, +{"CN",BLK_262144,0x780000,0xfc0000}, +{"AU",BLK_262144,0x7c0000,0xfc0000}, +{"IN",BLK_262144,0x800000,0xfc0000}, +{"JP",BLK_262144,0x840000,0xfc0000}, +{"CA",BLK_262144,0xc00000,0xfc0000}, +{"AR",BLK_262144,0xe00000,0xfc0000}, +{"BR",BLK_262144,0xe40000,0xfc0000}, +{"RU",BLK_1048576,0x100000,0xf00000}, +{"US",BLK_1048576,0xa00000,0xf00000}, +}; + +#define CTALEN() (sizeof(countryList) / sizeof(struct countryCodes)) diff --git a/dump1090.c b/dump1090.c index 7fa5327a3..643ae895c 100644 --- a/dump1090.c +++ b/dump1090.c @@ -45,6 +45,7 @@ #include #include "rtl-sdr.h" #include "anet.h" +#include "country_list.h" #define MODES_DEFAULT_RATE 2000000 #define MODES_DEFAULT_FREQ 1090000000 @@ -120,6 +121,7 @@ struct aircraft { double lat, lon; /* Coordinated obtained from CPR encoded data. */ long long odd_cprtime, even_cprtime; struct aircraft *next; /* Next aircraft in our linked list. */ + struct countryCodes * reg; /* aircraft registretion country */ }; /* Program global state. */ @@ -1107,6 +1109,17 @@ void decodeModesMessage(struct modesMessage *mm, unsigned char *msg) { mm->phase_corrected = 0; /* Set to 1 by the caller if needed. */ } +/* Extract the country code from the ICAO adress. */ +struct countryCodes * icaoToCountyCode(uint32_t addr) +{ + unsigned int i; + for (i=0; i < CTALEN(); i++) { + if((addr & countryList[i].icao_mask) == countryList[i].icao_addr) + return &countryList[i]; + } + return NULL; +} + /* This function gets a decoded Mode S Message and prints it on the screen * in a human readable format. */ void displayModesMessage(struct modesMessage *mm) { @@ -1582,6 +1595,7 @@ struct aircraft *interactiveCreateAircraft(uint32_t addr) { a->lon = 0; a->seen = time(NULL); a->messages = 0; + a->reg = icaoToCountyCode(addr); a->next = NULL; return a; } @@ -1807,8 +1821,8 @@ void interactiveShowData(void) { printf("\x1b[H\x1b[2J"); /* Clear the screen */ printf( -"Hex Flight Altitude Speed Lat Lon Track Messages Seen %s\n" -"--------------------------------------------------------------------------------\n", +"Hex Reg Flight Altitude Speed Lat Lon Track Messages Seen %s\n" +"-----------------------------------------------------------------------------------\n", progress); while(a && count < Modes.interactive_rows) { @@ -1820,8 +1834,10 @@ void interactiveShowData(void) { speed *= 1.852; } - printf("%-6s %-8s %-9d %-7d %-7.03f %-7.03f %-3d %-9ld %d sec\n", - a->hexaddr, a->flight, altitude, speed, + printf("%-6s %-3s %-8s %-9d %-7d %-7.03f %-7.03f %-3d %-9ld %d sec\n", + a->hexaddr, + a->reg?a->reg->code:" ", + a->flight, altitude, speed, a->lat, a->lon, a->track, a->messages, (int)(now - a->seen)); a = a->next; @@ -2152,10 +2168,12 @@ char *aircraftsToJson(int *len) { if (a->lat != 0 && a->lon != 0) { l = snprintf(p,buflen, - "{\"hex\":\"%s\", \"flight\":\"%s\", \"lat\":%f, " + "{\"hex\":\"%s\", \"reg\":\"%s\",\"flight\":\"%s\", \"lat\":%f, " "\"lon\":%f, \"altitude\":%d, \"track\":%d, " "\"speed\":%d},\n", - a->hexaddr, a->flight, a->lat, a->lon, a->altitude, a->track, + a->hexaddr, + a->reg?a->reg->code:"", + a->flight, a->lat, a->lon, a->altitude, a->track, a->speed); p += l; buflen -= l; /* Resize if needed. */ diff --git a/gmap.html b/gmap.html index b39a30a22..2434a03d9 100644 --- a/gmap.html +++ b/gmap.html @@ -93,6 +93,7 @@ html += 'Altitude: '+p.altitude+' feet
'; html += 'Speed: '+p.speed+' knots
'; html += 'Coordinates: '+p.lat+', '+p.lon+'
'; + html += 'Registration: '+p.reg+'
'; i.innerHTML = html; } From 8b38f1e5f12122f17612fd591f297e48ef1d4045 Mon Sep 17 00:00:00 2001 From: Don Willingham Date: Sat, 26 Mar 2016 20:50:23 -0400 Subject: [PATCH 2/8] Show flag based on ICAO registration code. Use Flagfox Flag Icon Set, see FLAGS-LICENSE for Creative Commons Attribution-ShareAlike 4.0 International License. --- dump1090.c | 70 +++++++++++++++++++++++++++++--------------- flags/FLAGS-LICENSE | 32 ++++++++++++++++++++ flags/ad.png | Bin 0 -> 255 bytes flags/ae.png | Bin 0 -> 137 bytes flags/af.png | Bin 0 -> 257 bytes flags/ag.png | Bin 0 -> 318 bytes flags/ai.png | Bin 0 -> 332 bytes flags/al.png | Bin 0 -> 274 bytes flags/am.png | Bin 0 -> 114 bytes flags/ao.png | Bin 0 -> 260 bytes flags/aq.png | Bin 0 -> 291 bytes flags/ar.png | Bin 0 -> 195 bytes flags/as.png | Bin 0 -> 312 bytes flags/at.png | Bin 0 -> 102 bytes flags/au.png | Bin 0 -> 350 bytes flags/aw.png | Bin 0 -> 184 bytes flags/ax.png | Bin 0 -> 157 bytes flags/az.png | Bin 0 -> 213 bytes flags/ba.png | Bin 0 -> 193 bytes flags/bb.png | Bin 0 -> 229 bytes flags/bd.png | Bin 0 -> 260 bytes flags/be.png | Bin 0 -> 95 bytes flags/bf.png | Bin 0 -> 165 bytes flags/bg.png | Bin 0 -> 117 bytes flags/bh.png | Bin 0 -> 216 bytes flags/bi.png | Bin 0 -> 353 bytes flags/bj.png | Bin 0 -> 108 bytes flags/bl.png | Bin 0 -> 96 bytes flags/bm.png | Bin 0 -> 337 bytes flags/bn.png | Bin 0 -> 371 bytes flags/bo.png | Bin 0 -> 117 bytes flags/bq.png | Bin 0 -> 113 bytes flags/br.png | Bin 0 -> 305 bytes flags/bs.png | Bin 0 -> 222 bytes flags/bt.png | Bin 0 -> 317 bytes flags/bw.png | Bin 0 -> 102 bytes flags/by.png | Bin 0 -> 255 bytes flags/bz.png | Bin 0 -> 328 bytes flags/ca.png | Bin 0 -> 286 bytes flags/cc.png | Bin 0 -> 338 bytes flags/cd.png | Bin 0 -> 334 bytes flags/cf.png | Bin 0 -> 162 bytes flags/cg.png | Bin 0 -> 152 bytes flags/ch.png | Bin 0 -> 142 bytes flags/ci.png | Bin 0 -> 96 bytes flags/ck.png | Bin 0 -> 367 bytes flags/cl.png | Bin 0 -> 142 bytes flags/cm.png | Bin 0 -> 150 bytes flags/cn.png | Bin 0 -> 223 bytes flags/co.png | Bin 0 -> 98 bytes flags/cr.png | Bin 0 -> 125 bytes flags/cu.png | Bin 0 -> 268 bytes flags/cv.png | Bin 0 -> 261 bytes flags/cw.png | Bin 0 -> 189 bytes flags/cx.png | Bin 0 -> 354 bytes flags/cy.png | Bin 0 -> 282 bytes flags/cz.png | Bin 0 -> 176 bytes flags/de.png | Bin 0 -> 117 bytes flags/dj.png | Bin 0 -> 271 bytes flags/dk.png | Bin 0 -> 130 bytes flags/dm.png | Bin 0 -> 270 bytes flags/do.png | Bin 0 -> 205 bytes flags/dz.png | Bin 0 -> 239 bytes flags/ec.png | Bin 0 -> 257 bytes flags/ee.png | Bin 0 -> 117 bytes flags/eg.png | Bin 0 -> 203 bytes flags/eh.png | Bin 0 -> 283 bytes flags/er.png | Bin 0 -> 312 bytes flags/es.png | Bin 0 -> 237 bytes flags/et.png | Bin 0 -> 310 bytes flags/eu.png | Bin 0 -> 289 bytes flags/fi.png | Bin 0 -> 130 bytes flags/fj.png | Bin 0 -> 343 bytes flags/fk.png | Bin 0 -> 342 bytes flags/fm.png | Bin 0 -> 219 bytes flags/fo.png | Bin 0 -> 111 bytes flags/fr.png | Bin 0 -> 96 bytes flags/ga.png | Bin 0 -> 117 bytes flags/gb.png | Bin 0 -> 286 bytes flags/gd.png | Bin 0 -> 341 bytes flags/ge.png | Bin 0 -> 242 bytes flags/gf.png | Bin 0 -> 238 bytes flags/gg.png | Bin 0 -> 151 bytes flags/gh.png | Bin 0 -> 175 bytes flags/gi.png | Bin 0 -> 298 bytes flags/gl.png | Bin 0 -> 271 bytes flags/gm.png | Bin 0 -> 126 bytes flags/gn.png | Bin 0 -> 96 bytes flags/gp.png | Bin 0 -> 351 bytes flags/gq.png | Bin 0 -> 273 bytes flags/gr.png | Bin 0 -> 221 bytes flags/gs.png | Bin 0 -> 362 bytes flags/gt.png | Bin 0 -> 236 bytes flags/gu.png | Bin 0 -> 260 bytes flags/gw.png | Bin 0 -> 203 bytes flags/gy.png | Bin 0 -> 323 bytes flags/hk.png | Bin 0 -> 262 bytes flags/hn.png | Bin 0 -> 200 bytes flags/hr.png | Bin 0 -> 286 bytes flags/ht.png | Bin 0 -> 202 bytes flags/hu.png | Bin 0 -> 114 bytes flags/id.png | Bin 0 -> 92 bytes flags/ie.png | Bin 0 -> 120 bytes flags/il.png | Bin 0 -> 156 bytes flags/im.png | Bin 0 -> 268 bytes flags/in.png | Bin 0 -> 202 bytes flags/io.png | Bin 0 -> 508 bytes flags/iq.png | Bin 0 -> 249 bytes flags/ir.png | Bin 0 -> 297 bytes flags/is.png | Bin 0 -> 145 bytes flags/it.png | Bin 0 -> 96 bytes flags/je.png | Bin 0 -> 372 bytes flags/jm.png | Bin 0 -> 173 bytes flags/jo.png | Bin 0 -> 223 bytes flags/jp.png | Bin 0 -> 215 bytes flags/ke.png | Bin 0 -> 269 bytes flags/kg.png | Bin 0 -> 278 bytes flags/kh.png | Bin 0 -> 264 bytes flags/ki.png | Bin 0 -> 402 bytes flags/km.png | Bin 0 -> 291 bytes flags/kn.png | Bin 0 -> 294 bytes flags/kp.png | Bin 0 -> 269 bytes flags/kr.png | Bin 0 -> 334 bytes flags/kw.png | Bin 0 -> 205 bytes flags/ky.png | Bin 0 -> 341 bytes flags/kz.png | Bin 0 -> 300 bytes flags/la.png | Bin 0 -> 173 bytes flags/lb.png | Bin 0 -> 252 bytes flags/lc.png | Bin 0 -> 282 bytes flags/li.png | Bin 0 -> 227 bytes flags/lk.png | Bin 0 -> 348 bytes flags/lr.png | Bin 0 -> 247 bytes flags/ls.png | Bin 0 -> 218 bytes flags/lt.png | Bin 0 -> 117 bytes flags/lu.png | Bin 0 -> 117 bytes flags/lv.png | Bin 0 -> 102 bytes flags/ly.png | Bin 0 -> 159 bytes flags/ma.png | Bin 0 -> 145 bytes flags/mc.png | Bin 0 -> 92 bytes flags/md.png | Bin 0 -> 264 bytes flags/me.png | Bin 0 -> 294 bytes flags/mf.png | Bin 0 -> 96 bytes flags/mg.png | Bin 0 -> 98 bytes flags/mh.png | Bin 0 -> 344 bytes flags/mk.png | Bin 0 -> 340 bytes flags/ml.png | Bin 0 -> 96 bytes flags/mm.png | Bin 0 -> 274 bytes flags/mn.png | Bin 0 -> 266 bytes flags/mo.png | Bin 0 -> 268 bytes flags/mp.png | Bin 0 -> 362 bytes flags/mq.png | Bin 0 -> 338 bytes flags/mr.png | Bin 0 -> 287 bytes flags/ms.png | Bin 0 -> 331 bytes flags/mt.png | Bin 0 -> 194 bytes flags/mu.png | Bin 0 -> 106 bytes flags/mv.png | Bin 0 -> 178 bytes flags/mw.png | Bin 0 -> 259 bytes flags/mx.png | Bin 0 -> 252 bytes flags/my.png | Bin 0 -> 293 bytes flags/mz.png | Bin 0 -> 268 bytes flags/na.png | Bin 0 -> 284 bytes flags/nc.png | Bin 0 -> 298 bytes flags/ne.png | Bin 0 -> 179 bytes flags/nf.png | Bin 0 -> 292 bytes flags/ng.png | Bin 0 -> 99 bytes flags/ni.png | Bin 0 -> 214 bytes flags/nl.png | Bin 0 -> 113 bytes flags/no.png | Bin 0 -> 111 bytes flags/np.png | Bin 0 -> 316 bytes flags/nr.png | Bin 0 -> 167 bytes flags/nu.png | Bin 0 -> 290 bytes flags/nz.png | Bin 0 -> 323 bytes flags/om.png | Bin 0 -> 233 bytes flags/pa.png | Bin 0 -> 202 bytes flags/pe.png | Bin 0 -> 88 bytes flags/pf.png | Bin 0 -> 257 bytes flags/pg.png | Bin 0 -> 318 bytes flags/ph.png | Bin 0 -> 303 bytes flags/pk.png | Bin 0 -> 267 bytes flags/pl.png | Bin 0 -> 93 bytes flags/pm.png | Bin 0 -> 441 bytes flags/pn.png | Bin 0 -> 366 bytes flags/pr.png | Bin 0 -> 271 bytes flags/ps.png | Bin 0 -> 242 bytes flags/pt.png | Bin 0 -> 260 bytes flags/pw.png | Bin 0 -> 244 bytes flags/py.png | Bin 0 -> 204 bytes flags/qa.png | Bin 0 -> 225 bytes flags/re.png | Bin 0 -> 96 bytes flags/ro.png | Bin 0 -> 96 bytes flags/rs.png | Bin 0 -> 289 bytes flags/ru.png | Bin 0 -> 113 bytes flags/rw.png | Bin 0 -> 212 bytes flags/sa.png | Bin 0 -> 270 bytes flags/sb.png | Bin 0 -> 318 bytes flags/sc.png | Bin 0 -> 307 bytes flags/sd.png | Bin 0 -> 242 bytes flags/se.png | Bin 0 -> 126 bytes flags/sg.png | Bin 0 -> 235 bytes flags/sh.png | Bin 0 -> 323 bytes flags/si.png | Bin 0 -> 210 bytes flags/sj.png | Bin 0 -> 111 bytes flags/sk.png | Bin 0 -> 280 bytes flags/sl.png | Bin 0 -> 113 bytes flags/sm.png | Bin 0 -> 273 bytes flags/sn.png | Bin 0 -> 182 bytes flags/so.png | Bin 0 -> 218 bytes flags/sr.png | Bin 0 -> 175 bytes flags/ss.png | Bin 0 -> 283 bytes flags/st.png | Bin 0 -> 225 bytes flags/sv.png | Bin 0 -> 235 bytes flags/sx.png | Bin 0 -> 316 bytes flags/sy.png | Bin 0 -> 195 bytes flags/sz.png | Bin 0 -> 298 bytes flags/tc.png | Bin 0 -> 312 bytes flags/td.png | Bin 0 -> 96 bytes flags/tf.png | Bin 0 -> 276 bytes flags/tg.png | Bin 0 -> 259 bytes flags/th.png | Bin 0 -> 121 bytes flags/tj.png | Bin 0 -> 251 bytes flags/tk.png | Bin 0 -> 334 bytes flags/tl.png | Bin 0 -> 266 bytes flags/tm.png | Bin 0 -> 302 bytes flags/tn.png | Bin 0 -> 247 bytes flags/to.png | Bin 0 -> 116 bytes flags/tr.png | Bin 0 -> 247 bytes flags/tt.png | Bin 0 -> 314 bytes flags/tv.png | Bin 0 -> 354 bytes flags/tw.png | Bin 0 -> 145 bytes flags/tz.png | Bin 0 -> 203 bytes flags/ua.png | Bin 0 -> 92 bytes flags/ug.png | Bin 0 -> 251 bytes flags/um.png | Bin 0 -> 231 bytes flags/us.png | Bin 0 -> 231 bytes flags/uy.png | Bin 0 -> 265 bytes flags/uz.png | Bin 0 -> 253 bytes flags/va.png | Bin 0 -> 246 bytes flags/vc.png | Bin 0 -> 172 bytes flags/ve.png | Bin 0 -> 220 bytes flags/vg.png | Bin 0 -> 348 bytes flags/vi.png | Bin 0 -> 373 bytes flags/vn.png | Bin 0 -> 219 bytes flags/vu.png | Bin 0 -> 297 bytes flags/wf.png | Bin 0 -> 209 bytes flags/ws.png | Bin 0 -> 177 bytes flags/ye.png | Bin 0 -> 113 bytes flags/yt.png | Bin 0 -> 96 bytes flags/za.png | Bin 0 -> 286 bytes flags/zm.png | Bin 0 -> 238 bytes flags/zw.png | Bin 0 -> 295 bytes gmap.html | 3 +- 251 files changed, 81 insertions(+), 24 deletions(-) create mode 100644 flags/FLAGS-LICENSE create mode 100644 flags/ad.png create mode 100644 flags/ae.png create mode 100644 flags/af.png create mode 100644 flags/ag.png create mode 100644 flags/ai.png create mode 100644 flags/al.png create mode 100644 flags/am.png create mode 100644 flags/ao.png create mode 100644 flags/aq.png create mode 100644 flags/ar.png create mode 100644 flags/as.png create mode 100644 flags/at.png create mode 100644 flags/au.png create mode 100644 flags/aw.png create mode 100644 flags/ax.png create mode 100644 flags/az.png create mode 100644 flags/ba.png create mode 100644 flags/bb.png create mode 100644 flags/bd.png create mode 100644 flags/be.png create mode 100644 flags/bf.png create mode 100644 flags/bg.png create mode 100644 flags/bh.png create mode 100644 flags/bi.png create mode 100644 flags/bj.png create mode 100644 flags/bl.png create mode 100644 flags/bm.png create mode 100644 flags/bn.png create mode 100644 flags/bo.png create mode 100644 flags/bq.png create mode 100644 flags/br.png create mode 100644 flags/bs.png create mode 100644 flags/bt.png create mode 100644 flags/bw.png create mode 100644 flags/by.png create mode 100644 flags/bz.png create mode 100644 flags/ca.png create mode 100644 flags/cc.png create mode 100644 flags/cd.png create mode 100644 flags/cf.png create mode 100644 flags/cg.png create mode 100644 flags/ch.png create mode 100644 flags/ci.png create mode 100644 flags/ck.png create mode 100644 flags/cl.png create mode 100644 flags/cm.png create mode 100644 flags/cn.png create mode 100644 flags/co.png create mode 100644 flags/cr.png create mode 100644 flags/cu.png create mode 100644 flags/cv.png create mode 100644 flags/cw.png create mode 100644 flags/cx.png create mode 100644 flags/cy.png create mode 100644 flags/cz.png create mode 100644 flags/de.png create mode 100644 flags/dj.png create mode 100644 flags/dk.png create mode 100644 flags/dm.png create mode 100644 flags/do.png create mode 100644 flags/dz.png create mode 100644 flags/ec.png create mode 100644 flags/ee.png create mode 100644 flags/eg.png create mode 100644 flags/eh.png create mode 100644 flags/er.png create mode 100644 flags/es.png create mode 100644 flags/et.png create mode 100644 flags/eu.png create mode 100644 flags/fi.png create mode 100644 flags/fj.png create mode 100644 flags/fk.png create mode 100644 flags/fm.png create mode 100644 flags/fo.png create mode 100644 flags/fr.png create mode 100644 flags/ga.png create mode 100644 flags/gb.png create mode 100644 flags/gd.png create mode 100644 flags/ge.png create mode 100644 flags/gf.png create mode 100644 flags/gg.png create mode 100644 flags/gh.png create mode 100644 flags/gi.png create mode 100644 flags/gl.png create mode 100644 flags/gm.png create mode 100644 flags/gn.png create mode 100644 flags/gp.png create mode 100644 flags/gq.png create mode 100644 flags/gr.png create mode 100644 flags/gs.png create mode 100644 flags/gt.png create mode 100644 flags/gu.png create mode 100644 flags/gw.png create mode 100644 flags/gy.png create mode 100644 flags/hk.png create mode 100644 flags/hn.png create mode 100644 flags/hr.png create mode 100644 flags/ht.png create mode 100644 flags/hu.png create mode 100644 flags/id.png create mode 100644 flags/ie.png create mode 100644 flags/il.png create mode 100644 flags/im.png create mode 100644 flags/in.png create mode 100644 flags/io.png create mode 100644 flags/iq.png create mode 100644 flags/ir.png create mode 100644 flags/is.png create mode 100644 flags/it.png create mode 100644 flags/je.png create mode 100644 flags/jm.png create mode 100644 flags/jo.png create mode 100644 flags/jp.png create mode 100644 flags/ke.png create mode 100644 flags/kg.png create mode 100644 flags/kh.png create mode 100644 flags/ki.png create mode 100644 flags/km.png create mode 100644 flags/kn.png create mode 100644 flags/kp.png create mode 100644 flags/kr.png create mode 100644 flags/kw.png create mode 100644 flags/ky.png create mode 100644 flags/kz.png create mode 100644 flags/la.png create mode 100644 flags/lb.png create mode 100644 flags/lc.png create mode 100644 flags/li.png create mode 100644 flags/lk.png create mode 100644 flags/lr.png create mode 100644 flags/ls.png create mode 100644 flags/lt.png create mode 100644 flags/lu.png create mode 100644 flags/lv.png create mode 100644 flags/ly.png create mode 100644 flags/ma.png create mode 100644 flags/mc.png create mode 100644 flags/md.png create mode 100644 flags/me.png create mode 100644 flags/mf.png create mode 100644 flags/mg.png create mode 100644 flags/mh.png create mode 100644 flags/mk.png create mode 100644 flags/ml.png create mode 100644 flags/mm.png create mode 100644 flags/mn.png create mode 100644 flags/mo.png create mode 100644 flags/mp.png create mode 100644 flags/mq.png create mode 100644 flags/mr.png create mode 100644 flags/ms.png create mode 100644 flags/mt.png create mode 100644 flags/mu.png create mode 100644 flags/mv.png create mode 100644 flags/mw.png create mode 100644 flags/mx.png create mode 100644 flags/my.png create mode 100644 flags/mz.png create mode 100644 flags/na.png create mode 100644 flags/nc.png create mode 100644 flags/ne.png create mode 100644 flags/nf.png create mode 100644 flags/ng.png create mode 100644 flags/ni.png create mode 100644 flags/nl.png create mode 100644 flags/no.png create mode 100644 flags/np.png create mode 100644 flags/nr.png create mode 100644 flags/nu.png create mode 100644 flags/nz.png create mode 100644 flags/om.png create mode 100644 flags/pa.png create mode 100644 flags/pe.png create mode 100644 flags/pf.png create mode 100644 flags/pg.png create mode 100644 flags/ph.png create mode 100644 flags/pk.png create mode 100644 flags/pl.png create mode 100644 flags/pm.png create mode 100644 flags/pn.png create mode 100644 flags/pr.png create mode 100644 flags/ps.png create mode 100644 flags/pt.png create mode 100644 flags/pw.png create mode 100644 flags/py.png create mode 100644 flags/qa.png create mode 100644 flags/re.png create mode 100644 flags/ro.png create mode 100644 flags/rs.png create mode 100644 flags/ru.png create mode 100644 flags/rw.png create mode 100644 flags/sa.png create mode 100644 flags/sb.png create mode 100644 flags/sc.png create mode 100644 flags/sd.png create mode 100644 flags/se.png create mode 100644 flags/sg.png create mode 100644 flags/sh.png create mode 100644 flags/si.png create mode 100644 flags/sj.png create mode 100644 flags/sk.png create mode 100644 flags/sl.png create mode 100644 flags/sm.png create mode 100644 flags/sn.png create mode 100644 flags/so.png create mode 100644 flags/sr.png create mode 100644 flags/ss.png create mode 100644 flags/st.png create mode 100644 flags/sv.png create mode 100644 flags/sx.png create mode 100644 flags/sy.png create mode 100644 flags/sz.png create mode 100644 flags/tc.png create mode 100644 flags/td.png create mode 100644 flags/tf.png create mode 100644 flags/tg.png create mode 100644 flags/th.png create mode 100644 flags/tj.png create mode 100644 flags/tk.png create mode 100644 flags/tl.png create mode 100644 flags/tm.png create mode 100644 flags/tn.png create mode 100644 flags/to.png create mode 100644 flags/tr.png create mode 100644 flags/tt.png create mode 100644 flags/tv.png create mode 100644 flags/tw.png create mode 100644 flags/tz.png create mode 100644 flags/ua.png create mode 100644 flags/ug.png create mode 100644 flags/um.png create mode 100644 flags/us.png create mode 100644 flags/uy.png create mode 100644 flags/uz.png create mode 100644 flags/va.png create mode 100644 flags/vc.png create mode 100644 flags/ve.png create mode 100644 flags/vg.png create mode 100644 flags/vi.png create mode 100644 flags/vn.png create mode 100644 flags/vu.png create mode 100644 flags/wf.png create mode 100644 flags/ws.png create mode 100644 flags/ye.png create mode 100644 flags/yt.png create mode 100644 flags/za.png create mode 100644 flags/zm.png create mode 100644 flags/zw.png diff --git a/dump1090.c b/dump1090.c index 643ae895c..b72a0ff78 100644 --- a/dump1090.c +++ b/dump1090.c @@ -2199,8 +2199,36 @@ char *aircraftsToJson(int *len) { return buf; } +/* Return contents of a file */ +char *getFileContents(const char *filename, int *clen) +{ + struct stat sbuf; + int fd = -1; + char *content; + + if (stat(filename,&sbuf) != -1 && + (fd = open(filename,O_RDONLY)) != -1) + { + content = malloc(sbuf.st_size); + if (read(fd,content,sbuf.st_size) == -1) { + snprintf(content,sbuf.st_size,"Error reading from file: %s", + strerror(errno)); + } + *clen = sbuf.st_size; + } else { + char buf[128]; + + *clen = snprintf(buf,sizeof(buf),"Error opening file: %s", + strerror(errno)); + content = strdup(buf); + } + if (fd != -1) close(fd); + return (content); +} + #define MODES_CONTENT_TYPE_HTML "text/html;charset=utf-8" #define MODES_CONTENT_TYPE_JSON "application/json;charset=utf-8" +#define MODES_CONTENT_TYPE_PNG "image/png" /* Get an HTTP request header and write the response to the client. * Again here we assume that the socket buffer is enough without doing @@ -2212,7 +2240,7 @@ int handleHTTPRequest(struct client *c) { char hdr[512]; int clen, hdrlen; int httpver, keepalive; - char *p, *url, *content; + char *p, *url, *flag, *content; char *ctype; if (Modes.debug & MODES_DEBUG_NET) @@ -2236,38 +2264,34 @@ int handleHTTPRequest(struct client *c) { if (!p) return 1; /* There should be a space before HTTP/... */ *p = '\0'; + /* Check for /flags/xx.png, where xx is the two character ICAO code */ + flag = strstr(url, "/flags/"); + if (flag) { + /* Ensure string is 13 characters long and ends in .png */ + if ((13 != strlen(flag) || + (strstr(flag, ".png") != (flag+9)))) { + flag = NULL; + } + } + if (Modes.debug & MODES_DEBUG_NET) { printf("\nHTTP keep alive: %d\n", keepalive); printf("HTTP requested URL: %s\n\n", url); } - /* Select the content to send, we have just two so far: + /* Select the content to send, we have three so far: * "/" -> Our google map application. - * "/data.json" -> Our ajax request to update planes. */ + * "/data.json" -> Our ajax request to update planes. + * "/flags/xx.png" -> Flag for each ICAO two character code. */ if (strstr(url, "/data.json")) { content = aircraftsToJson(&clen); ctype = MODES_CONTENT_TYPE_JSON; + } else if(flag) { + /* Add 1 to strip off leading /, images are in flags subdirectory. */ + content = getFileContents(flag+1, &clen); + ctype = MODES_CONTENT_TYPE_PNG; } else { - struct stat sbuf; - int fd = -1; - - if (stat("gmap.html",&sbuf) != -1 && - (fd = open("gmap.html",O_RDONLY)) != -1) - { - content = malloc(sbuf.st_size); - if (read(fd,content,sbuf.st_size) == -1) { - snprintf(content,sbuf.st_size,"Error reading from file: %s", - strerror(errno)); - } - clen = sbuf.st_size; - } else { - char buf[128]; - - clen = snprintf(buf,sizeof(buf),"Error opening HTML file: %s", - strerror(errno)); - content = strdup(buf); - } - if (fd != -1) close(fd); + content = getFileContents("gmap.html", &clen); ctype = MODES_CONTENT_TYPE_HTML; } diff --git a/flags/FLAGS-LICENSE b/flags/FLAGS-LICENSE new file mode 100644 index 000000000..b63ec6f48 --- /dev/null +++ b/flags/FLAGS-LICENSE @@ -0,0 +1,32 @@ +Flagfox Flag Icon Set +Copyright 2013-2016, David Garrett +Some rights reserved + +Except where otherwise noted, this work is licensed under a +Creative Commons Attribution-ShareAlike 4.0 International License: +https://creativecommons.org/licenses/by-sa/4.0/ +https://creativecommons.org/licenses/by-sa/4.0/legalcode + +This license applies only to this set of country/territory flags. +This license does not apply to any other Flagfox images/icons, +source code, localizations, or database content. (see main LICENSE) + +This flag icon set is based on public domain and/or non-copyrightable +flag images provided by Wikimedia Commons. Those wishing to reuse flag +images in an unmodified larger format are directed to the source works. +https://commons.wikimedia.org/ + +Those wishing to reuse flag icons in this set are encouraged to use the +most recent version provided in the most recent version of Flagfox. +Attribution should note the version of Flagfox the icons are from and +the date of its release, as country/territory flags change over time. +https://addons.mozilla.org/addon/flagfox + +If this flag icon set is reused in large portion, this license text +file should be included with the image files. An additional text file +enumerating any modifications made is also encouraged, if applicable. + +If you use any portions of the Flagfox Flag Icon Set in other works +a quick email or message on our forums would be appreciated: +daveg.extensionfeedback@gmail.com +http://flagfox.net/forum diff --git a/flags/ad.png b/flags/ad.png new file mode 100644 index 0000000000000000000000000000000000000000..c9eb9ada1914143c7aa3e94de6b947e3880c34f0 GIT binary patch literal 255 zcmV&h3whgi6rX#Cv(PIM)%gmNV-=lc%1z+~N;C}qW!*A2!C+Cr-*!}3-|l>&Jxo-U3d5|@)XSecSl4mjvCvZVm^J25@s;!tAT f(7-LUppAiHf{sOC#QT|PK=llsu6{1-oD!M literal 0 HcmV?d00001 diff --git a/flags/af.png b/flags/af.png new file mode 100644 index 0000000000000000000000000000000000000000..33c481bb628994a5f2caf2c84be711cd438ad9f3 GIT binary patch literal 257 zcmeAS@N?(olHy`uVBq!ia0vp^5&|rbfYx& zYIM|oM#giYKBrwwFGPAC5)-&qkbFX0Z9mZbnLx~7I_+x&kc#niaSV~Ty!C>mP=f-G z!^H4C0-PXLa$ocXrp$~eT6X&Qi z=+0L(S2z$l>ESI)**Kq`Wj@=S)Km|@Z0z`Pdc7UrZY}wjJI-wY+2`r%=d#Wzp$P!r C(qaez literal 0 HcmV?d00001 diff --git a/flags/ag.png b/flags/ag.png new file mode 100644 index 0000000000000000000000000000000000000000..0816bd52f6c46900398b0ed4ba057823c7bee4f4 GIT binary patch literal 318 zcmV-E0m1%>P)-IvxgrAwnk-RChOPR~6-1cT|Ns90a>f7v0L~F6QmL-o0001)Nkl#e9-Q;62xbcLrlr(d zP?G@xhUcv8x~?oUUJSfYzNRX4?VQs^>owVl{e}V2kR@c#^e;^@MeY)-vS~CfnR~%-}Lww)TenOFdhYTCm=+!?Af{|b>zd` QTmS$707*qoM6N<$g69u_Jpcdz literal 0 HcmV?d00001 diff --git a/flags/ai.png b/flags/ai.png new file mode 100644 index 0000000000000000000000000000000000000000..ea3e8219517f259028a7ff6f14dea55ca2e9d71c GIT binary patch literal 332 zcmV-S0ki&zP)(; zbSXrTxzpu&jj1O^k)*NFvwD|RZK(6i(pqt=;A?us1W;J839Bo|U-?-8cfrE^uSi#P)MmMBiz{shy! z?#tkpv@tt75Xw2fKrF^*1`>)uctceKC%|99l%ka3BY@m6Ch}*1AdQij0KUhFNq_*5 e2A`k&8@vD!9X3mh>B=Mk0000AHi0d^Oxe3A|H)Z8EOGsXl zk!=$aek`XjLqznfwCo&Fu~2TF>oRiv!XoiJyh}vI3-|@N7#U62*_ByXgqWBN*w|Sa z7&3YJsssctNXsr46PIFUcH!jQCn2#a$LBZ+lIxtGiUhtRk$& U!#(MaI?!SUPgg&ebxsLQ08FG-7XSbN literal 0 HcmV?d00001 diff --git a/flags/am.png b/flags/am.png new file mode 100644 index 0000000000000000000000000000000000000000..6c1e059c8050f960e6fff9e2ca74990a6a0f3519 GIT binary patch literal 114 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!VDx^^%Amx6n}tEh-+X}wue$7gYkl!3__n) zFdWk;^aD!CdAc};NL)@faAW4VA|T+x%;S~OAj8P>powjTA_IfSO}&F_mKMhVRWf+G L`njxgN@xNAOL7~a literal 0 HcmV?d00001 diff --git a/flags/ao.png b/flags/ao.png new file mode 100644 index 0000000000000000000000000000000000000000..1fffeeefad5feaa116e831b3bdb89f925c2886e9 GIT binary patch literal 260 zcmeAS@N?(olHy`uVBq!ia0vp^5Gr!Q1|dmo!wC_VKYWGrV6T#m&ihWQ8EmhI4{y-~PNU0J7peT^vIsE^j^Q&ex#8 zz#905_ekHC^MCU*ldjBQD17=xt$&Bd6Lk$!-a~Pnt!xeDvf@?@)wg$rh?_siOli1v zrd0oh`XV82{$Gi?OU~37T=UCWQ_Jv7QsNWCoVA7r#AVbkXiNCH9(Dy<#o+1c=d#Wz Gp$P!KgI1UT literal 0 HcmV?d00001 diff --git a/flags/aq.png b/flags/aq.png new file mode 100644 index 0000000000000000000000000000000000000000..9112397af6f80b5ca62b5163d7548179d68cc4a2 GIT binary patch literal 291 zcmV+;0o?wHP);Q+VNhM*S62?^Y;Ag^7^gG z>rsr;z}4^i{Qhg6+Sldvm%HVn!sw~S>0+1I&)@Sqe$M~@|2lon;Q5_z0001fNklEtbF9H3JE|G%6@W6#L$Lqq!HXs;swk>F=HiXt$M$iCAPc-o|V zT`{P_R@#XUeZVoViy6+oS^*fR=#s`6lKV7801*Ir1n?EP4%XEGX3Wtzp0V5lzNGvH p%?7+x&U=?-002ovPDHLkV1ns(SMdM< literal 0 HcmV?d00001 diff --git a/flags/as.png b/flags/as.png new file mode 100644 index 0000000000000000000000000000000000000000..eeeedb1e19a220a3da4f502df07473e0199610d2 GIT binary patch literal 312 zcmV-80muG{P)D|8Y@9Wpk#>S|I_Vx4Az_sDv;D0UvvVb;wQ3K6RtLGvd z;|DHp$eWxOlMwd1Vh@>NqMt-GitrCVGCF!++-PwCHz{jf@zGe-D3Bvp?c<4Xykf{X z1RV{)jU!c(Ij2BqyjdybJSRCYw~V47r6hp6Rx_A;VJ*$D_LEjDMKevgk!@rE0000< KMNUMnLSTZjc8Vi0jWCd;kCc|5np-d$i*v ykSb3X#}JO|$q}qT7@i3IN>0dl}&ENr04TGnvpUXO@geCyVHyeHc literal 0 HcmV?d00001 diff --git a/flags/au.png b/flags/au.png new file mode 100644 index 0000000000000000000000000000000000000000..4db9c0484744cfc9d237a01d56b992871f26551b GIT binary patch literal 350 zcmV-k0iphhP)7uW!Dwi@rl!{p4w0Li(aWR2{*;vO;_3+rkN*GwO--&F8m-C!HxLoWyI3RaLV7USIvl$y!>p|1B*60gL}LGXMaKk*j+20002FNklOM<2+GrQ-^KNsA8*QxWaOZUCHMY9%fDt7F=`(fFhGeGSQo-U3d z5|@(&1Oy%k9$=Dan8Dl5!mVy@#wnNP#;2wimt(af@@C3?Vh{f0@mK)OV(@hJb6Mw<&;$U`EJXwW literal 0 HcmV?d00001 diff --git a/flags/ax.png b/flags/ax.png new file mode 100644 index 0000000000000000000000000000000000000000..82aa7dcdbd837ea839f98b162e8d188531841242 GIT binary patch literal 157 zcmeAS@N?(olHy`uVBq!ia0vp^5_UjP-Gd%8G=a9mH0*qU`UY5R%LgaZzI%lGWr zb3u2L439(_Q)BcKAA^J!3`}Oddy3rY!k$=iXaw>+cI!{yKT~y@UTdL&tfM zMVtLC-fCJh?0jNB$Fv|pn+<5JtEY=&h{pM30d)omwq_3y8po~ zev_2tf{fY&nr_P~iv1t%5LB{k{CApxL3!$Yl^jW+mQYU@#}J9j$riZ3S{On&Co#By@g{}{P7v;5@Brgg3;~=V c%s+vJp{#i$qkh%@44?%Jp00i_>zopr06@DrZ~y=R literal 0 HcmV?d00001 diff --git a/flags/bb.png b/flags/bb.png new file mode 100644 index 0000000000000000000000000000000000000000..bd49ac391cc7610ea464c574a8bab5c8cbab70ce GIT binary patch literal 229 zcmeAS@N?(olHy`uVBq!ia0vp^5LnBC!-d{%gw>Hgrlk8gpG)D&LncYNo~U`-p0Fg3!h;savZQmNZBx zNwI$3rxIw-Gr3r-H&68caWw|Ddbgk)pz#boo-U3d5|@)Fv@vOFG<=lIP(FB|+t+DE zt7lA1gTF*DJHPm11#M}u#XD40R4rRJcyttcd2Q-W+&m{fWQyeO)ha3l7U3=}-yEBi Z7#Th$sx?hFFDwHY?CI*~vd$@?2>{4HN+bXP literal 0 HcmV?d00001 diff --git a/flags/bd.png b/flags/bd.png new file mode 100644 index 0000000000000000000000000000000000000000..52687d378a6ee9747846b183356150271f9b4170 GIT binary patch literal 260 zcmeAS@N?(olHy`uVBq!ia0vp^(m*W0!3-oXoc*!{NF@aLgt%TdcK)dCsF>vI6yZJ1 z*^N8hcY=$XceodSn(qlyXQf1+%SKMz>3%aE-6lD^IYxR3rulx*c06h3ve&|eFU|L* zuA^?8w?LY2m6y9|jQ49@C!<(zwoE_IaIY^~jtp6TNwLaVK)d2ST^vIsE+60caxc0Fp zF4Jj?zL5~bV>F}g!I8J@m3(53F?H;%Jo|NoEfaeg873weo_3Dg90jzB!4qiSI;Vst E0H$M8e*gdg literal 0 HcmV?d00001 diff --git a/flags/be.png b/flags/be.png new file mode 100644 index 0000000000000000000000000000000000000000..5a43b1301639c2aa0a8a52e626332a178088ad5d GIT binary patch literal 95 zcmeAS@N?(olHy`uVBq!ia0vp^LO?9Q#0(_UGLD}IQk(%kA+B#VEq^_50`lx6s;2=d qK~ERQ5RU7~5nD~BG&VM-sW9+ZOF7zdY-|QfGI+ZBxvXU^zL{Cz=8dXaPWHiM6jnkk!2S>}2CTq*NjTbE&;r_7voO^{ws7sn8e>&X@E zED|T4*<5vgWOK&3ATD-8Ec>%R?2Xg73|Jq&nbUj3@;`egGwYKA26pQ$GiSuwI>7({ literal 0 HcmV?d00001 diff --git a/flags/bg.png b/flags/bg.png new file mode 100644 index 0000000000000000000000000000000000000000..89e4c8b5e1cb5a9c28f93322fdfa8a8a33ad3a69 GIT binary patch literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^(m*W0!VDxuZ6%iiDgFST5ZBP1^V|#l8K&i3Qxp3C z|Nof<{}X^xik>cxAsp9}3mn<_c%~FwY!EUEQ0Ud};9-&Inb^pv8pBZ5s5 literal 0 HcmV?d00001 diff --git a/flags/bh.png b/flags/bh.png new file mode 100644 index 0000000000000000000000000000000000000000..9c3129b1de87fc2a1e9145aadfddc9467e77d95a GIT binary patch literal 216 zcmeAS@N?(olHy`uVBq!ia0vp^(m*W0!3-oXoc*!{NVx|1gt-2E^6baGhj+qK-*4RU ztfl|opFhvqCfsxj|FCt>-KdPqnl|TzH6EmwJnx)x%QN!h&iy|hKmGgd+j$YqE4mK< ze*OOc|Nl8bwS(ok;y?raJY5_^BrYclurdp#sVN$k98ln5W~$loMB-*k;Y;C^heC&Q z)wJ!c^(+PX{1ju-J{3GR3~mUY!DG26?NK4Oo&AHa*7FRQnb=|ydrkWoLcNq$`>}sB Q2Aa&^>FVdQ&MBb@0QAaPkpKVy literal 0 HcmV?d00001 diff --git a/flags/bi.png b/flags/bi.png new file mode 100644 index 0000000000000000000000000000000000000000..b206392e300e275630829f607a70c4ab5627a098 GIT binary patch literal 353 zcmV-n0iOPeP))V z*Xfv{_51d-Jvig^<>$-Dx!$?>+~4{A`6ahN&lxWN|NqVrCLXmq6^3*<0002INkl3`du$m$jVEusMq?yIyXtmtJ|-fBxtVF7_#-PJPC100000NkvXXu0mjfqA8_7 literal 0 HcmV?d00001 diff --git a/flags/bj.png b/flags/bj.png new file mode 100644 index 0000000000000000000000000000000000000000..00909110a8b24ff0273f0b37e080596e7f7bb84e GIT binary patch literal 108 zcmeAS@N?(olHy`uVBq!ia0vp^5SJS|)@!|G6mkLQt2X zJupo_eJ)6?r;B3<$Mxg_MkaPuj)Vn<$1h4SWt?DSD0Wm|cq?mDI#3ORr>mdKI;Vst E05(e;TmS$7 literal 0 HcmV?d00001 diff --git a/flags/bl.png b/flags/bl.png new file mode 100644 index 0000000000000000000000000000000000000000..0fabfade72d988026e142790604b095898b9e338 GIT binary patch literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^5i0fNT%m4rXGbm4u-Iy~Q tC@AFV;uyklJvm~lmdTXH#>O}i29-$phf#vFR{&)hJYD@<);T3K0RZ@*836zQ literal 0 HcmV?d00001 diff --git a/flags/bm.png b/flags/bm.png new file mode 100644 index 0000000000000000000000000000000000000000..9d2262cb33ad40f59c303506ae10a62e43464d74 GIT binary patch literal 337 zcmV-X0j~auP)P z%ix=mlaY3D_ub*GATR2irsUq|v2J&}kd~Q3L$i99q_NRxjJGL7kS9fvSu-8Gt+kvb zG?^9}|NsAeXiQ#LI`hoZRc)wFdqe;veOhs=;A?uq|_6Cne69F$WM*0Q_D69z)7E2p>>MSqmwj`-%*g#0P@Qep|5sAx{rKbn00960|M%b*!UDy{0002aNklfeMjfe zVdY9YIur}KHgdKQn-Yty_LbiR18Ng4eScz^rKC6+m8{lR+<-aEA%w11C#$SAmZvf` zk}6>PBx#yPDV1`5C5!D21Sy+F%C4{ZYT(Q7UT7@ES`_?V6UFN48V+|&=^r|fFsPxA RH_iY6002ovPDHLkV1j|GqL2Up literal 0 HcmV?d00001 diff --git a/flags/bo.png b/flags/bo.png new file mode 100644 index 0000000000000000000000000000000000000000..fe3b4eb08ac089ada1c227ab0cfb234a80a524e5 GIT binary patch literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^;y^6G!VDz&8GmYnr~sc3*Jb+!-!A3)`IzCVwj4vH zNucv-9-x$>r;B3<$Ms|bHwI?5B8w&tg#!y(7`ToU1vGFoSxh+0$e^32^z>TAjvAn1 N22WQ%mvv4FO#lLW9-{yN literal 0 HcmV?d00001 diff --git a/flags/bq.png b/flags/bq.png new file mode 100644 index 0000000000000000000000000000000000000000..d33b631238886d722918fbc7e6a07a1a621e9270 GIT binary patch literal 113 zcmeAS@N?(olHy`uVBq!ia0vp^5 zSee`dP~Q2@Ol%5hUt>x>gTe~DWM4f?*~nk literal 0 HcmV?d00001 diff --git a/flags/bt.png b/flags/bt.png new file mode 100644 index 0000000000000000000000000000000000000000..4ac41d9b6222b19aa7a12f7d519b5bf903176f08 GIT binary patch literal 317 zcmV-D0mA-?P)y^Eb^_D5|6SHo`!F2mGk21(e4Bk`xAPg10z}BUg%t|`rfp&q zUkYfWHO6Q$V7W0GJBm&D0-yzLf)arf0M^)P>w3u*Jrz49L+aj-325!nspR}XAvP)1 zSn)oHD~wHeNPn#0P|FKMsr=H{=MndVeSW$loB00yz`mXxUpWFZ>HYHpw7e#_XagB& P00000NkvXXu0mjfxDJi0i6VtANbXRkv+(lEJDx vT^vI=t|v#ZvhlbC1PE}k8E|oRn6Wa1ZZ$r;cVEeTplSwBS3j3^P6)Ldrmy}<3g!rzCF;tu(FunhmP8KfZ~*z;g6P{SVl^wSI99wYc-!?00015NklyVzTpBkIMEq8q2qZ&p5y+~A6{Q zwY3uhd)@W_fKP=kDHkN1X>Le()PaD$ngK0~6z|^|g=-GCo zR7Yo`gbD%!hL>Qw|6Nv-YQe<&H#y0`T=aej+ODu=`41cV{DO6?Qfhq8 zCk&7v6-ajI0T)?aaxSKkcaUR1Gj-mFqFZ2AB7`XQ-dA7^yowd3R%5DA1vh|qAR(Aa zgo-V&0D`PJA3)kw9}S7RBM@`;^Ryto3@Fz7nB+HgEDtF3ZJ4*&zjbMW5z>bf@Fw& kn`A4o>W~69BEaX|JJ}IA`T%-EE&u=k07*qoM6N<$g1+*IegFUf literal 0 HcmV?d00001 diff --git a/flags/cc.png b/flags/cc.png new file mode 100644 index 0000000000000000000000000000000000000000..c08c97caa3e1ef4f341509d300e4324dc0a24af5 GIT binary patch literal 338 zcmV-Y0j>UtP)`{w*VN306Ufd34;Lt-~a)D004jhCB-^E00023Nklt#z)?N@)VU{6WjxE kxXKp*A$SIacronp12d*Krm#649RL6T07*qoM6N<$g0pIV+W-In literal 0 HcmV?d00001 diff --git a/flags/cd.png b/flags/cd.png new file mode 100644 index 0000000000000000000000000000000000000000..fff626957009ff7520f216d51cdaa0016d2e815e GIT binary patch literal 334 zcmV-U0kQsxP)VJ>HEgAs?b0B^yh!AkAWE6J&>0~%lFZK( zARvq3;cXq(Iv?JtDa>OqTc4^Ch3*1?{FAYD+*TgaCLqobApn2>NnXy>0001~Nklgam%PzF2^wO1*EKb^jxlt z{V)>Jq2nOg)^grEvSO$rf7mTYldM{~J&b2<@FIuXVxGQ85Oc-F8oVGu4!atE4+I>B g@P9Ut!rYJf1{y6O{~jQXwg3PC07*qoM6N<$g2Wq@X#fBK literal 0 HcmV?d00001 diff --git a/flags/cf.png b/flags/cf.png new file mode 100644 index 0000000000000000000000000000000000000000..8229a2314c351d12b435eeae265a4b3a0d57e901 GIT binary patch literal 162 zcmeAS@N?(olHy`uVBq!ia0vp^5q)=Ocwa8_^cTuo*#KuMY20%b~MmD22WQ%mvv4FO#s0TF<<}y literal 0 HcmV?d00001 diff --git a/flags/ch.png b/flags/ch.png new file mode 100644 index 0000000000000000000000000000000000000000..2dffc4339cdabfa617a8b6cf792c3fee66afbeed GIT binary patch literal 142 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPGa3-AeX{eS%U|NZ;_Z{Pm^z=8i2 z7604Y|Cg8l@96js1Plz8jw`kSRcd>>IEHXsPoBZa$`c_ex7I@9@+A|g%SMeolClmL mI?v3A%exp5*BNi^=glZy;9k!6p_>P&jlt8^&t;ucLK6TxLNxIJ literal 0 HcmV?d00001 diff --git a/flags/ci.png b/flags/ci.png new file mode 100644 index 0000000000000000000000000000000000000000..39cb88d5ecd75a601813f501b2678d8c85af383c GIT binary patch literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^5i0k)yhX4QnGt5f}3(U9# s6cqAwaSY+Oo}7@t!5h1^t1(W5;k=jpL)MShdx5eHp00i_>zopr00ayfh5!Hn literal 0 HcmV?d00001 diff --git a/flags/ck.png b/flags/ck.png new file mode 100644 index 0000000000000000000000000000000000000000..a9b32b1bb9f1ef2b1e3d36c8065b6edd8451b547 GIT binary patch literal 367 zcmV-#0g(QQP)dgar6@*`&lD>|U7tEtn!Lr`jhw_WPL&@&jBSCmDMXOqpRCc>=kns`CqJTx711Ep;%+ghDsNidQT5+q_Jy6+0RRAP?D8huD0002WNklv7yCp~mf2XQ+vX6(EG+cCG>7Den{yBcU)Fm?M4Y#Er0-1TOXh#I;< zr-(so2!Z|R`Xjz~qvy)vygcqwvPz0QVcq~~2gE$rOfY-ZXP{Sm#P8m$C}epdRRFlT zzS*Yq0t4le1Vuo>P|kF)mCY{7%Z3l|NsB0w%nS6G7^>bP0l+XkKWO6s% literal 0 HcmV?d00001 diff --git a/flags/cm.png b/flags/cm.png new file mode 100644 index 0000000000000000000000000000000000000000..fd226cb851cec8c58d97fe5d947f37754baba2db GIT binary patch literal 150 zcmeAS@N?(olHy`uVBq!ia0vp^5hA literal 0 HcmV?d00001 diff --git a/flags/cn.png b/flags/cn.png new file mode 100644 index 0000000000000000000000000000000000000000..4b26fcc92f69d7a08980caf0e471bb940e261cb0 GIT binary patch literal 223 zcmeAS@N?(olHy`uVBq!ia0vp^5+GnPfOsQj=+mp?)!%P zPrP{V>j~V`6yW%!wG(J&kf)1dh{WY&fp#Xx!jJ*@p*yg3eQ1Tr!PE_f;vBT?4Cz|SnK9mZ*vrnBx4SKAC0hRSwD VeYS{mCxE6ic)I$ztaD0e0st&}Nv;3@ literal 0 HcmV?d00001 diff --git a/flags/co.png b/flags/co.png new file mode 100644 index 0000000000000000000000000000000000000000..83b472ecb0113879237ad74e46e36a05be9b838c GIT binary patch literal 98 zcmeAS@N?(olHy`uVBq!ia0vp^5i0e5)H3o~xe=dqKPOsVz v6cq7vaSY+Oo*co-#-kFvFri`YA!df7uIe|JC+|%M$}@Pn`njxgN@xNA%&izu literal 0 HcmV?d00001 diff --git a/flags/cr.png b/flags/cr.png new file mode 100644 index 0000000000000000000000000000000000000000..a581281fd5cbd1729d4631f3959fac5f0cdb0c8e GIT binary patch literal 125 zcmeAS@N?(olHy`uVBq!ia0vp^(m*W0!VDxuZ6%iiDgFST5ZBP6RreC|{{R1fPEd_O zyWZ(tS`1K1)6>N9qPezQ%f)*Z;3p<-mI5ZrTkd&Bk%+;7{|K1FS_5BPD X>B{XM=99+@7-Ts_x$!HIl@(zV#IHbBmQ_*)7l0^`<=_&K!w$d-m_eAI2e$%7uqom~ z?9!M3sDPD;hlvZUgi{Q=Bc*sDM&MQ;!H?Gp2*B$|Ai(cULIEYhMp0xDif#a^12`#O S*Zcec0000|Nj$k>NW_g z-nq&&t13<{pyAhp_}|akA66tcvraEDA+M zK^h`Hd~0S;bmf>mGobqBLzZRMmX;|?cDhOy{D^hwnPR}q@T}Re^ux`2&Oo~uJYD@< J);T3K0RVF1XeIyv literal 0 HcmV?d00001 diff --git a/flags/cw.png b/flags/cw.png new file mode 100644 index 0000000000000000000000000000000000000000..72278db12c2ab8dc8b7e1a38160326c1c0f7070a GIT binary patch literal 189 zcmeAS@N?(olHy`uVBq!ia0vp^5O<(L`%z!0uKYj4++yBq=^YUI+`^_fLne)Ll~zbUs>22p`MsIH&hEO mriXAk$}nta5!F4e%E(|*Ev4$Nly(nj6oaR$pUXO@geCwATtYzr literal 0 HcmV?d00001 diff --git a/flags/cx.png b/flags/cx.png new file mode 100644 index 0000000000000000000000000000000000000000..60c46ac83777a435d4a1da2b6f86ade81a021b85 GIT binary patch literal 354 zcmV-o0iFJdP)hN%sJR>J`i4eQx}KnD8p#4SQPCsQ~fs0%&C4UqseYU)sPxh~-$#GGgm=WQM@ z6_?&S^f0#Z$)YUNYXod>oST(5lyfYCKprQcb)ve!hR{s~9sHJ-KnhTnnBrAcWdEbJ zhp#dX*>5i=AR@c!@E56vqYyzLzXA{;%U_Mt8v;u->74rGvH$=807*qoM6N<$g8sXY AM*si- literal 0 HcmV?d00001 diff --git a/flags/cy.png b/flags/cy.png new file mode 100644 index 0000000000000000000000000000000000000000..665c97894ef56d493b477a5cd956434290115759 GIT binary patch literal 282 zcmV+#0p53)`}pbB{{H>&(5Ld$u>Su2`0CgF{QK_7o4&)d=;`Fuc?PJin)vwl^V+%HlsNSD z^3T%8_vX>r+|&H`@Z_mr_2I|;`}f(qjoF1A@9^!!$-C5c0RR90ELw7@0001WNkla;By4L;w|Npv(l$+U0PoQEiPZ!4!j_b(*Gdmf0)=u-7)2HUI;^%H) zwA`6>Ci8W+M+dexS{mdE`2Er{U?`T_DKKZ-s!)!;16nNVwW3YTml+-%Fm144;`pY; Yu*)Ma`$PuUWuU1Hp00i_>zopr0IUr-oju_3xyojl}Hu{P`cT zHtP87YqICsCM%HGoHMvc6Rj*#!)3nc#OQi{b-3yO|Nm;T=Mt?eofQ5Q0001LNklGf!-0H@dqfMhyi!}0yAi?rxjL* VDh!LoxTpXC002ovPDHLkV1m8*h1>uD literal 0 HcmV?d00001 diff --git a/flags/dk.png b/flags/dk.png new file mode 100644 index 0000000000000000000000000000000000000000..2546206143aa32d07581e1b20ca0e768a5510126 GIT binary patch literal 130 zcmeAS@N?(olHy`uVBq!ia0vp^qChOb!VDz2zi5hq1Oj|QT(1S?T(Ar~DP?oPJoKE7 z&;S4bkMS7fe=xQ15-kL@|g$D-&xY!vra#Bn~ bHigTe~DWM4fZ}%iz literal 0 HcmV?d00001 diff --git a/flags/dm.png b/flags/dm.png new file mode 100644 index 0000000000000000000000000000000000000000..4b4ed4427d0f9009dad6912f9c89116bf8325477 GIT binary patch literal 270 zcmV+p0rCEcP)J0c955GRJ+&b&7-BsnTS2-a zF})!#xFs^FCNH}qFWh8t%N{OSN(fq7T2)n5R7MB?|Ns2a765BM7eG4F0001KNkl_VU}s8?m;=pZ6U5`{~O~)8G># zCKm-v?nM#foz->=;2(>9TaH2(kpKSPqS$<^f`M|gRSY=+Pmao*6=$Y<$)f73EBl5HebH=abW)rb`k+NgTe~DWM4fzeHh% literal 0 HcmV?d00001 diff --git a/flags/ec.png b/flags/ec.png new file mode 100644 index 0000000000000000000000000000000000000000..83f795869546b3ff7d21368da4b98986946c0eb1 GIT binary patch literal 257 zcmV+c0sj7pP)(2pwm_eGOK;Oa`%(Ei(*AV{P0E(J?P=0iaaxx54pIviSewlQws*&w2ejqOA00017Nklj3CMR#;>I6T)Ks-~C)F6%U>o~~@1gBb4 zE*gskK%4UFc(Qq)vwhD3Y(q?}0q9h8*nkjH3ZcN+=|i{y0~{(Szbx4}00000NkvXX Hu0mjf>R4sX literal 0 HcmV?d00001 diff --git a/flags/ee.png b/flags/ee.png new file mode 100644 index 0000000000000000000000000000000000000000..7f0fa03ad92b5415af0113cc2ec6d8e85df2521f GIT binary patch literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^l0YoL!VDw@Pn?_qr1%4TLR=*bJVHZ5fxQ3!|9ecl znSA2NVjxG+)5S4_<9c#|BNHFblTQJSLP7xwjp`jNED}8v8yI)mFzi~ddeLw0-Jd|k N44$rjF6*2UngEk)A>IH0 literal 0 HcmV?d00001 diff --git a/flags/eg.png b/flags/eg.png new file mode 100644 index 0000000000000000000000000000000000000000..a6c0bf7d6fadf3a0cd34ea1487e97f4131221351 GIT binary patch literal 203 zcmV;+05t!JP)RAMw)pPc@8iAb*rLwFt-80b=-8z1;=K3o-R!rlySJaPni7VBq89MdAs;0S_Y^JA%g`iUZI?0s#0M9!eNDD4GBO002ovPDHLk FV1fa{T5bRU literal 0 HcmV?d00001 diff --git a/flags/eh.png b/flags/eh.png new file mode 100644 index 0000000000000000000000000000000000000000..ae4941e93f449b611a5b17f0210d1074dcd05054 GIT binary patch literal 283 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!3-oF?)7E^se}NZ5LYiYE~O0fb<375Qdao) z_pcH&>tS)lKVQFcl-d0K_N|IraP{tu?++aL{qf@-A!!aq#=pOQE#ec~Qd{-y?)^hY zc4RqfJ)gh$vTx`)E2q1a^{as3^1lE7{~r;QW~j0SS;DGb0Hn%1T^vI+&bOYu&F5gi z)9}!;Tf(`7Pxt-*X=&Vs8-M9M>b^Q2`YZh* f;y>q&!pn@Sd(7KkaK>o>UBKY!>gTe~DWM4fR>*o1 literal 0 HcmV?d00001 diff --git a/flags/er.png b/flags/er.png new file mode 100644 index 0000000000000000000000000000000000000000..16762d7ff030c3c3bac20dca2d96b23a4196921b GIT binary patch literal 312 zcmV-80muG{P)>H}E+!>>V}rYcBFqFzN+1_kb+>r6~E4 zEAT-v_H`}Q6ik6vpJQ$?sy21c88t1KEmnERnL{!Xtt&x^-RcB4_*TU40001!NklWek_qPzE*h0#mD1TSgg3 z2;4C#N|y*2r<)WFK?4|B@Oy+ZU^pa;(ziQsI3I5WqBr1} z0xx#)xs1T%yci9%Q-OD39?J88~!QQ6(# zakiCfi97F>B->LxddFw;9a_-xc?a{wYOd{-&i{`v9OIUoGkv}R&@K;87sn8Z%gGat zGfJ$`P;6&*P_2+qsodbXq2p6ww^#DS2U7$mCp|r)bnuAI5$&Tbu1+o8zB6K3x>?#; l_FF7gFbhvC)RR5L#UP`ny|hnrcO=kE22WQ%mvv4FO#lrhSM>k@ literal 0 HcmV?d00001 diff --git a/flags/et.png b/flags/et.png new file mode 100644 index 0000000000000000000000000000000000000000..01fe886e784a13542db7fc6cb0f34e4fb767d913 GIT binary patch literal 310 zcmV-60m=S}P)^hu-mJtg8T1A@3NS$1)uN%>!>wAAm7p3jGi?M)}39 zW)pj6kI9M=)>>|<5NT?&7$sQqoMM+|dEbMrYtH-O6MS_FURoVA-y!`0_5c6?07*qo IM6N<$f>Dfl761SM literal 0 HcmV?d00001 diff --git a/flags/eu.png b/flags/eu.png new file mode 100644 index 0000000000000000000000000000000000000000..80f735c980e09f830df17d150abbb239b0883024 GIT binary patch literal 289 zcmV++0p9+JP)XqYO$Dc00000NkvXXu0mjfBu#Ba literal 0 HcmV?d00001 diff --git a/flags/fi.png b/flags/fi.png new file mode 100644 index 0000000000000000000000000000000000000000..d9b13c5dfe68e15733ffd78cbb50a55c0aaf490e GIT binary patch literal 130 zcmeAS@N?(olHy`uVBq!ia0vp^Qa~)g!VDyT{V$pgq(lRJLR<}EW+XIjsF(3ZW8~*?QpI7^g1E@g5)5S4_<9f1(x3@PRuU9hzTT!K+o*v)AMm>Q80$n^F4;IdH d5}nS-u;hZ*T(v*P%7JRRT1n6I`IF0xs>%~UG*lA$#6m|Hq-U{egGW%J}jH@KPh6f>m$h3 z1z6i4g|!2%uxPBk0O!DktZSHP7_mv_l=cf;29S%`lw&oH)hf>;1Xcz>V}nr6;O1abL%W+VxS0Jvaj2mdFMQUIXx7BFN~jnMrLUTCEXLGFPs pm#HNF0r<8h&%l%OtNlw}!3PBhG=J_qw8j7c002ovPDHLkV1k>%o45b~ literal 0 HcmV?d00001 diff --git a/flags/fk.png b/flags/fk.png new file mode 100644 index 0000000000000000000000000000000000000000..4b947a85082d2cd48ef524b546a676005e9e1bf4 GIT binary patch literal 342 zcmV-c0jd6pP)7ld;f9p9)!5q46e|%kg}uw&X_m(1-{+*U(H=gGDMXOepP!p` zUc$A$vwf5$M3D2$(wUNhqo1ANYkFF7s~dQ*Rc)x(Jy6+0RRAP?enGW+00027NklxAvL{M3{|1Aq*6H`l^4?-p{*#)#NqYhyM*g}}*bqPN~sT_3z z`E~=&Q6Vt%zyv1Lxf}4{Q~Exg06vv<+q`0U2L1wKQpssY$hg(~kOxUBPZEP32A*bzb}$mRLWNK&aQYmBWj2>(J&Ogof8V`G|71Y98_jpaq4lH*j zzvG6y;q>|a^!WUTyWx_<N z-gUCwg@xm@8Zu35V2w8(XXg`UpI4IcasSKq6hiVWdqJvxg?6#lB%w|NsBLF=lT* zP*Bm+#W95AdUC|p3)xp!vGTYC@bvKUI0$etF&c1bd2G>Sa9E@F(0bBI4WMEMPgg&e IbxsLQ0O^PxFaQ7m literal 0 HcmV?d00001 diff --git a/flags/fr.png b/flags/fr.png new file mode 100644 index 0000000000000000000000000000000000000000..0fabfade72d988026e142790604b095898b9e338 GIT binary patch literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^5i0fNT%m4rXGbm4u-Iy~Q tC@AFV;uyklJvm~lmdTXH#>O}i29-$phf#vFR{&)hJYD@<);T3K0RZ@*836zQ literal 0 HcmV?d00001 diff --git a/flags/ga.png b/flags/ga.png new file mode 100644 index 0000000000000000000000000000000000000000..cda678166845951ff94706f3584ceaedd2af84b4 GIT binary patch literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^qChOb!VDz2zi5g9DgFST5ZB$C0#+Q*|8r5ys`LoM zyoAGcxAsp9}3mTc(*@A916(}57z{1YuvT) z+TZ*9{n*^;vAoyuxWD`B?X0-fiJHTUmcFI3(ew5B)G9yYk)GR6V5+v%^Tf*Ib%Ou@ z{}ncf;&OlhBz?~mD`dwv!2kdNlu1NER4C7dk=qu8AP7ZIcgr%O$^ZY<8AT1}#q;3e zvPD2RVr%Y4v|Zj`TXOF8*c~Ap1yO*c*&-VeDZm?rb~2zZL6I!5K9U-9$5U z0617ZM#B{vSW!GZTA(83&1L-?Mv@@c%(wXS0jg8E1Q!MI6OCfbr6YUJJ zc(5czw>l&`FptH!DN(Fq{$MQ0SaVlg^`|$(EM~f#<=+m|kKOZ}7oH^@1n<3yUN3eD nW%3#T_J0sEHe9?WUw`xj(U>YPjv9I>00000NkvXXu0mjf#TkrK literal 0 HcmV?d00001 diff --git a/flags/ge.png b/flags/ge.png new file mode 100644 index 0000000000000000000000000000000000000000..2c8b792bb558c9a3878c18b4fbf3eff155c09c84 GIT binary patch literal 242 zcmVCHe9IVypG`=FvMHKq4yIPWpX=|r sfq}_r1z60cRRUgshmzPTO-dYw-%zw1k@?I;z5oCK07*qoM6N<$f_TerJ^%m! literal 0 HcmV?d00001 diff --git a/flags/gf.png b/flags/gf.png new file mode 100644 index 0000000000000000000000000000000000000000..671be464f42d35aa04024cb6e27413669399bee9 GIT binary patch literal 238 zcmeAS@N?(olHy`uVBq!ia0vp^5kj9W zK+z9#_)QwMF3U>)IL<9yr~C61*Az>|PxJXs$jH3!7x;6F^OlfQc#MWvgWjLJoa~(j zOI|1M1scUs666e+4I?N=LJ zJ34(s^-s=@5b3^*w{;Gp%FI1n0VR%|MQj^1R9jZQyk5z2LGf50SL~jAS;q~v=YAik lmOJ!U_<*F~l#YiTWirK5Cz>=rTeScH literal 0 HcmV?d00001 diff --git a/flags/gg.png b/flags/gg.png new file mode 100644 index 0000000000000000000000000000000000000000..1010f7749652d5312387ede341229a52acdf0af4 GIT binary patch literal 151 zcmeAS@N?(olHy`uVBq!ia0vp^5C@Y$PiK%+=!=R{ijER8<8zXn=$357K6^Fe>H{&`Kc4en12lrc)78&qol`;+0J&i{ Ay#N3J literal 0 HcmV?d00001 diff --git a/flags/gh.png b/flags/gh.png new file mode 100644 index 0000000000000000000000000000000000000000..524d8f0fa4392fa24f9a8fdb6d7909980a9aabfa GIT binary patch literal 175 zcmeAS@N?(olHy`uVBq!ia0vp^5i4r61oWkT0OJ&u_5ticKALe*L$ES|4(HFkQo?z#|1x;cl>6qaC~_Y)W_Wf)vt WR-W74!6F4Tg~8L+&t;ucLK6TzGB>0E literal 0 HcmV?d00001 diff --git a/flags/gi.png b/flags/gi.png new file mode 100644 index 0000000000000000000000000000000000000000..6b9f5b2c694831b64ece52add4bdf3d34a312b48 GIT binary patch literal 298 zcmV+_0oDGAP)_@c7lHna;~0McXbCYjV1XiE ziYLV{IPa`?>_TeJAR5;a1152AVnrb)2Fyf7%0e`AK-N-gsFDNG4q@NJV9&3B$2&PM wtI=jr`BVaR*|hEp`T%r0{sf1<0NWRM0g~l5=2#$T=>Px#07*qoM6N<$g3e`iz5oCK literal 0 HcmV?d00001 diff --git a/flags/gl.png b/flags/gl.png new file mode 100644 index 0000000000000000000000000000000000000000..afaab2d4e706ab185c4ef3e7cdae344213bd1cac GIT binary patch literal 271 zcmV+q0r38bP);_|OeB_R`t>@$=kFY3-u1(;Y$by~yHef#6_y@2-&k|~^Y!`S=Ftx|{`~#hMPvW}|IiFGsFBFo0001LNkljDU9r^(1S(MRba4#fxSs6c%*6AgfMp^>vyf0ifg{rjnPim%4NOiG87yTO Y>W`cKUA>TNAy7Sor>mdKI;Vst0O~6vga7~l literal 0 HcmV?d00001 diff --git a/flags/gn.png b/flags/gn.png new file mode 100644 index 0000000000000000000000000000000000000000..4c1b49ab5f40b92b2df4b74cc5aeb17388b25e1f GIT binary patch literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^5i0e5)wLcfd7^WnM7%goF s3JQ6;IEHXsPfkeS;Emnd)fgwjaNbM)A?ru$y+Bz8Pgg&ebxsLQ0G~t`f&c&j literal 0 HcmV?d00001 diff --git a/flags/gp.png b/flags/gp.png new file mode 100644 index 0000000000000000000000000000000000000000..a2de6b224154750476b7368c7bc8b13bf9f382d6 GIT binary patch literal 351 zcmV-l0igbgP)6) zJa)mU2Y+=00|NkshD6o93`|^MJ~sj?Cjnnm17T}c;l~c5n>G#%0Gy5mzON`TNNy7_ z00}FD5GGs^6&e5)001cf00sa6LjVINh4$DA01Pes-3b6BhyVZpao`j|0002GNklpG;Ftu});yPw(!2F#y<8k|2#1vo=^t zDKR3DDd%l7!j@tMk*em%IlDqS#o7Ttz=j4!(*xKyW-BOG%N}4J8~Aeo7*?3!(7xB8%ql7;j7{~l zu{f3$jzCK*z@-I2y@GHv(WanvcKJ`0CUd&|NlOk0OKJTMu#s30001NNklKg#iGDB!MRnlO=MHSsG$X!_qM@(R+IW XVaF-6Gzs7>00000NkvXXu0mjf)eCyx literal 0 HcmV?d00001 diff --git a/flags/gr.png b/flags/gr.png new file mode 100644 index 0000000000000000000000000000000000000000..570204da7acfef015c7d997bbb31a52fa56fd4ac GIT binary patch literal 221 zcmV<303!d1P)ff- z+C6^1|Ns9DUaz$-xgr1n09HvvK~xyib%So)yUrq0@_3^TOZ4!(QM=fH5=aD$Kqh#j5VUav XRaYCf##gjl00000NkvXXu0mjf)i7hL literal 0 HcmV?d00001 diff --git a/flags/gs.png b/flags/gs.png new file mode 100644 index 0000000000000000000000000000000000000000..488c5666a4f57f73990ce0cce40734c5b86dfad4 GIT binary patch literal 362 zcmV-w0hRuVP))sIOYN|@(Ht@uD5NJvk#U2w;&g&MQi(Z4ISv~vvwD|mfRfsTl%ucDKQJ*!PGMG7 zVJ0YD2_$k}VJ}*7t5t2N^25p7+vsv*W~m<&hf%3K#y4pLJ-Rc;_U9i?OeByri>T{ zAqIR)9(LL&3E_1q)RIa$aFKx$rY#T?k}EW`_pDhn5dUaiq=#{-0jQ<)j2WS7KcEC) zZ1hUkMyTac!{%xS1;CdTcoon9YYS_A3*D+#Kd%bJeB^S;5Bf(AWCvA&#*i)q8mwam@E{Qdm$_3+~A-{aAdq_&iayy5@<|4En7msP?n0000-NklIv=Vd#V`Yb=Sa)WEMX_oEmd0d+1HR)3eJJ!yf8m!-PSU|I^ zA#Yad!i(vX`fCfS*)=L`dZr6&lx$P9?@{)dsO-(4S?#Fv>=w|jcuyC{5Q)o6FGlh; zDDbcZJZjp+eL`))_x-Bu2DwRd?oY2fGi8gkr}AINOZz`Y8pbgx8_ZUCmf-Nr>GcW6 zG?S=ZO*L=Kmd7ZB-HZ2ZynZy(QgX?R$zopr03kJFV*mgE literal 0 HcmV?d00001 diff --git a/flags/gw.png b/flags/gw.png new file mode 100644 index 0000000000000000000000000000000000000000..b79d816a88cd508bc9f9cc4125516803c51c25a3 GIT binary patch literal 203 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!3-oF?)7E^DVqSF5ZA|<^7%n#A?yOeOe}MG z<@8xNPYbHWa|kWvm2+U_kzr3#>7?w2jPi_@o&%|hOXfXp9+j=Gj@$X8-p@Gt~faWlGy85}Sb4q9e0FDGTr2qf` literal 0 HcmV?d00001 diff --git a/flags/gy.png b/flags/gy.png new file mode 100644 index 0000000000000000000000000000000000000000..69034dad6a23dc4bda0f5013755f762aef35cbba GIT binary patch literal 323 zcmV-J0lfZ+P)5r444@ VDY$$miUa@v002ovPDHLkV1i2~k^%q# literal 0 HcmV?d00001 diff --git a/flags/hk.png b/flags/hk.png new file mode 100644 index 0000000000000000000000000000000000000000..17372e2c10994f97596dd393484e4dbc5f60bfed GIT binary patch literal 262 zcmV+h0r~!kP)*?c4 zHQp-{_}SF@+}PkX9pzO){qXPj&&ud)TJyE6?23HnVNda?pWZ1D3+ekr0001CNklv(@{714-2^tEl4IrtIycc#UMxTTPrrKP2DXqZA>zTnTmS$7 M07*qoM6N<$f}B8reEvK-Lopk8sTp)S) zg?88VMQ7f=`SRz%yC2_w{r&Uz|F>U%&p-M4^3xxk?(3^Ay#N3IKSS~P$@T#{KofjD zT^vI+&L<0~Fi5a9Gu5#q98O?hY-W%tFy7!S@n+2(jzASwCYcx}CLbLprWhHf8=@Z= y42_kiG`cdX%j>rsJbk=#NyB`G1PLxjUIsfE1-F$G4kZ8$X7F_Nb6Mw<&;$T~lutAO literal 0 HcmV?d00001 diff --git a/flags/hr.png b/flags/hr.png new file mode 100644 index 0000000000000000000000000000000000000000..f11c40595e83fbc6c1771f3de489510b458e2d37 GIT binary patch literal 286 zcmV+(0pb3MP)dHy|1B-kgOmT`TB0E0OiHIR-~TP=?%Ek$O!lWYoO}UZKZ0Ap+O%iwDe!TMT^s!= zNYMJeOHTzB5oXN$q1>Q|W_DF>c$S+6g&!lA3&73Bpp0g*X34Nh0!8~^|S07*qoM6N<$f-2d8SpWb4 literal 0 HcmV?d00001 diff --git a/flags/ht.png b/flags/ht.png new file mode 100644 index 0000000000000000000000000000000000000000..ce4f979e048b6d8821f322f6e9056a4a0aaaa623 GIT binary patch literal 202 zcmeAS@N?(olHy`uVBq!ia0vp^(m*W0!3-oXoc*!{NO=eNgt$gb2%gd4fByc()l1i& z*}HE?eL&sPwqIZ0ojbU%s@x{B&Hk){{g?MI6Q)F+Q?TE?qkZwrmFMqWnpEu@*5Ytg z&f)+6|NOd385HJU5-^$g?NdI`SSwE##}J9j$pXiDCD@kFnXy7adh!a1GE2F%I>xdT zOHK=cM8TxgCjyQf3MUJVIf{!ueoCBrn4#H|k0JV+TD{o6V~>EQFnGH9xvXzopr0EK5GJOBUy literal 0 HcmV?d00001 diff --git a/flags/il.png b/flags/il.png new file mode 100644 index 0000000000000000000000000000000000000000..0e7dbe9b758465889476fb980dd1b5bb2b8582c6 GIT binary patch literal 156 zcmeAS@N?(olHy`uVBq!ia0vp^Vn8gw!VDxI9G)Z!q*MZYLR@otuDRr%e*gLR*YAIP zOU`aR`pPcjWOCb;@~JmF7Tsg8*zy1Wf4^^Y-GJ(iJzX3_IIbt(=w;wB7HmiqWm>S| zpw?7{R~J3MZxOPvz7QdzEgi|r#c3)$eXlIXfrck(4FB|s*o65vHUYIWc)I$ztaD0e F0s!>~IduR4 literal 0 HcmV?d00001 diff --git a/flags/im.png b/flags/im.png new file mode 100644 index 0000000000000000000000000000000000000000..008e9f747d8eaef4eb861265fc434f15d098aff2 GIT binary patch literal 268 zcmV+n0rUQeP)DsZi)t8^l!mY_5EX8to%12knK2W)K zYsnxd%fFhxl9$D>QmO4dw9rQXudxu?y+#brAwGCqT`7a*1E;D(%Ct4F0Rn zP}yNI!y{+< BR?`3g literal 0 HcmV?d00001 diff --git a/flags/io.png b/flags/io.png new file mode 100644 index 0000000000000000000000000000000000000000..410e94ef6684d3076a621bdafc5fbfce79274612 GIT binary patch literal 508 zcmVhKrxYXMnQ7%-|tIj@2?o?&|Qoq?1~6 zt9OmMsIkHH_W4k2rp9!Fu)WuzvC!7t>PBLkB~^0(D1Q9>{n((y#&4F?rHG7*$WHEhHuC>$=f-iR1ESS^WMM#{R0}ibwo;pfMm1(x9L+uUJP;X1Al_d)rdM4fS*%e39?<>K(^s;a90|NqVrCIA2c4Q7U%00001bW%=J z^!hgLV*mgEM@d9MR2b7^ki!8O=plg<$ijg%5Q=g#LwN`ZRuN`NSyo97GzmdQJ_$B< zZebyQGzngADJd=<7AXNSn1l=tz#xwU&_eUI((#hw~S+{RuyLZay(DuW_^}oN$=+XAV!sb;~<3mHs>Cxs%zkl|?z?#yh_rk*e|Nq(m03)A3PEGDk0001lNkli*&fA-&ruY2(&Rli0e6R^Z)<O}i29-$phf#vFR{&)hJYD@<);T3K0RZpq7}5X$ literal 0 HcmV?d00001 diff --git a/flags/je.png b/flags/je.png new file mode 100644 index 0000000000000000000000000000000000000000..13e477ce700538a060172bd05c280e7cded0774a GIT binary patch literal 372 zcmV-)0gL{LP) za)bQr@BjY(|<`Owzx#)SIi z;pc8{+EgX}{r&d6#pzpb-x4nS_3q#qG~y~mokG_aO1bf{PDV793eZoNac3SeKJ|x<4&Xf$@Viq6 z0Zq%vwq7m4-dM~4F++Abq4vca%h~x+WzL@1+1aI|vwDTx^<8_{UpKn6-RJ}K_$VB^ Smxv7j0000gQ99OmCM zo8jL@28P*IK*>E;l6!$vfTxRNh{WY&4qh?u=4O}60c_zaf(rI63po^-9<4T>a@h62 zpQ5&+85}MALJb`bKNA=ycra+U@C!0@I{dU?xv+JCbXT74uEPd%`W{-Ayk}<6J`^?e T`(*}BpxF$bu6{1-oD!M<#HKaP literal 0 HcmV?d00001 diff --git a/flags/jo.png b/flags/jo.png new file mode 100644 index 0000000000000000000000000000000000000000..e4d4e9a6a86aab65d39af0298377d3d031e875a5 GIT binary patch literal 223 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!3-oF?)7E^DW?FR5Z9NJW*>F(IWMC5sHlGP zq8ZOxCv0x+JSVJi)WZFF&$Q2nPu}v4nZ+w(5^rI`!Zk}rdle8|-uM6i|8s(B3{|#3 zWAftX#{;PdPZ!4!jq|N%-Gv$qc$@<-SBLKSAIf=bGVjJ8(R(FN?uj#DwCHRQX6=#q z;K}50|J_WH61Qa^|13#Z@n91BluHE+e`5EDex0b;M1& literal 0 HcmV?d00001 diff --git a/flags/jp.png b/flags/jp.png new file mode 100644 index 0000000000000000000000000000000000000000..ae6d0e9932935745ddc3f536ece90291ee5ba5ab GIT binary patch literal 215 zcmeAS@N?(olHy`uVBq!ia0vp^5bP0l+XkK89h@< literal 0 HcmV?d00001 diff --git a/flags/ke.png b/flags/ke.png new file mode 100644 index 0000000000000000000000000000000000000000..5714b6752dd5ee9aa12f1694c93d3eec59ac6b1a GIT binary patch literal 269 zcmeAS@N?(olHy`uVBq!ia0vp^5qE9*=ArBDWjl$4ZHmX?>o!e%irI8`{EFf`mC zEzQr*U&g?2&fUG5fx)=d7zm!soVgolJ`kiaC<{fD0~r~fE{-7*m#3b6$mdKI;Vst04GIWIsgCw literal 0 HcmV?d00001 diff --git a/flags/kg.png b/flags/kg.png new file mode 100644 index 0000000000000000000000000000000000000000..a07a247575576bcd6d6ffc19e2944425d8ac478b GIT binary patch literal 278 zcmV+x0qOpUP)^LOp z7cB8*9Pw=$?o%J>Au08Y6Z3x-@^cyNIwkUM8uD-&?M5QMJPkTpjXk z8tXD9{MZEaiWKs38u4)%^oJDpo)GIVC+HF_>@_9uVjSrjE9em|LoZM)0001SNklB1NJoik9;6{7wJgCYvz{KMXPPRi0e=kE@mLUdn;t+ c&;NYq0bPGDM_4I+RsaA107*qoM6N<$f^@NO+5i9m literal 0 HcmV?d00001 diff --git a/flags/kh.png b/flags/kh.png new file mode 100644 index 0000000000000000000000000000000000000000..bba9b54a6804d683a85f3f7d8aa807ea773bc248 GIT binary patch literal 264 zcmV+j0r&oiP)P000mO0{{R3)Ho!W0001BP)t-sypoxr zhl|ZBM60W-y1KgAK3AcOkHoya&d$!?11Qsjj?Ef3uy=#q11QVE!`n+^)@ppHq@}^Y zz}*2Ror8$n1t_+Bhu{Gw$H&LMud=hAqRohu-l(zMUv%IAB?B&@Y@v4y0001ENkl+S(r}Zzdz`_mzt`M$8Qt3C&@UnDxD(st?#>e>?ACkMTO9lO`tR@X^~)6lL5SFg zSvhK=$JOOge61Exk&UUz^7Z*&hO`VwjGbeDyUX4xUYY>Z|6d-OyJWq~-atb8GMxg)AI*>V4&Iw}RjX3#XT$MO zlT!2X+0gUnU*K+-&kg@1^bONC-FMtSIc;6jE#qcT+of9s81{Uz5l8lVj%b!;84WV_ zVhm2i5S%Duq)L30$+_rDbS_EHQ>ESr2fYduWpud;$teWla;Vt}87b7nK@>zC2X1he zB6=L#2JKtc+Ux1(tnCl~0)5Xd#+R+3`Nm^R4$d9SSURj|Nk#-l?R6=`*n5Bq_l5uEuwx`4Mc8Jtpwy@0;+D9 z`r16R2=`@mLwvCcHZLv|h)s{Ph1-nKB}2Fv!RoJJw6Fi-ra3lGlI*ypyxQD;e;92> p$zr}`p=7>cmMt_bE9Ny}{s0u8EUD=`jBNk_002ovPDHLkV1mVte@_4a literal 0 HcmV?d00001 diff --git a/flags/kn.png b/flags/kn.png new file mode 100644 index 0000000000000000000000000000000000000000..c2fd8ededa83d42a10a3c4d8a0afe4d47e1c7162 GIT binary patch literal 294 zcmV+>0oneEP)=#G(-Z0001Cdiu{Teow_sbge0oJcyrSTsm9Z>_*>#C;S zSYUcP&0bgc2bAl>EXTpv=f?qG?@4zqf%6P5q$iM_iTVM&e!D#HFJ^%m!07*qoM6N<$f(p=fJOBUy literal 0 HcmV?d00001 diff --git a/flags/kp.png b/flags/kp.png new file mode 100644 index 0000000000000000000000000000000000000000..2297b5520e11c1c7731e3f12dff555acd2ac111b GIT binary patch literal 269 zcmV+o0rLKdP)g(<+HSHWI^@)!1Wo-0wdiITz?HwuZEjRw~@$Wc6?j$bxuCee*QToKk{`K|se1re| z{PJLE`_9n#wYl&_P4}Rs?I0`eFgpF?i$#0001JNklg0r+jb|59ZENnM2Eh2^X>od0=AJdHxvTQ;#m4b2vaS8eP1tDIQ8Z_3v*US-Uu< TN9M(P00000NkvXXu0mjf-3WUs literal 0 HcmV?d00001 diff --git a/flags/kr.png b/flags/kr.png new file mode 100644 index 0000000000000000000000000000000000000000..35c39eddcd67b57a454894c8e65b9df5fb65e392 GIT binary patch literal 334 zcmV-U0kQsxP)Q_0$;8QHV`EKCP5k`){{H>|G?Vx9!S2?I_{g-8!qj4cBOKp8O&`btTS3j3^P6jHDMpc1ZK(6i(%@@)T5+q_Jy6+0RRAP?OE~mA00026Nkl;Emf#~9?K)7>m@4>hpBMMxe0(FH1%f-ocSCz1%f0GJ?V900000NkvXXu0mjfw!50G literal 0 HcmV?d00001 diff --git a/flags/kz.png b/flags/kz.png new file mode 100644 index 0000000000000000000000000000000000000000..1ee794a8b7b56951d273050fc615c330e0c8c30c GIT binary patch literal 300 zcmV+{0n`48P)vaWBq zb}_T0UAKfxwviIByn4BBIJ2NnwT_OvUxvG7ce!x^ugU(!3;?gn%bA8K0001oNklv3`B7kl?{?KmwN?-f4)0000&!}^E;~;b#}JO|$ve7PBs!kV zVQdt(P2f6Xd2a7!wsV%ds=v!vqdKE&p?4@wqus%!adgwlgxw XuAQB=js4-h2h z|Nidz^H;=-&hFkNvuX^gS$EK)w&u+dtX)97eZ}k79G$vks8#>}|Lq(kWhP`#00012Nkl_UtP4w3{nFDElL2}v#;SCz|V7m((!Q5|G&Fe0RaKEnkC)Pg0JNN_RJN>r4bhw z7s|j|a?t;DbaZ7@3B~95#?;%H-T$24|E8y<0001I%>Vq+7G})Pm|_= za;zXO{!KgbWi3m zsE$eq+%nU!tk9)4PkmawikU|&gKCb9MP_4xMozp6gKDmTNvV-%!sJ?&;uMwgBFEK} z^`jI0*!64lTvH}hE9WJu2$~czXjL(2*Pjzq>%7Z%4``92r;B5V#O34(M|mX=L z0)93m!FUT=c`BhgB9Ja2!)F#tST6sp0JBmX09HZ&TL6t9DgU0002DNklkh&o42I!N9NTEIfM`9;_Wtiu<|%WM`2OWdARmqXsnNFUx^`FE^!d8Vm;w&d zG&Q%<#UvIXS>#VIaDIT3uy7{XI<~%_F&|ez#AJ_{Qgma6LViJST*MS(wqU6SytT2M z6YV*^K=%cr<$#F8phJ)va3j1Iz$e&zU*Td>9TZX3OZAa1fchO)}QVI4?3@wuK*}$?!L(Ct-A8g*5Qqw`|t6;3NUfqQlJ0;09Z*xK~xyih0ezc zz%UF0P<8L7+nN9Wn>FNWoCoqnAPmahBm!3#XAUCJ(p39NT@-;HGq$xd-X8gq#> z4jHe?H1^%ZFx8nsVgCRB|KC=|?gFZF@pN$vk+_^Z;RvI|3Jt|RW&;mJhHeHScF(3x zN0!|!QxvSrI0F;){Bnexde;2eBNL%gv18`X8!m!ENfr#vEPM{GoD8uY%J(~y($)dZ OWAJqKb6Mw<&;$S=V@dh| literal 0 HcmV?d00001 diff --git a/flags/lt.png b/flags/lt.png new file mode 100644 index 0000000000000000000000000000000000000000..102ea748043f8363cd185af869bb851c28d77778 GIT binary patch literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^(m*W0!VDxuZ6%iiDgFST5Z91aV}}qMhAfwZ>bie- z3Rku8G6JO(JzX3_IIbrbII{8aOewh7AY>Gv(5v0S!y?f$v5`?VhM}xgWAB}Y+$liC N44$rjF6*2UngEEC9PR)B literal 0 HcmV?d00001 diff --git a/flags/lu.png b/flags/lu.png new file mode 100644 index 0000000000000000000000000000000000000000..763ea743a8890429cb9d290e1c670e626acb3833 GIT binary patch literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^(m*W0!VDxuZ6%iiDgFST5Z6@?zWm&=_y7O@Z#69$ z7T())xF-%MrReG67{YNq*}#pBjb};$>%>NeW+9^hh2Czqmy}Ex2Pz{5ptDnm{r-UW|xJeri literal 0 HcmV?d00001 diff --git a/flags/ly.png b/flags/ly.png new file mode 100644 index 0000000000000000000000000000000000000000..73a957aea56a41d5ca3d1ce64ccdf1f871365e68 GIT binary patch literal 159 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!VDx^^%Amxlx~1eh^vW-NlQzMx3{;KmsfLh zv$3)9v17+PJUj#h1dNP~tgWp#Z{Dmt&+R#bFi^)mC6*Z=jh-%!ArhC9cXYE!oDisJ zXDi@ZA@XG**PH5@t!f`cd=G5c)Zeg>qtQ5{frpXdnaZ7sOn;t#0BU6LboFyt=akR{ E0KuFv!2kdN literal 0 HcmV?d00001 diff --git a/flags/ma.png b/flags/ma.png new file mode 100644 index 0000000000000000000000000000000000000000..3047a7ab24af41f80381b8481b545ec818d1d0b7 GIT binary patch literal 145 zcmeAS@N?(olHy`uVBq!ia0vp^5&X$VED|T4t(nt$B=TbG1D#T{ rPNx$qR24O~Mcf}1=q|Xx8oaMSpHssTvU1C|4R%EZtKo)>Z`l-B>?S8_H=O!(Kx^LqNPxS z0*^!B1Rf6M1qN&KzVBZu+dDbr*X!_<#Op6C+<)69#W%kY<}A83r^KQoHhXWG%#}mE z4_VoZ8M75VM7HQPCA7{`)J|n){KJ%ByYZQdqWP~$rN4fQ=YL@Mv)RJD&*2^u&^iWB LS3j3^P60oneEP)XaVg?dlXkTTGWF~kE1gQaPG0001iNkltWN2vn{g sL&J!SOt4QL0$;ycsf#Xt%et!j1Xr{-S!A5lHvj+t07*qoM6N<$f`6!TPyhe` literal 0 HcmV?d00001 diff --git a/flags/mf.png b/flags/mf.png new file mode 100644 index 0000000000000000000000000000000000000000..0fabfade72d988026e142790604b095898b9e338 GIT binary patch literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^5i0fNT%m4rXGbm4u-Iy~Q tC@AFV;uyklJvm~lmdTXH#>O}i29-$phf#vFR{&)hJYD@<);T3K0RZ@*836zQ literal 0 HcmV?d00001 diff --git a/flags/mg.png b/flags/mg.png new file mode 100644 index 0000000000000000000000000000000000000000..5fe2a14795ffe8ebdb83aebe9521c32b69b2aecc GIT binary patch literal 98 zcmeAS@N?(olHy`uVBq!ia0vp^5i0dC)qyPW^Gt^myHk^3` u6cq7vaSY+Op3K3U%D`x}BGkdbh?Qa48u^DBss}rO@(iA?elF{r5}E)NoEWzN literal 0 HcmV?d00001 diff --git a/flags/mh.png b/flags/mh.png new file mode 100644 index 0000000000000000000000000000000000000000..e828622522db2525de5ff0879ce509cb685b6668 GIT binary patch literal 344 zcmV-e0jK_nP)u8CRil2M>Mbu~5VmthpD4vF*%ptR}U@V7D#TGCC00006wml=*|qWJ!ASyx(fdSSUh4*#bhAgutzc9~!lfX49J1c1`W7>CFz zWHo>eQ6-&h4Dx9O{oo&ALNI@Q=)D{PkKon?UFUp@qx=CJvW)hqYwO14mJ`4tcrWMk zoXhV4nSy>+0<|=gSSGy$gy(mV$IisykrrSCvYY}AAx5H@>?QlQr%7B mw8=lenHf}O)R|@F*8K(tVKiYW`8`Mg0000=l literal 0 HcmV?d00001 diff --git a/flags/ml.png b/flags/ml.png new file mode 100644 index 0000000000000000000000000000000000000000..ec87737bfd4001cb58966341a6efe8d7104b23af GIT binary patch literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^5i0e5)wLcfdM7COS*f1*r s1%*6a978y+Cr516GMUoY*cd0mpb{znFiLRt3ZN{5r>mdKI;Vst0Co8mJOBUy literal 0 HcmV?d00001 diff --git a/flags/mm.png b/flags/mm.png new file mode 100644 index 0000000000000000000000000000000000000000..cb48ba7c0e7e0cfcc5787b17f747d5c7bb9bc756 GIT binary patch literal 274 zcmV+t0qy>YP)&^ z{r&&ym`uA%{Nv@1)Q;;lMfb3_zQ?2PQedOpqV4$YZO3eRyd?h21@2T~>oP)b$Zq`L z;yJW9{@FzH`Ro4w{%Xf*|NsASgf)1(A~doy>L@w>%K!#D4-fzV0CP!1K~xyijmudM zfFKM-(K-tbsHjxI{cqEeDjE{+PxCkd7Eka8>e>T+?}0FU!c0}eP~8jkQKXbg5R>gh z=gS3>k9ah4>44T{ftwYj-2}SbKeRMqvgH^6<}|_B;!cPzrb)oE#+W8!A4r|^fOlS4 Y0jy*uoMDg|xc~qF07*qoM6N<$g78y+%K!iX literal 0 HcmV?d00001 diff --git a/flags/mn.png b/flags/mn.png new file mode 100644 index 0000000000000000000000000000000000000000..193127372217755786f2c7d8cfaea17ee8f89139 GIT binary patch literal 266 zcmV+l0rmcgP)v%|$2LZ5-8IAjmf>>6;JWfEULw zEYw;e*k&HfJ}KXO7~+K$>YWeej}!UN0@GO{6a&yuLmH%zO1u9pkr-gY@$iSQCod+~o8x?Qd|&chTLBBN03R!WOca8p zEebaX<`Ce~WjWG+uqP8#*#OWc&Jg5oWDulT^cd(NAh0UmSSI0E)inXQ0lL^ZwCfwm Q`2YX_07*qoM6N<$f?ot_H2?qr literal 0 HcmV?d00001 diff --git a/flags/mo.png b/flags/mo.png new file mode 100644 index 0000000000000000000000000000000000000000..145f0882cbff2dd462bbcebacf54c72027fb6613 GIT binary patch literal 268 zcmV+n0rUQeP)>keYyfy(`_oiB0001INklXr*0#VT6b SR7kA=0000=13;@sof`Z7$Vv$ee{kBSae~#7c`32{*?RoA+O7f_*4`TQ-2##D60{{R307*qo IM6N<$f_TTI761SM literal 0 HcmV?d00001 diff --git a/flags/mq.png b/flags/mq.png new file mode 100644 index 0000000000000000000000000000000000000000..6885baec103caad2a5dbdbef27a8f2a1495457e4 GIT binary patch literal 338 zcmV-Y0j>UtP)NRmZ4bwXh&Z4m<_BkANTl1l(sf0`6`LPe2CA1wf$E58$X}CqR?7P~QPP kr9|g@mGO8u0Qddhe?9ajb|7ieHvj+t07*qoM6N<$g8C?xZU6uP literal 0 HcmV?d00001 diff --git a/flags/mr.png b/flags/mr.png new file mode 100644 index 0000000000000000000000000000000000000000..089825cb378d7c8718fb9c4f784bae999158c470 GIT binary patch literal 287 zcmeAS@N?(olHy`uVBq!ia0vp^5Kh%@$=( zHTr*qK_*xC{6-{>!7}u`AnqtJ1Y|M~kT(M-E640(HPZ!4!iOWkTT<2;q z;Bk#DeXuU-wa2Ib^_fSww%t-^ei&DzpsnD~vi+d9l=zl8o=Infd*;;UpJ7%Iczb)B zaBD_mQtFJt@z$j1CM5TOP8sWZSD{R$*G}mY=f~c%pDb;bE!e jdC%ZK6`kM1{~u(`(bN{stU4_NbOnQ_tDnm{r-UW|@C0VL literal 0 HcmV?d00001 diff --git a/flags/ms.png b/flags/ms.png new file mode 100644 index 0000000000000000000000000000000000000000..4604dc67fd057e13375eff62774a74cb63f5ca1f GIT binary patch literal 331 zcmV-R0kr;!P)Z-TWEoUliQt;QTAvwD{&MUjtIC2nCn;Ge7!GlnTd zklEMe2sv@2vC%zpMni6r^UTuVYkFF7t5t2N0HVFuJy6+0RRAP?3F>&S0001{Nkl=`{`B>(siDEHtW|NqYvD{=GYn*aa+I7vi7R2b7^5ET{X5QPFUB)}lb%*T#Zf}4$>irHUIzs literal 0 HcmV?d00001 diff --git a/flags/mu.png b/flags/mu.png new file mode 100644 index 0000000000000000000000000000000000000000..aba837fcd30512e8dd233124c1189da0d8ef2c06 GIT binary patch literal 106 zcmeAS@N?(olHy`uVBq!ia0vp^5gTe~DWM4f Dhu9k1 literal 0 HcmV?d00001 diff --git a/flags/mv.png b/flags/mv.png new file mode 100644 index 0000000000000000000000000000000000000000..82546eb23b9aab906e5d724f63a770c1b9554302 GIT binary patch literal 178 zcmeAS@N?(olHy`uVBq!ia0vp^5I8r>#g&)^)u92T@o-^Y!ROd)NbYJ;us=v zIa%NUqr?iGgZ*q5R4ZoOjNIt?p|yKzS)9ULjEr7vyp}B78~GI@IRtm}E1R=$ zIkWL_GBC<9vmFpn?&Ow?W*5w{Q3e`+PEgHwo~gx@)Bk{+I8PVH5Q)pl6Iz+|I62K& z`WcTs5Epp%G*wiiH`&)u`nshC9V)- z%QSe9@L)0%vt3?CgGsXtpMx)_q)daO9Q%TH76#t+n%~rxM&AP3#Ng@b=d#Wzp$PyU CNIi}K literal 0 HcmV?d00001 diff --git a/flags/mx.png b/flags/mx.png new file mode 100644 index 0000000000000000000000000000000000000000..97a92445f4011a274967e3a995f9e4cfb95e87ef GIT binary patch literal 252 zcmVGc~sxm zz_6i=_weKU`}*nP)wjB-x|VU+*u95mOQp)b?yIu@|Nj7JN6rx@@nX(L00012NklP?Q3#%j>Cxfsc zqY!pUR(4JS4gq#<>~``;9g9~fFiH%p6eE}wrUXi_{E5?%Ac1#wzAu8Sa%bSqFlMg;?8H!DyE1Y`mM zWzVJ(3kYE&8(6m;EbEz>+C)Xn00H>j-T(jp(;_4BySw0KX8{0a+dYd$0001hNklnbO=cyq60xy9B6#}L; zgf+I|A#lKY!s3R(l{VZ34rJH1Txrez&=`100000NkvXXu0mjfVF7iu literal 0 HcmV?d00001 diff --git a/flags/mz.png b/flags/mz.png new file mode 100644 index 0000000000000000000000000000000000000000..ce7603cb6184124f9fcad2fb866a5a4ac5148a64 GIT binary patch literal 268 zcmeAS@N?(olHy`uVBq!ia0vp^5UMFbuMrmzqC^M}7ZndnN|PISS^FljYYeY~#&Nxu|CL z^9pmUcTf?h^i3b3@5- z?Td@n-qK*6^@KNC=3AhnLixF`DO_3+Q|I1)nR8!G;*5rio1^z)1Bv%c`lHF z0}h9aR&K{%^*q`a^zXmEZq}lZimV;#M|TvoRYnV5{9s-8W_F?Do9#Qapfthb*#LxG~b^AGF0509Q-@Ig6aPV*_t g6+mMBhi7$VyCO7}UXJ;g33LL3r>mdKI;Vst0Jsfu;{X5v literal 0 HcmV?d00001 diff --git a/flags/nc.png b/flags/nc.png new file mode 100644 index 0000000000000000000000000000000000000000..6c84f1cfca1ac3cdcb5e8fe7f5b7510b4d1fe334 GIT binary patch literal 298 zcmV+_0oDGAP)imE(ZB%X)C2hB00##EQA+>@i##xj zDt%fTGeQV~g(=3Z15i+Ayq5>>+yI_EU7lSz`sM)bK{Wt1tpJrn-9BjZ0001mNklO3`WsdMGNv*M(9vd^ZsusMHdbl>s@5?oteOWC-@&6l>*>_isz(HGjL!w zh(066Pq4HOSiuEtE=w1zTi3cvKh`^}T~9F7$#_|B;z9O_2ftpFmPXW0TC}lr0kwib wJxa7(PU7p)HS3=4`2YVu?*{D$L2Lmpti^$P?L1u^LpZJ{ z|KMkqm+(k@$JTTtM`2^*!*_Rgn_pkgGD+Ow%3icg-*vIl%R(&yV4hDWp4!%U!X`uzJmnPmU}{{VS3M~W|V0001gNklL@tl+PM|0N4fy*Z?cf zRe+C0)Ic_AU^Ng@(i$sZRK4^)&|seyr`SeEU)?X>dpKh#h#IU}nwuFJWI~-U9!Ur`1}b3iboFyt=akR{0Hhon;Q#;t literal 0 HcmV?d00001 diff --git a/flags/ni.png b/flags/ni.png new file mode 100644 index 0000000000000000000000000000000000000000..20ef0181d8169ef58e2ebc63615fdb3f6b1cfe17 GIT binary patch literal 214 zcmV;{04e{8P)OWa-~9XXtIOf|_2aF{ z+o8N+{Q2+u`0V}s_NvV6|Ns90XT~g}_u&8l07FScK~xyiW01rR80al0js#eQc#*jb z5(ps5z|P8z#7CABWa8mq#vvyr%*Z8%Lr#QWf>RV(4%u=(0X7u345Bat03y~XFVd^e QJOBUy07*qoM6N<$g5xA?Gynhq literal 0 HcmV?d00001 diff --git a/flags/nl.png b/flags/nl.png new file mode 100644 index 0000000000000000000000000000000000000000..d33b631238886d722918fbc7e6a07a1a621e9270 GIT binary patch literal 113 zcmeAS@N?(olHy`uVBq!ia0vp^5mdK II;Vst0MyzYxc~qF literal 0 HcmV?d00001 diff --git a/flags/np.png b/flags/np.png new file mode 100644 index 0000000000000000000000000000000000000000..4537d4b827e5a3574b0460ab86301643bbefde93 GIT binary patch literal 316 zcmeAS@N?(olHy`uVBq!ia0vp@KrFz)3?zTmvT_5dgaDrqS0G)jnp~lh9IuhPOfJY+ zzmCCj5(t@3TrcByRn(5bd@_UCBt^qE7PCnVQr!h=>6L0JcO@Nei`W#ZrdjCK+?8^C z5?OX%FYr}a@Avc9AKAtK{qghT;>{(hsdq$d;u(7qfp!R$1o;Is{QmRl&l71)<6r-* zWT(UmegCs~$$O9!D?MEtLpZMcp1m#9WWeKkahAx@Z3~1JzBK*+fBK;tUB7eB&h)ub z5?sGGv2M<)q_*O9E=!ib&W{#LzF=0^+4(!h`AnmdK II;Vst0K64`iU0rr literal 0 HcmV?d00001 diff --git a/flags/nr.png b/flags/nr.png new file mode 100644 index 0000000000000000000000000000000000000000..ec3833d4944d6acca6c3298473d4f420ced11635 GIT binary patch literal 167 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!VDx^^%Amxlx~1eh-=%dL;wH(SN52g-ne<& zp*aeAN9=YY_h({7<3^%hN4X=h~kk^SU_vet$9 QKm!;&UHx3vIVCg!02?wqY5)KL literal 0 HcmV?d00001 diff --git a/flags/nu.png b/flags/nu.png new file mode 100644 index 0000000000000000000000000000000000000000..1073fc2542244922186b209acf1f1cafbb8bcb70 GIT binary patch literal 290 zcmV+-0p0$IP)YS#tdy=HG$tOvFDM)_v%+gwPomFs}04QkSYkJv3Rs7Kwf~pYq0001eNkl3!d zZ%Y7kF=$mcO{dkoF(&{xsuHabEz0TuazFy(zK?*+0p@L1x|^n2>7mG+u*QY+qGh4C oB_NK^o9p_#8A$@}ANdpT0fpl@vE~Cp;{X5v07*qoM6N<$g5uOew?;!_p3&9Avna%>>fYF$Xqo6 zx%vXEeKb;4A+%DBowM0~&U`q5SJtwe#rd)Cu?!3`0P+aejY_s5R7y6TO(O(7z!^

`vxX2(lVc?q))OE`v3nwLj%KYG3n0!Tz8-qzMd|QAsXkCCrq69FqvH_$bzA{ zr^iBgy@efX(ws#+Oi2|Y1%{tFHX1$J+%(@gLSVkAQjU?4&K)Bm3x*3Ue;Vd-sT4Bo gV9Jz9FwkINSh&t4>h<5yFrdKzopr0A%=DlK=n! literal 0 HcmV?d00001 diff --git a/flags/pa.png b/flags/pa.png new file mode 100644 index 0000000000000000000000000000000000000000..53d24bd9b18f95c4b46cbf362eb064c3d89f0bad GIT binary patch literal 202 zcmeAS@N?(olHy`uVBq!ia0vp^5Vr!8gUh9B7>)^pUXO@geCxD C?obf` literal 0 HcmV?d00001 diff --git a/flags/pe.png b/flags/pe.png new file mode 100644 index 0000000000000000000000000000000000000000..5cc73adda9a08f6343789075a0d7085682c4cce8 GIT binary patch literal 88 zcmeAS@N?(olHy`uVBq!ia0vp^5+bf{SYL0C z#s0r&|Ni{jtCP5mk@@cD|MA_Vh@{?_hyVQf{K0T?k;ec3|IQI6zf_>D00017Nkl)xeMU+iU zjF%5XLWDz>S5lH!7K`P~Lb9?#%$O2#avbdJ+(^!)Ls$U-y;v&|z2&2-00000NkvXX Hu0mjfk7Imq literal 0 HcmV?d00001 diff --git a/flags/pg.png b/flags/pg.png new file mode 100644 index 0000000000000000000000000000000000000000..5aef454eaecdbc3e3ce170bd4aca6ba4b9b349a8 GIT binary patch literal 318 zcmV-E0m1%>P)%v zCMGvGHy#27P6iHsetw>wp4?0z(jX*u3Ksj!76t+W0RRAz3>v==Blo};H5VGt8ztIA zA>v~nQBhGf1PRFyC9Dn~0|Nv6(H0O54$l-N)h{FLkQ>esCIA2c0P3!R0001)Nkl3E_m?0aSg$bHwlUb{#JTQ(vBsCM&?X zGEI6Ovx1jYnGUmUM^PbtA3|#)YQ1ND$&OX5e2tz{;w(4@mf;_n+a{^A0`O9RVkNZA zsi-aBq+n(hBm325=irf+D!B{T^XO>3sX$(*irU&0Mm1dO#Z3{vi|`z&ABqqmHJ&3_ Q_y7O^07*qoM6N<$g1-cD^Z)<= literal 0 HcmV?d00001 diff --git a/flags/ph.png b/flags/ph.png new file mode 100644 index 0000000000000000000000000000000000000000..a73871c4716ff7888fbf9c3f2e8dc05572f7ca3e GIT binary patch literal 303 zcmV+~0nq-5P)h}KQ zcm4F}jT^Z$P-I^(H?z49iz1I+Q)3>ZDr62Y8SEwGd*=xd!_CxURml)I)8`1+*mtljFaf75=E8DKOVT8oDLf z@MHmyGFClY{rv>xx??HjtLYP14&1a*et}Zn1UpviHr$0B6M+B#002ovPDHLkV1kX8 Bnu-7b literal 0 HcmV?d00001 diff --git a/flags/pk.png b/flags/pk.png new file mode 100644 index 0000000000000000000000000000000000000000..3149ca640c59bcdeaedaed8dd3bf409854965b3e GIT binary patch literal 267 zcmV+m0rdWfP)!A?~_9IgNW literal 0 HcmV?d00001 diff --git a/flags/pm.png b/flags/pm.png new file mode 100644 index 0000000000000000000000000000000000000000..88932fcb50ba76e7919880eadfc4660877ad3499 GIT binary patch literal 441 zcmV;q0Y?6bP)k>JF`c7001Z(}Hdlqi_NG<8ihb#pC^vH*_51e3`cgPJ#PGd72K3x}=%k;wY= z^Zm^Lx}XeJZ3c?ekXc00000NkvXXu0mjfEl|zs literal 0 HcmV?d00001 diff --git a/flags/pn.png b/flags/pn.png new file mode 100644 index 0000000000000000000000000000000000000000..8fc85f3770ca39c44bb34637651c6d3489c75d46 GIT binary patch literal 366 zcmV-!0g?WRP)y2V%;RSZ8+pTV;u9``S3gCfWeS)1pw(4OF`eYrom>FkfXN+@d zVYP;wAtiYZIc@7mL!PGtSScU}mGS{7jP%V)YUWIW0fIi~Z1B5GYWtzgmB|vw+{sZ3i1i^1IX2=bz2><{9 M07*qoM6N<$g5J-VC;$Ke literal 0 HcmV?d00001 diff --git a/flags/pr.png b/flags/pr.png new file mode 100644 index 0000000000000000000000000000000000000000..2382872720c56836f765bcd0a1e6463c891ca3d1 GIT binary patch literal 271 zcmV+q0r38bP)HWwJCNOB}6H49d0Rn3*ghM&3ysg!rUY7Is{_|#MG(NkHAYtAG z4+c)^8B*f85;f)R{a1_i30Cl?!uf%y_w;6F`^?P$|Nj6`@a+HqgSK!g0001LNklX6ficfyEves%og=3=XI|?cqxFs4a^;I$~|9<=SAiF|^nVo}?@tURg_iMK} z%4}8v!R3AD1l9ik|Ibim3p7~ko4q-Ziu81G4AD5h^sJ>&g8`3o;O6&@8@P)9R~xak zaouL!U#A>sEtl1DNSdKAkHKL#C&N^8hDB+jRSX7Sey8gnF!|4N%++c31zxY?L5wBb l*$d9iFr8o()@W8=$|Ub*=v(l@|18iF22WQ%mvv4FO#lH{QlbC= literal 0 HcmV?d00001 diff --git a/flags/pt.png b/flags/pt.png new file mode 100644 index 0000000000000000000000000000000000000000..83d60d687305c967c45628318098147d116b40ed GIT binary patch literal 260 zcmV+f0sH=mP)HXG$9y#2qpX^-08^0w*oFY&W<%gZ3f_1KwynvutN?VL03vk&il+dznVY4E z5c~lE>`gr1TL62a0MWw$z{A_qZ!OhY6W(@P(vkpaJOBV@0RI30R9S%{0001ANkl}z33f4FMo}yhY%H9TA}lh(=o0+mQmlfkTpXh45`1Ekf;?$yS0%)%Q0000< KMNUMnLSTY_HeKTY literal 0 HcmV?d00001 diff --git a/flags/pw.png b/flags/pw.png new file mode 100644 index 0000000000000000000000000000000000000000..b68dc97279f88d8ae53a2bb2047c8e6830781bd2 GIT binary patch literal 244 zcmVArCrqx>|K0#ft=2cZ!$bf8098puK~xyiW01uO z7$}pHWEJIN62>OQCM5#`EYcWKoPshCz=0vf4waFS5J#61gGtFS;Fc0Wm*T~3pe#33 uiU-s2d=SSANMrLdzbLa1BNf9C6954CDJ>G_)JxX@0000*>_g)aK^qm%@|#`}^v%uSJPq*Vos*(WmF<=a;;qS(|a>FN6V z`ti85s=ea>|Nj6usMRYTX6pJD0000#Nkl&&Ju%U7pM3I0H6CZ~V zvH*%KFFPlt{6TrP_h7arzU~{UNX)A0000P)t-sxN(N9 zT662y-O;46nlw`S_4oh&{-#W4-o3~1;^&SYKf8F0;l$1L>h6&uL&b}n=FZioO=z-Z zeB#Bi0fNT%m4rXGbm4u-Iy~Q tC@AFV;uyklJvm~lmdTXH#>O}i29-$phf#vFR{&)hJYD@<);T3K0RZ@*836zQ literal 0 HcmV?d00001 diff --git a/flags/ro.png b/flags/ro.png new file mode 100644 index 0000000000000000000000000000000000000000..adf2516ebbdf9101d62f57c36668a310ae413448 GIT binary patch literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^5i0e5)wLcfd7_{qurAx5_ s1%*6a978y+Cr516GMUoY*cd0mpb{znFiLRt3ZN{5r>mdKI;Vst0GALJ`Tzg` literal 0 HcmV?d00001 diff --git a/flags/rs.png b/flags/rs.png new file mode 100644 index 0000000000000000000000000000000000000000..2b039ba295491119cd8b7a5f2e00bc075d61c232 GIT binary patch literal 289 zcmV++0p9+JP)kh&o42I!?Fj2xbXmR2Wz5lyZvY4=}d;6!!lYFpU1pg44Ehq39!9V zO84W`Tr1D%cV%vZwN@1Nopx)}4j%;o<{^O}q7tAOKlt%DwbY!p)@rvj0oMXeCcZ~* n+JSX?ukGPvuGFUFVsx9~b z|Nmuq5(YpiSx*kipZ{ K&t;ucLK6V_SRLj7 literal 0 HcmV?d00001 diff --git a/flags/rw.png b/flags/rw.png new file mode 100644 index 0000000000000000000000000000000000000000..1b4f0a74ed1c71fd5613de31f8a35acb0e1c8346 GIT binary patch literal 212 zcmeAS@N?(olHy`uVBq!ia0vp^5V zWt)!dQe3gkmV40^rKNir7v7Cn-O0T0w%+nhf{V}2+Ty)_yNTwqZ3$}|*%sX}T((|# z@foItcX$_F`gMs>A;Fem;XR%9KUqMN9X(wfLnJOIPdLITv7w`|D`|RyKw9E)HAS@( z=Z`n~IgyoV-6Fs*uB;zsz2oSNf*o9sSPEqtW(f&dFo>!$M7>p(NIl*74QLpH Mr>mdKI;Vst0J;!QNB{r; literal 0 HcmV?d00001 diff --git a/flags/sa.png b/flags/sa.png new file mode 100644 index 0000000000000000000000000000000000000000..9d9725820f89cef43cb72c6212c92f1adbd38d04 GIT binary patch literal 270 zcmV+p0rCEcP)8Bs)o6r1#dZUt&V7@hXHLipU1Pc)WrjCHvnukrdz+j0001KNklYfz@!p_#%x?9}4U^j{ USeX4(kN^Mx07*qoM6N<$f*JmB!TP)=RAg3kB( z{Q^_Ec%#}LX2QJC?G9SK0aCi=@Ans7tDBr7HD)l3m|g%;x*=OL2qlBm00002bW%=J z{rwb;+-U#+0E=Zt;QK=Wm=m!~ z;{SPmE&w!bH(5Wn&MN$R1K<5DJM=v&oHOu9BRjTh(zpaN#&<-daSZ~`%awJmL8O4l z5jB<|^h1<$H!N1+a)UGF7wcqD;r)^N@_Fpv^gd0bB7kXgJ+n QYXATM07*qoM6N<$f*k{kR{#J2 literal 0 HcmV?d00001 diff --git a/flags/sc.png b/flags/sc.png new file mode 100644 index 0000000000000000000000000000000000000000..a4634e14e3fe535b72ec0367a405c61cf3f4f7e7 GIT binary patch literal 307 zcmV-30nGl1P)K@k!vIBoWc}~mj z@Pg;EfIIN{L@yTIEeeBGxqP5GBB43emP&|(;&}Um!oCU2HIddvFKhq+002ovPDHLk FV1kUciHiUL literal 0 HcmV?d00001 diff --git a/flags/sd.png b/flags/sd.png new file mode 100644 index 0000000000000000000000000000000000000000..20a7572e88c27ed2c93f09f504ff31cf789e828e GIT binary patch literal 242 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!3-oF?)7E^sgMAl5Lbpgb(KWzX){_lOZ6DE z`I}AkIr23b;*{7+^|Gc`Dko_(#4Blc`F{QR{gki?0}B&_yVN>Gqsz~4B`mM<_tj$% zVgImx_o`K^7>YFi|NnnUzyxUUW&ahAfmEcYi(`n!`K4!13OP9Nv^>1=J=MUZ^8fdc zwxUT-9@y7k_4Te_A*htj@MI<!`=h(AJ`@sQ`sNS3z zOPv3mVPMEwo^rR{6sSPO)5S4_<9f0OGt<=vCL9S1_|CI(L@>uHG$@KlF8CM_dg*{J Yg9wvnyyTaB6`*40`jHDDRp8ziw%elp6 l*m6D-9s%JlR1xx?FspTNO? zmpxOMQdC=}tv@k+r|9Y(fO9G(MRPb)nUS1nRc)x+OI_JRRRAP?Amd350001-ai4>g)~qFt;-Zi z0&T1lu7Gm_W6r%FG2+6xFA!pU2wfL)EKK z|8Hefq}%;|0ZsGvba4#PIDhtxCtrht0PDr|9cPU1{a>ZlqFS>1%UbQ$a|ezqRL@^| zK<)XYrF?GLn=Pk2mdK II;Vst0MyzYxc~qF literal 0 HcmV?d00001 diff --git a/flags/sk.png b/flags/sk.png new file mode 100644 index 0000000000000000000000000000000000000000..53136a1374e4b3fabd367e5d9dd2e7137402c9e4 GIT binary patch literal 280 zcmV+z0q6dSP)Tr7ao}yqwd&GyF@>gE(Gd%W&i(HApRy}wNPNM(+|LzBR5^b36Q!Fb&Af>(CwUwXa=evpU eK#FkU|L_J1g(&`dAD2Y{0000Qq9_6=CF|+p7{YNqxxkT$=Scy}M22P|A%$tpOg$4BEM*wVeku!2)>g0uDrE3< L^>bP0l+XkK*-aqm literal 0 HcmV?d00001 diff --git a/flags/sm.png b/flags/sm.png new file mode 100644 index 0000000000000000000000000000000000000000..2aa120883026e0346c0757d10079c3e631dbbbfd GIT binary patch literal 273 zcmV+s0q*{ZP)Awn_8>+|9=^Dfh-|to@NdMYcBAmGN+TD-YN|m`P7*Z4N4Zc literal 0 HcmV?d00001 diff --git a/flags/so.png b/flags/so.png new file mode 100644 index 0000000000000000000000000000000000000000..4984c998dda0c519ff9d86c4be7f6559f60e99cd GIT binary patch literal 218 zcmV<0044v4P)+<|+qvc+k;$WTQzSr~N?D}e=GAt#q2xx4 z-uwOjyw&qhk>Ep#-Bgv}|Ns9%iQS@j|FQr807pqgK~xyiW01rF7-%EG&V)mPj}e;$ zFPETzfFLUyhJ+}Ou!Mv#gD4iG_$4Gbu-d`N&BBaLLR>^hNJJcqgczKlWssl%02$LH U4Jj@oYybcN07*qoM6N<$f(;Z{gOx*`f4ov;4_G^$+K+UVnOX3zx2WoxNFkO#)D(t*47)2*>s0igp%> zg5q-ujBR&48XoF##PqTT3!F=hW_cd=yk~2{xl;CNQ7xNX3{`Bqw=A~DEQ__UdOENUHiZDI+lVU*=1_$d~$k zn&IL~hN5@_4mO6LCmGU%8Q54EisJNFbus)p#jw1cp>UVfB>|KF=NN?6YF~M|)d6To zvZsq@c(aAfYvd1y85}Sb4q9e0E&uJnE(I) literal 0 HcmV?d00001 diff --git a/flags/sv.png b/flags/sv.png new file mode 100644 index 0000000000000000000000000000000000000000..3541252ab7621e4d79dccc14f6448dea590ef469 GIT binary patch literal 235 zcmVzC{`=w2q{Pmr|N7~%!ru7t-h!WStiIi^!sP$|{|`s6(Fsvj0000+Nklh$+=nq$BK004YRL_t&-({0Yd5`!QN1kea>i|7C%V+S$-8f#IO<(ity=Yd!}kCG|DO|71M1fO!>J3T zTs>VJLnJOI3mjpTc%gW(pV@%Jfnhp>6tmL7gGWxYJ>2|pQ-Ojfhry;z&Ju5U&YZAf t*->es$m1uMw}M5U?|?!J^95%nhTE$pGX6{vO8^?k;OXk;vd$@?2>>cSNu2-y literal 0 HcmV?d00001 diff --git a/flags/sz.png b/flags/sz.png new file mode 100644 index 0000000000000000000000000000000000000000..cd14fd55179c2d9a6da81169ab98603e709634fc GIT binary patch literal 298 zcmV+_0oDGAP)j`vwpvtS{QLW~F$qOUg0?y`y=p@L*#NN&3_f1Demw&70001mNkl%`C zyT-XW+yNq$?IBldZA6}p2`tDt6?)rr*RKy3W5gu`w!2dn*4ISAhz9eBBL;wH)07*qoM6N<$g8T1rr2qf` literal 0 HcmV?d00001 diff --git a/flags/tc.png b/flags/tc.png new file mode 100644 index 0000000000000000000000000000000000000000..d5fcb8cc6a460235f1af5790e0520bd89dc7d1e3 GIT binary patch literal 312 zcmV-80muG{P)YS$S!8o0v9(;w8Z-TY=-QhS< zi;}Kccr1_FUNs7(`>^biM+nOSLgp{H4 z1zA@DAybt{j=_L%mJ z9RP>;%|Z}xN@i0d&PgMX(P7}Qew^_JWO s3JQ6;IEHXsPmb8CWiq9)u`y1BK_ycDVU*zP6+l@APgg&ebxsLQ0I7BtcK`qY literal 0 HcmV?d00001 diff --git a/flags/tf.png b/flags/tf.png new file mode 100644 index 0000000000000000000000000000000000000000..fe7c5e8c843671da5085c2508d690d4b308ec4f6 GIT binary patch literal 276 zcmV+v0qg#WP)Zb#HIZ?0j>U0Ej7V$FbuT@+)YqnfJ>uEcpkZ z_+71(lGG2}36&GQ7pDD!v#W`$8O;{}I`=ZVYzl%+iP|m)jDf5TFF@BiHK71dG@uCJ a>bfUao+-ug{!UE*0000S$3QN literal 0 HcmV?d00001 diff --git a/flags/tg.png b/flags/tg.png new file mode 100644 index 0000000000000000000000000000000000000000..f748b9f35c68251dc91246d09e207e28434af18d GIT binary patch literal 259 zcmV+e0sQ`nP)W-fM z^!4+-#@H`T>y@R@Oep{U{;WPTkY6$Q+u_s}IOTDM*fUc8{r%M;L+Os7)+0phnW*~Z z=;wZt+d^N|96ta5|Kd|3*f39sFFvP4GG>x5%(@WL5H$bJ003%EFyE^J00019NklInN literal 0 HcmV?d00001 diff --git a/flags/th.png b/flags/th.png new file mode 100644 index 0000000000000000000000000000000000000000..5f077a43b24b48be6d98c55e9c7011aab694e1a0 GIT binary patch literal 121 zcmeAS@N?(olHy`uVBq!ia0vp^5#*v$!~Xc-{`uwq|NZ{; z*8T6j|Ni-Bq-Fp4=Kk}`|Ni`Dqh{b{W&maY%m4uY|NqfHdk6pk09;8#K~yNuz0Nlh zz#tF=!IQ@d?wv=t65b_FSbRbEqNXiF6`auhX(OIBC`C4C7h zc+IaEL05;LkuD=bk1j)IfqXr|s2%Oa2;906n2R#0mn#0z001O?Ls+8{0001~Nkl*0KtZP_GE{K#N~Q>O3O?XF;jQ6Ieb36jgWR!#>`qjjAM3t g)06xivM+U$>@j*bn&P8-`2YX_07*qoM6N<$f`&GR3;+NC literal 0 HcmV?d00001 diff --git a/flags/tl.png b/flags/tl.png new file mode 100644 index 0000000000000000000000000000000000000000..6e52a84e1f7e0d864168e777a2465c695409ee60 GIT binary patch literal 266 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!3-oF?)7E^se}NZ5Z7bJj;W}qNJ~ra-o4w> z(vpph&BMb(Mn-1u-n|YE4rXR%Q>IMe;NXyzl|6Xypp%o6juQKsX1P0F3bEFFmzT;X zc=P@J`}ga9)%i6N+DdF(9E{)QsXX;n{C`{xXu};9c}>xxG9W9})5S4F<9zEycd-To z4wefyc5h7bKKA?mr4_eXBL078lQ8u+x8^#WQPEJmpNG4llzTG&gNU3Ci-0ZpJ-hWS2%Zod*u+_^Bw&F-16oW|sQ_InUW(fWakb@6$Ptvu+2Mh^ zQhORe5}XfL-FW4XUm0_aQZ3$~*U$m{e64Qc4@2%ISvdxfS^xk507*qoM6N<$f}H_* ARR910 literal 0 HcmV?d00001 diff --git a/flags/tn.png b/flags/tn.png new file mode 100644 index 0000000000000000000000000000000000000000..52c18be49a43235b85aab8ac94481978d4b1f664 GIT binary patch literal 247 zcmVf9fYU>M1$(n4tXQ<@c$t>@Yv;C^-D*==#OV{_yeeW^(tevisKA=^88k_xS(+ z|Nisz=@}~e&eHd*vG8AO{OIZTuC()jiSl@Y>KrZV9WMUz^XC8)MY+^40000|Nkl2?$0RZ@`D|^?VzNi2I002ovPDHLkV1m4va|{3g literal 0 HcmV?d00001 diff --git a/flags/to.png b/flags/to.png new file mode 100644 index 0000000000000000000000000000000000000000..8daac5aa86f8d9dcee9078405c8830b9d0feefb0 GIT binary patch literal 116 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et#0(_4@}`~wQak}ZA+9f%F1;QV_5c6>gA5Ec z$yOVI;>w;bjv*Y^lOwifUH$Xl;lPGf;&V4X`mbxkwoGcrxBmeSip&gY-%6z)?tH%$ PsGPym)z4*}Q$iB}xHc$* literal 0 HcmV?d00001 diff --git a/flags/tr.png b/flags/tr.png new file mode 100644 index 0000000000000000000000000000000000000000..f5050f10dbb6e6feb29e8aa48fcf2af08cb6f628 GIT binary patch literal 247 zcmVUALuti>sVm!Y;@!lAoG}>=P5M*{r&se z-1f7#>rh$kXK(L!e&Y=qg)KszW@LK?rU@74jbbO7~={TN|wH*0000|Nklqu xl4iqhlsv06Kc74YBNl&%3b9Lx(l$u2002WHEA0Kw`}hC=002ovPDHLkV1k4FY*GLK literal 0 HcmV?d00001 diff --git a/flags/tt.png b/flags/tt.png new file mode 100644 index 0000000000000000000000000000000000000000..1bcb5afd859e7531b08cdc53f01c6def2df7c806 GIT binary patch literal 314 zcmV-A0mc4_P)%+c|^!_glz+f!rd-r&K(!QtB5*hN*(7Ax$c zs@2rg(kD9MZhMlFk|H7^0RaJ6SXlDe+@nQM3=9lCJv{&b0L~F6D-W%70001$NklNgyt}J_2dV zKOy5DXgwB{Qr4|`6ckA6b5^eLS8vQ=!Gby zxCLUp|2hHzX@e!i>G(8D4tZO0Jm9y4|@uWKzNZ(j`7^29`4wD|Pu*{BLueoW9rj z)4lY9nzjS(9e?<{q9@#GdLpK>UEwFk#QJK+-^+v}v_dw20a@nh>gTe~DWM4fXa7h& literal 0 HcmV?d00001 diff --git a/flags/ua.png b/flags/ua.png new file mode 100644 index 0000000000000000000000000000000000000000..afe50df1e7fe4c867d3065eb67c1434cc5ef0d8d GIT binary patch literal 92 zcmeAS@N?(olHy`uVBq!ia0vp^5@isqyN=nM#KYyNFzueOnw{6?Dr)_P&?%qvKPQJ~@w`%pOO{#pnyu2@xlc!{) zg-3>8JbdV6QTVIdxBvhD9~;ac;>oxcWEI0r28KU(Se~aJ*93CHJY5_^BrYdUILatd z;N|g{f#;J2LmsE3g@A~-xXTBLCkYL`(@}^eAFc0001FNkl=lC1^vB(J>qmLUYvRNExdU0PbK<7lkxj|K_8T*}xN zw+7i-H@h}`8^JdVhAKa_)UYPje+`jr>eE%HhLgZU;2=O>aud995w!6FJJ~504JBJ) P00000NkvXXu0mjfm6CzX literal 0 HcmV?d00001 diff --git a/flags/uz.png b/flags/uz.png new file mode 100644 index 0000000000000000000000000000000000000000..7b2cec51b502340442c5e0d74e0679fa8023547f GIT binary patch literal 253 zcmVya$`MMYPB=uEYqOxCxxNO}5G(rM^eD%Oj<|KC;JS!O{hqwh*AYPPoe5Jb@>BQVKwTo}0jEuqKOc8I4bN1p(cY5|DHjqyg$G|-}f_edY6z^I0m zdz&d34cEnp=rRQuTg*dni zz`x|3n9ato@$c*9#l_*>)cN@I;?$_RsBqB2nepu1$;idQw3W=VfXKqZ>EqDQyolP_ z*Xrox)v~d?s&d}bwfy}1?BLzv*T?em@7T|`wvJQ3siFV>|Nr0sCRJUa0000{Nkl5T wK#)&_kzWW&fLl_8RYD5I9ZV7=I~}_K02_21Ua2X`HUIzs07*qoM6N<$g1DM;jsO4v literal 0 HcmV?d00001 diff --git a/flags/vc.png b/flags/vc.png new file mode 100644 index 0000000000000000000000000000000000000000..7a6ca359629cf34a6cd5a1abf90c449beebc0fa4 GIT binary patch literal 172 zcmeAS@N?(olHy`uVBq!ia0vp^5&X#Yv#v@S+}K-f z&U{m5t~1BEkDPN%3(j?(y=KdC?pg-R^B*prEt`zz1yArfeXs3^<;CVBmT}GpEE#r2 Wb*xs*eIW=mi^0>?&t;ucLK6VlWI@0H literal 0 HcmV?d00001 diff --git a/flags/ve.png b/flags/ve.png new file mode 100644 index 0000000000000000000000000000000000000000..26308e5971b6d3ab9484a004b434d4fdd8d7de03 GIT binary patch literal 220 zcmeAS@N?(olHy`uVBq!ia0vp^5io6~DH8vD;&uOS`L#o-4iG4vk3q!?ig`Wn$ SqJx3vGI+ZBxvXYS#}6f35sgT|y7^x)zrMUgUa9w|hSvwD}LvC%KlA=hG;=cb|Zqm%oY+Ic_%$aXopk)&cfDgd~wB547Pf#jFlR(~G zfOBg}7z=?BHhb?bAjS~)RMoM>c(g^)_I*2^AZ8H1VA5Pktx+D~{mjU`k6@%+ojbu` zKP)FM9brA0Y~meZ^|a;C$zn4|IW?cnL`y?v2^q>|F9 zHX|@-%A+&u;>EUicXfDS+Ok01!gGDI&)Kz4;L)J?_w=;Q&;S4bHd-~0Mjs)C7F2!_yS#Z05NCyOuT7tYQ7R5@a@w-g?AtF Ttc!5o00000NkvXXu0mjfcfYPs literal 0 HcmV?d00001 diff --git a/flags/vn.png b/flags/vn.png new file mode 100644 index 0000000000000000000000000000000000000000..bf4abbab4e7f034dd4f30ed1660084571a9088e7 GIT binary patch literal 219 zcmeAS@N?(olHy`uVBq!ia0vp^5r SS&#{6ID@CFpUXO@geCy_icawW literal 0 HcmV?d00001 diff --git a/flags/vu.png b/flags/vu.png new file mode 100644 index 0000000000000000000000000000000000000000..76f3a6b1052d30a83849e1b04faea9a142a10f35 GIT binary patch literal 297 zcmV+^0oMMBP)Wl{$K007buGys)D`*8qF0001lNklJ-pKc z1yUuKuzS4E0@c|}l~j(ntnfJpgx1u=o1Zz(c|XTo{}Juch#QoplW#kc6~ v)vmFH{)4?qx8wJLu$d{9p|FX@xcxwQW4 zgc+X_bH6lo|2})+V^rGL_6cvbtQHo`{rl?8_t}eoZr=IcE%<|P)TJA5KKRFcY3%<0 z|38EB)VG?JF}LNv0S$Ebba4!kxST8?Dk>@>C@3Z@Eac3{^JV&jM^BzUZSW{4E;in< z!QkU(*n03!Vff(!PC{x JWt~$(6972cS2O?s literal 0 HcmV?d00001 diff --git a/flags/ws.png b/flags/ws.png new file mode 100644 index 0000000000000000000000000000000000000000..2ab4cdfc25acc74e18c806218fb5c883eed8e69f GIT binary patch literal 177 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!VDx^^%AmxltF+`h-*OJ@+}8%a+$R7nzhwV z-lys{$vbnYS;VZ2#?4&DEgVM89dix~TX!<)HZW+{pA%H8^pLm&)NAAE;us=vIl1Ed zySuZC9Uj?>7%<$_{}sSGZ(sGxPNfYW?(DV+(S6Tz;Y`KSZnc7H{aFV-TctGq&q!!s ZVd%>H7JYER%TAy<44$rjF6*2UngH0aKluOv literal 0 HcmV?d00001 diff --git a/flags/ye.png b/flags/ye.png new file mode 100644 index 0000000000000000000000000000000000000000..daaa9dbbd897c734ad162c9bf66402b5e5cdbef3 GIT binary patch literal 113 zcmeAS@N?(olHy`uVBq!ia0vp^5i0fNT%m4rXGbm4u-Iy~Q tC@AFV;uyklJvm~lmdTXH#>O}i29-$phf#vFR{&)hJYD@<);T3K0RZ@*836zQ literal 0 HcmV?d00001 diff --git a/flags/za.png b/flags/za.png new file mode 100644 index 0000000000000000000000000000000000000000..2398c8362f549b925ee9ae11cd85948cb8a83590 GIT binary patch literal 286 zcmV+(0pb3MP)mB8ph#ob0001aNkl;M1&07*qoM6N<$g6|T0!2kdN literal 0 HcmV?d00001 diff --git a/flags/zm.png b/flags/zm.png new file mode 100644 index 0000000000000000000000000000000000000000..d11147c792b70dccd66c16855728269f5ef881a5 GIT binary patch literal 238 zcmeAS@N?(olHy`uVBq!ia0vp^5KBlCiM)fa~b?= z8I;->JSrF@I~jVj87`MINOdqo7BQ$cF!JbuRdi02A(V`bZlQwO- iR8$mXWOO)=i9vC{w$-WmY}!CW89ZJ6T-G@yGywoTkx4iJ literal 0 HcmV?d00001 diff --git a/flags/zw.png b/flags/zw.png new file mode 100644 index 0000000000000000000000000000000000000000..60f257d64c070ba42d1edf95df4253d267921186 GIT binary patch literal 295 zcmV+?0oeYDP)A4RNgif?28-kqh{dU()IQA`{&;G)Uu@<5!BSwqN1K*U@j|5 z9eZwJ@S&FIwHEQnZuY(#|Ns90006)o4&ERT@{0!l(g4W80x^;ZE_$i30001jNkl1t6|t2R!yCjZ9AvR+QFc>)QCGbuZ~M*9E&002ovPDHLkV1hB-g5m%G literal 0 HcmV?d00001 diff --git a/gmap.html b/gmap.html index 2434a03d9..7438948b2 100644 --- a/gmap.html +++ b/gmap.html @@ -93,7 +93,8 @@ html += 'Altitude: '+p.altitude+' feet
'; html += 'Speed: '+p.speed+' knots
'; html += 'Coordinates: '+p.lat+', '+p.lon+'
'; - html += 'Registration: '+p.reg+'
'; + html += 'Registration: '+p.reg+ + '
'; i.innerHTML = html; } From 6cafba8c42ed87fb7a8a0fbf12822b9f5c4b9f0f Mon Sep 17 00:00:00 2001 From: Don Willingham Date: Sun, 27 Mar 2016 21:43:52 -0400 Subject: [PATCH 3/8] Add yu.png (Federal Republic of Yugoslavia: 1992-2006) --- flags/FLAGS-CHANGES | 7 +++++++ flags/yu.png | Bin 0 -> 176 bytes 2 files changed, 7 insertions(+) create mode 100644 flags/FLAGS-CHANGES create mode 100644 flags/yu.png diff --git a/flags/FLAGS-CHANGES b/flags/FLAGS-CHANGES new file mode 100644 index 000000000..33220a825 --- /dev/null +++ b/flags/FLAGS-CHANGES @@ -0,0 +1,7 @@ +As requested in FLAGS-LICENSE, an additional file enumerating any modifications +made is also encouraged. + +Additions: +yu.png - Saved https://upload.wikimedia.org/wikipedia/commons/9/90/Flag_of_Serbia_and_Montenegro.svg?download +as a 32x16 png. I chose this flag as it was more current (Federal Republic of Yugoslavia: 1992-2006) over the +flag with the star (Socialist Federal Republic of Yugoslavia: 1945-1992). diff --git a/flags/yu.png b/flags/yu.png new file mode 100644 index 0000000000000000000000000000000000000000..6037e8b091ad83588eb5224a5cd118226402351c GIT binary patch literal 176 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!3HGD8EPYe6kC$Fy9>jA5L~c#`DCC7XMsm# zF;K^K5N34Jm|X!BWH0gbb!C6REW;?LkSP@Q6)0ru>EamTaXdN2;N9Qz1`Q3Ji46x= zFtgoZ>{(rQU*>|#i68&}|GyYxuu1m7r_!&l8qczRmymE1eh5?}!oVP3z-vFPXoD@# OAO=rYKbLh*2~7ZFq&Qsw literal 0 HcmV?d00001 From 7507adc4a48548583ec0875bb40a594523307152 Mon Sep 17 00:00:00 2001 From: Don Willingham Date: Thu, 31 Mar 2016 21:24:38 -0400 Subject: [PATCH 4/8] Hide flag icon if registration is 00. --- gmap.html | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gmap.html b/gmap.html index 7438948b2..de7ace57e 100644 --- a/gmap.html +++ b/gmap.html @@ -93,8 +93,10 @@ html += 'Altitude: '+p.altitude+' feet
'; html += 'Speed: '+p.speed+' knots
'; html += 'Coordinates: '+p.lat+', '+p.lon+'
'; - html += 'Registration: '+p.reg+ - '
'; + html += 'Registration: '+p.reg; + if (p.reg != "00") { + html += '
'; + } i.innerHTML = html; } From fdd4055d56af45a30c5679addcef161effa4701c Mon Sep 17 00:00:00 2001 From: Don Willingham Date: Sun, 3 Apr 2016 21:25:42 -0400 Subject: [PATCH 5/8] Embed base64 encoded images for flag icons. --- flags/png2js.pl | 26 +++++ gmap.html | 264 +++++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 286 insertions(+), 4 deletions(-) create mode 100644 flags/png2js.pl diff --git a/flags/png2js.pl b/flags/png2js.pl new file mode 100644 index 000000000..08ca00f6a --- /dev/null +++ b/flags/png2js.pl @@ -0,0 +1,26 @@ +#!/usr/bin/perl + +# Purpose: Generate javscript with Base64 encoded images of flags. +# References: +# https://github.com/antirez/dump1090/pull/101 +# http://stackoverflow.com/questions/11301854/perl-convert-image-to-base64 +# + +use strict; +use MIME::Base64; + +my @pngs = glob("*.png"); +foreach (@pngs) { + my $curr_png = $_; + my $no_ext = $curr_png; + $no_ext =~ s/\.png$//; + print " case \"".uc($no_ext)."\": img += '"; + if (open (PNG, "<".$curr_png)) { + binmode PNG; + my $encoded = encode_base64(join("", )); + $encoded =~ s/\n//g; + print $encoded."'; break;\n"; + } else { + print "ERROR: Failed to open ".$curr_png.".\n"; + } +} diff --git a/gmap.html b/gmap.html index de7ace57e..2ce169cc4 100644 --- a/gmap.html +++ b/gmap.html @@ -81,6 +81,265 @@ i.innerHTML = NumPlanes+' planes on screen.'; } + function getFlagIcon(reg) { + var img = ' '; html += 'Speed: '+p.speed+' knots
'; html += 'Coordinates: '+p.lat+', '+p.lon+'
'; - html += 'Registration: '+p.reg; - if (p.reg != "00") { - html += '
'; - } + html += 'Registration: '+p.reg+getFlagIcon(p.reg); i.innerHTML = html; } From e8f15f0f53cb016e319ba7cd56b2b73b1ad08dde Mon Sep 17 00:00:00 2001 From: Don Willingham Date: Sun, 3 Apr 2016 21:35:48 -0400 Subject: [PATCH 6/8] Remove flags/ subdirectory, and revert dump1090.c as it no longer needs to serve individual flag .png's. --- dump1090.c | 70 +++++++++++++++----------------------------- flags/FLAGS-CHANGES | 7 ----- flags/FLAGS-LICENSE | 32 -------------------- flags/ad.png | Bin 255 -> 0 bytes flags/ae.png | Bin 137 -> 0 bytes flags/af.png | Bin 257 -> 0 bytes flags/ag.png | Bin 318 -> 0 bytes flags/ai.png | Bin 332 -> 0 bytes flags/al.png | Bin 274 -> 0 bytes flags/am.png | Bin 114 -> 0 bytes flags/ao.png | Bin 260 -> 0 bytes flags/aq.png | Bin 291 -> 0 bytes flags/ar.png | Bin 195 -> 0 bytes flags/as.png | Bin 312 -> 0 bytes flags/at.png | Bin 102 -> 0 bytes flags/au.png | Bin 350 -> 0 bytes flags/aw.png | Bin 184 -> 0 bytes flags/ax.png | Bin 157 -> 0 bytes flags/az.png | Bin 213 -> 0 bytes flags/ba.png | Bin 193 -> 0 bytes flags/bb.png | Bin 229 -> 0 bytes flags/bd.png | Bin 260 -> 0 bytes flags/be.png | Bin 95 -> 0 bytes flags/bf.png | Bin 165 -> 0 bytes flags/bg.png | Bin 117 -> 0 bytes flags/bh.png | Bin 216 -> 0 bytes flags/bi.png | Bin 353 -> 0 bytes flags/bj.png | Bin 108 -> 0 bytes flags/bl.png | Bin 96 -> 0 bytes flags/bm.png | Bin 337 -> 0 bytes flags/bn.png | Bin 371 -> 0 bytes flags/bo.png | Bin 117 -> 0 bytes flags/bq.png | Bin 113 -> 0 bytes flags/br.png | Bin 305 -> 0 bytes flags/bs.png | Bin 222 -> 0 bytes flags/bt.png | Bin 317 -> 0 bytes flags/bw.png | Bin 102 -> 0 bytes flags/by.png | Bin 255 -> 0 bytes flags/bz.png | Bin 328 -> 0 bytes flags/ca.png | Bin 286 -> 0 bytes flags/cc.png | Bin 338 -> 0 bytes flags/cd.png | Bin 334 -> 0 bytes flags/cf.png | Bin 162 -> 0 bytes flags/cg.png | Bin 152 -> 0 bytes flags/ch.png | Bin 142 -> 0 bytes flags/ci.png | Bin 96 -> 0 bytes flags/ck.png | Bin 367 -> 0 bytes flags/cl.png | Bin 142 -> 0 bytes flags/cm.png | Bin 150 -> 0 bytes flags/cn.png | Bin 223 -> 0 bytes flags/co.png | Bin 98 -> 0 bytes flags/cr.png | Bin 125 -> 0 bytes flags/cu.png | Bin 268 -> 0 bytes flags/cv.png | Bin 261 -> 0 bytes flags/cw.png | Bin 189 -> 0 bytes flags/cx.png | Bin 354 -> 0 bytes flags/cy.png | Bin 282 -> 0 bytes flags/cz.png | Bin 176 -> 0 bytes flags/de.png | Bin 117 -> 0 bytes flags/dj.png | Bin 271 -> 0 bytes flags/dk.png | Bin 130 -> 0 bytes flags/dm.png | Bin 270 -> 0 bytes flags/do.png | Bin 205 -> 0 bytes flags/dz.png | Bin 239 -> 0 bytes flags/ec.png | Bin 257 -> 0 bytes flags/ee.png | Bin 117 -> 0 bytes flags/eg.png | Bin 203 -> 0 bytes flags/eh.png | Bin 283 -> 0 bytes flags/er.png | Bin 312 -> 0 bytes flags/es.png | Bin 237 -> 0 bytes flags/et.png | Bin 310 -> 0 bytes flags/eu.png | Bin 289 -> 0 bytes flags/fi.png | Bin 130 -> 0 bytes flags/fj.png | Bin 343 -> 0 bytes flags/fk.png | Bin 342 -> 0 bytes flags/fm.png | Bin 219 -> 0 bytes flags/fo.png | Bin 111 -> 0 bytes flags/fr.png | Bin 96 -> 0 bytes flags/ga.png | Bin 117 -> 0 bytes flags/gb.png | Bin 286 -> 0 bytes flags/gd.png | Bin 341 -> 0 bytes flags/ge.png | Bin 242 -> 0 bytes flags/gf.png | Bin 238 -> 0 bytes flags/gg.png | Bin 151 -> 0 bytes flags/gh.png | Bin 175 -> 0 bytes flags/gi.png | Bin 298 -> 0 bytes flags/gl.png | Bin 271 -> 0 bytes flags/gm.png | Bin 126 -> 0 bytes flags/gn.png | Bin 96 -> 0 bytes flags/gp.png | Bin 351 -> 0 bytes flags/gq.png | Bin 273 -> 0 bytes flags/gr.png | Bin 221 -> 0 bytes flags/gs.png | Bin 362 -> 0 bytes flags/gt.png | Bin 236 -> 0 bytes flags/gu.png | Bin 260 -> 0 bytes flags/gw.png | Bin 203 -> 0 bytes flags/gy.png | Bin 323 -> 0 bytes flags/hk.png | Bin 262 -> 0 bytes flags/hn.png | Bin 200 -> 0 bytes flags/hr.png | Bin 286 -> 0 bytes flags/ht.png | Bin 202 -> 0 bytes flags/hu.png | Bin 114 -> 0 bytes flags/id.png | Bin 92 -> 0 bytes flags/ie.png | Bin 120 -> 0 bytes flags/il.png | Bin 156 -> 0 bytes flags/im.png | Bin 268 -> 0 bytes flags/in.png | Bin 202 -> 0 bytes flags/io.png | Bin 508 -> 0 bytes flags/iq.png | Bin 249 -> 0 bytes flags/ir.png | Bin 297 -> 0 bytes flags/is.png | Bin 145 -> 0 bytes flags/it.png | Bin 96 -> 0 bytes flags/je.png | Bin 372 -> 0 bytes flags/jm.png | Bin 173 -> 0 bytes flags/jo.png | Bin 223 -> 0 bytes flags/jp.png | Bin 215 -> 0 bytes flags/ke.png | Bin 269 -> 0 bytes flags/kg.png | Bin 278 -> 0 bytes flags/kh.png | Bin 264 -> 0 bytes flags/ki.png | Bin 402 -> 0 bytes flags/km.png | Bin 291 -> 0 bytes flags/kn.png | Bin 294 -> 0 bytes flags/kp.png | Bin 269 -> 0 bytes flags/kr.png | Bin 334 -> 0 bytes flags/kw.png | Bin 205 -> 0 bytes flags/ky.png | Bin 341 -> 0 bytes flags/kz.png | Bin 300 -> 0 bytes flags/la.png | Bin 173 -> 0 bytes flags/lb.png | Bin 252 -> 0 bytes flags/lc.png | Bin 282 -> 0 bytes flags/li.png | Bin 227 -> 0 bytes flags/lk.png | Bin 348 -> 0 bytes flags/lr.png | Bin 247 -> 0 bytes flags/ls.png | Bin 218 -> 0 bytes flags/lt.png | Bin 117 -> 0 bytes flags/lu.png | Bin 117 -> 0 bytes flags/lv.png | Bin 102 -> 0 bytes flags/ly.png | Bin 159 -> 0 bytes flags/ma.png | Bin 145 -> 0 bytes flags/mc.png | Bin 92 -> 0 bytes flags/md.png | Bin 264 -> 0 bytes flags/me.png | Bin 294 -> 0 bytes flags/mf.png | Bin 96 -> 0 bytes flags/mg.png | Bin 98 -> 0 bytes flags/mh.png | Bin 344 -> 0 bytes flags/mk.png | Bin 340 -> 0 bytes flags/ml.png | Bin 96 -> 0 bytes flags/mm.png | Bin 274 -> 0 bytes flags/mn.png | Bin 266 -> 0 bytes flags/mo.png | Bin 268 -> 0 bytes flags/mp.png | Bin 362 -> 0 bytes flags/mq.png | Bin 338 -> 0 bytes flags/mr.png | Bin 287 -> 0 bytes flags/ms.png | Bin 331 -> 0 bytes flags/mt.png | Bin 194 -> 0 bytes flags/mu.png | Bin 106 -> 0 bytes flags/mv.png | Bin 178 -> 0 bytes flags/mw.png | Bin 259 -> 0 bytes flags/mx.png | Bin 252 -> 0 bytes flags/my.png | Bin 293 -> 0 bytes flags/mz.png | Bin 268 -> 0 bytes flags/na.png | Bin 284 -> 0 bytes flags/nc.png | Bin 298 -> 0 bytes flags/ne.png | Bin 179 -> 0 bytes flags/nf.png | Bin 292 -> 0 bytes flags/ng.png | Bin 99 -> 0 bytes flags/ni.png | Bin 214 -> 0 bytes flags/nl.png | Bin 113 -> 0 bytes flags/no.png | Bin 111 -> 0 bytes flags/np.png | Bin 316 -> 0 bytes flags/nr.png | Bin 167 -> 0 bytes flags/nu.png | Bin 290 -> 0 bytes flags/nz.png | Bin 323 -> 0 bytes flags/om.png | Bin 233 -> 0 bytes flags/pa.png | Bin 202 -> 0 bytes flags/pe.png | Bin 88 -> 0 bytes flags/pf.png | Bin 257 -> 0 bytes flags/pg.png | Bin 318 -> 0 bytes flags/ph.png | Bin 303 -> 0 bytes flags/pk.png | Bin 267 -> 0 bytes flags/pl.png | Bin 93 -> 0 bytes flags/pm.png | Bin 441 -> 0 bytes flags/pn.png | Bin 366 -> 0 bytes flags/png2js.pl | 26 ---------------- flags/pr.png | Bin 271 -> 0 bytes flags/ps.png | Bin 242 -> 0 bytes flags/pt.png | Bin 260 -> 0 bytes flags/pw.png | Bin 244 -> 0 bytes flags/py.png | Bin 204 -> 0 bytes flags/qa.png | Bin 225 -> 0 bytes flags/re.png | Bin 96 -> 0 bytes flags/ro.png | Bin 96 -> 0 bytes flags/rs.png | Bin 289 -> 0 bytes flags/ru.png | Bin 113 -> 0 bytes flags/rw.png | Bin 212 -> 0 bytes flags/sa.png | Bin 270 -> 0 bytes flags/sb.png | Bin 318 -> 0 bytes flags/sc.png | Bin 307 -> 0 bytes flags/sd.png | Bin 242 -> 0 bytes flags/se.png | Bin 126 -> 0 bytes flags/sg.png | Bin 235 -> 0 bytes flags/sh.png | Bin 323 -> 0 bytes flags/si.png | Bin 210 -> 0 bytes flags/sj.png | Bin 111 -> 0 bytes flags/sk.png | Bin 280 -> 0 bytes flags/sl.png | Bin 113 -> 0 bytes flags/sm.png | Bin 273 -> 0 bytes flags/sn.png | Bin 182 -> 0 bytes flags/so.png | Bin 218 -> 0 bytes flags/sr.png | Bin 175 -> 0 bytes flags/ss.png | Bin 283 -> 0 bytes flags/st.png | Bin 225 -> 0 bytes flags/sv.png | Bin 235 -> 0 bytes flags/sx.png | Bin 316 -> 0 bytes flags/sy.png | Bin 195 -> 0 bytes flags/sz.png | Bin 298 -> 0 bytes flags/tc.png | Bin 312 -> 0 bytes flags/td.png | Bin 96 -> 0 bytes flags/tf.png | Bin 276 -> 0 bytes flags/tg.png | Bin 259 -> 0 bytes flags/th.png | Bin 121 -> 0 bytes flags/tj.png | Bin 251 -> 0 bytes flags/tk.png | Bin 334 -> 0 bytes flags/tl.png | Bin 266 -> 0 bytes flags/tm.png | Bin 302 -> 0 bytes flags/tn.png | Bin 247 -> 0 bytes flags/to.png | Bin 116 -> 0 bytes flags/tr.png | Bin 247 -> 0 bytes flags/tt.png | Bin 314 -> 0 bytes flags/tv.png | Bin 354 -> 0 bytes flags/tw.png | Bin 145 -> 0 bytes flags/tz.png | Bin 203 -> 0 bytes flags/ua.png | Bin 92 -> 0 bytes flags/ug.png | Bin 251 -> 0 bytes flags/um.png | Bin 231 -> 0 bytes flags/us.png | Bin 231 -> 0 bytes flags/uy.png | Bin 265 -> 0 bytes flags/uz.png | Bin 253 -> 0 bytes flags/va.png | Bin 246 -> 0 bytes flags/vc.png | Bin 172 -> 0 bytes flags/ve.png | Bin 220 -> 0 bytes flags/vg.png | Bin 348 -> 0 bytes flags/vi.png | Bin 373 -> 0 bytes flags/vn.png | Bin 219 -> 0 bytes flags/vu.png | Bin 297 -> 0 bytes flags/wf.png | Bin 209 -> 0 bytes flags/ws.png | Bin 177 -> 0 bytes flags/ye.png | Bin 113 -> 0 bytes flags/yt.png | Bin 96 -> 0 bytes flags/yu.png | Bin 176 -> 0 bytes flags/za.png | Bin 286 -> 0 bytes flags/zm.png | Bin 238 -> 0 bytes flags/zw.png | Bin 295 -> 0 bytes 253 files changed, 23 insertions(+), 112 deletions(-) delete mode 100644 flags/FLAGS-CHANGES delete mode 100644 flags/FLAGS-LICENSE delete mode 100644 flags/ad.png delete mode 100644 flags/ae.png delete mode 100644 flags/af.png delete mode 100644 flags/ag.png delete mode 100644 flags/ai.png delete mode 100644 flags/al.png delete mode 100644 flags/am.png delete mode 100644 flags/ao.png delete mode 100644 flags/aq.png delete mode 100644 flags/ar.png delete mode 100644 flags/as.png delete mode 100644 flags/at.png delete mode 100644 flags/au.png delete mode 100644 flags/aw.png delete mode 100644 flags/ax.png delete mode 100644 flags/az.png delete mode 100644 flags/ba.png delete mode 100644 flags/bb.png delete mode 100644 flags/bd.png delete mode 100644 flags/be.png delete mode 100644 flags/bf.png delete mode 100644 flags/bg.png delete mode 100644 flags/bh.png delete mode 100644 flags/bi.png delete mode 100644 flags/bj.png delete mode 100644 flags/bl.png delete mode 100644 flags/bm.png delete mode 100644 flags/bn.png delete mode 100644 flags/bo.png delete mode 100644 flags/bq.png delete mode 100644 flags/br.png delete mode 100644 flags/bs.png delete mode 100644 flags/bt.png delete mode 100644 flags/bw.png delete mode 100644 flags/by.png delete mode 100644 flags/bz.png delete mode 100644 flags/ca.png delete mode 100644 flags/cc.png delete mode 100644 flags/cd.png delete mode 100644 flags/cf.png delete mode 100644 flags/cg.png delete mode 100644 flags/ch.png delete mode 100644 flags/ci.png delete mode 100644 flags/ck.png delete mode 100644 flags/cl.png delete mode 100644 flags/cm.png delete mode 100644 flags/cn.png delete mode 100644 flags/co.png delete mode 100644 flags/cr.png delete mode 100644 flags/cu.png delete mode 100644 flags/cv.png delete mode 100644 flags/cw.png delete mode 100644 flags/cx.png delete mode 100644 flags/cy.png delete mode 100644 flags/cz.png delete mode 100644 flags/de.png delete mode 100644 flags/dj.png delete mode 100644 flags/dk.png delete mode 100644 flags/dm.png delete mode 100644 flags/do.png delete mode 100644 flags/dz.png delete mode 100644 flags/ec.png delete mode 100644 flags/ee.png delete mode 100644 flags/eg.png delete mode 100644 flags/eh.png delete mode 100644 flags/er.png delete mode 100644 flags/es.png delete mode 100644 flags/et.png delete mode 100644 flags/eu.png delete mode 100644 flags/fi.png delete mode 100644 flags/fj.png delete mode 100644 flags/fk.png delete mode 100644 flags/fm.png delete mode 100644 flags/fo.png delete mode 100644 flags/fr.png delete mode 100644 flags/ga.png delete mode 100644 flags/gb.png delete mode 100644 flags/gd.png delete mode 100644 flags/ge.png delete mode 100644 flags/gf.png delete mode 100644 flags/gg.png delete mode 100644 flags/gh.png delete mode 100644 flags/gi.png delete mode 100644 flags/gl.png delete mode 100644 flags/gm.png delete mode 100644 flags/gn.png delete mode 100644 flags/gp.png delete mode 100644 flags/gq.png delete mode 100644 flags/gr.png delete mode 100644 flags/gs.png delete mode 100644 flags/gt.png delete mode 100644 flags/gu.png delete mode 100644 flags/gw.png delete mode 100644 flags/gy.png delete mode 100644 flags/hk.png delete mode 100644 flags/hn.png delete mode 100644 flags/hr.png delete mode 100644 flags/ht.png delete mode 100644 flags/hu.png delete mode 100644 flags/id.png delete mode 100644 flags/ie.png delete mode 100644 flags/il.png delete mode 100644 flags/im.png delete mode 100644 flags/in.png delete mode 100644 flags/io.png delete mode 100644 flags/iq.png delete mode 100644 flags/ir.png delete mode 100644 flags/is.png delete mode 100644 flags/it.png delete mode 100644 flags/je.png delete mode 100644 flags/jm.png delete mode 100644 flags/jo.png delete mode 100644 flags/jp.png delete mode 100644 flags/ke.png delete mode 100644 flags/kg.png delete mode 100644 flags/kh.png delete mode 100644 flags/ki.png delete mode 100644 flags/km.png delete mode 100644 flags/kn.png delete mode 100644 flags/kp.png delete mode 100644 flags/kr.png delete mode 100644 flags/kw.png delete mode 100644 flags/ky.png delete mode 100644 flags/kz.png delete mode 100644 flags/la.png delete mode 100644 flags/lb.png delete mode 100644 flags/lc.png delete mode 100644 flags/li.png delete mode 100644 flags/lk.png delete mode 100644 flags/lr.png delete mode 100644 flags/ls.png delete mode 100644 flags/lt.png delete mode 100644 flags/lu.png delete mode 100644 flags/lv.png delete mode 100644 flags/ly.png delete mode 100644 flags/ma.png delete mode 100644 flags/mc.png delete mode 100644 flags/md.png delete mode 100644 flags/me.png delete mode 100644 flags/mf.png delete mode 100644 flags/mg.png delete mode 100644 flags/mh.png delete mode 100644 flags/mk.png delete mode 100644 flags/ml.png delete mode 100644 flags/mm.png delete mode 100644 flags/mn.png delete mode 100644 flags/mo.png delete mode 100644 flags/mp.png delete mode 100644 flags/mq.png delete mode 100644 flags/mr.png delete mode 100644 flags/ms.png delete mode 100644 flags/mt.png delete mode 100644 flags/mu.png delete mode 100644 flags/mv.png delete mode 100644 flags/mw.png delete mode 100644 flags/mx.png delete mode 100644 flags/my.png delete mode 100644 flags/mz.png delete mode 100644 flags/na.png delete mode 100644 flags/nc.png delete mode 100644 flags/ne.png delete mode 100644 flags/nf.png delete mode 100644 flags/ng.png delete mode 100644 flags/ni.png delete mode 100644 flags/nl.png delete mode 100644 flags/no.png delete mode 100644 flags/np.png delete mode 100644 flags/nr.png delete mode 100644 flags/nu.png delete mode 100644 flags/nz.png delete mode 100644 flags/om.png delete mode 100644 flags/pa.png delete mode 100644 flags/pe.png delete mode 100644 flags/pf.png delete mode 100644 flags/pg.png delete mode 100644 flags/ph.png delete mode 100644 flags/pk.png delete mode 100644 flags/pl.png delete mode 100644 flags/pm.png delete mode 100644 flags/pn.png delete mode 100644 flags/png2js.pl delete mode 100644 flags/pr.png delete mode 100644 flags/ps.png delete mode 100644 flags/pt.png delete mode 100644 flags/pw.png delete mode 100644 flags/py.png delete mode 100644 flags/qa.png delete mode 100644 flags/re.png delete mode 100644 flags/ro.png delete mode 100644 flags/rs.png delete mode 100644 flags/ru.png delete mode 100644 flags/rw.png delete mode 100644 flags/sa.png delete mode 100644 flags/sb.png delete mode 100644 flags/sc.png delete mode 100644 flags/sd.png delete mode 100644 flags/se.png delete mode 100644 flags/sg.png delete mode 100644 flags/sh.png delete mode 100644 flags/si.png delete mode 100644 flags/sj.png delete mode 100644 flags/sk.png delete mode 100644 flags/sl.png delete mode 100644 flags/sm.png delete mode 100644 flags/sn.png delete mode 100644 flags/so.png delete mode 100644 flags/sr.png delete mode 100644 flags/ss.png delete mode 100644 flags/st.png delete mode 100644 flags/sv.png delete mode 100644 flags/sx.png delete mode 100644 flags/sy.png delete mode 100644 flags/sz.png delete mode 100644 flags/tc.png delete mode 100644 flags/td.png delete mode 100644 flags/tf.png delete mode 100644 flags/tg.png delete mode 100644 flags/th.png delete mode 100644 flags/tj.png delete mode 100644 flags/tk.png delete mode 100644 flags/tl.png delete mode 100644 flags/tm.png delete mode 100644 flags/tn.png delete mode 100644 flags/to.png delete mode 100644 flags/tr.png delete mode 100644 flags/tt.png delete mode 100644 flags/tv.png delete mode 100644 flags/tw.png delete mode 100644 flags/tz.png delete mode 100644 flags/ua.png delete mode 100644 flags/ug.png delete mode 100644 flags/um.png delete mode 100644 flags/us.png delete mode 100644 flags/uy.png delete mode 100644 flags/uz.png delete mode 100644 flags/va.png delete mode 100644 flags/vc.png delete mode 100644 flags/ve.png delete mode 100644 flags/vg.png delete mode 100644 flags/vi.png delete mode 100644 flags/vn.png delete mode 100644 flags/vu.png delete mode 100644 flags/wf.png delete mode 100644 flags/ws.png delete mode 100644 flags/ye.png delete mode 100644 flags/yt.png delete mode 100644 flags/yu.png delete mode 100644 flags/za.png delete mode 100644 flags/zm.png delete mode 100644 flags/zw.png diff --git a/dump1090.c b/dump1090.c index b72a0ff78..643ae895c 100644 --- a/dump1090.c +++ b/dump1090.c @@ -2199,36 +2199,8 @@ char *aircraftsToJson(int *len) { return buf; } -/* Return contents of a file */ -char *getFileContents(const char *filename, int *clen) -{ - struct stat sbuf; - int fd = -1; - char *content; - - if (stat(filename,&sbuf) != -1 && - (fd = open(filename,O_RDONLY)) != -1) - { - content = malloc(sbuf.st_size); - if (read(fd,content,sbuf.st_size) == -1) { - snprintf(content,sbuf.st_size,"Error reading from file: %s", - strerror(errno)); - } - *clen = sbuf.st_size; - } else { - char buf[128]; - - *clen = snprintf(buf,sizeof(buf),"Error opening file: %s", - strerror(errno)); - content = strdup(buf); - } - if (fd != -1) close(fd); - return (content); -} - #define MODES_CONTENT_TYPE_HTML "text/html;charset=utf-8" #define MODES_CONTENT_TYPE_JSON "application/json;charset=utf-8" -#define MODES_CONTENT_TYPE_PNG "image/png" /* Get an HTTP request header and write the response to the client. * Again here we assume that the socket buffer is enough without doing @@ -2240,7 +2212,7 @@ int handleHTTPRequest(struct client *c) { char hdr[512]; int clen, hdrlen; int httpver, keepalive; - char *p, *url, *flag, *content; + char *p, *url, *content; char *ctype; if (Modes.debug & MODES_DEBUG_NET) @@ -2264,34 +2236,38 @@ int handleHTTPRequest(struct client *c) { if (!p) return 1; /* There should be a space before HTTP/... */ *p = '\0'; - /* Check for /flags/xx.png, where xx is the two character ICAO code */ - flag = strstr(url, "/flags/"); - if (flag) { - /* Ensure string is 13 characters long and ends in .png */ - if ((13 != strlen(flag) || - (strstr(flag, ".png") != (flag+9)))) { - flag = NULL; - } - } - if (Modes.debug & MODES_DEBUG_NET) { printf("\nHTTP keep alive: %d\n", keepalive); printf("HTTP requested URL: %s\n\n", url); } - /* Select the content to send, we have three so far: + /* Select the content to send, we have just two so far: * "/" -> Our google map application. - * "/data.json" -> Our ajax request to update planes. - * "/flags/xx.png" -> Flag for each ICAO two character code. */ + * "/data.json" -> Our ajax request to update planes. */ if (strstr(url, "/data.json")) { content = aircraftsToJson(&clen); ctype = MODES_CONTENT_TYPE_JSON; - } else if(flag) { - /* Add 1 to strip off leading /, images are in flags subdirectory. */ - content = getFileContents(flag+1, &clen); - ctype = MODES_CONTENT_TYPE_PNG; } else { - content = getFileContents("gmap.html", &clen); + struct stat sbuf; + int fd = -1; + + if (stat("gmap.html",&sbuf) != -1 && + (fd = open("gmap.html",O_RDONLY)) != -1) + { + content = malloc(sbuf.st_size); + if (read(fd,content,sbuf.st_size) == -1) { + snprintf(content,sbuf.st_size,"Error reading from file: %s", + strerror(errno)); + } + clen = sbuf.st_size; + } else { + char buf[128]; + + clen = snprintf(buf,sizeof(buf),"Error opening HTML file: %s", + strerror(errno)); + content = strdup(buf); + } + if (fd != -1) close(fd); ctype = MODES_CONTENT_TYPE_HTML; } diff --git a/flags/FLAGS-CHANGES b/flags/FLAGS-CHANGES deleted file mode 100644 index 33220a825..000000000 --- a/flags/FLAGS-CHANGES +++ /dev/null @@ -1,7 +0,0 @@ -As requested in FLAGS-LICENSE, an additional file enumerating any modifications -made is also encouraged. - -Additions: -yu.png - Saved https://upload.wikimedia.org/wikipedia/commons/9/90/Flag_of_Serbia_and_Montenegro.svg?download -as a 32x16 png. I chose this flag as it was more current (Federal Republic of Yugoslavia: 1992-2006) over the -flag with the star (Socialist Federal Republic of Yugoslavia: 1945-1992). diff --git a/flags/FLAGS-LICENSE b/flags/FLAGS-LICENSE deleted file mode 100644 index b63ec6f48..000000000 --- a/flags/FLAGS-LICENSE +++ /dev/null @@ -1,32 +0,0 @@ -Flagfox Flag Icon Set -Copyright 2013-2016, David Garrett -Some rights reserved - -Except where otherwise noted, this work is licensed under a -Creative Commons Attribution-ShareAlike 4.0 International License: -https://creativecommons.org/licenses/by-sa/4.0/ -https://creativecommons.org/licenses/by-sa/4.0/legalcode - -This license applies only to this set of country/territory flags. -This license does not apply to any other Flagfox images/icons, -source code, localizations, or database content. (see main LICENSE) - -This flag icon set is based on public domain and/or non-copyrightable -flag images provided by Wikimedia Commons. Those wishing to reuse flag -images in an unmodified larger format are directed to the source works. -https://commons.wikimedia.org/ - -Those wishing to reuse flag icons in this set are encouraged to use the -most recent version provided in the most recent version of Flagfox. -Attribution should note the version of Flagfox the icons are from and -the date of its release, as country/territory flags change over time. -https://addons.mozilla.org/addon/flagfox - -If this flag icon set is reused in large portion, this license text -file should be included with the image files. An additional text file -enumerating any modifications made is also encouraged, if applicable. - -If you use any portions of the Flagfox Flag Icon Set in other works -a quick email or message on our forums would be appreciated: -daveg.extensionfeedback@gmail.com -http://flagfox.net/forum diff --git a/flags/ad.png b/flags/ad.png deleted file mode 100644 index c9eb9ada1914143c7aa3e94de6b947e3880c34f0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 255 zcmV&h3whgi6rX#Cv(PIM)%gmNV-=lc%1z+~N;C}qW!*A2!C+Cr-*!}3-|l>&Jxo-U3d5|@)XSecSl4mjvCvZVm^J25@s;!tAT f(7-LUppAiHf{sOC#QT|PK=llsu6{1-oD!M diff --git a/flags/af.png b/flags/af.png deleted file mode 100644 index 33c481bb628994a5f2caf2c84be711cd438ad9f3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 257 zcmeAS@N?(olHy`uVBq!ia0vp^5&|rbfYx& zYIM|oM#giYKBrwwFGPAC5)-&qkbFX0Z9mZbnLx~7I_+x&kc#niaSV~Ty!C>mP=f-G z!^H4C0-PXLa$ocXrp$~eT6X&Qi z=+0L(S2z$l>ESI)**Kq`Wj@=S)Km|@Z0z`Pdc7UrZY}wjJI-wY+2`r%=d#Wzp$P!r C(qaez diff --git a/flags/ag.png b/flags/ag.png deleted file mode 100644 index 0816bd52f6c46900398b0ed4ba057823c7bee4f4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 318 zcmV-E0m1%>P)-IvxgrAwnk-RChOPR~6-1cT|Ns90a>f7v0L~F6QmL-o0001)Nkl#e9-Q;62xbcLrlr(d zP?G@xhUcv8x~?oUUJSfYzNRX4?VQs^>owVl{e}V2kR@c#^e;^@MeY)-vS~CfnR~%-}Lww)TenOFdhYTCm=+!?Af{|b>zd` QTmS$707*qoM6N<$g69u_Jpcdz diff --git a/flags/ai.png b/flags/ai.png deleted file mode 100644 index ea3e8219517f259028a7ff6f14dea55ca2e9d71c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 332 zcmV-S0ki&zP)(; zbSXrTxzpu&jj1O^k)*NFvwD|RZK(6i(pqt=;A?us1W;J839Bo|U-?-8cfrE^uSi#P)MmMBiz{shy! z?#tkpv@tt75Xw2fKrF^*1`>)uctceKC%|99l%ka3BY@m6Ch}*1AdQij0KUhFNq_*5 e2A`k&8@vD!9X3mh>B=Mk0000AHi0d^Oxe3A|H)Z8EOGsXl zk!=$aek`XjLqznfwCo&Fu~2TF>oRiv!XoiJyh}vI3-|@N7#U62*_ByXgqWBN*w|Sa z7&3YJsssctNXsr46PIFUcH!jQCn2#a$LBZ+lIxtGiUhtRk$& U!#(MaI?!SUPgg&ebxsLQ08FG-7XSbN diff --git a/flags/am.png b/flags/am.png deleted file mode 100644 index 6c1e059c8050f960e6fff9e2ca74990a6a0f3519..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 114 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!VDx^^%Amx6n}tEh-+X}wue$7gYkl!3__n) zFdWk;^aD!CdAc};NL)@faAW4VA|T+x%;S~OAj8P>powjTA_IfSO}&F_mKMhVRWf+G L`njxgN@xNAOL7~a diff --git a/flags/ao.png b/flags/ao.png deleted file mode 100644 index 1fffeeefad5feaa116e831b3bdb89f925c2886e9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 260 zcmeAS@N?(olHy`uVBq!ia0vp^5Gr!Q1|dmo!wC_VKYWGrV6T#m&ihWQ8EmhI4{y-~PNU0J7peT^vIsE^j^Q&ex#8 zz#905_ekHC^MCU*ldjBQD17=xt$&Bd6Lk$!-a~Pnt!xeDvf@?@)wg$rh?_siOli1v zrd0oh`XV82{$Gi?OU~37T=UCWQ_Jv7QsNWCoVA7r#AVbkXiNCH9(Dy<#o+1c=d#Wz Gp$P!KgI1UT diff --git a/flags/aq.png b/flags/aq.png deleted file mode 100644 index 9112397af6f80b5ca62b5163d7548179d68cc4a2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 291 zcmV+;0o?wHP);Q+VNhM*S62?^Y;Ag^7^gG z>rsr;z}4^i{Qhg6+Sldvm%HVn!sw~S>0+1I&)@Sqe$M~@|2lon;Q5_z0001fNklEtbF9H3JE|G%6@W6#L$Lqq!HXs;swk>F=HiXt$M$iCAPc-o|V zT`{P_R@#XUeZVoViy6+oS^*fR=#s`6lKV7801*Ir1n?EP4%XEGX3Wtzp0V5lzNGvH p%?7+x&U=?-002ovPDHLkV1ns(SMdM< diff --git a/flags/as.png b/flags/as.png deleted file mode 100644 index eeeedb1e19a220a3da4f502df07473e0199610d2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 312 zcmV-80muG{P)D|8Y@9Wpk#>S|I_Vx4Az_sDv;D0UvvVb;wQ3K6RtLGvd z;|DHp$eWxOlMwd1Vh@>NqMt-GitrCVGCF!++-PwCHz{jf@zGe-D3Bvp?c<4Xykf{X z1RV{)jU!c(Ij2BqyjdybJSRCYw~V47r6hp6Rx_A;VJ*$D_LEjDMKevgk!@rE0000< KMNUMnLSTZjc8Vi0jWCd;kCc|5np-d$i*v ykSb3X#}JO|$q}qT7@i3IN>0dl}&ENr04TGnvpUXO@geCyVHyeHc diff --git a/flags/au.png b/flags/au.png deleted file mode 100644 index 4db9c0484744cfc9d237a01d56b992871f26551b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 350 zcmV-k0iphhP)7uW!Dwi@rl!{p4w0Li(aWR2{*;vO;_3+rkN*GwO--&F8m-C!HxLoWyI3RaLV7USIvl$y!>p|1B*60gL}LGXMaKk*j+20002FNklOM<2+GrQ-^KNsA8*QxWaOZUCHMY9%fDt7F=`(fFhGeGSQo-U3d z5|@(&1Oy%k9$=Dan8Dl5!mVy@#wnNP#;2wimt(af@@C3?Vh{f0@mK)OV(@hJb6Mw<&;$U`EJXwW diff --git a/flags/ax.png b/flags/ax.png deleted file mode 100644 index 82aa7dcdbd837ea839f98b162e8d188531841242..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 157 zcmeAS@N?(olHy`uVBq!ia0vp^5_UjP-Gd%8G=a9mH0*qU`UY5R%LgaZzI%lGWr zb3u2L439(_Q)BcKAA^J!3`}Oddy3rY!k$=iXaw>+cI!{yKT~y@UTdL&tfM zMVtLC-fCJh?0jNB$Fv|pn+<5JtEY=&h{pM30d)omwq_3y8po~ zev_2tf{fY&nr_P~iv1t%5LB{k{CApxL3!$Yl^jW+mQYU@#}J9j$riZ3S{On&Co#By@g{}{P7v;5@Brgg3;~=V c%s+vJp{#i$qkh%@44?%Jp00i_>zopr06@DrZ~y=R diff --git a/flags/bb.png b/flags/bb.png deleted file mode 100644 index bd49ac391cc7610ea464c574a8bab5c8cbab70ce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 229 zcmeAS@N?(olHy`uVBq!ia0vp^5LnBC!-d{%gw>Hgrlk8gpG)D&LncYNo~U`-p0Fg3!h;savZQmNZBx zNwI$3rxIw-Gr3r-H&68caWw|Ddbgk)pz#boo-U3d5|@)Fv@vOFG<=lIP(FB|+t+DE zt7lA1gTF*DJHPm11#M}u#XD40R4rRJcyttcd2Q-W+&m{fWQyeO)ha3l7U3=}-yEBi Z7#Th$sx?hFFDwHY?CI*~vd$@?2>{4HN+bXP diff --git a/flags/bd.png b/flags/bd.png deleted file mode 100644 index 52687d378a6ee9747846b183356150271f9b4170..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 260 zcmeAS@N?(olHy`uVBq!ia0vp^(m*W0!3-oXoc*!{NF@aLgt%TdcK)dCsF>vI6yZJ1 z*^N8hcY=$XceodSn(qlyXQf1+%SKMz>3%aE-6lD^IYxR3rulx*c06h3ve&|eFU|L* zuA^?8w?LY2m6y9|jQ49@C!<(zwoE_IaIY^~jtp6TNwLaVK)d2ST^vIsE+60caxc0Fp zF4Jj?zL5~bV>F}g!I8J@m3(53F?H;%Jo|NoEfaeg873weo_3Dg90jzB!4qiSI;Vst E0H$M8e*gdg diff --git a/flags/be.png b/flags/be.png deleted file mode 100644 index 5a43b1301639c2aa0a8a52e626332a178088ad5d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 95 zcmeAS@N?(olHy`uVBq!ia0vp^LO?9Q#0(_UGLD}IQk(%kA+B#VEq^_50`lx6s;2=d qK~ERQ5RU7~5nD~BG&VM-sW9+ZOF7zdY-|QfGI+ZBxvXU^zL{Cz=8dXaPWHiM6jnkk!2S>}2CTq*NjTbE&;r_7voO^{ws7sn8e>&X@E zED|T4*<5vgWOK&3ATD-8Ec>%R?2Xg73|Jq&nbUj3@;`egGwYKA26pQ$GiSuwI>7({ diff --git a/flags/bg.png b/flags/bg.png deleted file mode 100644 index 89e4c8b5e1cb5a9c28f93322fdfa8a8a33ad3a69..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^(m*W0!VDxuZ6%iiDgFST5ZBP1^V|#l8K&i3Qxp3C z|Nof<{}X^xik>cxAsp9}3mn<_c%~FwY!EUEQ0Ud};9-&Inb^pv8pBZ5s5 diff --git a/flags/bh.png b/flags/bh.png deleted file mode 100644 index 9c3129b1de87fc2a1e9145aadfddc9467e77d95a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 216 zcmeAS@N?(olHy`uVBq!ia0vp^(m*W0!3-oXoc*!{NVx|1gt-2E^6baGhj+qK-*4RU ztfl|opFhvqCfsxj|FCt>-KdPqnl|TzH6EmwJnx)x%QN!h&iy|hKmGgd+j$YqE4mK< ze*OOc|Nl8bwS(ok;y?raJY5_^BrYclurdp#sVN$k98ln5W~$loMB-*k;Y;C^heC&Q z)wJ!c^(+PX{1ju-J{3GR3~mUY!DG26?NK4Oo&AHa*7FRQnb=|ydrkWoLcNq$`>}sB Q2Aa&^>FVdQ&MBb@0QAaPkpKVy diff --git a/flags/bi.png b/flags/bi.png deleted file mode 100644 index b206392e300e275630829f607a70c4ab5627a098..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 353 zcmV-n0iOPeP))V z*Xfv{_51d-Jvig^<>$-Dx!$?>+~4{A`6ahN&lxWN|NqVrCLXmq6^3*<0002INkl3`du$m$jVEusMq?yIyXtmtJ|-fBxtVF7_#-PJPC100000NkvXXu0mjfqA8_7 diff --git a/flags/bj.png b/flags/bj.png deleted file mode 100644 index 00909110a8b24ff0273f0b37e080596e7f7bb84e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 108 zcmeAS@N?(olHy`uVBq!ia0vp^5SJS|)@!|G6mkLQt2X zJupo_eJ)6?r;B3<$Mxg_MkaPuj)Vn<$1h4SWt?DSD0Wm|cq?mDI#3ORr>mdKI;Vst E05(e;TmS$7 diff --git a/flags/bl.png b/flags/bl.png deleted file mode 100644 index 0fabfade72d988026e142790604b095898b9e338..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^5i0fNT%m4rXGbm4u-Iy~Q tC@AFV;uyklJvm~lmdTXH#>O}i29-$phf#vFR{&)hJYD@<);T3K0RZ@*836zQ diff --git a/flags/bm.png b/flags/bm.png deleted file mode 100644 index 9d2262cb33ad40f59c303506ae10a62e43464d74..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 337 zcmV-X0j~auP)P z%ix=mlaY3D_ub*GATR2irsUq|v2J&}kd~Q3L$i99q_NRxjJGL7kS9fvSu-8Gt+kvb zG?^9}|NsAeXiQ#LI`hoZRc)wFdqe;veOhs=;A?uq|_6Cne69F$WM*0Q_D69z)7E2p>>MSqmwj`-%*g#0P@Qep|5sAx{rKbn00960|M%b*!UDy{0002aNklfeMjfe zVdY9YIur}KHgdKQn-Yty_LbiR18Ng4eScz^rKC6+m8{lR+<-aEA%w11C#$SAmZvf` zk}6>PBx#yPDV1`5C5!D21Sy+F%C4{ZYT(Q7UT7@ES`_?V6UFN48V+|&=^r|fFsPxA RH_iY6002ovPDHLkV1j|GqL2Up diff --git a/flags/bo.png b/flags/bo.png deleted file mode 100644 index fe3b4eb08ac089ada1c227ab0cfb234a80a524e5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^;y^6G!VDz&8GmYnr~sc3*Jb+!-!A3)`IzCVwj4vH zNucv-9-x$>r;B3<$Ms|bHwI?5B8w&tg#!y(7`ToU1vGFoSxh+0$e^32^z>TAjvAn1 N22WQ%mvv4FO#lLW9-{yN diff --git a/flags/bq.png b/flags/bq.png deleted file mode 100644 index d33b631238886d722918fbc7e6a07a1a621e9270..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 113 zcmeAS@N?(olHy`uVBq!ia0vp^5 zSee`dP~Q2@Ol%5hUt>x>gTe~DWM4f?*~nk diff --git a/flags/bt.png b/flags/bt.png deleted file mode 100644 index 4ac41d9b6222b19aa7a12f7d519b5bf903176f08..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 317 zcmV-D0mA-?P)y^Eb^_D5|6SHo`!F2mGk21(e4Bk`xAPg10z}BUg%t|`rfp&q zUkYfWHO6Q$V7W0GJBm&D0-yzLf)arf0M^)P>w3u*Jrz49L+aj-325!nspR}XAvP)1 zSn)oHD~wHeNPn#0P|FKMsr=H{=MndVeSW$loB00yz`mXxUpWFZ>HYHpw7e#_XagB& P00000NkvXXu0mjfxDJi0i6VtANbXRkv+(lEJDx vT^vI=t|v#ZvhlbC1PE}k8E|oRn6Wa1ZZ$r;cVEeTplSwBS3j3^P6)Ldrmy}<3g!rzCF;tu(FunhmP8KfZ~*z;g6P{SVl^wSI99wYc-!?00015NklyVzTpBkIMEq8q2qZ&p5y+~A6{Q zwY3uhd)@W_fKP=kDHkN1X>Le()PaD$ngK0~6z|^|g=-GCo zR7Yo`gbD%!hL>Qw|6Nv-YQe<&H#y0`T=aej+ODu=`41cV{DO6?Qfhq8 zCk&7v6-ajI0T)?aaxSKkcaUR1Gj-mFqFZ2AB7`XQ-dA7^yowd3R%5DA1vh|qAR(Aa zgo-V&0D`PJA3)kw9}S7RBM@`;^Ryto3@Fz7nB+HgEDtF3ZJ4*&zjbMW5z>bf@Fw& kn`A4o>W~69BEaX|JJ}IA`T%-EE&u=k07*qoM6N<$g1+*IegFUf diff --git a/flags/cc.png b/flags/cc.png deleted file mode 100644 index c08c97caa3e1ef4f341509d300e4324dc0a24af5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 338 zcmV-Y0j>UtP)`{w*VN306Ufd34;Lt-~a)D004jhCB-^E00023Nklt#z)?N@)VU{6WjxE kxXKp*A$SIacronp12d*Krm#649RL6T07*qoM6N<$g0pIV+W-In diff --git a/flags/cd.png b/flags/cd.png deleted file mode 100644 index fff626957009ff7520f216d51cdaa0016d2e815e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 334 zcmV-U0kQsxP)VJ>HEgAs?b0B^yh!AkAWE6J&>0~%lFZK( zARvq3;cXq(Iv?JtDa>OqTc4^Ch3*1?{FAYD+*TgaCLqobApn2>NnXy>0001~Nklgam%PzF2^wO1*EKb^jxlt z{V)>Jq2nOg)^grEvSO$rf7mTYldM{~J&b2<@FIuXVxGQ85Oc-F8oVGu4!atE4+I>B g@P9Ut!rYJf1{y6O{~jQXwg3PC07*qoM6N<$g2Wq@X#fBK diff --git a/flags/cf.png b/flags/cf.png deleted file mode 100644 index 8229a2314c351d12b435eeae265a4b3a0d57e901..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 162 zcmeAS@N?(olHy`uVBq!ia0vp^5q)=Ocwa8_^cTuo*#KuMY20%b~MmD22WQ%mvv4FO#s0TF<<}y diff --git a/flags/ch.png b/flags/ch.png deleted file mode 100644 index 2dffc4339cdabfa617a8b6cf792c3fee66afbeed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 142 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPGa3-AeX{eS%U|NZ;_Z{Pm^z=8i2 z7604Y|Cg8l@96js1Plz8jw`kSRcd>>IEHXsPoBZa$`c_ex7I@9@+A|g%SMeolClmL mI?v3A%exp5*BNi^=glZy;9k!6p_>P&jlt8^&t;ucLK6TxLNxIJ diff --git a/flags/ci.png b/flags/ci.png deleted file mode 100644 index 39cb88d5ecd75a601813f501b2678d8c85af383c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^5i0k)yhX4QnGt5f}3(U9# s6cqAwaSY+Oo}7@t!5h1^t1(W5;k=jpL)MShdx5eHp00i_>zopr00ayfh5!Hn diff --git a/flags/ck.png b/flags/ck.png deleted file mode 100644 index a9b32b1bb9f1ef2b1e3d36c8065b6edd8451b547..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 367 zcmV-#0g(QQP)dgar6@*`&lD>|U7tEtn!Lr`jhw_WPL&@&jBSCmDMXOqpRCc>=kns`CqJTx711Ep;%+ghDsNidQT5+q_Jy6+0RRAP?D8huD0002WNklv7yCp~mf2XQ+vX6(EG+cCG>7Den{yBcU)Fm?M4Y#Er0-1TOXh#I;< zr-(so2!Z|R`Xjz~qvy)vygcqwvPz0QVcq~~2gE$rOfY-ZXP{Sm#P8m$C}epdRRFlT zzS*Yq0t4le1Vuo>P|kF)mCY{7%Z3l|NsB0w%nS6G7^>bP0l+XkKWO6s% diff --git a/flags/cm.png b/flags/cm.png deleted file mode 100644 index fd226cb851cec8c58d97fe5d947f37754baba2db..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 150 zcmeAS@N?(olHy`uVBq!ia0vp^5hA diff --git a/flags/cn.png b/flags/cn.png deleted file mode 100644 index 4b26fcc92f69d7a08980caf0e471bb940e261cb0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 223 zcmeAS@N?(olHy`uVBq!ia0vp^5+GnPfOsQj=+mp?)!%P zPrP{V>j~V`6yW%!wG(J&kf)1dh{WY&fp#Xx!jJ*@p*yg3eQ1Tr!PE_f;vBT?4Cz|SnK9mZ*vrnBx4SKAC0hRSwD VeYS{mCxE6ic)I$ztaD0e0st&}Nv;3@ diff --git a/flags/co.png b/flags/co.png deleted file mode 100644 index 83b472ecb0113879237ad74e46e36a05be9b838c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 98 zcmeAS@N?(olHy`uVBq!ia0vp^5i0e5)H3o~xe=dqKPOsVz v6cq7vaSY+Oo*co-#-kFvFri`YA!df7uIe|JC+|%M$}@Pn`njxgN@xNA%&izu diff --git a/flags/cr.png b/flags/cr.png deleted file mode 100644 index a581281fd5cbd1729d4631f3959fac5f0cdb0c8e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 125 zcmeAS@N?(olHy`uVBq!ia0vp^(m*W0!VDxuZ6%iiDgFST5ZBP6RreC|{{R1fPEd_O zyWZ(tS`1K1)6>N9qPezQ%f)*Z;3p<-mI5ZrTkd&Bk%+;7{|K1FS_5BPD X>B{XM=99+@7-Ts_x$!HIl@(zV#IHbBmQ_*)7l0^`<=_&K!w$d-m_eAI2e$%7uqom~ z?9!M3sDPD;hlvZUgi{Q=Bc*sDM&MQ;!H?Gp2*B$|Ai(cULIEYhMp0xDif#a^12`#O S*Zcec0000|Nj$k>NW_g z-nq&&t13<{pyAhp_}|akA66tcvraEDA+M zK^h`Hd~0S;bmf>mGobqBLzZRMmX;|?cDhOy{D^hwnPR}q@T}Re^ux`2&Oo~uJYD@< J);T3K0RVF1XeIyv diff --git a/flags/cw.png b/flags/cw.png deleted file mode 100644 index 72278db12c2ab8dc8b7e1a38160326c1c0f7070a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 189 zcmeAS@N?(olHy`uVBq!ia0vp^5O<(L`%z!0uKYj4++yBq=^YUI+`^_fLne)Ll~zbUs>22p`MsIH&hEO mriXAk$}nta5!F4e%E(|*Ev4$Nly(nj6oaR$pUXO@geCwATtYzr diff --git a/flags/cx.png b/flags/cx.png deleted file mode 100644 index 60c46ac83777a435d4a1da2b6f86ade81a021b85..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 354 zcmV-o0iFJdP)hN%sJR>J`i4eQx}KnD8p#4SQPCsQ~fs0%&C4UqseYU)sPxh~-$#GGgm=WQM@ z6_?&S^f0#Z$)YUNYXod>oST(5lyfYCKprQcb)ve!hR{s~9sHJ-KnhTnnBrAcWdEbJ zhp#dX*>5i=AR@c!@E56vqYyzLzXA{;%U_Mt8v;u->74rGvH$=807*qoM6N<$g8sXY AM*si- diff --git a/flags/cy.png b/flags/cy.png deleted file mode 100644 index 665c97894ef56d493b477a5cd956434290115759..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 282 zcmV+#0p53)`}pbB{{H>&(5Ld$u>Su2`0CgF{QK_7o4&)d=;`Fuc?PJin)vwl^V+%HlsNSD z^3T%8_vX>r+|&H`@Z_mr_2I|;`}f(qjoF1A@9^!!$-C5c0RR90ELw7@0001WNkla;By4L;w|Npv(l$+U0PoQEiPZ!4!j_b(*Gdmf0)=u-7)2HUI;^%H) zwA`6>Ci8W+M+dexS{mdE`2Er{U?`T_DKKZ-s!)!;16nNVwW3YTml+-%Fm144;`pY; Yu*)Ma`$PuUWuU1Hp00i_>zopr0IUr-oju_3xyojl}Hu{P`cT zHtP87YqICsCM%HGoHMvc6Rj*#!)3nc#OQi{b-3yO|Nm;T=Mt?eofQ5Q0001LNklGf!-0H@dqfMhyi!}0yAi?rxjL* VDh!LoxTpXC002ovPDHLkV1m8*h1>uD diff --git a/flags/dk.png b/flags/dk.png deleted file mode 100644 index 2546206143aa32d07581e1b20ca0e768a5510126..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 130 zcmeAS@N?(olHy`uVBq!ia0vp^qChOb!VDz2zi5hq1Oj|QT(1S?T(Ar~DP?oPJoKE7 z&;S4bkMS7fe=xQ15-kL@|g$D-&xY!vra#Bn~ bHigTe~DWM4fZ}%iz diff --git a/flags/dm.png b/flags/dm.png deleted file mode 100644 index 4b4ed4427d0f9009dad6912f9c89116bf8325477..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 270 zcmV+p0rCEcP)J0c955GRJ+&b&7-BsnTS2-a zF})!#xFs^FCNH}qFWh8t%N{OSN(fq7T2)n5R7MB?|Ns2a765BM7eG4F0001KNkl_VU}s8?m;=pZ6U5`{~O~)8G># zCKm-v?nM#foz->=;2(>9TaH2(kpKSPqS$<^f`M|gRSY=+Pmao*6=$Y<$)f73EBl5HebH=abW)rb`k+NgTe~DWM4fzeHh% diff --git a/flags/ec.png b/flags/ec.png deleted file mode 100644 index 83f795869546b3ff7d21368da4b98986946c0eb1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 257 zcmV+c0sj7pP)(2pwm_eGOK;Oa`%(Ei(*AV{P0E(J?P=0iaaxx54pIviSewlQws*&w2ejqOA00017Nklj3CMR#;>I6T)Ks-~C)F6%U>o~~@1gBb4 zE*gskK%4UFc(Qq)vwhD3Y(q?}0q9h8*nkjH3ZcN+=|i{y0~{(Szbx4}00000NkvXX Hu0mjf>R4sX diff --git a/flags/ee.png b/flags/ee.png deleted file mode 100644 index 7f0fa03ad92b5415af0113cc2ec6d8e85df2521f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^l0YoL!VDw@Pn?_qr1%4TLR=*bJVHZ5fxQ3!|9ecl znSA2NVjxG+)5S4_<9c#|BNHFblTQJSLP7xwjp`jNED}8v8yI)mFzi~ddeLw0-Jd|k N44$rjF6*2UngEk)A>IH0 diff --git a/flags/eg.png b/flags/eg.png deleted file mode 100644 index a6c0bf7d6fadf3a0cd34ea1487e97f4131221351..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 203 zcmV;+05t!JP)RAMw)pPc@8iAb*rLwFt-80b=-8z1;=K3o-R!rlySJaPni7VBq89MdAs;0S_Y^JA%g`iUZI?0s#0M9!eNDD4GBO002ovPDHLk FV1fa{T5bRU diff --git a/flags/eh.png b/flags/eh.png deleted file mode 100644 index ae4941e93f449b611a5b17f0210d1074dcd05054..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 283 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!3-oF?)7E^se}NZ5LYiYE~O0fb<375Qdao) z_pcH&>tS)lKVQFcl-d0K_N|IraP{tu?++aL{qf@-A!!aq#=pOQE#ec~Qd{-y?)^hY zc4RqfJ)gh$vTx`)E2q1a^{as3^1lE7{~r;QW~j0SS;DGb0Hn%1T^vI+&bOYu&F5gi z)9}!;Tf(`7Pxt-*X=&Vs8-M9M>b^Q2`YZh* f;y>q&!pn@Sd(7KkaK>o>UBKY!>gTe~DWM4fR>*o1 diff --git a/flags/er.png b/flags/er.png deleted file mode 100644 index 16762d7ff030c3c3bac20dca2d96b23a4196921b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 312 zcmV-80muG{P)>H}E+!>>V}rYcBFqFzN+1_kb+>r6~E4 zEAT-v_H`}Q6ik6vpJQ$?sy21c88t1KEmnERnL{!Xtt&x^-RcB4_*TU40001!NklWek_qPzE*h0#mD1TSgg3 z2;4C#N|y*2r<)WFK?4|B@Oy+ZU^pa;(ziQsI3I5WqBr1} z0xx#)xs1T%yci9%Q-OD39?J88~!QQ6(# zakiCfi97F>B->LxddFw;9a_-xc?a{wYOd{-&i{`v9OIUoGkv}R&@K;87sn8Z%gGat zGfJ$`P;6&*P_2+qsodbXq2p6ww^#DS2U7$mCp|r)bnuAI5$&Tbu1+o8zB6K3x>?#; l_FF7gFbhvC)RR5L#UP`ny|hnrcO=kE22WQ%mvv4FO#lrhSM>k@ diff --git a/flags/et.png b/flags/et.png deleted file mode 100644 index 01fe886e784a13542db7fc6cb0f34e4fb767d913..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 310 zcmV-60m=S}P)^hu-mJtg8T1A@3NS$1)uN%>!>wAAm7p3jGi?M)}39 zW)pj6kI9M=)>>|<5NT?&7$sQqoMM+|dEbMrYtH-O6MS_FURoVA-y!`0_5c6?07*qo IM6N<$f>Dfl761SM diff --git a/flags/eu.png b/flags/eu.png deleted file mode 100644 index 80f735c980e09f830df17d150abbb239b0883024..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 289 zcmV++0p9+JP)XqYO$Dc00000NkvXXu0mjfBu#Ba diff --git a/flags/fi.png b/flags/fi.png deleted file mode 100644 index d9b13c5dfe68e15733ffd78cbb50a55c0aaf490e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 130 zcmeAS@N?(olHy`uVBq!ia0vp^Qa~)g!VDyT{V$pgq(lRJLR<}EW+XIjsF(3ZW8~*?QpI7^g1E@g5)5S4_<9f1(x3@PRuU9hzTT!K+o*v)AMm>Q80$n^F4;IdH d5}nS-u;hZ*T(v*P%7JRRT1n6I`IF0xs>%~UG*lA$#6m|Hq-U{egGW%J}jH@KPh6f>m$h3 z1z6i4g|!2%uxPBk0O!DktZSHP7_mv_l=cf;29S%`lw&oH)hf>;1Xcz>V}nr6;O1abL%W+VxS0Jvaj2mdFMQUIXx7BFN~jnMrLUTCEXLGFPs pm#HNF0r<8h&%l%OtNlw}!3PBhG=J_qw8j7c002ovPDHLkV1k>%o45b~ diff --git a/flags/fk.png b/flags/fk.png deleted file mode 100644 index 4b947a85082d2cd48ef524b546a676005e9e1bf4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 342 zcmV-c0jd6pP)7ld;f9p9)!5q46e|%kg}uw&X_m(1-{+*U(H=gGDMXOepP!p` zUc$A$vwf5$M3D2$(wUNhqo1ANYkFF7s~dQ*Rc)x(Jy6+0RRAP?enGW+00027NklxAvL{M3{|1Aq*6H`l^4?-p{*#)#NqYhyM*g}}*bqPN~sT_3z z`E~=&Q6Vt%zyv1Lxf}4{Q~Exg06vv<+q`0U2L1wKQpssY$hg(~kOxUBPZEP32A*bzb}$mRLWNK&aQYmBWj2>(J&Ogof8V`G|71Y98_jpaq4lH*j zzvG6y;q>|a^!WUTyWx_<N z-gUCwg@xm@8Zu35V2w8(XXg`UpI4IcasSKq6hiVWdqJvxg?6#lB%w|NsBLF=lT* zP*Bm+#W95AdUC|p3)xp!vGTYC@bvKUI0$etF&c1bd2G>Sa9E@F(0bBI4WMEMPgg&e IbxsLQ0O^PxFaQ7m diff --git a/flags/fr.png b/flags/fr.png deleted file mode 100644 index 0fabfade72d988026e142790604b095898b9e338..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^5i0fNT%m4rXGbm4u-Iy~Q tC@AFV;uyklJvm~lmdTXH#>O}i29-$phf#vFR{&)hJYD@<);T3K0RZ@*836zQ diff --git a/flags/ga.png b/flags/ga.png deleted file mode 100644 index cda678166845951ff94706f3584ceaedd2af84b4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^qChOb!VDz2zi5g9DgFST5ZB$C0#+Q*|8r5ys`LoM zyoAGcxAsp9}3mTc(*@A916(}57z{1YuvT) z+TZ*9{n*^;vAoyuxWD`B?X0-fiJHTUmcFI3(ew5B)G9yYk)GR6V5+v%^Tf*Ib%Ou@ z{}ncf;&OlhBz?~mD`dwv!2kdNlu1NER4C7dk=qu8AP7ZIcgr%O$^ZY<8AT1}#q;3e zvPD2RVr%Y4v|Zj`TXOF8*c~Ap1yO*c*&-VeDZm?rb~2zZL6I!5K9U-9$5U z0617ZM#B{vSW!GZTA(83&1L-?Mv@@c%(wXS0jg8E1Q!MI6OCfbr6YUJJ zc(5czw>l&`FptH!DN(Fq{$MQ0SaVlg^`|$(EM~f#<=+m|kKOZ}7oH^@1n<3yUN3eD nW%3#T_J0sEHe9?WUw`xj(U>YPjv9I>00000NkvXXu0mjf#TkrK diff --git a/flags/ge.png b/flags/ge.png deleted file mode 100644 index 2c8b792bb558c9a3878c18b4fbf3eff155c09c84..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 242 zcmVCHe9IVypG`=FvMHKq4yIPWpX=|r sfq}_r1z60cRRUgshmzPTO-dYw-%zw1k@?I;z5oCK07*qoM6N<$f_TerJ^%m! diff --git a/flags/gf.png b/flags/gf.png deleted file mode 100644 index 671be464f42d35aa04024cb6e27413669399bee9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 238 zcmeAS@N?(olHy`uVBq!ia0vp^5kj9W zK+z9#_)QwMF3U>)IL<9yr~C61*Az>|PxJXs$jH3!7x;6F^OlfQc#MWvgWjLJoa~(j zOI|1M1scUs666e+4I?N=LJ zJ34(s^-s=@5b3^*w{;Gp%FI1n0VR%|MQj^1R9jZQyk5z2LGf50SL~jAS;q~v=YAik lmOJ!U_<*F~l#YiTWirK5Cz>=rTeScH diff --git a/flags/gg.png b/flags/gg.png deleted file mode 100644 index 1010f7749652d5312387ede341229a52acdf0af4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 151 zcmeAS@N?(olHy`uVBq!ia0vp^5C@Y$PiK%+=!=R{ijER8<8zXn=$357K6^Fe>H{&`Kc4en12lrc)78&qol`;+0J&i{ Ay#N3J diff --git a/flags/gh.png b/flags/gh.png deleted file mode 100644 index 524d8f0fa4392fa24f9a8fdb6d7909980a9aabfa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 175 zcmeAS@N?(olHy`uVBq!ia0vp^5i4r61oWkT0OJ&u_5ticKALe*L$ES|4(HFkQo?z#|1x;cl>6qaC~_Y)W_Wf)vt WR-W74!6F4Tg~8L+&t;ucLK6TzGB>0E diff --git a/flags/gi.png b/flags/gi.png deleted file mode 100644 index 6b9f5b2c694831b64ece52add4bdf3d34a312b48..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 298 zcmV+_0oDGAP)_@c7lHna;~0McXbCYjV1XiE ziYLV{IPa`?>_TeJAR5;a1152AVnrb)2Fyf7%0e`AK-N-gsFDNG4q@NJV9&3B$2&PM wtI=jr`BVaR*|hEp`T%r0{sf1<0NWRM0g~l5=2#$T=>Px#07*qoM6N<$g3e`iz5oCK diff --git a/flags/gl.png b/flags/gl.png deleted file mode 100644 index afaab2d4e706ab185c4ef3e7cdae344213bd1cac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 271 zcmV+q0r38bP);_|OeB_R`t>@$=kFY3-u1(;Y$by~yHef#6_y@2-&k|~^Y!`S=Ftx|{`~#hMPvW}|IiFGsFBFo0001LNkljDU9r^(1S(MRba4#fxSs6c%*6AgfMp^>vyf0ifg{rjnPim%4NOiG87yTO Y>W`cKUA>TNAy7Sor>mdKI;Vst0O~6vga7~l diff --git a/flags/gn.png b/flags/gn.png deleted file mode 100644 index 4c1b49ab5f40b92b2df4b74cc5aeb17388b25e1f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^5i0e5)wLcfd7^WnM7%goF s3JQ6;IEHXsPfkeS;Emnd)fgwjaNbM)A?ru$y+Bz8Pgg&ebxsLQ0G~t`f&c&j diff --git a/flags/gp.png b/flags/gp.png deleted file mode 100644 index a2de6b224154750476b7368c7bc8b13bf9f382d6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 351 zcmV-l0igbgP)6) zJa)mU2Y+=00|NkshD6o93`|^MJ~sj?Cjnnm17T}c;l~c5n>G#%0Gy5mzON`TNNy7_ z00}FD5GGs^6&e5)001cf00sa6LjVINh4$DA01Pes-3b6BhyVZpao`j|0002GNklpG;Ftu});yPw(!2F#y<8k|2#1vo=^t zDKR3DDd%l7!j@tMk*em%IlDqS#o7Ttz=j4!(*xKyW-BOG%N}4J8~Aeo7*?3!(7xB8%ql7;j7{~l zu{f3$jzCK*z@-I2y@GHv(WanvcKJ`0CUd&|NlOk0OKJTMu#s30001NNklKg#iGDB!MRnlO=MHSsG$X!_qM@(R+IW XVaF-6Gzs7>00000NkvXXu0mjf)eCyx diff --git a/flags/gr.png b/flags/gr.png deleted file mode 100644 index 570204da7acfef015c7d997bbb31a52fa56fd4ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 221 zcmV<303!d1P)ff- z+C6^1|Ns9DUaz$-xgr1n09HvvK~xyib%So)yUrq0@_3^TOZ4!(QM=fH5=aD$Kqh#j5VUav XRaYCf##gjl00000NkvXXu0mjf)i7hL diff --git a/flags/gs.png b/flags/gs.png deleted file mode 100644 index 488c5666a4f57f73990ce0cce40734c5b86dfad4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 362 zcmV-w0hRuVP))sIOYN|@(Ht@uD5NJvk#U2w;&g&MQi(Z4ISv~vvwD|mfRfsTl%ucDKQJ*!PGMG7 zVJ0YD2_$k}VJ}*7t5t2N^25p7+vsv*W~m<&hf%3K#y4pLJ-Rc;_U9i?OeByri>T{ zAqIR)9(LL&3E_1q)RIa$aFKx$rY#T?k}EW`_pDhn5dUaiq=#{-0jQ<)j2WS7KcEC) zZ1hUkMyTac!{%xS1;CdTcoon9YYS_A3*D+#Kd%bJeB^S;5Bf(AWCvA&#*i)q8mwam@E{Qdm$_3+~A-{aAdq_&iayy5@<|4En7msP?n0000-NklIv=Vd#V`Yb=Sa)WEMX_oEmd0d+1HR)3eJJ!yf8m!-PSU|I^ zA#Yad!i(vX`fCfS*)=L`dZr6&lx$P9?@{)dsO-(4S?#Fv>=w|jcuyC{5Q)o6FGlh; zDDbcZJZjp+eL`))_x-Bu2DwRd?oY2fGi8gkr}AINOZz`Y8pbgx8_ZUCmf-Nr>GcW6 zG?S=ZO*L=Kmd7ZB-HZ2ZynZy(QgX?R$zopr03kJFV*mgE diff --git a/flags/gw.png b/flags/gw.png deleted file mode 100644 index b79d816a88cd508bc9f9cc4125516803c51c25a3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 203 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!3-oF?)7E^DVqSF5ZA|<^7%n#A?yOeOe}MG z<@8xNPYbHWa|kWvm2+U_kzr3#>7?w2jPi_@o&%|hOXfXp9+j=Gj@$X8-p@Gt~faWlGy85}Sb4q9e0FDGTr2qf` diff --git a/flags/gy.png b/flags/gy.png deleted file mode 100644 index 69034dad6a23dc4bda0f5013755f762aef35cbba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 323 zcmV-J0lfZ+P)5r444@ VDY$$miUa@v002ovPDHLkV1i2~k^%q# diff --git a/flags/hk.png b/flags/hk.png deleted file mode 100644 index 17372e2c10994f97596dd393484e4dbc5f60bfed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 262 zcmV+h0r~!kP)*?c4 zHQp-{_}SF@+}PkX9pzO){qXPj&&ud)TJyE6?23HnVNda?pWZ1D3+ekr0001CNklv(@{714-2^tEl4IrtIycc#UMxTTPrrKP2DXqZA>zTnTmS$7 M07*qoM6N<$f}B8reEvK-Lopk8sTp)S) zg?88VMQ7f=`SRz%yC2_w{r&Uz|F>U%&p-M4^3xxk?(3^Ay#N3IKSS~P$@T#{KofjD zT^vI+&L<0~Fi5a9Gu5#q98O?hY-W%tFy7!S@n+2(jzASwCYcx}CLbLprWhHf8=@Z= y42_kiG`cdX%j>rsJbk=#NyB`G1PLxjUIsfE1-F$G4kZ8$X7F_Nb6Mw<&;$T~lutAO diff --git a/flags/hr.png b/flags/hr.png deleted file mode 100644 index f11c40595e83fbc6c1771f3de489510b458e2d37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 286 zcmV+(0pb3MP)dHy|1B-kgOmT`TB0E0OiHIR-~TP=?%Ek$O!lWYoO}UZKZ0Ap+O%iwDe!TMT^s!= zNYMJeOHTzB5oXN$q1>Q|W_DF>c$S+6g&!lA3&73Bpp0g*X34Nh0!8~^|S07*qoM6N<$f-2d8SpWb4 diff --git a/flags/ht.png b/flags/ht.png deleted file mode 100644 index ce4f979e048b6d8821f322f6e9056a4a0aaaa623..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 202 zcmeAS@N?(olHy`uVBq!ia0vp^(m*W0!3-oXoc*!{NO=eNgt$gb2%gd4fByc()l1i& z*}HE?eL&sPwqIZ0ojbU%s@x{B&Hk){{g?MI6Q)F+Q?TE?qkZwrmFMqWnpEu@*5Ytg z&f)+6|NOd385HJU5-^$g?NdI`SSwE##}J9j$pXiDCD@kFnXy7adh!a1GE2F%I>xdT zOHK=cM8TxgCjyQf3MUJVIf{!ueoCBrn4#H|k0JV+TD{o6V~>EQFnGH9xvXzopr0EK5GJOBUy diff --git a/flags/il.png b/flags/il.png deleted file mode 100644 index 0e7dbe9b758465889476fb980dd1b5bb2b8582c6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 156 zcmeAS@N?(olHy`uVBq!ia0vp^Vn8gw!VDxI9G)Z!q*MZYLR@otuDRr%e*gLR*YAIP zOU`aR`pPcjWOCb;@~JmF7Tsg8*zy1Wf4^^Y-GJ(iJzX3_IIbt(=w;wB7HmiqWm>S| zpw?7{R~J3MZxOPvz7QdzEgi|r#c3)$eXlIXfrck(4FB|s*o65vHUYIWc)I$ztaD0e F0s!>~IduR4 diff --git a/flags/im.png b/flags/im.png deleted file mode 100644 index 008e9f747d8eaef4eb861265fc434f15d098aff2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 268 zcmV+n0rUQeP)DsZi)t8^l!mY_5EX8to%12knK2W)K zYsnxd%fFhxl9$D>QmO4dw9rQXudxu?y+#brAwGCqT`7a*1E;D(%Ct4F0Rn zP}yNI!y{+< BR?`3g diff --git a/flags/io.png b/flags/io.png deleted file mode 100644 index 410e94ef6684d3076a621bdafc5fbfce79274612..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 508 zcmVhKrxYXMnQ7%-|tIj@2?o?&|Qoq?1~6 zt9OmMsIkHH_W4k2rp9!Fu)WuzvC!7t>PBLkB~^0(D1Q9>{n((y#&4F?rHG7*$WHEhHuC>$=f-iR1ESS^WMM#{R0}ibwo;pfMm1(x9L+uUJP;X1Al_d)rdM4fS*%e39?<>K(^s;a90|NqVrCIA2c4Q7U%00001bW%=J z^!hgLV*mgEM@d9MR2b7^ki!8O=plg<$ijg%5Q=g#LwN`ZRuN`NSyo97GzmdQJ_$B< zZebyQGzngADJd=<7AXNSn1l=tz#xwU&_eUI((#hw~S+{RuyLZay(DuW_^}oN$=+XAV!sb;~<3mHs>Cxs%zkl|?z?#yh_rk*e|Nq(m03)A3PEGDk0001lNkli*&fA-&ruY2(&Rli0e6R^Z)<O}i29-$phf#vFR{&)hJYD@<);T3K0RZpq7}5X$ diff --git a/flags/je.png b/flags/je.png deleted file mode 100644 index 13e477ce700538a060172bd05c280e7cded0774a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 372 zcmV-)0gL{LP) za)bQr@BjY(|<`Owzx#)SIi z;pc8{+EgX}{r&d6#pzpb-x4nS_3q#qG~y~mokG_aO1bf{PDV793eZoNac3SeKJ|x<4&Xf$@Viq6 z0Zq%vwq7m4-dM~4F++Abq4vca%h~x+WzL@1+1aI|vwDTx^<8_{UpKn6-RJ}K_$VB^ Smxv7j0000gQ99OmCM zo8jL@28P*IK*>E;l6!$vfTxRNh{WY&4qh?u=4O}60c_zaf(rI63po^-9<4T>a@h62 zpQ5&+85}MALJb`bKNA=ycra+U@C!0@I{dU?xv+JCbXT74uEPd%`W{-Ayk}<6J`^?e T`(*}BpxF$bu6{1-oD!M<#HKaP diff --git a/flags/jo.png b/flags/jo.png deleted file mode 100644 index e4d4e9a6a86aab65d39af0298377d3d031e875a5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 223 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!3-oF?)7E^DW?FR5Z9NJW*>F(IWMC5sHlGP zq8ZOxCv0x+JSVJi)WZFF&$Q2nPu}v4nZ+w(5^rI`!Zk}rdle8|-uM6i|8s(B3{|#3 zWAftX#{;PdPZ!4!jq|N%-Gv$qc$@<-SBLKSAIf=bGVjJ8(R(FN?uj#DwCHRQX6=#q z;K}50|J_WH61Qa^|13#Z@n91BluHE+e`5EDex0b;M1& diff --git a/flags/jp.png b/flags/jp.png deleted file mode 100644 index ae6d0e9932935745ddc3f536ece90291ee5ba5ab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 215 zcmeAS@N?(olHy`uVBq!ia0vp^5bP0l+XkK89h@< diff --git a/flags/ke.png b/flags/ke.png deleted file mode 100644 index 5714b6752dd5ee9aa12f1694c93d3eec59ac6b1a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 269 zcmeAS@N?(olHy`uVBq!ia0vp^5qE9*=ArBDWjl$4ZHmX?>o!e%irI8`{EFf`mC zEzQr*U&g?2&fUG5fx)=d7zm!soVgolJ`kiaC<{fD0~r~fE{-7*m#3b6$mdKI;Vst04GIWIsgCw diff --git a/flags/kg.png b/flags/kg.png deleted file mode 100644 index a07a247575576bcd6d6ffc19e2944425d8ac478b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 278 zcmV+x0qOpUP)^LOp z7cB8*9Pw=$?o%J>Au08Y6Z3x-@^cyNIwkUM8uD-&?M5QMJPkTpjXk z8tXD9{MZEaiWKs38u4)%^oJDpo)GIVC+HF_>@_9uVjSrjE9em|LoZM)0001SNklB1NJoik9;6{7wJgCYvz{KMXPPRi0e=kE@mLUdn;t+ c&;NYq0bPGDM_4I+RsaA107*qoM6N<$f^@NO+5i9m diff --git a/flags/kh.png b/flags/kh.png deleted file mode 100644 index bba9b54a6804d683a85f3f7d8aa807ea773bc248..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 264 zcmV+j0r&oiP)P000mO0{{R3)Ho!W0001BP)t-sypoxr zhl|ZBM60W-y1KgAK3AcOkHoya&d$!?11Qsjj?Ef3uy=#q11QVE!`n+^)@ppHq@}^Y zz}*2Ror8$n1t_+Bhu{Gw$H&LMud=hAqRohu-l(zMUv%IAB?B&@Y@v4y0001ENkl+S(r}Zzdz`_mzt`M$8Qt3C&@UnDxD(st?#>e>?ACkMTO9lO`tR@X^~)6lL5SFg zSvhK=$JOOge61Exk&UUz^7Z*&hO`VwjGbeDyUX4xUYY>Z|6d-OyJWq~-atb8GMxg)AI*>V4&Iw}RjX3#XT$MO zlT!2X+0gUnU*K+-&kg@1^bONC-FMtSIc;6jE#qcT+of9s81{Uz5l8lVj%b!;84WV_ zVhm2i5S%Duq)L30$+_rDbS_EHQ>ESr2fYduWpud;$teWla;Vt}87b7nK@>zC2X1he zB6=L#2JKtc+Ux1(tnCl~0)5Xd#+R+3`Nm^R4$d9SSURj|Nk#-l?R6=`*n5Bq_l5uEuwx`4Mc8Jtpwy@0;+D9 z`r16R2=`@mLwvCcHZLv|h)s{Ph1-nKB}2Fv!RoJJw6Fi-ra3lGlI*ypyxQD;e;92> p$zr}`p=7>cmMt_bE9Ny}{s0u8EUD=`jBNk_002ovPDHLkV1mVte@_4a diff --git a/flags/kn.png b/flags/kn.png deleted file mode 100644 index c2fd8ededa83d42a10a3c4d8a0afe4d47e1c7162..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 294 zcmV+>0oneEP)=#G(-Z0001Cdiu{Teow_sbge0oJcyrSTsm9Z>_*>#C;S zSYUcP&0bgc2bAl>EXTpv=f?qG?@4zqf%6P5q$iM_iTVM&e!D#HFJ^%m!07*qoM6N<$f(p=fJOBUy diff --git a/flags/kp.png b/flags/kp.png deleted file mode 100644 index 2297b5520e11c1c7731e3f12dff555acd2ac111b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 269 zcmV+o0rLKdP)g(<+HSHWI^@)!1Wo-0wdiITz?HwuZEjRw~@$Wc6?j$bxuCee*QToKk{`K|se1re| z{PJLE`_9n#wYl&_P4}Rs?I0`eFgpF?i$#0001JNklg0r+jb|59ZENnM2Eh2^X>od0=AJdHxvTQ;#m4b2vaS8eP1tDIQ8Z_3v*US-Uu< TN9M(P00000NkvXXu0mjf-3WUs diff --git a/flags/kr.png b/flags/kr.png deleted file mode 100644 index 35c39eddcd67b57a454894c8e65b9df5fb65e392..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 334 zcmV-U0kQsxP)Q_0$;8QHV`EKCP5k`){{H>|G?Vx9!S2?I_{g-8!qj4cBOKp8O&`btTS3j3^P6jHDMpc1ZK(6i(%@@)T5+q_Jy6+0RRAP?OE~mA00026Nkl;Emf#~9?K)7>m@4>hpBMMxe0(FH1%f-ocSCz1%f0GJ?V900000NkvXXu0mjfw!50G diff --git a/flags/kz.png b/flags/kz.png deleted file mode 100644 index 1ee794a8b7b56951d273050fc615c330e0c8c30c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 300 zcmV+{0n`48P)vaWBq zb}_T0UAKfxwviIByn4BBIJ2NnwT_OvUxvG7ce!x^ugU(!3;?gn%bA8K0001oNklv3`B7kl?{?KmwN?-f4)0000&!}^E;~;b#}JO|$ve7PBs!kV zVQdt(P2f6Xd2a7!wsV%ds=v!vqdKE&p?4@wqus%!adgwlgxw XuAQB=js4-h2h z|Nidz^H;=-&hFkNvuX^gS$EK)w&u+dtX)97eZ}k79G$vks8#>}|Lq(kWhP`#00012Nkl_UtP4w3{nFDElL2}v#;SCz|V7m((!Q5|G&Fe0RaKEnkC)Pg0JNN_RJN>r4bhw z7s|j|a?t;DbaZ7@3B~95#?;%H-T$24|E8y<0001I%>Vq+7G})Pm|_= za;zXO{!KgbWi3m zsE$eq+%nU!tk9)4PkmawikU|&gKCb9MP_4xMozp6gKDmTNvV-%!sJ?&;uMwgBFEK} z^`jI0*!64lTvH}hE9WJu2$~czXjL(2*Pjzq>%7Z%4``92r;B5V#O34(M|mX=L z0)93m!FUT=c`BhgB9Ja2!)F#tST6sp0JBmX09HZ&TL6t9DgU0002DNklkh&o42I!N9NTEIfM`9;_Wtiu<|%WM`2OWdARmqXsnNFUx^`FE^!d8Vm;w&d zG&Q%<#UvIXS>#VIaDIT3uy7{XI<~%_F&|ez#AJ_{Qgma6LViJST*MS(wqU6SytT2M z6YV*^K=%cr<$#F8phJ)va3j1Iz$e&zU*Td>9TZX3OZAa1fchO)}QVI4?3@wuK*}$?!L(Ct-A8g*5Qqw`|t6;3NUfqQlJ0;09Z*xK~xyih0ezc zz%UF0P<8L7+nN9Wn>FNWoCoqnAPmahBm!3#XAUCJ(p39NT@-;HGq$xd-X8gq#> z4jHe?H1^%ZFx8nsVgCRB|KC=|?gFZF@pN$vk+_^Z;RvI|3Jt|RW&;mJhHeHScF(3x zN0!|!QxvSrI0F;){Bnexde;2eBNL%gv18`X8!m!ENfr#vEPM{GoD8uY%J(~y($)dZ OWAJqKb6Mw<&;$S=V@dh| diff --git a/flags/lt.png b/flags/lt.png deleted file mode 100644 index 102ea748043f8363cd185af869bb851c28d77778..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^(m*W0!VDxuZ6%iiDgFST5Z91aV}}qMhAfwZ>bie- z3Rku8G6JO(JzX3_IIbrbII{8aOewh7AY>Gv(5v0S!y?f$v5`?VhM}xgWAB}Y+$liC N44$rjF6*2UngEEC9PR)B diff --git a/flags/lu.png b/flags/lu.png deleted file mode 100644 index 763ea743a8890429cb9d290e1c670e626acb3833..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^(m*W0!VDxuZ6%iiDgFST5Z6@?zWm&=_y7O@Z#69$ z7T())xF-%MrReG67{YNq*}#pBjb};$>%>NeW+9^hh2Czqmy}Ex2Pz{5ptDnm{r-UW|xJeri diff --git a/flags/ly.png b/flags/ly.png deleted file mode 100644 index 73a957aea56a41d5ca3d1ce64ccdf1f871365e68..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 159 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!VDx^^%Amxlx~1eh^vW-NlQzMx3{;KmsfLh zv$3)9v17+PJUj#h1dNP~tgWp#Z{Dmt&+R#bFi^)mC6*Z=jh-%!ArhC9cXYE!oDisJ zXDi@ZA@XG**PH5@t!f`cd=G5c)Zeg>qtQ5{frpXdnaZ7sOn;t#0BU6LboFyt=akR{ E0KuFv!2kdN diff --git a/flags/ma.png b/flags/ma.png deleted file mode 100644 index 3047a7ab24af41f80381b8481b545ec818d1d0b7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 145 zcmeAS@N?(olHy`uVBq!ia0vp^5&X$VED|T4t(nt$B=TbG1D#T{ rPNx$qR24O~Mcf}1=q|Xx8oaMSpHssTvU1C|4R%EZtKo)>Z`l-B>?S8_H=O!(Kx^LqNPxS z0*^!B1Rf6M1qN&KzVBZu+dDbr*X!_<#Op6C+<)69#W%kY<}A83r^KQoHhXWG%#}mE z4_VoZ8M75VM7HQPCA7{`)J|n){KJ%ByYZQdqWP~$rN4fQ=YL@Mv)RJD&*2^u&^iWB LS3j3^P60oneEP)XaVg?dlXkTTGWF~kE1gQaPG0001iNkltWN2vn{g sL&J!SOt4QL0$;ycsf#Xt%et!j1Xr{-S!A5lHvj+t07*qoM6N<$f`6!TPyhe` diff --git a/flags/mf.png b/flags/mf.png deleted file mode 100644 index 0fabfade72d988026e142790604b095898b9e338..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^5i0fNT%m4rXGbm4u-Iy~Q tC@AFV;uyklJvm~lmdTXH#>O}i29-$phf#vFR{&)hJYD@<);T3K0RZ@*836zQ diff --git a/flags/mg.png b/flags/mg.png deleted file mode 100644 index 5fe2a14795ffe8ebdb83aebe9521c32b69b2aecc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 98 zcmeAS@N?(olHy`uVBq!ia0vp^5i0dC)qyPW^Gt^myHk^3` u6cq7vaSY+Op3K3U%D`x}BGkdbh?Qa48u^DBss}rO@(iA?elF{r5}E)NoEWzN diff --git a/flags/mh.png b/flags/mh.png deleted file mode 100644 index e828622522db2525de5ff0879ce509cb685b6668..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 344 zcmV-e0jK_nP)u8CRil2M>Mbu~5VmthpD4vF*%ptR}U@V7D#TGCC00006wml=*|qWJ!ASyx(fdSSUh4*#bhAgutzc9~!lfX49J1c1`W7>CFz zWHo>eQ6-&h4Dx9O{oo&ALNI@Q=)D{PkKon?UFUp@qx=CJvW)hqYwO14mJ`4tcrWMk zoXhV4nSy>+0<|=gSSGy$gy(mV$IisykrrSCvYY}AAx5H@>?QlQr%7B mw8=lenHf}O)R|@F*8K(tVKiYW`8`Mg0000=l diff --git a/flags/ml.png b/flags/ml.png deleted file mode 100644 index ec87737bfd4001cb58966341a6efe8d7104b23af..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^5i0e5)wLcfdM7COS*f1*r s1%*6a978y+Cr516GMUoY*cd0mpb{znFiLRt3ZN{5r>mdKI;Vst0Co8mJOBUy diff --git a/flags/mm.png b/flags/mm.png deleted file mode 100644 index cb48ba7c0e7e0cfcc5787b17f747d5c7bb9bc756..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 274 zcmV+t0qy>YP)&^ z{r&&ym`uA%{Nv@1)Q;;lMfb3_zQ?2PQedOpqV4$YZO3eRyd?h21@2T~>oP)b$Zq`L z;yJW9{@FzH`Ro4w{%Xf*|NsASgf)1(A~doy>L@w>%K!#D4-fzV0CP!1K~xyijmudM zfFKM-(K-tbsHjxI{cqEeDjE{+PxCkd7Eka8>e>T+?}0FU!c0}eP~8jkQKXbg5R>gh z=gS3>k9ah4>44T{ftwYj-2}SbKeRMqvgH^6<}|_B;!cPzrb)oE#+W8!A4r|^fOlS4 Y0jy*uoMDg|xc~qF07*qoM6N<$g78y+%K!iX diff --git a/flags/mn.png b/flags/mn.png deleted file mode 100644 index 193127372217755786f2c7d8cfaea17ee8f89139..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 266 zcmV+l0rmcgP)v%|$2LZ5-8IAjmf>>6;JWfEULw zEYw;e*k&HfJ}KXO7~+K$>YWeej}!UN0@GO{6a&yuLmH%zO1u9pkr-gY@$iSQCod+~o8x?Qd|&chTLBBN03R!WOca8p zEebaX<`Ce~WjWG+uqP8#*#OWc&Jg5oWDulT^cd(NAh0UmSSI0E)inXQ0lL^ZwCfwm Q`2YX_07*qoM6N<$f?ot_H2?qr diff --git a/flags/mo.png b/flags/mo.png deleted file mode 100644 index 145f0882cbff2dd462bbcebacf54c72027fb6613..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 268 zcmV+n0rUQeP)>keYyfy(`_oiB0001INklXr*0#VT6b SR7kA=0000=13;@sof`Z7$Vv$ee{kBSae~#7c`32{*?RoA+O7f_*4`TQ-2##D60{{R307*qo IM6N<$f_TTI761SM diff --git a/flags/mq.png b/flags/mq.png deleted file mode 100644 index 6885baec103caad2a5dbdbef27a8f2a1495457e4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 338 zcmV-Y0j>UtP)NRmZ4bwXh&Z4m<_BkANTl1l(sf0`6`LPe2CA1wf$E58$X}CqR?7P~QPP kr9|g@mGO8u0Qddhe?9ajb|7ieHvj+t07*qoM6N<$g8C?xZU6uP diff --git a/flags/mr.png b/flags/mr.png deleted file mode 100644 index 089825cb378d7c8718fb9c4f784bae999158c470..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 287 zcmeAS@N?(olHy`uVBq!ia0vp^5Kh%@$=( zHTr*qK_*xC{6-{>!7}u`AnqtJ1Y|M~kT(M-E640(HPZ!4!iOWkTT<2;q z;Bk#DeXuU-wa2Ib^_fSww%t-^ei&DzpsnD~vi+d9l=zl8o=Infd*;;UpJ7%Iczb)B zaBD_mQtFJt@z$j1CM5TOP8sWZSD{R$*G}mY=f~c%pDb;bE!e jdC%ZK6`kM1{~u(`(bN{stU4_NbOnQ_tDnm{r-UW|@C0VL diff --git a/flags/ms.png b/flags/ms.png deleted file mode 100644 index 4604dc67fd057e13375eff62774a74cb63f5ca1f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 331 zcmV-R0kr;!P)Z-TWEoUliQt;QTAvwD{&MUjtIC2nCn;Ge7!GlnTd zklEMe2sv@2vC%zpMni6r^UTuVYkFF7t5t2N0HVFuJy6+0RRAP?3F>&S0001{Nkl=`{`B>(siDEHtW|NqYvD{=GYn*aa+I7vi7R2b7^5ET{X5QPFUB)}lb%*T#Zf}4$>irHUIzs diff --git a/flags/mu.png b/flags/mu.png deleted file mode 100644 index aba837fcd30512e8dd233124c1189da0d8ef2c06..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 106 zcmeAS@N?(olHy`uVBq!ia0vp^5gTe~DWM4f Dhu9k1 diff --git a/flags/mv.png b/flags/mv.png deleted file mode 100644 index 82546eb23b9aab906e5d724f63a770c1b9554302..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 178 zcmeAS@N?(olHy`uVBq!ia0vp^5I8r>#g&)^)u92T@o-^Y!ROd)NbYJ;us=v zIa%NUqr?iGgZ*q5R4ZoOjNIt?p|yKzS)9ULjEr7vyp}B78~GI@IRtm}E1R=$ zIkWL_GBC<9vmFpn?&Ow?W*5w{Q3e`+PEgHwo~gx@)Bk{+I8PVH5Q)pl6Iz+|I62K& z`WcTs5Epp%G*wiiH`&)u`nshC9V)- z%QSe9@L)0%vt3?CgGsXtpMx)_q)daO9Q%TH76#t+n%~rxM&AP3#Ng@b=d#Wzp$PyU CNIi}K diff --git a/flags/mx.png b/flags/mx.png deleted file mode 100644 index 97a92445f4011a274967e3a995f9e4cfb95e87ef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 252 zcmVGc~sxm zz_6i=_weKU`}*nP)wjB-x|VU+*u95mOQp)b?yIu@|Nj7JN6rx@@nX(L00012NklP?Q3#%j>Cxfsc zqY!pUR(4JS4gq#<>~``;9g9~fFiH%p6eE}wrUXi_{E5?%Ac1#wzAu8Sa%bSqFlMg;?8H!DyE1Y`mM zWzVJ(3kYE&8(6m;EbEz>+C)Xn00H>j-T(jp(;_4BySw0KX8{0a+dYd$0001hNklnbO=cyq60xy9B6#}L; zgf+I|A#lKY!s3R(l{VZ34rJH1Txrez&=`100000NkvXXu0mjfVF7iu diff --git a/flags/mz.png b/flags/mz.png deleted file mode 100644 index ce7603cb6184124f9fcad2fb866a5a4ac5148a64..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 268 zcmeAS@N?(olHy`uVBq!ia0vp^5UMFbuMrmzqC^M}7ZndnN|PISS^FljYYeY~#&Nxu|CL z^9pmUcTf?h^i3b3@5- z?Td@n-qK*6^@KNC=3AhnLixF`DO_3+Q|I1)nR8!G;*5rio1^z)1Bv%c`lHF z0}h9aR&K{%^*q`a^zXmEZq}lZimV;#M|TvoRYnV5{9s-8W_F?Do9#Qapfthb*#LxG~b^AGF0509Q-@Ig6aPV*_t g6+mMBhi7$VyCO7}UXJ;g33LL3r>mdKI;Vst0Jsfu;{X5v diff --git a/flags/nc.png b/flags/nc.png deleted file mode 100644 index 6c84f1cfca1ac3cdcb5e8fe7f5b7510b4d1fe334..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 298 zcmV+_0oDGAP)imE(ZB%X)C2hB00##EQA+>@i##xj zDt%fTGeQV~g(=3Z15i+Ayq5>>+yI_EU7lSz`sM)bK{Wt1tpJrn-9BjZ0001mNklO3`WsdMGNv*M(9vd^ZsusMHdbl>s@5?oteOWC-@&6l>*>_isz(HGjL!w zh(066Pq4HOSiuEtE=w1zTi3cvKh`^}T~9F7$#_|B;z9O_2ftpFmPXW0TC}lr0kwib wJxa7(PU7p)HS3=4`2YVu?*{D$L2Lmpti^$P?L1u^LpZJ{ z|KMkqm+(k@$JTTtM`2^*!*_Rgn_pkgGD+Ow%3icg-*vIl%R(&yV4hDWp4!%U!X`uzJmnPmU}{{VS3M~W|V0001gNklL@tl+PM|0N4fy*Z?cf zRe+C0)Ic_AU^Ng@(i$sZRK4^)&|seyr`SeEU)?X>dpKh#h#IU}nwuFJWI~-U9!Ur`1}b3iboFyt=akR{0Hhon;Q#;t diff --git a/flags/ni.png b/flags/ni.png deleted file mode 100644 index 20ef0181d8169ef58e2ebc63615fdb3f6b1cfe17..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 214 zcmV;{04e{8P)OWa-~9XXtIOf|_2aF{ z+o8N+{Q2+u`0V}s_NvV6|Ns90XT~g}_u&8l07FScK~xyiW01rR80al0js#eQc#*jb z5(ps5z|P8z#7CABWa8mq#vvyr%*Z8%Lr#QWf>RV(4%u=(0X7u345Bat03y~XFVd^e QJOBUy07*qoM6N<$g5xA?Gynhq diff --git a/flags/nl.png b/flags/nl.png deleted file mode 100644 index d33b631238886d722918fbc7e6a07a1a621e9270..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 113 zcmeAS@N?(olHy`uVBq!ia0vp^5mdK II;Vst0MyzYxc~qF diff --git a/flags/np.png b/flags/np.png deleted file mode 100644 index 4537d4b827e5a3574b0460ab86301643bbefde93..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 316 zcmeAS@N?(olHy`uVBq!ia0vp@KrFz)3?zTmvT_5dgaDrqS0G)jnp~lh9IuhPOfJY+ zzmCCj5(t@3TrcByRn(5bd@_UCBt^qE7PCnVQr!h=>6L0JcO@Nei`W#ZrdjCK+?8^C z5?OX%FYr}a@Avc9AKAtK{qghT;>{(hsdq$d;u(7qfp!R$1o;Is{QmRl&l71)<6r-* zWT(UmegCs~$$O9!D?MEtLpZMcp1m#9WWeKkahAx@Z3~1JzBK*+fBK;tUB7eB&h)ub z5?sGGv2M<)q_*O9E=!ib&W{#LzF=0^+4(!h`AnmdK II;Vst0K64`iU0rr diff --git a/flags/nr.png b/flags/nr.png deleted file mode 100644 index ec3833d4944d6acca6c3298473d4f420ced11635..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 167 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!VDx^^%Amxlx~1eh-=%dL;wH(SN52g-ne<& zp*aeAN9=YY_h({7<3^%hN4X=h~kk^SU_vet$9 QKm!;&UHx3vIVCg!02?wqY5)KL diff --git a/flags/nu.png b/flags/nu.png deleted file mode 100644 index 1073fc2542244922186b209acf1f1cafbb8bcb70..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 290 zcmV+-0p0$IP)YS#tdy=HG$tOvFDM)_v%+gwPomFs}04QkSYkJv3Rs7Kwf~pYq0001eNkl3!d zZ%Y7kF=$mcO{dkoF(&{xsuHabEz0TuazFy(zK?*+0p@L1x|^n2>7mG+u*QY+qGh4C oB_NK^o9p_#8A$@}ANdpT0fpl@vE~Cp;{X5v07*qoM6N<$g5uOew?;!_p3&9Avna%>>fYF$Xqo6 zx%vXEeKb;4A+%DBowM0~&U`q5SJtwe#rd)Cu?!3`0P+aejY_s5R7y6TO(O(7z!^

`vxX2(lVc?q))OE`v3nwLj%KYG3n0!Tz8-qzMd|QAsXkCCrq69FqvH_$bzA{ zr^iBgy@efX(ws#+Oi2|Y1%{tFHX1$J+%(@gLSVkAQjU?4&K)Bm3x*3Ue;Vd-sT4Bo gV9Jz9FwkINSh&t4>h<5yFrdKzopr0A%=DlK=n! diff --git a/flags/pa.png b/flags/pa.png deleted file mode 100644 index 53d24bd9b18f95c4b46cbf362eb064c3d89f0bad..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 202 zcmeAS@N?(olHy`uVBq!ia0vp^5Vr!8gUh9B7>)^pUXO@geCxD C?obf` diff --git a/flags/pe.png b/flags/pe.png deleted file mode 100644 index 5cc73adda9a08f6343789075a0d7085682c4cce8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 88 zcmeAS@N?(olHy`uVBq!ia0vp^5+bf{SYL0C z#s0r&|Ni{jtCP5mk@@cD|MA_Vh@{?_hyVQf{K0T?k;ec3|IQI6zf_>D00017Nkl)xeMU+iU zjF%5XLWDz>S5lH!7K`P~Lb9?#%$O2#avbdJ+(^!)Ls$U-y;v&|z2&2-00000NkvXX Hu0mjfk7Imq diff --git a/flags/pg.png b/flags/pg.png deleted file mode 100644 index 5aef454eaecdbc3e3ce170bd4aca6ba4b9b349a8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 318 zcmV-E0m1%>P)%v zCMGvGHy#27P6iHsetw>wp4?0z(jX*u3Ksj!76t+W0RRAz3>v==Blo};H5VGt8ztIA zA>v~nQBhGf1PRFyC9Dn~0|Nv6(H0O54$l-N)h{FLkQ>esCIA2c0P3!R0001)Nkl3E_m?0aSg$bHwlUb{#JTQ(vBsCM&?X zGEI6Ovx1jYnGUmUM^PbtA3|#)YQ1ND$&OX5e2tz{;w(4@mf;_n+a{^A0`O9RVkNZA zsi-aBq+n(hBm325=irf+D!B{T^XO>3sX$(*irU&0Mm1dO#Z3{vi|`z&ABqqmHJ&3_ Q_y7O^07*qoM6N<$g1-cD^Z)<= diff --git a/flags/ph.png b/flags/ph.png deleted file mode 100644 index a73871c4716ff7888fbf9c3f2e8dc05572f7ca3e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 303 zcmV+~0nq-5P)h}KQ zcm4F}jT^Z$P-I^(H?z49iz1I+Q)3>ZDr62Y8SEwGd*=xd!_CxURml)I)8`1+*mtljFaf75=E8DKOVT8oDLf z@MHmyGFClY{rv>xx??HjtLYP14&1a*et}Zn1UpviHr$0B6M+B#002ovPDHLkV1kX8 Bnu-7b diff --git a/flags/pk.png b/flags/pk.png deleted file mode 100644 index 3149ca640c59bcdeaedaed8dd3bf409854965b3e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 267 zcmV+m0rdWfP)!A?~_9IgNW diff --git a/flags/pm.png b/flags/pm.png deleted file mode 100644 index 88932fcb50ba76e7919880eadfc4660877ad3499..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 441 zcmV;q0Y?6bP)k>JF`c7001Z(}Hdlqi_NG<8ihb#pC^vH*_51e3`cgPJ#PGd72K3x}=%k;wY= z^Zm^Lx}XeJZ3c?ekXc00000NkvXXu0mjfEl|zs diff --git a/flags/pn.png b/flags/pn.png deleted file mode 100644 index 8fc85f3770ca39c44bb34637651c6d3489c75d46..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 366 zcmV-!0g?WRP)y2V%;RSZ8+pTV;u9``S3gCfWeS)1pw(4OF`eYrom>FkfXN+@d zVYP;wAtiYZIc@7mL!PGtSScU}mGS{7jP%V)YUWIW0fIi~Z1B5GYWtzgmB|vw+{sZ3i1i^1IX2=bz2><{9 M07*qoM6N<$g5J-VC;$Ke diff --git a/flags/png2js.pl b/flags/png2js.pl deleted file mode 100644 index 08ca00f6a..000000000 --- a/flags/png2js.pl +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/perl - -# Purpose: Generate javscript with Base64 encoded images of flags. -# References: -# https://github.com/antirez/dump1090/pull/101 -# http://stackoverflow.com/questions/11301854/perl-convert-image-to-base64 -# - -use strict; -use MIME::Base64; - -my @pngs = glob("*.png"); -foreach (@pngs) { - my $curr_png = $_; - my $no_ext = $curr_png; - $no_ext =~ s/\.png$//; - print " case \"".uc($no_ext)."\": img += '"; - if (open (PNG, "<".$curr_png)) { - binmode PNG; - my $encoded = encode_base64(join("", )); - $encoded =~ s/\n//g; - print $encoded."'; break;\n"; - } else { - print "ERROR: Failed to open ".$curr_png.".\n"; - } -} diff --git a/flags/pr.png b/flags/pr.png deleted file mode 100644 index 2382872720c56836f765bcd0a1e6463c891ca3d1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 271 zcmV+q0r38bP)HWwJCNOB}6H49d0Rn3*ghM&3ysg!rUY7Is{_|#MG(NkHAYtAG z4+c)^8B*f85;f)R{a1_i30Cl?!uf%y_w;6F`^?P$|Nj6`@a+HqgSK!g0001LNklX6ficfyEves%og=3=XI|?cqxFs4a^;I$~|9<=SAiF|^nVo}?@tURg_iMK} z%4}8v!R3AD1l9ik|Ibim3p7~ko4q-Ziu81G4AD5h^sJ>&g8`3o;O6&@8@P)9R~xak zaouL!U#A>sEtl1DNSdKAkHKL#C&N^8hDB+jRSX7Sey8gnF!|4N%++c31zxY?L5wBb l*$d9iFr8o()@W8=$|Ub*=v(l@|18iF22WQ%mvv4FO#lH{QlbC= diff --git a/flags/pt.png b/flags/pt.png deleted file mode 100644 index 83d60d687305c967c45628318098147d116b40ed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 260 zcmV+f0sH=mP)HXG$9y#2qpX^-08^0w*oFY&W<%gZ3f_1KwynvutN?VL03vk&il+dznVY4E z5c~lE>`gr1TL62a0MWw$z{A_qZ!OhY6W(@P(vkpaJOBV@0RI30R9S%{0001ANkl}z33f4FMo}yhY%H9TA}lh(=o0+mQmlfkTpXh45`1Ekf;?$yS0%)%Q0000< KMNUMnLSTY_HeKTY diff --git a/flags/pw.png b/flags/pw.png deleted file mode 100644 index b68dc97279f88d8ae53a2bb2047c8e6830781bd2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 244 zcmVArCrqx>|K0#ft=2cZ!$bf8098puK~xyiW01uO z7$}pHWEJIN62>OQCM5#`EYcWKoPshCz=0vf4waFS5J#61gGtFS;Fc0Wm*T~3pe#33 uiU-s2d=SSANMrLdzbLa1BNf9C6954CDJ>G_)JxX@0000*>_g)aK^qm%@|#`}^v%uSJPq*Vos*(WmF<=a;;qS(|a>FN6V z`ti85s=ea>|Nj6usMRYTX6pJD0000#Nkl&&Ju%U7pM3I0H6CZ~V zvH*%KFFPlt{6TrP_h7arzU~{UNX)A0000P)t-sxN(N9 zT662y-O;46nlw`S_4oh&{-#W4-o3~1;^&SYKf8F0;l$1L>h6&uL&b}n=FZioO=z-Z zeB#Bi0fNT%m4rXGbm4u-Iy~Q tC@AFV;uyklJvm~lmdTXH#>O}i29-$phf#vFR{&)hJYD@<);T3K0RZ@*836zQ diff --git a/flags/ro.png b/flags/ro.png deleted file mode 100644 index adf2516ebbdf9101d62f57c36668a310ae413448..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^5i0e5)wLcfd7_{qurAx5_ s1%*6a978y+Cr516GMUoY*cd0mpb{znFiLRt3ZN{5r>mdKI;Vst0GALJ`Tzg` diff --git a/flags/rs.png b/flags/rs.png deleted file mode 100644 index 2b039ba295491119cd8b7a5f2e00bc075d61c232..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 289 zcmV++0p9+JP)kh&o42I!?Fj2xbXmR2Wz5lyZvY4=}d;6!!lYFpU1pg44Ehq39!9V zO84W`Tr1D%cV%vZwN@1Nopx)}4j%;o<{^O}q7tAOKlt%DwbY!p)@rvj0oMXeCcZ~* n+JSX?ukGPvuGFUFVsx9~b z|Nmuq5(YpiSx*kipZ{ K&t;ucLK6V_SRLj7 diff --git a/flags/rw.png b/flags/rw.png deleted file mode 100644 index 1b4f0a74ed1c71fd5613de31f8a35acb0e1c8346..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 212 zcmeAS@N?(olHy`uVBq!ia0vp^5V zWt)!dQe3gkmV40^rKNir7v7Cn-O0T0w%+nhf{V}2+Ty)_yNTwqZ3$}|*%sX}T((|# z@foItcX$_F`gMs>A;Fem;XR%9KUqMN9X(wfLnJOIPdLITv7w`|D`|RyKw9E)HAS@( z=Z`n~IgyoV-6Fs*uB;zsz2oSNf*o9sSPEqtW(f&dFo>!$M7>p(NIl*74QLpH Mr>mdKI;Vst0J;!QNB{r; diff --git a/flags/sa.png b/flags/sa.png deleted file mode 100644 index 9d9725820f89cef43cb72c6212c92f1adbd38d04..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 270 zcmV+p0rCEcP)8Bs)o6r1#dZUt&V7@hXHLipU1Pc)WrjCHvnukrdz+j0001KNklYfz@!p_#%x?9}4U^j{ USeX4(kN^Mx07*qoM6N<$f*JmB!TP)=RAg3kB( z{Q^_Ec%#}LX2QJC?G9SK0aCi=@Ans7tDBr7HD)l3m|g%;x*=OL2qlBm00002bW%=J z{rwb;+-U#+0E=Zt;QK=Wm=m!~ z;{SPmE&w!bH(5Wn&MN$R1K<5DJM=v&oHOu9BRjTh(zpaN#&<-daSZ~`%awJmL8O4l z5jB<|^h1<$H!N1+a)UGF7wcqD;r)^N@_Fpv^gd0bB7kXgJ+n QYXATM07*qoM6N<$f*k{kR{#J2 diff --git a/flags/sc.png b/flags/sc.png deleted file mode 100644 index a4634e14e3fe535b72ec0367a405c61cf3f4f7e7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 307 zcmV-30nGl1P)K@k!vIBoWc}~mj z@Pg;EfIIN{L@yTIEeeBGxqP5GBB43emP&|(;&}Um!oCU2HIddvFKhq+002ovPDHLk FV1kUciHiUL diff --git a/flags/sd.png b/flags/sd.png deleted file mode 100644 index 20a7572e88c27ed2c93f09f504ff31cf789e828e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 242 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!3-oF?)7E^sgMAl5Lbpgb(KWzX){_lOZ6DE z`I}AkIr23b;*{7+^|Gc`Dko_(#4Blc`F{QR{gki?0}B&_yVN>Gqsz~4B`mM<_tj$% zVgImx_o`K^7>YFi|NnnUzyxUUW&ahAfmEcYi(`n!`K4!13OP9Nv^>1=J=MUZ^8fdc zwxUT-9@y7k_4Te_A*htj@MI<!`=h(AJ`@sQ`sNS3z zOPv3mVPMEwo^rR{6sSPO)5S4_<9f0OGt<=vCL9S1_|CI(L@>uHG$@KlF8CM_dg*{J Yg9wvnyyTaB6`*40`jHDDRp8ziw%elp6 l*m6D-9s%JlR1xx?FspTNO? zmpxOMQdC=}tv@k+r|9Y(fO9G(MRPb)nUS1nRc)x+OI_JRRRAP?Amd350001-ai4>g)~qFt;-Zi z0&T1lu7Gm_W6r%FG2+6xFA!pU2wfL)EKK z|8Hefq}%;|0ZsGvba4#PIDhtxCtrht0PDr|9cPU1{a>ZlqFS>1%UbQ$a|ezqRL@^| zK<)XYrF?GLn=Pk2mdK II;Vst0MyzYxc~qF diff --git a/flags/sk.png b/flags/sk.png deleted file mode 100644 index 53136a1374e4b3fabd367e5d9dd2e7137402c9e4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 280 zcmV+z0q6dSP)Tr7ao}yqwd&GyF@>gE(Gd%W&i(HApRy}wNPNM(+|LzBR5^b36Q!Fb&Af>(CwUwXa=evpU eK#FkU|L_J1g(&`dAD2Y{0000Qq9_6=CF|+p7{YNqxxkT$=Scy}M22P|A%$tpOg$4BEM*wVeku!2)>g0uDrE3< L^>bP0l+XkK*-aqm diff --git a/flags/sm.png b/flags/sm.png deleted file mode 100644 index 2aa120883026e0346c0757d10079c3e631dbbbfd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 273 zcmV+s0q*{ZP)Awn_8>+|9=^Dfh-|to@NdMYcBAmGN+TD-YN|m`P7*Z4N4Zc diff --git a/flags/so.png b/flags/so.png deleted file mode 100644 index 4984c998dda0c519ff9d86c4be7f6559f60e99cd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 218 zcmV<0044v4P)+<|+qvc+k;$WTQzSr~N?D}e=GAt#q2xx4 z-uwOjyw&qhk>Ep#-Bgv}|Ns9%iQS@j|FQr807pqgK~xyiW01rF7-%EG&V)mPj}e;$ zFPETzfFLUyhJ+}Ou!Mv#gD4iG_$4Gbu-d`N&BBaLLR>^hNJJcqgczKlWssl%02$LH U4Jj@oYybcN07*qoM6N<$f(;Z{gOx*`f4ov;4_G^$+K+UVnOX3zx2WoxNFkO#)D(t*47)2*>s0igp%> zg5q-ujBR&48XoF##PqTT3!F=hW_cd=yk~2{xl;CNQ7xNX3{`Bqw=A~DEQ__UdOENUHiZDI+lVU*=1_$d~$k zn&IL~hN5@_4mO6LCmGU%8Q54EisJNFbus)p#jw1cp>UVfB>|KF=NN?6YF~M|)d6To zvZsq@c(aAfYvd1y85}Sb4q9e0E&uJnE(I) diff --git a/flags/sv.png b/flags/sv.png deleted file mode 100644 index 3541252ab7621e4d79dccc14f6448dea590ef469..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 235 zcmVzC{`=w2q{Pmr|N7~%!ru7t-h!WStiIi^!sP$|{|`s6(Fsvj0000+Nklh$+=nq$BK004YRL_t&-({0Yd5`!QN1kea>i|7C%V+S$-8f#IO<(ity=Yd!}kCG|DO|71M1fO!>J3T zTs>VJLnJOI3mjpTc%gW(pV@%Jfnhp>6tmL7gGWxYJ>2|pQ-Ojfhry;z&Ju5U&YZAf t*->es$m1uMw}M5U?|?!J^95%nhTE$pGX6{vO8^?k;OXk;vd$@?2>>cSNu2-y diff --git a/flags/sz.png b/flags/sz.png deleted file mode 100644 index cd14fd55179c2d9a6da81169ab98603e709634fc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 298 zcmV+_0oDGAP)j`vwpvtS{QLW~F$qOUg0?y`y=p@L*#NN&3_f1Demw&70001mNkl%`C zyT-XW+yNq$?IBldZA6}p2`tDt6?)rr*RKy3W5gu`w!2dn*4ISAhz9eBBL;wH)07*qoM6N<$g8T1rr2qf` diff --git a/flags/tc.png b/flags/tc.png deleted file mode 100644 index d5fcb8cc6a460235f1af5790e0520bd89dc7d1e3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 312 zcmV-80muG{P)YS$S!8o0v9(;w8Z-TY=-QhS< zi;}Kccr1_FUNs7(`>^biM+nOSLgp{H4 z1zA@DAybt{j=_L%mJ z9RP>;%|Z}xN@i0d&PgMX(P7}Qew^_JWO s3JQ6;IEHXsPmb8CWiq9)u`y1BK_ycDVU*zP6+l@APgg&ebxsLQ0I7BtcK`qY diff --git a/flags/tf.png b/flags/tf.png deleted file mode 100644 index fe7c5e8c843671da5085c2508d690d4b308ec4f6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 276 zcmV+v0qg#WP)Zb#HIZ?0j>U0Ej7V$FbuT@+)YqnfJ>uEcpkZ z_+71(lGG2}36&GQ7pDD!v#W`$8O;{}I`=ZVYzl%+iP|m)jDf5TFF@BiHK71dG@uCJ a>bfUao+-ug{!UE*0000S$3QN diff --git a/flags/tg.png b/flags/tg.png deleted file mode 100644 index f748b9f35c68251dc91246d09e207e28434af18d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 259 zcmV+e0sQ`nP)W-fM z^!4+-#@H`T>y@R@Oep{U{;WPTkY6$Q+u_s}IOTDM*fUc8{r%M;L+Os7)+0phnW*~Z z=;wZt+d^N|96ta5|Kd|3*f39sFFvP4GG>x5%(@WL5H$bJ003%EFyE^J00019NklInN diff --git a/flags/th.png b/flags/th.png deleted file mode 100644 index 5f077a43b24b48be6d98c55e9c7011aab694e1a0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 121 zcmeAS@N?(olHy`uVBq!ia0vp^5#*v$!~Xc-{`uwq|NZ{; z*8T6j|Ni-Bq-Fp4=Kk}`|Ni`Dqh{b{W&maY%m4uY|NqfHdk6pk09;8#K~yNuz0Nlh zz#tF=!IQ@d?wv=t65b_FSbRbEqNXiF6`auhX(OIBC`C4C7h zc+IaEL05;LkuD=bk1j)IfqXr|s2%Oa2;906n2R#0mn#0z001O?Ls+8{0001~Nkl*0KtZP_GE{K#N~Q>O3O?XF;jQ6Ieb36jgWR!#>`qjjAM3t g)06xivM+U$>@j*bn&P8-`2YX_07*qoM6N<$f`&GR3;+NC diff --git a/flags/tl.png b/flags/tl.png deleted file mode 100644 index 6e52a84e1f7e0d864168e777a2465c695409ee60..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 266 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!3-oF?)7E^se}NZ5Z7bJj;W}qNJ~ra-o4w> z(vpph&BMb(Mn-1u-n|YE4rXR%Q>IMe;NXyzl|6Xypp%o6juQKsX1P0F3bEFFmzT;X zc=P@J`}ga9)%i6N+DdF(9E{)QsXX;n{C`{xXu};9c}>xxG9W9})5S4F<9zEycd-To z4wefyc5h7bKKA?mr4_eXBL078lQ8u+x8^#WQPEJmpNG4llzTG&gNU3Ci-0ZpJ-hWS2%Zod*u+_^Bw&F-16oW|sQ_InUW(fWakb@6$Ptvu+2Mh^ zQhORe5}XfL-FW4XUm0_aQZ3$~*U$m{e64Qc4@2%ISvdxfS^xk507*qoM6N<$f}H_* ARR910 diff --git a/flags/tn.png b/flags/tn.png deleted file mode 100644 index 52c18be49a43235b85aab8ac94481978d4b1f664..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 247 zcmVf9fYU>M1$(n4tXQ<@c$t>@Yv;C^-D*==#OV{_yeeW^(tevisKA=^88k_xS(+ z|Nisz=@}~e&eHd*vG8AO{OIZTuC()jiSl@Y>KrZV9WMUz^XC8)MY+^40000|Nkl2?$0RZ@`D|^?VzNi2I002ovPDHLkV1m4va|{3g diff --git a/flags/to.png b/flags/to.png deleted file mode 100644 index 8daac5aa86f8d9dcee9078405c8830b9d0feefb0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 116 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et#0(_4@}`~wQak}ZA+9f%F1;QV_5c6>gA5Ec z$yOVI;>w;bjv*Y^lOwifUH$Xl;lPGf;&V4X`mbxkwoGcrxBmeSip&gY-%6z)?tH%$ PsGPym)z4*}Q$iB}xHc$* diff --git a/flags/tr.png b/flags/tr.png deleted file mode 100644 index f5050f10dbb6e6feb29e8aa48fcf2af08cb6f628..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 247 zcmVUALuti>sVm!Y;@!lAoG}>=P5M*{r&se z-1f7#>rh$kXK(L!e&Y=qg)KszW@LK?rU@74jbbO7~={TN|wH*0000|Nklqu xl4iqhlsv06Kc74YBNl&%3b9Lx(l$u2002WHEA0Kw`}hC=002ovPDHLkV1k4FY*GLK diff --git a/flags/tt.png b/flags/tt.png deleted file mode 100644 index 1bcb5afd859e7531b08cdc53f01c6def2df7c806..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 314 zcmV-A0mc4_P)%+c|^!_glz+f!rd-r&K(!QtB5*hN*(7Ax$c zs@2rg(kD9MZhMlFk|H7^0RaJ6SXlDe+@nQM3=9lCJv{&b0L~F6D-W%70001$NklNgyt}J_2dV zKOy5DXgwB{Qr4|`6ckA6b5^eLS8vQ=!Gby zxCLUp|2hHzX@e!i>G(8D4tZO0Jm9y4|@uWKzNZ(j`7^29`4wD|Pu*{BLueoW9rj z)4lY9nzjS(9e?<{q9@#GdLpK>UEwFk#QJK+-^+v}v_dw20a@nh>gTe~DWM4fXa7h& diff --git a/flags/ua.png b/flags/ua.png deleted file mode 100644 index afe50df1e7fe4c867d3065eb67c1434cc5ef0d8d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 92 zcmeAS@N?(olHy`uVBq!ia0vp^5@isqyN=nM#KYyNFzueOnw{6?Dr)_P&?%qvKPQJ~@w`%pOO{#pnyu2@xlc!{) zg-3>8JbdV6QTVIdxBvhD9~;ac;>oxcWEI0r28KU(Se~aJ*93CHJY5_^BrYdUILatd z;N|g{f#;J2LmsE3g@A~-xXTBLCkYL`(@}^eAFc0001FNkl=lC1^vB(J>qmLUYvRNExdU0PbK<7lkxj|K_8T*}xN zw+7i-H@h}`8^JdVhAKa_)UYPje+`jr>eE%HhLgZU;2=O>aud995w!6FJJ~504JBJ) P00000NkvXXu0mjfm6CzX diff --git a/flags/uz.png b/flags/uz.png deleted file mode 100644 index 7b2cec51b502340442c5e0d74e0679fa8023547f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 253 zcmVya$`MMYPB=uEYqOxCxxNO}5G(rM^eD%Oj<|KC;JS!O{hqwh*AYPPoe5Jb@>BQVKwTo}0jEuqKOc8I4bN1p(cY5|DHjqyg$G|-}f_edY6z^I0m zdz&d34cEnp=rRQuTg*dni zz`x|3n9ato@$c*9#l_*>)cN@I;?$_RsBqB2nepu1$;idQw3W=VfXKqZ>EqDQyolP_ z*Xrox)v~d?s&d}bwfy}1?BLzv*T?em@7T|`wvJQ3siFV>|Nr0sCRJUa0000{Nkl5T wK#)&_kzWW&fLl_8RYD5I9ZV7=I~}_K02_21Ua2X`HUIzs07*qoM6N<$g1DM;jsO4v diff --git a/flags/vc.png b/flags/vc.png deleted file mode 100644 index 7a6ca359629cf34a6cd5a1abf90c449beebc0fa4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 172 zcmeAS@N?(olHy`uVBq!ia0vp^5&X#Yv#v@S+}K-f z&U{m5t~1BEkDPN%3(j?(y=KdC?pg-R^B*prEt`zz1yArfeXs3^<;CVBmT}GpEE#r2 Wb*xs*eIW=mi^0>?&t;ucLK6VlWI@0H diff --git a/flags/ve.png b/flags/ve.png deleted file mode 100644 index 26308e5971b6d3ab9484a004b434d4fdd8d7de03..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 220 zcmeAS@N?(olHy`uVBq!ia0vp^5io6~DH8vD;&uOS`L#o-4iG4vk3q!?ig`Wn$ SqJx3vGI+ZBxvXYS#}6f35sgT|y7^x)zrMUgUa9w|hSvwD}LvC%KlA=hG;=cb|Zqm%oY+Ic_%$aXopk)&cfDgd~wB547Pf#jFlR(~G zfOBg}7z=?BHhb?bAjS~)RMoM>c(g^)_I*2^AZ8H1VA5Pktx+D~{mjU`k6@%+ojbu` zKP)FM9brA0Y~meZ^|a;C$zn4|IW?cnL`y?v2^q>|F9 zHX|@-%A+&u;>EUicXfDS+Ok01!gGDI&)Kz4;L)J?_w=;Q&;S4bHd-~0Mjs)C7F2!_yS#Z05NCyOuT7tYQ7R5@a@w-g?AtF Ttc!5o00000NkvXXu0mjfcfYPs diff --git a/flags/vn.png b/flags/vn.png deleted file mode 100644 index bf4abbab4e7f034dd4f30ed1660084571a9088e7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 219 zcmeAS@N?(olHy`uVBq!ia0vp^5r SS&#{6ID@CFpUXO@geCy_icawW diff --git a/flags/vu.png b/flags/vu.png deleted file mode 100644 index 76f3a6b1052d30a83849e1b04faea9a142a10f35..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 297 zcmV+^0oMMBP)Wl{$K007buGys)D`*8qF0001lNklJ-pKc z1yUuKuzS4E0@c|}l~j(ntnfJpgx1u=o1Zz(c|XTo{}Juch#QoplW#kc6~ v)vmFH{)4?qx8wJLu$d{9p|FX@xcxwQW4 zgc+X_bH6lo|2})+V^rGL_6cvbtQHo`{rl?8_t}eoZr=IcE%<|P)TJA5KKRFcY3%<0 z|38EB)VG?JF}LNv0S$Ebba4!kxST8?Dk>@>C@3Z@Eac3{^JV&jM^BzUZSW{4E;in< z!QkU(*n03!Vff(!PC{x JWt~$(6972cS2O?s diff --git a/flags/ws.png b/flags/ws.png deleted file mode 100644 index 2ab4cdfc25acc74e18c806218fb5c883eed8e69f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 177 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!VDx^^%AmxltF+`h-*OJ@+}8%a+$R7nzhwV z-lys{$vbnYS;VZ2#?4&DEgVM89dix~TX!<)HZW+{pA%H8^pLm&)NAAE;us=vIl1Ed zySuZC9Uj?>7%<$_{}sSGZ(sGxPNfYW?(DV+(S6Tz;Y`KSZnc7H{aFV-TctGq&q!!s ZVd%>H7JYER%TAy<44$rjF6*2UngH0aKluOv diff --git a/flags/ye.png b/flags/ye.png deleted file mode 100644 index daaa9dbbd897c734ad162c9bf66402b5e5cdbef3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 113 zcmeAS@N?(olHy`uVBq!ia0vp^5i0fNT%m4rXGbm4u-Iy~Q tC@AFV;uyklJvm~lmdTXH#>O}i29-$phf#vFR{&)hJYD@<);T3K0RZ@*836zQ diff --git a/flags/yu.png b/flags/yu.png deleted file mode 100644 index 6037e8b091ad83588eb5224a5cd118226402351c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 176 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!3HGD8EPYe6kC$Fy9>jA5L~c#`DCC7XMsm# zF;K^K5N34Jm|X!BWH0gbb!C6REW;?LkSP@Q6)0ru>EamTaXdN2;N9Qz1`Q3Ji46x= zFtgoZ>{(rQU*>|#i68&}|GyYxuu1m7r_!&l8qczRmymE1eh5?}!oVP3z-vFPXoD@# OAO=rYKbLh*2~7ZFq&Qsw diff --git a/flags/za.png b/flags/za.png deleted file mode 100644 index 2398c8362f549b925ee9ae11cd85948cb8a83590..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 286 zcmV+(0pb3MP)mB8ph#ob0001aNkl;M1&07*qoM6N<$g6|T0!2kdN diff --git a/flags/zm.png b/flags/zm.png deleted file mode 100644 index d11147c792b70dccd66c16855728269f5ef881a5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 238 zcmeAS@N?(olHy`uVBq!ia0vp^5KBlCiM)fa~b?= z8I;->JSrF@I~jVj87`MINOdqo7BQ$cF!JbuRdi02A(V`bZlQwO- iR8$mXWOO)=i9vC{w$-WmY}!CW89ZJ6T-G@yGywoTkx4iJ diff --git a/flags/zw.png b/flags/zw.png deleted file mode 100644 index 60f257d64c070ba42d1edf95df4253d267921186..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 295 zcmV+?0oeYDP)A4RNgif?28-kqh{dU()IQA`{&;G)Uu@<5!BSwqN1K*U@j|5 z9eZwJ@S&FIwHEQnZuY(#|Ns90006)o4&ERT@{0!l(g4W80x^;ZE_$i30001jNkl1t6|t2R!yCjZ9AvR+QFc>)QCGbuZ~M*9E&002ovPDHLkV1hB-g5m%G From c5c984883504a5cb0413eb09c41c808c5fc268ca Mon Sep 17 00:00:00 2001 From: Don Willingham Date: Tue, 26 Apr 2016 21:02:12 -0400 Subject: [PATCH 7/8] Move getFlagIcon() to generated flags.js. Update to serve flags.js file via http. Include flags/ subdirectory (again). --- dump1090.c | 58 ++++++---- flags.js | 257 +++++++++++++++++++++++++++++++++++++++++++ flags/FLAGS-CHANGES | 7 ++ flags/FLAGS-LICENSE | 32 ++++++ flags/ad.png | Bin 0 -> 255 bytes flags/ae.png | Bin 0 -> 137 bytes flags/af.png | Bin 0 -> 257 bytes flags/ag.png | Bin 0 -> 318 bytes flags/ai.png | Bin 0 -> 332 bytes flags/al.png | Bin 0 -> 274 bytes flags/am.png | Bin 0 -> 114 bytes flags/ao.png | Bin 0 -> 260 bytes flags/aq.png | Bin 0 -> 291 bytes flags/ar.png | Bin 0 -> 195 bytes flags/as.png | Bin 0 -> 312 bytes flags/at.png | Bin 0 -> 102 bytes flags/au.png | Bin 0 -> 350 bytes flags/aw.png | Bin 0 -> 184 bytes flags/ax.png | Bin 0 -> 157 bytes flags/az.png | Bin 0 -> 213 bytes flags/ba.png | Bin 0 -> 193 bytes flags/bb.png | Bin 0 -> 229 bytes flags/bd.png | Bin 0 -> 260 bytes flags/be.png | Bin 0 -> 95 bytes flags/bf.png | Bin 0 -> 165 bytes flags/bg.png | Bin 0 -> 117 bytes flags/bh.png | Bin 0 -> 216 bytes flags/bi.png | Bin 0 -> 353 bytes flags/bj.png | Bin 0 -> 108 bytes flags/bl.png | Bin 0 -> 96 bytes flags/bm.png | Bin 0 -> 337 bytes flags/bn.png | Bin 0 -> 371 bytes flags/bo.png | Bin 0 -> 117 bytes flags/bq.png | Bin 0 -> 113 bytes flags/br.png | Bin 0 -> 305 bytes flags/bs.png | Bin 0 -> 222 bytes flags/bt.png | Bin 0 -> 317 bytes flags/bw.png | Bin 0 -> 102 bytes flags/by.png | Bin 0 -> 255 bytes flags/bz.png | Bin 0 -> 328 bytes flags/ca.png | Bin 0 -> 286 bytes flags/cc.png | Bin 0 -> 338 bytes flags/cd.png | Bin 0 -> 334 bytes flags/cf.png | Bin 0 -> 162 bytes flags/cg.png | Bin 0 -> 152 bytes flags/ch.png | Bin 0 -> 142 bytes flags/ci.png | Bin 0 -> 96 bytes flags/ck.png | Bin 0 -> 367 bytes flags/cl.png | Bin 0 -> 142 bytes flags/cm.png | Bin 0 -> 150 bytes flags/cn.png | Bin 0 -> 223 bytes flags/co.png | Bin 0 -> 98 bytes flags/cr.png | Bin 0 -> 125 bytes flags/cu.png | Bin 0 -> 268 bytes flags/cv.png | Bin 0 -> 261 bytes flags/cw.png | Bin 0 -> 189 bytes flags/cx.png | Bin 0 -> 354 bytes flags/cy.png | Bin 0 -> 282 bytes flags/cz.png | Bin 0 -> 176 bytes flags/de.png | Bin 0 -> 117 bytes flags/dj.png | Bin 0 -> 271 bytes flags/dk.png | Bin 0 -> 130 bytes flags/dm.png | Bin 0 -> 270 bytes flags/do.png | Bin 0 -> 205 bytes flags/dz.png | Bin 0 -> 239 bytes flags/ec.png | Bin 0 -> 257 bytes flags/ee.png | Bin 0 -> 117 bytes flags/eg.png | Bin 0 -> 203 bytes flags/eh.png | Bin 0 -> 283 bytes flags/er.png | Bin 0 -> 312 bytes flags/es.png | Bin 0 -> 237 bytes flags/et.png | Bin 0 -> 310 bytes flags/eu.png | Bin 0 -> 289 bytes flags/fi.png | Bin 0 -> 130 bytes flags/fj.png | Bin 0 -> 343 bytes flags/fk.png | Bin 0 -> 342 bytes flags/fm.png | Bin 0 -> 219 bytes flags/fo.png | Bin 0 -> 111 bytes flags/fr.png | Bin 0 -> 96 bytes flags/ga.png | Bin 0 -> 117 bytes flags/gb.png | Bin 0 -> 286 bytes flags/gd.png | Bin 0 -> 341 bytes flags/ge.png | Bin 0 -> 242 bytes flags/gf.png | Bin 0 -> 238 bytes flags/gg.png | Bin 0 -> 151 bytes flags/gh.png | Bin 0 -> 175 bytes flags/gi.png | Bin 0 -> 298 bytes flags/gl.png | Bin 0 -> 271 bytes flags/gm.png | Bin 0 -> 126 bytes flags/gn.png | Bin 0 -> 96 bytes flags/gp.png | Bin 0 -> 351 bytes flags/gq.png | Bin 0 -> 273 bytes flags/gr.png | Bin 0 -> 221 bytes flags/gs.png | Bin 0 -> 362 bytes flags/gt.png | Bin 0 -> 236 bytes flags/gu.png | Bin 0 -> 260 bytes flags/gw.png | Bin 0 -> 203 bytes flags/gy.png | Bin 0 -> 323 bytes flags/hk.png | Bin 0 -> 262 bytes flags/hn.png | Bin 0 -> 200 bytes flags/hr.png | Bin 0 -> 286 bytes flags/ht.png | Bin 0 -> 202 bytes flags/hu.png | Bin 0 -> 114 bytes flags/id.png | Bin 0 -> 92 bytes flags/ie.png | Bin 0 -> 120 bytes flags/il.png | Bin 0 -> 156 bytes flags/im.png | Bin 0 -> 268 bytes flags/in.png | Bin 0 -> 202 bytes flags/io.png | Bin 0 -> 508 bytes flags/iq.png | Bin 0 -> 249 bytes flags/ir.png | Bin 0 -> 297 bytes flags/is.png | Bin 0 -> 145 bytes flags/it.png | Bin 0 -> 96 bytes flags/je.png | Bin 0 -> 372 bytes flags/jm.png | Bin 0 -> 173 bytes flags/jo.png | Bin 0 -> 223 bytes flags/jp.png | Bin 0 -> 215 bytes flags/ke.png | Bin 0 -> 269 bytes flags/kg.png | Bin 0 -> 278 bytes flags/kh.png | Bin 0 -> 264 bytes flags/ki.png | Bin 0 -> 402 bytes flags/km.png | Bin 0 -> 291 bytes flags/kn.png | Bin 0 -> 294 bytes flags/kp.png | Bin 0 -> 269 bytes flags/kr.png | Bin 0 -> 334 bytes flags/kw.png | Bin 0 -> 205 bytes flags/ky.png | Bin 0 -> 341 bytes flags/kz.png | Bin 0 -> 300 bytes flags/la.png | Bin 0 -> 173 bytes flags/lb.png | Bin 0 -> 252 bytes flags/lc.png | Bin 0 -> 282 bytes flags/li.png | Bin 0 -> 227 bytes flags/lk.png | Bin 0 -> 348 bytes flags/lr.png | Bin 0 -> 247 bytes flags/ls.png | Bin 0 -> 218 bytes flags/lt.png | Bin 0 -> 117 bytes flags/lu.png | Bin 0 -> 117 bytes flags/lv.png | Bin 0 -> 102 bytes flags/ly.png | Bin 0 -> 159 bytes flags/ma.png | Bin 0 -> 145 bytes flags/mc.png | Bin 0 -> 92 bytes flags/md.png | Bin 0 -> 264 bytes flags/me.png | Bin 0 -> 294 bytes flags/mf.png | Bin 0 -> 96 bytes flags/mg.png | Bin 0 -> 98 bytes flags/mh.png | Bin 0 -> 344 bytes flags/mk.png | Bin 0 -> 340 bytes flags/ml.png | Bin 0 -> 96 bytes flags/mm.png | Bin 0 -> 274 bytes flags/mn.png | Bin 0 -> 266 bytes flags/mo.png | Bin 0 -> 268 bytes flags/mp.png | Bin 0 -> 362 bytes flags/mq.png | Bin 0 -> 338 bytes flags/mr.png | Bin 0 -> 287 bytes flags/ms.png | Bin 0 -> 331 bytes flags/mt.png | Bin 0 -> 194 bytes flags/mu.png | Bin 0 -> 106 bytes flags/mv.png | Bin 0 -> 178 bytes flags/mw.png | Bin 0 -> 259 bytes flags/mx.png | Bin 0 -> 252 bytes flags/my.png | Bin 0 -> 293 bytes flags/mz.png | Bin 0 -> 268 bytes flags/na.png | Bin 0 -> 284 bytes flags/nc.png | Bin 0 -> 298 bytes flags/ne.png | Bin 0 -> 179 bytes flags/nf.png | Bin 0 -> 292 bytes flags/ng.png | Bin 0 -> 99 bytes flags/ni.png | Bin 0 -> 214 bytes flags/nl.png | Bin 0 -> 113 bytes flags/no.png | Bin 0 -> 111 bytes flags/np.png | Bin 0 -> 316 bytes flags/nr.png | Bin 0 -> 167 bytes flags/nu.png | Bin 0 -> 290 bytes flags/nz.png | Bin 0 -> 323 bytes flags/om.png | Bin 0 -> 233 bytes flags/pa.png | Bin 0 -> 202 bytes flags/pe.png | Bin 0 -> 88 bytes flags/pf.png | Bin 0 -> 257 bytes flags/pg.png | Bin 0 -> 318 bytes flags/ph.png | Bin 0 -> 303 bytes flags/pk.png | Bin 0 -> 267 bytes flags/pl.png | Bin 0 -> 93 bytes flags/pm.png | Bin 0 -> 441 bytes flags/pn.png | Bin 0 -> 366 bytes flags/png2js.pl | 39 +++++++ flags/pr.png | Bin 0 -> 271 bytes flags/ps.png | Bin 0 -> 242 bytes flags/pt.png | Bin 0 -> 260 bytes flags/pw.png | Bin 0 -> 244 bytes flags/py.png | Bin 0 -> 204 bytes flags/qa.png | Bin 0 -> 225 bytes flags/re.png | Bin 0 -> 96 bytes flags/ro.png | Bin 0 -> 96 bytes flags/rs.png | Bin 0 -> 289 bytes flags/ru.png | Bin 0 -> 113 bytes flags/rw.png | Bin 0 -> 212 bytes flags/sa.png | Bin 0 -> 270 bytes flags/sb.png | Bin 0 -> 318 bytes flags/sc.png | Bin 0 -> 307 bytes flags/sd.png | Bin 0 -> 242 bytes flags/se.png | Bin 0 -> 126 bytes flags/sg.png | Bin 0 -> 235 bytes flags/sh.png | Bin 0 -> 323 bytes flags/si.png | Bin 0 -> 210 bytes flags/sj.png | Bin 0 -> 111 bytes flags/sk.png | Bin 0 -> 280 bytes flags/sl.png | Bin 0 -> 113 bytes flags/sm.png | Bin 0 -> 273 bytes flags/sn.png | Bin 0 -> 182 bytes flags/so.png | Bin 0 -> 218 bytes flags/sr.png | Bin 0 -> 175 bytes flags/ss.png | Bin 0 -> 283 bytes flags/st.png | Bin 0 -> 225 bytes flags/sv.png | Bin 0 -> 235 bytes flags/sx.png | Bin 0 -> 316 bytes flags/sy.png | Bin 0 -> 195 bytes flags/sz.png | Bin 0 -> 298 bytes flags/tc.png | Bin 0 -> 312 bytes flags/td.png | Bin 0 -> 96 bytes flags/tf.png | Bin 0 -> 276 bytes flags/tg.png | Bin 0 -> 259 bytes flags/th.png | Bin 0 -> 121 bytes flags/tj.png | Bin 0 -> 251 bytes flags/tk.png | Bin 0 -> 334 bytes flags/tl.png | Bin 0 -> 266 bytes flags/tm.png | Bin 0 -> 302 bytes flags/tn.png | Bin 0 -> 247 bytes flags/to.png | Bin 0 -> 116 bytes flags/tr.png | Bin 0 -> 247 bytes flags/tt.png | Bin 0 -> 314 bytes flags/tv.png | Bin 0 -> 354 bytes flags/tw.png | Bin 0 -> 145 bytes flags/tz.png | Bin 0 -> 203 bytes flags/ua.png | Bin 0 -> 92 bytes flags/ug.png | Bin 0 -> 251 bytes flags/um.png | Bin 0 -> 231 bytes flags/us.png | Bin 0 -> 231 bytes flags/uy.png | Bin 0 -> 265 bytes flags/uz.png | Bin 0 -> 253 bytes flags/va.png | Bin 0 -> 246 bytes flags/vc.png | Bin 0 -> 172 bytes flags/ve.png | Bin 0 -> 220 bytes flags/vg.png | Bin 0 -> 348 bytes flags/vi.png | Bin 0 -> 373 bytes flags/vn.png | Bin 0 -> 219 bytes flags/vu.png | Bin 0 -> 297 bytes flags/wf.png | Bin 0 -> 209 bytes flags/ws.png | Bin 0 -> 177 bytes flags/ye.png | Bin 0 -> 113 bytes flags/yt.png | Bin 0 -> 96 bytes flags/yu.png | Bin 0 -> 176 bytes flags/za.png | Bin 0 -> 286 bytes flags/zm.png | Bin 0 -> 238 bytes flags/zw.png | Bin 0 -> 295 bytes gmap.html | 262 +------------------------------------------- 255 files changed, 374 insertions(+), 281 deletions(-) create mode 100644 flags.js create mode 100644 flags/FLAGS-CHANGES create mode 100644 flags/FLAGS-LICENSE create mode 100644 flags/ad.png create mode 100644 flags/ae.png create mode 100644 flags/af.png create mode 100644 flags/ag.png create mode 100644 flags/ai.png create mode 100644 flags/al.png create mode 100644 flags/am.png create mode 100644 flags/ao.png create mode 100644 flags/aq.png create mode 100644 flags/ar.png create mode 100644 flags/as.png create mode 100644 flags/at.png create mode 100644 flags/au.png create mode 100644 flags/aw.png create mode 100644 flags/ax.png create mode 100644 flags/az.png create mode 100644 flags/ba.png create mode 100644 flags/bb.png create mode 100644 flags/bd.png create mode 100644 flags/be.png create mode 100644 flags/bf.png create mode 100644 flags/bg.png create mode 100644 flags/bh.png create mode 100644 flags/bi.png create mode 100644 flags/bj.png create mode 100644 flags/bl.png create mode 100644 flags/bm.png create mode 100644 flags/bn.png create mode 100644 flags/bo.png create mode 100644 flags/bq.png create mode 100644 flags/br.png create mode 100644 flags/bs.png create mode 100644 flags/bt.png create mode 100644 flags/bw.png create mode 100644 flags/by.png create mode 100644 flags/bz.png create mode 100644 flags/ca.png create mode 100644 flags/cc.png create mode 100644 flags/cd.png create mode 100644 flags/cf.png create mode 100644 flags/cg.png create mode 100644 flags/ch.png create mode 100644 flags/ci.png create mode 100644 flags/ck.png create mode 100644 flags/cl.png create mode 100644 flags/cm.png create mode 100644 flags/cn.png create mode 100644 flags/co.png create mode 100644 flags/cr.png create mode 100644 flags/cu.png create mode 100644 flags/cv.png create mode 100644 flags/cw.png create mode 100644 flags/cx.png create mode 100644 flags/cy.png create mode 100644 flags/cz.png create mode 100644 flags/de.png create mode 100644 flags/dj.png create mode 100644 flags/dk.png create mode 100644 flags/dm.png create mode 100644 flags/do.png create mode 100644 flags/dz.png create mode 100644 flags/ec.png create mode 100644 flags/ee.png create mode 100644 flags/eg.png create mode 100644 flags/eh.png create mode 100644 flags/er.png create mode 100644 flags/es.png create mode 100644 flags/et.png create mode 100644 flags/eu.png create mode 100644 flags/fi.png create mode 100644 flags/fj.png create mode 100644 flags/fk.png create mode 100644 flags/fm.png create mode 100644 flags/fo.png create mode 100644 flags/fr.png create mode 100644 flags/ga.png create mode 100644 flags/gb.png create mode 100644 flags/gd.png create mode 100644 flags/ge.png create mode 100644 flags/gf.png create mode 100644 flags/gg.png create mode 100644 flags/gh.png create mode 100644 flags/gi.png create mode 100644 flags/gl.png create mode 100644 flags/gm.png create mode 100644 flags/gn.png create mode 100644 flags/gp.png create mode 100644 flags/gq.png create mode 100644 flags/gr.png create mode 100644 flags/gs.png create mode 100644 flags/gt.png create mode 100644 flags/gu.png create mode 100644 flags/gw.png create mode 100644 flags/gy.png create mode 100644 flags/hk.png create mode 100644 flags/hn.png create mode 100644 flags/hr.png create mode 100644 flags/ht.png create mode 100644 flags/hu.png create mode 100644 flags/id.png create mode 100644 flags/ie.png create mode 100644 flags/il.png create mode 100644 flags/im.png create mode 100644 flags/in.png create mode 100644 flags/io.png create mode 100644 flags/iq.png create mode 100644 flags/ir.png create mode 100644 flags/is.png create mode 100644 flags/it.png create mode 100644 flags/je.png create mode 100644 flags/jm.png create mode 100644 flags/jo.png create mode 100644 flags/jp.png create mode 100644 flags/ke.png create mode 100644 flags/kg.png create mode 100644 flags/kh.png create mode 100644 flags/ki.png create mode 100644 flags/km.png create mode 100644 flags/kn.png create mode 100644 flags/kp.png create mode 100644 flags/kr.png create mode 100644 flags/kw.png create mode 100644 flags/ky.png create mode 100644 flags/kz.png create mode 100644 flags/la.png create mode 100644 flags/lb.png create mode 100644 flags/lc.png create mode 100644 flags/li.png create mode 100644 flags/lk.png create mode 100644 flags/lr.png create mode 100644 flags/ls.png create mode 100644 flags/lt.png create mode 100644 flags/lu.png create mode 100644 flags/lv.png create mode 100644 flags/ly.png create mode 100644 flags/ma.png create mode 100644 flags/mc.png create mode 100644 flags/md.png create mode 100644 flags/me.png create mode 100644 flags/mf.png create mode 100644 flags/mg.png create mode 100644 flags/mh.png create mode 100644 flags/mk.png create mode 100644 flags/ml.png create mode 100644 flags/mm.png create mode 100644 flags/mn.png create mode 100644 flags/mo.png create mode 100644 flags/mp.png create mode 100644 flags/mq.png create mode 100644 flags/mr.png create mode 100644 flags/ms.png create mode 100644 flags/mt.png create mode 100644 flags/mu.png create mode 100644 flags/mv.png create mode 100644 flags/mw.png create mode 100644 flags/mx.png create mode 100644 flags/my.png create mode 100644 flags/mz.png create mode 100644 flags/na.png create mode 100644 flags/nc.png create mode 100644 flags/ne.png create mode 100644 flags/nf.png create mode 100644 flags/ng.png create mode 100644 flags/ni.png create mode 100644 flags/nl.png create mode 100644 flags/no.png create mode 100644 flags/np.png create mode 100644 flags/nr.png create mode 100644 flags/nu.png create mode 100644 flags/nz.png create mode 100644 flags/om.png create mode 100644 flags/pa.png create mode 100644 flags/pe.png create mode 100644 flags/pf.png create mode 100644 flags/pg.png create mode 100644 flags/ph.png create mode 100644 flags/pk.png create mode 100644 flags/pl.png create mode 100644 flags/pm.png create mode 100644 flags/pn.png create mode 100644 flags/png2js.pl create mode 100644 flags/pr.png create mode 100644 flags/ps.png create mode 100644 flags/pt.png create mode 100644 flags/pw.png create mode 100644 flags/py.png create mode 100644 flags/qa.png create mode 100644 flags/re.png create mode 100644 flags/ro.png create mode 100644 flags/rs.png create mode 100644 flags/ru.png create mode 100644 flags/rw.png create mode 100644 flags/sa.png create mode 100644 flags/sb.png create mode 100644 flags/sc.png create mode 100644 flags/sd.png create mode 100644 flags/se.png create mode 100644 flags/sg.png create mode 100644 flags/sh.png create mode 100644 flags/si.png create mode 100644 flags/sj.png create mode 100644 flags/sk.png create mode 100644 flags/sl.png create mode 100644 flags/sm.png create mode 100644 flags/sn.png create mode 100644 flags/so.png create mode 100644 flags/sr.png create mode 100644 flags/ss.png create mode 100644 flags/st.png create mode 100644 flags/sv.png create mode 100644 flags/sx.png create mode 100644 flags/sy.png create mode 100644 flags/sz.png create mode 100644 flags/tc.png create mode 100644 flags/td.png create mode 100644 flags/tf.png create mode 100644 flags/tg.png create mode 100644 flags/th.png create mode 100644 flags/tj.png create mode 100644 flags/tk.png create mode 100644 flags/tl.png create mode 100644 flags/tm.png create mode 100644 flags/tn.png create mode 100644 flags/to.png create mode 100644 flags/tr.png create mode 100644 flags/tt.png create mode 100644 flags/tv.png create mode 100644 flags/tw.png create mode 100644 flags/tz.png create mode 100644 flags/ua.png create mode 100644 flags/ug.png create mode 100644 flags/um.png create mode 100644 flags/us.png create mode 100644 flags/uy.png create mode 100644 flags/uz.png create mode 100644 flags/va.png create mode 100644 flags/vc.png create mode 100644 flags/ve.png create mode 100644 flags/vg.png create mode 100644 flags/vi.png create mode 100644 flags/vn.png create mode 100644 flags/vu.png create mode 100644 flags/wf.png create mode 100644 flags/ws.png create mode 100644 flags/ye.png create mode 100644 flags/yt.png create mode 100644 flags/yu.png create mode 100644 flags/za.png create mode 100644 flags/zm.png create mode 100644 flags/zw.png diff --git a/dump1090.c b/dump1090.c index 643ae895c..66d876915 100644 --- a/dump1090.c +++ b/dump1090.c @@ -2199,8 +2199,36 @@ char *aircraftsToJson(int *len) { return buf; } +/* Return contents of a file */ +char *getFileContents(const char *filename, int *clen) +{ + struct stat sbuf; + int fd = -1; + char *content; + + if (stat(filename,&sbuf) != -1 && + (fd = open(filename,O_RDONLY)) != -1) + { + content = malloc(sbuf.st_size); + if (read(fd,content,sbuf.st_size) == -1) { + snprintf(content,sbuf.st_size,"Error reading from file: %s", + strerror(errno)); + } + *clen = sbuf.st_size; + } else { + char buf[128]; + + *clen = snprintf(buf,sizeof(buf),"Error opening file: %s", + strerror(errno)); + content = strdup(buf); + } + if (fd != -1) close(fd); + return (content); +} + #define MODES_CONTENT_TYPE_HTML "text/html;charset=utf-8" #define MODES_CONTENT_TYPE_JSON "application/json;charset=utf-8" +#define MODES_CONTENT_TYPE_JS "application/javascript;charset=utf-8" /* Get an HTTP request header and write the response to the client. * Again here we assume that the socket buffer is enough without doing @@ -2241,33 +2269,19 @@ int handleHTTPRequest(struct client *c) { printf("HTTP requested URL: %s\n\n", url); } - /* Select the content to send, we have just two so far: + /* Select the content to send, we have three so far: * "/" -> Our google map application. - * "/data.json" -> Our ajax request to update planes. */ + * "/data.json" -> Our ajax request to update planes. + * "/flags.js" -> Javascript containing base64 encoded flags for each ICAO two character code. */ if (strstr(url, "/data.json")) { content = aircraftsToJson(&clen); ctype = MODES_CONTENT_TYPE_JSON; + } else if(strstr(url, "/flags.js")) { + /* Add 1 to strip off leading /, images are in flags subdirectory. */ + content = getFileContents("flags.js", &clen); + ctype = MODES_CONTENT_TYPE_JS; } else { - struct stat sbuf; - int fd = -1; - - if (stat("gmap.html",&sbuf) != -1 && - (fd = open("gmap.html",O_RDONLY)) != -1) - { - content = malloc(sbuf.st_size); - if (read(fd,content,sbuf.st_size) == -1) { - snprintf(content,sbuf.st_size,"Error reading from file: %s", - strerror(errno)); - } - clen = sbuf.st_size; - } else { - char buf[128]; - - clen = snprintf(buf,sizeof(buf),"Error opening HTML file: %s", - strerror(errno)); - content = strdup(buf); - } - if (fd != -1) close(fd); + content = getFileContents("gmap.html", &clen); ctype = MODES_CONTENT_TYPE_HTML; } diff --git a/flags.js b/flags.js new file mode 100644 index 000000000..15dee1c57 --- /dev/null +++ b/flags.js @@ -0,0 +1,257 @@ +function getFlagIcon(reg) { + var img = ' &h3whgi6rX#Cv(PIM)%gmNV-=lc%1z+~N;C}qW!*A2!C+Cr-*!}3-|l>&Jxo-U3d5|@)XSecSl4mjvCvZVm^J25@s;!tAT f(7-LUppAiHf{sOC#QT|PK=llsu6{1-oD!M literal 0 HcmV?d00001 diff --git a/flags/af.png b/flags/af.png new file mode 100644 index 0000000000000000000000000000000000000000..33c481bb628994a5f2caf2c84be711cd438ad9f3 GIT binary patch literal 257 zcmeAS@N?(olHy`uVBq!ia0vp^5&|rbfYx& zYIM|oM#giYKBrwwFGPAC5)-&qkbFX0Z9mZbnLx~7I_+x&kc#niaSV~Ty!C>mP=f-G z!^H4C0-PXLa$ocXrp$~eT6X&Qi z=+0L(S2z$l>ESI)**Kq`Wj@=S)Km|@Z0z`Pdc7UrZY}wjJI-wY+2`r%=d#Wzp$P!r C(qaez literal 0 HcmV?d00001 diff --git a/flags/ag.png b/flags/ag.png new file mode 100644 index 0000000000000000000000000000000000000000..0816bd52f6c46900398b0ed4ba057823c7bee4f4 GIT binary patch literal 318 zcmV-E0m1%>P)-IvxgrAwnk-RChOPR~6-1cT|Ns90a>f7v0L~F6QmL-o0001)Nkl#e9-Q;62xbcLrlr(d zP?G@xhUcv8x~?oUUJSfYzNRX4?VQs^>owVl{e}V2kR@c#^e;^@MeY)-vS~CfnR~%-}Lww)TenOFdhYTCm=+!?Af{|b>zd` QTmS$707*qoM6N<$g69u_Jpcdz literal 0 HcmV?d00001 diff --git a/flags/ai.png b/flags/ai.png new file mode 100644 index 0000000000000000000000000000000000000000..ea3e8219517f259028a7ff6f14dea55ca2e9d71c GIT binary patch literal 332 zcmV-S0ki&zP)(; zbSXrTxzpu&jj1O^k)*NFvwD|RZK(6i(pqt=;A?us1W;J839Bo|U-?-8cfrE^uSi#P)MmMBiz{shy! z?#tkpv@tt75Xw2fKrF^*1`>)uctceKC%|99l%ka3BY@m6Ch}*1AdQij0KUhFNq_*5 e2A`k&8@vD!9X3mh>B=Mk0000AHi0d^Oxe3A|H)Z8EOGsXl zk!=$aek`XjLqznfwCo&Fu~2TF>oRiv!XoiJyh}vI3-|@N7#U62*_ByXgqWBN*w|Sa z7&3YJsssctNXsr46PIFUcH!jQCn2#a$LBZ+lIxtGiUhtRk$& U!#(MaI?!SUPgg&ebxsLQ08FG-7XSbN literal 0 HcmV?d00001 diff --git a/flags/am.png b/flags/am.png new file mode 100644 index 0000000000000000000000000000000000000000..6c1e059c8050f960e6fff9e2ca74990a6a0f3519 GIT binary patch literal 114 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!VDx^^%Amx6n}tEh-+X}wue$7gYkl!3__n) zFdWk;^aD!CdAc};NL)@faAW4VA|T+x%;S~OAj8P>powjTA_IfSO}&F_mKMhVRWf+G L`njxgN@xNAOL7~a literal 0 HcmV?d00001 diff --git a/flags/ao.png b/flags/ao.png new file mode 100644 index 0000000000000000000000000000000000000000..1fffeeefad5feaa116e831b3bdb89f925c2886e9 GIT binary patch literal 260 zcmeAS@N?(olHy`uVBq!ia0vp^5Gr!Q1|dmo!wC_VKYWGrV6T#m&ihWQ8EmhI4{y-~PNU0J7peT^vIsE^j^Q&ex#8 zz#905_ekHC^MCU*ldjBQD17=xt$&Bd6Lk$!-a~Pnt!xeDvf@?@)wg$rh?_siOli1v zrd0oh`XV82{$Gi?OU~37T=UCWQ_Jv7QsNWCoVA7r#AVbkXiNCH9(Dy<#o+1c=d#Wz Gp$P!KgI1UT literal 0 HcmV?d00001 diff --git a/flags/aq.png b/flags/aq.png new file mode 100644 index 0000000000000000000000000000000000000000..9112397af6f80b5ca62b5163d7548179d68cc4a2 GIT binary patch literal 291 zcmV+;0o?wHP);Q+VNhM*S62?^Y;Ag^7^gG z>rsr;z}4^i{Qhg6+Sldvm%HVn!sw~S>0+1I&)@Sqe$M~@|2lon;Q5_z0001fNklEtbF9H3JE|G%6@W6#L$Lqq!HXs;swk>F=HiXt$M$iCAPc-o|V zT`{P_R@#XUeZVoViy6+oS^*fR=#s`6lKV7801*Ir1n?EP4%XEGX3Wtzp0V5lzNGvH p%?7+x&U=?-002ovPDHLkV1ns(SMdM< literal 0 HcmV?d00001 diff --git a/flags/as.png b/flags/as.png new file mode 100644 index 0000000000000000000000000000000000000000..eeeedb1e19a220a3da4f502df07473e0199610d2 GIT binary patch literal 312 zcmV-80muG{P)D|8Y@9Wpk#>S|I_Vx4Az_sDv;D0UvvVb;wQ3K6RtLGvd z;|DHp$eWxOlMwd1Vh@>NqMt-GitrCVGCF!++-PwCHz{jf@zGe-D3Bvp?c<4Xykf{X z1RV{)jU!c(Ij2BqyjdybJSRCYw~V47r6hp6Rx_A;VJ*$D_LEjDMKevgk!@rE0000< KMNUMnLSTZjc8Vi0jWCd;kCc|5np-d$i*v ykSb3X#}JO|$q}qT7@i3IN>0dl}&ENr04TGnvpUXO@geCyVHyeHc literal 0 HcmV?d00001 diff --git a/flags/au.png b/flags/au.png new file mode 100644 index 0000000000000000000000000000000000000000..4db9c0484744cfc9d237a01d56b992871f26551b GIT binary patch literal 350 zcmV-k0iphhP)7uW!Dwi@rl!{p4w0Li(aWR2{*;vO;_3+rkN*GwO--&F8m-C!HxLoWyI3RaLV7USIvl$y!>p|1B*60gL}LGXMaKk*j+20002FNklOM<2+GrQ-^KNsA8*QxWaOZUCHMY9%fDt7F=`(fFhGeGSQo-U3d z5|@(&1Oy%k9$=Dan8Dl5!mVy@#wnNP#;2wimt(af@@C3?Vh{f0@mK)OV(@hJb6Mw<&;$U`EJXwW literal 0 HcmV?d00001 diff --git a/flags/ax.png b/flags/ax.png new file mode 100644 index 0000000000000000000000000000000000000000..82aa7dcdbd837ea839f98b162e8d188531841242 GIT binary patch literal 157 zcmeAS@N?(olHy`uVBq!ia0vp^5_UjP-Gd%8G=a9mH0*qU`UY5R%LgaZzI%lGWr zb3u2L439(_Q)BcKAA^J!3`}Oddy3rY!k$=iXaw>+cI!{yKT~y@UTdL&tfM zMVtLC-fCJh?0jNB$Fv|pn+<5JtEY=&h{pM30d)omwq_3y8po~ zev_2tf{fY&nr_P~iv1t%5LB{k{CApxL3!$Yl^jW+mQYU@#}J9j$riZ3S{On&Co#By@g{}{P7v;5@Brgg3;~=V c%s+vJp{#i$qkh%@44?%Jp00i_>zopr06@DrZ~y=R literal 0 HcmV?d00001 diff --git a/flags/bb.png b/flags/bb.png new file mode 100644 index 0000000000000000000000000000000000000000..bd49ac391cc7610ea464c574a8bab5c8cbab70ce GIT binary patch literal 229 zcmeAS@N?(olHy`uVBq!ia0vp^5LnBC!-d{%gw>Hgrlk8gpG)D&LncYNo~U`-p0Fg3!h;savZQmNZBx zNwI$3rxIw-Gr3r-H&68caWw|Ddbgk)pz#boo-U3d5|@)Fv@vOFG<=lIP(FB|+t+DE zt7lA1gTF*DJHPm11#M}u#XD40R4rRJcyttcd2Q-W+&m{fWQyeO)ha3l7U3=}-yEBi Z7#Th$sx?hFFDwHY?CI*~vd$@?2>{4HN+bXP literal 0 HcmV?d00001 diff --git a/flags/bd.png b/flags/bd.png new file mode 100644 index 0000000000000000000000000000000000000000..52687d378a6ee9747846b183356150271f9b4170 GIT binary patch literal 260 zcmeAS@N?(olHy`uVBq!ia0vp^(m*W0!3-oXoc*!{NF@aLgt%TdcK)dCsF>vI6yZJ1 z*^N8hcY=$XceodSn(qlyXQf1+%SKMz>3%aE-6lD^IYxR3rulx*c06h3ve&|eFU|L* zuA^?8w?LY2m6y9|jQ49@C!<(zwoE_IaIY^~jtp6TNwLaVK)d2ST^vIsE+60caxc0Fp zF4Jj?zL5~bV>F}g!I8J@m3(53F?H;%Jo|NoEfaeg873weo_3Dg90jzB!4qiSI;Vst E0H$M8e*gdg literal 0 HcmV?d00001 diff --git a/flags/be.png b/flags/be.png new file mode 100644 index 0000000000000000000000000000000000000000..5a43b1301639c2aa0a8a52e626332a178088ad5d GIT binary patch literal 95 zcmeAS@N?(olHy`uVBq!ia0vp^LO?9Q#0(_UGLD}IQk(%kA+B#VEq^_50`lx6s;2=d qK~ERQ5RU7~5nD~BG&VM-sW9+ZOF7zdY-|QfGI+ZBxvXU^zL{Cz=8dXaPWHiM6jnkk!2S>}2CTq*NjTbE&;r_7voO^{ws7sn8e>&X@E zED|T4*<5vgWOK&3ATD-8Ec>%R?2Xg73|Jq&nbUj3@;`egGwYKA26pQ$GiSuwI>7({ literal 0 HcmV?d00001 diff --git a/flags/bg.png b/flags/bg.png new file mode 100644 index 0000000000000000000000000000000000000000..89e4c8b5e1cb5a9c28f93322fdfa8a8a33ad3a69 GIT binary patch literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^(m*W0!VDxuZ6%iiDgFST5ZBP1^V|#l8K&i3Qxp3C z|Nof<{}X^xik>cxAsp9}3mn<_c%~FwY!EUEQ0Ud};9-&Inb^pv8pBZ5s5 literal 0 HcmV?d00001 diff --git a/flags/bh.png b/flags/bh.png new file mode 100644 index 0000000000000000000000000000000000000000..9c3129b1de87fc2a1e9145aadfddc9467e77d95a GIT binary patch literal 216 zcmeAS@N?(olHy`uVBq!ia0vp^(m*W0!3-oXoc*!{NVx|1gt-2E^6baGhj+qK-*4RU ztfl|opFhvqCfsxj|FCt>-KdPqnl|TzH6EmwJnx)x%QN!h&iy|hKmGgd+j$YqE4mK< ze*OOc|Nl8bwS(ok;y?raJY5_^BrYclurdp#sVN$k98ln5W~$loMB-*k;Y;C^heC&Q z)wJ!c^(+PX{1ju-J{3GR3~mUY!DG26?NK4Oo&AHa*7FRQnb=|ydrkWoLcNq$`>}sB Q2Aa&^>FVdQ&MBb@0QAaPkpKVy literal 0 HcmV?d00001 diff --git a/flags/bi.png b/flags/bi.png new file mode 100644 index 0000000000000000000000000000000000000000..b206392e300e275630829f607a70c4ab5627a098 GIT binary patch literal 353 zcmV-n0iOPeP))V z*Xfv{_51d-Jvig^<>$-Dx!$?>+~4{A`6ahN&lxWN|NqVrCLXmq6^3*<0002INkl3`du$m$jVEusMq?yIyXtmtJ|-fBxtVF7_#-PJPC100000NkvXXu0mjfqA8_7 literal 0 HcmV?d00001 diff --git a/flags/bj.png b/flags/bj.png new file mode 100644 index 0000000000000000000000000000000000000000..00909110a8b24ff0273f0b37e080596e7f7bb84e GIT binary patch literal 108 zcmeAS@N?(olHy`uVBq!ia0vp^5SJS|)@!|G6mkLQt2X zJupo_eJ)6?r;B3<$Mxg_MkaPuj)Vn<$1h4SWt?DSD0Wm|cq?mDI#3ORr>mdKI;Vst E05(e;TmS$7 literal 0 HcmV?d00001 diff --git a/flags/bl.png b/flags/bl.png new file mode 100644 index 0000000000000000000000000000000000000000..0fabfade72d988026e142790604b095898b9e338 GIT binary patch literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^5i0fNT%m4rXGbm4u-Iy~Q tC@AFV;uyklJvm~lmdTXH#>O}i29-$phf#vFR{&)hJYD@<);T3K0RZ@*836zQ literal 0 HcmV?d00001 diff --git a/flags/bm.png b/flags/bm.png new file mode 100644 index 0000000000000000000000000000000000000000..9d2262cb33ad40f59c303506ae10a62e43464d74 GIT binary patch literal 337 zcmV-X0j~auP)P z%ix=mlaY3D_ub*GATR2irsUq|v2J&}kd~Q3L$i99q_NRxjJGL7kS9fvSu-8Gt+kvb zG?^9}|NsAeXiQ#LI`hoZRc)wFdqe;veOhs=;A?uq|_6Cne69F$WM*0Q_D69z)7E2p>>MSqmwj`-%*g#0P@Qep|5sAx{rKbn00960|M%b*!UDy{0002aNklfeMjfe zVdY9YIur}KHgdKQn-Yty_LbiR18Ng4eScz^rKC6+m8{lR+<-aEA%w11C#$SAmZvf` zk}6>PBx#yPDV1`5C5!D21Sy+F%C4{ZYT(Q7UT7@ES`_?V6UFN48V+|&=^r|fFsPxA RH_iY6002ovPDHLkV1j|GqL2Up literal 0 HcmV?d00001 diff --git a/flags/bo.png b/flags/bo.png new file mode 100644 index 0000000000000000000000000000000000000000..fe3b4eb08ac089ada1c227ab0cfb234a80a524e5 GIT binary patch literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^;y^6G!VDz&8GmYnr~sc3*Jb+!-!A3)`IzCVwj4vH zNucv-9-x$>r;B3<$Ms|bHwI?5B8w&tg#!y(7`ToU1vGFoSxh+0$e^32^z>TAjvAn1 N22WQ%mvv4FO#lLW9-{yN literal 0 HcmV?d00001 diff --git a/flags/bq.png b/flags/bq.png new file mode 100644 index 0000000000000000000000000000000000000000..d33b631238886d722918fbc7e6a07a1a621e9270 GIT binary patch literal 113 zcmeAS@N?(olHy`uVBq!ia0vp^5 zSee`dP~Q2@Ol%5hUt>x>gTe~DWM4f?*~nk literal 0 HcmV?d00001 diff --git a/flags/bt.png b/flags/bt.png new file mode 100644 index 0000000000000000000000000000000000000000..4ac41d9b6222b19aa7a12f7d519b5bf903176f08 GIT binary patch literal 317 zcmV-D0mA-?P)y^Eb^_D5|6SHo`!F2mGk21(e4Bk`xAPg10z}BUg%t|`rfp&q zUkYfWHO6Q$V7W0GJBm&D0-yzLf)arf0M^)P>w3u*Jrz49L+aj-325!nspR}XAvP)1 zSn)oHD~wHeNPn#0P|FKMsr=H{=MndVeSW$loB00yz`mXxUpWFZ>HYHpw7e#_XagB& P00000NkvXXu0mjfxDJi0i6VtANbXRkv+(lEJDx vT^vI=t|v#ZvhlbC1PE}k8E|oRn6Wa1ZZ$r;cVEeTplSwBS3j3^P6)Ldrmy}<3g!rzCF;tu(FunhmP8KfZ~*z;g6P{SVl^wSI99wYc-!?00015NklyVzTpBkIMEq8q2qZ&p5y+~A6{Q zwY3uhd)@W_fKP=kDHkN1X>Le()PaD$ngK0~6z|^|g=-GCo zR7Yo`gbD%!hL>Qw|6Nv-YQe<&H#y0`T=aej+ODu=`41cV{DO6?Qfhq8 zCk&7v6-ajI0T)?aaxSKkcaUR1Gj-mFqFZ2AB7`XQ-dA7^yowd3R%5DA1vh|qAR(Aa zgo-V&0D`PJA3)kw9}S7RBM@`;^Ryto3@Fz7nB+HgEDtF3ZJ4*&zjbMW5z>bf@Fw& kn`A4o>W~69BEaX|JJ}IA`T%-EE&u=k07*qoM6N<$g1+*IegFUf literal 0 HcmV?d00001 diff --git a/flags/cc.png b/flags/cc.png new file mode 100644 index 0000000000000000000000000000000000000000..c08c97caa3e1ef4f341509d300e4324dc0a24af5 GIT binary patch literal 338 zcmV-Y0j>UtP)`{w*VN306Ufd34;Lt-~a)D004jhCB-^E00023Nklt#z)?N@)VU{6WjxE kxXKp*A$SIacronp12d*Krm#649RL6T07*qoM6N<$g0pIV+W-In literal 0 HcmV?d00001 diff --git a/flags/cd.png b/flags/cd.png new file mode 100644 index 0000000000000000000000000000000000000000..fff626957009ff7520f216d51cdaa0016d2e815e GIT binary patch literal 334 zcmV-U0kQsxP)VJ>HEgAs?b0B^yh!AkAWE6J&>0~%lFZK( zARvq3;cXq(Iv?JtDa>OqTc4^Ch3*1?{FAYD+*TgaCLqobApn2>NnXy>0001~Nklgam%PzF2^wO1*EKb^jxlt z{V)>Jq2nOg)^grEvSO$rf7mTYldM{~J&b2<@FIuXVxGQ85Oc-F8oVGu4!atE4+I>B g@P9Ut!rYJf1{y6O{~jQXwg3PC07*qoM6N<$g2Wq@X#fBK literal 0 HcmV?d00001 diff --git a/flags/cf.png b/flags/cf.png new file mode 100644 index 0000000000000000000000000000000000000000..8229a2314c351d12b435eeae265a4b3a0d57e901 GIT binary patch literal 162 zcmeAS@N?(olHy`uVBq!ia0vp^5q)=Ocwa8_^cTuo*#KuMY20%b~MmD22WQ%mvv4FO#s0TF<<}y literal 0 HcmV?d00001 diff --git a/flags/ch.png b/flags/ch.png new file mode 100644 index 0000000000000000000000000000000000000000..2dffc4339cdabfa617a8b6cf792c3fee66afbeed GIT binary patch literal 142 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPGa3-AeX{eS%U|NZ;_Z{Pm^z=8i2 z7604Y|Cg8l@96js1Plz8jw`kSRcd>>IEHXsPoBZa$`c_ex7I@9@+A|g%SMeolClmL mI?v3A%exp5*BNi^=glZy;9k!6p_>P&jlt8^&t;ucLK6TxLNxIJ literal 0 HcmV?d00001 diff --git a/flags/ci.png b/flags/ci.png new file mode 100644 index 0000000000000000000000000000000000000000..39cb88d5ecd75a601813f501b2678d8c85af383c GIT binary patch literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^5i0k)yhX4QnGt5f}3(U9# s6cqAwaSY+Oo}7@t!5h1^t1(W5;k=jpL)MShdx5eHp00i_>zopr00ayfh5!Hn literal 0 HcmV?d00001 diff --git a/flags/ck.png b/flags/ck.png new file mode 100644 index 0000000000000000000000000000000000000000..a9b32b1bb9f1ef2b1e3d36c8065b6edd8451b547 GIT binary patch literal 367 zcmV-#0g(QQP)dgar6@*`&lD>|U7tEtn!Lr`jhw_WPL&@&jBSCmDMXOqpRCc>=kns`CqJTx711Ep;%+ghDsNidQT5+q_Jy6+0RRAP?D8huD0002WNklv7yCp~mf2XQ+vX6(EG+cCG>7Den{yBcU)Fm?M4Y#Er0-1TOXh#I;< zr-(so2!Z|R`Xjz~qvy)vygcqwvPz0QVcq~~2gE$rOfY-ZXP{Sm#P8m$C}epdRRFlT zzS*Yq0t4le1Vuo>P|kF)mCY{7%Z3l|NsB0w%nS6G7^>bP0l+XkKWO6s% literal 0 HcmV?d00001 diff --git a/flags/cm.png b/flags/cm.png new file mode 100644 index 0000000000000000000000000000000000000000..fd226cb851cec8c58d97fe5d947f37754baba2db GIT binary patch literal 150 zcmeAS@N?(olHy`uVBq!ia0vp^5hA literal 0 HcmV?d00001 diff --git a/flags/cn.png b/flags/cn.png new file mode 100644 index 0000000000000000000000000000000000000000..4b26fcc92f69d7a08980caf0e471bb940e261cb0 GIT binary patch literal 223 zcmeAS@N?(olHy`uVBq!ia0vp^5+GnPfOsQj=+mp?)!%P zPrP{V>j~V`6yW%!wG(J&kf)1dh{WY&fp#Xx!jJ*@p*yg3eQ1Tr!PE_f;vBT?4Cz|SnK9mZ*vrnBx4SKAC0hRSwD VeYS{mCxE6ic)I$ztaD0e0st&}Nv;3@ literal 0 HcmV?d00001 diff --git a/flags/co.png b/flags/co.png new file mode 100644 index 0000000000000000000000000000000000000000..83b472ecb0113879237ad74e46e36a05be9b838c GIT binary patch literal 98 zcmeAS@N?(olHy`uVBq!ia0vp^5i0e5)H3o~xe=dqKPOsVz v6cq7vaSY+Oo*co-#-kFvFri`YA!df7uIe|JC+|%M$}@Pn`njxgN@xNA%&izu literal 0 HcmV?d00001 diff --git a/flags/cr.png b/flags/cr.png new file mode 100644 index 0000000000000000000000000000000000000000..a581281fd5cbd1729d4631f3959fac5f0cdb0c8e GIT binary patch literal 125 zcmeAS@N?(olHy`uVBq!ia0vp^(m*W0!VDxuZ6%iiDgFST5ZBP6RreC|{{R1fPEd_O zyWZ(tS`1K1)6>N9qPezQ%f)*Z;3p<-mI5ZrTkd&Bk%+;7{|K1FS_5BPD X>B{XM=99+@7-Ts_x$!HIl@(zV#IHbBmQ_*)7l0^`<=_&K!w$d-m_eAI2e$%7uqom~ z?9!M3sDPD;hlvZUgi{Q=Bc*sDM&MQ;!H?Gp2*B$|Ai(cULIEYhMp0xDif#a^12`#O S*Zcec0000|Nj$k>NW_g z-nq&&t13<{pyAhp_}|akA66tcvraEDA+M zK^h`Hd~0S;bmf>mGobqBLzZRMmX;|?cDhOy{D^hwnPR}q@T}Re^ux`2&Oo~uJYD@< J);T3K0RVF1XeIyv literal 0 HcmV?d00001 diff --git a/flags/cw.png b/flags/cw.png new file mode 100644 index 0000000000000000000000000000000000000000..72278db12c2ab8dc8b7e1a38160326c1c0f7070a GIT binary patch literal 189 zcmeAS@N?(olHy`uVBq!ia0vp^5O<(L`%z!0uKYj4++yBq=^YUI+`^_fLne)Ll~zbUs>22p`MsIH&hEO mriXAk$}nta5!F4e%E(|*Ev4$Nly(nj6oaR$pUXO@geCwATtYzr literal 0 HcmV?d00001 diff --git a/flags/cx.png b/flags/cx.png new file mode 100644 index 0000000000000000000000000000000000000000..60c46ac83777a435d4a1da2b6f86ade81a021b85 GIT binary patch literal 354 zcmV-o0iFJdP)hN%sJR>J`i4eQx}KnD8p#4SQPCsQ~fs0%&C4UqseYU)sPxh~-$#GGgm=WQM@ z6_?&S^f0#Z$)YUNYXod>oST(5lyfYCKprQcb)ve!hR{s~9sHJ-KnhTnnBrAcWdEbJ zhp#dX*>5i=AR@c!@E56vqYyzLzXA{;%U_Mt8v;u->74rGvH$=807*qoM6N<$g8sXY AM*si- literal 0 HcmV?d00001 diff --git a/flags/cy.png b/flags/cy.png new file mode 100644 index 0000000000000000000000000000000000000000..665c97894ef56d493b477a5cd956434290115759 GIT binary patch literal 282 zcmV+#0p53)`}pbB{{H>&(5Ld$u>Su2`0CgF{QK_7o4&)d=;`Fuc?PJin)vwl^V+%HlsNSD z^3T%8_vX>r+|&H`@Z_mr_2I|;`}f(qjoF1A@9^!!$-C5c0RR90ELw7@0001WNkla;By4L;w|Npv(l$+U0PoQEiPZ!4!j_b(*Gdmf0)=u-7)2HUI;^%H) zwA`6>Ci8W+M+dexS{mdE`2Er{U?`T_DKKZ-s!)!;16nNVwW3YTml+-%Fm144;`pY; Yu*)Ma`$PuUWuU1Hp00i_>zopr0IUr-oju_3xyojl}Hu{P`cT zHtP87YqICsCM%HGoHMvc6Rj*#!)3nc#OQi{b-3yO|Nm;T=Mt?eofQ5Q0001LNklGf!-0H@dqfMhyi!}0yAi?rxjL* VDh!LoxTpXC002ovPDHLkV1m8*h1>uD literal 0 HcmV?d00001 diff --git a/flags/dk.png b/flags/dk.png new file mode 100644 index 0000000000000000000000000000000000000000..2546206143aa32d07581e1b20ca0e768a5510126 GIT binary patch literal 130 zcmeAS@N?(olHy`uVBq!ia0vp^qChOb!VDz2zi5hq1Oj|QT(1S?T(Ar~DP?oPJoKE7 z&;S4bkMS7fe=xQ15-kL@|g$D-&xY!vra#Bn~ bHigTe~DWM4fZ}%iz literal 0 HcmV?d00001 diff --git a/flags/dm.png b/flags/dm.png new file mode 100644 index 0000000000000000000000000000000000000000..4b4ed4427d0f9009dad6912f9c89116bf8325477 GIT binary patch literal 270 zcmV+p0rCEcP)J0c955GRJ+&b&7-BsnTS2-a zF})!#xFs^FCNH}qFWh8t%N{OSN(fq7T2)n5R7MB?|Ns2a765BM7eG4F0001KNkl_VU}s8?m;=pZ6U5`{~O~)8G># zCKm-v?nM#foz->=;2(>9TaH2(kpKSPqS$<^f`M|gRSY=+Pmao*6=$Y<$)f73EBl5HebH=abW)rb`k+NgTe~DWM4fzeHh% literal 0 HcmV?d00001 diff --git a/flags/ec.png b/flags/ec.png new file mode 100644 index 0000000000000000000000000000000000000000..83f795869546b3ff7d21368da4b98986946c0eb1 GIT binary patch literal 257 zcmV+c0sj7pP)(2pwm_eGOK;Oa`%(Ei(*AV{P0E(J?P=0iaaxx54pIviSewlQws*&w2ejqOA00017Nklj3CMR#;>I6T)Ks-~C)F6%U>o~~@1gBb4 zE*gskK%4UFc(Qq)vwhD3Y(q?}0q9h8*nkjH3ZcN+=|i{y0~{(Szbx4}00000NkvXX Hu0mjf>R4sX literal 0 HcmV?d00001 diff --git a/flags/ee.png b/flags/ee.png new file mode 100644 index 0000000000000000000000000000000000000000..7f0fa03ad92b5415af0113cc2ec6d8e85df2521f GIT binary patch literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^l0YoL!VDw@Pn?_qr1%4TLR=*bJVHZ5fxQ3!|9ecl znSA2NVjxG+)5S4_<9c#|BNHFblTQJSLP7xwjp`jNED}8v8yI)mFzi~ddeLw0-Jd|k N44$rjF6*2UngEk)A>IH0 literal 0 HcmV?d00001 diff --git a/flags/eg.png b/flags/eg.png new file mode 100644 index 0000000000000000000000000000000000000000..a6c0bf7d6fadf3a0cd34ea1487e97f4131221351 GIT binary patch literal 203 zcmV;+05t!JP)RAMw)pPc@8iAb*rLwFt-80b=-8z1;=K3o-R!rlySJaPni7VBq89MdAs;0S_Y^JA%g`iUZI?0s#0M9!eNDD4GBO002ovPDHLk FV1fa{T5bRU literal 0 HcmV?d00001 diff --git a/flags/eh.png b/flags/eh.png new file mode 100644 index 0000000000000000000000000000000000000000..ae4941e93f449b611a5b17f0210d1074dcd05054 GIT binary patch literal 283 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!3-oF?)7E^se}NZ5LYiYE~O0fb<375Qdao) z_pcH&>tS)lKVQFcl-d0K_N|IraP{tu?++aL{qf@-A!!aq#=pOQE#ec~Qd{-y?)^hY zc4RqfJ)gh$vTx`)E2q1a^{as3^1lE7{~r;QW~j0SS;DGb0Hn%1T^vI+&bOYu&F5gi z)9}!;Tf(`7Pxt-*X=&Vs8-M9M>b^Q2`YZh* f;y>q&!pn@Sd(7KkaK>o>UBKY!>gTe~DWM4fR>*o1 literal 0 HcmV?d00001 diff --git a/flags/er.png b/flags/er.png new file mode 100644 index 0000000000000000000000000000000000000000..16762d7ff030c3c3bac20dca2d96b23a4196921b GIT binary patch literal 312 zcmV-80muG{P)>H}E+!>>V}rYcBFqFzN+1_kb+>r6~E4 zEAT-v_H`}Q6ik6vpJQ$?sy21c88t1KEmnERnL{!Xtt&x^-RcB4_*TU40001!NklWek_qPzE*h0#mD1TSgg3 z2;4C#N|y*2r<)WFK?4|B@Oy+ZU^pa;(ziQsI3I5WqBr1} z0xx#)xs1T%yci9%Q-OD39?J88~!QQ6(# zakiCfi97F>B->LxddFw;9a_-xc?a{wYOd{-&i{`v9OIUoGkv}R&@K;87sn8Z%gGat zGfJ$`P;6&*P_2+qsodbXq2p6ww^#DS2U7$mCp|r)bnuAI5$&Tbu1+o8zB6K3x>?#; l_FF7gFbhvC)RR5L#UP`ny|hnrcO=kE22WQ%mvv4FO#lrhSM>k@ literal 0 HcmV?d00001 diff --git a/flags/et.png b/flags/et.png new file mode 100644 index 0000000000000000000000000000000000000000..01fe886e784a13542db7fc6cb0f34e4fb767d913 GIT binary patch literal 310 zcmV-60m=S}P)^hu-mJtg8T1A@3NS$1)uN%>!>wAAm7p3jGi?M)}39 zW)pj6kI9M=)>>|<5NT?&7$sQqoMM+|dEbMrYtH-O6MS_FURoVA-y!`0_5c6?07*qo IM6N<$f>Dfl761SM literal 0 HcmV?d00001 diff --git a/flags/eu.png b/flags/eu.png new file mode 100644 index 0000000000000000000000000000000000000000..80f735c980e09f830df17d150abbb239b0883024 GIT binary patch literal 289 zcmV++0p9+JP)XqYO$Dc00000NkvXXu0mjfBu#Ba literal 0 HcmV?d00001 diff --git a/flags/fi.png b/flags/fi.png new file mode 100644 index 0000000000000000000000000000000000000000..d9b13c5dfe68e15733ffd78cbb50a55c0aaf490e GIT binary patch literal 130 zcmeAS@N?(olHy`uVBq!ia0vp^Qa~)g!VDyT{V$pgq(lRJLR<}EW+XIjsF(3ZW8~*?QpI7^g1E@g5)5S4_<9f1(x3@PRuU9hzTT!K+o*v)AMm>Q80$n^F4;IdH d5}nS-u;hZ*T(v*P%7JRRT1n6I`IF0xs>%~UG*lA$#6m|Hq-U{egGW%J}jH@KPh6f>m$h3 z1z6i4g|!2%uxPBk0O!DktZSHP7_mv_l=cf;29S%`lw&oH)hf>;1Xcz>V}nr6;O1abL%W+VxS0Jvaj2mdFMQUIXx7BFN~jnMrLUTCEXLGFPs pm#HNF0r<8h&%l%OtNlw}!3PBhG=J_qw8j7c002ovPDHLkV1k>%o45b~ literal 0 HcmV?d00001 diff --git a/flags/fk.png b/flags/fk.png new file mode 100644 index 0000000000000000000000000000000000000000..4b947a85082d2cd48ef524b546a676005e9e1bf4 GIT binary patch literal 342 zcmV-c0jd6pP)7ld;f9p9)!5q46e|%kg}uw&X_m(1-{+*U(H=gGDMXOepP!p` zUc$A$vwf5$M3D2$(wUNhqo1ANYkFF7s~dQ*Rc)x(Jy6+0RRAP?enGW+00027NklxAvL{M3{|1Aq*6H`l^4?-p{*#)#NqYhyM*g}}*bqPN~sT_3z z`E~=&Q6Vt%zyv1Lxf}4{Q~Exg06vv<+q`0U2L1wKQpssY$hg(~kOxUBPZEP32A*bzb}$mRLWNK&aQYmBWj2>(J&Ogof8V`G|71Y98_jpaq4lH*j zzvG6y;q>|a^!WUTyWx_<N z-gUCwg@xm@8Zu35V2w8(XXg`UpI4IcasSKq6hiVWdqJvxg?6#lB%w|NsBLF=lT* zP*Bm+#W95AdUC|p3)xp!vGTYC@bvKUI0$etF&c1bd2G>Sa9E@F(0bBI4WMEMPgg&e IbxsLQ0O^PxFaQ7m literal 0 HcmV?d00001 diff --git a/flags/fr.png b/flags/fr.png new file mode 100644 index 0000000000000000000000000000000000000000..0fabfade72d988026e142790604b095898b9e338 GIT binary patch literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^5i0fNT%m4rXGbm4u-Iy~Q tC@AFV;uyklJvm~lmdTXH#>O}i29-$phf#vFR{&)hJYD@<);T3K0RZ@*836zQ literal 0 HcmV?d00001 diff --git a/flags/ga.png b/flags/ga.png new file mode 100644 index 0000000000000000000000000000000000000000..cda678166845951ff94706f3584ceaedd2af84b4 GIT binary patch literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^qChOb!VDz2zi5g9DgFST5ZB$C0#+Q*|8r5ys`LoM zyoAGcxAsp9}3mTc(*@A916(}57z{1YuvT) z+TZ*9{n*^;vAoyuxWD`B?X0-fiJHTUmcFI3(ew5B)G9yYk)GR6V5+v%^Tf*Ib%Ou@ z{}ncf;&OlhBz?~mD`dwv!2kdNlu1NER4C7dk=qu8AP7ZIcgr%O$^ZY<8AT1}#q;3e zvPD2RVr%Y4v|Zj`TXOF8*c~Ap1yO*c*&-VeDZm?rb~2zZL6I!5K9U-9$5U z0617ZM#B{vSW!GZTA(83&1L-?Mv@@c%(wXS0jg8E1Q!MI6OCfbr6YUJJ zc(5czw>l&`FptH!DN(Fq{$MQ0SaVlg^`|$(EM~f#<=+m|kKOZ}7oH^@1n<3yUN3eD nW%3#T_J0sEHe9?WUw`xj(U>YPjv9I>00000NkvXXu0mjf#TkrK literal 0 HcmV?d00001 diff --git a/flags/ge.png b/flags/ge.png new file mode 100644 index 0000000000000000000000000000000000000000..2c8b792bb558c9a3878c18b4fbf3eff155c09c84 GIT binary patch literal 242 zcmVCHe9IVypG`=FvMHKq4yIPWpX=|r sfq}_r1z60cRRUgshmzPTO-dYw-%zw1k@?I;z5oCK07*qoM6N<$f_TerJ^%m! literal 0 HcmV?d00001 diff --git a/flags/gf.png b/flags/gf.png new file mode 100644 index 0000000000000000000000000000000000000000..671be464f42d35aa04024cb6e27413669399bee9 GIT binary patch literal 238 zcmeAS@N?(olHy`uVBq!ia0vp^5kj9W zK+z9#_)QwMF3U>)IL<9yr~C61*Az>|PxJXs$jH3!7x;6F^OlfQc#MWvgWjLJoa~(j zOI|1M1scUs666e+4I?N=LJ zJ34(s^-s=@5b3^*w{;Gp%FI1n0VR%|MQj^1R9jZQyk5z2LGf50SL~jAS;q~v=YAik lmOJ!U_<*F~l#YiTWirK5Cz>=rTeScH literal 0 HcmV?d00001 diff --git a/flags/gg.png b/flags/gg.png new file mode 100644 index 0000000000000000000000000000000000000000..1010f7749652d5312387ede341229a52acdf0af4 GIT binary patch literal 151 zcmeAS@N?(olHy`uVBq!ia0vp^5C@Y$PiK%+=!=R{ijER8<8zXn=$357K6^Fe>H{&`Kc4en12lrc)78&qol`;+0J&i{ Ay#N3J literal 0 HcmV?d00001 diff --git a/flags/gh.png b/flags/gh.png new file mode 100644 index 0000000000000000000000000000000000000000..524d8f0fa4392fa24f9a8fdb6d7909980a9aabfa GIT binary patch literal 175 zcmeAS@N?(olHy`uVBq!ia0vp^5i4r61oWkT0OJ&u_5ticKALe*L$ES|4(HFkQo?z#|1x;cl>6qaC~_Y)W_Wf)vt WR-W74!6F4Tg~8L+&t;ucLK6TzGB>0E literal 0 HcmV?d00001 diff --git a/flags/gi.png b/flags/gi.png new file mode 100644 index 0000000000000000000000000000000000000000..6b9f5b2c694831b64ece52add4bdf3d34a312b48 GIT binary patch literal 298 zcmV+_0oDGAP)_@c7lHna;~0McXbCYjV1XiE ziYLV{IPa`?>_TeJAR5;a1152AVnrb)2Fyf7%0e`AK-N-gsFDNG4q@NJV9&3B$2&PM wtI=jr`BVaR*|hEp`T%r0{sf1<0NWRM0g~l5=2#$T=>Px#07*qoM6N<$g3e`iz5oCK literal 0 HcmV?d00001 diff --git a/flags/gl.png b/flags/gl.png new file mode 100644 index 0000000000000000000000000000000000000000..afaab2d4e706ab185c4ef3e7cdae344213bd1cac GIT binary patch literal 271 zcmV+q0r38bP);_|OeB_R`t>@$=kFY3-u1(;Y$by~yHef#6_y@2-&k|~^Y!`S=Ftx|{`~#hMPvW}|IiFGsFBFo0001LNkljDU9r^(1S(MRba4#fxSs6c%*6AgfMp^>vyf0ifg{rjnPim%4NOiG87yTO Y>W`cKUA>TNAy7Sor>mdKI;Vst0O~6vga7~l literal 0 HcmV?d00001 diff --git a/flags/gn.png b/flags/gn.png new file mode 100644 index 0000000000000000000000000000000000000000..4c1b49ab5f40b92b2df4b74cc5aeb17388b25e1f GIT binary patch literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^5i0e5)wLcfd7^WnM7%goF s3JQ6;IEHXsPfkeS;Emnd)fgwjaNbM)A?ru$y+Bz8Pgg&ebxsLQ0G~t`f&c&j literal 0 HcmV?d00001 diff --git a/flags/gp.png b/flags/gp.png new file mode 100644 index 0000000000000000000000000000000000000000..a2de6b224154750476b7368c7bc8b13bf9f382d6 GIT binary patch literal 351 zcmV-l0igbgP)6) zJa)mU2Y+=00|NkshD6o93`|^MJ~sj?Cjnnm17T}c;l~c5n>G#%0Gy5mzON`TNNy7_ z00}FD5GGs^6&e5)001cf00sa6LjVINh4$DA01Pes-3b6BhyVZpao`j|0002GNklpG;Ftu});yPw(!2F#y<8k|2#1vo=^t zDKR3DDd%l7!j@tMk*em%IlDqS#o7Ttz=j4!(*xKyW-BOG%N}4J8~Aeo7*?3!(7xB8%ql7;j7{~l zu{f3$jzCK*z@-I2y@GHv(WanvcKJ`0CUd&|NlOk0OKJTMu#s30001NNklKg#iGDB!MRnlO=MHSsG$X!_qM@(R+IW XVaF-6Gzs7>00000NkvXXu0mjf)eCyx literal 0 HcmV?d00001 diff --git a/flags/gr.png b/flags/gr.png new file mode 100644 index 0000000000000000000000000000000000000000..570204da7acfef015c7d997bbb31a52fa56fd4ac GIT binary patch literal 221 zcmV<303!d1P)ff- z+C6^1|Ns9DUaz$-xgr1n09HvvK~xyib%So)yUrq0@_3^TOZ4!(QM=fH5=aD$Kqh#j5VUav XRaYCf##gjl00000NkvXXu0mjf)i7hL literal 0 HcmV?d00001 diff --git a/flags/gs.png b/flags/gs.png new file mode 100644 index 0000000000000000000000000000000000000000..488c5666a4f57f73990ce0cce40734c5b86dfad4 GIT binary patch literal 362 zcmV-w0hRuVP))sIOYN|@(Ht@uD5NJvk#U2w;&g&MQi(Z4ISv~vvwD|mfRfsTl%ucDKQJ*!PGMG7 zVJ0YD2_$k}VJ}*7t5t2N^25p7+vsv*W~m<&hf%3K#y4pLJ-Rc;_U9i?OeByri>T{ zAqIR)9(LL&3E_1q)RIa$aFKx$rY#T?k}EW`_pDhn5dUaiq=#{-0jQ<)j2WS7KcEC) zZ1hUkMyTac!{%xS1;CdTcoon9YYS_A3*D+#Kd%bJeB^S;5Bf(AWCvA&#*i)q8mwam@E{Qdm$_3+~A-{aAdq_&iayy5@<|4En7msP?n0000-NklIv=Vd#V`Yb=Sa)WEMX_oEmd0d+1HR)3eJJ!yf8m!-PSU|I^ zA#Yad!i(vX`fCfS*)=L`dZr6&lx$P9?@{)dsO-(4S?#Fv>=w|jcuyC{5Q)o6FGlh; zDDbcZJZjp+eL`))_x-Bu2DwRd?oY2fGi8gkr}AINOZz`Y8pbgx8_ZUCmf-Nr>GcW6 zG?S=ZO*L=Kmd7ZB-HZ2ZynZy(QgX?R$zopr03kJFV*mgE literal 0 HcmV?d00001 diff --git a/flags/gw.png b/flags/gw.png new file mode 100644 index 0000000000000000000000000000000000000000..b79d816a88cd508bc9f9cc4125516803c51c25a3 GIT binary patch literal 203 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!3-oF?)7E^DVqSF5ZA|<^7%n#A?yOeOe}MG z<@8xNPYbHWa|kWvm2+U_kzr3#>7?w2jPi_@o&%|hOXfXp9+j=Gj@$X8-p@Gt~faWlGy85}Sb4q9e0FDGTr2qf` literal 0 HcmV?d00001 diff --git a/flags/gy.png b/flags/gy.png new file mode 100644 index 0000000000000000000000000000000000000000..69034dad6a23dc4bda0f5013755f762aef35cbba GIT binary patch literal 323 zcmV-J0lfZ+P)5r444@ VDY$$miUa@v002ovPDHLkV1i2~k^%q# literal 0 HcmV?d00001 diff --git a/flags/hk.png b/flags/hk.png new file mode 100644 index 0000000000000000000000000000000000000000..17372e2c10994f97596dd393484e4dbc5f60bfed GIT binary patch literal 262 zcmV+h0r~!kP)*?c4 zHQp-{_}SF@+}PkX9pzO){qXPj&&ud)TJyE6?23HnVNda?pWZ1D3+ekr0001CNklv(@{714-2^tEl4IrtIycc#UMxTTPrrKP2DXqZA>zTnTmS$7 M07*qoM6N<$f}B8reEvK-Lopk8sTp)S) zg?88VMQ7f=`SRz%yC2_w{r&Uz|F>U%&p-M4^3xxk?(3^Ay#N3IKSS~P$@T#{KofjD zT^vI+&L<0~Fi5a9Gu5#q98O?hY-W%tFy7!S@n+2(jzASwCYcx}CLbLprWhHf8=@Z= y42_kiG`cdX%j>rsJbk=#NyB`G1PLxjUIsfE1-F$G4kZ8$X7F_Nb6Mw<&;$T~lutAO literal 0 HcmV?d00001 diff --git a/flags/hr.png b/flags/hr.png new file mode 100644 index 0000000000000000000000000000000000000000..f11c40595e83fbc6c1771f3de489510b458e2d37 GIT binary patch literal 286 zcmV+(0pb3MP)dHy|1B-kgOmT`TB0E0OiHIR-~TP=?%Ek$O!lWYoO}UZKZ0Ap+O%iwDe!TMT^s!= zNYMJeOHTzB5oXN$q1>Q|W_DF>c$S+6g&!lA3&73Bpp0g*X34Nh0!8~^|S07*qoM6N<$f-2d8SpWb4 literal 0 HcmV?d00001 diff --git a/flags/ht.png b/flags/ht.png new file mode 100644 index 0000000000000000000000000000000000000000..ce4f979e048b6d8821f322f6e9056a4a0aaaa623 GIT binary patch literal 202 zcmeAS@N?(olHy`uVBq!ia0vp^(m*W0!3-oXoc*!{NO=eNgt$gb2%gd4fByc()l1i& z*}HE?eL&sPwqIZ0ojbU%s@x{B&Hk){{g?MI6Q)F+Q?TE?qkZwrmFMqWnpEu@*5Ytg z&f)+6|NOd385HJU5-^$g?NdI`SSwE##}J9j$pXiDCD@kFnXy7adh!a1GE2F%I>xdT zOHK=cM8TxgCjyQf3MUJVIf{!ueoCBrn4#H|k0JV+TD{o6V~>EQFnGH9xvXzopr0EK5GJOBUy literal 0 HcmV?d00001 diff --git a/flags/il.png b/flags/il.png new file mode 100644 index 0000000000000000000000000000000000000000..0e7dbe9b758465889476fb980dd1b5bb2b8582c6 GIT binary patch literal 156 zcmeAS@N?(olHy`uVBq!ia0vp^Vn8gw!VDxI9G)Z!q*MZYLR@otuDRr%e*gLR*YAIP zOU`aR`pPcjWOCb;@~JmF7Tsg8*zy1Wf4^^Y-GJ(iJzX3_IIbt(=w;wB7HmiqWm>S| zpw?7{R~J3MZxOPvz7QdzEgi|r#c3)$eXlIXfrck(4FB|s*o65vHUYIWc)I$ztaD0e F0s!>~IduR4 literal 0 HcmV?d00001 diff --git a/flags/im.png b/flags/im.png new file mode 100644 index 0000000000000000000000000000000000000000..008e9f747d8eaef4eb861265fc434f15d098aff2 GIT binary patch literal 268 zcmV+n0rUQeP)DsZi)t8^l!mY_5EX8to%12knK2W)K zYsnxd%fFhxl9$D>QmO4dw9rQXudxu?y+#brAwGCqT`7a*1E;D(%Ct4F0Rn zP}yNI!y{+< BR?`3g literal 0 HcmV?d00001 diff --git a/flags/io.png b/flags/io.png new file mode 100644 index 0000000000000000000000000000000000000000..410e94ef6684d3076a621bdafc5fbfce79274612 GIT binary patch literal 508 zcmVhKrxYXMnQ7%-|tIj@2?o?&|Qoq?1~6 zt9OmMsIkHH_W4k2rp9!Fu)WuzvC!7t>PBLkB~^0(D1Q9>{n((y#&4F?rHG7*$WHEhHuC>$=f-iR1ESS^WMM#{R0}ibwo;pfMm1(x9L+uUJP;X1Al_d)rdM4fS*%e39?<>K(^s;a90|NqVrCIA2c4Q7U%00001bW%=J z^!hgLV*mgEM@d9MR2b7^ki!8O=plg<$ijg%5Q=g#LwN`ZRuN`NSyo97GzmdQJ_$B< zZebyQGzngADJd=<7AXNSn1l=tz#xwU&_eUI((#hw~S+{RuyLZay(DuW_^}oN$=+XAV!sb;~<3mHs>Cxs%zkl|?z?#yh_rk*e|Nq(m03)A3PEGDk0001lNkli*&fA-&ruY2(&Rli0e6R^Z)<O}i29-$phf#vFR{&)hJYD@<);T3K0RZpq7}5X$ literal 0 HcmV?d00001 diff --git a/flags/je.png b/flags/je.png new file mode 100644 index 0000000000000000000000000000000000000000..13e477ce700538a060172bd05c280e7cded0774a GIT binary patch literal 372 zcmV-)0gL{LP) za)bQr@BjY(|<`Owzx#)SIi z;pc8{+EgX}{r&d6#pzpb-x4nS_3q#qG~y~mokG_aO1bf{PDV793eZoNac3SeKJ|x<4&Xf$@Viq6 z0Zq%vwq7m4-dM~4F++Abq4vca%h~x+WzL@1+1aI|vwDTx^<8_{UpKn6-RJ}K_$VB^ Smxv7j0000gQ99OmCM zo8jL@28P*IK*>E;l6!$vfTxRNh{WY&4qh?u=4O}60c_zaf(rI63po^-9<4T>a@h62 zpQ5&+85}MALJb`bKNA=ycra+U@C!0@I{dU?xv+JCbXT74uEPd%`W{-Ayk}<6J`^?e T`(*}BpxF$bu6{1-oD!M<#HKaP literal 0 HcmV?d00001 diff --git a/flags/jo.png b/flags/jo.png new file mode 100644 index 0000000000000000000000000000000000000000..e4d4e9a6a86aab65d39af0298377d3d031e875a5 GIT binary patch literal 223 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!3-oF?)7E^DW?FR5Z9NJW*>F(IWMC5sHlGP zq8ZOxCv0x+JSVJi)WZFF&$Q2nPu}v4nZ+w(5^rI`!Zk}rdle8|-uM6i|8s(B3{|#3 zWAftX#{;PdPZ!4!jq|N%-Gv$qc$@<-SBLKSAIf=bGVjJ8(R(FN?uj#DwCHRQX6=#q z;K}50|J_WH61Qa^|13#Z@n91BluHE+e`5EDex0b;M1& literal 0 HcmV?d00001 diff --git a/flags/jp.png b/flags/jp.png new file mode 100644 index 0000000000000000000000000000000000000000..ae6d0e9932935745ddc3f536ece90291ee5ba5ab GIT binary patch literal 215 zcmeAS@N?(olHy`uVBq!ia0vp^5bP0l+XkK89h@< literal 0 HcmV?d00001 diff --git a/flags/ke.png b/flags/ke.png new file mode 100644 index 0000000000000000000000000000000000000000..5714b6752dd5ee9aa12f1694c93d3eec59ac6b1a GIT binary patch literal 269 zcmeAS@N?(olHy`uVBq!ia0vp^5qE9*=ArBDWjl$4ZHmX?>o!e%irI8`{EFf`mC zEzQr*U&g?2&fUG5fx)=d7zm!soVgolJ`kiaC<{fD0~r~fE{-7*m#3b6$mdKI;Vst04GIWIsgCw literal 0 HcmV?d00001 diff --git a/flags/kg.png b/flags/kg.png new file mode 100644 index 0000000000000000000000000000000000000000..a07a247575576bcd6d6ffc19e2944425d8ac478b GIT binary patch literal 278 zcmV+x0qOpUP)^LOp z7cB8*9Pw=$?o%J>Au08Y6Z3x-@^cyNIwkUM8uD-&?M5QMJPkTpjXk z8tXD9{MZEaiWKs38u4)%^oJDpo)GIVC+HF_>@_9uVjSrjE9em|LoZM)0001SNklB1NJoik9;6{7wJgCYvz{KMXPPRi0e=kE@mLUdn;t+ c&;NYq0bPGDM_4I+RsaA107*qoM6N<$f^@NO+5i9m literal 0 HcmV?d00001 diff --git a/flags/kh.png b/flags/kh.png new file mode 100644 index 0000000000000000000000000000000000000000..bba9b54a6804d683a85f3f7d8aa807ea773bc248 GIT binary patch literal 264 zcmV+j0r&oiP)P000mO0{{R3)Ho!W0001BP)t-sypoxr zhl|ZBM60W-y1KgAK3AcOkHoya&d$!?11Qsjj?Ef3uy=#q11QVE!`n+^)@ppHq@}^Y zz}*2Ror8$n1t_+Bhu{Gw$H&LMud=hAqRohu-l(zMUv%IAB?B&@Y@v4y0001ENkl+S(r}Zzdz`_mzt`M$8Qt3C&@UnDxD(st?#>e>?ACkMTO9lO`tR@X^~)6lL5SFg zSvhK=$JOOge61Exk&UUz^7Z*&hO`VwjGbeDyUX4xUYY>Z|6d-OyJWq~-atb8GMxg)AI*>V4&Iw}RjX3#XT$MO zlT!2X+0gUnU*K+-&kg@1^bONC-FMtSIc;6jE#qcT+of9s81{Uz5l8lVj%b!;84WV_ zVhm2i5S%Duq)L30$+_rDbS_EHQ>ESr2fYduWpud;$teWla;Vt}87b7nK@>zC2X1he zB6=L#2JKtc+Ux1(tnCl~0)5Xd#+R+3`Nm^R4$d9SSURj|Nk#-l?R6=`*n5Bq_l5uEuwx`4Mc8Jtpwy@0;+D9 z`r16R2=`@mLwvCcHZLv|h)s{Ph1-nKB}2Fv!RoJJw6Fi-ra3lGlI*ypyxQD;e;92> p$zr}`p=7>cmMt_bE9Ny}{s0u8EUD=`jBNk_002ovPDHLkV1mVte@_4a literal 0 HcmV?d00001 diff --git a/flags/kn.png b/flags/kn.png new file mode 100644 index 0000000000000000000000000000000000000000..c2fd8ededa83d42a10a3c4d8a0afe4d47e1c7162 GIT binary patch literal 294 zcmV+>0oneEP)=#G(-Z0001Cdiu{Teow_sbge0oJcyrSTsm9Z>_*>#C;S zSYUcP&0bgc2bAl>EXTpv=f?qG?@4zqf%6P5q$iM_iTVM&e!D#HFJ^%m!07*qoM6N<$f(p=fJOBUy literal 0 HcmV?d00001 diff --git a/flags/kp.png b/flags/kp.png new file mode 100644 index 0000000000000000000000000000000000000000..2297b5520e11c1c7731e3f12dff555acd2ac111b GIT binary patch literal 269 zcmV+o0rLKdP)g(<+HSHWI^@)!1Wo-0wdiITz?HwuZEjRw~@$Wc6?j$bxuCee*QToKk{`K|se1re| z{PJLE`_9n#wYl&_P4}Rs?I0`eFgpF?i$#0001JNklg0r+jb|59ZENnM2Eh2^X>od0=AJdHxvTQ;#m4b2vaS8eP1tDIQ8Z_3v*US-Uu< TN9M(P00000NkvXXu0mjf-3WUs literal 0 HcmV?d00001 diff --git a/flags/kr.png b/flags/kr.png new file mode 100644 index 0000000000000000000000000000000000000000..35c39eddcd67b57a454894c8e65b9df5fb65e392 GIT binary patch literal 334 zcmV-U0kQsxP)Q_0$;8QHV`EKCP5k`){{H>|G?Vx9!S2?I_{g-8!qj4cBOKp8O&`btTS3j3^P6jHDMpc1ZK(6i(%@@)T5+q_Jy6+0RRAP?OE~mA00026Nkl;Emf#~9?K)7>m@4>hpBMMxe0(FH1%f-ocSCz1%f0GJ?V900000NkvXXu0mjfw!50G literal 0 HcmV?d00001 diff --git a/flags/kz.png b/flags/kz.png new file mode 100644 index 0000000000000000000000000000000000000000..1ee794a8b7b56951d273050fc615c330e0c8c30c GIT binary patch literal 300 zcmV+{0n`48P)vaWBq zb}_T0UAKfxwviIByn4BBIJ2NnwT_OvUxvG7ce!x^ugU(!3;?gn%bA8K0001oNklv3`B7kl?{?KmwN?-f4)0000&!}^E;~;b#}JO|$ve7PBs!kV zVQdt(P2f6Xd2a7!wsV%ds=v!vqdKE&p?4@wqus%!adgwlgxw XuAQB=js4-h2h z|Nidz^H;=-&hFkNvuX^gS$EK)w&u+dtX)97eZ}k79G$vks8#>}|Lq(kWhP`#00012Nkl_UtP4w3{nFDElL2}v#;SCz|V7m((!Q5|G&Fe0RaKEnkC)Pg0JNN_RJN>r4bhw z7s|j|a?t;DbaZ7@3B~95#?;%H-T$24|E8y<0001I%>Vq+7G})Pm|_= za;zXO{!KgbWi3m zsE$eq+%nU!tk9)4PkmawikU|&gKCb9MP_4xMozp6gKDmTNvV-%!sJ?&;uMwgBFEK} z^`jI0*!64lTvH}hE9WJu2$~czXjL(2*Pjzq>%7Z%4``92r;B5V#O34(M|mX=L z0)93m!FUT=c`BhgB9Ja2!)F#tST6sp0JBmX09HZ&TL6t9DgU0002DNklkh&o42I!N9NTEIfM`9;_Wtiu<|%WM`2OWdARmqXsnNFUx^`FE^!d8Vm;w&d zG&Q%<#UvIXS>#VIaDIT3uy7{XI<~%_F&|ez#AJ_{Qgma6LViJST*MS(wqU6SytT2M z6YV*^K=%cr<$#F8phJ)va3j1Iz$e&zU*Td>9TZX3OZAa1fchO)}QVI4?3@wuK*}$?!L(Ct-A8g*5Qqw`|t6;3NUfqQlJ0;09Z*xK~xyih0ezc zz%UF0P<8L7+nN9Wn>FNWoCoqnAPmahBm!3#XAUCJ(p39NT@-;HGq$xd-X8gq#> z4jHe?H1^%ZFx8nsVgCRB|KC=|?gFZF@pN$vk+_^Z;RvI|3Jt|RW&;mJhHeHScF(3x zN0!|!QxvSrI0F;){Bnexde;2eBNL%gv18`X8!m!ENfr#vEPM{GoD8uY%J(~y($)dZ OWAJqKb6Mw<&;$S=V@dh| literal 0 HcmV?d00001 diff --git a/flags/lt.png b/flags/lt.png new file mode 100644 index 0000000000000000000000000000000000000000..102ea748043f8363cd185af869bb851c28d77778 GIT binary patch literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^(m*W0!VDxuZ6%iiDgFST5Z91aV}}qMhAfwZ>bie- z3Rku8G6JO(JzX3_IIbrbII{8aOewh7AY>Gv(5v0S!y?f$v5`?VhM}xgWAB}Y+$liC N44$rjF6*2UngEEC9PR)B literal 0 HcmV?d00001 diff --git a/flags/lu.png b/flags/lu.png new file mode 100644 index 0000000000000000000000000000000000000000..763ea743a8890429cb9d290e1c670e626acb3833 GIT binary patch literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^(m*W0!VDxuZ6%iiDgFST5Z6@?zWm&=_y7O@Z#69$ z7T())xF-%MrReG67{YNq*}#pBjb};$>%>NeW+9^hh2Czqmy}Ex2Pz{5ptDnm{r-UW|xJeri literal 0 HcmV?d00001 diff --git a/flags/ly.png b/flags/ly.png new file mode 100644 index 0000000000000000000000000000000000000000..73a957aea56a41d5ca3d1ce64ccdf1f871365e68 GIT binary patch literal 159 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!VDx^^%Amxlx~1eh^vW-NlQzMx3{;KmsfLh zv$3)9v17+PJUj#h1dNP~tgWp#Z{Dmt&+R#bFi^)mC6*Z=jh-%!ArhC9cXYE!oDisJ zXDi@ZA@XG**PH5@t!f`cd=G5c)Zeg>qtQ5{frpXdnaZ7sOn;t#0BU6LboFyt=akR{ E0KuFv!2kdN literal 0 HcmV?d00001 diff --git a/flags/ma.png b/flags/ma.png new file mode 100644 index 0000000000000000000000000000000000000000..3047a7ab24af41f80381b8481b545ec818d1d0b7 GIT binary patch literal 145 zcmeAS@N?(olHy`uVBq!ia0vp^5&X$VED|T4t(nt$B=TbG1D#T{ rPNx$qR24O~Mcf}1=q|Xx8oaMSpHssTvU1C|4R%EZtKo)>Z`l-B>?S8_H=O!(Kx^LqNPxS z0*^!B1Rf6M1qN&KzVBZu+dDbr*X!_<#Op6C+<)69#W%kY<}A83r^KQoHhXWG%#}mE z4_VoZ8M75VM7HQPCA7{`)J|n){KJ%ByYZQdqWP~$rN4fQ=YL@Mv)RJD&*2^u&^iWB LS3j3^P60oneEP)XaVg?dlXkTTGWF~kE1gQaPG0001iNkltWN2vn{g sL&J!SOt4QL0$;ycsf#Xt%et!j1Xr{-S!A5lHvj+t07*qoM6N<$f`6!TPyhe` literal 0 HcmV?d00001 diff --git a/flags/mf.png b/flags/mf.png new file mode 100644 index 0000000000000000000000000000000000000000..0fabfade72d988026e142790604b095898b9e338 GIT binary patch literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^5i0fNT%m4rXGbm4u-Iy~Q tC@AFV;uyklJvm~lmdTXH#>O}i29-$phf#vFR{&)hJYD@<);T3K0RZ@*836zQ literal 0 HcmV?d00001 diff --git a/flags/mg.png b/flags/mg.png new file mode 100644 index 0000000000000000000000000000000000000000..5fe2a14795ffe8ebdb83aebe9521c32b69b2aecc GIT binary patch literal 98 zcmeAS@N?(olHy`uVBq!ia0vp^5i0dC)qyPW^Gt^myHk^3` u6cq7vaSY+Op3K3U%D`x}BGkdbh?Qa48u^DBss}rO@(iA?elF{r5}E)NoEWzN literal 0 HcmV?d00001 diff --git a/flags/mh.png b/flags/mh.png new file mode 100644 index 0000000000000000000000000000000000000000..e828622522db2525de5ff0879ce509cb685b6668 GIT binary patch literal 344 zcmV-e0jK_nP)u8CRil2M>Mbu~5VmthpD4vF*%ptR}U@V7D#TGCC00006wml=*|qWJ!ASyx(fdSSUh4*#bhAgutzc9~!lfX49J1c1`W7>CFz zWHo>eQ6-&h4Dx9O{oo&ALNI@Q=)D{PkKon?UFUp@qx=CJvW)hqYwO14mJ`4tcrWMk zoXhV4nSy>+0<|=gSSGy$gy(mV$IisykrrSCvYY}AAx5H@>?QlQr%7B mw8=lenHf}O)R|@F*8K(tVKiYW`8`Mg0000=l literal 0 HcmV?d00001 diff --git a/flags/ml.png b/flags/ml.png new file mode 100644 index 0000000000000000000000000000000000000000..ec87737bfd4001cb58966341a6efe8d7104b23af GIT binary patch literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^5i0e5)wLcfdM7COS*f1*r s1%*6a978y+Cr516GMUoY*cd0mpb{znFiLRt3ZN{5r>mdKI;Vst0Co8mJOBUy literal 0 HcmV?d00001 diff --git a/flags/mm.png b/flags/mm.png new file mode 100644 index 0000000000000000000000000000000000000000..cb48ba7c0e7e0cfcc5787b17f747d5c7bb9bc756 GIT binary patch literal 274 zcmV+t0qy>YP)&^ z{r&&ym`uA%{Nv@1)Q;;lMfb3_zQ?2PQedOpqV4$YZO3eRyd?h21@2T~>oP)b$Zq`L z;yJW9{@FzH`Ro4w{%Xf*|NsASgf)1(A~doy>L@w>%K!#D4-fzV0CP!1K~xyijmudM zfFKM-(K-tbsHjxI{cqEeDjE{+PxCkd7Eka8>e>T+?}0FU!c0}eP~8jkQKXbg5R>gh z=gS3>k9ah4>44T{ftwYj-2}SbKeRMqvgH^6<}|_B;!cPzrb)oE#+W8!A4r|^fOlS4 Y0jy*uoMDg|xc~qF07*qoM6N<$g78y+%K!iX literal 0 HcmV?d00001 diff --git a/flags/mn.png b/flags/mn.png new file mode 100644 index 0000000000000000000000000000000000000000..193127372217755786f2c7d8cfaea17ee8f89139 GIT binary patch literal 266 zcmV+l0rmcgP)v%|$2LZ5-8IAjmf>>6;JWfEULw zEYw;e*k&HfJ}KXO7~+K$>YWeej}!UN0@GO{6a&yuLmH%zO1u9pkr-gY@$iSQCod+~o8x?Qd|&chTLBBN03R!WOca8p zEebaX<`Ce~WjWG+uqP8#*#OWc&Jg5oWDulT^cd(NAh0UmSSI0E)inXQ0lL^ZwCfwm Q`2YX_07*qoM6N<$f?ot_H2?qr literal 0 HcmV?d00001 diff --git a/flags/mo.png b/flags/mo.png new file mode 100644 index 0000000000000000000000000000000000000000..145f0882cbff2dd462bbcebacf54c72027fb6613 GIT binary patch literal 268 zcmV+n0rUQeP)>keYyfy(`_oiB0001INklXr*0#VT6b SR7kA=0000=13;@sof`Z7$Vv$ee{kBSae~#7c`32{*?RoA+O7f_*4`TQ-2##D60{{R307*qo IM6N<$f_TTI761SM literal 0 HcmV?d00001 diff --git a/flags/mq.png b/flags/mq.png new file mode 100644 index 0000000000000000000000000000000000000000..6885baec103caad2a5dbdbef27a8f2a1495457e4 GIT binary patch literal 338 zcmV-Y0j>UtP)NRmZ4bwXh&Z4m<_BkANTl1l(sf0`6`LPe2CA1wf$E58$X}CqR?7P~QPP kr9|g@mGO8u0Qddhe?9ajb|7ieHvj+t07*qoM6N<$g8C?xZU6uP literal 0 HcmV?d00001 diff --git a/flags/mr.png b/flags/mr.png new file mode 100644 index 0000000000000000000000000000000000000000..089825cb378d7c8718fb9c4f784bae999158c470 GIT binary patch literal 287 zcmeAS@N?(olHy`uVBq!ia0vp^5Kh%@$=( zHTr*qK_*xC{6-{>!7}u`AnqtJ1Y|M~kT(M-E640(HPZ!4!iOWkTT<2;q z;Bk#DeXuU-wa2Ib^_fSww%t-^ei&DzpsnD~vi+d9l=zl8o=Infd*;;UpJ7%Iczb)B zaBD_mQtFJt@z$j1CM5TOP8sWZSD{R$*G}mY=f~c%pDb;bE!e jdC%ZK6`kM1{~u(`(bN{stU4_NbOnQ_tDnm{r-UW|@C0VL literal 0 HcmV?d00001 diff --git a/flags/ms.png b/flags/ms.png new file mode 100644 index 0000000000000000000000000000000000000000..4604dc67fd057e13375eff62774a74cb63f5ca1f GIT binary patch literal 331 zcmV-R0kr;!P)Z-TWEoUliQt;QTAvwD{&MUjtIC2nCn;Ge7!GlnTd zklEMe2sv@2vC%zpMni6r^UTuVYkFF7t5t2N0HVFuJy6+0RRAP?3F>&S0001{Nkl=`{`B>(siDEHtW|NqYvD{=GYn*aa+I7vi7R2b7^5ET{X5QPFUB)}lb%*T#Zf}4$>irHUIzs literal 0 HcmV?d00001 diff --git a/flags/mu.png b/flags/mu.png new file mode 100644 index 0000000000000000000000000000000000000000..aba837fcd30512e8dd233124c1189da0d8ef2c06 GIT binary patch literal 106 zcmeAS@N?(olHy`uVBq!ia0vp^5gTe~DWM4f Dhu9k1 literal 0 HcmV?d00001 diff --git a/flags/mv.png b/flags/mv.png new file mode 100644 index 0000000000000000000000000000000000000000..82546eb23b9aab906e5d724f63a770c1b9554302 GIT binary patch literal 178 zcmeAS@N?(olHy`uVBq!ia0vp^5I8r>#g&)^)u92T@o-^Y!ROd)NbYJ;us=v zIa%NUqr?iGgZ*q5R4ZoOjNIt?p|yKzS)9ULjEr7vyp}B78~GI@IRtm}E1R=$ zIkWL_GBC<9vmFpn?&Ow?W*5w{Q3e`+PEgHwo~gx@)Bk{+I8PVH5Q)pl6Iz+|I62K& z`WcTs5Epp%G*wiiH`&)u`nshC9V)- z%QSe9@L)0%vt3?CgGsXtpMx)_q)daO9Q%TH76#t+n%~rxM&AP3#Ng@b=d#Wzp$PyU CNIi}K literal 0 HcmV?d00001 diff --git a/flags/mx.png b/flags/mx.png new file mode 100644 index 0000000000000000000000000000000000000000..97a92445f4011a274967e3a995f9e4cfb95e87ef GIT binary patch literal 252 zcmVGc~sxm zz_6i=_weKU`}*nP)wjB-x|VU+*u95mOQp)b?yIu@|Nj7JN6rx@@nX(L00012NklP?Q3#%j>Cxfsc zqY!pUR(4JS4gq#<>~``;9g9~fFiH%p6eE}wrUXi_{E5?%Ac1#wzAu8Sa%bSqFlMg;?8H!DyE1Y`mM zWzVJ(3kYE&8(6m;EbEz>+C)Xn00H>j-T(jp(;_4BySw0KX8{0a+dYd$0001hNklnbO=cyq60xy9B6#}L; zgf+I|A#lKY!s3R(l{VZ34rJH1Txrez&=`100000NkvXXu0mjfVF7iu literal 0 HcmV?d00001 diff --git a/flags/mz.png b/flags/mz.png new file mode 100644 index 0000000000000000000000000000000000000000..ce7603cb6184124f9fcad2fb866a5a4ac5148a64 GIT binary patch literal 268 zcmeAS@N?(olHy`uVBq!ia0vp^5UMFbuMrmzqC^M}7ZndnN|PISS^FljYYeY~#&Nxu|CL z^9pmUcTf?h^i3b3@5- z?Td@n-qK*6^@KNC=3AhnLixF`DO_3+Q|I1)nR8!G;*5rio1^z)1Bv%c`lHF z0}h9aR&K{%^*q`a^zXmEZq}lZimV;#M|TvoRYnV5{9s-8W_F?Do9#Qapfthb*#LxG~b^AGF0509Q-@Ig6aPV*_t g6+mMBhi7$VyCO7}UXJ;g33LL3r>mdKI;Vst0Jsfu;{X5v literal 0 HcmV?d00001 diff --git a/flags/nc.png b/flags/nc.png new file mode 100644 index 0000000000000000000000000000000000000000..6c84f1cfca1ac3cdcb5e8fe7f5b7510b4d1fe334 GIT binary patch literal 298 zcmV+_0oDGAP)imE(ZB%X)C2hB00##EQA+>@i##xj zDt%fTGeQV~g(=3Z15i+Ayq5>>+yI_EU7lSz`sM)bK{Wt1tpJrn-9BjZ0001mNklO3`WsdMGNv*M(9vd^ZsusMHdbl>s@5?oteOWC-@&6l>*>_isz(HGjL!w zh(066Pq4HOSiuEtE=w1zTi3cvKh`^}T~9F7$#_|B;z9O_2ftpFmPXW0TC}lr0kwib wJxa7(PU7p)HS3=4`2YVu?*{D$L2Lmpti^$P?L1u^LpZJ{ z|KMkqm+(k@$JTTtM`2^*!*_Rgn_pkgGD+Ow%3icg-*vIl%R(&yV4hDWp4!%U!X`uzJmnPmU}{{VS3M~W|V0001gNklL@tl+PM|0N4fy*Z?cf zRe+C0)Ic_AU^Ng@(i$sZRK4^)&|seyr`SeEU)?X>dpKh#h#IU}nwuFJWI~-U9!Ur`1}b3iboFyt=akR{0Hhon;Q#;t literal 0 HcmV?d00001 diff --git a/flags/ni.png b/flags/ni.png new file mode 100644 index 0000000000000000000000000000000000000000..20ef0181d8169ef58e2ebc63615fdb3f6b1cfe17 GIT binary patch literal 214 zcmV;{04e{8P)OWa-~9XXtIOf|_2aF{ z+o8N+{Q2+u`0V}s_NvV6|Ns90XT~g}_u&8l07FScK~xyiW01rR80al0js#eQc#*jb z5(ps5z|P8z#7CABWa8mq#vvyr%*Z8%Lr#QWf>RV(4%u=(0X7u345Bat03y~XFVd^e QJOBUy07*qoM6N<$g5xA?Gynhq literal 0 HcmV?d00001 diff --git a/flags/nl.png b/flags/nl.png new file mode 100644 index 0000000000000000000000000000000000000000..d33b631238886d722918fbc7e6a07a1a621e9270 GIT binary patch literal 113 zcmeAS@N?(olHy`uVBq!ia0vp^5mdK II;Vst0MyzYxc~qF literal 0 HcmV?d00001 diff --git a/flags/np.png b/flags/np.png new file mode 100644 index 0000000000000000000000000000000000000000..4537d4b827e5a3574b0460ab86301643bbefde93 GIT binary patch literal 316 zcmeAS@N?(olHy`uVBq!ia0vp@KrFz)3?zTmvT_5dgaDrqS0G)jnp~lh9IuhPOfJY+ zzmCCj5(t@3TrcByRn(5bd@_UCBt^qE7PCnVQr!h=>6L0JcO@Nei`W#ZrdjCK+?8^C z5?OX%FYr}a@Avc9AKAtK{qghT;>{(hsdq$d;u(7qfp!R$1o;Is{QmRl&l71)<6r-* zWT(UmegCs~$$O9!D?MEtLpZMcp1m#9WWeKkahAx@Z3~1JzBK*+fBK;tUB7eB&h)ub z5?sGGv2M<)q_*O9E=!ib&W{#LzF=0^+4(!h`AnmdK II;Vst0K64`iU0rr literal 0 HcmV?d00001 diff --git a/flags/nr.png b/flags/nr.png new file mode 100644 index 0000000000000000000000000000000000000000..ec3833d4944d6acca6c3298473d4f420ced11635 GIT binary patch literal 167 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!VDx^^%Amxlx~1eh-=%dL;wH(SN52g-ne<& zp*aeAN9=YY_h({7<3^%hN4X=h~kk^SU_vet$9 QKm!;&UHx3vIVCg!02?wqY5)KL literal 0 HcmV?d00001 diff --git a/flags/nu.png b/flags/nu.png new file mode 100644 index 0000000000000000000000000000000000000000..1073fc2542244922186b209acf1f1cafbb8bcb70 GIT binary patch literal 290 zcmV+-0p0$IP)YS#tdy=HG$tOvFDM)_v%+gwPomFs}04QkSYkJv3Rs7Kwf~pYq0001eNkl3!d zZ%Y7kF=$mcO{dkoF(&{xsuHabEz0TuazFy(zK?*+0p@L1x|^n2>7mG+u*QY+qGh4C oB_NK^o9p_#8A$@}ANdpT0fpl@vE~Cp;{X5v07*qoM6N<$g5uOew?;!_p3&9Avna%>>fYF$Xqo6 zx%vXEeKb;4A+%DBowM0~&U`q5SJtwe#rd)Cu?!3`0P+aejY_s5R7y6TO(O(7z!^

`vxX2(lVc?q))OE`v3nwLj%KYG3n0!Tz8-qzMd|QAsXkCCrq69FqvH_$bzA{ zr^iBgy@efX(ws#+Oi2|Y1%{tFHX1$J+%(@gLSVkAQjU?4&K)Bm3x*3Ue;Vd-sT4Bo gV9Jz9FwkINSh&t4>h<5yFrdKzopr0A%=DlK=n! literal 0 HcmV?d00001 diff --git a/flags/pa.png b/flags/pa.png new file mode 100644 index 0000000000000000000000000000000000000000..53d24bd9b18f95c4b46cbf362eb064c3d89f0bad GIT binary patch literal 202 zcmeAS@N?(olHy`uVBq!ia0vp^5Vr!8gUh9B7>)^pUXO@geCxD C?obf` literal 0 HcmV?d00001 diff --git a/flags/pe.png b/flags/pe.png new file mode 100644 index 0000000000000000000000000000000000000000..5cc73adda9a08f6343789075a0d7085682c4cce8 GIT binary patch literal 88 zcmeAS@N?(olHy`uVBq!ia0vp^5+bf{SYL0C z#s0r&|Ni{jtCP5mk@@cD|MA_Vh@{?_hyVQf{K0T?k;ec3|IQI6zf_>D00017Nkl)xeMU+iU zjF%5XLWDz>S5lH!7K`P~Lb9?#%$O2#avbdJ+(^!)Ls$U-y;v&|z2&2-00000NkvXX Hu0mjfk7Imq literal 0 HcmV?d00001 diff --git a/flags/pg.png b/flags/pg.png new file mode 100644 index 0000000000000000000000000000000000000000..5aef454eaecdbc3e3ce170bd4aca6ba4b9b349a8 GIT binary patch literal 318 zcmV-E0m1%>P)%v zCMGvGHy#27P6iHsetw>wp4?0z(jX*u3Ksj!76t+W0RRAz3>v==Blo};H5VGt8ztIA zA>v~nQBhGf1PRFyC9Dn~0|Nv6(H0O54$l-N)h{FLkQ>esCIA2c0P3!R0001)Nkl3E_m?0aSg$bHwlUb{#JTQ(vBsCM&?X zGEI6Ovx1jYnGUmUM^PbtA3|#)YQ1ND$&OX5e2tz{;w(4@mf;_n+a{^A0`O9RVkNZA zsi-aBq+n(hBm325=irf+D!B{T^XO>3sX$(*irU&0Mm1dO#Z3{vi|`z&ABqqmHJ&3_ Q_y7O^07*qoM6N<$g1-cD^Z)<= literal 0 HcmV?d00001 diff --git a/flags/ph.png b/flags/ph.png new file mode 100644 index 0000000000000000000000000000000000000000..a73871c4716ff7888fbf9c3f2e8dc05572f7ca3e GIT binary patch literal 303 zcmV+~0nq-5P)h}KQ zcm4F}jT^Z$P-I^(H?z49iz1I+Q)3>ZDr62Y8SEwGd*=xd!_CxURml)I)8`1+*mtljFaf75=E8DKOVT8oDLf z@MHmyGFClY{rv>xx??HjtLYP14&1a*et}Zn1UpviHr$0B6M+B#002ovPDHLkV1kX8 Bnu-7b literal 0 HcmV?d00001 diff --git a/flags/pk.png b/flags/pk.png new file mode 100644 index 0000000000000000000000000000000000000000..3149ca640c59bcdeaedaed8dd3bf409854965b3e GIT binary patch literal 267 zcmV+m0rdWfP)!A?~_9IgNW literal 0 HcmV?d00001 diff --git a/flags/pm.png b/flags/pm.png new file mode 100644 index 0000000000000000000000000000000000000000..88932fcb50ba76e7919880eadfc4660877ad3499 GIT binary patch literal 441 zcmV;q0Y?6bP)k>JF`c7001Z(}Hdlqi_NG<8ihb#pC^vH*_51e3`cgPJ#PGd72K3x}=%k;wY= z^Zm^Lx}XeJZ3c?ekXc00000NkvXXu0mjfEl|zs literal 0 HcmV?d00001 diff --git a/flags/pn.png b/flags/pn.png new file mode 100644 index 0000000000000000000000000000000000000000..8fc85f3770ca39c44bb34637651c6d3489c75d46 GIT binary patch literal 366 zcmV-!0g?WRP)y2V%;RSZ8+pTV;u9``S3gCfWeS)1pw(4OF`eYrom>FkfXN+@d zVYP;wAtiYZIc@7mL!PGtSScU}mGS{7jP%V)YUWIW0fIi~Z1B5GYWtzgmB|vw+{sZ3i1i^1IX2=bz2><{9 M07*qoM6N<$g5J-VC;$Ke literal 0 HcmV?d00001 diff --git a/flags/png2js.pl b/flags/png2js.pl new file mode 100644 index 000000000..d0b24f572 --- /dev/null +++ b/flags/png2js.pl @@ -0,0 +1,39 @@ +#!/usr/bin/perl + +# Purpose: Generate javscript with Base64 encoded images of flags. +# References: +# https://github.com/antirez/dump1090/pull/101 +# http://stackoverflow.com/questions/11301854/perl-convert-image-to-base64 +# + +use strict; +use MIME::Base64; + +open JS, ">../flags.js" || die("Couldn't open ../flags.js for writing."); + +print JS "function getFlagIcon(reg) { + var img = ' HWwJCNOB}6H49d0Rn3*ghM&3ysg!rUY7Is{_|#MG(NkHAYtAG z4+c)^8B*f85;f)R{a1_i30Cl?!uf%y_w;6F`^?P$|Nj6`@a+HqgSK!g0001LNklX6ficfyEves%og=3=XI|?cqxFs4a^;I$~|9<=SAiF|^nVo}?@tURg_iMK} z%4}8v!R3AD1l9ik|Ibim3p7~ko4q-Ziu81G4AD5h^sJ>&g8`3o;O6&@8@P)9R~xak zaouL!U#A>sEtl1DNSdKAkHKL#C&N^8hDB+jRSX7Sey8gnF!|4N%++c31zxY?L5wBb l*$d9iFr8o()@W8=$|Ub*=v(l@|18iF22WQ%mvv4FO#lH{QlbC= literal 0 HcmV?d00001 diff --git a/flags/pt.png b/flags/pt.png new file mode 100644 index 0000000000000000000000000000000000000000..83d60d687305c967c45628318098147d116b40ed GIT binary patch literal 260 zcmV+f0sH=mP)HXG$9y#2qpX^-08^0w*oFY&W<%gZ3f_1KwynvutN?VL03vk&il+dznVY4E z5c~lE>`gr1TL62a0MWw$z{A_qZ!OhY6W(@P(vkpaJOBV@0RI30R9S%{0001ANkl}z33f4FMo}yhY%H9TA}lh(=o0+mQmlfkTpXh45`1Ekf;?$yS0%)%Q0000< KMNUMnLSTY_HeKTY literal 0 HcmV?d00001 diff --git a/flags/pw.png b/flags/pw.png new file mode 100644 index 0000000000000000000000000000000000000000..b68dc97279f88d8ae53a2bb2047c8e6830781bd2 GIT binary patch literal 244 zcmVArCrqx>|K0#ft=2cZ!$bf8098puK~xyiW01uO z7$}pHWEJIN62>OQCM5#`EYcWKoPshCz=0vf4waFS5J#61gGtFS;Fc0Wm*T~3pe#33 uiU-s2d=SSANMrLdzbLa1BNf9C6954CDJ>G_)JxX@0000*>_g)aK^qm%@|#`}^v%uSJPq*Vos*(WmF<=a;;qS(|a>FN6V z`ti85s=ea>|Nj6usMRYTX6pJD0000#Nkl&&Ju%U7pM3I0H6CZ~V zvH*%KFFPlt{6TrP_h7arzU~{UNX)A0000P)t-sxN(N9 zT662y-O;46nlw`S_4oh&{-#W4-o3~1;^&SYKf8F0;l$1L>h6&uL&b}n=FZioO=z-Z zeB#Bi0fNT%m4rXGbm4u-Iy~Q tC@AFV;uyklJvm~lmdTXH#>O}i29-$phf#vFR{&)hJYD@<);T3K0RZ@*836zQ literal 0 HcmV?d00001 diff --git a/flags/ro.png b/flags/ro.png new file mode 100644 index 0000000000000000000000000000000000000000..adf2516ebbdf9101d62f57c36668a310ae413448 GIT binary patch literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^5i0e5)wLcfd7_{qurAx5_ s1%*6a978y+Cr516GMUoY*cd0mpb{znFiLRt3ZN{5r>mdKI;Vst0GALJ`Tzg` literal 0 HcmV?d00001 diff --git a/flags/rs.png b/flags/rs.png new file mode 100644 index 0000000000000000000000000000000000000000..2b039ba295491119cd8b7a5f2e00bc075d61c232 GIT binary patch literal 289 zcmV++0p9+JP)kh&o42I!?Fj2xbXmR2Wz5lyZvY4=}d;6!!lYFpU1pg44Ehq39!9V zO84W`Tr1D%cV%vZwN@1Nopx)}4j%;o<{^O}q7tAOKlt%DwbY!p)@rvj0oMXeCcZ~* n+JSX?ukGPvuGFUFVsx9~b z|Nmuq5(YpiSx*kipZ{ K&t;ucLK6V_SRLj7 literal 0 HcmV?d00001 diff --git a/flags/rw.png b/flags/rw.png new file mode 100644 index 0000000000000000000000000000000000000000..1b4f0a74ed1c71fd5613de31f8a35acb0e1c8346 GIT binary patch literal 212 zcmeAS@N?(olHy`uVBq!ia0vp^5V zWt)!dQe3gkmV40^rKNir7v7Cn-O0T0w%+nhf{V}2+Ty)_yNTwqZ3$}|*%sX}T((|# z@foItcX$_F`gMs>A;Fem;XR%9KUqMN9X(wfLnJOIPdLITv7w`|D`|RyKw9E)HAS@( z=Z`n~IgyoV-6Fs*uB;zsz2oSNf*o9sSPEqtW(f&dFo>!$M7>p(NIl*74QLpH Mr>mdKI;Vst0J;!QNB{r; literal 0 HcmV?d00001 diff --git a/flags/sa.png b/flags/sa.png new file mode 100644 index 0000000000000000000000000000000000000000..9d9725820f89cef43cb72c6212c92f1adbd38d04 GIT binary patch literal 270 zcmV+p0rCEcP)8Bs)o6r1#dZUt&V7@hXHLipU1Pc)WrjCHvnukrdz+j0001KNklYfz@!p_#%x?9}4U^j{ USeX4(kN^Mx07*qoM6N<$f*JmB!TP)=RAg3kB( z{Q^_Ec%#}LX2QJC?G9SK0aCi=@Ans7tDBr7HD)l3m|g%;x*=OL2qlBm00002bW%=J z{rwb;+-U#+0E=Zt;QK=Wm=m!~ z;{SPmE&w!bH(5Wn&MN$R1K<5DJM=v&oHOu9BRjTh(zpaN#&<-daSZ~`%awJmL8O4l z5jB<|^h1<$H!N1+a)UGF7wcqD;r)^N@_Fpv^gd0bB7kXgJ+n QYXATM07*qoM6N<$f*k{kR{#J2 literal 0 HcmV?d00001 diff --git a/flags/sc.png b/flags/sc.png new file mode 100644 index 0000000000000000000000000000000000000000..a4634e14e3fe535b72ec0367a405c61cf3f4f7e7 GIT binary patch literal 307 zcmV-30nGl1P)K@k!vIBoWc}~mj z@Pg;EfIIN{L@yTIEeeBGxqP5GBB43emP&|(;&}Um!oCU2HIddvFKhq+002ovPDHLk FV1kUciHiUL literal 0 HcmV?d00001 diff --git a/flags/sd.png b/flags/sd.png new file mode 100644 index 0000000000000000000000000000000000000000..20a7572e88c27ed2c93f09f504ff31cf789e828e GIT binary patch literal 242 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!3-oF?)7E^sgMAl5Lbpgb(KWzX){_lOZ6DE z`I}AkIr23b;*{7+^|Gc`Dko_(#4Blc`F{QR{gki?0}B&_yVN>Gqsz~4B`mM<_tj$% zVgImx_o`K^7>YFi|NnnUzyxUUW&ahAfmEcYi(`n!`K4!13OP9Nv^>1=J=MUZ^8fdc zwxUT-9@y7k_4Te_A*htj@MI<!`=h(AJ`@sQ`sNS3z zOPv3mVPMEwo^rR{6sSPO)5S4_<9f0OGt<=vCL9S1_|CI(L@>uHG$@KlF8CM_dg*{J Yg9wvnyyTaB6`*40`jHDDRp8ziw%elp6 l*m6D-9s%JlR1xx?FspTNO? zmpxOMQdC=}tv@k+r|9Y(fO9G(MRPb)nUS1nRc)x+OI_JRRRAP?Amd350001-ai4>g)~qFt;-Zi z0&T1lu7Gm_W6r%FG2+6xFA!pU2wfL)EKK z|8Hefq}%;|0ZsGvba4#PIDhtxCtrht0PDr|9cPU1{a>ZlqFS>1%UbQ$a|ezqRL@^| zK<)XYrF?GLn=Pk2mdK II;Vst0MyzYxc~qF literal 0 HcmV?d00001 diff --git a/flags/sk.png b/flags/sk.png new file mode 100644 index 0000000000000000000000000000000000000000..53136a1374e4b3fabd367e5d9dd2e7137402c9e4 GIT binary patch literal 280 zcmV+z0q6dSP)Tr7ao}yqwd&GyF@>gE(Gd%W&i(HApRy}wNPNM(+|LzBR5^b36Q!Fb&Af>(CwUwXa=evpU eK#FkU|L_J1g(&`dAD2Y{0000Qq9_6=CF|+p7{YNqxxkT$=Scy}M22P|A%$tpOg$4BEM*wVeku!2)>g0uDrE3< L^>bP0l+XkK*-aqm literal 0 HcmV?d00001 diff --git a/flags/sm.png b/flags/sm.png new file mode 100644 index 0000000000000000000000000000000000000000..2aa120883026e0346c0757d10079c3e631dbbbfd GIT binary patch literal 273 zcmV+s0q*{ZP)Awn_8>+|9=^Dfh-|to@NdMYcBAmGN+TD-YN|m`P7*Z4N4Zc literal 0 HcmV?d00001 diff --git a/flags/so.png b/flags/so.png new file mode 100644 index 0000000000000000000000000000000000000000..4984c998dda0c519ff9d86c4be7f6559f60e99cd GIT binary patch literal 218 zcmV<0044v4P)+<|+qvc+k;$WTQzSr~N?D}e=GAt#q2xx4 z-uwOjyw&qhk>Ep#-Bgv}|Ns9%iQS@j|FQr807pqgK~xyiW01rF7-%EG&V)mPj}e;$ zFPETzfFLUyhJ+}Ou!Mv#gD4iG_$4Gbu-d`N&BBaLLR>^hNJJcqgczKlWssl%02$LH U4Jj@oYybcN07*qoM6N<$f(;Z{gOx*`f4ov;4_G^$+K+UVnOX3zx2WoxNFkO#)D(t*47)2*>s0igp%> zg5q-ujBR&48XoF##PqTT3!F=hW_cd=yk~2{xl;CNQ7xNX3{`Bqw=A~DEQ__UdOENUHiZDI+lVU*=1_$d~$k zn&IL~hN5@_4mO6LCmGU%8Q54EisJNFbus)p#jw1cp>UVfB>|KF=NN?6YF~M|)d6To zvZsq@c(aAfYvd1y85}Sb4q9e0E&uJnE(I) literal 0 HcmV?d00001 diff --git a/flags/sv.png b/flags/sv.png new file mode 100644 index 0000000000000000000000000000000000000000..3541252ab7621e4d79dccc14f6448dea590ef469 GIT binary patch literal 235 zcmVzC{`=w2q{Pmr|N7~%!ru7t-h!WStiIi^!sP$|{|`s6(Fsvj0000+Nklh$+=nq$BK004YRL_t&-({0Yd5`!QN1kea>i|7C%V+S$-8f#IO<(ity=Yd!}kCG|DO|71M1fO!>J3T zTs>VJLnJOI3mjpTc%gW(pV@%Jfnhp>6tmL7gGWxYJ>2|pQ-Ojfhry;z&Ju5U&YZAf t*->es$m1uMw}M5U?|?!J^95%nhTE$pGX6{vO8^?k;OXk;vd$@?2>>cSNu2-y literal 0 HcmV?d00001 diff --git a/flags/sz.png b/flags/sz.png new file mode 100644 index 0000000000000000000000000000000000000000..cd14fd55179c2d9a6da81169ab98603e709634fc GIT binary patch literal 298 zcmV+_0oDGAP)j`vwpvtS{QLW~F$qOUg0?y`y=p@L*#NN&3_f1Demw&70001mNkl%`C zyT-XW+yNq$?IBldZA6}p2`tDt6?)rr*RKy3W5gu`w!2dn*4ISAhz9eBBL;wH)07*qoM6N<$g8T1rr2qf` literal 0 HcmV?d00001 diff --git a/flags/tc.png b/flags/tc.png new file mode 100644 index 0000000000000000000000000000000000000000..d5fcb8cc6a460235f1af5790e0520bd89dc7d1e3 GIT binary patch literal 312 zcmV-80muG{P)YS$S!8o0v9(;w8Z-TY=-QhS< zi;}Kccr1_FUNs7(`>^biM+nOSLgp{H4 z1zA@DAybt{j=_L%mJ z9RP>;%|Z}xN@i0d&PgMX(P7}Qew^_JWO s3JQ6;IEHXsPmb8CWiq9)u`y1BK_ycDVU*zP6+l@APgg&ebxsLQ0I7BtcK`qY literal 0 HcmV?d00001 diff --git a/flags/tf.png b/flags/tf.png new file mode 100644 index 0000000000000000000000000000000000000000..fe7c5e8c843671da5085c2508d690d4b308ec4f6 GIT binary patch literal 276 zcmV+v0qg#WP)Zb#HIZ?0j>U0Ej7V$FbuT@+)YqnfJ>uEcpkZ z_+71(lGG2}36&GQ7pDD!v#W`$8O;{}I`=ZVYzl%+iP|m)jDf5TFF@BiHK71dG@uCJ a>bfUao+-ug{!UE*0000S$3QN literal 0 HcmV?d00001 diff --git a/flags/tg.png b/flags/tg.png new file mode 100644 index 0000000000000000000000000000000000000000..f748b9f35c68251dc91246d09e207e28434af18d GIT binary patch literal 259 zcmV+e0sQ`nP)W-fM z^!4+-#@H`T>y@R@Oep{U{;WPTkY6$Q+u_s}IOTDM*fUc8{r%M;L+Os7)+0phnW*~Z z=;wZt+d^N|96ta5|Kd|3*f39sFFvP4GG>x5%(@WL5H$bJ003%EFyE^J00019NklInN literal 0 HcmV?d00001 diff --git a/flags/th.png b/flags/th.png new file mode 100644 index 0000000000000000000000000000000000000000..5f077a43b24b48be6d98c55e9c7011aab694e1a0 GIT binary patch literal 121 zcmeAS@N?(olHy`uVBq!ia0vp^5#*v$!~Xc-{`uwq|NZ{; z*8T6j|Ni-Bq-Fp4=Kk}`|Ni`Dqh{b{W&maY%m4uY|NqfHdk6pk09;8#K~yNuz0Nlh zz#tF=!IQ@d?wv=t65b_FSbRbEqNXiF6`auhX(OIBC`C4C7h zc+IaEL05;LkuD=bk1j)IfqXr|s2%Oa2;906n2R#0mn#0z001O?Ls+8{0001~Nkl*0KtZP_GE{K#N~Q>O3O?XF;jQ6Ieb36jgWR!#>`qjjAM3t g)06xivM+U$>@j*bn&P8-`2YX_07*qoM6N<$f`&GR3;+NC literal 0 HcmV?d00001 diff --git a/flags/tl.png b/flags/tl.png new file mode 100644 index 0000000000000000000000000000000000000000..6e52a84e1f7e0d864168e777a2465c695409ee60 GIT binary patch literal 266 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!3-oF?)7E^se}NZ5Z7bJj;W}qNJ~ra-o4w> z(vpph&BMb(Mn-1u-n|YE4rXR%Q>IMe;NXyzl|6Xypp%o6juQKsX1P0F3bEFFmzT;X zc=P@J`}ga9)%i6N+DdF(9E{)QsXX;n{C`{xXu};9c}>xxG9W9})5S4F<9zEycd-To z4wefyc5h7bKKA?mr4_eXBL078lQ8u+x8^#WQPEJmpNG4llzTG&gNU3Ci-0ZpJ-hWS2%Zod*u+_^Bw&F-16oW|sQ_InUW(fWakb@6$Ptvu+2Mh^ zQhORe5}XfL-FW4XUm0_aQZ3$~*U$m{e64Qc4@2%ISvdxfS^xk507*qoM6N<$f}H_* ARR910 literal 0 HcmV?d00001 diff --git a/flags/tn.png b/flags/tn.png new file mode 100644 index 0000000000000000000000000000000000000000..52c18be49a43235b85aab8ac94481978d4b1f664 GIT binary patch literal 247 zcmVf9fYU>M1$(n4tXQ<@c$t>@Yv;C^-D*==#OV{_yeeW^(tevisKA=^88k_xS(+ z|Nisz=@}~e&eHd*vG8AO{OIZTuC()jiSl@Y>KrZV9WMUz^XC8)MY+^40000|Nkl2?$0RZ@`D|^?VzNi2I002ovPDHLkV1m4va|{3g literal 0 HcmV?d00001 diff --git a/flags/to.png b/flags/to.png new file mode 100644 index 0000000000000000000000000000000000000000..8daac5aa86f8d9dcee9078405c8830b9d0feefb0 GIT binary patch literal 116 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et#0(_4@}`~wQak}ZA+9f%F1;QV_5c6>gA5Ec z$yOVI;>w;bjv*Y^lOwifUH$Xl;lPGf;&V4X`mbxkwoGcrxBmeSip&gY-%6z)?tH%$ PsGPym)z4*}Q$iB}xHc$* literal 0 HcmV?d00001 diff --git a/flags/tr.png b/flags/tr.png new file mode 100644 index 0000000000000000000000000000000000000000..f5050f10dbb6e6feb29e8aa48fcf2af08cb6f628 GIT binary patch literal 247 zcmVUALuti>sVm!Y;@!lAoG}>=P5M*{r&se z-1f7#>rh$kXK(L!e&Y=qg)KszW@LK?rU@74jbbO7~={TN|wH*0000|Nklqu xl4iqhlsv06Kc74YBNl&%3b9Lx(l$u2002WHEA0Kw`}hC=002ovPDHLkV1k4FY*GLK literal 0 HcmV?d00001 diff --git a/flags/tt.png b/flags/tt.png new file mode 100644 index 0000000000000000000000000000000000000000..1bcb5afd859e7531b08cdc53f01c6def2df7c806 GIT binary patch literal 314 zcmV-A0mc4_P)%+c|^!_glz+f!rd-r&K(!QtB5*hN*(7Ax$c zs@2rg(kD9MZhMlFk|H7^0RaJ6SXlDe+@nQM3=9lCJv{&b0L~F6D-W%70001$NklNgyt}J_2dV zKOy5DXgwB{Qr4|`6ckA6b5^eLS8vQ=!Gby zxCLUp|2hHzX@e!i>G(8D4tZO0Jm9y4|@uWKzNZ(j`7^29`4wD|Pu*{BLueoW9rj z)4lY9nzjS(9e?<{q9@#GdLpK>UEwFk#QJK+-^+v}v_dw20a@nh>gTe~DWM4fXa7h& literal 0 HcmV?d00001 diff --git a/flags/ua.png b/flags/ua.png new file mode 100644 index 0000000000000000000000000000000000000000..afe50df1e7fe4c867d3065eb67c1434cc5ef0d8d GIT binary patch literal 92 zcmeAS@N?(olHy`uVBq!ia0vp^5@isqyN=nM#KYyNFzueOnw{6?Dr)_P&?%qvKPQJ~@w`%pOO{#pnyu2@xlc!{) zg-3>8JbdV6QTVIdxBvhD9~;ac;>oxcWEI0r28KU(Se~aJ*93CHJY5_^BrYdUILatd z;N|g{f#;J2LmsE3g@A~-xXTBLCkYL`(@}^eAFc0001FNkl=lC1^vB(J>qmLUYvRNExdU0PbK<7lkxj|K_8T*}xN zw+7i-H@h}`8^JdVhAKa_)UYPje+`jr>eE%HhLgZU;2=O>aud995w!6FJJ~504JBJ) P00000NkvXXu0mjfm6CzX literal 0 HcmV?d00001 diff --git a/flags/uz.png b/flags/uz.png new file mode 100644 index 0000000000000000000000000000000000000000..7b2cec51b502340442c5e0d74e0679fa8023547f GIT binary patch literal 253 zcmVya$`MMYPB=uEYqOxCxxNO}5G(rM^eD%Oj<|KC;JS!O{hqwh*AYPPoe5Jb@>BQVKwTo}0jEuqKOc8I4bN1p(cY5|DHjqyg$G|-}f_edY6z^I0m zdz&d34cEnp=rRQuTg*dni zz`x|3n9ato@$c*9#l_*>)cN@I;?$_RsBqB2nepu1$;idQw3W=VfXKqZ>EqDQyolP_ z*Xrox)v~d?s&d}bwfy}1?BLzv*T?em@7T|`wvJQ3siFV>|Nr0sCRJUa0000{Nkl5T wK#)&_kzWW&fLl_8RYD5I9ZV7=I~}_K02_21Ua2X`HUIzs07*qoM6N<$g1DM;jsO4v literal 0 HcmV?d00001 diff --git a/flags/vc.png b/flags/vc.png new file mode 100644 index 0000000000000000000000000000000000000000..7a6ca359629cf34a6cd5a1abf90c449beebc0fa4 GIT binary patch literal 172 zcmeAS@N?(olHy`uVBq!ia0vp^5&X#Yv#v@S+}K-f z&U{m5t~1BEkDPN%3(j?(y=KdC?pg-R^B*prEt`zz1yArfeXs3^<;CVBmT}GpEE#r2 Wb*xs*eIW=mi^0>?&t;ucLK6VlWI@0H literal 0 HcmV?d00001 diff --git a/flags/ve.png b/flags/ve.png new file mode 100644 index 0000000000000000000000000000000000000000..26308e5971b6d3ab9484a004b434d4fdd8d7de03 GIT binary patch literal 220 zcmeAS@N?(olHy`uVBq!ia0vp^5io6~DH8vD;&uOS`L#o-4iG4vk3q!?ig`Wn$ SqJx3vGI+ZBxvXYS#}6f35sgT|y7^x)zrMUgUa9w|hSvwD}LvC%KlA=hG;=cb|Zqm%oY+Ic_%$aXopk)&cfDgd~wB547Pf#jFlR(~G zfOBg}7z=?BHhb?bAjS~)RMoM>c(g^)_I*2^AZ8H1VA5Pktx+D~{mjU`k6@%+ojbu` zKP)FM9brA0Y~meZ^|a;C$zn4|IW?cnL`y?v2^q>|F9 zHX|@-%A+&u;>EUicXfDS+Ok01!gGDI&)Kz4;L)J?_w=;Q&;S4bHd-~0Mjs)C7F2!_yS#Z05NCyOuT7tYQ7R5@a@w-g?AtF Ttc!5o00000NkvXXu0mjfcfYPs literal 0 HcmV?d00001 diff --git a/flags/vn.png b/flags/vn.png new file mode 100644 index 0000000000000000000000000000000000000000..bf4abbab4e7f034dd4f30ed1660084571a9088e7 GIT binary patch literal 219 zcmeAS@N?(olHy`uVBq!ia0vp^5r SS&#{6ID@CFpUXO@geCy_icawW literal 0 HcmV?d00001 diff --git a/flags/vu.png b/flags/vu.png new file mode 100644 index 0000000000000000000000000000000000000000..76f3a6b1052d30a83849e1b04faea9a142a10f35 GIT binary patch literal 297 zcmV+^0oMMBP)Wl{$K007buGys)D`*8qF0001lNklJ-pKc z1yUuKuzS4E0@c|}l~j(ntnfJpgx1u=o1Zz(c|XTo{}Juch#QoplW#kc6~ v)vmFH{)4?qx8wJLu$d{9p|FX@xcxwQW4 zgc+X_bH6lo|2})+V^rGL_6cvbtQHo`{rl?8_t}eoZr=IcE%<|P)TJA5KKRFcY3%<0 z|38EB)VG?JF}LNv0S$Ebba4!kxST8?Dk>@>C@3Z@Eac3{^JV&jM^BzUZSW{4E;in< z!QkU(*n03!Vff(!PC{x JWt~$(6972cS2O?s literal 0 HcmV?d00001 diff --git a/flags/ws.png b/flags/ws.png new file mode 100644 index 0000000000000000000000000000000000000000..2ab4cdfc25acc74e18c806218fb5c883eed8e69f GIT binary patch literal 177 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!VDx^^%AmxltF+`h-*OJ@+}8%a+$R7nzhwV z-lys{$vbnYS;VZ2#?4&DEgVM89dix~TX!<)HZW+{pA%H8^pLm&)NAAE;us=vIl1Ed zySuZC9Uj?>7%<$_{}sSGZ(sGxPNfYW?(DV+(S6Tz;Y`KSZnc7H{aFV-TctGq&q!!s ZVd%>H7JYER%TAy<44$rjF6*2UngH0aKluOv literal 0 HcmV?d00001 diff --git a/flags/ye.png b/flags/ye.png new file mode 100644 index 0000000000000000000000000000000000000000..daaa9dbbd897c734ad162c9bf66402b5e5cdbef3 GIT binary patch literal 113 zcmeAS@N?(olHy`uVBq!ia0vp^5i0fNT%m4rXGbm4u-Iy~Q tC@AFV;uyklJvm~lmdTXH#>O}i29-$phf#vFR{&)hJYD@<);T3K0RZ@*836zQ literal 0 HcmV?d00001 diff --git a/flags/yu.png b/flags/yu.png new file mode 100644 index 0000000000000000000000000000000000000000..6037e8b091ad83588eb5224a5cd118226402351c GIT binary patch literal 176 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!3HGD8EPYe6kC$Fy9>jA5L~c#`DCC7XMsm# zF;K^K5N34Jm|X!BWH0gbb!C6REW;?LkSP@Q6)0ru>EamTaXdN2;N9Qz1`Q3Ji46x= zFtgoZ>{(rQU*>|#i68&}|GyYxuu1m7r_!&l8qczRmymE1eh5?}!oVP3z-vFPXoD@# OAO=rYKbLh*2~7ZFq&Qsw literal 0 HcmV?d00001 diff --git a/flags/za.png b/flags/za.png new file mode 100644 index 0000000000000000000000000000000000000000..2398c8362f549b925ee9ae11cd85948cb8a83590 GIT binary patch literal 286 zcmV+(0pb3MP)mB8ph#ob0001aNkl;M1&07*qoM6N<$g6|T0!2kdN literal 0 HcmV?d00001 diff --git a/flags/zm.png b/flags/zm.png new file mode 100644 index 0000000000000000000000000000000000000000..d11147c792b70dccd66c16855728269f5ef881a5 GIT binary patch literal 238 zcmeAS@N?(olHy`uVBq!ia0vp^5KBlCiM)fa~b?= z8I;->JSrF@I~jVj87`MINOdqo7BQ$cF!JbuRdi02A(V`bZlQwO- iR8$mXWOO)=i9vC{w$-WmY}!CW89ZJ6T-G@yGywoTkx4iJ literal 0 HcmV?d00001 diff --git a/flags/zw.png b/flags/zw.png new file mode 100644 index 0000000000000000000000000000000000000000..60f257d64c070ba42d1edf95df4253d267921186 GIT binary patch literal 295 zcmV+?0oeYDP)A4RNgif?28-kqh{dU()IQA`{&;G)Uu@<5!BSwqN1K*U@j|5 z9eZwJ@S&FIwHEQnZuY(#|Ns90006)o4&ERT@{0!l(g4W80x^;ZE_$i30001jNkl1t6|t2R!yCjZ9AvR+QFc>)QCGbuZ~M*9E&002ovPDHLkV1hB-g5m%G literal 0 HcmV?d00001 diff --git a/gmap.html b/gmap.html index 2ce169cc4..66088995d 100644 --- a/gmap.html +++ b/gmap.html @@ -37,6 +37,9 @@ +