From 36cfef5141a24882f24335b5a3de06c3a78d727c Mon Sep 17 00:00:00 2001 From: Juan Pablo Marin Diaz Date: Wed, 22 Apr 2020 23:55:50 -0500 Subject: [PATCH] added flags and pkgdown structure --- .gitignore | 1 + DESCRIPTION | 30 +- R/i18n.R | 2 +- R/input-selectImage.R | 92 +++++ R/selectLangInput.R | 107 ++--- README.Rmd | 77 ++++ data-raw/32/AD.png | Bin 0 -> 524 bytes data-raw/32/AE.png | Bin 0 -> 126 bytes data-raw/32/AF.png | Bin 0 -> 464 bytes data-raw/32/AG.png | Bin 0 -> 481 bytes data-raw/32/AI.png | Bin 0 -> 745 bytes data-raw/32/AL.png | Bin 0 -> 600 bytes data-raw/32/AM.png | Bin 0 -> 117 bytes data-raw/32/AN.png | Bin 0 -> 238 bytes data-raw/32/AO.png | Bin 0 -> 520 bytes data-raw/32/AQ.png | Bin 0 -> 662 bytes data-raw/32/AR.png | Bin 0 -> 283 bytes data-raw/32/AS.png | Bin 0 -> 645 bytes data-raw/32/AT.png | Bin 0 -> 123 bytes data-raw/32/AU.png | Bin 0 -> 565 bytes data-raw/32/AW.png | Bin 0 -> 341 bytes data-raw/32/AX.png | Bin 0 -> 153 bytes data-raw/32/AZ.png | Bin 0 -> 409 bytes data-raw/32/BA.png | Bin 0 -> 449 bytes data-raw/32/BB.png | Bin 0 -> 273 bytes data-raw/32/BD.png | Bin 0 -> 250 bytes data-raw/32/BE.png | Bin 0 -> 125 bytes data-raw/32/BF.png | Bin 0 -> 243 bytes data-raw/32/BG.png | Bin 0 -> 123 bytes data-raw/32/BH.png | Bin 0 -> 189 bytes data-raw/32/BI.png | Bin 0 -> 614 bytes data-raw/32/BJ.png | Bin 0 -> 130 bytes data-raw/32/BL.png | Bin 0 -> 1514 bytes data-raw/32/BM.png | Bin 0 -> 727 bytes data-raw/32/BN.png | Bin 0 -> 1068 bytes data-raw/32/BO.png | Bin 0 -> 360 bytes data-raw/32/BR.png | Bin 0 -> 992 bytes data-raw/32/BS.png | Bin 0 -> 274 bytes data-raw/32/BT.png | Bin 0 -> 1005 bytes data-raw/32/BW.png | Bin 0 -> 129 bytes data-raw/32/BY.png | Bin 0 -> 316 bytes data-raw/32/BZ.png | Bin 0 -> 917 bytes data-raw/32/CA.png | Bin 0 -> 253 bytes data-raw/32/CC.png | Bin 0 -> 501 bytes data-raw/32/CD.png | Bin 0 -> 297 bytes data-raw/32/CF.png | Bin 0 -> 214 bytes data-raw/32/CG.png | Bin 0 -> 207 bytes data-raw/32/CH.png | Bin 0 -> 120 bytes data-raw/32/CI.png | Bin 0 -> 120 bytes data-raw/32/CK.png | Bin 0 -> 898 bytes data-raw/32/CL.png | Bin 0 -> 186 bytes data-raw/32/CM.png | Bin 0 -> 224 bytes data-raw/32/CN.png | Bin 0 -> 489 bytes data-raw/32/CO.png | Bin 0 -> 122 bytes data-raw/32/CR.png | Bin 0 -> 129 bytes data-raw/32/CT.png | Bin 0 -> 1498 bytes data-raw/32/CU.png | Bin 0 -> 334 bytes data-raw/32/CV.png | Bin 0 -> 195 bytes data-raw/32/CW.png | Bin 0 -> 262 bytes data-raw/32/CX.png | Bin 0 -> 704 bytes data-raw/32/CY.png | Bin 0 -> 553 bytes data-raw/32/CZ.png | Bin 0 -> 237 bytes data-raw/32/DE.png | Bin 0 -> 117 bytes data-raw/32/DJ.png | Bin 0 -> 345 bytes data-raw/32/DK.png | Bin 0 -> 128 bytes data-raw/32/DM.png | Bin 0 -> 631 bytes data-raw/32/DO.png | Bin 0 -> 252 bytes data-raw/32/DZ.png | Bin 0 -> 374 bytes data-raw/32/EC.png | Bin 0 -> 462 bytes data-raw/32/EE.png | Bin 0 -> 117 bytes data-raw/32/EG.png | Bin 0 -> 307 bytes data-raw/32/EH.png | Bin 0 -> 397 bytes data-raw/32/ER.png | Bin 0 -> 708 bytes data-raw/32/ES.png | Bin 0 -> 410 bytes data-raw/32/ET.png | Bin 0 -> 869 bytes data-raw/32/EU.png | Bin 0 -> 604 bytes data-raw/32/FI.png | Bin 0 -> 125 bytes data-raw/32/FJ.png | Bin 0 -> 923 bytes data-raw/32/FK.png | Bin 0 -> 771 bytes data-raw/32/FM.png | Bin 0 -> 308 bytes data-raw/32/FO.png | Bin 0 -> 143 bytes data-raw/32/FR.png | Bin 0 -> 123 bytes data-raw/32/GA.png | Bin 0 -> 129 bytes data-raw/32/GB.png | Bin 0 -> 513 bytes data-raw/32/GD.png | Bin 0 -> 646 bytes data-raw/32/GE.png | Bin 0 -> 148 bytes data-raw/32/GG.png | Bin 0 -> 161 bytes data-raw/32/GH.png | Bin 0 -> 219 bytes data-raw/32/GI.png | Bin 0 -> 498 bytes data-raw/32/GL.png | Bin 0 -> 286 bytes data-raw/32/GM.png | Bin 0 -> 138 bytes data-raw/32/GN.png | Bin 0 -> 128 bytes data-raw/32/GQ.png | Bin 0 -> 487 bytes data-raw/32/GR.png | Bin 0 -> 168 bytes data-raw/32/GS.png | Bin 0 -> 1092 bytes data-raw/32/GT.png | Bin 0 -> 317 bytes data-raw/32/GU.png | Bin 0 -> 471 bytes data-raw/32/GW.png | Bin 0 -> 193 bytes data-raw/32/GY.png | Bin 0 -> 410 bytes data-raw/32/HK.png | Bin 0 -> 620 bytes data-raw/32/HN.png | Bin 0 -> 283 bytes data-raw/32/HR.png | Bin 0 -> 511 bytes data-raw/32/HT.png | Bin 0 -> 290 bytes data-raw/32/HU.png | Bin 0 -> 125 bytes data-raw/32/IC.png | Bin 0 -> 295 bytes data-raw/32/ID.png | Bin 0 -> 118 bytes data-raw/32/IE.png | Bin 0 -> 119 bytes data-raw/32/IL.png | Bin 0 -> 325 bytes data-raw/32/IM.png | Bin 0 -> 629 bytes data-raw/32/IN.png | Bin 0 -> 301 bytes data-raw/32/IQ.png | Bin 0 -> 426 bytes data-raw/32/IR.png | Bin 0 -> 700 bytes data-raw/32/IS.png | Bin 0 -> 146 bytes data-raw/32/IT.png | Bin 0 -> 123 bytes data-raw/32/JE.png | Bin 0 -> 483 bytes data-raw/32/JM.png | Bin 0 -> 424 bytes data-raw/32/JO.png | Bin 0 -> 297 bytes data-raw/32/JP.png | Bin 0 -> 211 bytes data-raw/32/KE.png | Bin 0 -> 449 bytes data-raw/32/KG.png | Bin 0 -> 762 bytes data-raw/32/KH.png | Bin 0 -> 549 bytes data-raw/32/KI.png | Bin 0 -> 1076 bytes data-raw/32/KM.png | Bin 0 -> 401 bytes data-raw/32/KN.png | Bin 0 -> 377 bytes data-raw/32/KP.png | Bin 0 -> 295 bytes data-raw/32/KR.png | Bin 0 -> 888 bytes data-raw/32/KW.png | Bin 0 -> 262 bytes data-raw/32/KY.png | Bin 0 -> 757 bytes data-raw/32/KZ.png | Bin 0 -> 845 bytes data-raw/32/LA.png | Bin 0 -> 193 bytes data-raw/32/LB.png | Bin 0 -> 447 bytes data-raw/32/LC.png | Bin 0 -> 370 bytes data-raw/32/LI.png | Bin 0 -> 363 bytes data-raw/32/LK.png | Bin 0 -> 957 bytes data-raw/32/LR.png | Bin 0 -> 204 bytes data-raw/32/LS.png | Bin 0 -> 261 bytes data-raw/32/LT.png | Bin 0 -> 128 bytes data-raw/32/LU.png | Bin 0 -> 125 bytes data-raw/32/LV.png | Bin 0 -> 118 bytes data-raw/32/LY.png | Bin 0 -> 280 bytes data-raw/32/MA.png | Bin 0 -> 540 bytes data-raw/32/MC.png | Bin 0 -> 118 bytes data-raw/32/MD.png | Bin 0 -> 386 bytes data-raw/32/ME.png | Bin 0 -> 632 bytes data-raw/32/MF.png | Bin 0 -> 241 bytes data-raw/32/MG.png | Bin 0 -> 124 bytes data-raw/32/MH.png | Bin 0 -> 563 bytes data-raw/32/MK.png | Bin 0 -> 628 bytes data-raw/32/ML.png | Bin 0 -> 128 bytes data-raw/32/MM.png | Bin 0 -> 369 bytes data-raw/32/MN.png | Bin 0 -> 451 bytes data-raw/32/MO.png | Bin 0 -> 813 bytes data-raw/32/MP.png | Bin 0 -> 1154 bytes data-raw/32/MQ.png | Bin 0 -> 304 bytes data-raw/32/MR.png | Bin 0 -> 358 bytes data-raw/32/MS.png | Bin 0 -> 787 bytes data-raw/32/MT.png | Bin 0 -> 287 bytes data-raw/32/MU.png | Bin 0 -> 138 bytes data-raw/32/MV.png | Bin 0 -> 234 bytes data-raw/32/MW.png | Bin 0 -> 346 bytes data-raw/32/MX.png | Bin 0 -> 341 bytes data-raw/32/MY.png | Bin 0 -> 329 bytes data-raw/32/MZ.png | Bin 0 -> 585 bytes data-raw/32/NA.png | Bin 0 -> 362 bytes data-raw/32/NC.png | Bin 0 -> 518 bytes data-raw/32/NE.png | Bin 0 -> 220 bytes data-raw/32/NF.png | Bin 0 -> 623 bytes data-raw/32/NG.png | Bin 0 -> 118 bytes data-raw/32/NI.png | Bin 0 -> 320 bytes data-raw/32/NL.png | Bin 0 -> 126 bytes data-raw/32/NO.png | Bin 0 -> 146 bytes data-raw/32/NP.png | Bin 0 -> 664 bytes data-raw/32/NR.png | Bin 0 -> 258 bytes data-raw/32/NU.png | Bin 0 -> 551 bytes data-raw/32/NZ.png | Bin 0 -> 460 bytes data-raw/32/OM.png | Bin 0 -> 326 bytes data-raw/32/PA.png | Bin 0 -> 249 bytes data-raw/32/PE.png | Bin 0 -> 120 bytes data-raw/32/PF.png | Bin 0 -> 371 bytes data-raw/32/PG.png | Bin 0 -> 786 bytes data-raw/32/PH.png | Bin 0 -> 621 bytes data-raw/32/PK.png | Bin 0 -> 552 bytes data-raw/32/PL.png | Bin 0 -> 121 bytes data-raw/32/PN.png | Bin 0 -> 1003 bytes data-raw/32/PR.png | Bin 0 -> 334 bytes data-raw/32/PS.png | Bin 0 -> 208 bytes data-raw/32/PT.png | Bin 0 -> 605 bytes data-raw/32/PW.png | Bin 0 -> 249 bytes data-raw/32/PY.png | Bin 0 -> 322 bytes data-raw/32/QA.png | Bin 0 -> 463 bytes data-raw/32/RE.png | Bin 0 -> 1028 bytes data-raw/32/RO.png | Bin 0 -> 127 bytes data-raw/32/RS.png | Bin 0 -> 593 bytes data-raw/32/RU.png | Bin 0 -> 113 bytes data-raw/32/RW.png | Bin 0 -> 210 bytes data-raw/32/SA.png | Bin 0 -> 883 bytes data-raw/32/SB.png | Bin 0 -> 383 bytes data-raw/32/SC.png | Bin 0 -> 518 bytes data-raw/32/SD.png | Bin 0 -> 315 bytes data-raw/32/SE.png | Bin 0 -> 131 bytes data-raw/32/SG.png | Bin 0 -> 425 bytes data-raw/32/SH.png | Bin 0 -> 745 bytes data-raw/32/SI.png | Bin 0 -> 313 bytes data-raw/32/SK.png | Bin 0 -> 313 bytes data-raw/32/SL.png | Bin 0 -> 125 bytes data-raw/32/SM.png | Bin 0 -> 551 bytes data-raw/32/SN.png | Bin 0 -> 184 bytes data-raw/32/SO.png | Bin 0 -> 262 bytes data-raw/32/SR.png | Bin 0 -> 230 bytes data-raw/32/SS.png | Bin 0 -> 404 bytes data-raw/32/ST.png | Bin 0 -> 277 bytes data-raw/32/SV.png | Bin 0 -> 333 bytes data-raw/32/SX.png | Bin 0 -> 924 bytes data-raw/32/SY.png | Bin 0 -> 207 bytes data-raw/32/SZ.png | Bin 0 -> 801 bytes data-raw/32/TC.png | Bin 0 -> 784 bytes data-raw/32/TD.png | Bin 0 -> 128 bytes data-raw/32/TF.png | Bin 0 -> 414 bytes data-raw/32/TG.png | Bin 0 -> 245 bytes data-raw/32/TH.png | Bin 0 -> 129 bytes data-raw/32/TJ.png | Bin 0 -> 284 bytes data-raw/32/TK.png | Bin 0 -> 478 bytes data-raw/32/TL.png | Bin 0 -> 503 bytes data-raw/32/TM.png | Bin 0 -> 833 bytes data-raw/32/TN.png | Bin 0 -> 615 bytes data-raw/32/TO.png | Bin 0 -> 133 bytes data-raw/32/TR.png | Bin 0 -> 358 bytes data-raw/32/TT.png | Bin 0 -> 208 bytes data-raw/32/TV.png | Bin 0 -> 906 bytes data-raw/32/TW.png | Bin 0 -> 279 bytes data-raw/32/TZ.png | Bin 0 -> 285 bytes data-raw/32/UA.png | Bin 0 -> 120 bytes data-raw/32/UG.png | Bin 0 -> 267 bytes data-raw/32/US.png | Bin 0 -> 156 bytes data-raw/32/UY.png | Bin 0 -> 376 bytes data-raw/32/UZ.png | Bin 0 -> 370 bytes data-raw/32/VA.png | Bin 0 -> 331 bytes data-raw/32/VC.png | Bin 0 -> 318 bytes data-raw/32/VE.png | Bin 0 -> 567 bytes data-raw/32/VG.png | Bin 0 -> 844 bytes data-raw/32/VI.png | Bin 0 -> 1282 bytes data-raw/32/VN.png | Bin 0 -> 264 bytes data-raw/32/VU.png | Bin 0 -> 592 bytes data-raw/32/WF.png | Bin 0 -> 233 bytes data-raw/32/WS.png | Bin 0 -> 359 bytes data-raw/32/YE.png | Bin 0 -> 123 bytes data-raw/32/YT.png | Bin 0 -> 1064 bytes data-raw/32/ZA.png | Bin 0 -> 386 bytes data-raw/32/ZM.png | Bin 0 -> 340 bytes data-raw/32/ZW.png | Bin 0 -> 589 bytes data-raw/32/_abkhazia.png | Bin 0 -> 485 bytes data-raw/32/_basque-country.png | Bin 0 -> 262 bytes data-raw/32/_british-antarctic-territory.png | Bin 0 -> 998 bytes data-raw/32/_commonwealth.png | Bin 0 -> 859 bytes data-raw/32/_england.png | Bin 0 -> 122 bytes data-raw/32/_gosquared.png | Bin 0 -> 363 bytes data-raw/32/_kosovo.png | Bin 0 -> 791 bytes data-raw/32/_mars.png | Bin 0 -> 129 bytes data-raw/32/_nagorno-karabakh.png | Bin 0 -> 158 bytes data-raw/32/_nato.png | Bin 0 -> 567 bytes data-raw/32/_northern-cyprus.png | Bin 0 -> 300 bytes data-raw/32/_olympics.png | Bin 0 -> 789 bytes data-raw/32/_red-cross.png | Bin 0 -> 124 bytes data-raw/32/_scotland.png | Bin 0 -> 349 bytes data-raw/32/_somaliland.png | Bin 0 -> 599 bytes data-raw/32/_south-ossetia.png | Bin 0 -> 117 bytes data-raw/32/_united-nations.png | Bin 0 -> 764 bytes data-raw/32/_unknown.png | Bin 0 -> 253 bytes data-raw/32/_wales.png | Bin 0 -> 1415 bytes data-raw/DATASET.R | 50 +++ docs/404.html | 170 ++++++++ docs/articles/contributing.html | 127 ++++++ docs/articles/getting-started.html | 127 ++++++ docs/articles/index.html | 171 ++++++++ docs/authors.html | 169 ++++++++ docs/bootstrap-toc.css | 60 +++ docs/bootstrap-toc.js | 159 ++++++++ docs/docsearch.css | 148 +++++++ docs/docsearch.js | 85 ++++ docs/index.html | 160 ++++++++ docs/link.svg | 12 + docs/notes.html | 162 ++++++++ docs/pkgdown.css | 367 ++++++++++++++++++ docs/pkgdown.js | 108 ++++++ docs/pkgdown.yml | 8 + docs/reference/index.html | 176 +++++++++ inst/available-langs.csv | 16 + ...eatives.R => 2-shiny-app-lang-reactives.R} | 0 ...-input.R => 4-selectLangWithFlags-input.R} | 0 inst/flags/png/ar.png | Bin 0 -> 883 bytes inst/flags/png/ca.png | Bin 0 -> 7441 bytes inst/flags/png/da.png | Bin 0 -> 128 bytes inst/flags/png/de.png | Bin 0 -> 117 bytes inst/flags/png/en.png | Bin 0 -> 156 bytes inst/flags/png/es.png | Bin 0 -> 410 bytes inst/flags/png/fr.png | Bin 0 -> 123 bytes inst/flags/png/he.png | Bin 0 -> 168 bytes inst/flags/png/hi.png | Bin 0 -> 301 bytes inst/flags/png/it.png | Bin 0 -> 123 bytes inst/flags/png/pt.png | Bin 0 -> 605 bytes inst/flags/png/pt_BR.png | Bin 0 -> 992 bytes inst/flags/png/ru.png | Bin 0 -> 113 bytes inst/flags/png/sv.png | Bin 0 -> 131 bytes inst/flags/png/zh_CN.png | Bin 0 -> 489 bytes inst/flags/{ => svg}/ar.svg | 0 inst/flags/{ => svg}/ca.svg | 0 inst/flags/{ => svg}/cn.svg | 0 inst/flags/{ => svg}/da.svg | 0 inst/flags/{ => svg}/de.svg | 0 inst/flags/{ => svg}/en.svg | 0 inst/flags/{ => svg}/en_GB.svg | 0 inst/flags/{ => svg}/es.svg | 0 inst/flags/{ => svg}/es_CO.svg | 0 inst/flags/{ => svg}/fr.svg | 0 inst/flags/{ => svg}/he.svg | 0 inst/flags/{ => svg}/hi.svg | 0 inst/flags/{ => svg}/it.svg | 0 inst/flags/{ => svg}/jp.svg | 0 inst/flags/{ => svg}/ko.svg | 0 inst/flags/{ => svg}/pt.svg | 0 inst/flags/{ => svg}/pt_BR.svg | 0 inst/flags/{ => svg}/ru.svg | 0 inst/flags/{ => svg}/sv.svg | 0 inst/flags/{ => svg}/zh_CN.svg | 0 inst/lib/selectImage/selectImage-bindings.js | 149 +++++++ inst/lib/selectImage/selectImage.css | 59 +++ inst/lib/selectLang/selectLang-bindings.js | 51 --- inst/lib/selectLang/selectLang.css | 95 ----- pkgdown/_pkgdown.yml | 6 + readme.md | 57 ++- tests/testthat/test_flags.R | 25 +- vignettes/.gitignore | 2 + vignettes/contributing.Rmd | 19 + vignettes/getting-started.Rmd | 22 ++ 334 files changed, 2814 insertions(+), 255 deletions(-) create mode 100644 R/input-selectImage.R create mode 100644 README.Rmd create mode 100644 data-raw/32/AD.png create mode 100644 data-raw/32/AE.png create mode 100644 data-raw/32/AF.png create mode 100644 data-raw/32/AG.png create mode 100644 data-raw/32/AI.png create mode 100644 data-raw/32/AL.png create mode 100644 data-raw/32/AM.png create mode 100644 data-raw/32/AN.png create mode 100644 data-raw/32/AO.png create mode 100644 data-raw/32/AQ.png create mode 100644 data-raw/32/AR.png create mode 100644 data-raw/32/AS.png create mode 100644 data-raw/32/AT.png create mode 100644 data-raw/32/AU.png create mode 100644 data-raw/32/AW.png create mode 100644 data-raw/32/AX.png create mode 100644 data-raw/32/AZ.png create mode 100644 data-raw/32/BA.png create mode 100644 data-raw/32/BB.png create mode 100644 data-raw/32/BD.png create mode 100644 data-raw/32/BE.png create mode 100644 data-raw/32/BF.png create mode 100644 data-raw/32/BG.png create mode 100644 data-raw/32/BH.png create mode 100644 data-raw/32/BI.png create mode 100644 data-raw/32/BJ.png create mode 100644 data-raw/32/BL.png create mode 100644 data-raw/32/BM.png create mode 100644 data-raw/32/BN.png create mode 100644 data-raw/32/BO.png create mode 100644 data-raw/32/BR.png create mode 100644 data-raw/32/BS.png create mode 100644 data-raw/32/BT.png create mode 100644 data-raw/32/BW.png create mode 100644 data-raw/32/BY.png create mode 100644 data-raw/32/BZ.png create mode 100644 data-raw/32/CA.png create mode 100644 data-raw/32/CC.png create mode 100644 data-raw/32/CD.png create mode 100644 data-raw/32/CF.png create mode 100644 data-raw/32/CG.png create mode 100644 data-raw/32/CH.png create mode 100644 data-raw/32/CI.png create mode 100644 data-raw/32/CK.png create mode 100644 data-raw/32/CL.png create mode 100644 data-raw/32/CM.png create mode 100644 data-raw/32/CN.png create mode 100644 data-raw/32/CO.png create mode 100644 data-raw/32/CR.png create mode 100644 data-raw/32/CT.png create mode 100644 data-raw/32/CU.png create mode 100644 data-raw/32/CV.png create mode 100644 data-raw/32/CW.png create mode 100644 data-raw/32/CX.png create mode 100644 data-raw/32/CY.png create mode 100644 data-raw/32/CZ.png create mode 100644 data-raw/32/DE.png create mode 100644 data-raw/32/DJ.png create mode 100644 data-raw/32/DK.png create mode 100644 data-raw/32/DM.png create mode 100644 data-raw/32/DO.png create mode 100644 data-raw/32/DZ.png create mode 100644 data-raw/32/EC.png create mode 100644 data-raw/32/EE.png create mode 100644 data-raw/32/EG.png create mode 100644 data-raw/32/EH.png create mode 100644 data-raw/32/ER.png create mode 100644 data-raw/32/ES.png create mode 100644 data-raw/32/ET.png create mode 100644 data-raw/32/EU.png create mode 100644 data-raw/32/FI.png create mode 100644 data-raw/32/FJ.png create mode 100644 data-raw/32/FK.png create mode 100644 data-raw/32/FM.png create mode 100644 data-raw/32/FO.png create mode 100644 data-raw/32/FR.png create mode 100644 data-raw/32/GA.png create mode 100644 data-raw/32/GB.png create mode 100644 data-raw/32/GD.png create mode 100644 data-raw/32/GE.png create mode 100644 data-raw/32/GG.png create mode 100644 data-raw/32/GH.png create mode 100644 data-raw/32/GI.png create mode 100644 data-raw/32/GL.png create mode 100644 data-raw/32/GM.png create mode 100644 data-raw/32/GN.png create mode 100644 data-raw/32/GQ.png create mode 100644 data-raw/32/GR.png create mode 100644 data-raw/32/GS.png create mode 100644 data-raw/32/GT.png create mode 100644 data-raw/32/GU.png create mode 100644 data-raw/32/GW.png create mode 100644 data-raw/32/GY.png create mode 100644 data-raw/32/HK.png create mode 100644 data-raw/32/HN.png create mode 100644 data-raw/32/HR.png create mode 100644 data-raw/32/HT.png create mode 100644 data-raw/32/HU.png create mode 100644 data-raw/32/IC.png create mode 100644 data-raw/32/ID.png create mode 100644 data-raw/32/IE.png create mode 100644 data-raw/32/IL.png create mode 100644 data-raw/32/IM.png create mode 100644 data-raw/32/IN.png create mode 100644 data-raw/32/IQ.png create mode 100644 data-raw/32/IR.png create mode 100644 data-raw/32/IS.png create mode 100644 data-raw/32/IT.png create mode 100644 data-raw/32/JE.png create mode 100644 data-raw/32/JM.png create mode 100644 data-raw/32/JO.png create mode 100644 data-raw/32/JP.png create mode 100644 data-raw/32/KE.png create mode 100644 data-raw/32/KG.png create mode 100644 data-raw/32/KH.png create mode 100644 data-raw/32/KI.png create mode 100644 data-raw/32/KM.png create mode 100644 data-raw/32/KN.png create mode 100644 data-raw/32/KP.png create mode 100644 data-raw/32/KR.png create mode 100644 data-raw/32/KW.png create mode 100644 data-raw/32/KY.png create mode 100644 data-raw/32/KZ.png create mode 100644 data-raw/32/LA.png create mode 100644 data-raw/32/LB.png create mode 100644 data-raw/32/LC.png create mode 100644 data-raw/32/LI.png create mode 100644 data-raw/32/LK.png create mode 100644 data-raw/32/LR.png create mode 100644 data-raw/32/LS.png create mode 100644 data-raw/32/LT.png create mode 100644 data-raw/32/LU.png create mode 100644 data-raw/32/LV.png create mode 100644 data-raw/32/LY.png create mode 100644 data-raw/32/MA.png create mode 100644 data-raw/32/MC.png create mode 100644 data-raw/32/MD.png create mode 100644 data-raw/32/ME.png create mode 100644 data-raw/32/MF.png create mode 100644 data-raw/32/MG.png create mode 100644 data-raw/32/MH.png create mode 100644 data-raw/32/MK.png create mode 100644 data-raw/32/ML.png create mode 100644 data-raw/32/MM.png create mode 100644 data-raw/32/MN.png create mode 100644 data-raw/32/MO.png create mode 100644 data-raw/32/MP.png create mode 100644 data-raw/32/MQ.png create mode 100644 data-raw/32/MR.png create mode 100644 data-raw/32/MS.png create mode 100644 data-raw/32/MT.png create mode 100644 data-raw/32/MU.png create mode 100644 data-raw/32/MV.png create mode 100644 data-raw/32/MW.png create mode 100644 data-raw/32/MX.png create mode 100644 data-raw/32/MY.png create mode 100644 data-raw/32/MZ.png create mode 100644 data-raw/32/NA.png create mode 100644 data-raw/32/NC.png create mode 100644 data-raw/32/NE.png create mode 100644 data-raw/32/NF.png create mode 100644 data-raw/32/NG.png create mode 100644 data-raw/32/NI.png create mode 100644 data-raw/32/NL.png create mode 100644 data-raw/32/NO.png create mode 100644 data-raw/32/NP.png create mode 100644 data-raw/32/NR.png create mode 100644 data-raw/32/NU.png create mode 100644 data-raw/32/NZ.png create mode 100644 data-raw/32/OM.png create mode 100644 data-raw/32/PA.png create mode 100644 data-raw/32/PE.png create mode 100644 data-raw/32/PF.png create mode 100644 data-raw/32/PG.png create mode 100644 data-raw/32/PH.png create mode 100644 data-raw/32/PK.png create mode 100644 data-raw/32/PL.png create mode 100644 data-raw/32/PN.png create mode 100644 data-raw/32/PR.png create mode 100644 data-raw/32/PS.png create mode 100644 data-raw/32/PT.png create mode 100644 data-raw/32/PW.png create mode 100644 data-raw/32/PY.png create mode 100644 data-raw/32/QA.png create mode 100644 data-raw/32/RE.png create mode 100644 data-raw/32/RO.png create mode 100644 data-raw/32/RS.png create mode 100644 data-raw/32/RU.png create mode 100644 data-raw/32/RW.png create mode 100644 data-raw/32/SA.png create mode 100644 data-raw/32/SB.png create mode 100644 data-raw/32/SC.png create mode 100644 data-raw/32/SD.png create mode 100644 data-raw/32/SE.png create mode 100644 data-raw/32/SG.png create mode 100644 data-raw/32/SH.png create mode 100644 data-raw/32/SI.png create mode 100644 data-raw/32/SK.png create mode 100644 data-raw/32/SL.png create mode 100644 data-raw/32/SM.png create mode 100644 data-raw/32/SN.png create mode 100644 data-raw/32/SO.png create mode 100644 data-raw/32/SR.png create mode 100644 data-raw/32/SS.png create mode 100644 data-raw/32/ST.png create mode 100644 data-raw/32/SV.png create mode 100644 data-raw/32/SX.png create mode 100644 data-raw/32/SY.png create mode 100644 data-raw/32/SZ.png create mode 100644 data-raw/32/TC.png create mode 100644 data-raw/32/TD.png create mode 100644 data-raw/32/TF.png create mode 100644 data-raw/32/TG.png create mode 100644 data-raw/32/TH.png create mode 100644 data-raw/32/TJ.png create mode 100644 data-raw/32/TK.png create mode 100644 data-raw/32/TL.png create mode 100644 data-raw/32/TM.png create mode 100644 data-raw/32/TN.png create mode 100644 data-raw/32/TO.png create mode 100644 data-raw/32/TR.png create mode 100644 data-raw/32/TT.png create mode 100644 data-raw/32/TV.png create mode 100644 data-raw/32/TW.png create mode 100644 data-raw/32/TZ.png create mode 100644 data-raw/32/UA.png create mode 100644 data-raw/32/UG.png create mode 100644 data-raw/32/US.png create mode 100644 data-raw/32/UY.png create mode 100644 data-raw/32/UZ.png create mode 100644 data-raw/32/VA.png create mode 100644 data-raw/32/VC.png create mode 100644 data-raw/32/VE.png create mode 100644 data-raw/32/VG.png create mode 100644 data-raw/32/VI.png create mode 100644 data-raw/32/VN.png create mode 100644 data-raw/32/VU.png create mode 100644 data-raw/32/WF.png create mode 100644 data-raw/32/WS.png create mode 100644 data-raw/32/YE.png create mode 100644 data-raw/32/YT.png create mode 100644 data-raw/32/ZA.png create mode 100644 data-raw/32/ZM.png create mode 100644 data-raw/32/ZW.png create mode 100644 data-raw/32/_abkhazia.png create mode 100644 data-raw/32/_basque-country.png create mode 100644 data-raw/32/_british-antarctic-territory.png create mode 100644 data-raw/32/_commonwealth.png create mode 100644 data-raw/32/_england.png create mode 100644 data-raw/32/_gosquared.png create mode 100644 data-raw/32/_kosovo.png create mode 100644 data-raw/32/_mars.png create mode 100644 data-raw/32/_nagorno-karabakh.png create mode 100644 data-raw/32/_nato.png create mode 100644 data-raw/32/_northern-cyprus.png create mode 100644 data-raw/32/_olympics.png create mode 100644 data-raw/32/_red-cross.png create mode 100644 data-raw/32/_scotland.png create mode 100644 data-raw/32/_somaliland.png create mode 100644 data-raw/32/_south-ossetia.png create mode 100644 data-raw/32/_united-nations.png create mode 100644 data-raw/32/_unknown.png create mode 100644 data-raw/32/_wales.png create mode 100644 data-raw/DATASET.R create mode 100644 docs/404.html create mode 100644 docs/articles/contributing.html create mode 100644 docs/articles/getting-started.html create mode 100644 docs/articles/index.html create mode 100644 docs/authors.html create mode 100644 docs/bootstrap-toc.css create mode 100644 docs/bootstrap-toc.js create mode 100644 docs/docsearch.css create mode 100644 docs/docsearch.js create mode 100644 docs/index.html create mode 100644 docs/link.svg create mode 100644 docs/notes.html create mode 100644 docs/pkgdown.css create mode 100644 docs/pkgdown.js create mode 100644 docs/pkgdown.yml create mode 100644 docs/reference/index.html create mode 100644 inst/available-langs.csv rename inst/examples/{2-shiny-app-lang-reatives.R => 2-shiny-app-lang-reactives.R} (100%) rename inst/examples/{4-selectImage-input.R => 4-selectLangWithFlags-input.R} (100%) create mode 100644 inst/flags/png/ar.png create mode 100644 inst/flags/png/ca.png create mode 100644 inst/flags/png/da.png create mode 100644 inst/flags/png/de.png create mode 100644 inst/flags/png/en.png create mode 100644 inst/flags/png/es.png create mode 100644 inst/flags/png/fr.png create mode 100644 inst/flags/png/he.png create mode 100644 inst/flags/png/hi.png create mode 100644 inst/flags/png/it.png create mode 100644 inst/flags/png/pt.png create mode 100644 inst/flags/png/pt_BR.png create mode 100644 inst/flags/png/ru.png create mode 100644 inst/flags/png/sv.png create mode 100644 inst/flags/png/zh_CN.png rename inst/flags/{ => svg}/ar.svg (100%) rename inst/flags/{ => svg}/ca.svg (100%) rename inst/flags/{ => svg}/cn.svg (100%) rename inst/flags/{ => svg}/da.svg (100%) rename inst/flags/{ => svg}/de.svg (100%) rename inst/flags/{ => svg}/en.svg (100%) rename inst/flags/{ => svg}/en_GB.svg (100%) rename inst/flags/{ => svg}/es.svg (100%) rename inst/flags/{ => svg}/es_CO.svg (100%) rename inst/flags/{ => svg}/fr.svg (100%) rename inst/flags/{ => svg}/he.svg (100%) rename inst/flags/{ => svg}/hi.svg (100%) rename inst/flags/{ => svg}/it.svg (100%) rename inst/flags/{ => svg}/jp.svg (100%) rename inst/flags/{ => svg}/ko.svg (100%) rename inst/flags/{ => svg}/pt.svg (100%) rename inst/flags/{ => svg}/pt_BR.svg (100%) rename inst/flags/{ => svg}/ru.svg (100%) rename inst/flags/{ => svg}/sv.svg (100%) rename inst/flags/{ => svg}/zh_CN.svg (100%) create mode 100644 inst/lib/selectImage/selectImage-bindings.js create mode 100644 inst/lib/selectImage/selectImage.css delete mode 100644 inst/lib/selectLang/selectLang-bindings.js delete mode 100644 inst/lib/selectLang/selectLang.css create mode 100644 pkgdown/_pkgdown.yml create mode 100644 vignettes/.gitignore create mode 100644 vignettes/contributing.Rmd create mode 100644 vignettes/getting-started.Rmd diff --git a/.gitignore b/.gitignore index 0557d4e..8d69de2 100644 --- a/.gitignore +++ b/.gitignore @@ -24,3 +24,4 @@ vignettes/*.pdf ## Local locale for testing locale/ locale/* +inst/doc diff --git a/DESCRIPTION b/DESCRIPTION index ab386a8..cd2f7ab 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,15 +1,27 @@ Package: shi18ny Title: Tools for shiny apps internationalization -Version: 0.0.1 -Authors@R: person("Juan Pablo", "Marin Diaz", email = "jpmarindiaz@gmail.com", role = c("aut", "cre")) -Description: Tools for shiny apps internationalization +Version: 0.1.0 +Authors@R: + person(given = "Juan Pablo", + family = "Marin Diaz", + role = c("aut", "cre"), + email = "jpmarindiaz@gmail.com") +Maintainer: Juan Pablo Marin Diaz +Description: Create shiny apps in multiples languages. You can include + common words in multiple languages or provide your custom translations. +URL: https://github.com/datasketch/shi18ny, https://shi18ny.datasketch.dev +BugReports: https://github.com/datasketch/shi18ny/issues +License: MIT + file LICENSE +LazyData: true Depends: R (>= 3.0.0), - yaml Imports: - shiny (>= 0.11.1), - shinyjs -License: MIT -LazyData: true -RoxygenNote: 6.1.1 + shiny, + shinyjs, + yaml Encoding: UTF-8 +Suggests: + knitr, + rmarkdown +VignetteBuilder: knitr +RoxygenNote: 7.1.0 diff --git a/R/i18n.R b/R/i18n.R index b3b669a..9b77371 100644 --- a/R/i18n.R +++ b/R/i18n.R @@ -59,7 +59,7 @@ uiLangUpdate <- function(classes, lang){ #' @export availableLangs <- function(localeDir = NULL){ x <- read.csv(system.file("ui-translations.csv", package = "shi18ny"), stringsAsFactors = FALSE) - names(x)[-1] + sort(names(x)[-1]) } diff --git a/R/input-selectImage.R b/R/input-selectImage.R new file mode 100644 index 0000000..2a59e37 --- /dev/null +++ b/R/input-selectImage.R @@ -0,0 +1,92 @@ + + +#' Add images to dropdown options +#' +#' This function works only with bootstrap for now +#' +#' @param inputId The input slot that will be used to access the value. +#' @param choices List of values to select from, when named the names are +#' appended to the right of the image. +#' @param images List of image location that can be put in a src attribute. +#' @param selected Selected image, defaults to first one. +#' @param placeholder HTML to render as placeholder, overrides selected param. +#' @param width width in of input. +#' +#' Borrowed from the package shinyinvoer +#' +selectImageInput <- function(inputId, label, choices, images = NULL, + selected = 1, + placeholder = NULL, + width = 120) { + + shiny::addResourcePath( + prefix='selectImage', + directoryPath=system.file("lib/selectImage", + package='shinyinvoer') + ) + + choices_list <- lapply(seq_along(choices), function(x){ + list(id = choices[x], + image = images[x], + label = ifelse(is.null(names(choices[x])), 0, names(choices[x])) + ) + }) + + if(is.numeric(selected)) + selected <- choices[selected] + if(is.null(placeholder)){ + x <- choices_list[[selected]] + placeholder <- shiny::div(class = "selectImage", shiny::img(src=x$image), x$label) + } + + input <- jsonlite::toJSON(choices_list, auto_unbox = TRUE) + + shiny::div( + `data-options` = htmltools::HTML(input), + `data-selected` = selected, + id = inputId, + class = "dropdown", + style = paste0('width:', width, 'px;'), + label, + shiny::tagList( + shiny::singleton( + shiny::tags$head( + shiny::tags$link(rel = 'stylesheet', + type = 'text/css', + href = 'selectImage/selectImage.css'), + shiny::tags$script(src = 'selectImage/selectImage-bindings.js') + ) + ) + ), + ) +} + +#' Update select image input +#' +#' @param session Shiny session +#' @param inputId The input slot that will be used to access the value. +#' @param choices List of values to select from, when named the names are +#' appended to the right of the image. +#' @param images List of image location that can be put in a src attribute. +#' @param selected Selected image, defaults to first one. +#' @param placeholder HTML to render as placeholder, overrides selected param. +#' @param width width in of input. +#' +#' @export +updateSelectImageInput <- function(session, inputId, label = NULL, choices = NULL, + images = NULL, selected = NULL) { + message <- dropNulls( + list( + label = label, + choices = choices, + images = images, + selected = selected) + ) + session$sendInputMessage(inputId, message) +} + + +# copied from shiny since it's not exported +dropNulls <- function(x) { + x[!vapply(x, is.null, FUN.VALUE=logical(1))] +} diff --git a/R/selectLangInput.R b/R/selectLangInput.R index dd51c87..2c53894 100644 --- a/R/selectLangInput.R +++ b/R/selectLangInput.R @@ -13,95 +13,42 @@ #' @param width width in of input. #' #' @export -selectLangInput <- function(inputId, label, choices, +selectLangInput <- function(inputId, label, langs, + flags = NULL, + show_flags = TRUE, selected = 1, placeholder = NULL, - width = 120, img_width = 20) { - - addResourcePath( - prefix='selectLang', - directoryPath=system.file("lib/selectLang", - package='shi18ny') - ) - - images <- list.files(system.file("flags", package = "shi18ny"), full.names = TRUE) - imagesNames <- basename(file_path_sans_ext(images)) - names(images) <- imagesNames - choices_list <- lapply(seq_along(choices), function(x){ - choice <- choices[x] - list(id = choices[x], - image = paste0("data:image/svg+xml;utf8,",paste0(readLines(images[[choice]]),collapse="")), - label = names(choices[x]) - ) - }) - names(choices_list) <- choices - - if(is.numeric(selected)) - selected <- choices[selected] - if(is.null(placeholder) && !is.null(choices)){ - x <- choices_list[[selected]] - placeholder <- div(class = "selectLang", img(src=x$image, width = img_width), x$label) + width = 100) { + if(show_flags){ + flags <- flags %||% get_flags_image(langs) } + selectImageInput(inputId, label = label, choices = langs, + images = flags, selected = selected, placeholder = placeholder, + width = width) - l <- lapply(choices_list, function(x){ - tags$li(class = "selectLang", - tags$a(href="#", title = "Select", class = "selectLang", id = x$id, - img(src=x$image, width = img_width), x$label - ) - ) - }) - - shiny::div( - label, - shiny::div( - `data-shiny-input-type` = "selectLang", - shiny::tagList( - shiny::singleton( - shiny::tags$head( - shiny::tags$link(rel = 'stylesheet', - type = 'text/css', - href = 'selectLang/selectLang.css'), - shiny::tags$script(src = 'selectLang/selectLang-bindings.js') - )) - ), - div(class = "btn-group", id = inputId, `data-init-value` = selected, - tags$button(type = "button", class = "btn btn-default dropdown-toggle selectLang", - style = "display: flex;align-items: center;", - `data-toggle`="dropdown", `aria-haspopup`="true", `aria-expanded`="false", - div(class = "buttonInner selectLang", - placeholder - ), - span(class="glyphicon glyphicon-chevron-down", style = "padding-left: 10px;") - ), - tags$ul( class="dropdown-menu", - l - ) - ) - ) - ) } -updateSelectLangInput <- function (session, inputId, label = NULL, choices = NULL, selected = NULL) { - # # Only updates selected for now - # choices <- if (!is.null(choices)) - # choicesWithNames(choices) - # if (!is.null(selected)) - # selected <- as.character(selected) - # options <- if (!is.null(choices)) - # selectOptions(choices, selected) - message <- dropNulls( - list( - label = label, - choices = choices, - selected = selected) - ) - session$sendInputMessage(inputId, message) +get_flags_image <- function(langs){ + flags <- list.files(system.file("flags","png",package = "shi18ny"), full.names = TRUE) + names(flags) <- basename(tools::file_path_sans_ext(flags)) + flags <- flags[langs] + image_data <- unlist(lapply(flags, function(flag){ + knitr::image_uri(flag) + })) } +#' @export +updateSelectLangInput <- function(session, inputId, label = NULL, langs = NULL, + flags = NULL, + show_flags = TRUE, + selected = NULL){ + if(show_flags){ + flags <- flags %||% get_flags_image(langs) + } + updateSelectImageInput(session, inputId, label = label, choices = langs, + images = flags, selected = selected) -# copied from shiny since it's not exported -dropNulls <- function(x) { - x[!vapply(x, is.null, FUN.VALUE=logical(1))] } + diff --git a/README.Rmd b/README.Rmd new file mode 100644 index 0000000..771db35 --- /dev/null +++ b/README.Rmd @@ -0,0 +1,77 @@ +--- +output: github_document +--- + + + +```{r, include = FALSE} +knitr::opts_chunk$set( + collapse = TRUE, + comment = "#>", + fig.path = "man/figures/README-", + out.width = "100%" +) +``` + +# shi18ny + + + + +Shiny apps internationalization: same app, multiple languages. + +Check the full documentation at http://shi18ny.datasketch.dev + + +## Installation + +You can install the development version from [GitHub](https://github.com/) with: + +``` r +# install.packages("devtools") +devtools::install_github("datasketch/shi18ny") +``` +## Your first multilanguage shiny app + +This is a basic example which shows you how to solve a common problem: + +```{r example} +#library(shi18ny) +## basic example code +``` + + +## Configuration + + + +## Add custom languages + +Explore more examples. + + +## Roadmap + +- Support RTL languages properly +- Add locale formatting for dates +- ... + + +## FAQ + +### My language is not yet supported, what can I do to help? + +File an issue and make a pull request following the instructions in the vignette. + + + +# Acknowledgements + +## Flags from + +Country Flags taken from https://github.com/hjnilsson/country-flags +Catalonia flag from [wikipedia](https://meta.wikimedia.org/wiki/File:Flag_of_Catalonia.svg) + + + + diff --git a/data-raw/32/AD.png b/data-raw/32/AD.png new file mode 100644 index 0000000000000000000000000000000000000000..2247b4171858e701fe7632d39f49ef6abea7fa72 GIT binary patch literal 524 zcmV+n0`vWeP)iCR+Z)`Eayr1116!VuhgsWF{hx1fBB-^asV{EKo{dsw^$_h;FrpvIS}q5mYpzP6@-b z5K<%u;5t5AwKw$o%Zw%k`lEX=5V+X})yh{2xfXf1mmC0Ss^tdNN`uKbOa1UUAlRtA z$8l$%A&N*6;BNrSnzFO~7Bpxe3jg6fa2aVmZ|QY>?EyskGfDyedw}1Br<;9rPmKrw O0000^ literal 0 HcmV?d00001 diff --git a/data-raw/32/AE.png b/data-raw/32/AE.png new file mode 100644 index 0000000000000000000000000000000000000000..6b48ce60655f102d80cf0918d6dbe9dfe84335b9 GIT binary patch literal 126 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzS5Ftmkch)?uN~wBN*+G2=7A93 z+kkZ;?gEa1imiX%M@}j*X5pw{y5N0QN9wk)g2Mr!2Nzg4esD14_%|>x?n`21nqoy85}Sb4q9e0JeiCumAu6 literal 0 HcmV?d00001 diff --git a/data-raw/32/AF.png b/data-raw/32/AF.png new file mode 100644 index 0000000000000000000000000000000000000000..8c0d19656dd2bb83c0a10c1c4876d7a8e0b22cb1 GIT binary patch literal 464 zcmV;>0WbcEP)!eBjB{+e zaUr|V-1ryX&eR@b2b literal 0 HcmV?d00001 diff --git a/data-raw/32/AG.png b/data-raw/32/AG.png new file mode 100644 index 0000000000000000000000000000000000000000..8692f4595964b76524adfa0a4066d0e905be4b26 GIT binary patch literal 481 zcmV<70UrK|P)PZbX{t|OwnN9v$jFiiZOI25*qqb@GxuPM zb~a5WoP7YlhbMUWej@;oC=boUJk2`>wXbcuY+6h>;|?{^-Uq!x0ld;mXdbM*PDM*+ zM!knJ)8~uB(DJAL|>FoQQ=2;f!LsOGj}o8xWUsmBLkd05(_-0`EbIo{xH z)NCmLmWPI`41hPHxzYg8$L$@-e$Xp3Qwg9mSEqirCp1S-XJI{g0O)OFm%jUbt~qMx zk)5Xu0KFfbaRE?MnH39wmj~IsCj#&{4=Q_41Yj@^s(Viiz|Vu~-a`S>R0fa%qz>={ XC=-WA(z7$%00000NkvXXu0mjf_>a{D literal 0 HcmV?d00001 diff --git a/data-raw/32/AI.png b/data-raw/32/AI.png new file mode 100644 index 0000000000000000000000000000000000000000..75a600ac2209ff3b4a7c0d978f66df7f539db8e3 GIT binary patch literal 745 zcmV z?@Lo*6vyu*k|5fvsQw5ks8(397bXjOHE0ADy~zmF=uL!VqaeXH$qAyQ=`;vpD~i2v z!X%;^BqCe0^+O%%M7JgD?zZ2X+rHg%2X$wg{n&;=d*E<6&wYM;p7VUqxt9UJY^E_4 zfC|8t0B|=qBa=v=$Kb@y6M8TQ`@w}0uuG+w;)kR-4pR9rcGM1`eaMF84h>kNQ5aW@ z{Q%H*zraG{B}5$#xV<5qzB={`fTG2WPZJ;EZfZi(;}Kv>20%{D*(aE~)d`%jIS1Ni~|WpjcSFBXl7q8Ro9lLjFAj7v2 z6)A$HqD93k2f)W6=^RIV#>$7@4F5eP5_1y>@eznyAMx*l*e1JQ_zH?O*U~BwVG$U- z48QISf=_QF{dF0US0g~|8(eN5st%PAz+ieUmM}2K`_3^S85DXRKYz)OD&gs3 zR&xi8st-)tB$!sK@RX=}v;DvO7?sQp@FzXo3Q2<=RkG_@|4+V#n_(4ztpiZ`E3N?i b*8txE$*3>PXQ4n400000NkvXXu0mjf{U1u> literal 0 HcmV?d00001 diff --git a/data-raw/32/AL.png b/data-raw/32/AL.png new file mode 100644 index 0000000000000000000000000000000000000000..d39dfa4e388367a147f9726c83ee613cfef4e12e GIT binary patch literal 600 zcmV-e0;m0nP)_BHvp~$EKWxMH9X@i{7tVEV0kb(mV>!ckjaJKV zJY(K{l5X>HeP?;DV`;t(@1JU3I(vx*wFR93=k7)HFQ;G2b<9hLWp^*BXa66_<|{#D m-~12BlM5*P6&D1&YXP^Y=UDon4YOzf00001=@T94wY*?AIxLh*9snjF`TfAdq*3vH1ui56{*ACl5Y9Z~y!MmzT@`KY68olJU%$trAJ!z7-#s zp~rXP{C%e_2h-9nuYBEb=1lJcj?W(=94=f~u_E;U|35#yLrw_1Wzb#Q`MmdKI;Vst05w!=aR2}S literal 0 HcmV?d00001 diff --git a/data-raw/32/AO.png b/data-raw/32/AO.png new file mode 100644 index 0000000000000000000000000000000000000000..b248a141d7f4e0d21f265d1f5b237afab8e35948 GIT binary patch literal 520 zcmV+j0{8uiP)WQWLtq972u1Q96NRl_2>dG#O}(LF+f`U|=Q z70U`~5|lZso0bH6iC_;M73ucvu&@xavfJuz)EvH-ACJdp=687l5Uor^fC%tc01CFG z6-9u(16VBtgmFn|NJ6uINW*}STEO}>kIlTx#-PVydr%jmAwbwEDL9fZr?Pyzn__F$ z<;SBWiye|e*FFP6L$VV1l%{$p-9N(8;a*nze75FXHio?NI`#_i$qsh3Yy=ct$#%Y* zpYtxCGrff37~jWIZ01~+&48j+KHD&0&hme+%jcb&W$AR9wckxyL literal 0 HcmV?d00001 diff --git a/data-raw/32/AQ.png b/data-raw/32/AQ.png new file mode 100644 index 0000000000000000000000000000000000000000..e3c628974f3ffa90bb7c35bdb8e97b966c5bb3b3 GIT binary patch literal 662 zcmV;H0%`q;P) z%TH5L5XSr0xKk@F(1J0#FmBukF&Y=b-UW$|VxbzFs6oYu8d(vd5PT#W9}6|c;F|>7 zOD%0_KqRypunkgZ8XkRp&Kz13wfEY4S|5p>WO5fb?fIRV`M$XZ0EWMrh6+Fh;GY1f zJ2nEnY0YI_2`L3oPg!kOP<7NTa>Ef9HnqB8b^HMUKAaD0JnzS?p(vjE=5g)CEZT2Q z!9+0puBKfn8b%dBt-RH33K}~7n2s*v$55u?xHBBZ_LE+i>}xR60QJX5P}BDFO}N}W zgEP>I$U+h?g9~W6`W_aCq91_!+jJ#}vk$`J7Tjl16@oF^+;C0CQB2IlRiEhV^uF&gSkQ5-aJV0G3xX*wYn&+3wcg0`B47ivjURsdN_C zUq>+Lk0F*wK~Eg)o5V(&1VAlSVXMQEyFlOS}zpm z$jb9JUe@n{ZN^`_^$!J0v!+RT2%_8X#fBK07*qoM6N<$g7w`l7ytkO literal 0 HcmV?d00001 diff --git a/data-raw/32/AR.png b/data-raw/32/AR.png new file mode 100644 index 0000000000000000000000000000000000000000..405155f3e112a8367afe3cd08aa01f862fb0a1f0 GIT binary patch literal 283 zcmV+$0p$LPP) zOAdlC5Qe#ydKV3c@FG6$Am~nHt$SaIx-x;p$4W6OplGqbW4QswYT``tC+%$d{WG1W z1_0xmG8ljXegdFsFYygA00aCE0CI$sK$^r#^0mnq`2f;ejBqnWFn19wT!ibf0?`5> zAA$~?U^{5Sw@vtMlhzHDld1STfViB(dF_aM3kQBW?hWrvT h00Z!^m;wG8;0bAx#c6HfD}Mk0002ovPDHLkV1mLiblv~} literal 0 HcmV?d00001 diff --git a/data-raw/32/AS.png b/data-raw/32/AS.png new file mode 100644 index 0000000000000000000000000000000000000000..f2d265db21960038dbadfa6ca582be2730f6f9ad GIT binary patch literal 645 zcmV;00($+4P)j>pMRir$tr1BOBe0;lQG%iy152D?VfIT4iN;_TL1YPH zc$1P|Xd5nLHh;9aT!E5ixnF1J>^XaP5zSHAHl5nV4t%aZujicSJkM7EVm%|WfGps@ z00?o8waT`QMo#6FVct@}ngJ3^Uv1qU&#D5JDjg_3guCu0{$Xe40jZSAa2P!jL26oN z04bF!3VI}h|H}-cece2}c7f-n>g5B{S?Qd2j5pT1v>6Xz+P9g@2EmzJL65m9JwU3Z zzoM%ulSBP96$)w%f{O-0%`QQ;LC{=z1R0Gc2c%n?nD5g*EGLU;%op4%5!4k4stke~ z75ni{xS0Do|98MjO5>~7G-iDsY@JWAT&<#UhoE)uPe^_K2CR2X4A|_8fJ~GoMva6S zdGExpL>Y69@X&aW`a;3|J%ZNqoxHOT;`U4~0`fK)smv+GlKUH=qzsSg76GR#<#Jt9 znRfRw-1nGZNCQBPN?MK z%}WAN6vby11d-cTL4QCHxQQr&7PXMp5wr-(C=L1(YEg)`30g&zizvuyVL`1Ts7(t= zgg%TYGfG>8T0&qSo;oj-QOB{DVnIGQc%2!1zx(dFcT@l^O3h$42E_ms#_K?xp0JAn;j9COFUPM(g2Q`T?7Wrc=q`a z498&_+sOgw8r{a(;VFU^3tmDY0ju}pOr+klER;$rF95$Z_N>7(K8<^a14t(E^7@_u z5Ouo|w%g$kM9@0mE|^_i=Mt{&o`e|d0x(;xr3TPidH_wm>+qgG2rYh?l8rmW}5WkiVa(A0kU z0IHhj;lGZid!8|`l?9+Y zrWnftNWBfUZZ>qUXvU?Q4J98$MVYYjuebv6uK_*)$>R$XvOG9z00000NkvXXu0mjf D;)3|j literal 0 HcmV?d00001 diff --git a/data-raw/32/AW.png b/data-raw/32/AW.png new file mode 100644 index 0000000000000000000000000000000000000000..ab063a5b783b67436945c716b30031a6b3eb61b0 GIT binary patch literal 341 zcmV-b0jmCqP)arb{@9MZ7+e|Q6`7%ebX2ZYq^`d>NY`2WO?{Xj?TqOSu$ zz7A+T^#4@Ll>d$GoB#XQ@1dUqLhE<^4{km9zk15S|DRo4|L-pA`5)DP;(u_%9-4&& z+yS6CuK))7>DFogzqz{p|EQ|=|GU24{};)b|Ch|({XeGTAWhN)+yUW0PF&l*|K%Oq z|F5c>{r{_p$^UDyng2W5*ZZ%An-2XC zZJ={52&&)xf7;vw|8u(bfzt)uvmqF_?4wz*6XyUrVYmZ+UK9I25P0x7V8EkbG!2ZV nfl&txxC2I8#iI@w(GCCrfU6|^3?&v@00000NkvXXu0mjf!ZNEj literal 0 HcmV?d00001 diff --git a/data-raw/32/AX.png b/data-raw/32/AX.png new file mode 100644 index 0000000000000000000000000000000000000000..bf1cce6e4eefdc17f9cabd0b61cc23013de42e20 GIT binary patch literal 153 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJ1Wy;okch*{KmPx>KkSgy7RcUX zl@MUjpjh#;-s#7GOE!ajDhW)-4D1Z63TIiqY5>VI#PK=sDzh!NZcwtxkYO;Ma$(u%+Y5p5-VJ{R7ib8kzZx84G;5i4b07NSjHoyk71wibb(TZ$<4QL<0jga{% z)fuWMe5jI)Ik7@Mu|-aaqjf2$j^O9H5B+xbp8%ROWYr;~_e3b4oKsC_C?q#AqX~?G z7^?7~2_KpxSf78ZVE|Q(QQSGC_E^FgjFA;?>%*O4%t(T}(Rpk33!*UqDS+-$c+pKt z2gj(wZJ{JD`PnsUPtR1+8H}MBG|Ar#fNTMbdy4z1IzV{I&#gnHO7-d%W4Kv>_Z93O zQF|z&_f3)&Bi0IBVa)L*a-M}IuD}^W>+qxZMk$|OP`$jSu(*M##4-A(ntKVqJwrzT zb9$A+@;13>60N%d&rqb2v?3c|1KI~*{}tPSe+_sAfd47%Mwjr!00000NkvXXu0mjf DM1Zpc literal 0 HcmV?d00001 diff --git a/data-raw/32/BA.png b/data-raw/32/BA.png new file mode 100644 index 0000000000000000000000000000000000000000..168dbc1f9c5acaa442f6ec19da856294f0cdc0b7 GIT binary patch literal 449 zcmV;y0Y3hTP)DCdF!eFMfI!x?_aF+|J^CB|NqZ0 zPz5up^#AA8?to*s1H_Db{tFv)|CcuJ|DRO4@&B$vcm4-vZ2qri)Aaw$8Y!wdfI%6D z13if>8$yeFu!TibowVq8$JL XjO3Pb>8WC&00000NkvXXu0mjf;Sp_@ literal 0 HcmV?d00001 diff --git a/data-raw/32/BD.png b/data-raw/32/BD.png new file mode 100644 index 0000000000000000000000000000000000000000..e62fdbb1b5fac2653fa1509ceb29e4126ff9008b GIT binary patch literal 250 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJgPtyqArXg@fBgS%f7l_ZEs(v( zDj~q4LGkqa{|*lV*?Dx?H>Cdf>;L`xkNt;FJ^gPj>u$id(J@KEa+Z~Y*3Iw#4UM1w zkKZD*F=>K~2d}RT!>7BR!FQ$|Ht^tGspvR`*}>80M3DsB%B8!Q%c6G)yk(dWwaS`d z%8iav29LK5Ru7i06aFf@;d;{#4F-^!O@BK4TNJh))|WoSrBu_$aPs0B1t&hv0De+j?b-BwLERtnl_~h$&_h0Szopr07^F{R{#J2 literal 0 HcmV?d00001 diff --git a/data-raw/32/BF.png b/data-raw/32/BF.png new file mode 100644 index 0000000000000000000000000000000000000000..d6923007e034ae3ab43667f35a0a6376f5a7069b GIT binary patch literal 243 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJU7jwEArXg@fBgS%f7l_ZEs(v( zDj~q)!QO4}{x=?2%qLNL;6nKUcYa?3IRo~Z>=2gZT~-ekH(&ejZzuKNzIDa_|69X_ zdK_~mNO<%;vb(m0Ey|a8=U$4$Db>0-usXBuMk@d9nvcAA#&C}HolECM6Rs7F q?y?528V){gxES_v1+&{0W(LdIPtV9cQJe|%1%s!npUXO@geCw}-Dv3m literal 0 HcmV?d00001 diff --git a/data-raw/32/BG.png b/data-raw/32/BG.png new file mode 100644 index 0000000000000000000000000000000000000000..7b3aa9d69966f4270c8d7a81867c6e99f9921f66 GIT binary patch literal 123 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzCr=m0kch)?uNevgB@Z9Sa$xy1 zq1oh33!`AF$NNqHZ!lzvF*4OLZc%e+Xkb4PXCkEVK>onYW;Z4ljt`>T0t`=>Y;pp1 Ue*XJ>6KEQPr>mdKI;Vst00bK)`2YX_ literal 0 HcmV?d00001 diff --git a/data-raw/32/BH.png b/data-raw/32/BH.png new file mode 100644 index 0000000000000000000000000000000000000000..7bc3253a4982ebb2efb0f4d95623c4225af0e801 GIT binary patch literal 189 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJ7Ec$)kch*{KmPx>KkSgy7RcUX zm9W8rLH|e1pELiX?F|2)=Uf#iD*To~;>V8X7yi4mZe@Pl@ZLP{|Ng93b_R+cUO#>P ze|m^6n;BQ#oqgZ`&uYDXU|Hk+_4ohP$J{iU#pZVTK!%irFZ1He1QXt#112BJUf%jI nuJSblC>4ElF`vXvJ_ZIAQ*+U7uNM_S_b_<6`njxgN@xNAAvjK4 literal 0 HcmV?d00001 diff --git a/data-raw/32/BI.png b/data-raw/32/BI.png new file mode 100644 index 0000000000000000000000000000000000000000..111339ada4dd0ada25ba53908c0848c35638df4f GIT binary patch literal 614 zcmV-s0-61ZP) zy-OoO7{(X$9}omP;hKZP#>Pf1jw?6gy9Ak(vsCY-+jTY-mE@*Esl{ z1Ed~Bnxq~0IZns4R2SA#1t{l6^vDf?_0x7r{&9(joIGul5WGIwF=tuT6#y>+M`s{?)D#E4=nnM#&ats5YluCTXAp#X{I z^Kf%4Dp^w(K<2rvD9GGb0|;LEu(!5^a4eMH4!ON&T}B|trXSs8%yOyicj&H>y#+`zUt13zoeY(auv z^J0LujV|ooIZ$mJ-n;3eTonLOK=x8`*Popu?!PEmFz&lR%yp`~Mn23+xuFW6rkWhL zSCi9l)_+PL#lI&N=RCh_r+s9M%()!S|xbT5jY3j8d)FjiOI7BUI~j!~7~X0Zahq35_{~mI)j1{Qv*}07*qoM6N<$f(BI( Aj{pDw literal 0 HcmV?d00001 diff --git a/data-raw/32/BJ.png b/data-raw/32/BJ.png new file mode 100644 index 0000000000000000000000000000000000000000..5645cce9fa94930dc57ba9c2d866775c2fa7d501 GIT binary patch literal 130 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzPfr)ekch)?uNm?(D2N=nu=zj} z_mKr$wL2VGP9`=!RCjoB;cxHM+_^ps3^9xWtMBE0lMw@IW7xwfv9g5~#QM&#BZ(oN YS?ujU=c${+@)SX0p00i_>zopr0C=q^jQ{`u literal 0 HcmV?d00001 diff --git a/data-raw/32/BL.png b/data-raw/32/BL.png new file mode 100644 index 0000000000000000000000000000000000000000..4e4f7cb5109cab09d54c5ff21b43f0ff6434f53e GIT binary patch literal 1514 zcmV zX-rgC7>4=Tq)FSPX}Z|7e>Clnwx+SQY1G!Lt*E%RH8w3ORwaNe0uHi>GPp3{4Ev(2 zvM35NN1s1AAHHpWX^rh{oeDQ_dDOQ z04)B?$6|`W6oLN>fpMd|yPMwL-am~G4snZPgI<%1v8@Vy zeSw4@8ZvYA=rQRVot>SGjg2upJUlUhs;Vl^oH;{LQ4x-gj_lasMny%j^scwNm81|$ zE}mLR^uA9ym+}R%0dx2{Z6Oiz*_5ALL2~e1>Z{cfzN6zVa=8yKE-u8y#Zg&VNls1< zBO@c@6A&d!NJu~?lL?7;uydym$wvaYad{a%U6&+vOO7b#QhGx8 zRn4a$x|+@OnHn*)l##CdmL$0wlCXauki+qP}P*VmWbyLXeAm`GfF8ufKosi`gI z_?Z@xQ!|CJBw`L9A~7|d$k+s;qhpAUiYGR;jPqqzXluDZMrJPY@d+pt0r>g(;q2^; ztE(%gPoEy2z@0mH@bdD)-rim!AWq88&L$)zgqY|E3QF|+;8jRcW-wOn?JRa_BPLbB z8n4ZC*j683Me z7IFP8OqS6!Bh*lg!nmPZAGw#7B_|WDyk;zW@g}ERLDj_U5NSY^-kjv%R z+1cUX;2rKcXk)?7ZSMox8b;}6`4;S zE7zAZZ_OpF)}3UYRR;EMDMUvqrIm~7d3bn8i&CjnG&MC%T!v!(8w>`Llaq0GcPA_? zOi)3AI=7H3Y8935%%FMxQrefVq+zKQso$>W?95qQd*xM1Uwn;1i{~h?wWOlDihcW) z1P6ym3W!RI$;AaudJyS!I;^d&*}BzMkTIA;QMMR6E2#NNPWkj1T%S1??I(-4GJ64u zR;$T*cNP^dy+!d0(nOZZeF8K^U(E;jg3;JO}YiYH(H?r_g`~{~3Wt zBnAc^u6}e(^hi7XeYb=J-Nc{NGjG!kWU2;kw+r2Fq)TYuEtr36ctb-&LQfcGl9-sl zqcEA81Y_;yYS|LX&c090g*jZmxPU7qpHqKz5%t#=3gaJ9lJ^O1%`%LJJpN)#PC&d* zR2CkhI`d`nJm2Je(04R9p5~@Do(Anfbea&Fn=+`*4Nkl zT}V@L7{(`gkr0hY5Yn63EH4&)NSQL15je1$2G-MszlY2|gd=>?uE@QSf*5p{Ul1E7l-BX!V$J zxsv~7(u)9wTTc)^dJJDfAw;HUvG>&Q9{^J25MGVFL`0!Ld}=BQn>7HMcoQ>-arISv zG#G$H0`a-|-vGY&e3;hj@j5&M@eyBgm$C*x({fcR09R!VAh?>J@x?L%_?yLC&@Tdk zg&rNn!`4>VBoaIu8Cg7TZ)o5K;M!i=b~=e316R>w37su`mnstGse~ zdJ&SaNMIy15?m?(36g|K0wtl6V7Wv{mH74@pWeKKhyCqid(!Cydx7Nofu<&I0J0QW zi!4S~Bg>@%(6nStvM5=VEKAnq0x)0Dz;XH{w6c0=8j(6bEm><1f6D&3h9Ni{(>{j@P9zbnwgWcZ=qg0YxfX$sEC=LqIURjKu z`@Oj9wL>o|#i7PxtT$~y&zi#A0yy|9&{(q$)#n7*p{v9;T?OhCrI3nCU|Cz3-6Txc zfdU>bRTQB{T?TP`87`Nv#M6QtMDen}3-SP21;~FD=K=m}fS<)C{ppNXb>{#8002ov JPDHLkV1jHqOJ4v0 literal 0 HcmV?d00001 diff --git a/data-raw/32/BN.png b/data-raw/32/BN.png new file mode 100644 index 0000000000000000000000000000000000000000..b46f9d33ae93defc540e19b18c58278dafc9927c GIT binary patch literal 1068 zcmV+{1k?M8P)+bPk$h6L<`1{rHfz@SYel0Zz1hK;UdL*jyj1(=8$NyO*I z7LBsQL^l{W;xopOSVItbO@Th>lftysp^s_jaqqe3xVUYRbb<{K%A)_|<}T0Y{_pSn z&kUVfnb7xwg4l)nl$W5W7!s38#z05SAd)-Zy4ova_-}U^nTq*^H&jy ziU;wW8=zf3L&EZ(+vMqv0RX8q{I>H|j6BUVUmhl8XF!Rh$)5OwY0l8`? zHk(&J#>tKKY)?3pzVZS!+qW_BUJF6n;_QPpZ)J3 zTo52E0vry8`63gixv+@VWRi60O7^OJs;eU;cfZV

7P_-(xpDP5h%4Hl6$#V^w%z zfcFm+>a#IPtV7a2=#fg#_Z-L%Ga@CMH(H$P&e9qmp32HfY}>vG zm_3XP1FV4Xx33AfFfpO%yY6xAlOSE`EWeCR^V(>b^%0w~>l$If@?yBq>+(|HRhq1P zR+~YNWD>deeke#~Wfk@HbsRhPjkxV;C;-C*%Mv(RGu{uE583Ep1G`XTW1zLB>x#$2 z%M5Thdr!&MZ zNv`xu#wYZ>0RWg52piJlkWGL)WS}(!s}#W%5LylaLx2V+rHPL!x_Tt%X7beDA?X|R zm`>?C1I%^9@F%MX%zTOTr>*`^=M4h_rofoZlY&%IGc@ec(JeU}lf3m|Qry=Y(Y%na mh>Hi~O17A_1XuzrI^bW=Rz2U?w#beE0000F#`?WA=XlZPzrkdM=T5QOzsKJsNb91UD3EUcjh9C$jFb6TAsiLK! zk{}4fJ42oCJUZX~4HowU`VOD*ffvsYcr-u@GMWM?Kqvs!@d1K}0w_Ru09H-VYn-}( zF99uq+vvUCs)^qNz73t1$5F}!$=R_^`AXuNx_^N7#~4o+QI=PxnOm6Rt~f#aJ?1^Y zt_dtN%56q+nv9V;Pm#J#bFwo@C9PwbQS48TJJ4xL-V*&}4`$gc?Xr>IVm~><>rx+f zQ+huFrzxp!4{@1@5I zU2KzO6vyAfAh32DxUsQzw4)t%WynS+ADIC=2-)NUZzaMYBrbsty3V?0VghOidZArA zR@c<12{RKJVUXY|Ut1Z4OazTL-s_@QUV&g_ZkrCd__l8*Lt@W&x_~N8dZC1X|ZJE$m@eR|(e!#brR_T%?$e7b|&3>}hbItDM_n10Lwa-cXfMYtJmcPiEhm7**sPl^J3#HSItF7!`kuZ-4$I$l zr?V0E{7C|#wPd!fVeb(e*9WG-=NidKJ_}7dDVW|!vHUvbcyZ?K#yQW2RY;WP`$#Dg zS0oz)23`|iqhKhk2PZHZ^}6@UxpK+`7d1vC<+lcB(Gu9hb6aCO%XP%*-x3p zk3Gvv$(#nAL`_8<*ZMQKozisQtEY{ue}8G3M7a7s1Y}cQ`%@e|X6DufSrU++<-$jXN>VZsN4+iOXqUg)uBxQNhe_ zuev82_Yg2h#)K!aLW=BJe$dTi` zdaw&u(O%xFck4cP{1ukM9O|D*ot$A9?Tc{)wskuBu7AdO0#Z}e?dHs87SC^FiKU6M zLO*3@KQ4J!k-O$KQtyotI@(8Xd?O>5#uNBnu(yBcoS49!5)?$Mi1idQ@|zN_*mxH$FnQz`5|H8_QiD6 zU!BQh!v{}1U=xm!p{Z>(`@5~&5J{;rq&h5m?geBC#vha61d?1OL*;xTTOTr)I*M4ov<_=lfFe^6i>X=U_Y$@4?WCeseb0qY zv#EOMK{RF*XUKSM`pChJ&%`BZ;8e&?n{T<;3KDPI8R<80Q`Q29?aYWw)+nAJ8_w7Y zPRPYG_A)w|n2Sr+?icl>UB^n#O0r5?O1^)?b^KrcBAWUto+9wSCh!X(PN{0@A}Q(s O0000uXdol-e}3ZA zkBlV@9It2mNuRMd7bMSg=)dHwblwHb4l_Dm+B@gGW3XcAs*Q2|w|{rm|NqyS)mJ4> zl3_S>ifhh)|9oR<3-$&Bb@t2uEp2Bpzi!CPm12I(zzopr058X7{r~^~ literal 0 HcmV?d00001 diff --git a/data-raw/32/BT.png b/data-raw/32/BT.png new file mode 100644 index 0000000000000000000000000000000000000000..c5eea816cd1fca6fef0427d8d86fac476f10e451 GIT binary patch literal 1005 zcmV zPiS049LGPudGGDpx4R}LY5pQDwrE0AL(-}TDLF`c5d1^cq8^GM)Kd>iQF{>VsTW1? zB&Y~_QqZDlo6^2H*k|j`aLDr63?FFa=9EWN80jT59Y81E_zTE!pM>;y^rQ2!{+N zZ)+Cx;m5U08k3?8H$q_D{1h$Wsfh=BMt$pMQXgwjGe+l$<_nQSzTSDr%R zYY-POP5tP}pGl5gM;9C0)dh?r zsGtR%REYBDN&iy8lzpPv8Rjqjh)aTMZbxQkkeUIQ3RsOb3E*KWzu}}?a8gYazx)U_ zFo^T=t9VTi{z0fuv(Mr zdkCkY39q{seR2RY+1mjyXvv~Cy#j4dLAn8Kh2+;WL>I517K=!I9s2lT)W-Wrh6gEq z@d;jYD`w&h5(KyB0WmRTJFxA~Vr3Dz{4J#0@HXtk-6+^nfjEvyMh4;IOGy42h!7cr z1eu$%f0Y0hZ5?#m(^xMcIr28<@Yj%6Bt3nY&Am9!>_LBX0+|?tbO5dGP{<=n-TE*R ztFeIC1W`UFSP$_6lIkMZ*H7iM57EO%F<0lXo!#iV2Gk3C$#!-VIS%o=2T@4^%Rsox z7)|0eBPImpvC#4yl6?SEm?zcuFuD6XQI1fa{2piS3ii!?s7+n4{ZVqep2t}D)J}8A)i(H(9%QIZ>SWl*B zE2E;C8vD~U@zpu($pNHX0{>qu6j>U_D^x_{gUMSKN6gZ^ zP9W{x?4Te+G<1~c>?o9qh@Y;FB#X}*!c$e1Qk~bb{Hx-hD{}9O0oLumAnae0 ztqMXx5QXR*ThQHP{8CuOQgPXYf%}{6jR2ehUW_6jpFn!7Ci@Fe~gg zXXftRU}oW)3I#v`@GAgz91QI|o!PF{w#$4GMNE!0e#_h6KdA?R(`am)T0L&c^FC(H z9e~aDovs~veOp(mQN-j}a|h5yR7{NI0 zTWphM7{_~!nBa}qqG-G_0viky#em5cqfsMK0$j*ROlCY>z!KQP)^#H>I!2gV+s$@s zH$dBsvXirGJ4TP+z8-dHyB^sR8JG$?D5x9LpWnWD;f0BVHGzcY&2#g<&->(;=Y5|4 z^C|$vgEU1BAP4YJ00f_Sjt5~64}fC(DOPL+l_<6-SzCCTr{32}rs1)|8hKAXyN6i! z2JlKXiu?*T?r)~ylAp_?qxj=NA`>xu(KzbP0C@)uDDujeeX|O%6mV-LpV!%OCtNr} zCOUiuEMgmd!|ikmZ3JUB#H&M;YCV##azzj;2gs}7vpNUl!84BsbuIpZtmM9*Q4 z7~Z66;5d#+J0_=&@HG#mjo#%QA~n?gxgNI`c=~P&*SJWp}+qE z7W2m#)gMv(>NYkpyoxjTPw zEgHk)6&MpwGUeFI?631INN0ChlmUXNP!<6Gd4fP9g~e-N=J#0^@50>d3_|)kM(YGE zePfJ_TbRGIz+a1Sd*QZJ2WEy62_7$8?Gr3nzLJKn0D~hP*yC2I6TU<}@FDMLcd$cM z#A`MCc&q+hD$Va<^O;Cxl9)Xj8hb*^>bUwgtYq^cBeAI{dRr~-v=yu1!eG;582Xfs zU@1-A8XCIwcoH^r{k8lwbDd3xTC&uJau&)t+Azq}bc_~z9kvlKzTpIs$PMDj3{Ek^ zz?jJS0S#9(VLti#2RU=umEr=Gq=r_eXQt`$>v04-Ip=Ps)up3PY^OJ1AT$x8M12{> zwyG>k@xO-Arh|I4UBfsdV}w#81k=NePu}3H#mBZIZL&}HhtYqI;~JjX)5wNBO;V?P rwXAvt%KIC~xgSyPSDXWQqyhd0!iXL7#G}w%00000NkvXXu0mjfY}vA0 literal 0 HcmV?d00001 diff --git a/data-raw/32/CA.png b/data-raw/32/CA.png new file mode 100644 index 0000000000000000000000000000000000000000..bb643fe476530bca7d4ab58a4840b9122cb88aa6 GIT binary patch literal 253 zcmV`@0$=z#tEA$Y(X;NSqkbay~~{r~?31rY5Z z3}S=C=;{EN3Mg$i7;00000NkvXXu0mjf DI*n{l literal 0 HcmV?d00001 diff --git a/data-raw/32/CC.png b/data-raw/32/CC.png new file mode 100644 index 0000000000000000000000000000000000000000..4077acbf70f6eedaab6eae8d998ef2a11b37ae2e GIT binary patch literal 501 zcmV z%PYiD6vw}ayh-~0?CX7R22JLh)K=iYP9y+4pdG=&&I4B%G)pdE~c3;;y~;OY)| zf2Jj4vHb{u1iCu~uY%xN0Bo7j65Dq{gaF8HC0NZknA#1dDU}R@rvdGA8l-d>>|X?v zyDR|Y$h}Ko`3P97cAU})CU)ut#OD-1PBC~0X1i?wJf5r13$SS#tZWABC&8`VP=Gk4 zx(U7LlbU~X4Eoo>Lf_{AIlW-6$7Tv7xad;Vf!_r_UudYe6iD!~bv@_y1gupc>D}6w z-)HYc@;nwrD2t!ZgF_X1{JsdQ$Fxnr%7)E@yg_|bl1k~}KImJvXv6Dm)d@?+Hr(6O z0COAW!5gN)g-tNN!{|#6 literal 0 HcmV?d00001 diff --git a/data-raw/32/CD.png b/data-raw/32/CD.png new file mode 100644 index 0000000000000000000000000000000000000000..43ba266a861f490db9791f1fd0187068d59ac071 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJ51uZLArXg@fBgS%f7l_ZEs(v( zDj~q4VWFJI1&P&P@BG}KP<`$H`|B$I>TR_@{`cH^rhb;xa}?nH^@%&Wq_HW{wfIrg&QfaUD}`}Zy3xyExyUvE|8(G|Id9Pty52r`9D_CF-c zkaYRbBX`zK|M$ z$Emg}TO`^#ix_lu)J`#O*&?x?`9-2(82g3GNj&TqZle=>_!hJujgWQl?>3Zi$OjSz hx3uI+4|J3ZE>22WQ%mvv4FO#tr8e>VUC literal 0 HcmV?d00001 diff --git a/data-raw/32/CF.png b/data-raw/32/CF.png new file mode 100644 index 0000000000000000000000000000000000000000..505047faa17e0f9ceb486a68b21aee7f5b17f745 GIT binary patch literal 214 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJxt=bLArXg@fBgS%f7l_ZEs(v( zDj~q4;oyRo_D0vfo@7fdDU{f!lF%gjIH;fdafw6hTw#gJcNrBmAO5$OPyhY@zYMcP zy~Qa;vBlXOH(JyV%Q7Tgw&n8DzVmOp$<1cN4qtKhKk9-HiWnplt}rg_{e_r$cbkX(p&d$|EG?bFV9Y7mifTR;H$gX?2PRDZ27xp zW<2a3kGx|O882CgEa*JUaLa-vp>sClwH=%d9jh5v?BHtX>1KSfgJXj7Jf0Jx{!CAL z+!=R1?r#wK811m~hw6fqKP(!u{0#X=m>c#dvHy`OU^w%;wpaYOl`7DM44$rjF6*2U FngG=JOt}C6 literal 0 HcmV?d00001 diff --git a/data-raw/32/CH.png b/data-raw/32/CH.png new file mode 100644 index 0000000000000000000000000000000000000000..a7a3eaebf858ad3a7bda5ce0e3de8fb1eb6af551 GIT binary patch literal 120 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzdrud~kch)?uNiVNCg;|$zuJ&_>JQQ`y4k1`2(UHAEeGP{}AP#!4$D$2J1A& Tnoa6JqZmA0{an^LB{Ts5p~WPr literal 0 HcmV?d00001 diff --git a/data-raw/32/CI.png b/data-raw/32/CI.png new file mode 100644 index 0000000000000000000000000000000000000000..4bafeab03be4648c0bdfb59a207d112be4195030 GIT binary patch literal 120 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzdrud~kch)?uWjUIP~c&9>_4TJ zb7mdKI;Vst0CsmF*8l(j literal 0 HcmV?d00001 diff --git a/data-raw/32/CK.png b/data-raw/32/CK.png new file mode 100644 index 0000000000000000000000000000000000000000..c293e1d876f9de350292b82df3f30e4c7eff16e3 GIT binary patch literal 898 zcmV-|1AY97P)uBr+S}1TIEn-D)zbhX;;PWq)QSF>7>o}L@UUhBposmW%FrTvfFYF% zn3%x$&)-G>-zzFGs8pi6cNn`bR`6L8JlJdU*W;Gf48P3;K+y_4h5$m3Ab{IV-kc;V zI5X4zpB12Wh4!Lm^kC|Z&xNtC2Yk|pU=}}Y_O3xlPZdtmiq~^gubj>Ab zY|TA5gYDHYpF3vC0Gaa*9J=xnbxl2R*d*7gz;qA$X1`I6+QuGUmgHlsg82Zj+WIoR zpGkOwJ<)1-uqgRbxFu^RAbWS0X7FpY$1glb-z(+;5Nji}W{1`{_aQ#53PDj%vH9R5 z`0sxR>B&OG$=~5)OCM~gM6OePVjh4=vts7LX1{2=0%g@5NL1Az;of_c*K|S@py1c6 z#Kt~m1<KkSgy7RcUX zl@MUjaIolReUbt10fo|ryfbD7at7>I&hBG5R#NWZarNQ<`TPI2ov!=whg-+(y1<5$ zH+ZMBZhR@nx-|IQ|NNQttUZo7yR02<<=cjRJ8`P5r2If=?#}e6UE^ h5^D3RLGUdDL;Jz#-bKsuJ%Ns4@O1TaS?83{1OVW&O7Q>y literal 0 HcmV?d00001 diff --git a/data-raw/32/CM.png b/data-raw/32/CM.png new file mode 100644 index 0000000000000000000000000000000000000000..4c87dcd2d4cf14edbc0f0fce5d495a0205854689 GIT binary patch literal 224 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJ<(@8%ArXg@fBgS%f7l_ZEs(v( zDj~q4VWHMLd&3`d7DxsDIPYq>=)($TH(7%(vIS=Ye*QO2e%e@kV6u&+!LrrNdf6-f z?9W@rb1dG>tI4p3f70Te%zB!u{?*$@OC2_tAmP!M7x-bB{6h|b+3zwRT;@9Y|9+WA zgJFknID5k*sVA?wgH|Q*BprS zO-lk%6ow}g#L?zsTLk%?mKJ?1s%0(v1qIcjRY4HZqF+&q7X6K=McbhI2|?t{C`Ot} zU<)gw-tN7ViVld3S}pG4<;+|zbDr~_b1x$R5dKmE2jBqz0zi){XjfX0#L@Qmw^B<0 zE!?ygQD96cC>^_yTl1J8Jp&*W=GHyXW6c0EUQP(W1_AIB$bj0B8x{ci!Q_w%V^YTZ zr30xM8TW&#nW(xaWGX!`;bD0IM%;c&8UcQ)E*`j1I&=Y#0!l|N_D(CVB_UDst0?Zf zQMn?J)3UW)b^z!{GK&(*r%oV8mJNZ$^0^b4C8;q;6dO>2tm!6Z5UG+BFA2C7mJ0jjL`e97T45&NDFjk-P+H+8;A4d{ti}Z04N$*oM z`B;xGB1_LBX7blFCkmu`&8OI|+!g@4h!QdiyCUm9b1C|p0M$Fd*V*KE2GC`301m(b f_+K#x-~d$L(Vgg=oA#`P00000NkvXXu0mjfuQJm( literal 0 HcmV?d00001 diff --git a/data-raw/32/CO.png b/data-raw/32/CO.png new file mode 100644 index 0000000000000000000000000000000000000000..1eda4bbcb9a8a6c5781b3ade33095457ed012a00 GIT binary patch literal 122 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzM^6{Wkch)?uPtO`P~bUoV7pIq zg1_2pzk?f{w3QzDt2tP8GcX!6h(-x1I5adEHq7yMXJV;wSnCUx%w+SAja_T2{=xWTm;3R3 zU*6|=-tT$e`}S2;Y+RJNGE=2eEh;M|UCI}VKIy5-TWW8=t5T&bksWn%owJtf+}h6X7DMxRx@rz|FEO5C{?s1~oxU!;4-7 zHJi;*4xLV|M5v{moJ@z*oRptnAc5o&SwUub4vI3;jeJ11z)Gg~x8N6CthZT~9*}cV z+$hB|Bt#1cs?j21EGD|Y1j^~0AK~{uh?Zm*c$oa0{E~a801y|D_<-mEN_hSwQu7N% z1LJ!joV3^qlq$N#0En$SokXRQJIm2NlJ^AsfRoEe3#=eC49gH0YS){zR;>Xu>qrVk zttgHd;v!gU+GV8F7cvO5$29fi2@CndUqo zq01_|aja=xEMXS`E%TzA=Y5HOs%qwCUTWqA$X;!LYFUoqgHp8A4?Wl-(O%#NqF;*l zkku#0M?N-MKf*_IUd0171Dfc7Plih<5df%(7a;+N60dj#aXhD#-w#9&tIPrtC`O{q z<6{-3*yuhf@*lFwvf?}mM79kul*s#`SPu~F99~#ajKcIaP3j_Tk}{E!M?*FHB5qJ(&iVHuf&7 z`O!O^>m#>E(tdw(LEGB*Msin==Z3?2viq&vOUEXLzdU~|nY}rFL*uio{$m!KWrDXf z+kfquT-A`>o7B-^x#N1dFE2(HXH*WjVYy;$T2vwOp-J+*_MewQ_M=VDi7)^*#= z(O^BlKV{A8$A0=-rONqY^YYHqm9O*{^>-EYro06;yU>o;_#f8F3aZ4rbcOY*{lYs>SlU0fLXTpD|}?zyU7xcHtf*>_%>pSF3K9x|feO9Im17K0TeYduiv-C>dc<< zgfj{kMy3n%KT3Nl$#kipFsCGxHj=q=St_1&aB}ic&0o6??lZyX{2w1(GZB6xsRw_3 k^YzK&zwGLq&7R60`RdS>x4%uVRL*QwnWKU{V{7R87dzJxK>z>% literal 0 HcmV?d00001 diff --git a/data-raw/32/CU.png b/data-raw/32/CU.png new file mode 100644 index 0000000000000000000000000000000000000000..23969c80b9b048a30132297625c4eada31f40eec GIT binary patch literal 334 zcmV-U0kQsxP)*Ne z!U0zeT>js54h7@yH|~Hjj1Q7Sc1X9h4^?ssiUUBt`?&Woh7&yqV}#*bnApAeJo;rr^sGl^UlZ>D8u^;A1E`V0$<77TO5tQRNa*2ftPY^3udzB{ gv{gLnfD!Eg03RF70!^8{+W-In07*qoM6N<$f|6~OqyPW_ literal 0 HcmV?d00001 diff --git a/data-raw/32/CV.png b/data-raw/32/CV.png new file mode 100644 index 0000000000000000000000000000000000000000..d28cc6f2dedbb34b93ca5a19c72662cf57e66f52 GIT binary patch literal 195 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJE>9Q7kch*{KmPx>KkSgy7RcUX zl@MUja4_l9|HcE0`6NmiBKbTtI)2WNk#LP?SBTD%pUr>lN&(MBK8I~nBt9;j&i3yy zQ~tC6|NmE=t8Z$ED4o&Jz-%Ymkl+Ml?~p0*3wZnA;laVj4Hr!eUUVnLsNQRs(z2r~ sb=TCEDN$A#-H$G&{anH9wvL%W(aw7LbcI{JKvyw%y85}Sb4q9e0RNp%Q2+n{ literal 0 HcmV?d00001 diff --git a/data-raw/32/CW.png b/data-raw/32/CW.png new file mode 100644 index 0000000000000000000000000000000000000000..fe6708c56e01c12264ad1503d742c01d90fab5b2 GIT binary patch literal 262 zcmV+h0r~!kP)2C6^6vkPnw9^#3~K2c1%>Tf{^zxB`X8LP1k6vZT?-Bkx;X&kYY@$E z+VFq&>Qn!pzWn(A#=Teno2Kpk&#YZVpF{}5THbx&=y?C>JI$g3uLE3@=7OW5q-*Pc zWw&nnJ7B=dfl&txhy(sSXZSx5c+>%-iEz{bgU11*t>RG!jA#b{04pU;PtA5G#sB~S M07*qoM6N<$f}d-6<^TWy literal 0 HcmV?d00001 diff --git a/data-raw/32/CX.png b/data-raw/32/CX.png new file mode 100644 index 0000000000000000000000000000000000000000..1a4b9ab819e2f7bf27234c4a24d800cd152ebcaf GIT binary patch literal 704 zcmV;x0zdtUP)Eh4fS59 z|4Y}|{#WcK!U2fTNTaGFmantT7lU_I{;T` zu(~B{ZT|;McOcyXARL`o_y0Z6qCZDaE#JP$=D$Xd6WEuy zLc$MdDM;;?Lze%iuCm4L09MuY{}W5k{LgK;@SjU-1BwGqE(-d82^ie)eSi)`H2+3j~ zIZ{ed6bDF}Z-vJ-2pf3s`5&2g3PlWtK_LN(4p5>5VGtW6MrtXFHxY7bZU84hW-RG~ zSWGB1NG^!T#kfKPs{=r}AvF8M|LnT+|M_$`QOyz9LIbA*(yPz?Z<}`Gzp&9}nuZ45 mq5xNDjJAqL9Wd$u5C#BsrLY z%S+=>6vpqujT=|OxEEZy@(&PZaG`&IdtJH^LGUqJMFl}bgd+6`RT&Tz9Um1%vA*9g zTqxGJSgJKi+cZtn#OCw%)`j9MlR8Kad?e>??(cl(o{1 zhIE8_^Jt|R^qqije5ZPX=So8D{{>wUjRS~_4+uJP!P^KE_nUmWoU0=U+H(*dErvK$ z1nq9k$QI}jo%zh(4;42gt7g{IRw&0#^Y(z|-KDnwNcOzu&4s2k2yIyqhYO)z%u%Z} zlNXWXgSKOby4wYDuz(Jmi_S+Nb(=7(y}%#Sp(YYlWUcvE_<{n2NZ5FQ^G7c#$DHU` zoWd2)eFlt1F|_4I`A9#;4mOPkkkuGkT%&NT%%Pb+yWF#Q3?*AIez?uf`qmauJwA*x z--9`eC@4$#v$Kk}`3cyUTv)w0#SQnwF78~MW@jGilsQBAE{^W6S=HVEk6X@;v literal 0 HcmV?d00001 diff --git a/data-raw/32/CZ.png b/data-raw/32/CZ.png new file mode 100644 index 0000000000000000000000000000000000000000..b2524acded01b43ebd00fb0062122a3b83bff7fc GIT binary patch literal 237 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJEuJopArXg@fBgS%f7l_ZEs(v( zDj~o^VP)#o|JUXB{gG#2C~R1eeYgJVgmeFA_s2+Eupcm(>&$$av4oHJ4PV2f++4waLBqtOn1R=+*@iv9(BwpU!=mJy|4*(m`@g>1V`A^gGKYrD zJO3XGd5J{&O=Dj1Fng1%gKqrfHw;<7XQ{AXICR~`vSHdjwHFLgzonKlzj&IxhHt_0 l^&71cwuIWeY7l(Oz;GtQJGYtflpE0f44$rjF6*2UngGmqUcvwX literal 0 HcmV?d00001 diff --git a/data-raw/32/DE.png b/data-raw/32/DE.png new file mode 100644 index 0000000000000000000000000000000000000000..608866a737d1b07509f40126a1f0a071af13e6c0 GIT binary patch literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz8&4OSvWqhG86(m}|MC0Z|J7GM{?FMwKn{R`haZ0Z zZ#(d2;2Zz~fB*gezvu3k|ApIL42%O{;O)0R|7V(|FRoR$+jG~1D-s=&W5GW57+-Y?hU2LV*C!k z0lxhH`oHE<*MHGT{8BnNDNw(q~*b{DEyOtb?iO=M&{;LpFmR7qrHIe?mpj3fup rB9Rg809qw7QbJ&~Sw8B3k?Q~eCZm>04UzWk00000NkvXXu0mjfi@cn{ literal 0 HcmV?d00001 diff --git a/data-raw/32/DK.png b/data-raw/32/DK.png new file mode 100644 index 0000000000000000000000000000000000000000..e05eea914a9ee40f9577239a3c0315fffad1109e GIT binary patch literal 128 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzcTX3`kch)?uPx+dP!Mpw*ms!i z&3@s16-OF(tNl?cRiBqxv}x@*E`|n<15%em&)<0$&&|NlAk*-hNrB}6$m9dzJP)!D ZupRj@jZe~QKOazp!PC{xWt~$(699d(DbWA` literal 0 HcmV?d00001 diff --git a/data-raw/32/DM.png b/data-raw/32/DM.png new file mode 100644 index 0000000000000000000000000000000000000000..db3315a35dec519b6b4e28ccd761b0d51afdb94d GIT binary patch literal 631 zcmV--0*L*IP)lm>t4h|FuP?C%?5(zWq6U0v$tf_+OKs$53W->0F zo>qfdk6_daQ(_mecc%Mg>#>LRLz0Y3vZzW{Lji^_405-9lqHYFk}JfrTk^3&^5db0 ze0tgfZ1x1WY?(Z(6?}0vvU2n|Jzaw|_g!bEzKd@Tjq#u)-fXhj8MFu3yUqJ$#-Z^f zD4DO3d{%W9{2dIRPf^l$g8PjIU!9T#ujG|aFze9Cr>8wYwZ@wo$)ZQ{$<@dQZ-htP z&p8(F<;>|28xF}^uVlh6nXT6B0m!4iU%5ssqA?y2WK~Jlp)qE~D36`PJZrGw5KPnx z`olW8c#=FTf56WCJKi4-u;dnGRD+iRFHbwF>A&How>8L$Q<8BB*2?{C&&=5aT6T5dAWWM{CG+){#;*(yB(TFTwWY3(6A3ZCC{SCZPB$E&~2*z)!uRrTuF| RU=aWS002ovPDHLkV1n{KB7gt@ literal 0 HcmV?d00001 diff --git a/data-raw/32/DO.png b/data-raw/32/DO.png new file mode 100644 index 0000000000000000000000000000000000000000..e0ec69468ba68763b8d59a157e084944a063e60e GIT binary patch literal 252 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJ!=5gVArXg@fBgS%f7l_ZEs(v( zDj~q4!O{Gsy{3e?h58CNA-U26E12D68)En-@bt~I_`SdW+oJ!$>F0jdKRUAV|Nnn~ zm5)n&lAUnl)_41*i+=xaoOJ5{*QHDU$JbW)$FsYXUHKCqbM3r+nzU-91C|3}@;U%YO(dRgu7eT$8s|L@Yg`#*i_)&Kv0epauQ ybx>s}WRSeczB_YC`g5=ouP`oN`v}BpU}UJi0MZ@6RciA;&CTfl0uAl|XN1)LpBK^mf731e z|MSi%|NnmZN?QjQCz$`=EU)?hoS+(3e8s@&|K}qoY2yILNHY}6&H{0Zx!(Wx8+ZKw z_2Ly6gV+z!Oa8y#yoDvW zo6 U%1Zs2`Tzg`07*qoM6N<$f_#^<4gdfE literal 0 HcmV?d00001 diff --git a/data-raw/32/EC.png b/data-raw/32/EC.png new file mode 100644 index 0000000000000000000000000000000000000000..a1ba5505557e03b836a886653ad2c2473f966de8 GIT binary patch literal 462 zcmV;<0WtoGP)NK@sWTpM(EULV_j=Ej)+_n$Mg=QiN5`Lnyi?<%8hZ!M`j8|KMRd zr;f3N=uo>Av}K8oK*fWCV1gm!p`t^l4sUOr>w(94_#NKYFE2i)uL3CPOpyQyxE_EL zg|s9A5}*h0Yd?eNbS~ZYIyPTa@?oP8cWVvLpBC`-Q>O8NKgS9`b_J&i1^>fx1{_sv z#WJ`^34ZR0D_G#b!smDn$0;*`soR7?Hhv!o4&Pfi-^nr_aP~2qK(LVRseZKAFLAvJ z(KGMo{%i#YZ*CY5_?9veoVVf{nj@M>pvB)}n~2e?Ir);b=mQ8f!oQZ=KEp=f4r5*? z4M8t$tB)97a1egnihZz?|GA|LkmndDx?Ia_T_;xGBBlNnMxAaJ`c;}dUB&|}_GR|B zi&z?PvD9T{rmu!TvxDTjo7{5yj0XsHoif)Xjh;SMM@or3DaP)7z};RAvl_k%Km^gU zj!+|1-+M+!eGeve?JrIj;Cp@v=|}=3Kz_v%AOV1K3CFjvMq8hFF8}}l07*qoM6N<$ Ef^UV)1poj5 literal 0 HcmV?d00001 diff --git a/data-raw/32/EE.png b/data-raw/32/EE.png new file mode 100644 index 0000000000000000000000000000000000000000..7fc26f3068c3394ac3baf8dea28998f8a88edabe GIT binary patch literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz8&4O5^{)z4*}Q$iB}B_ASd literal 0 HcmV?d00001 diff --git a/data-raw/32/EG.png b/data-raw/32/EG.png new file mode 100644 index 0000000000000000000000000000000000000000..6bb4713c94307148c3add1da868c48cf685ff632 GIT binary patch literal 307 zcmV-30nGl1P)0kc1B+4BE}jm`g?_V!>l?Hth6h1CHda79ZCjA;`E%*_Aa%%6`n3VuF( z`2X*>Z~wnvy$Z&EKYylvBE%M~phWn%sObN7Gqe96wr%_W>&X-9Cqi&GJa%kgvf(y9 zhW|?0zyhOzb{MAv)`|d&;zHV5j?)1PrGb@EIqfaS>VQcq!0Nb~K9*xRph=(MKWi=h rEJtxbp(TAS#&E!Bt9aA_BiaD~VQtI;LviDs00000NkvXXu0mjf_=UMs literal 0 HcmV?d00001 diff --git a/data-raw/32/ER.png b/data-raw/32/ER.png new file mode 100644 index 0000000000000000000000000000000000000000..b63395de0892a21663d9aef88e0699e77d4a0459 GIT binary patch literal 708 zcmV;#0z3VQP) z&1=(e9LC$}RD1&m%0y8?=(06wo1{&85MM4%P-J=#rsz#Pco8;KWDXTQ4Brr64j#n2 ziiirHL52T`|O)v*V%6AY}XeBd-y^^OPzSj2#yt-51dF!riu+1JIVMD2)Ykd02$p1{hm_cET(U;7}2E1led#g4wDx z9mXDDRyevX07I2wC^8}&6~y;Q&{kQ$5zO}HII{pC>^#5gz$5aVG4-9vyNS*UA!NfrkhF3=V29GGMIOdUIUgcq4;bDk! zF`5QDQvqN-&`>1g-}PbYloz4d`{^?tWS{oa$^$Hl+)Hxi!2tBNiH}eVqcmM?qq*#8z*CMS25FaPou~ z`L`V6yQC!neD58?qx};&Ir6a#z-sgg71L)u$iL=T(_?}Rd~>npCy)9N-RWl$nBzR_ zi6PbQK)L9?iJx;b&jFQ0{mkC%!(z$egXF*+Hwy3j*tw8A>_g!bL5&E|R{q|K^@vsl zC~iZ_cu)ksxL}U)2zLir{_))s;uHtIx{!T5P!xAAO|&{d34&~maekyO3NWwn_(ca$ z`X=?@l7Pe^5&DM8?N_hp;sB)+ksv}P5OTtDAXN5VXhgIo0J|4bvqb9xXoct>0a`6; q3-F^PI@)?sTY%12aR=bP2ABb>f=Ff3d}spz0000w?LTy literal 0 HcmV?d00001 diff --git a/data-raw/32/ES.png b/data-raw/32/ES.png new file mode 100644 index 0000000000000000000000000000000000000000..27b71d85c346c8c94de4fb47af4498c19d2e873c GIT binary patch literal 410 zcmV;L0cHM)P)?LYUR3Zkv5z$7x6bd4OPv8^zI`%d`g9L09)Iu?8q7f5gHmk0C`7N}t z3PQ4M;T|~EO!2}0pEHaS5t5W9VWj{mfB{g+%_kCt?QT`2BS-<1h`_Pxy@cw=0P^EO zXh)RsmwTbk@Z7aPpg8(TCJYA~!(OMJXHYrH(`jlXipWn`Z11^bvjGHg0%YK^27v@v z<~!F76Ei=;dhwH1D?lqKm4GlV00GyY#c5dFoz$>j3oP#LW6!?v!~sJzDRCF?2)x@# zoXa8Zoi_E{IAa~55R`FlX3)b5rs4!p;5!<7I%28Zrv5O;+36uOZi{Sj1m87dUcv~h zg$S|&)rd{+3fsHkt@=V?a|>U!abN-s}o_$p8QV07*qoM6N<$ Ef{}@}x&QzG literal 0 HcmV?d00001 diff --git a/data-raw/32/ET.png b/data-raw/32/ET.png new file mode 100644 index 0000000000000000000000000000000000000000..204251e58b31eb8378028e78919ecececc17f12a GIT binary patch literal 869 zcmV-r1DgDaP) z-AmI^7{`xVDs+)XS(J4VQd&f1R7Uxd1%U=()pctkMkjbjT5vb&g!d>AwjO1y*LTNAC8+9yhf+>$E0N&=IiYgz{8%)w8Cj@q6s%@ z-y)D!f6!<|erG1mH{M4=Q#p#e(hz1eV6&zNt6vP!ZoGp>^%U)n$aR3oS~WGZlh#!* z4W5LoD+8jI+c3O81yQSvWXOiR?;MgSS3pok%3o-FKvLLnfS_CkSV!72#VFr}Lk1&m zknUl$1ESU!cC07!dC(DCrTPdl0qm)%$CKU!sQb^- zL}m`)ryio3aXO|wSVx{=$nz!CWCGu zo|}&AFVrgSn6hkl4qzfY81u!Q#AGnt9M|?zb17XoN`Colec6tnmu=*OImFQ^x!6?Z z@CwxyCS~AveVqmnB0+MG8qdI6xcdc@ku1SA%?PP!;$vauzAuKUW*XZ?=4_Cp5_i6c*C!j{w{mO9x>2U-2@)e+}>*WFmLpnxp_p00000NkvXXu0mjfg>0H3 literal 0 HcmV?d00001 diff --git a/data-raw/32/EU.png b/data-raw/32/EU.png new file mode 100644 index 0000000000000000000000000000000000000000..d1d0fa4e2bc3da40eb1e930675e5128312480b24 GIT binary patch literal 604 zcmV-i0;BzjP)+Fnea7wP&xrW;6iWBu$$Fm;(4K0BC2Ln1ne85NTU>WB_6< zXrT_Y=qKn#3!$|ggl}v^mwC>aJ{gY%00Ym*8(1$qz^QZ@dZ33|IgOXqB=lepi>V53 z)8{$&P8ozc013#W_N~eHY$fmwSv`&j+5uZ~$a;-o2+RnmwFfN} z@|VT+gPtZAl= literal 0 HcmV?d00001 diff --git a/data-raw/32/FJ.png b/data-raw/32/FJ.png new file mode 100644 index 0000000000000000000000000000000000000000..4cd241e1ebf7c152413c440e0e535b9664ea00fe GIT binary patch literal 923 zcmV;M17!S(P)kXB$tWT%S`*rbsqqTy^{ODwxq zOJ20LBw90O(=ME&>&{m%!uqtRehQr`6Uqgir>35&`( zR^E)KsF=RWN`5gs98m-TN=}&R-n@kuHXBagbAH}k8wL=+!${lhR-D_nGwAgOU?T<~ zC!U*n0qf!8^pupq&=7;K|9cPMX>~Qe;$rS~_pvy;I?$zv0my09Rw#hl3f*i?t&7BZ zKZ)0eBf->5qPchY^R?ku$x#Jpjvg-bsSzxG#lzYPD@WEHqA(?&W9j)6?K!~Fj64d~ zMxm@xt>1kb(fp^6=^i5}&SvZHro>p>9PFAalP=<;O7a1}#Y-H$s2p}hxAtkUf zv}Aa_+i11X#iol6d<~6wO*K5RG;u#RjgFtz;=bL8<$M`kHyhYo#mk@iIy_^h#5>XwtLXhduDj2?hQ(q$*mm#$^Bi002ovPDHLkV1f*}yA1#U literal 0 HcmV?d00001 diff --git a/data-raw/32/FK.png b/data-raw/32/FK.png new file mode 100644 index 0000000000000000000000000000000000000000..4d65fcf1511f4090ee4adda4dab5c86a3c532d76 GIT binary patch literal 771 zcmV+e1N{7nP)1QrQRJ$%5d;UoP=34;dwx-r*08?wv0Q!&oZnWDnKJY?p3xSm*T-6M5GPwu4 zlwRyodvVCnY?%2!x6z^Z|u3Ox=J7(jlIkP=u4 zEeS7UfSBr0Iwz*_zI%xbwSw%t2)q?ubd2&*{f>sCZbQy&e5 znN(Ikqok&u=Hvh>i*q^VUTS`TXhkszn&;d}Euu!@L%HHQIhpAcG!7COtTHdaIqy;i zbuXz;4B|ma6Q5_MS)7@oL_0uRc`oHQ&fmq}^9imZu>=*mRGAEmzW_CNl=`zHAg0Ou_Q{Q8D)peRG#QHFhNA4u=soWyqwjMUu75?*e~4j^D2MV!35L;0U!7mNHQ>#9$?jcT9M}%=UxaB N_H^}gS?83{1OTXDBLM&a literal 0 HcmV?d00001 diff --git a/data-raw/32/GA.png b/data-raw/32/GA.png new file mode 100644 index 0000000000000000000000000000000000000000..b30e54b1714c2414afc991d2f6e671a48f2bf7e0 GIT binary patch literal 129 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz4^J1zkch)?uNm?JC7BPda^T4_ zXq3H@z+kVUsuQ7cn1BEMADh;uFflyfZg4AB0&1~25O=hbf#C;x!0!?ezu+hX!yUet X|K?7;(ec6uD8S(9>gTe~DWM4fe4-~n literal 0 HcmV?d00001 diff --git a/data-raw/32/GB.png b/data-raw/32/GB.png new file mode 100644 index 0000000000000000000000000000000000000000..0279e694403419039a0554e66f16cf0c9c253f3b GIT binary patch literal 513 zcmV+c0{;DpP) zy-UMT6vYEhF6~t4(!r^JfGE_xi{MZxbaQmp$w6>Z1Sdfp6gsLEp{{O1U9^Z*DQH2V zxY@zZel*9PNYXUCXwQo%zegQr~168qILdjPzwdUS?*It{5CQUHZ&JT}{yUO4Rma3L>R+rEI* z4IO}=>h zyJXUFgToEb$Yw>Vl>i7i+yEiR4?ryzvkv;}=>Ux4a*7`M6IcgzKSP*dnvjK%L1Lg7 zEC!50W8hQ(3@C%jz%sbHH$@A;5@IQFu(ViWEH###7l5V75+x){mZi%Q4ti630aU8l zT-apTY}j+S9s&m5ukf7JD`St|34SS z{@-#%b;Jb;)&C!tNd5n~ND9nGaWGIVNY5QlMams;Nm=FpbyMa47v)tk#5aJy_Gy6}7=zd#F_0WS%Sm#;o?ROM|6k+(U$e{_BP1?`sr>(SLL46CKaYun z#RyqWk^{Ev)B69XR_y<}nL7U&Yf%l^E2RxC1z`>Vu|Z-~b%0J!;Q!nX`~RYO5&s!# z5C-tnMgLz54DQF7^8cTe$bm74y)Il2EJrm5K;j-4^wsew=>nDrpB2f0OFR$;v0;fY zezr4}9Dsz4x&!_n->*t^HUy~!>7m#Gph9HUdLyz6B9LCP3L;RkS-8;d|JyTC6c@!H zGeBk$T@<@d_WFPIh$7W1BaoROvq`RwLHK^S0#@-GHcJ1m>Z#ytM^L3f@-RUj>;rU1 zT#!=z|7nFJxKRRPBg@?jhJ@hV04g*{Kt8KkSgy7RcUX zm9W90LFI!}fVj3AGfyJ>pFP@bP3$Tx6LjTE4_qi?SQp~UvDmsH#Agcghe(GLj4d+m zTbMNt9zM*-EX7*l*|PZQffdYcIi)shqFffQeFQWyhMj@I;@V8xKldN$0PSS(boFyt I=akR{09hP1QUCw| literal 0 HcmV?d00001 diff --git a/data-raw/32/GH.png b/data-raw/32/GH.png new file mode 100644 index 0000000000000000000000000000000000000000..910e8772dabf316fcc032ece5ec01585e774138c GIT binary patch literal 219 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJMV>B>ArXg@fBgS%f7l_ZEs(v( zDj~q)!JGxR{x=?2%qLNLU%4P3 z`yU(rjW;~HpW55=Kdx7-Q#07D**<%pV!+f>yjRXL9D5Ssw~^VwasARGpW*{&&3u!w z-~=Og)X#tQcB;SrA1=K3zj*c!jbaApZGRC~xla literal 0 HcmV?d00001 diff --git a/data-raw/32/GI.png b/data-raw/32/GI.png new file mode 100644 index 0000000000000000000000000000000000000000..205c51821ffc1b654e9352d607c533eeee8f2ba5 GIT binary patch literal 498 zcmVj|sd5F7Uduhxf=8 zQX`YNxAiGFGvkgO-2{@35!`jzkaUjXd}ba;1y)6PVM%3bCp)?cq9{4?8 z?1~aaaM7nS?%2^yAmpBdR}|r}dq4?zM4^HL%(!Dm7lF6)ON0kqD3wR{?M?(H+^`Fi zA|#)K8F%ckn{$DL-G%Fhb{tpLBU0Uno8}G#>sl4DmQI9Z#vMEC=3L-qYg@hX7qObA zZ=~q!i<2VL>?!cnQ_OCZUURdJX061#Bt|xkYR{#J207*qoM6N<$f_7u!T>t<8 literal 0 HcmV?d00001 diff --git a/data-raw/32/GL.png b/data-raw/32/GL.png new file mode 100644 index 0000000000000000000000000000000000000000..09052a0196a7b50d2f531b20b8a5e60a3fb23550 GIT binary patch literal 286 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJr=Bj3ArXg@fBpY&f7l^Ot&Ndw zF`q;!!x_f^>>T}WjD>tZ%HByG?%o#3Q*L`%V%-VLM#BzXA?A}8uQ296Uz=Pp=iY%2 zn`*@lPgi~}@o(RMmSYNL9y}`SLC(VL4Lo&m#uFbN@2$4D+VI37>qIGw@VA?fD#LW#})Y~}=vAsN)CZ=ao;gk@ttda3ND{~wlPlcz2#;YdBKzopr0J$P+kpKVy literal 0 HcmV?d00001 diff --git a/data-raw/32/GM.png b/data-raw/32/GM.png new file mode 100644 index 0000000000000000000000000000000000000000..6d77a0425800b7ff70ba37f9203d39e4172c3f3d GIT binary patch literal 138 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJKu;IPkch)?uWjUHP~dU7$dizq zuY2x6lHS9dbtOt>c?DwjAAX0oOqd{Yj)|c`pFum^l8J%gKs9?zG2==fOQsL}2llnp int%iu;td%Xmh;|TaFanyb*30lfWgz%&t;ucLK6Tv|0quY literal 0 HcmV?d00001 diff --git a/data-raw/32/GN.png b/data-raw/32/GN.png new file mode 100644 index 0000000000000000000000000000000000000000..ae4562394eae47a40519002e84e08f5204163128 GIT binary patch literal 128 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzcTX3`kch)?uNm?(CgTe~DWM4ftZpTo literal 0 HcmV?d00001 diff --git a/data-raw/32/GQ.png b/data-raw/32/GQ.png new file mode 100644 index 0000000000000000000000000000000000000000..6046df69981430ea6bbcffa62bc930a1f247b43d GIT binary patch literal 487 zcmVHL%W000jNbAT2>4g-fxo*K+>u{z^Fzh9e|``LoF?UM65$u5zxGBhb6$F z(nxKc(Wk!YA#$m3Ud)uF@ymmo$EASk{Q9O$g>e4?NlY|*TUexMLwUe z4`AkmDSi4vqZF3{U+Bk$7$k#V>m0{bgZTX`$Y!(fdc7d6+(sQ7*LsjUJRVPRt!4oE z8ja9c?m$aa0i`YT-4?z0I?2TML^@P dxB>XrfKSgh5kslu|xE6%*b8Vbed<+Q9S{}K*zZ}Cs>~-PiPO&d$9Tj(|)lCMzQne_xQY1 R0)bXDc)I$ztaD0e0syy3I+Xwb literal 0 HcmV?d00001 diff --git a/data-raw/32/GS.png b/data-raw/32/GS.png new file mode 100644 index 0000000000000000000000000000000000000000..59987242fdc456dd14b868964ff2b80ae6e1c066 GIT binary patch literal 1092 zcmV-K1iSl*P)8SN2n?*?3~ac86e%dBw6p@!QK(1}M}|NF`I7KWiy)2_luo{63=|xYm@ZR6 zlg-VAWn{_R#musJ;Vz8EWMA2hBUyA;j>KdMZsS=G%UFRrvkk%xCwVX0bMn5=dC%|n z{w089HDgtauK}z9%mYkWt<28MF#7&i_`Y}nN!(jZKb+yVOvX*;k>94Lkr~GD-hG~v z=Wp?2Uq277T$ww!IAk$ayp=}@)fKTW=A_#*f5kk&z?;{&TUE_3ckVEC{~`OEt}X#E zHGIOiUw*@s#loX|_vT>TCEXZvn7RWhb|hr~WAOz5;)k-}18#Pl;-`TDn4RU(ufHz< z_<3@Y`~CfVclQDM%E`wk)|^GBh(n=B!!NQPiF)M80OGdpmMeg}^|-{ok+sys1yZjG zV8hO~Cj;Et_-CPi8}rH3qXZ|}sj)fm()8jH-9`BJ6yypcKALXAjGg4w4&keL&3WFj z6yU!U7tnv-#zCgRT#hhznOGrPyTb!DSTIz@eA{4?B0uw?Lf^!8Bf)v6O z0u@3Pf?b@iu^Bds%8Gd|p_Rh&6C5;`k(X0Smf4P9L=*cBNhsC+ zcqO_45JN=_7cpeSun|LNF~FRkZd(CKR}8phpKujrI|Ws?4sdV2hHzZ zqG9X|X4^O$bi%7sBTw64KKX z3DQ&`Q#BGEU%+s)KbO0_*)GpUsye+g0A8wNOjta)-R*&AY}bOl0c#jv9Fh=kNL}#% zvI0oe!-UH7$ych7#-4WBa}c4W(ZS+qL4`OtNU=_pl4jAM5fU4)5=_z>2vlOH z{=RO`6-iXQgJ(TH!`*Qjp#5Yt0SMq%0P1GIESa^w&`$sY_~U@|J!SYdDjs0i243V6 z$3FV$GS^RC&TIo!1R%*?*}U8!&4!TO;Cm0-BqS(a_IxJS_SZ|b3 zN)i1O&j6jo1Q P00000NkvXXu0mjfz$lAd literal 0 HcmV?d00001 diff --git a/data-raw/32/GU.png b/data-raw/32/GU.png new file mode 100644 index 0000000000000000000000000000000000000000..d29c9d7752e54df5b508a1c00672b964ac0b0b61 GIT binary patch literal 471 zcmV;|0Vw{7P)x5#i+)iEHfl1lKt=_+SHFe z)jX9V2ul}a4sDRgRzpUF!(!s??7Tcrh3D|Ozb@a;_oD$cv5ZCqsDOI`_@UJii`)Td zo~57Q|o}d*mA_BTp&z)L{#+;#=C~^^+F)0Rw^s?;rT` z`vQ~a9d-U*hJPM2cM3y-S$=@q)WO{GHNmYTX6F|XrF9lVQN-w9+@=l%05x_3XE!Ww zMVS_Zc>O_Ewtpd=T;Vp_KkSgy7RcUX zl@MU@V9tVD^+6xzcPE7$T+Am?dSC_f2df0p`8E>#GnkDmS`W^6$M@pVv_I#Mo?w}h z$dD|jAg$tdU0}v>ZSHc0j$Xa<2InVhNi1jnWa;`}y_loXu*0{U{mp~$L#LL_X6ASZ ow&ezopr0HTISvj6}9 literal 0 HcmV?d00001 diff --git a/data-raw/32/GY.png b/data-raw/32/GY.png new file mode 100644 index 0000000000000000000000000000000000000000..a63305534f53860f15bdc1a17d92d712584be64a GIT binary patch literal 410 zcmV;L0cHM)P)|k-#W8RPoD)?0-@z^UUyzace|V_(|5vYGfh1|}7!(J9@LmDs|KQLNV*S5%Uc&$X zKW_hr0a`c)!vQed1r3d0SN8wUkDLGh_o9a;j=|{wl+X}l`oE^1|NozhV*mf#w4thF z@Hzl%XdDoMID|@$A<6+bLjxI;=@_CNKrl4ObPUN3ASyISa17ZFaAV^IJ78HCAASei zu=@Y^Md$zj-*3VlaO1<{|BdID{?}TUPPzknd8EKm5a5I-3J6$Ab|S>}z0Uw0ve1O)SOf0GO`>{aoSIF)b{`>Hx5> zfen%sD^}3lQmhVe_3`*$wr@IJEXC@8(N^)O14gt103hi>lBs;t)&Kwi07*qoM6N<$ Ef_YEDQ2+n{ literal 0 HcmV?d00001 diff --git a/data-raw/32/HK.png b/data-raw/32/HK.png new file mode 100644 index 0000000000000000000000000000000000000000..a07471fdb69ed78695093da858140aef2058bbf4 GIT binary patch literal 620 zcmV-y0+aoTP) zOGs2v7{>?A3e(BRphe>YOHD=)3dGu^APHeY(8^p0u38j~v`Lg~5r`xdBq1)UMF=TA zNU*Yn&LSU_qTnL#z0RG7Q%*BpywluyIP>qE?{3;P!dwlV#kaX!&j0uQzsETy0H*y6 zQyL%*@LvE(7xS>`*L5EocN*ZVvm)x0kcfm4{5*+3UpK<|C)~E9blaNb8owqc{?2E1*z;Oo4H(7YWnuN%tiet4R%W4-cB>Hx@v!YmSt{qRuZh3wOCHP*m$ zyB5D^K0+OR3s=J>%AESah%w{`uUDO=IxB@--_PM>`UlMi632 zcG9bPR{&yZE*#ZG*m~KE;D>Q21AUO$1{5q=R2J>q9GeK6z6T6j#cZ~@0564L$<*(G zic^%ev%ZQsbb418Q%bL6TE*q&!}uOJ5CG{{aT?%I1N;I1-Zu&twnwP|0000_pz<)g8>WlCH-+uk`pHy({!53om;dj8# zKmY!_&b;$KYRLnVEC=bcpLY9y!itBKIRFHnfBFT+xa2M-Ryk*na)v|5u-XW0eC1KdvY^^Z4ukOV7Sj=71Zo ze*Bkiy7J#<$}N&|!k@qY{(H>63yvNTo1zd{asK`P)feBB9JZiD2*N~#z-UQ0>VQ!P hjJAqL9WbID001xh#-RR8?WF(!002ovPDHLkV1h3midp~w literal 0 HcmV?d00001 diff --git a/data-raw/32/HR.png b/data-raw/32/HR.png new file mode 100644 index 0000000000000000000000000000000000000000..c5fb552558968845a0fd2e25732546eaac37da8c GIT binary patch literal 511 zcmVg_ilFyU&T=+!!%*BlMD0S730A1G3R5C(rz-(g=zq zaX2tQYBY@c@;S%D0rLTRB7rW;B)wkt>*~;DnO&z7c{qr!DCPtHXc}>k2X%UyqxpH_ zjg1^fBBaK~NQ$EQfU`uLy_+{UT395#y2|&G5`JxNk{Tc9;C9(LoFJV>S5@TpHukHl zIm=}D;c%e72$9va+yH_-jFBF9ETD~sQG!9#sVS5|0Bv#-w`b1Ko}2-fY$HqzMfkb) zj`x@Ikw1RH@0}sfCY=x9Uu6L-fb|ty01E&Je*t$F!u^ETeop`Z002ovPDHLkV1i~+ B@xTB8 literal 0 HcmV?d00001 diff --git a/data-raw/32/HT.png b/data-raw/32/HT.png new file mode 100644 index 0000000000000000000000000000000000000000..bff74a76c5c709c5d93d5bd1353847837a86a174 GIT binary patch literal 290 zcmV+-0p0$IP)Hn|qAINvWB>|KF#9|P* ze&yDGNu62$XVmuo-#@+Szp(1;{~OmI1bP0l+XkKo_Qn1 literal 0 HcmV?d00001 diff --git a/data-raw/32/IC.png b/data-raw/32/IC.png new file mode 100644 index 0000000000000000000000000000000000000000..10b7e79c5a32de51ddeb1955440313cc31d0758d GIT binary patch literal 295 zcmV+?0oeYDP)3W15~sHvV|ft**v7a4r{n? z9>5V(p>NiBT)McQd(gLQ*rTd>fTUc9)+-_xcA^k*VLmSN&NM)`mcmReA>O+3Oa~J0 zOaXXO8dgdGouP_E=f=Zk*0J5&0n3Sm(=-Er^#D=1^7!OE@7V6`fONABu`z->IYOv$ tMDP_hvyScPBO(9+eilGiF#-M;@B~n}1$lmO8T0@E002ovPDHLkV1n7)d`SQR literal 0 HcmV?d00001 diff --git a/data-raw/32/ID.png b/data-raw/32/ID.png new file mode 100644 index 0000000000000000000000000000000000000000..469675a6c74f5e13eb16f291ce1041883ec769fb GIT binary patch literal 118 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzTTd6qkch)?uQ~EE81OJ}43g;l z=x*dC*%P)(`R@JmA(LLMVPJ4$xVQ5q2T*kapF%A&keT$u}o~s9r=eKVNX{- Jmvv4FO#oeGBG3Q; literal 0 HcmV?d00001 diff --git a/data-raw/32/IL.png b/data-raw/32/IL.png new file mode 100644 index 0000000000000000000000000000000000000000..955579f4a0bb4cf352badae502a4f7bbae7c5373 GIT binary patch literal 325 zcmV-L0lNN)P)j1A#{!Kye!Q@$)Yj4_G3so^k7c#k5=Wb-=Ah zU;m%D`2PQfgD?MUM;-aE6?x?U`U5ZjpSbk?|ILSAXzzfT>mUEu4mtE+8HfufT>oD@ z@y37U;6wj)LJ$3)w)PS29q{|lzyB_Ir~l{oU5ASm0UhC#bL#)E-~VXufIol#{dWaA zpr9Y&fZ|CY2b=~wj^+-SwE-Fhz+f){T3k8>5(OZ!>GX(#8^DBi^!&U3YxlnZCqT`J zBmdXzdjS@^@!$)6vtiZrTmQ?Z-W<4c;5)Do`c934XtXXEvX#;BX%UUKibowVq8$JL Xk4&eJqyYJp00000NkvXXu0mjfZQz<# literal 0 HcmV?d00001 diff --git a/data-raw/32/IM.png b/data-raw/32/IM.png new file mode 100644 index 0000000000000000000000000000000000000000..68a452e97d72f64701a1f407a963a97d2a732fcc GIT binary patch literal 629 zcmV-*0*d{KP) zPe_w-7{?d>nVYshVqi$6OZUh3ea(YWtwT^)6d0K#CYF>QJX8m7c8h|bEE1v^bcl8E z(8W9ihM<;EIj3$zXXrL<&AsnCi#kORd^!{qbSUf98SU^r{NRD#hu`n{KHodJt0W24|7~56LK-)>?s}D1G<1WEKh++RdLIeFQ zTB}gaA_=pTq0`k2c6alry@`;pA9Z7;Mm>;YW2mc(k%zrZ-tsWj)Pet8Cm(=l^LdmU z8%l0D*62dfS0HEGQ1hJH&w-z$w-a_ZFdvWO zzjU3LehY~raqUL2VwF(z<-{EOnDF-T`080^T&1K6s@5RNI*5GAq|s-5=+({D3&zF@!wp&zV?C4R-6I&uK~UQWy~ZZ>;F$A P00000NkvXXu0mjf4i_Wx literal 0 HcmV?d00001 diff --git a/data-raw/32/IN.png b/data-raw/32/IN.png new file mode 100644 index 0000000000000000000000000000000000000000..8b869087474e2c0e573388fd737e41f5bb60d2aa GIT binary patch literal 301 zcmV+|0n+}7P)lOBUIk+jK4e`wHD@B!Tm2QGJV zKhFIHIRIRj;TV7c`T>}Z&`B780r~@|v9jz9$BE0FkfsG{u6h8^yFnC9D2k88!l%9K zUfKaXp9Lhz#CCgzVH}|A2kdqiI(t0w<^fghvh364f*^zE=TOzKY$AYZM$H3kJErP& zeNUH<$1?&fmjO1L763_-Q{7eVnzk27{&4X3cW-R(k5yb)G`nnX;rH>wJpfn1hojUi3%bl!fX<0&`MAnq&XTan$1#g zcfS7?1rf9{6NT=9vpV16xBLV^$Y%u$U;zpO5Gg7qAGH7$pl|?W5Y5mrP4mZ1F*Gtv zW`L9`(H)&bGxQ(#v*ZKO=WAwSTe$)B?l0lLKS4Egw&O8EkLTa^M=42H)I)t>5Z6Wc zZvks}M~t4XlT;;aYYtk16HH%5zTNa6_-GD}(-0V@J?zRJpc*;}MZ|lvhi%nCduWR0 z%`sX-lT`WoSiU_3zyut}t5kSO2;W%?4fktPSeH+HGU_xpRErJ z(HIyeE~ha}lS*G7C9@rrFW9N`4^q7{z{)4^*8tDeE^T2K?$|arV&bcBFNm7Lz4VH1 z8UQ3!iMX8NNlua0WD<&qs43Y2(wdB_YP)>Cg&*oXQ{l;^5Z|9|VaBjf1(v3&q7wC-jFgy--p@Y;qqYehzdlGqx zrTd*l`C*`u!+&(6|0u0=T2?pWy}c@LgZZIateZEhg26M<_xgt_e{xZ@wN zxEsa0PeGQ?ZofxpH-xK<@785P%>8Pz)??L&h^AYWZTx;%$WbDh*Q8M3ArGue2H z#+4a!e+T~VC@L~1NnH2?xbS#c4p~7SCl3RfhSQlD{9Ikdsmo>LYimePO+i=He{VqD z-^cgfUiP8qp%Bh|K3uM^vzoHER{#S?NBGg#2XSNs=fNP({CB+1T|<8ykSG7sdd)iDVK@cC(8r@o5|GJ2mu2XR!r~vC zJV4Hsn^(_vY0s>4PG@h^HaRzto}5Igzn@*JI6jW_#012F0fUc@B28+k!9jM_w3j9| zacGG3>8?0DZ0wPo_Sr10(;C@fv(wXDJ7sEf143gXgt|H;Dk>n<*W;k62|{%>5>-_Y zYHM-O(qi;#YK(qsD-va85E>c`-rUUifyrq-QC@zdm8(s)Dl3^jH}I8&Vt^a?MnW-Q i8L<8pTLvrx6u$sN`=5xAq5KkSgy7RcUX zl@MUjaB#%Um2ib|F`tAD-w%HlhcX6H#v_adhhO%x_cOEE saJdy9T*2%nYw)V!V%SF@YYQ{Ovn^i>G$tPW1+;|0)78&qol`;+07vdHMF0Q* literal 0 HcmV?d00001 diff --git a/data-raw/32/IT.png b/data-raw/32/IT.png new file mode 100644 index 0000000000000000000000000000000000000000..fd4a9db66255d43442e7868b5c83932759e10a39 GIT binary patch literal 123 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzCr=m0kcif|=L`jbl1_oYBo45# zZJBhipg8UD!{YDh^Kw>4ewATpV80OO=T&~JhY6?$0zU9BkYr#eJ-~WNQD<4ob@hcH NVNX{-mvv4FO#t5*BmMvY literal 0 HcmV?d00001 diff --git a/data-raw/32/JE.png b/data-raw/32/JE.png new file mode 100644 index 0000000000000000000000000000000000000000..734f2bb98535c48685535e8c738cdfa83d194f19 GIT binary patch literal 483 zcmV<90UZ8`P) zO-lk%6o&l^No8h#A;>;x*Cr@}s8xj!Nfdp!Y|*B_5ClPx5k=4saMij$5N*_;!Wr`` zaFNp&<~Y51M=b|+I%gDWF$d1(GTigL@7()x9RM7E*$x}P2KW~MQb#{T%kE()2WOy` znosFXEwOjJZxq#e-vDB8by0MBViAQqsp&?Vs^DD-;YHcUYpLI!Lnx}b=Ad#CndxQ2 z4B0jK10aT_$9={ROx^fI_Hq;HfCq^{FP<*e^)-rW(W$XHd_-rm#Vr2fXWG%JtOr1B`8jcvH=?1YpHWU{|%fJwFF>xulXs;03fCr zJ4HzVj5K4Xs3`zhwT0Yh;D!;vis}~KC5fmYlmuv8}_T%2CxA{ Ze*tK6z%!aIqxb*-002ovPDHLkV1h;2(j@=@ literal 0 HcmV?d00001 diff --git a/data-raw/32/JM.png b/data-raw/32/JM.png new file mode 100644 index 0000000000000000000000000000000000000000..8d504f610da0ea57a67f4d8719b824431fa7eac6 GIT binary patch literal 424 zcmV;Z0ayNsP) zJxc>Y6h&VQB*t1|V_{GOiiil}e@J6tX=P~@>}+i#7J^8?)=~mN8?hBbK!Ye*ll+IE zV2D~>eL{wv>_=vHN3@uQ+sqX2oXgBI1c3fBWC1L|zX15`5IDV70!P&>Ru2}jQZk=X zWeTs(7zXnMz+02VBBxQ$VB=)Y*xatS!3$ zzCR?BguNYtsWyVF_jd`IapIvez#t~t2(xz2@&$;~hKjWkK$JFAt+fDD+R(Mu1_*1T z-%k8AqGKHyz}-gAkwG}`Ej8;{0G#4B;pNc_z)%dwkiP;jGflWYlZSq=d0Sq)IVa?E zh5^{R`ydbMG*Z|)&0(`V3+FB^?eT$CX=5aSpEVnoFD9{mxFD_|UrD~2!v}Iy8=(MU z)e0XSa_=w)9e Sw6ib(0000F!IPep*~fQ$0R|F2nifiZ}U%^~;V zbN~N-{gyTkxT5O-HXMXOY#N6KrUPzyM*jcx>;)Ku*!UdqZrxVuI{<`l2PT3sF3a!5 zX45VT2qi))_?kQi^cv~@7c8{?&roGcHB4MVB&G4+EzFdv78C6NTKJkM2hh^j1RX$Y vU*mKDy?l+;0rd1WRtJo>ibowVq8$JL+R~k_MaD{A00000NkvXXu0mjf0Aqc1 literal 0 HcmV?d00001 diff --git a/data-raw/32/JP.png b/data-raw/32/JP.png new file mode 100644 index 0000000000000000000000000000000000000000..80c93d1af3bdf36e526ef16d9ca5620a39ddc05a GIT binary patch literal 211 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJS)MMAArXg@fBgS%f7l_ZEs(v( zDq({~!h!=UnA=t`-+O2E?SEC&~CW9Z&4_?rdj!5)58TC9c+6v zu}cC`9LMj@I|p+R63G?`6GUjsNvEPghn!A9nv&8)Beb9dOK7oCX$e|eYbz?EpuZqD z$*f#NiiR2*zy0o{sI7bCDRd7${JwX?dmr9=zvDOnTtDFq0YhLQ1Zbci7y?WJUa$AZ zGyg5S-R|BC$g+%ak4MdEmkZlIpPGm5c4V{J-V2DLh`B@pL8_0*Bs#?+!aNT-9*4zZ zVH1GH@!D?Vnigvm3TRa-xRNBi)azgvU4e5dTG%(6aY*$xpT|SFjAP2X^iJzM%mOpY zg2YWQh*~&|1Im8lOb>w*Vw5N;I}nYcnNFih*-9MgA)suxlh`5}u^8?%8C76NF9C(= z&m#x~Pz#0BBbX#k^%B?h}rBG2pt+j#+ ztwp7+ZGuUfOlIcZ>v!+O23JW;N+@Q?&4kG$-}%mW&bbNGT4R)lgApHN0Am2cJZ(;$ z9f=hVmzUWA9D(6VGCtKgoY&Z)R}xdwhDM(bIDim8-=UmQMNcV=Yzk%oh4 zDNo~IT~*dygo;_Z4ejo^2Kdnk)jM;Dp64OId63^d#IJIw-kwiKbis@$0-ucu2^)e7 zm!)Y`g%-Hc{Z*3!dT!dIi^VyHR|GWCt*dmiB$tplor1F3K*ENg0kjoO_EH-H;o5}lE_Y)G zEKsQ5Dt*oy7}4uoD#EWGqBmKhTv{C@A3YmN=6)mK!EHzo<(5c8 zW|`7&IzjRNI+~BBP`^8C8S*aeBDh(G`r#semxcV|LvFZMAA{O5HUpWE@C sZ}i?K^%uB<_?wW8{~3(|{PzHU1M99c#!Cnw`v3p{07*qoM6N<$f?GRWSpWb4 literal 0 HcmV?d00001 diff --git a/data-raw/32/KH.png b/data-raw/32/KH.png new file mode 100644 index 0000000000000000000000000000000000000000..18edf66942d2ead3b1956bbfeb5cb935820f604f GIT binary patch literal 549 zcmV+=0^0qFP) z&r1SP5XYB{j{SrVK?E8RU4m}i`z!iSx(Hr7X*cl@)h&vONTVNzGBk8+bJwH}btp?M zOLx;X>+tQ(L{d;`Bp9@ZVcxu*ee;?5KG>B2NR2ef0#(E9spnncY2bolAm7)(vW$>=CTBG&A7nDICs&(4q- z9)8^$7(nsx5a;9LA7uFz0Cf`U>4Cn!&IR);D@b`f$So|Olt`d-e2m=kGSWhd+|m+E zRfWF2&47`50Vr*4&;tQ3Mg__j7d#Cbe<2)(8H=HOdCAWR(hvYg-Q87X_>lzJ*;y`X zimnTh2#Sh=hrK-*ySqI0Vl>Kflmx*2{CxfH02No-+mW4~hQ6@@V`~e><|cIE^J{C! zudYHDF?DV1>~PNA+#HU&x_&PK9iTcKcnAjZluE%AU6+$dJZCa^N~d`mBnz#1PvjJ3 znSCJ?LVRfGTZpOvG{)q_1Yf}W#YNoue8`DQNL`a zT})GF9LAfOZGa+BC?5vPq*hGKE=&}ZEW^cd!InX9+|{m@Y~b$rC^Dm)aa&9@3>cQp zZOPP|p*Xj>8TX~G<-6@UJzy4@1BCKDC{Q$Nq4wGTeNQ>3II_W(X1nM~p7h`6_rC9W z-v4_}Qw;#ke<@8QKqSEbB7m5%1%E4TP;0Xw#$-VtiE&%_r!$(qlP?e#(l*QERv8K~DsCP~h3nNcICf-UrR%LOK)n1ZY|VsNro-U1 zIJhq)V#1n$Uyr81^_(7JB8`d73R8f^5Y%?(QwH?DmX3i>b@I+l>2Mk|S9SA$7GP0y z=8ng+V2`3>d6K%aW-IqrdiMXS0|M<*pxsKe>zk!%=&7O(yhzW+woMSC!r6g%`7Llh zy$O959VVN#@Hi6S>C|GXU5nnDWQe)+V6G2W06Kenssa6{k}%_-o3?4;ZBK-^BN3A= zTFkh#=&RSkp*Qfcs}B%wr1ly}nY?~q%{sxtqJgnIt03txqL1irdn7h z)}#C7RQg?5u7iu~8@fV-ZGd+Mn485z zTPw!QN6@p!gr2-2jF!HIg%;xQkfs6ObzuAe0>AA=;MQKyVBobqBcA zHUe{ljq4k67}Fv1r)mDTu3?xzwvueTW}XrtCjSI9x$h$BrCR6;>v$dg{Bi6oIfLx| zXQA*y#%onxe3ol@euB^6x&Ms98A}Rs<|zTHKkq>Q=&X`>aKekaCOcj*pF=@;BdQxa zaeFL;k9$#jo_Iwg3P|stTgnH(*yr`-PC%;&RUnE{7bIV01+#%dOF-M-jnal<5DFM`$o<>fI+Op)LI;5D? zBgrP7U2=K}XW~5nuQ~HLFIKq{;7WTh?)w&$#J&YTez5nWvf(PsmaDkZ!MOTV`R14M z?>hSMU|!{{{=Tyhm6jmy{4-~s5}>(jh!5ON>2qHH45c6Zh@V}9xO2~kyZ7h8cm?rY z#WF9eU&?J=Zj_(=iSu1SZk61`=ecZB2q&?cdFm1Deg~QzN1(|$DvQaN`ut@FZvj4~- zf;DXb)lexk5DxhA<1<*qW2!yeqC>Y2&^m39?*PvhqyKYlwEmwHR3jUsH~{9G>P;nZ zOH!A{VzoRwP5=KPX?2P$$8bRG!ccG`y#MAdJQ1F}e;mbP_cqFXjne_JLzvom3cs9()q>iugI)GMjO|}DU+7ka;mGAg(ReFRb7`Fp@?EhQWO{ST}cpX4% vU*mQFoqUbe0rd1WRtJo>ibowVq8$JLj*T(Sm17x?00000NkvXXu0mjfN8h#@ literal 0 HcmV?d00001 diff --git a/data-raw/32/KN.png b/data-raw/32/KN.png new file mode 100644 index 0000000000000000000000000000000000000000..a8ff1e8a0851d9c4e5de6aee9edc235e25feb9aa GIT binary patch literal 377 zcmV-<0fzpGP)`v2#m;QxJddH*X)GXX7Oz`!(dK;#C~ z|8LKU{Qq!V;D2E(2Ud$|;s9cOO%n%T^ED?Y=YI(a37nQoi!o8|0BpW)X=(ZI;oYJE3QG7gTS9ZfBsuqT4MNm(-a=CgFh}3BhLZ&;u;j} zAfJQ4=g*)2FI~D6?g*H#f1MEe|0q@V|2aW5(j7o3g$oG@frA}n>53IAu=@InmNM9K zk{m!z3O6$|!|H2fOq2si$=A5z8rj!GJAfQte~L}U5C@67V004Z?iY)|pi825H002ovPDHLkV1h6{h6Vrt literal 0 HcmV?d00001 diff --git a/data-raw/32/KR.png b/data-raw/32/KR.png new file mode 100644 index 0000000000000000000000000000000000000000..ef0bb15f0e258106d02e396d2b2d834228908172 GIT binary patch literal 888 zcmV-;1Bd*HP)!DGRmO=FCg;#!w?;X#8-hX}c-ZBf?|q*0p7)&hqX1BA32H;Y zhJf`VV6ALr0dsS69At3=$sg!)$Y_=sa3qP#{f7y zoBarw?>g!zzT`h(<1`u#A|oRa6BC2V%1ZS2_q$hu#l=PFbUMi8a`wNmH=i8DTLaLx zJ(xwuwjgwD@uz)9F!t;n8=sq-i8cyaO|J}gE1!LwK# zpIChXlhd;}Ah-|3J|W3ox8oG9dtU^_D*zRGk48QyP66)trvu-~_~+0qSOzR#bN2)=6HuX0u)m*wFo8O8i_SFPk+qYULC9TD zzH&Ti?quT&3k%6XX2iQCU}R*3w4PWjMtFEQnwpweUye!(>iA81CukwTc@Fs9CgifR zmvB;PwOWLQg^^)YTU$$7+hqY}vl*eGp-4|pM^RA`_3&;)(HOPhu9lcj6IRX z2)|SZ^{d~RkB*L_w6v7;KQoRw91gm=y4)*4RaF&IQc}o5&e1wEGqWUS++xMpg!Qi* zFe4*_5SNscpuWByb#-;_p8=+B%ovT2k0+NABgA5{taz%XrlwF{UQX_jxVSiEW@dVR z2>bf_h=A7CR=2NXy8Z^P;7X?SWbJiC5g$u{1KHw65@0)7G0_6R4;P-Sue O0000tZiF91gtaJiqsO|NlP&fQezgS1YmKFVtr-{n3N{?rvrG+;b3TX%TK=_9Km%YraN%aF^n&I1EyTA zxqU0Cc>rU>LyXH6_&zcM-{dq7o$g-*kfZ6tyBA*gR4U9&Ow7Tq8UVfQEa=2gbsfGM zjX*GnnIFFv0DN=1F=;U1{rD6zWbPF=UjRU-Wm};DY%AQ46H;tQ&2vC{%8c}aW~}8d z0Wh5Or_pjN8~{JR1wn5f0#B2GPf~2mv_%H^m*xb`_S1D~SCLb82E5#4?BFsGD+Ea5 zTO$LojhDtwjp!QK7F}Do38YG_*d!NYtK=khX-bfs)wr|>NmwK>5*i6E6o3Rt!X$x` zP)V@inoERw^p~hHpj6|rvK)7nG8nUqu_ZeK09lHxMHVBgk>x@G=(J=_vM5=VEKAm9 z1GvJ?!Sh@O&ng(ak}~ip8NAuffVa;S9)LoH!i7SH!iGZUZvgs$LW*E1v?#pT0PKot zctx8rRxX%*Zi7$4$A^3#gz}EaSFl=DYJZE)b{EVYkI>fRh4rQrP2EqBF6)Utz?#`Q zZyH3QR)nHUl`z~N!vWQP=vvLl5Jh(;N3%tP z`r0x`wH6#VJ5gF?K&zz$Hyl-PIclRX!bDyZgvaV}x$Z1H4{C5hr^D_e*N~99cyCky nmQ!(n{|6wJ6$gj|#2nx^anS3=b!F#Y00000NkvXXu0mjfnXFHF literal 0 HcmV?d00001 diff --git a/data-raw/32/KZ.png b/data-raw/32/KZ.png new file mode 100644 index 0000000000000000000000000000000000000000..fa44b78a187d522b73c7f68aab999d9fa0998734 GIT binary patch literal 845 zcmV-T1G4;yP) zSx8i27=}kpC8;0`Z-lG}X(7a-Y*7+4p`fBt%N9zIu+SElP_S}Aqcj6^3D=6Ug_v<> z&Y3eajte?2>9}MNUDjn6UIbnD_MYF#uo^uRq(NT%91iE4|9k%Ld%yQPIsm$bT)IVo zMSy<-KxY_&&M*ug!)tM!y8rv@2Y`MQhb;F{WWR`=(nIL<RGQUK$)PzWL zD^|31PXT!g;6w7WN(pKmDcCPp^WoU+AL~aDZ0x{kr4*N}c__ADK(;LhY1TrlHyJcT zOau7xG&k%SkUHa#suVH6n_1Hyz-zK{8-*0@hu$!tZz(37t5DT`25HJotQ47Wd6$7x zN*QXHfqinVyPh6u&S$GlGSaODc;B-D==UYSGOj>;aRwvTmWA!o6L%ShwQC^JQjP{k zGImQX9yQ=gpIE|cIMbX((SCM@h|_-+0Luvzh*JA`?3J3QH8LB-41gS4HXL0sOzoZD zcL7hn)%+A?46w#z5~&{Q-UbYCi@qQR_rs^&Pa(NSyqDL0SDR zsAx|`CdKC?l<)G^iYtW`M=_n+tazAhIV9{io+(eDgR0^SFbrrO=`#Sb+`~u}qxNCs zPP6KqVvTwAKk?HzzRYnPKkSgy7RcUX zl@MU@V9tVD{~Hf1=94I8xWmXJCHbG7Y4TeJ*XgtVOMj31^Z(mnaRauEj!7kj3?~-x z&)@ggon65&NY-&0^R>5j|K-JR6g@C{EBoQ|_53+}3@3T(*&CWF9Tq1X5PsN@?mSDx rWpU}j70hgR7#FX71hg@Ooq=Id{anQ#yk^INZes9s^>bP0l+XkK1;I(* literal 0 HcmV?d00001 diff --git a/data-raw/32/LB.png b/data-raw/32/LB.png new file mode 100644 index 0000000000000000000000000000000000000000..202c97b7afab292d43afa59eadae4567266f0928 GIT binary patch literal 447 zcmV;w0YLtVP)Wv)yD5=_CMjD=Q(httij$X|$bphLcv=42SZv-7ibS!I z$t(vpnib2-G>mQbb(5>gnlu1VD&p1Q{R${siDIBa3K62FQS~TM$w8 z*z_#B_xV9Z4lubb#AwP$5*3tg_HyI*{vN>Yby2k5MZsD-xr=IYml`>|cl-{(`Q$-u z9;I-ll>}`iImUYOSKFxD8^QDHl^$Sya8kW9K$55+bD@q@gNk@jLE5~Mp;HrY??LGR zkAW9Dk2I8QbdxeyL!77}Szk@6K}p_nGac3`d_li7fG}Z>A1-OMjFGIXBHf@O+tfhp zYy}D0O0tYvUPC>9^^bbZmTQ z4Bs1pKNR5V`4)h|QzMC*a)g;O98Wi&J?Fk_=>P!1aEL9Boy99N?&n*2Y&yitZSLQE pk*}eA3uM4wILGo^E(88A-~(uK)(_8I466VD002ovPDHLkV1fm%%3=Tj literal 0 HcmV?d00001 diff --git a/data-raw/32/LC.png b/data-raw/32/LC.png new file mode 100644 index 0000000000000000000000000000000000000000..1420c315473e0ac986159fed3f402064365f4edc GIT binary patch literal 370 zcmV-&0ge8NP) zF-yZx6os>ja|-?varX~oadQ&EEt0KH{s|{X2c5Eui;FnvBQD)+wNNo2R;h~i>1oal zuMQ%5OLX)|FW0Pa02iXv>R%!%k(+DuRbxZTh59MSSTUQI(p&z?3D z)BtYx_jb2%cT)WOtRd>3hSJk!f*L?}|E-6c zY*EhqHWO3;2VINz_UgC8op^?4rw-8XG=CiK^l;UjkqgPx0P0(D4KULHBeaHRZZ)oP Q0RR9107*qoM6N<$f*_Njh5!Hn literal 0 HcmV?d00001 diff --git a/data-raw/32/LI.png b/data-raw/32/LI.png new file mode 100644 index 0000000000000000000000000000000000000000..2e502e7cd71dc7ae2e6858ef7f1b01c350d9bffc GIT binary patch literal 363 zcmV-x0hIoUP)YIO-@U#11v7Q4|GnYZq}*5FA{J zU22PZeZlfOf~fDR@p_zuthuzB|J8VT#wA4CjtP+;F-R3Jj3(+1Re|+|2NBrEzzua(kxGZtArB9ErSxFx(&~ z(7>A8;p55RtCQ#L(d4t8JDG zq3U;Aum48%|FnQT-hq$~(fgo66p;W4kN^qjAAtOdCE#BJegIvEQD+=2FXjLM002ov JPDHLkV1i!7pyvPp literal 0 HcmV?d00001 diff --git a/data-raw/32/LK.png b/data-raw/32/LK.png new file mode 100644 index 0000000000000000000000000000000000000000..efab385b4e52679093c6dd74ce6bb5b1236dba7d GIT binary patch literal 957 zcmV;u148_XP) zeQ4Bm9LK+Rx82<4Zgayu+~XeZVRyF)kt78LW`s~ghzO!66@(Q=hM^MVZMge+54&xL z6X(V>7cN`faBg#XK9p@?8Ae(P5gA4lN%mw$PrUlvO=0^dsNZ5i`{T`*`~L3xeZRh+ z&*%5~eHEZ)Q)&)i4&c85a8!ob&{P1mYUwnwMopLer?uKYWBSJcHwH|MZ&*m&6(H^m z{I!v5`t!`X%z9k_w>C-CyGh*cB<>Ismp?m3t-UA1(1mc!PyA2_v8ODbBVT#n{A|n2FFm3+P!GyOvtnb*F=i z9l6A6d^!On{|A=axYRn2rV2m1mQ}EKwS}RrxxAB9oQfzC4_Qb*W8vdu9^Vfb`E6A3 zWxu55g#yA>oiz}Z%1%8|$oY;On(W@}@8i!EayVq*Sc~GVR>gaglAnfU%_-6AqA}4) z#SgC;=vY*%GXj#s{zr=#iz)W3EM{Wce0W=NeNb_2K=IwHia$oD7~fJ_@%2ka;$FAT z2uKZdK3GcM7RBcW#W1C~F(jrVlP2FBx@mY^arI@zSN)Uoys0?xbP3@Koo_*=sdTSc zz(~l*r9B3&i}_`F{eG2@{~{1S9#MSzih*~f2mCB+uF9z=w&(Nv2}SR{c6L@Z=mf9_ z=v!ONG0i}9v7O;Z%II2N&b59c=Mp&#Jzhe4V=Y>(hb!G?iGYdiK|7asn>oFuC_AsO z6H0%N`s#=-u}V(}NJtw9S9|%QH-|T#&!^epC1!14N2Qu<#wh`1w|?fJNAXe+6XMF*u!?|4OG%~o=#3wx_QmYrDRR(9~ zV>AgOt=a8mr^ii9+H#T!d3?!L^BQ0{Pd$=L*-a`u)d=YReG`I>*nn|A;E z2a-y9nP$I`+rjLRvukpBabOlAJh&c`Ff9$=l} z+1FJ4b@G3H7P;Q0iy9I(fd&uwByvUjtrA?U85mSp{c3VOB~yUTWAJqKb6Mw<&;$S| CGfm(C literal 0 HcmV?d00001 diff --git a/data-raw/32/LS.png b/data-raw/32/LS.png new file mode 100644 index 0000000000000000000000000000000000000000..912441650ffbe48187403f3b955f583a165ad589 GIT binary patch literal 261 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJGoCJvArXh)Ueo1j36N-gxPDhR zXV}L_VrhzL-4EDUW`CU4X_ZjQE_RSrBjRn^WP6EwnVT6BLuOPzc)kYfVdIH|v}>Y}hj|W+Kr3T83w$(g)(1?f%AnSNLAurU>*GgQu&X J%Q~loCID9UXqx~4 literal 0 HcmV?d00001 diff --git a/data-raw/32/LT.png b/data-raw/32/LT.png new file mode 100644 index 0000000000000000000000000000000000000000..1910f1c55599ad325eb3115bbfc8d8d8b506007e GIT binary patch literal 128 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzcTX3`kch)?uPF)wC0P!>ci<4w z^>B7pIXENTAf)0*=VxvIZBu<17-|@AY_<>t>X36-Yz?IUGlb>(u>kq&Bp4cQGk)18 VyW4P8OFU43!PC{xWt~$(69D(~BWeHu literal 0 HcmV?d00001 diff --git a/data-raw/32/LU.png b/data-raw/32/LU.png new file mode 100644 index 0000000000000000000000000000000000000000..cfbe5dd9614a3c3b47a8019e80c3cccb591a94c9 GIT binary patch literal 125 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz7f%<*kch)?uWjUIP!KqLpyx2# zn$sCPj`>k$9If$1^`T!FFX=F`)G%5kU-D>RV0_QF#jl~kpCNL#8xsr12W>G0h7+tV XGqwaQy1(NO&^!iDS3j3^P6_pm56m+P{HPkNQZ$k4;Er}%Op14Dyl!xz>BjsqYA_arr3ZQy4WSyIofa(*pP OfWgz%&t;ucLK6UjjwA;F literal 0 HcmV?d00001 diff --git a/data-raw/32/LY.png b/data-raw/32/LY.png new file mode 100644 index 0000000000000000000000000000000000000000..ad52e6564ad39060dd96664e36d7fc0c51dbb847 GIT binary patch literal 280 zcmV+z0q6dSP) zK?;K~5Jj`_07^i&LJ&QJxb7Wv>rp&`IY4jVI!CHI(F6GH1S&1GP>L~K%)p0XW-%|5 z$q)fR_>^D(2KWnrn~?A!24H|4;BN4tp8>Kg!!Qh(=h=#Uik$+G=Q*Zn!n&@|THC@w z5I`w~IF6B~sapU#Em_xfZ}Y|&lx2y!t`Uae@c`6vGAZRtoQkz=i*X!nzVCZC9ry$g zMbS9`-&{deRcM;V%@q_yu@51g@_7i8Bym54kC#B5SeC_#e2Sg62M%9E>Ux0>F#rSb eub2TCfV2VWyU@O?udU+%00000 literal 0 HcmV?d00001 diff --git a/data-raw/32/MA.png b/data-raw/32/MA.png new file mode 100644 index 0000000000000000000000000000000000000000..c7c2493f19b095e8443031081c390e45b2d25a0e GIT binary patch literal 540 zcmV+%0^|LOP) z%S&596vk5x)QC{5AZm6unS1Y?xi`2lzTJp|X-qAneW^?ApoI9Dii<&0RIKRnd74o3IN^=aLy_= z3gFU7;FoZ*#nSz{1Kh-Y%nwM+4NB9mD?ou&vOLIXA0orqh$%BxGXTB$g-QE^u5BN? zjzVNc;p41_ZCBx+op_92RMu1lKyP$tEBtl|JACMlL-@n(kEDb(=^{4nU@__9ZzZOs z=N{P4XXQlz+UZAeLcUKR{LM$pS06noiEvJ$b()n^XwDO&UkDM7g}?jA^4y~snYC59 z0$pmC!oyOM48+igjgB;7O-XE!LVUsVNn7N>a7L1%_wO|S>12%UU*dW<;c)wT@vogT*(qG^Sp zVS%Pug%7!h^mp@>918X9y}t?Iipy`^BZL-u(Vq9P>Ph2+&)nBzD;(1$S~Gw$dmu9^ zp;BCOHlZvMMtg#g;IY)0G;?YKppA9P?p~Gx$DHbt{q+6U{gX;ew}pEA3xfARRRMxm eaRBhH0qy};3AD*3q9^|V0000*P!0VCnl6J5uDJAh8 z?F}A;heSwwsjNAwR^IzRv*L4dZ)l3vX0e%HQN6TOZ@y^hnclh|Gp`>PIO+Zx4;1psow z`g{XR{cg@iT8NIi@b|S7Uap6i3Ioi9@cJkOrd(`!x`+o_IiG7~ZKRW(6({+mU{)IN zl@k0uje*G_eBoX^!C?j`#yH)uQ%qa&1X&@p*vPckg|2rK4E3-%)5fvxfUE_84@0=W zvT+%)F+1*N!P~~&K@AVrw$gN1F@}X_;mr`D5smn+hM6qw1WOl@nGlNUQf5Nk0tNW% g0QDg>-n;j-7$cWYcxj+#b-7&5`SQKzd%pLIs&brRIOaG7a0yCB{5K>C5ROi{7CaDaL>Tk>KBr$v^bbx*@n7k*{W;5Hw=4sE;`C z7b4PUJxKQ%DTRR?%sGR(>=QI%+?K@?B^rXL0-mq9rp0f>m`NWwZy?t)dqClg!2#i1 zg#5I$-#dB_YKTDPMT@apF~N<9{zi_B7>b%~;VV$LpD|N{y7JLX(e73G+^I1;{hh`7 zCtR+Bvjyod4nPKNpgRsbEL5(AG*`yCM4QQaht6n(Ovl*1LpLq@H3v^hRDmb3VR1_- z*;+<_SD6^vWF<6YdHh=uzbRN5Z7gRA3? z{8d78JtUc`Gx4K|sFn<%H%J)Vi*YrBdz&(UGXjC+O&{t8ogPMm2$p1U-jq2B4QSWl z=0oh0F8*9dRvlE(1hUtAoV}8xEr*tV1pvOly2U>2A*rH?;#zJ1py$AX`;vo^Lyh9Y zd4U1hRqzG3oRWUa2m4zN3FQdP=%8*wfgSz3F2fBE`t*r;6Uyn&=oG+-2k;vk$n6X9 SQ(&k70000&gZqru16 nP1fL51JH5Xy4-;*1~!H=F4-MoIl8BSeqiu)^>bP0l+XkKOI%(Y literal 0 HcmV?d00001 diff --git a/data-raw/32/MG.png b/data-raw/32/MG.png new file mode 100644 index 0000000000000000000000000000000000000000..935d0364bf54c76ceb194648f10d91f77a857ba2 GIT binary patch literal 124 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzXHOT$kch)?uN~xMP~dUCc;-pq zi!49ABce7UQ6Jg={gqX|y~>Ayp@cCe|F{P?Py@p~mW;DoK#T>V4dFZw;twz?-!0g~ SyHv#hB zTPQ(}Z0&#CX{|M~yVuR{PJezS-$Kp5ap01)Ye_{mDj zYKO91gdYcp&ge%?aXyafBXQP1umhBJtcNT-JHHAW)d^JaS1|%aWh$WFHc;14==Kd} z1&GU0qNHUFR{JxgO{<8{8w*-DXMh;VFbe9IaAkISU%-XQj@;S>YCagELUn&vV+3xeO5i@%(i`yZd1~1Vv!erXIu2|3IMkY&qZfMS1jvF^JMq)98~k}h ze9-MC-tW>$v8G~BgIW~>ZuF2CO#ou6QoOd0lvDVga2Epe9#`^lu_p7oZK6iz!39ng z<0(MKP7`rv)**S@B2F|r`P&&MhiADC46rf>4se-z_zIA5*lQccHd?&S7T9P-gB^`x z4LM+>$x!RZ9Y_E|HR;)qHx4<~WQBNh0`BI7i;wzT(5al`g3yHPb)eWYbGo>j90RlI*7{G^0I*cEZ_@QIa^J-B~63? O0000@$hDW&0yRRx6UKt04Exw(HpvzE TU)(M53nc96>gTe~DWM4fxCbV7 literal 0 HcmV?d00001 diff --git a/data-raw/32/MM.png b/data-raw/32/MM.png new file mode 100644 index 0000000000000000000000000000000000000000..d06e6803935dbbd7ea9d0df59fb29e1de7b471e1 GIT binary patch literal 369 zcmV-%0gnEOP)4V=F|I16YND$KVHf{|ChiXY0aqvLM%ZL<(ScPb69OR!F2sRc5C|qfXkUHL z^kN_ll(yb-U-KlFd%x@Vrm7Z5MudH9MNX*8L{JQhYBefkLYg`aD@mAXVCi({NDjRZ;KP(f(>n#_m`NaP9B2 zhrM@ijyxM#fb5h~$T#xvex60e9`^D~EI06%i|2C;CWFA?%-9p_CzvJsn8DPW&JE`t zv)KQESg;GQii9*)*?%t1? zqu4}Pif!huu&10%&OABqd1uaus?y0YbU3;IU4RhaVr-%AM^G zy%J~!Xr}-&D9kvd1dP|0o$s$hl{GSBzG*AjreGt`d*((?ck0m-2P?oH@hNf|$QBfT<^L40Ny z*o+z7uA|m>1snt;N@3Q~vtY50LNx6t&Ra}bz1h*UT2O1C34~*cs|xl(yf$Lk(u1JT zx0+&#P+m{anxLuV10VnaJnt1KEoRuN5KTD3Ntcri4M+&lltW5Q-Gd?ZX@XAx0$LO7 zz0f!bKp;5_NG}cUDF+Emukx}V@p2gAUWNFygj%Q{haZ*k+XDic0*N#aQ;?|X2-M%~ t6t+G@AA-vdYkzSjlL^l>_e+VZ2Pq#$LeyHZ0pH6a$V=mJYa^keqNK>+@ zQ4X3W6dB$qML$+pS-DX02g#=0?CCv6^EPFlDYOq>c)s_2-tRo`Iqx~=lK_w`r%Bub z+yYjF07+I7mcv{Zkg1$C;a>{i11jL1ornli7$VCGdSMQ5Opj=F5n~{t6=wn2R{}$V%ifPqrL$%Os8fs+3h_Xbgf>OVg{C z!`G;S{&6e5OpIc1avb{3`|vMP^O#hd2z^5kWX6cU_QZk(_!dM%Ss4OPAs!M{G!9i6 z@oMNB{yeXT1`&3%h{rsLqcDfSk9vjWin9b7*5xVKRB(Ko4qnX)WsKQZdz$Ee|H&t;?YI8NV6<*}IB5lKX zti6 z54SqPdF{;zuf57SjJq_~u|S85I+kw5laQ5a5lW{YI{{^-Ipj;`G0s`?9}+eQ+hXZ4 rv&OI>$6~*;a(>C&f5mPA|FwYM4y56wb76nBhQIJufVP#14BuGZ}Pf&jZnxW&KZ{E7*c6ZzDZaeRBZl<~1 zoO^aI-P~@sd-(nCVYjDqyKScyrY(n3ODM=NET_EtL-Rjfn~FjE!soB=KQBIfo&+H7 zW{6q9EZ{!@5ZMxUBc>0~M-iGB!VqK8)+EdFQ!F+2@u)e8(8m#K8KIZ&06;Gxv=R>( zJ9y7|fL*=pTYZwjKS-U;T9CdI?#MA)2#C?VkCR>_zrH3KQ z3eIPIM3Vb4?hEme?=Wwf>d;nnaAYLHMBGlQ@FmXpxAI{{4513&B0v?!*wV*|mNt6x zmot8>n)koxM<@cU&v9V1lwh(tcz27BMfwoy%DXw5Iz*=IZH6NQykSowG~pQnbP|hm zK`G*mzI6^BS)H16!JNW7JDf+wPEZMLNp}F>_it@Tg zqQLkneY*p!b@ksc3pWMK)kfG+A@fbqa_SpOnX8NOL~ei=95I#^NGRQPaQRPuJvYId zmPVen##p&6#zQ%sEXbB|f8`;zH<$dT!5h}X%>nu@JloQYIMwWI*^f|2Jd@`~9ytkD z{^H8zN&b0PCNII{Me3p%9@)}?(8k$QX=Bi_hCom6wYHoVKt||7Sj-Zm2fwAfa|odd zBD4|*|43{P^UkChl;Udb~0fZ`m(8&m87ki~45_=9}F6c+-g455y{G4vq+ild; zmk}HOo_X4?tA84aB{_b6zwpO(z_Ib45n1imrl8C{s!pPrF;s^2Y}U0QwnS!7g!%+4 z^UC>P)64uaF~Krx1fiA?iV#_Kg8+0Vx)~WB0pJx^9HEXNlwnr;`WQ&b=yEo&(c6d6 zhG)`-GEZ5;IDKZ0Cc8M4I>mf-CqfmZPD<0((u~b&qu6Fg3I;H@3?QPF@% zJE%#1$LX}h_-HT6`XPiOc#ET07s1*TXZY|A#xgzZO`K$7aTVKaHoR^xKDU>AQz2_g z+G$On;cO<#ak-wn<^hDF>-H?8h1n656(LdwJ)G%nps{)nMOHgrw->M5i^*i+NVJo& zSQUf*N_2Jo2u*0p)%@?*u}(s0B79oeL+jTyxGV-7CC=-BVylfZo1UuXX4aPVUY&gU zJ8_UG!`%OQg4YaRQfPN#b8e^DRf;CBgva$Q%rzvY+<>{UDq_+JD526eri UDlqDwoB#j-07*qoM6N<$f}RF68UO$Q literal 0 HcmV?d00001 diff --git a/data-raw/32/MQ.png b/data-raw/32/MQ.png new file mode 100644 index 0000000000000000000000000000000000000000..df3db06ded5c96e6dc43caabacd3e3a7ffd200bf GIT binary patch literal 304 zcmV-00nh%4P)rkwNA!DciZ; z_YB_hKJ|>>w@=UT?UevXzg$TG1b_>GCs2f&ea{zpdw@S$MLO4mVO}s_pHQf&OaO+w z^9AHML1&<&M5eATK#_L_C}RVpHG>=@t^gEyXMitKLB2Y{=6T9uU1bJPjJ2A=~)Tg9Ue7|{*@08z2sV5A{ZOaK4?07*qoM6N<$ Ef<#Q98vp2jZf#1NwTCPHYROb~)u`R|^sz~S;d+7yASY1 ztp?`jG57uFB7mkS`d5I_jgCSq z4Sq6-b^r-2eMrz-5U(FXTtz)%JFG}-AL7pYaa#AvHNd|VCun}MXx#vq-U@cJ8Uf;b zL?j)+cF|d|TebG{XkEW+0B7x`wo@Vc49*sPHh!`M0%)~>Ju)JzrVd#-CsC@nf|lyG@vx7G_XsP*$Zd~xnje}?j1(dq1_N@aH3!n9^EoyE~1R{&%x zWG-YfWHw|vO9AKsGAV*3(<1ZYC)=m}4bWrN+atXGS?FVb>;Q(GE(H(#%G`*K= zJ?ngnP<wfRP^Tz?VGl#EAOKD24C$F6V9K2+Ikpz&T?`tBe4En46chdpz}y1MAy0zl3MRQfS?o&ip!p&T@np#9D_QOp++2qE~yamJ4OVj zYOszAuL1mtv~xXBRWzcl=rXFyHOMIFcKJW>3cyOj5Agp0_%i$eegK~X`~sLP;5fJd Rb6Wra002ovPDHLkV1g}bRPz7; literal 0 HcmV?d00001 diff --git a/data-raw/32/MT.png b/data-raw/32/MT.png new file mode 100644 index 0000000000000000000000000000000000000000..20cd7d6e01c55e016492dc6ab22e5ad5857a253a GIT binary patch literal 287 zcmV+)0pR|LP)j&I69KCDgP4rBp&P9z($ILqQaw zJxjw-6o!+Sk85rdY(#9+TAid0QlW?-P8|eCpBpCu+Uqufl0K3aa2$E;`%+@M2)cv z3f^)&p}CZvz@e@2#941yF79-UZx;M4ZsX%0Q|=8pf*Nz~ncH#;*<8Xj`4bqigFFxc s5m+37=IcK4Km{L0Bp zZKq*&ewbP(+4A-;oYKC?_o>hQ>*Dh~Jqn=wWE2UIfL{Sn#sm0?-_bjId_@8z;O_$( zZWZG+h4F$WcVvxy!Zl?P?*$z*M0oZmK z$254zZ;+S|FfrIma&3utG=gQ9+Yfj&bEw%fHurbfOD74>j1ZX}<3`uGFKX=v)ay?a zj0`c|AQX=g+FD^yT2-1K np1gz-AOYV4$gfxe{x#qW)g8(+FI02;00000NkvXXu0mjfOg@`x literal 0 HcmV?d00001 diff --git a/data-raw/32/MY.png b/data-raw/32/MY.png new file mode 100644 index 0000000000000000000000000000000000000000..30b286b20b89ae7840628234f6ef1b281b6dd539 GIT binary patch literal 329 zcmV-P0k-~$P)#i5(4VJlmEXx#`FKuR(UWRCa&c_@xNt6`+qt2nP4p8GM6?ESUu13|DW?r|5d!F zqWF^2dinpN>V*GiHYtN~Y+fE%jOtPF;RM(J^IH@#f*ItXEsKr+|G&rp#vnG#kyH(V z0e8T<`R3p#u#9NKh=Q8NNU-BTm}XG`N^GD+_;A0-fBTpwxVUp%!+(p24%#O|ST+PD z#^;9w{@>gs`G4_DJNjkA0V#;c^#P@L@HpWAz=6>y7>xpm1HPZQ{C^lOry00000NkvXXu0mjf+~A;^ literal 0 HcmV?d00001 diff --git a/data-raw/32/MZ.png b/data-raw/32/MZ.png new file mode 100644 index 0000000000000000000000000000000000000000..9e757448a9e9d92886429a047bc5b273c2b8bc5f GIT binary patch literal 585 zcmV-P0=E5$P) zPe_wt0LSrX3tXFmVivmz=`q#%PtFjmb7t4seN$V+tVP)6jX zs7`eV3JUC!#F8SM?UFBKT21dM_`1V>u zhw~fYP#Ldm;)uzQDja-Dnt8CtL$?U<*c2gC86zdhBv$({3llPl-3G& z@c X5Y-3cKTEr)00000NkvXXu0mjfbIKC` literal 0 HcmV?d00001 diff --git a/data-raw/32/NA.png b/data-raw/32/NA.png new file mode 100644 index 0000000000000000000000000000000000000000..ce97faf9fbfcb05f70eda0355e0f5622bd6c11b6 GIT binary patch literal 362 zcmV-w0hRuVP)@u@Ofv@*_3!-u z?Z@x`e?ETx|0tyf!(zM+Q1QRG!jA#b{0I%~N<6J%aA^-pY07*qo IM6N<$f=>aer~m)} literal 0 HcmV?d00001 diff --git a/data-raw/32/NC.png b/data-raw/32/NC.png new file mode 100644 index 0000000000000000000000000000000000000000..d1c2efde098d6ff7b52becca4b98a3cf3a80b3e7 GIT binary patch literal 518 zcmV+h0{Q)kP)NA`gZ*NG&VU^Lg#JrQG5t5xX92Tm>VWMXm{G7~4)1??S*HIM zCM^HAuI9sxf(|N10k%Y#7{l>jMw;oro;J(>G;E15nu0{gFw65lGUn{G`+x8VYAD1- zvj3NpW&Uqr%JM%e1=Rr{wIDs{<`BX-9RR`xJ%;}u-auG#Y`4IFJ8PEzNwMtz&m0s$ z6huHZAho1gPS61`M}T~{V;$drX<+ta04fJzU2W$7C-({bKLC^?*K(p90E-S~JHh|b z3atMH1eyK|3Nihc0kTz{gvbhZk{v)xJnDeaR`I9_W%F@07*qo IM6N<$f;+SAQUCw| literal 0 HcmV?d00001 diff --git a/data-raw/32/NE.png b/data-raw/32/NE.png new file mode 100644 index 0000000000000000000000000000000000000000..124bf40fdc69d6384c5e945cf665ac5137d0a6dc GIT binary patch literal 220 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJ#hxyXArXg@fBgS%f7l_ZEs(v( zDj~q)fuq3f|BVM0^GTE*SiwBuG~=X$_s{45ufJ#d`~P#>&;S1a{q@j(W`hlTgHFw) zg>2tXUY42r|Np-FW%HTs-bZ%`&WZ0^vuHl^KAEV#hYjnGU%Pak@qgX_KmXTUVaog2 z9VNa&;;sxs@saJt*8l7GZ(yIH@h@N+N2Phje|Zj@R}ElCYzYOk8Vne&wli}5UjIE5 P=v)R*S3j3^P6_H77gv19gE5dTAb1R!RC&F)) znvxPmAeMxN6_s5`3n?KGo34kF8M);ye)|W64Ek+BJ8+&396p@$aE<^7p-dqR2m}5J zfS^z3ce&>Eu+>=ede}>SqmIC6hm57axO6~Sw!eliEhfq^0b$A|GKmQ`>P?8VmUct zC2?jAi5-Q=jA|6tVhocuyaAtd0Jqme>!WUp2C9i|Q?s)%lLIy#`>i_mnADUFH?Zhh zk`CZ-Ez@w{$ic2+qAndlW>gc?q9o3&A-PkFZtx5b=BK0qthim6rbN=ZP7-J%h( z->m+!ylY$ zSTovA(}Wnhb9`!~nG-|jLkF03&hu<>CO7~|U$XF590vT?fL~=!bM&jU<8J@}002ov JPDHLkV1motAff;O literal 0 HcmV?d00001 diff --git a/data-raw/32/NG.png b/data-raw/32/NG.png new file mode 100644 index 0000000000000000000000000000000000000000..187d30b0297ba7554903010fcdf80eadff3e3ff0 GIT binary patch literal 118 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzTTd6qkch)?uWjUIP~c(SuLI|HA+{YSPD4bXty0nnn#%q0&;q=8K?rnIaUfVv{_O_E?t z6k3FV$+tgjGLSRnfGnOO+!xvRdl&R?&SWnC=yTbmoapO0c*QQ_2ZyT7W9#B_5 zM2iPXX$)78&qol`;+0CR&So&W#< literal 0 HcmV?d00001 diff --git a/data-raw/32/NO.png b/data-raw/32/NO.png new file mode 100644 index 0000000000000000000000000000000000000000..0450789051e1bba78bf7f146dfb18fe602305a86 GIT binary patch literal 146 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJNKY5Xkch*{KmPx>KkSgy7RcUX zl@MU@pu6p7eT@W*#Fa@0C0ICCs*CkoC0t=#%qL;P_rssXp^QP4@d%^A;g`Ma{mg7O rTyDh&S1`ND8oX+_81@m!+QQ5rqqM62TF=5Npd}2Ru6{1-oD!M1U2qG_x2+Tq#ku#EVn`>RTRBYKgzy8m1;%d^))7jZg2fm!E!}H;s=l^U103nh^ zbn#gMLUvO-wT2RuE>r-h3961-7!g2oauJd<>KWt%Rbc+;EB^ywr6nMpb~nwxk0{O~1?_F6xNt0M>wJ8){b1INMB7-?#SelIqPL1xB-s6r5I_v{cHXt$#-+#xEpW~g@WJ)xQfps z*yTK0E9-M`1IF(>hV?COR_d5H^8~S67H4<0gHdR z)egI84#vwLISASf51-$$MQ){B@WmC0000h(H_Tc}Vt?B=_pRwT(U*65^FzvgZ#kc<_PxmVv{r}#!^85ZR>EeH#4j5&f z`|mni?@xQ<{Qdv_|o<^6l*hu3E4E7yjk_vM4JBEiMNMkv9tM zSA1`>i!YCMWbrOo5W}!(#=4yeETTsjpZx@MWC}Y2Lq)S& zPe@cz7{zbakcN{>#li}e+_>nEE~F5YvBhkHAX^DyL5zh1OV|jhp+)` zfFl8r>hFh@%i;N(I4ZACLR@))Og4vjgA+!DKp~SsRr@PcwE6MWZ(w!Ui_Jg)SP_RC zMF8LEG?I7kVcRs3TF=5g5Rw2}NWXMo;}HSUxbfg4mgW|b@_3M6TT`&w0J!7k?zf0M z9>Ips2Ur&JJG+QqbRt^2-+^>6h;^?Q-;$fS))!P=(gwhG@7FGhHT5}$uFl(Vx86j; z{EkvtrCVJ9#_1}UH3C0|ggkeF@UauRB5A z7h7-${2CJqWafA|%9;i-`@RmJ-d#ZRxgPaF~a|rmz+wF6ea~qp;E9~MMz80TC^CgM#~j4Kk@su zKzhO zF-yZx6os=2V*ZEV056|M&~9Vz_zt5p2QVi0 z;kVkjF-?>{kG%Ol%-KVXOck+JEaPe0Lep`=bHii=U>7b>U0%UUr2?zv|u8X>5;j!Ap^pYzr&P!Zv z7I3+~8~#oO;B7?_2M~n};`Zn?Olb$oV_$_-Gp#uFGQQx1+0|8YBoV-OiW6EzaH5gK zZP*uVI}33PqTtw6Ri7M5j|eF&3XDRd;Nk!jB!x+VQm7(j%M>pfNd!Pk(OR?^twzhm z0eD-sjTWUQFbx2b14JbM-&522|H#hi|0742|BpR=|39>_`F~GC z_y28S2|73ch;MQU{C|<2_5W3V;r~~K#s6Ps<^I3PEeMp8qE86COw0WLx~$^=_dR?5 z|2%Z?|C_2Bpd)f1Q6MTsTL;_{5CuEn^YZ2Yf9~J+|3i1r|NHvJ{~tNH&@T<#mX!Pd zuD$dBi-hF=PkaOZzs$&nh=VZA9RN&d&%z@AKX&s3rv*^lKX&!_|12t&P7V;40fzu6 zDquklW`o2*n8>V33dSr4M5SnA5%CV7Gahxo&~pGo0|Qm@r~^hFFzSHOR`I9F5h7 zruO{$CToTx%c@06-q!ruUv=2ofNkT;cMayuLZ*W`GJvmX$WvYg>$&?Ecd@2gyp zfqUM};RPAk&RhL2e&V)f^)0K5_!10vwH=uL`1wOVhK(=fSl6rR{rbPCQc9xv22kbt t^z|DyxrdploMc?Q_7Tvf8SD%UuTOvddU^R z&nv@m9LMqf3;u~6?4(x864SmpNZ)O~hc%})lth*TEi5THNh`V7!FOfMQt~6y!itn+ z%tdk#MebHMzI)mzIWOPu*WvT3SD*S^-jB=sZ2>H1*3{twAOJsri#jW2Q~(6v_ZFCy z8Uf`GxJ!|XjFFGc!~OR6pCN$Cpu)j8FRG7ho5X3bi`NZ5g>hgE^Ho^+2x%608K079o@&OtWxhwVym?J zc8=^(de`&^R8uTz#I|mb26t%g+a$Vn&0Eo^HT>KBlT$1J0$^qZKmbe!d;-@Jv)u+0 R-$Vca002ovPDHLkV1m%trda?0 literal 0 HcmV?d00001 diff --git a/data-raw/32/PG.png b/data-raw/32/PG.png new file mode 100644 index 0000000000000000000000000000000000000000..6b2cf2dc6e405c073a5a621cf35949dc8905f8f4 GIT binary patch literal 786 zcmV+t1MU2YP) zOKTHR7>1LQo0+sps<}38lF4N%G$f!c1T8K^YZQu$2E=CPMu|m#fe0>I^#>?qq4*oJ zimf2HFt)K*)3l>jZ41>!t#sjqnAbC>q$HijW~N|WB=8b4%*=Vt`+e_sq5z;cNGTcs z4S@dwAf{=?Gm{UCt(}-O2l4tJX&ZoiU~5w0KI6bVftYLM_Vwb4L*#j*M1Zm`Xj-Tn zyi7N8Ob|<#JmCAhn9y_50m^RNW1N!Q$QgoorQlFF$pRmbVELLGFBP50wa5UdbYrXz zH-w$ecat7E&C=bM-dgbOi4$wL+cDi9pm4GP1eu6N^!A!=2=y+U@L}af2R0r#@$-cZ z#ThF~1q*fJYs$HGuTchoR;xv%`#74k8tTTVvDyt`asDie5>FOewxBp^#qT#(6sO4d zEP+@g*H=k7uDUU<<)j0|<8f?mZelQzpueq374B9fCD$Cp;u$YiZ+76rpa<&@+sLjh zbm8w~c6=FjVdJqAE7v=AZOA2%f2Xfh$0Od>(b!7xmf8&yd$1!-x79p{hv@ILOrrz>tOoMJ^T zhyV-*12UNm^7%X*4o4M$*=$BOn?*XEhF-51&5ec_i_Ud#sl6l~8D z^!D~57K=fpQi*K0+wBxgsZ{P-me`J@jH4OT#%CzL6%B4T4ltrzrP4NPMgRZ+ literal 0 HcmV?d00001 diff --git a/data-raw/32/PH.png b/data-raw/32/PH.png new file mode 100644 index 0000000000000000000000000000000000000000..fa3bf75904ba989e9dfeee29f2844f3a0078339f GIT binary patch literal 621 zcmV-z0+RiSP)y51rH0+1+CXDENgg_FMvV?3`lPWVq`DESb;EU5vD4n>nzfvM-VT)iUg{%^yg}Fxpk{_McLEQe zF$*!CU9Sh?Y^!*c^NB|t?}r%;q}T`NN?H|Hhz zHvy^gUAe)h>e{>pX9GkOHFX;j zJxD@P6vwY3N(GN>@B_D6T!fY;8=7@-ugucd%P2Ma5{k+tC|X=viiRL)3dNai-?{hv&%Fcy`A#EsfI7fW0jTN8mq{$mb z8o+oM5C?(6t&jkqpTIb4L@u9$ZPfzt1C@j0z3NR>mke1z&yFN*A;fT9ER`M(LS~J!R(7D{n`wBf^oHGiEp2o3KsetOPx~I8=&pZ@EEwNO{TG;&7tsV7v^PMw?!Q_>>Av3npCWu1j%i z`)g>QZ-;6~1sN-Y+M|YJ!vX(}AB|k2$Nc3%BCvflUGTcUY_z2-Hq=;>(dJ3 zTB=dp>TgAGFNnlt0@=GPGItpqo*jbQML3OR$K@8zW@&&ZU)EjGxB5r0000^|%p8I{p^Sd8| O#5`U7T-G@yGywpLkR%WQ literal 0 HcmV?d00001 diff --git a/data-raw/32/PN.png b/data-raw/32/PN.png new file mode 100644 index 0000000000000000000000000000000000000000..01beabe4af54b73d37403737d23fa570b2842dfc GIT binary patch literal 1003 zcmVCkLqmLb{T7?tASJI0wRwb9c^=kPSc%trA_4x(<^nyl(7KWqY_5DB%5f;CKguIU zH(uWs+76a0-+GBN3{&sk$_}qV5%ZQvfN1TNw#!Cx4bg^N+ss1o`Ytq#~SM$=*4Lnw2=fr@Siyvn3l(i9c&R}#Aim*grA~X@)TmTWI2vY zB!Gm9go}iXgpGvG-vQ(Y2`Pb<(30?)+l55qL4vPqx%8P8?{GDJJ>9gv9K<`&g0@M| zh8-nJ`%nIJ4m?ODnYy?b%EIonv84F|s=Z%x>a9w$d~c)j{6J=1E6a0hNO`7^M8p31 z2S~BhQ0&SkdGl7(doPf2LYGCUehOI)m#u^qLmu ziBy`-?IWSEn>7_C#SOb-qXCKG%*{?}on=^_tES?WbWWd7rfG0B&8KxF<#v#~t%zlY zPG$Z`3;_P>LTZ6m5t)nX!3>`Frz;>C=o~u5ddHR1H%I(4zW_?5Sz5^~b+D;nBZ1Ib z`p4438`~SVlVJ449$>k#N9lqmEXu;&`K-#{74FQonsU^JQ?UoQ-}?UmEMzSLECMVz Zz#pti#^p@A(ggqj002ovPDHLkV1oOW@NNJA literal 0 HcmV?d00001 diff --git a/data-raw/32/PR.png b/data-raw/32/PR.png new file mode 100644 index 0000000000000000000000000000000000000000..0b75b632c897f491fe4f660a0bbf32a3e144469c GIT binary patch literal 334 zcmV-U0kQsxP)> z2nWddZ~AYXuoH~0-uno~Fg{2Q*wN%L|C=LMmZu{|P7)}IeN#|3Sj8~bZc^el><~VPb*hN9dOg(X$?veNDUrXyj|c4xmN~Cp#BVD}|HQAfbn^u{waBzQ*c+ g(N^)O14gt109J7b1MW+7f&c&j07*qoM6N<$f_|8k7Fi*ArY-_&+X=H2;gabIAz-- zzHfX9FSQ===qXHVDz)^pUXO@ GgeCxyvPuU4 literal 0 HcmV?d00001 diff --git a/data-raw/32/PT.png b/data-raw/32/PT.png new file mode 100644 index 0000000000000000000000000000000000000000..b3e8989ef9eed6f612a3815ed417398175b539e5 GIT binary patch literal 605 zcmV-j0;2tiP)U=-5_P`hnJhm8z2ml7_pGH13h=E!DE$R}22VZ7DO?0}w6I+Of>ElxY( zkidFKBvxf0<#4dk-NVe#MK*m`Ngh2!^l%=LE(1}wMt;EddK<%|8WIyCs~I9c#-8vU zXt^5!;9J{emNgOy$;wi_PJTdjn@IO<9o|kW51j(f25vGkvqb;n7!PKaneJ=gQJtQ} zdNT{XYWV@j+Ku!M>S**9k+9|RyeG)D$=3wOqXZ@wnQJ^xd|w_5b!O%Rg8TrjtB@+c zgxP(76}5@4z795l){$8N){h(~Sy@EfXC!`3D?ebX(@yY?7EixO-^o&@99g8U1c=?6 zV9o1cv{qo@Mk!xb)V%A|q~{E!W-DX&1)72u!e>g@$TYK=X(5>-5xG#t{E(LD^bX#e za?@8tzopr0NF8UhyVZp literal 0 HcmV?d00001 diff --git a/data-raw/32/PY.png b/data-raw/32/PY.png new file mode 100644 index 0000000000000000000000000000000000000000..59935bd0b163f89af810670045aec9b09c652609 GIT binary patch literal 322 zcmV-I0lof-P)aUBc?%zk56L(pbf95K4&KztcQZND?zv0W_swOa&4gkAc-VTttI-Q;5rO=Tv%ir z#dazH$O=Pp7n5%Jq?`MUqnNBPU<>ebhDM`|{`(nvbA9TF12{l)0PZVxfPW4623pia Ui#8W3p#T5?07*qoM6N<$f;H}ae*gdg literal 0 HcmV?d00001 diff --git a/data-raw/32/QA.png b/data-raw/32/QA.png new file mode 100644 index 0000000000000000000000000000000000000000..7abf5c4672cb37c6dab5fa821f2f74f6b6a3831e GIT binary patch literal 463 zcmV;=0WkiFP) z%PT}t7{KRWpk!DnOCp<5GK!LvS4tM9Y)B!lVl2E0#pIQRDKkkDYGNTI3sM$?$SZ`x zlsxiiJZ3!Zb$=F@EtzJW^T`lwk!kwREyrRLJC5u;9sc@*)Vf2de$}^) z(*7>rn+tTOP436)IZMvnvORsnF?ZrNvy5Lr=gr()Z;{>C= zIPG^#%SoV9SM1A)ZaHm~_NRKzVxW`qCvTd!t+II9TI-z8*%P(`UG7@)tbE3*%Gt|2 zN*_nJo;1t&Zj%1XIPH&7>OY`24O9R6RNPDHI_O#c(5LF|uG68Lj>fOrpS55|+4PN# zy{r0~7tOAmwJd+~#+2^;5lv@<>#l}2UI{6`7F>6wdC{x|J4!bnjo*1XY}3(%mHV<6 z>?ohMp{ZwOf8L}`$w2kZ=X|SfrzY&*rWc)-2;`paUD>~KUzT3#f9v?qwe|~d3hDo2 zU^GnqXOs>M>c8P37uRbfe_`VT2Ax6rf7`?l4G!~e3LE@oWHL+#%3j#0p7@!K-zMo} zqy6mLLb|{JH%k8(7IJZuTKrd5USM?CB!0Rhq!S);X@f@c|Ns9Fnw~fbObvP^L4Lsu ztg2d?U?6?q_Du+oe}n?%AAzMn3cKEY>tbMFtoC$q46zWrdeArTa)1Quh3fr#(vS10 zmdY-iptO+hmS^h`wFt(~J)0QA4#{oe4ZA4Fyrge|L54wQ>)d}2PFL$^E&a5)VIH#$ z)158%L%xK=r3cI(Hda?F z-R&~=n|MZ&F<^_!C*Nz|J;W*5@g5zX|^vr?MdwLDipooVs3`rnFuPkvm!TDN(1d66>Tk1saI<3D}QS}?KV1jGMj j2P!B1koTHlHC2xRbd^>bP0l+XkKSUdBe literal 0 HcmV?d00001 diff --git a/data-raw/32/RO.png b/data-raw/32/RO.png new file mode 100644 index 0000000000000000000000000000000000000000..e67057f84ec5931bb6ee1e85052a803e999b3e56 GIT binary patch literal 127 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzH%}MGkch)?uWjUIP~bUoK%Tvm zamCCY&znlBmo__DDLp*&cj~m;KQy5n0r(0Do>oN;s1ZsqU70eI17;AWUEQqVN T-+qJj3P{w`)z4*}Q$iB}p;sm@ literal 0 HcmV?d00001 diff --git a/data-raw/32/RS.png b/data-raw/32/RS.png new file mode 100644 index 0000000000000000000000000000000000000000..35761b5da3c85e57d2057e2319b270f4f3c8d7a1 GIT binary patch literal 593 zcmV-X0V`1tV!itZvJAG_VITM$zwqL7`bq%Fc2-gXlmPz) zAShL^9sMVOAXVV2mK7i1+polb+0T84Ld{!e-o0iZKC6RtL zk)~=E9TpZEj~8cw&kZU<_PxZ0%Lu>NO>|@r{=56|R;mgQ2qYr?H*W>$9|XN!sVRgE}J7Cvg!%$~W*W_MfdUjhC$Bbl*r z{PpE5Pdp>q(~mf4A$Ukd;*+NcfJZ}Qg&?5=H3Wz4MB*ZWD>`DQE)Ywu79JqHc8~$Y zkx{}XGs%~)5cHj-7rqirtP~y)cDyAAB&VhkJFk&_{Df#n7ui%AF_kGiAoP5U^<;{8 zZy#%S?vZ;lP10;-$z~_MT!aMzeGiG&(T-+;KKn?=J;0=jbYkUsrY3CUv5Fv>PfVB@!j=>JY@@j!lnc$ feZ?g}2_X3e;8j5sWGtk000000NkvXXu0mjfyMPMi literal 0 HcmV?d00001 diff --git a/data-raw/32/RU.png b/data-raw/32/RU.png new file mode 100644 index 0000000000000000000000000000000000000000..97ff2a385d9fbac1b25ff2653ed2ea85992da71e GIT binary patch literal 113 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz3r`ovkch)?uWjT7N-`PztCvc) zVQQar;LgM?XE!l2{9xSx)PI2aPOJ#S19^vXCZL}65)2CLyEGi5ek=>F2J#s^UHx3v IIVCg!08_jl$p8QV literal 0 HcmV?d00001 diff --git a/data-raw/32/RW.png b/data-raw/32/RW.png new file mode 100644 index 0000000000000000000000000000000000000000..2b6ee498ea2d5901e9bf541b1ad667b0fc34d252 GIT binary patch literal 210 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJnVv3=ArXg@fBgS%f7l_ZEs(v( zDj~q4A@Skf|ICf;`pkE1=z z^22MP$Nw7-EasCaWw^u0#kuW2J5#?^!WG8FYafA}z|g|@a$bk>&viv6Ku0ooy85}S Ib4q9e0F4J$K>z>% literal 0 HcmV?d00001 diff --git a/data-raw/32/SA.png b/data-raw/32/SA.png new file mode 100644 index 0000000000000000000000000000000000000000..e41b45570e5c1efe830d06c911d710ec196b42b3 GIT binary patch literal 883 zcmV-(1C0EMP)B~(;0HlPh#2BRFe;i5L=XfK2qgxk1X`d_3Mfzr zt1Pm}o?yrprmO(>~{G!f67ajZ5S^urPfqmMV6^ zDBTeTsSYsB+Ji+I+psdn1?%z-!KUySmML~)v3xt_I`JHKznt=nY0rGwW-Tav0T>W^ zhazuC9~UBBQwqh?d$1}vih%Z8xX>m-kV=f3kFrqwyaB3rYIrwvg=+gockyD8et`ePz z>U?NEj3R?t;Z_rXxIP799%gWwJH`eGR2(t~%lU!6%~3d5eUa}e7^&mACUR#z0gwQV zWLvO7c?21QrMS_PMl9TiBLNbtb8(rftfUHyMjxPTv=Om=a_p}>#}8xAM17gO9gL0a zp^9lRK-I6xIY5<(kT+bz4`X5qQ6GRNW*urE4J;*9655D^GZ(g|zB zX=)kUw}5Lvs9y`_rETJ4WJ)8&!jSG6Gwj-!MpKYv!SDGx<*&Z$%By4}tMdk%LQg)P z->ZI#Ml^0b+-QVf8qv5|KUKzzM`uF1XA+x951%Dg{FyIsT3JObq`I*EHj=HrV(C`_ z(2G`N@8d$VCEK+w@ZgSUNfTnBJdE}E?l8}HFF|EhV>;a7PTI>1cY}jk?z=#P{DJp<4c?7BEVg>e&lf zBu^5QV@7PPB{mo{KWoFE5h2roPAjwjgXC`knENW81Mpu1_y~Mbq`Yo&e2)MC002ov JPDHLkV1i7?jLHB2 literal 0 HcmV?d00001 diff --git a/data-raw/32/SB.png b/data-raw/32/SB.png new file mode 100644 index 0000000000000000000000000000000000000000..de153e73ffdf1ebe72249fc4ceb58d5e1efda0dc GIT binary patch literal 383 zcmV-_0f7FAP)931 zmoeC45S}$h8M^~oR^LO>Xi#*Vs=mIxU+RBQsqTNpXk%0dFbD7c-@EYvNbrB!^lSfx zV)y?K>ALv;&)T8M| zKn-7$nq&u1+t)-pfL6XH$^o?WHC_kM!`C<+KrdfobpSnmjnx74^fguojJAqL d9WbID001*HvjynDTM7UG002ovPDHLkV1iY*wax$l literal 0 HcmV?d00001 diff --git a/data-raw/32/SC.png b/data-raw/32/SC.png new file mode 100644 index 0000000000000000000000000000000000000000..6160c2224a7c834f0e45265d2e06296359605812 GIT binary patch literal 518 zcmV+h0{Q)kP)#fl;#2#g>aawv?ZglMQCp)f)rFo>WCY%oF!401{+C?c{c zm-3Q!5v4LK%QVZ>Hyji%=kh;C!^IE2`T4y90D@Y6P4Rj_Js=+-XxD@7+r~6Vxd&N4 zq-}>&C?tAL0S9}dRmC|4kgVs5a|&Qv&j%+CU|Y`@Ck|j*UkOeWz_h+noG5^9eMPuP zgy7^Pz8ntb0J`;jagR)fkimf8a2N$gA3(L94}POiAY!o~lSqK#r~|0hbHxK{HDY!< z70Mn^x}FqwOQm?y>5vQr*kJmA()A>`ue%#>W;4?9I4MjYP`I8A_p4O+JUJoOu0nTM zvF~DNM~mjgf%1UD^>nyfBEh3pi*KKg5&KCcaeV8*!jTERrfD?J_dqbyTJ&WBx%E`I zx1$3uMkCVEC?)tDi@@qU#nk>PAc`x3Wcp z;RZU56KI(0stQOOkj3AvR%DV%h?j@|1!D}T<<|r10W}Z!1HkpP#d?s&y#N3J07*qo IM6N<$f&^UW%>V!Z literal 0 HcmV?d00001 diff --git a/data-raw/32/SD.png b/data-raw/32/SD.png new file mode 100644 index 0000000000000000000000000000000000000000..3e38c161b6a8695eaca09f5b741f2b4bb2b14b3f GIT binary patch literal 315 zcmV-B0mS}^P)24(KLZORT`fm(z-X&@)Bz*f0RYL*tvDwVz_tJY N002ovPDHLkV1mx|fibh=~wBQ5|lL>+IWzNYk5&)^5Aqjv0Gz5TlMe#jIKn3wBpxr~D zp*Uz~1V7(#BmM-CRt3h)BCPx^%!3??iD?_-0pb^+mi%#b11Oha<}N`48gy+G=HV&y zfib=^ZbF=ZjzLf*fog%^?fwD8ucDYt^Tbc)Ph zA488$f(BXAHq9Qr-UsZ4RQYPqo|wH6d9VpN0I1(300JNY0?;@BaV!^r{|k5rG*fP8 TO4QB!00000NkvXXu0mjf_=&hH literal 0 HcmV?d00001 diff --git a/data-raw/32/SH.png b/data-raw/32/SH.png new file mode 100644 index 0000000000000000000000000000000000000000..88ccde288cc0353c0b0cbab8f0791cd5d5f5152b GIT binary patch literal 745 zcmV zT}V@57{`y(wl$<(M7MPr5?$0bH>EI$F!G{>LXNuXgN7SLEu(@;ELvMbR?U4i3o~hI z1#@JX4KK1NFk`hoNNKH_c4Y%4*vkDo&jvN;+(@?!+6xbd^YuKx^S=N8^Bx8Ovyj2$ z0rCL<1VBKgLNpx4r4Ap8*Ixl6vLQ4P#&e+%gX|+eLLmq%u3~X{3(m9*;j>nU@y^cJ zbMuK`0D7Yb{ylr~&Fe*AYywpW?#=+HRQKS`lh+8;)gdxE8iUOm0G+Jf-i5(a=kZ0a z2cl6#zE4d9`08?DOsB(J|2Wp|cFnu^GywYAR3i}})kv3|BetPP5mHa)|)+wPa1QC|Q*(OV&+J=zi=# zzyC6Ny-jf5KaK(4Q4GA(qx-2H9FcW)0BS1KT&T%Vv!SMw3_veXlOkAZTGYIf6KWfd z!DKMtf;))j-T;iJ#X*-m8T#6|MuxC{Ty&? z>aza~k<0&!rBD1Xo-yG+L)7yB+qxIf&jGhL?)lFUy7<3P#`6CXIV=7%gf01hZs}&~ zJAff}$$xCvF?P~_hxWbyPu+X_|NO)E|J`~I{`ZRR`;SXKshFSxL_((hzkKi2|94-0 z{(lR^x1N9eFC9FYehy%aUHm_(WWoQ<*IxhMeErS;>?)vG%wqaE0EF417W{8(Ui!bk zWBGrMsCiVgoM;Eo5)U2+yp>V;KM;7-0izBWb--w=c+>%-4gg^Q#I|Bqp7BY=00000 LNkvXXu0mjf;BB1G literal 0 HcmV?d00001 diff --git a/data-raw/32/SK.png b/data-raw/32/SK.png new file mode 100644 index 0000000000000000000000000000000000000000..1b9da33d1194256bfd71acb197eb80bf9c3fc4ce GIT binary patch literal 313 zcmV-90mlA`P)4nTImK!H&Qj5+|n1AZSnffLik0dHkg;1~qnX&J%!|2}@Co&&i3 z7X3%ZO*JdP7JaR6f%_OlgZLov#=Kb=dPv219RRWb=73M3(O?IFXu3N9~5dVR$)qjtwowRiT z2$%Nm1zU`cLE@BJj^coKGOGWv;SUxL|4Yyuk=nHF|3`N}tm;X{1RVgv@3oBouWg+B z-yIm_>-txN`P8tSXa^vN2DL0E%K@~&qYfB64j4#0>VQ!P47dXT{Q-PcP|qyF00000 LNkvXXu0mjfVB?DW literal 0 HcmV?d00001 diff --git a/data-raw/32/SL.png b/data-raw/32/SL.png new file mode 100644 index 0000000000000000000000000000000000000000..fa81202e7faa72d603087147838969936082e7ff GIT binary patch literal 125 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz7f%<*kch)?uNew5CbP0l+XkKu5Tj% literal 0 HcmV?d00001 diff --git a/data-raw/32/SM.png b/data-raw/32/SM.png new file mode 100644 index 0000000000000000000000000000000000000000..74b4f8c415da14723aae84ead32ecb2517f89961 GIT binary patch literal 551 zcmV+?0@(eDP)KZz#LFu5@`|Z%JOU{}zdLQ^*pXbB#Tpj@s3K>BM=z!G% zC{*cye;klbr}*@7t}uX9YL1yiH&YW`%+J3^)3lWXWHJkkM;uI#H83$^CNf}Waq;uY z0KQ}v&@_$dF(0F0BfX&=#2&kUZYBL8*G=RG_?FFb?}bV-`HH^wL);FT80<08-(E%X zU4qkHA~SDi^9SgejN%%&#iP#sSVC@$o__XtdpY5AF{D<|`6SHiH?w@re$NdcTzkoH zBS$F}gKTa(POzhzO3x4#H%2(>k5bth;o)!%+pUe1NlgeX0hZD;CxAhIMoIH!N}7+M z+^wZtIms4B3r1TbChvK!cT`hm5h=3Y#~{b@08rwT+Rm`4-p1jEIxd9E5v;or&h5nB zwu`;igKWHLW{pEcaF6E!;EYmiGjqUmlUgZ=GvK1$Uxg)5!&ToUj?Zb-@1&_yMX?ACbDC+CcyS002ovPDHLkV1lXf{09I4 literal 0 HcmV?d00001 diff --git a/data-raw/32/SN.png b/data-raw/32/SN.png new file mode 100644 index 0000000000000000000000000000000000000000..6be024695a8d8b61a2401502fb4d038ab41cc649 GIT binary patch literal 184 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJdQTU}kch*{KmPx>KkSgy7RcUX zl@MUju<+_Xd&3{^tJN2MNX|@M^kD_Fo2C5?rhq7+y40W|Ji5xgg!eWg>+t{Sa`pfFxf`B1WMxRPo{KI2 zzuxjQ+sWAJqK Kb6Mw<&;$UOA#ce5 literal 0 HcmV?d00001 diff --git a/data-raw/32/SR.png b/data-raw/32/SR.png new file mode 100644 index 0000000000000000000000000000000000000000..5bb884d55addb6c4d6321be18b20f224f4605317 GIT binary patch literal 230 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJwVp1HArXg@fBgS%f7l_ZEs(v( zDj~q4VWG$8{|*lV*?HvH|HxYyc*qoZ9(ZDJ`D59>Z~vp+Zv8)b)qf*%+!K#x!&upZ zSl{>mbB%Qk{%xEm+>=-{LFTM%f$zZw|CdYt`Tu`@vco|I!wE8X7d>!ZFL0+wVD`Jr z2d|CZ{kPw~soAi@H=MoUk<^pd+LPQ8c#!cIEK@ z42;YJn9R#3?p#4gg_3=cWHyCG7^z0WeI<1WJ?xKv*w+=l>H|-~Oioz;r-X zWBz|p@6{NN5OQ1lzf>pX|8-%R|F?vssDiONV8sfT|MM4l{V(fC|6ksjhT#xf>)!td zC3UIq0L}2Z|Es%`|35w}{r}Hh&i}72iT+m&osTt2q+FK&pQP$fT?c4I%=ur_gK)sh zi(+^kFi|ytc2TfkvFHDa&QvhQ76k`r5e38~!eZT2+9yJ6ST}Cx|KnHQ&?g&W6w7f< z|Jhs3|Fd@*P#xoUfcJ|3T!nEov6!F(c*7?B=V)-CspZ%m;IZ~UcSgZ~_6{SOTaMuX yKL7duIjel>VljpTXqnK6a=>V-c+>$S+5rGB{6cw_pe+0V0000XbO609$LaujT8`lWdRva-fPt_a#Q~$O;!y{T bXa@iQbm;W@z_`B-00000NkvXXu0mjfZqjZd literal 0 HcmV?d00001 diff --git a/data-raw/32/SV.png b/data-raw/32/SV.png new file mode 100644 index 0000000000000000000000000000000000000000..3f9e2715e2f483658a617f443d887d601b263e53 GIT binary patch literal 333 zcmV-T0kZyyP)(gv~MAWLYo4EQiQ=#)3KU} z8fWhOTl5A4U4`y}vpK6DoDYr$XtPXB0Tf^^01Hc(%pw&)0pe>-OpNToA+GTGB00mrwx| fKz+pu@UHGS7JTOZlG+!2wwBPIhE2QvNx!Jj`65g_y1u@m2p9)DFJsMQWcKY#ss@#gD-b(b_fW-zF? zLIfdXLDya_rzs4w4RFElr%pc$i@qZv2XPqC4Zoj0dtFn1Pf6pBsPx~jUq3Ed^3crs z|KGn)gTw#*`}gz zwfgtt=e^Y{cQqw!$_?9`9etoa@9v_N|2}47-otZdkY1iEC zYqoD+yK~uu1xH%@9-prN`tice`|p#gws0AAGibI01Mu0sIgbw(Jzvv!W6p%@b0$4r z-tu@)>7yInTlZhGiCV<0*~XyR1`M}9zdn3;x$ev3oY%K`Yvw#hqA z1%~$j|Ns8}e)IeL?Q6GgBvo(WG3;f~X#4g1-?l^dtfCe(Yqfv){G)HdNm<7!w;#Ss zsoBbH*uDGMecNcD`R(z6>>Ggz$hsuRFPMQI~J9qBfJ1i~#=#l&*U|>VY zhhR341ag5$YTu3P*Kh2TVpUR8Q)E?8zwiNQ%w0r_o{iisUa>Z?sG30cIYnPU|{RCXD((wBmI$8 zoa5}WufHbfYSk66Z*^^tjN0-yy@BONroa+M;VOMqn~*(B{)+D(OsG%spMQH!nInVJ zZ58!P?BDtV`5($8#$V&`n^=4Iso|S9;mbwYzAZko;AX!2?mx}z%ULy+D6VL@`!NRS OJqAx#KbLh*2~7Ympy%2E literal 0 HcmV?d00001 diff --git a/data-raw/32/SY.png b/data-raw/32/SY.png new file mode 100644 index 0000000000000000000000000000000000000000..8cf0426bceeddcffcbeeeefd2bd1fa0a3cd79495 GIT binary patch literal 207 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJX`U{QArXg@fBgS%f7l_ZEs(v( zDj~q)!JGxR{x=?2%qLNL;6dSm|BcK?tRGz3eLTTOw^YS?!N)&r2Fs>dEt1{v>)*@& zHr<#18=vuJNdBifGr_Rv>O@hd_V_zZ(mYAQtNK#dOJZ+*+yCoLlmXjD%~1DE%=2n$ z+o$@jv)Ux2=(|}_;Ez0q&8vn$b{;wQo^4(3vIdJ}85k~~Tl`r(n8yg{LIzJ)KbLh* G2~7ZiTvC|; literal 0 HcmV?d00001 diff --git a/data-raw/32/SZ.png b/data-raw/32/SZ.png new file mode 100644 index 0000000000000000000000000000000000000000..d77dc97870929aa85021baea9bde30e411f4735f GIT binary patch literal 801 zcmV++1K#|JP) zOK4L;6o#is%zaH7h{gD*_1zXBDYhsI#aOMDR!Q4nUzTb>aV3g~3&n*fijReh;sb;( z3Q=hilbd^!G!>y%EQ%Y&g%n@7aOqm<=5tX|3tFq23TEJ6&OaY#{yB35Am&n{2v7w0 zCjd6@Eie}<0({TFgkVne&j6TGGFug-#8T&RRdI2#tc;NzJIDotBsGns5SWHBYp>q} z=n_+#lBG-TNy&LtWy{i9yx!%UIDHy`&!0Z=VSJniy}cxyPSS4m+dfm5q+KpdRsBN% zRgzg?U@bAomK)?3N!o=#C}nJI?I#pEMMuwmCMPHPalN^9i{t`H#;;&6)`@!sBcaXM zRaK;QeHH+2iKXhKD>UxbtC&p+W|Kl_iGwwP0Fka>geh2qPeA+P<;c{)z$cXJ_ZK|iO1t45(!2}M*(?)yg~H95fY1MsDQ0099^}YhV~mAtKLbj#D(ql zU`a{6(@9lL4egN#;c%GN)>Z<60R8>_ageOO3RzwK!#?n{M&$93m6B_^&Phe#kPzJT`!T)Vzi&jvzo0k|%>6)8 f9LtLU|1-cB=r2Gk#!;Sf00000NkvXXu0mjfWJY{M literal 0 HcmV?d00001 diff --git a/data-raw/32/TC.png b/data-raw/32/TC.png new file mode 100644 index 0000000000000000000000000000000000000000..18e3847e6dc6eb7856b5651caa9c24431a6af1f8 GIT binary patch literal 784 zcmV+r1MmEaP)B*$u*LlF!d$-pJJ0u>_dN=rY^AoexC6ie zunI7il*F>xOiA4UUPm9JL_NebZKlu1haPpwqRE8Mu?jp6my=cA%eS07rgXZMbsNzt zKz{LSM&sg{?eAx7VwzJaEx!SrxYEq0&LPGU6PX_$UxD2;0Qqw8oSvSW1$@uXhvjAF z7narl{4f}p$jf7Rbc!RF3>z-K20%`0?Xd)~_G}tJulKJ)e=Ez)9#qsa)RxJhF+){4 zgYB6NsTxrAu{D!nVZ}9&OL2j=+^nhbHVXy?vwjx~&w}Bd!fcDeNSVS=k%CFD zP+wPQ9l+Z4%C$=&X@j*#+Ge>~V|^}j`W?)b#xQ#~o26Dy#%tYplM;X-b`PIRovErU zwrxT&mKaQoCWf;F5JQSF#h_wTG3@$&K5xinUgyhv$pz*LE8%qzb8YHP-P%b@Tp*@K zC#s*?0FX#Yv?O8@HHn-hfSgvMDG`;ZN@OLvmYeCSb6Ga3EzpHB^W-9vWu8n`xHDGa ziSe2rsQ+oTHd-J_e#u<^BubmEUH%qHqn*wI6`!YH9*}a3w~!o4r~UKzo2_eUN&3 zHxiOB+a5%l1>h21K%e0>$?B>7w86M*Lr84)qqE@*&f$gj2M~EgX7RG-JYTx}8R-t7 zsVbK35!qJP+66!)r%g=J5TB$`Ki{#r&TasIDhI&-1F)5H05|})9N;IO006;M3T_(! O0000j3@mN&kb2m;C3nsQWKy-}K)uc^25>rrG=cd*?0$i~AKU`fm_1nKlln zpT6h++zn^`GZ|O^w@IA&-!O7A*a5pv-2R`|ydEsRXv?|(4Kw%B#sO?*wg1`8YyXFp zE&KoZ>(Bp@l`Fsw2rOFi|JUz7|9$cng5^P&W@$jox%L0+_h0{?x%TA$i?^S_4tV%U3#)c;(T_4LVx(^sDaCp?gaQf}>FdjFYw|0gUvN*@OZJ2ZnaC<{9 literal 0 HcmV?d00001 diff --git a/data-raw/32/TG.png b/data-raw/32/TG.png new file mode 100644 index 0000000000000000000000000000000000000000..ee381a66c1bec760b54522ddf5b85f54c7c24f93 GIT binary patch literal 245 zcmV;$LIfT zhgdNFapN8s!}uUMn7aSx7^s8M9dJ#>_5Y_m$Nr-OkQhjg<_>`24{LY9EeEmD v2HXMEN>pSg!chkdxC2I8#iI@w(GCCrF~}cH zu;%2dHA!4;8&vHseGgZin5!zxz#!USyiAz!1*3&IgPcRQwIBn7EyFhlnFFRQ2f}$C bWFKIaT6FUNuFQr4pqUJwu6{1-oD!M}sgK>%) zvr&RbgL|^XBAycs9~m;NkG~4}oyp0;dPDOE(;w*_>K{(eV@PEE$URGUPQ=!I-dIpj^XL#$5Q(FR7D`cMd;XnB1UqrThNs*^~d-MeT3;c9(IIPSN@0#Ssh7 zM{n8bxX{I6Rk|#5-6Z|M%2u)GFP`#n)i7nLd!7KjRT^KHIymK<_emy85}Sb4q9e00#hhL;wH) literal 0 HcmV?d00001 diff --git a/data-raw/32/TK.png b/data-raw/32/TK.png new file mode 100644 index 0000000000000000000000000000000000000000..c942444090db365e0e522895cff9d34e849d0693 GIT binary patch literal 478 zcmV<40U`d0P)2>==>j3yoR9VPJuE1&uozR|MwyT7*|&~5FZ7Ft=s>5ks0Uec3JW?ww52Eidn7Fa^Eost|4(c; zCE8+S+}UJFUI<*j`}+Tk<){AZI;a1?ut|(8%R%_-8J7QQz+6JI16YBjS9z(^|8HlQ z$+jGZ&utX{&!t^KyaOz~6DjgFHoSMK0)`{7Iv^*{+q$ zJI;<1V{-(^Q;~^*U=Px~G9tS+TscFNszHyALFW5Kg$?2m7!U`Hwu(m`Frpm*0D3H# U9;Af^=Kufz07*qoM6N<$g2>3>=l}o! literal 0 HcmV?d00001 diff --git a/data-raw/32/TL.png b/data-raw/32/TL.png new file mode 100644 index 0000000000000000000000000000000000000000..6a53c0b3843820d78a27369c53c1839b15b9f43f GIT binary patch literal 503 zcmV)7AQJn;aBS84)D%Jnb!xSlZfV#T+|GK)m|382J1WEjFX=%ZTlHNQ~ ztd0QTA4^pKKlM{2-vL@$TK^jx8}T}zD+iAQmH{0Qph&$aC@n4hFD)$%7Gq{&_&>h} zM-;44{r@6Lk+z9&OAlru{Jn)ni4Z*-9-EDp4R@*jf1OFgYzV{BqAdTfE<-Db3YGrf z)1gB_q%MajivJx17R5DmEQ-yv5S7u#7GPy$OvlQ|!vawqKeVKCbsX!-_y5aOV1vYQ t02(CU<^r2!?gQ8)8*LSjI$%UQ001?(&q-RWc+&s?002ovPDHLkV1l|G?SKFP literal 0 HcmV?d00001 diff --git a/data-raw/32/TM.png b/data-raw/32/TM.png new file mode 100644 index 0000000000000000000000000000000000000000..ccd48efdb894973a64decf19d94d355acbed1209 GIT binary patch literal 833 zcmV-H1HSx;P)bL86o#Lf`%s8Up^E4Hj*$p(o9zXb6ISh7JZ5LFg@ zEUHpaX-G?xDvg0QX^1O3vG4V@uV;pZTNTBu8Yf+lkw&ADMmn#a_nf0M!WhHzT$1O! z4g?$sumQwJ?+r@9l3d=b^XaCbH#tiyStj>rorYuaVRed@ZG$m`EyS*ao6o)yI|vwL z;!}L}O=@|I+nExpuOFru=FnZ>am;)Wf>r||PtMU;AP^|}t5?{Tw>Uf&GMjrB6`Vkj zf;ONvr%FeetsJA6&2#4X400DV>>U7bf^ud0jWyq zrYUjM;^fS0OoSP(+`I;^w@U&7v=%gbKEE9*uvJ)LQ8nns767i}aI{dwv20c!ZP00N zV~pXgm!?7WM`3~C?|6)#PGrfIn*^3Yol5vIC}F39s1tFcc9+%0CiJ?5**qUynB#iw zE?D*mEI=^s_NdCnGs(e%csrZH|c#ynvqC5^bv5BKiy?a~5`MjgCo3qCABK-#sr(U$x=AtAKL z)Z0uoJ>eh@(5hkZU-*kIuoi^TV+ zs5Zf|E?>Cg`yl{~(WrdD%*D$D$yK&)tq}`}*c$-D14*YT$j!Y?>Cy|-#yn1ce3oqr z=+un70)_=>K`^0l9?lbe_c@i9-(l_H8}e$-i(b zeU!HMfq*cy6PJ}giiFh&x4eO3UKY*|V72uy+qfGg6=e1@bXxvdr8)8#@N}6d9s7d zod=L}u~V) z`7nw7WSAKd=8v@k;Jh0nePsw|d;<4d9Dt>f*C>gsScN|TMEPFV2#$l<(oI5y?C=Qg z%t|9{LYg{nqa{{M%%RvH&XNRIe;M1&07*qoM6N<$ Eg1^q5t^fc4 literal 0 HcmV?d00001 diff --git a/data-raw/32/TT.png b/data-raw/32/TT.png new file mode 100644 index 0000000000000000000000000000000000000000..33484b6e0761a60e6230fe331249507ec0e68fa4 GIT binary patch literal 208 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJ>7Fi*ArXh)Ufa#vV8G*gam@jt z9!X8nMJ`Et#~KWIG&@>;9IGtTka;P#ZFcZ6!HKJ98aFW3F-H8F`0e@L``h$HojkVh zl+MVCir^Gzm+D|%!1jpcf?EueiQsky-6P5l%pbWXxYaOuDA_SD5r|~qbTMP-O<}LvC7`K+aR-M+LvsUjk>EFNvj)Z_?fIGR>z%x3-vm05!PC{xWt~$( F69DloL!JNt literal 0 HcmV?d00001 diff --git a/data-raw/32/TV.png b/data-raw/32/TV.png new file mode 100644 index 0000000000000000000000000000000000000000..e656319556395938404903f342604c240d12fba8 GIT binary patch literal 906 zcmV;519kj~P)b`PoPNz;p z6R~FISL$4vc4dMP&CJv9{B(0`6E-K<#eVRxy)WZE=XsuU&fWw735QvS3LYmAC*UXG zNlU|)*NYnMI1(>5AmQ9gtgU4(h~ww$QCdHWr7{&(6$N?9mzc^= zKwZ@h_sv`Q>2krdvW_d6)(`^8=@v{5O~8|yijC!ENj6%*J6bn#l{xttM1UQiy{5y+ z{c?O)tAVX8Z2bNcMBs{dbr*^$EbI~(J+TcGZAC(Woo8y6kfWVPxv>)(TNNse z9g>irz<$6{4UUjA%|lp5Z4gyaBX`D z?TxKk?z*^b7`?se*c>~F7V8VY_(EJjK~Y!~7==c`1rnejDNG8KLZx8Ci7-c*$Guh; zW(Jetb)Cjja~tl8>$;8>6zHa8*VID@0a}XIqQz)6S}u?PyQMX0QCgLjrFFvzu0WYW zh0%g0YaI%86N1#-j{Rok=zSGLfT6;0VaPCS7&`wFV8;w8l4WQyy!KK(0eqhK-J|VF z+TWwKQ;pL00p#lfY#3{z`9znq0~oXxNoGL^(gTydMA+~sIvoY_{(%t477wo!Bd@nK z$)NEGZF?Ql;$EK=AotJJn7WElZ8AuQ#7ux71a$Od0prK;>fJN>U?v}@Q6R=V+H#G3i6Pj+sENb{178Gd>Pn6`fW{BHcYXBJEDe1mu3p4R#Se%`y`rdLM|cdk>zQ z6`6DceYfQlNTRmmweRR-r26;uMigrh?YI7) gm(nu;XzVtso|Lp$>348yGiq8A5 zsJNJZ4ggsWvUJOq2mg2Pe)NC)_J{w4gy#HLQCUJC2Y`GIvh?ubXa65R{`~*Ifv5l1 zt-Jf5lXE8R9l*mg>wj|czWZLrT*uf7A07HkQTrnvwV+~MInaauln$^l9Y8Fj#@14bP%>VVi~NA8mj~7>1(VGpr@~~I)I+O#_9li`kEvM(8AY5Ie?bF j#_E94R`I93o?Dafib0aZ819k^Gh1Y|J0U@SPwu#e4V!p$n-s2z(8 OKw_S*elF{r5}E)9$RT?G literal 0 HcmV?d00001 diff --git a/data-raw/32/UG.png b/data-raw/32/UG.png new file mode 100644 index 0000000000000000000000000000000000000000..9335cbfc400337fd7c9d744726811bae40741599 GIT binary patch literal 267 zcmV+m0rdWfP);pC)v0p0-Rs&%yGO>7R@O~kaga`7*EoV);=cDKyo zxlW(U@7oAK#F;Pv14slw2tgbfKym;a1+ioRAHXJ);@iANfoZRXYY*_O5@Fs54bWB| zfKI!~UIzf^RxvujJ=mgkfGjGO3zysZ#PzTX5BTN(cFAKeZ} zDS16#I5UUwaKvS9qhvnXAyP_VPi&l-L%C8lL-dD3^otB2IRNu3Hh{kdya9xExN-002ovPDHLkV1m{GY;*ts literal 0 HcmV?d00001 diff --git a/data-raw/32/US.png b/data-raw/32/US.png new file mode 100644 index 0000000000000000000000000000000000000000..675516c85d99425998aaf788a5538cf1f0eb2456 GIT binary patch literal 156 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJWKS2zkch)?r&)6`DDXHJ|Buvv z)~eLeT&#P^cxpFnQD22Fm_`qoNUh zJA_7b3S38U2Yw6;bNDdNGt7j5kjjJtKmb@2fU5Bq;CT|K<6&8^NGazFu46#pwa%fQ9;yEG;1T6$gOj1$+U) Wb5+{a1A`C%0000 z%TB^j5C-7JXhcN=u>mz+6Jh5Ius6OJ@8A_dL_s1uXlbF)8h0-A1&nJSYSc zNe+wCWYXreIrGg-TMK}tGqff*00T$>)}@Oi&bruXjvLCqWa>jKR6MNS z43N6^kgg4WJ@eoA3pnlK*m*(u^&NKA|K9xE!8`#+ooB2ud9nS3d?UbqE9AYNLI5{= z{P;wH2?R4;mqb$W7Q2$FdU0~;f_*zw+yMeQ1ROp@696lh1P84MOYDe1mU-U3A0x|g zs-+7VWmSX!U1`2>ZmK8PV|0WqS7y=I6FR<~Xc*m55^UN3S4 z)3eQWc>x8d1n`zELPz}k59m4!zyM|hp#3x4bxY6@24DcQ1JD@;U;x?yUk*l83wx4f QzW@LL07*qoM6N<$g4KhUUjP6A literal 0 HcmV?d00001 diff --git a/data-raw/32/VA.png b/data-raw/32/VA.png new file mode 100644 index 0000000000000000000000000000000000000000..8b69d1ff31398bd6008cb276adf84f09f5e0d46d GIT binary patch literal 331 zcmV-R0kr;!P) zc+=mg|AF8A2hQP~qX5b(qey@R{9Zs?VW})%5+DJh0Q2vx0I*1B^qP5kMxI5Qhy{e6 z!O*T^R5BQq3`4uhhxa4~5XUikU8PYga$nA3l-F_9P2RLD^LX_0fGCPkFYDYkt}(S! zUbP+GZ?^E&HPWanrUlcnPaHhZx!9(8UL*`WX5ovt85o--rqBDda~tRfIUc(mT+0>* z@LR`t`X0{VE_a0jmR`d(4RL@Z3J9$$oRc%0qY@*lMG{TKFQU)EfJwhEZ-E5-1%UjD dCE&jRz5p0BhG0d6jcfn_002ovPDHLkV1iz!jLZN4 literal 0 HcmV?d00001 diff --git a/data-raw/32/VC.png b/data-raw/32/VC.png new file mode 100644 index 0000000000000000000000000000000000000000..0d7b371b001f381cb164db0ee68d2f3c3f7c0ccb GIT binary patch literal 318 zcmV-E0m1%>P)OE<_-Y)6r?$0 zvm;zgXL&GK3?xT$2iUFl18eTwWdRq9-{=As1If|c0lSZA{^ws9^Z&znNx0aJQwrc{ z0m;!N7tG#k1g3W$)`F*nww;#r%ZA^9sUAc-uJ-*Oxxo$0{)`kNbSa3goKylE0t)*3 zr{(Ei5?(l=3^(W!&@ls26oaAwTgs=K13;-BTgo4;j!AaFXsdYC0VCQ00JiSJ^9&2o Q0RR9107*qoM6N<$f~U2KrvLx| literal 0 HcmV?d00001 diff --git a/data-raw/32/VE.png b/data-raw/32/VE.png new file mode 100644 index 0000000000000000000000000000000000000000..b8e5f3ca9019f814fdf41afc881f7fcfee70f7e4 GIT binary patch literal 567 zcmV-70?7S|P)j_J(*73W8e8PGWVa zXJ0b2bPv5!hiap>b|pa!N{FCK*g>-O@NH%mwu_)k>!Z+f_`^Iizj@{}^UUGV0Btc# zvjH|>NdSH&4SuH#W=0+SNP3w{ts_06Bl{P!vH-dGl{@;l8Xm`YK2DL?dEuS`bqczu z#xrl|77&?{+57@F+@bOGYigDqHk!0uPO9Ub&#q)f-j6_6O3nRufIEV7??cM> z#Z-GvfXI}Itei7fJ_~qXw28$i8(;&L4#55^wgLY&;19>JPG+mzJOTg!002ovPDHLk FV1lXC1yuk5 literal 0 HcmV?d00001 diff --git a/data-raw/32/VG.png b/data-raw/32/VG.png new file mode 100644 index 0000000000000000000000000000000000000000..6c2aed214107b7e0f0e377bfc3ce988f8a459bca GIT binary patch literal 844 zcmV-S1GD^zP)&2nvC@-ndNJ*`g*JQL|)f}BVs&ncjOj7c4gPd$$hEW^`(R5r` z(=Z!z!DN!Pc%|9`*#^L&2)=lgv;0FVC6er@gs za07e?Xt!AC>FVNO%>z`iC-9hFLFd~p?rStO^d9-x*@-63&d_KZJ8X?SEwl2<;rMc{ zFZmsyeE&7tva)&K)I|I9w{7XEle@J^?9^D-sUts?kfINhyoTp*?9$u7} zLr)LgA3ps6@Vd5^=T<9^+g=f~y0*{Fe*lo%DupwEQv5T3M)lW5f11w4)X^2pFefl4 ze>_^tR04BmvLt;Hy7W-u3MQZ{h(ecmLK)z1nhUgZF|XKT1ZGB%U8KS%OH0VQc^oOv z#b<>U^JY)9Ig^;N%ApLP^n2yEOCuSBQpnhxi+RV}2sTEMRiwcy!2qEFRA2+)(`I+kQWSzGhHzH4)k2m`l}oW$L)nc#F!+6vq&vXq^2sD;=)V@h97bbK=XwFS{ws8VAYdSx|I>8 zSOyuUv9x48d-qtlcSgmNI)744yIcdHimV`h`A)9cg1C9y2gkwjT(SGpR6UZLC;eEE zvJG`q1%o17G=gtAe0C*?hJBQ5S;N+CCYBnljEqq}>k@!JNjJd%1JIx825 zTWr&H6vuyRh$u(|6vs_u;*I!##JCq?lx6V&(cujOOc4wO0Wmz72{Km6a2v@`B!IvG zAp**DGTD`l-Q3o#bXz;RcI{|8wr*|LuDA8R{XafTBrt*xPB3x5FY~7OV0NJl6Ann<+W~ z{cZzpOAe0q48kGLZ~#|NIo)Lf`|kp~{9$?;-=x=g5MQ5~V9-w_dOe`SrbeAV2irw~ zuVpTg$iNL%2}dB{_uzBXVQtI6s$77r?g8vo0!#HILP7s~6+d;5hUJW{dM>!FP-TY@|qB!&^*cJ2fsb}Dn3rs}J!*xL-+F$7hDh-wU8QyKua zjv{<=LBB$Pekif=!ceTPs>$>_Rl|G06$qf|b>a_)@dQJ(*xeZ0PGhTk5^JTvSR#;G z1%tW=QC4hWe&ScWzhM&}u8ZTT1@G`mVm#|UT}=G43>L4J;ngOBRuE_s7zzdUDnXb0 zWxUR2`htV>1%fvMSUp~1$}dsUW2eMoV`haCPZa7em!hiK#FgUlm`enbVH_3bmLR4l zA*QTB#B4y!T#uOcG2*ech>5Fs`qhr8YNy~~$m#^vP z`WGx!8Q7*XldLoGfyP94uZg956G_^)imS#_^cQAhDHC+o+|QREZAZ3z2dT@pAzQH> zS<((!y!I;0@+D}iW~1MkOkd{r*wgmYyZaE1tZbZF+1O;q&>dTZ zzWfQS$~7d(YnYl>%fhl+PPFQYghFiAnOUwj3d}^1}-k>Ul1=m`C!f z$kY$1ngvFsjNvNmJ- z;t0mH19W5_MW1|_wwweEB@+lZ>TyP4N=^|8MU|Y=8ySd30g1KEI^I@jkffV>K$0Zd z`&=0NTwD{W#oo!nlsG1TelO2%okiBkMHmYN-SX*NQ52xaNXML-P22W8C{Jc%HJrdy zByd*8a#&f%+;bHe+@2eZ+w5{ju#y!F>^5~`yS51rC&WzA78U(LR%{RHp6i6)W*-QJ{0t1-G63(=l}o! literal 0 HcmV?d00001 diff --git a/data-raw/32/VN.png b/data-raw/32/VN.png new file mode 100644 index 0000000000000000000000000000000000000000..a2bc9946c7ad4c3a97df3db43ff62440e1188d75 GIT binary patch literal 264 zcmV+j0r&oiP)AT=PhGzo#r8Y=%kE|G#;jE+Ha zAT>0Ng7d;^|6kO~Vpt9m1If`P4Lr$~!*BpdjBbhW(=tdjyqhKs#vnFGj4loU#qqCG z;{PASDZs@*Y>*f!@lUn`ZrCVcP30glklbixH0pq%>44Ez@u&kvv;zRuGteUP4SYHP O00009LDiyY=5`zY%7V8W{I%26_{;Oks_u+bn%d_MNniJrIkb-#2*L+$sVGxgeZ!P zDC#N|budaQK@9p20e)#YepuZUv0Y$(+0ci0? znTl-UV>DUN`~Y0)6%oI|@xUtHn+=5rFfTqm75mymd5Mp)P)%V0A07(kt-QJ=5;Y>} zDdll#qA&nSoa_{f(-z{}oVa>ktOy(I_pjuwx!HYyBx0tR7_b1$TcGX^VHzHWg4ON= zvZ;@YH+Sr7nR_4_H;TGtA?}Ck+yQt!1|uhej1Mno@K^xD5C`{&h37Wp?x?6Jb7KD_ z4#3`KFT*`SI@^8RyBKEob}y0$hs5R6;_Ix1Seg;%4hf$(-+(3`M?3tqZ}ZZd3UKB? z!0~Zym6*C_pGIEtGa%?U=<5n_;c$S3mr;@lj{~r?Ud&Fq2*@VgAL3NX?-KLm|eUyBSw0xnQ&zYvsqm(ZVuVI;LAH}DaA~o%2L$dfNt!{OB{fh zDbi=H!t6G@JtEdr2n9W;D~`rn^H%Nv40empukGW0k{0o`nNw-1MCsSfrnH~Wm6w08Zjd_2$t^iUIqqy6({`EZ&6$rF1S(9kPyYYB$m)Om*_a;l zBN@U>7ZTVb`S=tnQsBSg#Z@+HjlVod&XN{xfLQLNHAopasN0i@_LZnWpa)Af60nbDOmO7q;s7&!|~PBL@I|%>pz$ zt$x%0h|)Fx89}}U`CJW%m8$;dw{QQyWb?)UtRQh{lu$hcn1GfwPTT)KzhnDSd@#-rEx|M1y||BqdG^q)t+kmdKI;Vst0O;`}+5i9m literal 0 HcmV?d00001 diff --git a/data-raw/32/YT.png b/data-raw/32/YT.png new file mode 100644 index 0000000000000000000000000000000000000000..13921777386cd49b61444e6ba7d9db206fa8df5a GIT binary patch literal 1064 zcmV+@1lRkCP) zYe<`C6vzG8(iX?M`lW@f_@QG^yROo8D_dDRbkK@UDPvS*V7rzzvmG+LY&O%xB{PZ9 zB#nv28t;p7$^0-u#rq{Xb)v&7m>3hAIu~ziE2+Z2J4aS1jFH$e2lau&`{cY&p7VRp z`Jd-~g8&3=rv>c*>;U{<0JdxVGr&soPjF`l;Jgu!`#*QV{>cUWVQa(emx*wHa})Eo zCAg;&$a zdED?;8{l)#@LKZ!b?<&(2ZNA*%K+P|0k7AK+}vEKR4PyRC zj0^?R)8$A?lHmGvA#}R$F*-WRYt3de3JVLN)oQV{v=kTs1(!%9sH>|(Utb@Rlanz% zJ`RV&frtnp4jhmpBt(t<`?J_+9ujgJXU-&JXlMu%6BCe1rReGDfz@h-TCK*~+M53W z^u)Ebwa{oZFqurq%F04(YbygpN6R@_WTYI&jwuits>J#8V)jKv$rzxcqXPng0QL3t z$ji&){Ypzq{RhzLbPUkj+sm8K231v63=k8u87w?p4WrS7vNAKyol~(dA|izW35Op;#O_eDTTe z({Cm+00kxO(0@BSJCT!nJDWkMu9cOQxRVeE>pQ_Xd3YDf-rWby zslAAKeK)M9gOM9`_Rq2yS-AQ6`7Ffh>S|B~C9pQ!*w}#6>BQLB7z2@*YHDg= zPW%X(@Vy9o?G>aS--Co#ci}|X%lP)_9u!5NWxY`PseHr3!|3nthtKB={2UJRZ;10G5}RIh7M0NH3&%f*=u6a5`C^`DH|H*wxjA_V#wZQkzXpO|enSQedhz-J@>#S3XF#{fp?o i1laj1-T`=i0UiUTFYlpr|8*At0000(~hKM4GO_W1v+{Dl9HY&B?x;SS)e3;z#u z1PEKstowiC^)s+TK5tz4|FN49Z5?oRjr@Pp4lfi(&?7Y94tTgo=>N|xqW@cGnf#|` zXuuu7&&~LMdM?lZKU+oq6BQbTNz`=!5P*pP?#68Y=@}Xr4gg_#h6Yv#kP{jd0Nf5B zCNwC;1Ra1J8jltuLW2V>G-&PsJ6+cQcjpU%L!x_*@qezmF#0%vhm-MtcM3Py;@j(F z|J!wW&@T!=zP>$A5bkT9dQ@KBS@JCqhELW~-0=-*RC6|382K{(t)X^Z(%Z zb^m!}ddR{U4j{$XE7xE9FQqw|Y|Bv`Ku=#|bpSnmjokrs^fmS<8mj|F gTg9Ue7|{*@0Ac3vwj>CFivR!s07*qoM6N<$f|;zYxc~qF literal 0 HcmV?d00001 diff --git a/data-raw/32/ZM.png b/data-raw/32/ZM.png new file mode 100644 index 0000000000000000000000000000000000000000..4988b0eb5c570a590b800f8b7886dc67afa905bb GIT binary patch literal 340 zcmV-a0jvIrP)8dUPN z1IcK~$`%!FP;!k9x6oS4&3__uT}q5EfJO0GrVXn0M&q&W@$Yy6yw63s06+O`=Mw+{ m5C8!X009tw#Q_iilK29&&G$i&4D-bR0000=0yniB{8TniEv3rb}5URn;>aEwFk2hpD|mk03k-0tt;iKQH-1Zndp z0Kl`+DQ;YBAURr0K%qb?GEV06doq?DzKGxGynF!Py&?gU(OKe7Es;JQZ)?_3cry)v zwYwKveKo$#tD6;orF@pet1~1XmEqlA#;4X+h{k`E~{{<1Rk#+r#|vN-{6hBu45;yXpv< z75IgG}9A=QT$;P6XO_8A4Y#phH>n6O`tb6%CnGkT1_;ckas03t>q=a b{|opI-r<+(sVPih00000NkvXXu0mjfV&4=* literal 0 HcmV?d00001 diff --git a/data-raw/32/_abkhazia.png b/data-raw/32/_abkhazia.png new file mode 100644 index 0000000000000000000000000000000000000000..67f17adc1562b665a0edc9a7c1249957f2d95ca9 GIT binary patch literal 485 zcmV z%}WA77{>PyL5H-m{QfE_2}Ap^!s?QBsV+f>PC?MeL7_Y()Iov>>d>KoDCiJ$=`TnV zI##>u+G+>0o_5|2bKfC{iQe^KnG|EfIGhv8ISv0ZWq!P zGctA?vQuGX!{ZcFU%js)?wo5#HGoH#8-m5Fs!xgS1CZkhh`s;{`$@<#B_0Y=D_Hwg zPt~ueX#lp1+Jrq$YKw;{71p#L2_FRe&a*p8#yP(%d4XnJ9#AyOIhYN>|q?ryn4?{SXXR zNV8G$(8*{Cz<1e@UtLG>_>^`on4Ay?gZOxQ21@TJB$ALK^WZy7D4v`lzp_SSGy$L* z=yf4CG6^ZVq!yWyXVD+RrzDZHe4l~f9ac|iVHvr=1dY+Q2-$?}=vhp~=0NG@mH_0< zUGSY|^&9h47T5k3)Js{2<(m~E<(xtN;%gcJfA{DBDnO$-Y*speUWEEBXsII9f6H}% b{|oR1n9Lq(QlUnm00000NkvXXu0mjfXHwZ= literal 0 HcmV?d00001 diff --git a/data-raw/32/_basque-country.png b/data-raw/32/_basque-country.png new file mode 100644 index 0000000000000000000000000000000000000000..f0e9ea2cfc0ecc9a66229056d9dbe3a47b051461 GIT binary patch literal 262 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJvz{)FArXg@fBgS%f7l_ZEs(v( zDj~q4A#v5`dV#e0FTU(ox%A+_uW9T5@{lK-NfHWfx+i=l+{~Fg=ilKs&DIQ&0xe&& z*ZzNR5WaL4vqM_r8JBI$De89^cZdjZ@jCGxc$S^Qe@ND$Cn*R>EDw-z=yI#!Q#h&| zA?whk_<~QtRIAXcA%Z!vVa^NXQ;aQ6%xot-54cz}#Ah5}u#A*A%J`q1k4K1|r$U71 zmWxHg%>oDRMU2{A>|2baKD??pAg#iDPenRcwBITLsEJ|rtnAbNn<5?pJ;vba>gTe~ HDWM4f;45D< literal 0 HcmV?d00001 diff --git a/data-raw/32/_british-antarctic-territory.png b/data-raw/32/_british-antarctic-territory.png new file mode 100644 index 0000000000000000000000000000000000000000..acb8abe72ba9fc919d5d0db9c66e6caecbc8a9e1 GIT binary patch literal 998 zcmV zU2Icj9L9Sg2__3uqbA-VMs!gW9C|@Ey-~>^Ubv8$_!V^%WW$gQkP9LsFx)!AfHk6g zY6c{_k+3>g8E$2CtNWl^87rfFZ4_MBy0xdQ`)E(s^YeYXn*r6J9wUi+k~cYRPV)b~ z?|Gi*90OqZFPC8&U>e}Q0Py7JqeY{besqzNc@RVT9zx+L&eT*K;+Ba}h}74<*C)^72r<-UO^}0CLCk z-l@V-xD8)vDQFsMEPfk+Vm32iG~(_Hl96LhoRV$;a<|De72sdeBtYk^$w7a0{gJeZ zQDV0)pejz{(EwMk5B@p8-x)5Urz#%TusN=Y;bR2*&vK>v6up-_#5zZ0G)PPXYx~vY z0LjqgvCBd7F(lKSkFBPum%{zch&lNEehQ0suzq79E7lYf2m}bLaXv3S$yg+o+=S9t z(qPhP(r{A&q#>m-r9q`prD1O~p{AnUEF-Ea*jye=Mf2FTDUGkTFJA#mI>nT$??Ijo-FlX=tJEQUfVjS*WV2BfwA%bfiQ3vuN&*7`DGe!Ok=E zWjxQw(HS_i-)H^TcFeV>>2bR;ELlQ@#iApC*gaQP34pocI!AcnZFW_hp!1WJL>eEU zYHbV|+ z`FJ!toA)+v))63N1IK&_)}ggM#SQE0sKX(&NQ6+?%ZXbeqNIKkQSK5jr>s^!+^|7U zfMx-(08@1yPp^A|=W?DdjsQX?(_%iz zdzi+iG``&PBF($Ax&G5uj&5B|u(^rB>LLbe^6Bq>mqvdb^`UWn0W@_8d-YrNwx#3x z<`t^;y+CovLmc~I83(-zEw{$$^ma4i-b+hpm z*-ukZ5XS3*4%dQlVAc7!JHgQ44 z;2-xn=hOva)Jof6A`g?(dz0StJM+zaa|8ec#~FeXfD?d!0zeQshU18%0Yr>LAeyiR ze?IVztu6%+jpJ10C_Gd8;UnurRN(`}6g5DY-vsZhZn!6yY!G&W{2c&oeo;JtnBx0T zH5XxEBn`7q<9JvsiRdzBK~YlyUs(svMvvG9VLt$EemVIOWYtv|8cV^u^+4=x`(bw@ z5SuT<@WvX1PxNeE3P)pa4$q8R%;s_9&&Qh~RjFZ_O2Gb(4;G$9p{^?rIT{tD zN(~BY%b_=AU}r5DA2$8bs+S=ouLY;M91a4Up^pU9$Jhq@JHD8lN<^ko4N0YjRt;iF z5(XkJt%b6=_&WzjIN^Gr!V(oY9#wY$ z4CV~3vrPigPZBV1@XGAL)l>tAcU%JMfJ@YZihDnbkX3w1eHkx2R*0t2RBlFQT9eCb z(4v>)?K;UtUEp{T@-`gfJ#C-@WFGLuB1T4~mO_Ip@`m`5dgN-95Z|fe^|7%W#sSoA z1yqds-)6yXBXW;7A-k#?)6)s~Oc3*P(a?1&xHC#Bw8+=pMem@L%fPy&-Ea$`iWcr6 zPP1Y*faGcwhR0L51@CS7aZ6?={$|DN%i(AyD~_fCb!PCTNT^+Cb2z~`oQ&b-P-rAigW>n#u!dwyPXFf6}0|F@IS~{3ubX} zQ=;#{;fw?R#2a>_1uNbs)yrRfx&V=d9++0`jaP72XkuWP$jIMx0UTrsB&~}w>3H9L z6+4#_w$Jl(`j>lP>cl&lf5RMOaq+8|11v27yGJSi7jOX9029W|sWbdx;Z6Vm002ov JPDHLkV1jE?n-%~7 literal 0 HcmV?d00001 diff --git a/data-raw/32/_kosovo.png b/data-raw/32/_kosovo.png new file mode 100644 index 0000000000000000000000000000000000000000..928b3e2e11948bf43bdcb369c1dffc6e5e115182 GIT binary patch literal 791 zcmV+y1L*vTP) z+e=hY6vq7{3?wygX%AW|q7On34bDYJ#~IB_IiZ#~m{gLInihp6SsL@8k&)LKk8{&d zLr_T4R7j{aHHl1$f{31a==p1}B}YuiNRJvc4~w%od!Ms@>sxE>y?p@q?4|j50lWbJ z1i-f5qb#)HDk~e5Ahs*Bg61F+W{bl5vdXm2|JSEgll9OWet;1of*WJZ$D6eX9|(& z4y=6o4y$bru~{xWda}ZB0ZH9BY;ta@$ff|~oFr~>%;WL+2gK#L;U0aDil%8+L}wX7 zOqK`1x?YYxKG%b|Y&V9VeMDjH7!u9>cs~CXXKzf16xp_>0Ohu#aT<-Cv#f$FF~J2S ziBuTck&yWiekz)?vs$!zK)8N2=kx;_lVes!Cn4I{f#LgR zNY*06m^wJup~=$P8d~qK>e_k=HZzhv+SrNF2YFa>rQ&6e36+;>;jeZI=hDu!A^n&f z?^nAJsBxgX$$~e|G|WmyEIJJgVJNV&I$=r!kn<=*7veM9aME%c&GqN;!k&TGz3B`< zHt#TqcP41e&G0?ehajy(IRJ_{z0ivBwp@1f&ZEcNI_I)2h`E85d{kA|Ky7YeH55yM zEc>!21+O+ZUT>6^&jT7S3Zi2eG0vLPX6ddKUPL zh#IbybCe6~Am+$KO6c8Nw;m-I>bN5mKaAvFPZQNX*_qAtuq0p>g%QAvEfZHSSK(-G zD|d|I0CGp{Q+aT=u8fOu@LoRhOKzd)+)Z}wtLpn>@ojq}B6&}j)?-Sj5GmTzFUidj zhwt=#K(+vl6M14kXl*E6I~!zmb_HPdoDg>e-utE9yAf?H$S|d@WZqk`7vR4J_z5N^ V6|Lc(z_I`U002ovPDHLkV1fngY*7FJ literal 0 HcmV?d00001 diff --git a/data-raw/32/_mars.png b/data-raw/32/_mars.png new file mode 100644 index 0000000000000000000000000000000000000000..6c3f33dea7c9db971249cd77e78ef2a9c70a25d1 GIT binary patch literal 129 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz4^J1zkch)?uPKT$C%s-?G80Wda Ul$bTeKo2DB>FVdQ&MBb@0AZmdga7~l literal 0 HcmV?d00001 diff --git a/data-raw/32/_nagorno-karabakh.png b/data-raw/32/_nagorno-karabakh.png new file mode 100644 index 0000000000000000000000000000000000000000..596d632f09c0ead62d01bca3d6ff55ec7cfa56c5 GIT binary patch literal 158 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJR8JSjkch)?uN~w(pdiA0;m!U= z?UIufI;{H_tzD66_hiYWasd&QjYb9s8f+ODmaEAzt1&M+RUIpMLF=v%Lrl%=qWsTi z9yUx2(rq{=o4{o6o%v{QSA$%S-2%2so8xRh!gCJHXOyh5UM{Jc5cLXZA%mx@pUXO@ GgeCxv3pY3b literal 0 HcmV?d00001 diff --git a/data-raw/32/_nato.png b/data-raw/32/_nato.png new file mode 100644 index 0000000000000000000000000000000000000000..af3a42d4b384a98a9aac25a22a195ecc01e5912e GIT binary patch literal 567 zcmV-70?7S|P)TJ+yEaK?Wz z<2JAuSdOL+P^|vXsb2p-AY<8ox7hjr`{y6~ADX-3zemEt|NiMq|8r{8gVoT+0m`-i zS(I!3M;5I5ujbVMpAqQW11InQ56)ixpF^whzluXI&@n5)YCvkK?*Q4#|7O86|CT*!)%hH}AXgKLQvcPhWldzkK7x|FI=&{(C1c`p-&k2;c%BId$j$|Aj5v{?A-~ z`u_|dZke?2f8B(={~LgGRmaZ%lNX)%KWoM5|D_!}{%gBVBxoMVA;1JoT<(br{|9C* z`#)*kvHv&kzxf}Kx$OVmWB2}NRBib05;+$f1s1?)qDd4m$W{H<@tXYKIAHpJ2Da?~ z27Xij+eXg$|L()L|DMT<|1O0_- ziyz$g-_~u$tM-|?5!k_>CQkqV=fz9vIN+&-D%=5oKYqlj=J%~T|39|%{C^@K16KF3 zp`CgmK#T)^UBCJNV{;d69Dou98@Cb{1^rXO36$!I@P&~r{SzU!YzRt>phO13zi-~A yb3vr23&wOUh(>F}(b|yK4j63}k2+xFIsgEMWCn}c?8M*z00007zWB@+~ z=%&f#o++#?Ls(mexaW_c=;qfvnM~sGc(7P32!epy?MBnIZy!+N%-!!GY%L;eEh1Lq z2E+I{K*TUv`Cy2{PsZ>DB)Z2XRyDlC))!_*Nub2z6ciL72m;;R-FUrTEEWq^s})6- zNk*bj>|`QmJL>b-sJ+| zQ^!E3GU8^DeJ$H}3e?rP*ibEC8$JKs5}4>C;{=xr=>cWpCkh{rBWqu_U~cjffk8X@ zt$p-P#JJXQhtlJ_35a>jDeZ{UK5`pv>^QcUrmM9meeamuyp7V%v(&uzeEGkuFnhpG z)LE4tpqa4E8(@9oD9r-_Mtb+KrM{7i{uqj;1K@Bt*p$7Hy8440y?=rQ11^vp9!aXNn1V?h?)0&usodNF;u~2RcS2&WZuvikp}S`&05>pBtAekK8M}xbdp~FqVNYhOjUv&ogajXnGQAZV59|GPxZWLR+Fh7Z^qGe;SV&S zDWeUqK^xwW5%Xb4FH!q*;nP0!WCTf%QTU;Zb#2EHL;bu6y`@mBV6}LNm?{0KDmF+? z)uHMRGKWzH@JoQqtvCbte*vEXGJv{n T(XUpI00000NkvXXu0mjf$)j~r literal 0 HcmV?d00001 diff --git a/data-raw/32/_red-cross.png b/data-raw/32/_red-cross.png new file mode 100644 index 0000000000000000000000000000000000000000..cc5cd55f736afbd39915478cbe55a2e1fdec9f21 GIT binary patch literal 124 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzXHOT$kch)?uWb|rN;qG9V?W#a zsFbv~O5MAl&$DDsY_n2kV2EQZ;cYnBpgNV|1p6HBe8vgv3s@O;w0&gQm&EX&$;{>Y WY?(i1aR-6MF?hQAxvX zO$x#=5QTFOSFSvm=vEM1xbQIIM!bM4K~NNQD-`Xb7Z6+j{~1Ze+8UE)CIww&U{)QN z@4YmSFaTh`Y-Ry0z`p=QwLRUS+;V`GdYN{y=|FI}!bgb!uj)A~$k#{4i*vOhbZ1MD z)DxgT_rHEMbwi>$tbyyl0r+sGy$Ba(;f6}};c|y+#|`Ha0KEAUQ#aC77aHSeRseW4 z#SLB6@s%Fs<}i+3y`N`pS=ez4nL=RJ!qgLs3ti}%1E4(IFnJ^$x9CcvbpbPa9*7y!Qk zs(MZ6p+5pt3a#o}#D+*Q_GmeqBFk7CUWzSR#+Ims>cNfF3~$AHw}j2nQr3i*NU3Kk zLnc;+Gy+tJ2doh@?Qffj%|GPMTz~`PyYVDl_);GHX)jOa2N?Por8&`rC*h*$s({-@S+@oN_43X~cE&yrllbw9PNki_qfRbNHxkO;q$A~(Ai+!rZV}v{ZV`J8 zOnx2bTFTA-u^P->8UR!a*Y}r*M~@K^*-w3YPC)UAY){hm<}%mQt&A=V;Z2^VH+zeg z*)!BX-6LFiKp^9jZk1{USl3_7c>&O=v@!4@%#n$GGTX>pkm>J}One!WCAla$Ww^ooqF0fDp&^`yVM65zRblTPfh;*d Pa~M2b{an^LB{Ts5w>Kal literal 0 HcmV?d00001 diff --git a/data-raw/32/_united-nations.png b/data-raw/32/_united-nations.png new file mode 100644 index 0000000000000000000000000000000000000000..085437b24225dab0662a035019dd13f63b59efcb GIT binary patch literal 764 zcmVx8f(GguaM|ewe)FzPWQ|&YZa~1whJbT1pZ?62LzJVB;+dR>S^p01}y2 zj+^wi0HobCi-4K}Gqx66v8znMPO>dUR`HJ4(&(x>0EsrCoK}&jkP<-=f{V;>B@dy^bena;}L{#G>(NINHwb9zP z5(OIBoEU&T6_a>LL73-;p%4}**oZxbi!E+sQYESk0p18brU;eYi8GB(6m@x_9}8o5 z`J~um#Q?bZxB{GIS+5`atEMn)i(%CDMR0unu?wc@IRv8%A}FhajVXCC77@N$IROe- z0hr7q@y=5Pd_ols)O-V^7zWC|s?CAYULW2N_w|%n76nQtH89^C zh^gWGrjd~Nri{L2zdsG5WlutGBrfM2Qi4&L6(z1D85Vc@aGR`VARtsQG!+%{++1k+ zZS$?@ELfWL7icIkkQ$nJ2PpG>G=i%M082BMlp)E>3%;Vmh&NBA>9#K4^b^!lFn+h( uGeDi=SpN0>+W8?-6+rT@I0;})1NaUAS)S3B;CcW600004)-;l4g_>@-*mIW#~Hq^Sd7mVs!P7%2E*4gf_D-4kK^ zgz4~5p=&Mx`4(n52=6*@l)es_vv?)gVo;)lr3bn?02JgP2W;JaU|uj$5)Iv1fYFZ0h<5-0gdM(LA&A9200000NkvXXu0mjf D%%*4{ literal 0 HcmV?d00001 diff --git a/data-raw/32/_wales.png b/data-raw/32/_wales.png new file mode 100644 index 0000000000000000000000000000000000000000..4eb5b034a3511b710035f62b27b584e86201991d GIT binary patch literal 1415 zcmV;21$g?2P) zdrVVz6vqoffxfqx%uR?>1flJ{z3nY6IwxS%%{YhdyRpO^3U8KG&xCodwRZ~^F8Mz z6#x)C&Jc_Mi~#&!03O%t-vRo1dvUX?3*Ft_=s0~A%{lqFbLY;GxwmiMhVw`{dU|@i zo?X3iWq1I+M6}(09H&YvP&P9G1)&s#*26My5vrbj9(FN}?!n>&tR>q#*grgwFdRsChU80 zA#x|rg?Um8DkKytf|RI^U5MVEUOxZY<-brJpNxu8;i!^oP$DA$G7an^8jXQ!91IA@ zxie?^Tu#)ray<^uSorV}{Q3JI{LDLV+(6^EX>g|RL(R%BVG>S6tC)d((@wtYo?G3h zQ@(%_|8Nw_)F>iRN&vVxDp8|qj1e8q)`7Y$J2Fuw7!Pag0^W%S0Q&m+;6B!j6B#Cc zp8xE^jVo7iWQ+l3Q3OtoHlQWb#CPMaX+XVS1S;ej6i8LDlFl3DS~wMYxP%ni)AINl zzqPqg`^h>qY)*wOITyAL_8bFXg8NTKz zi2EQ4i{rJ}GfoZvEFnhFIy6UVzOl1d=C@B5)ut$-em;9pM8O$I;dB6v{HK)&UuyuTGdR2ee6kGi`!Nc>`=gN?LgS!JiRA_*YziGeTdqUS z2~MP#h;UtVn{Or7o5}MMa;EJfJ!}NHL8gU6rbF>)8q`M`2uRKQ#UB6|9KyZPC>*bY zQ^=rIq$33x{?s@p4ioWGks7u@vi%Yjej*o8FJX|TVlZ|ii^Iq#a7+$0DNdZ`_u{1_Kyb<{9H4eOwSOn{*IndUAxj z^vD>aLXAI#u=RQfe~5x;8w-KSle;8Njaf;|qXUe}F(NTG5{a|ac;!t74r06L`>1>S zk#4}8cqKk03z`x~AupK5mPiUuZDu_=1TxteiDlE&Fuu>gC1MfzIXeu1OaqoiD`5`S z;GMZN3@fylGfxf4HcydJYjVHFU!x#ZqEbrbJ_%kvM+G6v4-I%<;_aQEN<#RFIEBG&B% image_resize("32") +# path <- gsub("\\/svg","\\/png32",image) +# path <- gsub("\\.svg","\\.png",path) +# image_write(img, path, format = "png") +# }) + + + +#usethis::use_data("DATASET") diff --git a/docs/404.html b/docs/404.html new file mode 100644 index 0000000..9b5add0 --- /dev/null +++ b/docs/404.html @@ -0,0 +1,170 @@ + + + + + + + + +Page not found (404) • shi18ny + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+
+ + + + +
+ +
+
+ + +Content not found. Please use links in the navbar. + +
+ + + +
+ + + +
+ + +
+

Site built with pkgdown 1.5.1.

+
+ +
+
+ + + + + + + + diff --git a/docs/articles/contributing.html b/docs/articles/contributing.html new file mode 100644 index 0000000..ad207ba --- /dev/null +++ b/docs/articles/contributing.html @@ -0,0 +1,127 @@ + + + + + + + +Contributing translations and new languages • shi18ny + + + + + + + + + + +
+
+ + + + +
+
+ + + + +
library(shi18ny)
+
+ + + +
+ + + +
+ +
+

Site built with pkgdown 1.5.1.

+
+ +
+
+ + + + + + diff --git a/docs/articles/getting-started.html b/docs/articles/getting-started.html new file mode 100644 index 0000000..f42cb5f --- /dev/null +++ b/docs/articles/getting-started.html @@ -0,0 +1,127 @@ + + + + + + + +Getting started • shi18ny + + + + + + + + + + +
+
+ + + + +
+
+ + + + +
library(shi18ny)
+
+ + + +
+ + + +
+ +
+

Site built with pkgdown 1.5.1.

+
+ +
+
+ + + + + + diff --git a/docs/articles/index.html b/docs/articles/index.html new file mode 100644 index 0000000..c7cbcec --- /dev/null +++ b/docs/articles/index.html @@ -0,0 +1,171 @@ + + + + + + + + +Articles • shi18ny + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + +
+ +
+
+ + + +
+
+ + +
+ + +
+

Site built with pkgdown 1.5.1.

+
+ +
+
+ + + + + + + + diff --git a/docs/authors.html b/docs/authors.html new file mode 100644 index 0000000..e2646ac --- /dev/null +++ b/docs/authors.html @@ -0,0 +1,169 @@ + + + + + + + + +Authors • shi18ny + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + +
+ +
+
+ + +
    +
  • +

    Juan Pablo Marin Diaz. Author, maintainer. +

    +
  • +
+ +
+ +
+ + + +
+ + +
+

Site built with pkgdown 1.5.1.

+
+ +
+
+ + + + + + + + diff --git a/docs/bootstrap-toc.css b/docs/bootstrap-toc.css new file mode 100644 index 0000000..5a85941 --- /dev/null +++ b/docs/bootstrap-toc.css @@ -0,0 +1,60 @@ +/*! + * Bootstrap Table of Contents v0.4.1 (http://afeld.github.io/bootstrap-toc/) + * Copyright 2015 Aidan Feldman + * Licensed under MIT (https://github.com/afeld/bootstrap-toc/blob/gh-pages/LICENSE.md) */ + +/* modified from https://github.com/twbs/bootstrap/blob/94b4076dd2efba9af71f0b18d4ee4b163aa9e0dd/docs/assets/css/src/docs.css#L548-L601 */ + +/* All levels of nav */ +nav[data-toggle='toc'] .nav > li > a { + display: block; + padding: 4px 20px; + font-size: 13px; + font-weight: 500; + color: #767676; +} +nav[data-toggle='toc'] .nav > li > a:hover, +nav[data-toggle='toc'] .nav > li > a:focus { + padding-left: 19px; + color: #563d7c; + text-decoration: none; + background-color: transparent; + border-left: 1px solid #563d7c; +} +nav[data-toggle='toc'] .nav > .active > a, +nav[data-toggle='toc'] .nav > .active:hover > a, +nav[data-toggle='toc'] .nav > .active:focus > a { + padding-left: 18px; + font-weight: bold; + color: #563d7c; + background-color: transparent; + border-left: 2px solid #563d7c; +} + +/* Nav: second level (shown on .active) */ +nav[data-toggle='toc'] .nav .nav { + display: none; /* Hide by default, but at >768px, show it */ + padding-bottom: 10px; +} +nav[data-toggle='toc'] .nav .nav > li > a { + padding-top: 1px; + padding-bottom: 1px; + padding-left: 30px; + font-size: 12px; + font-weight: normal; +} +nav[data-toggle='toc'] .nav .nav > li > a:hover, +nav[data-toggle='toc'] .nav .nav > li > a:focus { + padding-left: 29px; +} +nav[data-toggle='toc'] .nav .nav > .active > a, +nav[data-toggle='toc'] .nav .nav > .active:hover > a, +nav[data-toggle='toc'] .nav .nav > .active:focus > a { + padding-left: 28px; + font-weight: 500; +} + +/* from https://github.com/twbs/bootstrap/blob/e38f066d8c203c3e032da0ff23cd2d6098ee2dd6/docs/assets/css/src/docs.css#L631-L634 */ +nav[data-toggle='toc'] .nav > .active > ul { + display: block; +} diff --git a/docs/bootstrap-toc.js b/docs/bootstrap-toc.js new file mode 100644 index 0000000..1cdd573 --- /dev/null +++ b/docs/bootstrap-toc.js @@ -0,0 +1,159 @@ +/*! + * Bootstrap Table of Contents v0.4.1 (http://afeld.github.io/bootstrap-toc/) + * Copyright 2015 Aidan Feldman + * Licensed under MIT (https://github.com/afeld/bootstrap-toc/blob/gh-pages/LICENSE.md) */ +(function() { + 'use strict'; + + window.Toc = { + helpers: { + // return all matching elements in the set, or their descendants + findOrFilter: function($el, selector) { + // http://danielnouri.org/notes/2011/03/14/a-jquery-find-that-also-finds-the-root-element/ + // http://stackoverflow.com/a/12731439/358804 + var $descendants = $el.find(selector); + return $el.filter(selector).add($descendants).filter(':not([data-toc-skip])'); + }, + + generateUniqueIdBase: function(el) { + var text = $(el).text(); + var anchor = text.trim().toLowerCase().replace(/[^A-Za-z0-9]+/g, '-'); + return anchor || el.tagName.toLowerCase(); + }, + + generateUniqueId: function(el) { + var anchorBase = this.generateUniqueIdBase(el); + for (var i = 0; ; i++) { + var anchor = anchorBase; + if (i > 0) { + // add suffix + anchor += '-' + i; + } + // check if ID already exists + if (!document.getElementById(anchor)) { + return anchor; + } + } + }, + + generateAnchor: function(el) { + if (el.id) { + return el.id; + } else { + var anchor = this.generateUniqueId(el); + el.id = anchor; + return anchor; + } + }, + + createNavList: function() { + return $(''); + }, + + createChildNavList: function($parent) { + var $childList = this.createNavList(); + $parent.append($childList); + return $childList; + }, + + generateNavEl: function(anchor, text) { + var $a = $(''); + $a.attr('href', '#' + anchor); + $a.text(text); + var $li = $('
  • '); + $li.append($a); + return $li; + }, + + generateNavItem: function(headingEl) { + var anchor = this.generateAnchor(headingEl); + var $heading = $(headingEl); + var text = $heading.data('toc-text') || $heading.text(); + return this.generateNavEl(anchor, text); + }, + + // Find the first heading level (`

    `, then `

    `, etc.) that has more than one element. Defaults to 1 (for `

    `). + getTopLevel: function($scope) { + for (var i = 1; i <= 6; i++) { + var $headings = this.findOrFilter($scope, 'h' + i); + if ($headings.length > 1) { + return i; + } + } + + return 1; + }, + + // returns the elements for the top level, and the next below it + getHeadings: function($scope, topLevel) { + var topSelector = 'h' + topLevel; + + var secondaryLevel = topLevel + 1; + var secondarySelector = 'h' + secondaryLevel; + + return this.findOrFilter($scope, topSelector + ',' + secondarySelector); + }, + + getNavLevel: function(el) { + return parseInt(el.tagName.charAt(1), 10); + }, + + populateNav: function($topContext, topLevel, $headings) { + var $context = $topContext; + var $prevNav; + + var helpers = this; + $headings.each(function(i, el) { + var $newNav = helpers.generateNavItem(el); + var navLevel = helpers.getNavLevel(el); + + // determine the proper $context + if (navLevel === topLevel) { + // use top level + $context = $topContext; + } else if ($prevNav && $context === $topContext) { + // create a new level of the tree and switch to it + $context = helpers.createChildNavList($prevNav); + } // else use the current $context + + $context.append($newNav); + + $prevNav = $newNav; + }); + }, + + parseOps: function(arg) { + var opts; + if (arg.jquery) { + opts = { + $nav: arg + }; + } else { + opts = arg; + } + opts.$scope = opts.$scope || $(document.body); + return opts; + } + }, + + // accepts a jQuery object, or an options object + init: function(opts) { + opts = this.helpers.parseOps(opts); + + // ensure that the data attribute is in place for styling + opts.$nav.attr('data-toggle', 'toc'); + + var $topContext = this.helpers.createChildNavList(opts.$nav); + var topLevel = this.helpers.getTopLevel(opts.$scope); + var $headings = this.helpers.getHeadings(opts.$scope, topLevel); + this.helpers.populateNav($topContext, topLevel, $headings); + } + }; + + $(function() { + $('nav[data-toggle="toc"]').each(function(i, el) { + var $nav = $(el); + Toc.init($nav); + }); + }); +})(); diff --git a/docs/docsearch.css b/docs/docsearch.css new file mode 100644 index 0000000..e5f1fe1 --- /dev/null +++ b/docs/docsearch.css @@ -0,0 +1,148 @@ +/* Docsearch -------------------------------------------------------------- */ +/* + Source: https://github.com/algolia/docsearch/ + License: MIT +*/ + +.algolia-autocomplete { + display: block; + -webkit-box-flex: 1; + -ms-flex: 1; + flex: 1 +} + +.algolia-autocomplete .ds-dropdown-menu { + width: 100%; + min-width: none; + max-width: none; + padding: .75rem 0; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, .1); + box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .175); +} + +@media (min-width:768px) { + .algolia-autocomplete .ds-dropdown-menu { + width: 175% + } +} + +.algolia-autocomplete .ds-dropdown-menu::before { + display: none +} + +.algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-] { + padding: 0; + background-color: rgb(255,255,255); + border: 0; + max-height: 80vh; +} + +.algolia-autocomplete .ds-dropdown-menu .ds-suggestions { + margin-top: 0 +} + +.algolia-autocomplete .algolia-docsearch-suggestion { + padding: 0; + overflow: visible +} + +.algolia-autocomplete .algolia-docsearch-suggestion--category-header { + padding: .125rem 1rem; + margin-top: 0; + font-size: 1.3em; + font-weight: 500; + color: #00008B; + border-bottom: 0 +} + +.algolia-autocomplete .algolia-docsearch-suggestion--wrapper { + float: none; + padding-top: 0 +} + +.algolia-autocomplete .algolia-docsearch-suggestion--subcategory-column { + float: none; + width: auto; + padding: 0; + text-align: left +} + +.algolia-autocomplete .algolia-docsearch-suggestion--content { + float: none; + width: auto; + padding: 0 +} + +.algolia-autocomplete .algolia-docsearch-suggestion--content::before { + display: none +} + +.algolia-autocomplete .ds-suggestion:not(:first-child) .algolia-docsearch-suggestion--category-header { + padding-top: .75rem; + margin-top: .75rem; + border-top: 1px solid rgba(0, 0, 0, .1) +} + +.algolia-autocomplete .ds-suggestion .algolia-docsearch-suggestion--subcategory-column { + display: block; + padding: .1rem 1rem; + margin-bottom: 0.1; + font-size: 1.0em; + font-weight: 400 + /* display: none */ +} + +.algolia-autocomplete .algolia-docsearch-suggestion--title { + display: block; + padding: .25rem 1rem; + margin-bottom: 0; + font-size: 0.9em; + font-weight: 400 +} + +.algolia-autocomplete .algolia-docsearch-suggestion--text { + padding: 0 1rem .5rem; + margin-top: -.25rem; + font-size: 0.8em; + font-weight: 400; + line-height: 1.25 +} + +.algolia-autocomplete .algolia-docsearch-footer { + width: 110px; + height: 20px; + z-index: 3; + margin-top: 10.66667px; + float: right; + font-size: 0; + line-height: 0; +} + +.algolia-autocomplete .algolia-docsearch-footer--logo { + background-image: url("data:image/svg+xml;utf8,"); + background-repeat: no-repeat; + background-position: 50%; + background-size: 100%; + overflow: hidden; + text-indent: -9000px; + width: 100%; + height: 100%; + display: block; + transform: translate(-8px); +} + +.algolia-autocomplete .algolia-docsearch-suggestion--highlight { + color: #FF8C00; + background: rgba(232, 189, 54, 0.1) +} + + +.algolia-autocomplete .algolia-docsearch-suggestion--text .algolia-docsearch-suggestion--highlight { + box-shadow: inset 0 -2px 0 0 rgba(105, 105, 105, .5) +} + +.algolia-autocomplete .ds-suggestion.ds-cursor .algolia-docsearch-suggestion--content { + background-color: rgba(192, 192, 192, .15) +} diff --git a/docs/docsearch.js b/docs/docsearch.js new file mode 100644 index 0000000..b35504c --- /dev/null +++ b/docs/docsearch.js @@ -0,0 +1,85 @@ +$(function() { + + // register a handler to move the focus to the search bar + // upon pressing shift + "/" (i.e. "?") + $(document).on('keydown', function(e) { + if (e.shiftKey && e.keyCode == 191) { + e.preventDefault(); + $("#search-input").focus(); + } + }); + + $(document).ready(function() { + // do keyword highlighting + /* modified from https://jsfiddle.net/julmot/bL6bb5oo/ */ + var mark = function() { + + var referrer = document.URL ; + var paramKey = "q" ; + + if (referrer.indexOf("?") !== -1) { + var qs = referrer.substr(referrer.indexOf('?') + 1); + var qs_noanchor = qs.split('#')[0]; + var qsa = qs_noanchor.split('&'); + var keyword = ""; + + for (var i = 0; i < qsa.length; i++) { + var currentParam = qsa[i].split('='); + + if (currentParam.length !== 2) { + continue; + } + + if (currentParam[0] == paramKey) { + keyword = decodeURIComponent(currentParam[1].replace(/\+/g, "%20")); + } + } + + if (keyword !== "") { + $(".contents").unmark({ + done: function() { + $(".contents").mark(keyword); + } + }); + } + } + }; + + mark(); + }); +}); + +/* Search term highlighting ------------------------------*/ + +function matchedWords(hit) { + var words = []; + + var hierarchy = hit._highlightResult.hierarchy; + // loop to fetch from lvl0, lvl1, etc. + for (var idx in hierarchy) { + words = words.concat(hierarchy[idx].matchedWords); + } + + var content = hit._highlightResult.content; + if (content) { + words = words.concat(content.matchedWords); + } + + // return unique words + var words_uniq = [...new Set(words)]; + return words_uniq; +} + +function updateHitURL(hit) { + + var words = matchedWords(hit); + var url = ""; + + if (hit.anchor) { + url = hit.url_without_anchor + '?q=' + escape(words.join(" ")) + '#' + hit.anchor; + } else { + url = hit.url + '?q=' + escape(words.join(" ")); + } + + return url; +} diff --git a/docs/index.html b/docs/index.html new file mode 100644 index 0000000..0bafe8b --- /dev/null +++ b/docs/index.html @@ -0,0 +1,160 @@ + + + + + + + +Tools for shiny apps internationalization • shi18ny + + + + + + + + + + +
    +
    + + + + +
    +
    +
    + + + +

    The goal of shi18ny is to …

    +
    +

    +Installation

    +

    You can install the released version of shi18ny from CRAN with:

    +
    #install.packages("shi18ny")
    +

    And the development version from GitHub with:

    +
    # install.packages("devtools")
    +#devtools::install_github("datasketch/shi18ny")
    +
    +
    +

    +Example

    +

    This is a basic example which shows you how to solve a common problem:

    +
    #library(shi18ny)
    +## basic example code
    +
    +
    +
    + + +
    + + +
    + +
    +

    Site built with pkgdown 1.5.1.

    +
    + +
    +
    + + + + + + diff --git a/docs/link.svg b/docs/link.svg new file mode 100644 index 0000000..88ad827 --- /dev/null +++ b/docs/link.svg @@ -0,0 +1,12 @@ + + + + + + diff --git a/docs/notes.html b/docs/notes.html new file mode 100644 index 0000000..02d01eb --- /dev/null +++ b/docs/notes.html @@ -0,0 +1,162 @@ + + + + + + + + + • shi18ny + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    + + + + +
    + +
    +
    + + + + +
    + + + +
    + + + +
    + + +
    +

    Site built with pkgdown 1.5.1.

    +
    + +
    +
    + + + + + + + + diff --git a/docs/pkgdown.css b/docs/pkgdown.css new file mode 100644 index 0000000..c01e592 --- /dev/null +++ b/docs/pkgdown.css @@ -0,0 +1,367 @@ +/* Sticky footer */ + +/** + * Basic idea: https://philipwalton.github.io/solved-by-flexbox/demos/sticky-footer/ + * Details: https://github.com/philipwalton/solved-by-flexbox/blob/master/assets/css/components/site.css + * + * .Site -> body > .container + * .Site-content -> body > .container .row + * .footer -> footer + * + * Key idea seems to be to ensure that .container and __all its parents__ + * have height set to 100% + * + */ + +html, body { + height: 100%; +} + +body { + position: relative; +} + +body > .container { + display: flex; + height: 100%; + flex-direction: column; +} + +body > .container .row { + flex: 1 0 auto; +} + +footer { + margin-top: 45px; + padding: 35px 0 36px; + border-top: 1px solid #e5e5e5; + color: #666; + display: flex; + flex-shrink: 0; +} +footer p { + margin-bottom: 0; +} +footer div { + flex: 1; +} +footer .pkgdown { + text-align: right; +} +footer p { + margin-bottom: 0; +} + +img.icon { + float: right; +} + +img { + max-width: 100%; +} + +/* Fix bug in bootstrap (only seen in firefox) */ +summary { + display: list-item; +} + +/* Typographic tweaking ---------------------------------*/ + +.contents .page-header { + margin-top: calc(-60px + 1em); +} + +dd { + margin-left: 3em; +} + +/* Section anchors ---------------------------------*/ + +a.anchor { + margin-left: -30px; + display:inline-block; + width: 30px; + height: 30px; + visibility: hidden; + + background-image: url(./link.svg); + background-repeat: no-repeat; + background-size: 20px 20px; + background-position: center center; +} + +.hasAnchor:hover a.anchor { + visibility: visible; +} + +@media (max-width: 767px) { + .hasAnchor:hover a.anchor { + visibility: hidden; + } +} + + +/* Fixes for fixed navbar --------------------------*/ + +.contents h1, .contents h2, .contents h3, .contents h4 { + padding-top: 60px; + margin-top: -40px; +} + +/* Navbar submenu --------------------------*/ + +.dropdown-submenu { + position: relative; +} + +.dropdown-submenu>.dropdown-menu { + top: 0; + left: 100%; + margin-top: -6px; + margin-left: -1px; + border-radius: 0 6px 6px 6px; +} + +.dropdown-submenu:hover>.dropdown-menu { + display: block; +} + +.dropdown-submenu>a:after { + display: block; + content: " "; + float: right; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; + border-width: 5px 0 5px 5px; + border-left-color: #cccccc; + margin-top: 5px; + margin-right: -10px; +} + +.dropdown-submenu:hover>a:after { + border-left-color: #ffffff; +} + +.dropdown-submenu.pull-left { + float: none; +} + +.dropdown-submenu.pull-left>.dropdown-menu { + left: -100%; + margin-left: 10px; + border-radius: 6px 0 6px 6px; +} + +/* Sidebar --------------------------*/ + +#pkgdown-sidebar { + margin-top: 30px; + position: -webkit-sticky; + position: sticky; + top: 70px; +} + +#pkgdown-sidebar h2 { + font-size: 1.5em; + margin-top: 1em; +} + +#pkgdown-sidebar h2:first-child { + margin-top: 0; +} + +#pkgdown-sidebar .list-unstyled li { + margin-bottom: 0.5em; +} + +/* bootstrap-toc tweaks ------------------------------------------------------*/ + +/* All levels of nav */ + +nav[data-toggle='toc'] .nav > li > a { + padding: 4px 20px 4px 6px; + font-size: 1.5rem; + font-weight: 400; + color: inherit; +} + +nav[data-toggle='toc'] .nav > li > a:hover, +nav[data-toggle='toc'] .nav > li > a:focus { + padding-left: 5px; + color: inherit; + border-left: 1px solid #878787; +} + +nav[data-toggle='toc'] .nav > .active > a, +nav[data-toggle='toc'] .nav > .active:hover > a, +nav[data-toggle='toc'] .nav > .active:focus > a { + padding-left: 5px; + font-size: 1.5rem; + font-weight: 400; + color: inherit; + border-left: 2px solid #878787; +} + +/* Nav: second level (shown on .active) */ + +nav[data-toggle='toc'] .nav .nav { + display: none; /* Hide by default, but at >768px, show it */ + padding-bottom: 10px; +} + +nav[data-toggle='toc'] .nav .nav > li > a { + padding-left: 16px; + font-size: 1.35rem; +} + +nav[data-toggle='toc'] .nav .nav > li > a:hover, +nav[data-toggle='toc'] .nav .nav > li > a:focus { + padding-left: 15px; +} + +nav[data-toggle='toc'] .nav .nav > .active > a, +nav[data-toggle='toc'] .nav .nav > .active:hover > a, +nav[data-toggle='toc'] .nav .nav > .active:focus > a { + padding-left: 15px; + font-weight: 500; + font-size: 1.35rem; +} + +/* orcid ------------------------------------------------------------------- */ + +.orcid { + font-size: 16px; + color: #A6CE39; + /* margins are required by official ORCID trademark and display guidelines */ + margin-left:4px; + margin-right:4px; + vertical-align: middle; +} + +/* Reference index & topics ----------------------------------------------- */ + +.ref-index th {font-weight: normal;} + +.ref-index td {vertical-align: top;} +.ref-index .icon {width: 40px;} +.ref-index .alias {width: 40%;} +.ref-index-icons .alias {width: calc(40% - 40px);} +.ref-index .title {width: 60%;} + +.ref-arguments th {text-align: right; padding-right: 10px;} +.ref-arguments th, .ref-arguments td {vertical-align: top;} +.ref-arguments .name {width: 20%;} +.ref-arguments .desc {width: 80%;} + +/* Nice scrolling for wide elements --------------------------------------- */ + +table { + display: block; + overflow: auto; +} + +/* Syntax highlighting ---------------------------------------------------- */ + +pre { + word-wrap: normal; + word-break: normal; + border: 1px solid #eee; +} + +pre, code { + background-color: #f8f8f8; + color: #333; +} + +pre code { + overflow: auto; + word-wrap: normal; + white-space: pre; +} + +pre .img { + margin: 5px 0; +} + +pre .img img { + background-color: #fff; + display: block; + height: auto; +} + +code a, pre a { + color: #375f84; +} + +a.sourceLine:hover { + text-decoration: none; +} + +.fl {color: #1514b5;} +.fu {color: #000000;} /* function */ +.ch,.st {color: #036a07;} /* string */ +.kw {color: #264D66;} /* keyword */ +.co {color: #888888;} /* comment */ + +.message { color: black; font-weight: bolder;} +.error { color: orange; font-weight: bolder;} +.warning { color: #6A0366; font-weight: bolder;} + +/* Clipboard --------------------------*/ + +.hasCopyButton { + position: relative; +} + +.btn-copy-ex { + position: absolute; + right: 0; + top: 0; + visibility: hidden; +} + +.hasCopyButton:hover button.btn-copy-ex { + visibility: visible; +} + +/* headroom.js ------------------------ */ + +.headroom { + will-change: transform; + transition: transform 200ms linear; +} +.headroom--pinned { + transform: translateY(0%); +} +.headroom--unpinned { + transform: translateY(-100%); +} + +/* mark.js ----------------------------*/ + +mark { + background-color: rgba(255, 255, 51, 0.5); + border-bottom: 2px solid rgba(255, 153, 51, 0.3); + padding: 1px; +} + +/* vertical spacing after htmlwidgets */ +.html-widget { + margin-bottom: 10px; +} + +/* fontawesome ------------------------ */ + +.fab { + font-family: "Font Awesome 5 Brands" !important; +} + +/* don't display links in code chunks when printing */ +/* source: https://stackoverflow.com/a/10781533 */ +@media print { + code a:link:after, code a:visited:after { + content: ""; + } +} diff --git a/docs/pkgdown.js b/docs/pkgdown.js new file mode 100644 index 0000000..7e7048f --- /dev/null +++ b/docs/pkgdown.js @@ -0,0 +1,108 @@ +/* http://gregfranko.com/blog/jquery-best-practices/ */ +(function($) { + $(function() { + + $('.navbar-fixed-top').headroom(); + + $('body').css('padding-top', $('.navbar').height() + 10); + $(window).resize(function(){ + $('body').css('padding-top', $('.navbar').height() + 10); + }); + + $('[data-toggle="tooltip"]').tooltip(); + + var cur_path = paths(location.pathname); + var links = $("#navbar ul li a"); + var max_length = -1; + var pos = -1; + for (var i = 0; i < links.length; i++) { + if (links[i].getAttribute("href") === "#") + continue; + // Ignore external links + if (links[i].host !== location.host) + continue; + + var nav_path = paths(links[i].pathname); + + var length = prefix_length(nav_path, cur_path); + if (length > max_length) { + max_length = length; + pos = i; + } + } + + // Add class to parent
  • , and enclosing
  • if in dropdown + if (pos >= 0) { + var menu_anchor = $(links[pos]); + menu_anchor.parent().addClass("active"); + menu_anchor.closest("li.dropdown").addClass("active"); + } + }); + + function paths(pathname) { + var pieces = pathname.split("/"); + pieces.shift(); // always starts with / + + var end = pieces[pieces.length - 1]; + if (end === "index.html" || end === "") + pieces.pop(); + return(pieces); + } + + // Returns -1 if not found + function prefix_length(needle, haystack) { + if (needle.length > haystack.length) + return(-1); + + // Special case for length-0 haystack, since for loop won't run + if (haystack.length === 0) { + return(needle.length === 0 ? 0 : -1); + } + + for (var i = 0; i < haystack.length; i++) { + if (needle[i] != haystack[i]) + return(i); + } + + return(haystack.length); + } + + /* Clipboard --------------------------*/ + + function changeTooltipMessage(element, msg) { + var tooltipOriginalTitle=element.getAttribute('data-original-title'); + element.setAttribute('data-original-title', msg); + $(element).tooltip('show'); + element.setAttribute('data-original-title', tooltipOriginalTitle); + } + + if(ClipboardJS.isSupported()) { + $(document).ready(function() { + var copyButton = ""; + + $(".examples, div.sourceCode").addClass("hasCopyButton"); + + // Insert copy buttons: + $(copyButton).prependTo(".hasCopyButton"); + + // Initialize tooltips: + $('.btn-copy-ex').tooltip({container: 'body'}); + + // Initialize clipboard: + var clipboardBtnCopies = new ClipboardJS('[data-clipboard-copy]', { + text: function(trigger) { + return trigger.parentNode.textContent; + } + }); + + clipboardBtnCopies.on('success', function(e) { + changeTooltipMessage(e.trigger, 'Copied!'); + e.clearSelection(); + }); + + clipboardBtnCopies.on('error', function() { + changeTooltipMessage(e.trigger,'Press Ctrl+C or Command+C to copy'); + }); + }); + } +})(window.jQuery || window.$) diff --git a/docs/pkgdown.yml b/docs/pkgdown.yml new file mode 100644 index 0000000..12892b4 --- /dev/null +++ b/docs/pkgdown.yml @@ -0,0 +1,8 @@ +pandoc: 2.3.1 +pkgdown: 1.5.1 +pkgdown_sha: ~ +articles: + contributing: contributing.html + getting-started: getting-started.html +last_built: 2020-04-23T04:54Z + diff --git a/docs/reference/index.html b/docs/reference/index.html new file mode 100644 index 0000000..5d4641f --- /dev/null +++ b/docs/reference/index.html @@ -0,0 +1,176 @@ + + + + + + + + + • shi18ny + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    + + + + +
    + +
    +
    + + + + + + + + + + + +
    +
    + + +
    + + +
    + + +
    +

    Site built with pkgdown 1.5.1.

    +
    + +
    +
    + + + + + + + + diff --git a/inst/available-langs.csv b/inst/available-langs.csv new file mode 100644 index 0000000..6ad417f --- /dev/null +++ b/inst/available-langs.csv @@ -0,0 +1,16 @@ +lang,code +ar,Arabic +ca,Catalan +da,Danish +de,German +en,English +es,Spanish +fr,French +he,Hebrew +hi,Hindi +it,Italian +pt,Portuguese +pt_BR,Portuguese (Brazil) +ru,Russian +sv,Sweedish +zh_CN,Chinese diff --git a/inst/examples/2-shiny-app-lang-reatives.R b/inst/examples/2-shiny-app-lang-reactives.R similarity index 100% rename from inst/examples/2-shiny-app-lang-reatives.R rename to inst/examples/2-shiny-app-lang-reactives.R diff --git a/inst/examples/4-selectImage-input.R b/inst/examples/4-selectLangWithFlags-input.R similarity index 100% rename from inst/examples/4-selectImage-input.R rename to inst/examples/4-selectLangWithFlags-input.R diff --git a/inst/flags/png/ar.png b/inst/flags/png/ar.png new file mode 100644 index 0000000000000000000000000000000000000000..e41b45570e5c1efe830d06c911d710ec196b42b3 GIT binary patch literal 883 zcmV-(1C0EMP)B~(;0HlPh#2BRFe;i5L=XfK2qgxk1X`d_3Mfzr zt1Pm}o?yrprmO(>~{G!f67ajZ5S^urPfqmMV6^ zDBTeTsSYsB+Ji+I+psdn1?%z-!KUySmML~)v3xt_I`JHKznt=nY0rGwW-Tav0T>W^ zhazuC9~UBBQwqh?d$1}vih%Z8xX>m-kV=f3kFrqwyaB3rYIrwvg=+gockyD8et`ePz z>U?NEj3R?t;Z_rXxIP799%gWwJH`eGR2(t~%lU!6%~3d5eUa}e7^&mACUR#z0gwQV zWLvO7c?21QrMS_PMl9TiBLNbtb8(rftfUHyMjxPTv=Om=a_p}>#}8xAM17gO9gL0a zp^9lRK-I6xIY5<(kT+bz4`X5qQ6GRNW*urE4J;*9655D^GZ(g|zB zX=)kUw}5Lvs9y`_rETJ4WJ)8&!jSG6Gwj-!MpKYv!SDGx<*&Z$%By4}tMdk%LQg)P z->ZI#Ml^0b+-QVf8qv5|KUKzzM`uF1XA+x951%Dg{FyIsT3JObq`I*EHj=HrV(C`_ z(2G`N@8d$VCEK+w@ZgSUNfTnBJdE}E?l8}HFF|EhV>;a7PTI>1cY}jk?z=#P{DJp<4c?7BEVg>e&lf zBu^5QV@7PPB{mo{KWoFE5h2roPAjwjgXC`knENW81Mpu1_y~Mbq`Yo&e2)MC002ov JPDHLkV1i7?jLHB2 literal 0 HcmV?d00001 diff --git a/inst/flags/png/ca.png b/inst/flags/png/ca.png new file mode 100644 index 0000000000000000000000000000000000000000..6ee0cbbd3ba7562ce1f8c5cdb26a0fc699e0eb46 GIT binary patch literal 7441 zcmZ{J1ymf{vi6{ZYmg8EgIjR-5Zonra2PZUGPt`t1a}hL8Qg-C;7&q-;O_2^oOAwr z@B80-yH|BpSJhXwtM=}-di4%hQIf_)BS8ZI0GP5e5^B#J^h^XO$j^7Wk^Nl&fH=fT zTwFy~TpXn0XlHKq5exum2Y+%0s=rX2f{aNKx_sl`%7li{NPl}743?Eo#t4wXp`lO3 zfs;&-(NqWv^YhC`p+rGJeygggjzKST8=AX(*SRcwmA$ZaK3q35Govw+*Wv>By-O=8 z5d_+XL&1!Uf$?(xc6Eks4RpZKe?=pPdu>D$UqBhw(4Yxm@m+dqy(dK)-}KZre?RNn z_+*G)P-XbyC14Q0U!+5IU4_^c;3r2VEg^;A#~!fr&S3&KgAb>FIKDc7P3dPZ+yb93 z{@us5@62S2PMl4eqaXdhvPR z<8p+cHr8*0c>TZFcu>)Qfa}GtPKr`fdx#B~!`$Rx&1*`_JwB@aSb`k#lsyNwk48^2 z;;Tx_Qflk7O&Rx#>|IK|uW#1;eKvj9pJXtcoc!6j0W!PV5oavKQ{AcjjPqTN89;_q zV#}sIY-O{khr-8hHq9$^PVV{S*z@yPuA1eQSd{2nQ&tYnIFk+=AdwVMAl>#3s3T8n zyEBHhw&!CkQ6%bkpRZT(IKR4QVb*3V==ha&*lNIFeJIQl;V!EK9hag(@SdKr6K6`X z1r)_!VDj4KHXl~7($~yP4kp00-D|3#`z{z}X53nV%}A&XCvJpzEry}z{gw{}KFR;) z)!A{?0U`cd_;?WD8ZPbi_Z%{o56s5LQ*hJ)%50|ys=jwGKi1#+Yo~TxrnEdH!99Mc zsQDlq(Di{h6kZ+&{we0iF2SWMm&Gx1p~|C;6GyoXiXQL6V}?`^gQj3os;J}5&ZE6a z6uT5LXB4Uwd|&vaq*Y$|?;;UB0@YpmXwjdKq2v#Q!a><$qLRvaIqs^HluutGxl;o+ zGWNCi&y*uo^Q#pIlHlZk$yoAIHTiu07;-PkLc=Blr8WIaLIgeRevUr*R-aWNJssa* zkt>mfeyv$KcUXNolx31FJJtGLDE+jPW2^7|=rMC_H`F=6dmozPz0$bR$sZpYuN8L{ zmo+G2_UaV*xAc-&1L!Wkk@sYo``p|H^Wo))k9>}iHr7UGKh;50^UgQ=8-W}Co0%*g zoC6~A_U0~(9x6Oa1~~tTdkH?Y>ywPoc<`4Sf(?QVxcMlCg@I|;y9#Z%8mz}qsh3D^ zFHSepF35EOZLGQ$fUi0ap|on) z!!ze%NBJXF!^M2X-1mPVMXB17!2u?`WgJB02a#vOOXj{%_lwMh;|hG0i|G_#aEv2_ ztlUN2=40L^T@COFAV3MI#(^^l-~)-sASML7pm3HU;s_}Rc@AQphQQ~t(Id+ROy-ep z^Qj|#65}2RZ_`erUWkd0b6S$52X=^c;>sYBbw&La3!_}e*+rr3##;%Sk4AaBFG)?w zfg_C@9Oft?yeg27e}Z%Jf<5>;Oj`n;8Z&`_!7oXylnOJRN5=KDCh{ zfYJUWJ&3@1JCMgYfwYajZL>}0#ygVlYr;mX8AU9GxfBga1r3WRux!35M4j?~+1=Lv z#-v6YtNeu~&?b<^xS%F&o^#$~|Mfop{u`I@h>(a_x%lrv-?JE_7^6%5N|Q^oc2Q>p zO9@DYl@N=<>$+}M@$B83K*tUyIOYg`r6|92oYW^DOcH^P69s$&l<%Q zl@(PUrU0vjZNfTW46r`foK?=aPhrnQ_&Dy)ucnBm zmOqmh7@8TGs2Einqksp&#o%pIx3Mtr3ow`YIe6Hp+^B8nIvw>Jb+6f=gt?qWsoAb^ zI=G)Ll0AbH$iBtK%ZAOyTFq8VU&mM1Tlb>wmwB3rWNk!kdR<8MW(`kWOzorjnlV-F zO%1q)yH?ovu5Yxja_n#*dt|BiG3kL9C>qKx%{IUu^NN&}Pc<_k(u@A z8P+tY_d{<)5C0bmL>A(C=>3b}*Tb(!p*EpHAzUE~x5Lxnv)a?$Gvt%(b=$41HPh9p zje_H>_12y%|D52QLGo_H!R3)o&{t+7S{y1BS~gHMB|Ysnbt>&V_4T_jT^apB!|l&1 zDdPcbIo0*{3HDjXK`2TR`qV1xutDK?!+eu`mi$l&yRZ%-QzA|x`4?sQo-9f@bNI_l z1}q|!{_!d)D9L8sP2gj*>%9qLdM3NvSZzB^bn<5|k?Ke1#qlUwo zW2&~iRx~Hu z@t2B_%IL2xEH#Ij*KHCpzpOB-(5<-oY4X$O=ck`l&WO%30$_pnE%z-;EnCh-=ZNPr z9vdENJ`?%01et7o``|s?hwsnYLBLY0asislLf{F>8^viPeMHGxId{Lj7d; zoOF@7LD0u_nQT;;!V}^-;U3>s=~mFL-)7UUCCl^KaWX%)Svh>BHh=OY`f~C2}e$MN#J~fm$XTg)^QsyzQCk50!h@Dd%-9YjTdkV82 z4R)7-q&JxXnKOEhhk;aR(rB?CNiReN;)>E;S;!N~lSMrgj^_K;Fb42rJ4KAWS8rt> z6MxY8W}XVnXyxjuc%jd{hkOR&S0 z`-otZC|)}*Ey2ryMiX%B$I|0wj8vVdzR?7-mfY1y z7xQAENOvL1LKF`13CRmRfqzd3<%{GjW6wbMq?e}Ma<9}pq!T*x;`1?v%g=38skN^e zRGdJqS;o^#Xi*cH+~MG^4Rl;4m?yYM8vM@Bn4%FnEnj3q}%W_I2+M(%HlFoTVbL3MVpWw z;ba4)B{Q|AF`rZ1Wwp+sM`1X8e{?bRu6qiSJS^jtl^?hoo`O_{QWd?`1EszE{YQ#} z${&C7rk;aEy(1>!il(n&3Fo6xjcM27a-oZLleIREAyBQ@h|M4CbfjfMkK4T|@12m) zin7qw#*$t*6Lt#9^A)M>x{I`zH+U7VY7tx^nba@$iE|U#9L=?#~kd{+(Ry1UCMl`a4p6ZR?As8A*8sW0WD8KlXDdb?zODz?Dcv}aX(8v zThC+ZlJerqH>U2g_>%k`Va@yc#zRKfq6d6CbXUmT@?1V4EP2`VbjY6D!by(Elb%1mk6Z7y?XbZ5F|ydFaO zjyM#|7+fZ4E%B6S0v8bxA_YE?3#v8fOo3t}_af?G;>M@hiTPX2bJYVB$-$c(9e=U&i=$Om#ksHZy+ zOM1{@bSM0bIfZdfs8PaI6#JF(!J>(0Y8$9(Y$@@xNY1Nu#$|k;myacIR{lFl=ee-o z=W(#{^Xl_sSQxC`D&9)fYNCW4XoB7QrMHNBUs+)(B`GPX&Cb_EuG`~Hv+KFYm$75GvA`T`;9VK{7Ysh^??O_-*~BgP z)X;gT#0tah&ieL7&A!8T&LPx3*^Vs*)@=ihcD&Td^vi7i6Av@Zd)q@#wv-E1`^Sl` za->$fRZ&aA6d!M$$Ldq7gS**#d4I?t9*MLYNQ5FVUcQ)%OR$BsAiy1E*>bKp!l9*! zVON|hf~)G7AJMj3=s-un(}U!eETkaHKml!-eiJvDan_B;#zo{(G6t9l);sydBedFv zbA-4|@F?UD62qsU$aB6Xo1xSN5i&!VC|GJ3`KdK%vOuQHOrSfB%J+|{0gd_PtF>xG zULt(OwPi}BpGp(C5V;GvS1b;`MFH>OfP$1iHI$@GxZs+Jg0sP`nA2T#_HhGY2Zxg6dZp&2N(vZzYsszJ)kewYOxee|q{@X~DAxRLb>;O3vz7~UF88k| zupUMi_3sX|4&7n#UK=OKQ6EaWC#a9iaX)l>y#%9QP`K%B?S{_Gs zT*b*vJJuh@4J(&3pAMcLdC;W@{1}C=-}YJx z(=^#lZ%%Ja+i)FnF}t~VQ9jaig{deH$z{mh1&>A^qPC+x*dl9$3`NyOMJqTeXr*$e zwrao8>DNKfPMJUbLG#0t&x?=3?GuUph@-{X;91mZ;c@sG=GhTZ9G)Ako3@PjcHprN zuApkUWvh01Q`>c$M6{V-QtC8t2RV&i2a`WYuhT0ppejEBPt8i=CO|H~v?9IuXUlD> zRNba(g^?}#YgzraLyLCf2f|hNz&AaXRCcB|_~P&NIWeJNbR>CqCU=`){Rp1Y23;2k zPbd&5&03_gWtQSK$Joeo#U9(YSnkQyKDZ<;dmysx)%P&?xP@S#>J~WIg_#E$rn(i;=Hn0~Ja(gf5>8i?jCK?GQI2EGIYm`t zUgMM2Q>k;Y9mJ$L(`nVTg|NnFI`m! zy|1&;&lB#W3@y9JrG;Tzukxq$TcrB&>yZnf^~ovgB*)oN$IQ9&>g)|199J&fupjv# z9Hr1*-fx^@K$a2mJ8`u*;Uq+hCsP!RcW|QzP@IY|cWUxU+_b=bsmcN_RfpnN#WXNN z0i?x13ZqQ+jpOn?qgbP&;-r$=;z9@ACe9|XHTEtR346Lw`ttSLd%muKaiuc31qnJu zEooNq<>B0K<0F;>d?PRV6#De~^O43}gffknEMhlsR*1KRy1~Qsqu!Bp@mi6tSydUL zT3>ZkWRA;9v3vBh@|J)_FS z(h~yYmKH2R+44#;pHpq*#%5P;U1ab~Z!462Ba*xx*x`Dw2@iu$q<0NarO?bP>Mo>O zzbcf%l8)@bwc;>f&I36xeB-=-g%v;#)BhN==0w!Z_?|a+w$8!3yQ0~ zFLqSRova*>NjKmY3EicuyKA|T-K_eF3+xYPv3{6#wV|!fL6KA~m!V82HYcxaY-H3lLOe?SoohsI6z^;4U`zjOU-rmKFGF{8 zFZWmd9%xufw?$7C3y5)$Hi)P{3?w;WGQB#C2cICPmOS|)?adG5X51SMNmUxbjR!{O z(y{3hu4%3Zn3C1i_M6@C-Bvs(h5&{yiF^iP`fR#)txByz!|p;K1mA1{GPaMi>o%q{ zPc!2Db8)=DnirznG)FHxSJa;}!@Bt7nM=N5Q2kcMaoeoPMM8&~hf&CbV^*k=Ta31b zGMuRy6uk2_oGbY}KQJKeB6OzK1DXjHB^8bvb11(-JXx=R|1>pXu^w5ORGe+g#4Yqx z{HxuhlCdV;z9wI@3<9Gl4L_OuWS+vbH^=g;+E&NL)^cHL)UBwB^Ptk@Dt77ijsjc# zE>9XE&?1z+M~*78AbPEpP9>3sRl-nHsYY>Nm?d2p_-%By4}Mz z+T!5%&tC!#?UoOBAs79@BR8?9T57-0$Z?hcfb*f~=%ajqQ7l5W%SThwFJ7jm74S+t z*$CsfwGYBpOta$%&qoXR7cPx%Pj??iFB=Pe*V&(Z0xM)-+@&8@E*TJ|X^us+=nk)+ zzs-D~40WS;36{SQY-2mt_}pYWb3C>Q=;-k@BBf5`;THh|cBaaq}C{@&CP42D20 z?VKJs%3eMzQ0--Opa1|m{vUz^q-PQX0Pwe^1)iV6azcD5|WW_BiE7B^e_KXCv; zZUWDuE!fEzF)`OsTD?0ur}#1cSI)xLDXIMbJPX zkdUL9xqzC4)Iad&Ct*rUCntLWR#sP6R~A=J7CT1^R(5`VepWUPRt^s4XAfqmJH*M@ zjTr)^`a8(~iz5MsnmSt9J6YL5K!4&Io7g!!2~$%3N%XJr_dLOFR{zcff&Nq0bAhaX zEUfG-Y^?tq%*o39|A76m{0;l7uD{a>{Rt+Z0R=mX+u7QJAxB4|Ra|JoWNXfN95>z_BOl&pl9x(sHYro0>?JB}iM zut09U`~;`l^WhR^Ta;jX7!yzo$C!|#$-V&Pr_%o1jL>D~V*2sj(7=Jg@WtfWP+1gfafwKYriml!w>4K58~c}MoHAZZ z#vQQ_i?QCQV(3ifAJeCEqxo+gr|xa$FC{+%iLw?OcN@G!F@3{JdCkS6vqXh3W+p^s X(=8&$kaL;;ynwQjN)nati~{}(h9TaW literal 0 HcmV?d00001 diff --git a/inst/flags/png/da.png b/inst/flags/png/da.png new file mode 100644 index 0000000000000000000000000000000000000000..e05eea914a9ee40f9577239a3c0315fffad1109e GIT binary patch literal 128 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzcTX3`kch)?uPx+dP!Mpw*ms!i z&3@s16-OF(tNl?cRiBqxv}x@*E`|n<15%em&)<0$&&|NlAk*-hNrB}6$m9dzJP)!D ZupRj@jZe~QKOazp!PC{xWt~$(699d(DbWA` literal 0 HcmV?d00001 diff --git a/inst/flags/png/de.png b/inst/flags/png/de.png new file mode 100644 index 0000000000000000000000000000000000000000..608866a737d1b07509f40126a1f0a071af13e6c0 GIT binary patch literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz8&4OSvWqhG86^cxpFnQD22Fm_?LYUR3Zkv5z$7x6bd4OPv8^zI`%d`g9L09)Iu?8q7f5gHmk0C`7N}t z3PQ4M;T|~EO!2}0pEHaS5t5W9VWj{mfB{g+%_kCt?QT`2BS-<1h`_Pxy@cw=0P^EO zXh)RsmwTbk@Z7aPpg8(TCJYA~!(OMJXHYrH(`jlXipWn`Z11^bvjGHg0%YK^27v@v z<~!F76Ei=;dhwH1D?lqKm4GlV00GyY#c5dFoz$>j3oP#LW6!?v!~sJzDRCF?2)x@# zoXa8Zoi_E{IAa~55R`FlX3)b5rs4!p;5!<7I%28Zrv5O;+36uOZi{Sj1m87dUcv~h zg$S|&)rd{+3fsHkt@=V?a|>U!abN-s}o_$p8QV07*qoM6N<$ Ef{}@}x&QzG literal 0 HcmV?d00001 diff --git a/inst/flags/png/fr.png b/inst/flags/png/fr.png new file mode 100644 index 0000000000000000000000000000000000000000..39fca72a7f8a6e7f85d0fc0bef77d2ba90622c82 GIT binary patch literal 123 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzCr=m0kcif|=L`jbl1_nMk_QCL zw#*kSC{8>4u=soWyqwjMUu75?*e~4j^D2MV!35L;0U!7mNHQ>#9$?jcT9M}%=UxaB N_H^}gS?83{1OTXDBLM&a literal 0 HcmV?d00001 diff --git a/inst/flags/png/he.png b/inst/flags/png/he.png new file mode 100644 index 0000000000000000000000000000000000000000..4214c9eb2fb5b22511871fae9c3b320a358d3beb GIT binary patch literal 168 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJd`}n0kch)?ryb;MaNuFt{^d%k zKDTA`hSsl3I}|Ds?sQ1c@ZWLV!OY!3$SZ-7dx`)|xE6%*b8Vbed<+Q9S{}K*zZ}Cs>~-PiPO&d$9Tj(|)lCMzQne_xQY1 R0)bXDc)I$ztaD0e0syy3I+Xwb literal 0 HcmV?d00001 diff --git a/inst/flags/png/hi.png b/inst/flags/png/hi.png new file mode 100644 index 0000000000000000000000000000000000000000..8b869087474e2c0e573388fd737e41f5bb60d2aa GIT binary patch literal 301 zcmV+|0n+}7P)lOBUIk+jK4e`wHD@B!Tm2QGJV zKhFIHIRIRj;TV7c`T>}Z&`B780r~@|v9jz9$BE0FkfsG{u6h8^yFnC9D2k88!l%9K zUfKaXp9Lhz#CCgzVH}|A2kdqiI(t0w<^fghvh364f*^zE=TOzKY$AYZM$H3kJErP& zeNUH<$1?&fmjO1L763_-Q{7eVnzk4ewATpV80OO=T&~JhY6?$0zU9BkYr#eJ-~WNQD<4ob@hcH NVNX{-mvv4FO#t5*BmMvY literal 0 HcmV?d00001 diff --git a/inst/flags/png/pt.png b/inst/flags/png/pt.png new file mode 100644 index 0000000000000000000000000000000000000000..b3e8989ef9eed6f612a3815ed417398175b539e5 GIT binary patch literal 605 zcmV-j0;2tiP)U=-5_P`hnJhm8z2ml7_pGH13h=E!DE$R}22VZ7DO?0}w6I+Of>ElxY( zkidFKBvxf0<#4dk-NVe#MK*m`Ngh2!^l%=LE(1}wMt;EddK<%|8WIyCs~I9c#-8vU zXt^5!;9J{emNgOy$;wi_PJTdjn@IO<9o|kW51j(f25vGkvqb;n7!PKaneJ=gQJtQ} zdNT{XYWV@j+Ku!M>S**9k+9|RyeG)D$=3wOqXZ@wnQJ^xd|w_5b!O%Rg8TrjtB@+c zgxP(76}5@4z795l){$8N){h(~Sy@EfXC!`3D?ebX(@yY?7EixO-^o&@99g8U1c=?6 zV9o1cv{qo@Mk!xb)V%A|q~{E!W-DX&1)72u!e>g@$TYK=X(5>-5xG#t{E(LD^bX#e za?@8t zU2KzO6vyAfAh32DxUsQzw4)t%WynS+ADIC=2-)NUZzaMYBrbsty3V?0VghOidZArA zR@c<12{RKJVUXY|Ut1Z4OazTL-s_@QUV&g_ZkrCd__l8*Lt@W&x_~N8dZC1X|ZJE$m@eR|(e!#brR_T%?$e7b|&3>}hbItDM_n10Lwa-cXfMYtJmcPiEhm7**sPl^J3#HSItF7!`kuZ-4$I$l zr?V0E{7C|#wPd!fVeb(e*9WG-=NidKJ_}7dDVW|!vHUvbcyZ?K#yQW2RY;WP`$#Dg zS0oz)23`|iqhKhk2PZHZ^}6@UxpK+`7d1vC<+lcB(Gu9hb6aCO%XP%*-x3p zk3Gvv$(#nAL`_8<*ZMQKozisQtEY{ue}8G3M7a7s1Y}cQ`%@e|X6DufSrU++<-$jXN>VZsN4+iOXqUg)uBxQNhe_ zuev82_Yg2h#)K!aLW=BJe$dTi` zdaw&u(O%xFck4cP{1ukM9O|D*ot$A9?Tc{)wskuBu7AdO0#Z}e?dHs87SC^FiKU6M zLO*3@KQ4J!k-O$KQtyotI@(8Xd?O>5#uNBnu(yBcoS49!5)?$Mi1idQ@|zN_*mxH$FnQz`5|H8_QiD6 zU!BQh!v{}1U=xm!p{Z>(`@5~&5J{;rq&h5m?geBC#vha61d?1OL*;xTTOTr)I*M4ov<_=lfFe^6i>X=U_Y$@4?WCeseb0qY zv#EOMK{RF*XUKSM`pChJ&%`BZ;8e&?n{T<;3KDPI8R<80Q`Q29?aYWw)+nAJ8_w7Y zPRPYG_A)w|n2Sr+?icl>UB^n#O0r5?O1^)?b^KrcBAWUto+9wSCh!X(PN{0@A}Q(s O0000F2J#s^UHx3v IIVCg!08_jl$p8QV literal 0 HcmV?d00001 diff --git a/inst/flags/png/sv.png b/inst/flags/png/sv.png new file mode 100644 index 0000000000000000000000000000000000000000..40d8fc4fe0a5d2dd4f1cdc0a42ac27b9bae34535 GIT binary patch literal 131 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzFHaZ8kch)?uPx+dP~dU7ID6t% ziSD@;C4vo2YBe8YC)-_KvT5yfPKE{%hN-VY_iApLZO;qTR>| zO-lk%6ow}g#L?zsTLk%?mKJ?1s%0(v1qIcjRY4HZqF+&q7X6K=McbhI2|?t{C`Ot} zU<)gw-tN7ViVld3S}pG4<;+|zbDr~_b1x$R5dKmE2jBqz0zi){XjfX0#L@Qmw^B<0 zE!?ygQD96cC>^_yTl1J8Jp&*W=GHyXW6c0EUQP(W1_AIB$bj0B8x{ci!Q_w%V^YTZ zr30xM8TW&#nW(xaWGX!`;bD0IM%;c&8UcQ)E*`j1I&=Y#0!l|N_D(CVB_UDst0?Zf zQMn?J)3UW)b^z!{GK&(*r%oV8mJNZ$^0^b4C8;q;6dO>2tm!6Z5UG+BFA2C7mJ0jjL`e97T45&NDFjk-P+H+8;A4d{ti}Z04N$*oM z`B;xGB1_LBX7blFCkmu`&8OI|+!g@4h!QdiyCUm9b1C|p0M$Fd*V*KE2GC`301m(b f_+K#x-~d$L(Vgg=oA#`P00000NkvXXu0mjfuQJm( literal 0 HcmV?d00001 diff --git a/inst/flags/ar.svg b/inst/flags/svg/ar.svg similarity index 100% rename from inst/flags/ar.svg rename to inst/flags/svg/ar.svg diff --git a/inst/flags/ca.svg b/inst/flags/svg/ca.svg similarity index 100% rename from inst/flags/ca.svg rename to inst/flags/svg/ca.svg diff --git a/inst/flags/cn.svg b/inst/flags/svg/cn.svg similarity index 100% rename from inst/flags/cn.svg rename to inst/flags/svg/cn.svg diff --git a/inst/flags/da.svg b/inst/flags/svg/da.svg similarity index 100% rename from inst/flags/da.svg rename to inst/flags/svg/da.svg diff --git a/inst/flags/de.svg b/inst/flags/svg/de.svg similarity index 100% rename from inst/flags/de.svg rename to inst/flags/svg/de.svg diff --git a/inst/flags/en.svg b/inst/flags/svg/en.svg similarity index 100% rename from inst/flags/en.svg rename to inst/flags/svg/en.svg diff --git a/inst/flags/en_GB.svg b/inst/flags/svg/en_GB.svg similarity index 100% rename from inst/flags/en_GB.svg rename to inst/flags/svg/en_GB.svg diff --git a/inst/flags/es.svg b/inst/flags/svg/es.svg similarity index 100% rename from inst/flags/es.svg rename to inst/flags/svg/es.svg diff --git a/inst/flags/es_CO.svg b/inst/flags/svg/es_CO.svg similarity index 100% rename from inst/flags/es_CO.svg rename to inst/flags/svg/es_CO.svg diff --git a/inst/flags/fr.svg b/inst/flags/svg/fr.svg similarity index 100% rename from inst/flags/fr.svg rename to inst/flags/svg/fr.svg diff --git a/inst/flags/he.svg b/inst/flags/svg/he.svg similarity index 100% rename from inst/flags/he.svg rename to inst/flags/svg/he.svg diff --git a/inst/flags/hi.svg b/inst/flags/svg/hi.svg similarity index 100% rename from inst/flags/hi.svg rename to inst/flags/svg/hi.svg diff --git a/inst/flags/it.svg b/inst/flags/svg/it.svg similarity index 100% rename from inst/flags/it.svg rename to inst/flags/svg/it.svg diff --git a/inst/flags/jp.svg b/inst/flags/svg/jp.svg similarity index 100% rename from inst/flags/jp.svg rename to inst/flags/svg/jp.svg diff --git a/inst/flags/ko.svg b/inst/flags/svg/ko.svg similarity index 100% rename from inst/flags/ko.svg rename to inst/flags/svg/ko.svg diff --git a/inst/flags/pt.svg b/inst/flags/svg/pt.svg similarity index 100% rename from inst/flags/pt.svg rename to inst/flags/svg/pt.svg diff --git a/inst/flags/pt_BR.svg b/inst/flags/svg/pt_BR.svg similarity index 100% rename from inst/flags/pt_BR.svg rename to inst/flags/svg/pt_BR.svg diff --git a/inst/flags/ru.svg b/inst/flags/svg/ru.svg similarity index 100% rename from inst/flags/ru.svg rename to inst/flags/svg/ru.svg diff --git a/inst/flags/sv.svg b/inst/flags/svg/sv.svg similarity index 100% rename from inst/flags/sv.svg rename to inst/flags/svg/sv.svg diff --git a/inst/flags/zh_CN.svg b/inst/flags/svg/zh_CN.svg similarity index 100% rename from inst/flags/zh_CN.svg rename to inst/flags/svg/zh_CN.svg diff --git a/inst/lib/selectImage/selectImage-bindings.js b/inst/lib/selectImage/selectImage-bindings.js new file mode 100644 index 0000000..db80371 --- /dev/null +++ b/inst/lib/selectImage/selectImage-bindings.js @@ -0,0 +1,149 @@ +const selectImageBinding = new Shiny.InputBinding(); + +$.extend(selectImageBinding, { + find: function(scope) { + return $(scope).find('.dropdown'); + }, + initialize: function(el) { + const container = document.createElement('div'); + container.setAttribute('class', 'dropdown-container'); + el.appendChild(container); + + createDropdownSelector(container); + createDropdownOptions(el, container); + }, + getValue: function(el) { + return el.dataset.selected; + }, + subscribe: function(el, callback) { + const placeholder = el.querySelector('.dropdown-placeholder'); + + el.addEventListener('click', function(event) { + const target = event.target; + if (target === this) { + return; + } + if ( + target.matches('.dropdown-option') || + target.parentNode.matches('.dropdown-option') + ) { + const node = target.matches('.dropdown-option') + ? target + : target.parentNode; + const html = node.innerHTML; + placeholder.innerHTML = html; + el.dataset.selected = node.dataset.option; + } + this.classList.toggle('opened'); + callback(); + }); + }, + receiveMessage: function(el, message) { + let options, images; + if (message.selected) { + const target = el.querySelector('#' + message.selected); + $(target).trigger('click'); + el.classList.remove('opened'); + } + if (message.hasOwnProperty('choices')) { + // choices should be an array or an object + if (Array.isArray(message.choices)) { + options = message.choices.map(function(choice) { + return { id: choice }; + }); + } else { + // TODO: check if choices is an object + options = Object.keys(message.choices).map(function(key) { + return { id: message.choices[key], label: key }; + }); + } + } + if (message.hasOwnProperty('images')) { + images = message.images.map(function(image) { + return { image: image }; + }); + } + // merge options and images if the length of both is the same + if (options && options.length === images.length) { + const optionsData = zip(options, images); + const optionsListItems = getDropdownOptions(el, optionsData); + const optionsListContainer = el.querySelector('.dropdown-options'); + for (const option of optionsListItems) { + optionsListContainer.appendChild(option); + } + } + } +}); + +function createDropdownSelector(el) { + const select = document.createElement('div'); + const placeholder = document.createElement('div'); + const chevron = + ''; + + select.setAttribute('class', 'dropdown-select'); + placeholder.setAttribute('class', 'dropdown-placeholder'); + + select.appendChild(placeholder); + select.innerHTML = select.innerHTML + chevron; + + el.appendChild(select); +} + +function createDropdownOptions(el, container) { + let optionsData; + try { + optionsData = JSON.parse(el.dataset.options); + } catch (error) { + optionsData = []; + } + const optionsListContainer = document.createElement('ul'); + const optionsListItems = getDropdownOptions(el, optionsData); + + for (const option of optionsListItems) { + optionsListContainer.appendChild(option); + } + + optionsListContainer.setAttribute('class', 'dropdown-options'); + container.appendChild(optionsListContainer); +} + +function getDropdownOptions(el, optionsData) { + const placeholder = el.querySelector('.dropdown-placeholder'); + const options = optionsData.map(function(option) { + // if this choice already exists do not even try + if (el.querySelector('#' + option.id)) { + return; + } + const li = document.createElement('li'); + const image = document.createElement('img'); + const span = document.createElement('span'); + + image.setAttribute('src', option.image); + span.textContent = option.label; + + li.dataset.option = option.id; + li.setAttribute('class', 'dropdown-option'); + li.setAttribute('id', option.id); + + option.image && li.appendChild(image); + option.label && li.appendChild(span); + + if (el.dataset.selected && el.dataset.selected === option.id) { + placeholder.innerHTML = li.innerHTML; + } + + return li; + }); + return options.filter(function(option) { + return option; + }); +} + +function zip(a, b) { + return a.map(function(item, index) { + return Object.assign({}, item, b[index]); + }); +} + +Shiny.inputBindings.register(selectImageBinding, 'shiny.selectImageInput'); diff --git a/inst/lib/selectImage/selectImage.css b/inst/lib/selectImage/selectImage.css new file mode 100644 index 0000000..5421325 --- /dev/null +++ b/inst/lib/selectImage/selectImage.css @@ -0,0 +1,59 @@ +.dropdown-container { + background-color: #eeeeee; + cursor: pointer; + line-height: 0; + position: relative; +} + +.dropdown-select { + display: flex; + justify-content: space-between; + padding: 0.5rem; +} + +.dropdown-select:hover { + background-color: #e0e0e0; +} + +.dropdown-placeholder { + align-items: center; + display: flex; +} + +.dropdown-select svg { + align-self: center; +} + +.dropdown.opened .dropdown-select svg { + transform: rotate(180deg); +} + +.dropdown-options { + background-color: #eeeeee; + box-sizing: border-box; + position: absolute; + height: 0; + list-style-type: none; + left: 0; + margin: 0; + overflow: hidden; + padding: 0; + top: 100%; + width: 100%; +} + +.dropdown.opened .dropdown-options { + height: auto; + overflow: auto; + z-index: 2; +} + +.dropdown-option { + align-items: center; + display: flex; + padding: 0.5rem; +} + +.dropdown-option:hover { + background-color: #e0e0e0; +} diff --git a/inst/lib/selectLang/selectLang-bindings.js b/inst/lib/selectLang/selectLang-bindings.js deleted file mode 100644 index 9b23910..0000000 --- a/inst/lib/selectLang/selectLang-bindings.js +++ /dev/null @@ -1,51 +0,0 @@ -const selectLangBinding = new Shiny.InputBinding(); -// Si siempre hay un boton activo -let selectClicked; - -$.extend(selectLangBinding, { - find: function(scope) { - return $(scope).find('.btn-group'); - }, - initialize: function(el) { - //el.dataset.selected = ''; - var $el = $(el); - el.dataset.selected = $el.attr('data-init-value'); - }, - getValue: function(el) { - return el.dataset.selected; - }, - subscribe: function(el, callback) { - // Enlaza eventos al elemento que se creo - $(el).on('click.selectLangBinding', function(event) { - let target = event.target; - console.log(target); - if (target.matches('a.selectLang')) { - el.dataset.selected = target.id; - } else if (target.matches('a.selectLang img')) { - target = target.parentNode; - el.dataset.selected = target.id; - } else if (target.matches('li.selectLang')) { - target = target.querySelector('a.selectLang'); - el.dataset.selected = target.id; - } - const button = el.querySelector('.buttonInner.selectLang'); - if (target.matches('a')) { - button.innerHTML = target.innerHTML; - } - callback(); - }); - }, - receiveMessage: function(el, data) { - var $el = $(el); - if(data.selected){ - var elId = "#" + data.selected; - var selected = el.querySelector(elId); - el.dataset.selected = data.selected; - const button = el.querySelector('.buttonInner.selectLang'); - button.innerHTML = selected.innerHTML; - } - $el.trigger("click"); - } -}); - -Shiny.inputBindings.register(selectLangBinding, 'shiny.selectLangInput'); diff --git a/inst/lib/selectLang/selectLang.css b/inst/lib/selectLang/selectLang.css deleted file mode 100644 index 773a5fe..0000000 --- a/inst/lib/selectLang/selectLang.css +++ /dev/null @@ -1,95 +0,0 @@ -/* CSS img btn - -.imageStyle { - width: 35px; - height: 35px; -} - -.buttonStyle { - cursor: pointer; - padding: 0; - background: transparent; - position: relative; - width: 40px; - height: 40px; - vertical-align: middle; - text-align: center; - align-content: center; - box-shadow: none; - border: 0px; - margin: 3px 3px 3px 3px; - outline: none; -} - -.buttonStyle.active_btn, .buttonStyle:focus { - border: 0px; -} - - - -.imageStyle.active_btn { - filter: brightness(0) invert(0.7); - transition: all 0.3s cubic-bezier(0.680, -0.550, 0.265, 1.550); -} - -*/ - - -.buttons-group { - background-color: transparent; - display: grid; - grid-gap: 20px; - grid-template-columns: repeat(auto-fill, 40px); - padding: 15px 0; -} - - -.buttons-group .buttonStyle { - align-items: center; - background-color: transparent; - border: none !important; - box-shadow: none !important; - cursor: pointer !important; - display: flex !important; - height: 40px; - justify-content: center !important; - outline: 0; - position: relative !important; - text-align: center !important; - width: 40px; -} - - - -.buttons-group .buttonStyle:before { - background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMi42NiAxMi42NiI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNiNzBmN2Y7fS5jbHMtMntmaWxsOiNmZmY7fTwvc3R5bGU+PC9kZWZzPjx0aXRsZT5DaGVja2VkPC90aXRsZT48ZyBpZD0iTGF5ZXJfMiIgZGF0YS1uYW1lPSJMYXllciAyIj48ZyBpZD0iTGF5ZXJfMS0yIiBkYXRhLW5hbWU9IkxheWVyIDEiPjxjaXJjbGUgY2xhc3M9ImNscy0xIiBjeD0iNi4zMyIgY3k9IjYuMzMiIHI9IjYuMzMiLz48cGF0aCBjbGFzcz0iY2xzLTIiIGQ9Ik01LjM4LDkuNTZhLjQ5LjQ5LDAsMCwxLS4yNy0uMTNMMy4yNCw3LjQ5YS40NC40NCwwLDAsMSwwLS42My40NS40NSwwLDAsMSwuNjMsMEw1LjM5LDguNDMsOC43NywzLjk0YS40NC40NCwwLDAsMSwuNzEuNTNMNS43OSw5LjM5YS40Ny40NywwLDAsMS0uMzMuMTdaIi8+PC9nPjwvZz48L3N2Zz4=) !important; - content: ''; - height: 10px; - position: absolute !important; - right: 0; - top: 0; - transform: scale(0); - transition: all 0.3s cubic-bezier(0.680, -0.550, 0.265, 1.550) !important; - width: 10px !important; -} - - -.buttons-group .buttonStyle .imageStyle { - width: 35px; - filter: brightness(0) invert(0.7); - transition: all 0.3s cubic-bezier(0.680, -0.550, 0.265, 1.550); -} - - -.buttons-group .buttonStyle.active_btn:before { - transform: scale(1) !important; -} - -.buttonStyle.active_btn .imageStyle{ - filter: brightness(1) invert(0) !important; -} - - -.buttons-group .buttonStyle.active_btn:before { - transform: scale(1) !important; -} diff --git a/pkgdown/_pkgdown.yml b/pkgdown/_pkgdown.yml new file mode 100644 index 0000000..95c8db4 --- /dev/null +++ b/pkgdown/_pkgdown.yml @@ -0,0 +1,6 @@ +destination: docs +template: + params: + bootswatch: simplex + ganalytics: UA-164320300-1 + diff --git a/readme.md b/readme.md index d54e4f6..d2fe141 100644 --- a/readme.md +++ b/readme.md @@ -1,17 +1,58 @@ + + + # shi18ny -An attempt for shiny apps internationalization (i18n) + + + + +Shiny apps internationalization: same app, multiple languages. + +Check the full documentation at + +## Installation + +You can install the development version from +[GitHub](https://github.com/) with: + +``` r +# install.packages("devtools") +devtools::install_github("datasketch/shi18ny") +``` + +## Your first multilanguage shiny app + +This is a basic example which shows you how to solve a common problem: + +``` r +#library(shi18ny) +## basic example code +``` + +## Configuration + +## Add custom languages + +Explore more examples. + +## Roadmap -# TODO + - Support RTL languages properly + - Add locale formatting for dates + - … -Global config -Add translations for common words in multiple languages. +## FAQ +### My language is not yet supported, what can I do to help? +File an issue and make a pull request following the instructions in the +vignette. +# Acknowledgements -# Flags from +## Flags from -https://github.com/hjnilsson/country-flags -plus catalonia wikipedia https://meta.wikimedia.org/wiki/File:Flag_of_Catalonia.svg -zh_CN same as cn +Country Flags taken from +Catalonia flag from +[wikipedia](https://meta.wikimedia.org/wiki/File:Flag_of_Catalonia.svg) diff --git a/tests/testthat/test_flags.R b/tests/testthat/test_flags.R index 88e385f..5d71273 100644 --- a/tests/testthat/test_flags.R +++ b/tests/testthat/test_flags.R @@ -1,8 +1,10 @@ context("Translations") -test_that("i18n Config",{ +test_that("there are flags for all languages",{ - images <- list.files(system.file("flags", package = "shi18ny"), full.names = TRUE) + + + images <- list.files(system.file("flags","gosquared", package = "shi18ny"), full.names = TRUE) imagesNames <- basename(file_path_sans_ext(images)) availableLangs()[!availableLangs() %in% imagesNames] expect_true(all(availableLangs() %in% imagesNames)) @@ -14,35 +16,36 @@ test_that("i18n Config",{ # TEST SELECT LANG WIDGET - selectLangInput("lang", "Language", choices = NULL, selected = 2) + selectLangInput("lang", "Language", langs = c("es","pt"), selected = 1) + library(shiny) + library(shi18ny) ui <- fluidPage( - selectLangInput("lang", "Language", choices = c(Espanol="es", English="en"), selected = 2), + selectLangInput("lang", "Language", langs = c(Espanol="es", English="en"), selected = 2), verbatimTextOutput('test'), selectizeInput("which_langs", "Which langs", choices = availableLangs(), multiple = TRUE), - selectLangInput("lang2", "Custom selected langs", choices = c("pt", "fr", "it")), - verbatimTextOutput('test2'), + selectLangInput("lang2", "Custom selected langs", langs = c("pt", "fr", "it")), + verbatimTextOutput('test2') ) server <- function(input, output, session){ - - output$test <- renderPrint({ input$lang }) output$test2 <- renderPrint({ input$lang2 }) - whichLangs <- reactive(input$which_langs) observe({ updateSelectLangInput(session, 'lang2', - label = "", - choices = whichLangs(), + label = "New Langs", + langs = whichLangs(), selected = whichLangs()[1]) }) } shiny::shinyApp(ui = ui, server = server) + ## TODO UPDATE DOESN'T SEEM TO WORK + }) diff --git a/vignettes/.gitignore b/vignettes/.gitignore new file mode 100644 index 0000000..097b241 --- /dev/null +++ b/vignettes/.gitignore @@ -0,0 +1,2 @@ +*.html +*.R diff --git a/vignettes/contributing.Rmd b/vignettes/contributing.Rmd new file mode 100644 index 0000000..beec461 --- /dev/null +++ b/vignettes/contributing.Rmd @@ -0,0 +1,19 @@ +--- +title: "Contributing translations and new languages" +output: rmarkdown::html_vignette +vignette: > + %\VignetteIndexEntry{Contributing translations and new languages} + %\VignetteEngine{knitr::rmarkdown} + %\VignetteEncoding{UTF-8} +--- + +```{r, include = FALSE} +knitr::opts_chunk$set( + collapse = TRUE, + comment = "#>" +) +``` + +```{r setup} +library(shi18ny) +``` diff --git a/vignettes/getting-started.Rmd b/vignettes/getting-started.Rmd new file mode 100644 index 0000000..beed205 --- /dev/null +++ b/vignettes/getting-started.Rmd @@ -0,0 +1,22 @@ +--- +title: "Getting started" +output: rmarkdown::html_vignette +vignette: > + %\VignetteIndexEntry{getting-started} + %\VignetteEngine{knitr::rmarkdown} + %\VignetteEncoding{UTF-8} +--- + +```{r, include = FALSE} +knitr::opts_chunk$set( + collapse = TRUE, + comment = "#>" +) +``` + +```{r setup} +library(shi18ny) +``` + + +