basemapkit 0.4.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"basemapkit.js","sources":["../src/lib/colorchange.ts","../src/lib/assets/avenue-layers-raw.json?raw","../src/lib/assets/bureau-layers-raw.json?raw","../src/lib/assets/journal-layers-raw.json?raw","../src/lib/assets/spectre-layers-raw.json?raw","../src/lib/assets/monochrome-layers-raw.json?raw","../src/lib/language.ts","../src/lib/basemapkit.ts"],"sourcesContent":["export type RGBArray = [number, number, number];\n\nfunction isColorDescription(elem: unknown): boolean {\n if (\n typeof elem === \"string\" &&\n (elem.startsWith(\"#\") ||\n elem.startsWith(\"rgb(\") ||\n elem.startsWith(\"rgba(\") ||\n elem.startsWith(\"hsl(\") ||\n elem.startsWith(\"hwb(\"))\n ) {\n return true;\n }\n\n return false;\n}\n\nexport function findColor(data: unknown, modifier: (color: string) => string) {\n // We deal with strings but only from their parent perspective\n // so that we can change the value from the ref\n if (\n typeof data === \"string\" ||\n typeof data === \"number\" ||\n typeof data === \"boolean\" ||\n data === null ||\n data === undefined\n ) {\n return;\n }\n\n if (Array.isArray(data)) {\n for (let i = 0; i < data.length; i += 1) {\n const elem = data[i];\n\n if (isColorDescription(elem)) {\n data[i] = modifier(elem);\n continue;\n }\n findColor(elem, modifier);\n }\n } else if (typeof data === \"object\") {\n const dataAsRecord = data as Record<string, unknown>;\n const keys = Object.keys(data);\n\n for (const k of keys) {\n const elem = dataAsRecord[k];\n\n if (isColorDescription(elem)) {\n dataAsRecord[k] = modifier(elem as string);\n continue;\n }\n\n findColor(elem, modifier);\n }\n }\n}\n\nexport function applyBrightnessSingle(input: number, brightness: number): number {\n const normalized = input / 255;\n const adjusted = normalized + (1 - normalized) * normalized * brightness;\n return Math.max(0, Math.min(255, adjusted * 255));\n}\n\nexport function applyBrightnessRGB(input: RGBArray, brightness: number): RGBArray {\n return input.map((chan) => applyBrightnessSingle(chan, brightness)) as RGBArray;\n}\n\nexport function applyContrastSingle(input: number, contrast: number, midpoint = 127): number {\n const boundedContrast = Math.max(-0.99, Math.min(0.99, contrast));\n const steepness = boundedContrast < 0 ? boundedContrast + 1 : 1 / (1 - boundedContrast);\n const adjusted = midpoint + steepness * (input - midpoint);\n\n // Clamp to valid range\n return Math.round(Math.max(0, Math.min(255, adjusted)));\n}\n\nexport function applyContrastRGB(input: RGBArray, contrast: number, midpoint = 127): RGBArray {\n return input.map((chan) => applyContrastSingle(chan, contrast, midpoint)) as RGBArray;\n}\n\nexport function applyMultiplicationSingle(input1: number, input2: number, ratio = 1): number {\n return 255 * (input1 / 255) * (input2 / 255) * ratio + (input1 / 255) * (1 - ratio) * 255;\n}\n\nexport function applyMultiplicationRGB(input1: RGBArray, input2: RGBArray, ratio = 1): RGBArray {\n return input1.map((_chan, i) => applyMultiplicationSingle(input1[i], input2[i], ratio)) as RGBArray;\n}\n","export default \"[\\n {\\n \\\"id\\\": \\\"background\\\",\\n \\\"type\\\": \\\"background\\\",\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"background-color\\\": \\\"rgb(135, 199, 236)\\\"}\\n },\\n {\\n \\\"id\\\": \\\"earth\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"earth\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"$type\\\", \\\"Polygon\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#fcf5e3\\\"}\\n },\\n {\\n \\\"id\\\": \\\"landcover\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landcover\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\n \\\"in\\\",\\n \\\"kind\\\",\\n \\\"grassland\\\",\\n \\\"barren\\\",\\n \\\"urban_area\\\",\\n \\\"farmland\\\",\\n \\\"glacier\\\",\\n \\\"scrub\\\"\\n ]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"fill-color\\\": [\\n \\\"match\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n \\\"grassland\\\",\\n \\\"#cee6b5\\\",\\n \\\"barren\\\",\\n \\\"#fff0d4\\\",\\n \\\"urban_area\\\",\\n \\\"rgba(230, 230, 230, 1)\\\",\\n \\\"farmland\\\",\\n \\\"rgba(192, 222, 160, 0.3)\\\",\\n \\\"glacier\\\",\\n \\\"#e6ffff\\\",\\n \\\"scrub\\\",\\n \\\"#cee6b5\\\",\\n \\\"#ff0000\\\"\\n ],\\n \\\"fill-opacity\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 0,\\n 1,\\n 7,\\n 0.8,\\n 8,\\n 0\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_residential\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"residential\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"fill-opacity\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 8, 0, 12, 1],\\n \\\"fill-color\\\": \\\"#f7f3e9\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_urban_green\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"allotments\\\", \\\"village_green\\\", \\\"playground\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#9cd3b4\\\", \\\"fill-opacity\\\": 0.7}\\n },\\n {\\n \\\"id\\\": \\\"landuse-sand\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"sand\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"fill-opacity\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 0, 1, 20, 0],\\n \\\"fill-color\\\": \\\"rgba(240, 226, 199, 1)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_bare_rock\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"in\\\", \\\"kind\\\", \\\"bare_rock\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"rgb(221, 226, 226)\\\"}\\n },\\n {\\n \\\"id\\\": \\\"landuse_park\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\n \\\"in\\\",\\n \\\"kind\\\",\\n \\\"meadow\\\",\\n \\\"park\\\",\\n \\\"glacier\\\",\\n \\\"cemetery\\\",\\n \\\"golf_course\\\",\\n \\\"scrub\\\",\\n \\\"grassland\\\",\\n \\\"grass\\\",\\n \\\"naval_base\\\",\\n \\\"airfield\\\"\\n ]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"fill-opacity\\\": 1,\\n \\\"fill-color\\\": [\\n \\\"case\\\",\\n [\\\"in\\\", [\\\"get\\\", \\\"kind\\\"], [\\\"literal\\\", [\\\"grass\\\"]]],\\n \\\"#a5e87d\\\",\\n [\\\"in\\\", [\\\"get\\\", \\\"kind\\\"], [\\\"literal\\\", [\\\"park\\\", \\\"golf_course\\\"]]],\\n \\\"#b6e996\\\",\\n [\\\"in\\\", [\\\"get\\\", \\\"kind\\\"], [\\\"literal\\\", [\\\"park\\\", \\\"meadow\\\"]]],\\n \\\"#a6e085\\\",\\n [\\\"in\\\", [\\\"get\\\", \\\"kind\\\"], [\\\"literal\\\", [\\\"scrub\\\", \\\"grassland\\\"]]],\\n \\\"#cee6b5\\\",\\n [\\\"in\\\", [\\\"get\\\", \\\"kind\\\"], [\\\"literal\\\", [\\\"glacier\\\"]]],\\n \\\"#e6ffff\\\",\\n [\\\"in\\\", [\\\"get\\\", \\\"kind\\\"], [\\\"literal\\\", [\\\"cemetery\\\"]]],\\n \\\"#ccdbc5\\\",\\n [\\\"in\\\", [\\\"get\\\", \\\"kind\\\"], [\\\"literal\\\", [\\\"sand\\\"]]],\\n \\\"#fff3d5\\\",\\n [\\n \\\"in\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n [\\\"literal\\\", [\\\"military\\\", \\\"naval_base\\\", \\\"airfield\\\"]]\\n ],\\n \\\"#d1dede\\\",\\n \\\"#e2dfda\\\"\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_farmland\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"farmland\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"rgba(185, 255, 152, 1)\\\", \\\"fill-opacity\\\": 0.2}\\n },\\n {\\n \\\"id\\\": \\\"landuse_pitch\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"pitch\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"rgba(81, 201, 70, 1)\\\", \\\"fill-opacity\\\": 0.2}\\n },\\n {\\n \\\"id\\\": \\\"landuse_military\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"military\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"rgba(145, 145, 145, 1)\\\", \\\"fill-opacity\\\": 0.2}\\n },\\n {\\n \\\"id\\\": \\\"landuse_wood-forest\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"in\\\", \\\"kind\\\", \\\"forest\\\", \\\"wood\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"fill-opacity\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 0, 1, 7, 1],\\n \\\"fill-color\\\": \\\"rgb(184, 224, 173)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_hospital\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"hospital\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#e4dad9\\\"}\\n },\\n {\\n \\\"id\\\": \\\"landuse_industrial\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"industrial\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#d1dde1\\\"}\\n },\\n {\\n \\\"id\\\": \\\"landuse_school\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"school\\\", \\\"university\\\", \\\"college\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#e4ded7\\\"}\\n },\\n {\\n \\\"id\\\": \\\"landuse_zoo\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"zoo\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#c6dcdc\\\"}\\n },\\n {\\n \\\"id\\\": \\\"landuse_aerodrome\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"aerodrome\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#dadbdf\\\"}\\n },\\n {\\n \\\"id\\\": \\\"roads_runway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"runway\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e9e9ed\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 10,\\n 0,\\n 12,\\n 4,\\n 18,\\n 30\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_taxiway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"taxiway\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e9e9ed\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 15,\\n 6\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_runway\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"any\\\", [\\\"in\\\", \\\"kind\\\", \\\"runway\\\", \\\"taxiway\\\"]],\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#e9e9ed\\\"}\\n },\\n {\\n \\\"id\\\": \\\"hillshader\\\",\\n \\\"type\\\": \\\"hillshade\\\",\\n \\\"source\\\": \\\"<BMK_TR_SRC>\\\",\\n \\\"paint\\\": {\\n \\\"hillshade-illumination-anchor\\\": \\\"viewport\\\",\\n \\\"hillshade-exaggeration\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 0, 0.1,\\n 4, 0.2,\\n 7, 0.3,\\n 10, 0.4,\\n 15, 0.4,\\n 17, 0.2\\n ],\\n \\\"hillshade-shadow-color\\\": \\\"#123161\\\",\\n \\\"hillshade-highlight-color\\\": \\\"#fff0b3\\\",\\n \\\"hillshade-accent-color\\\": \\\"rgba(0, 184, 255, 0.65)\\\",\\n \\\"hillshade-illumination-direction\\\": [\\n \\\"literal\\\",\\n 310\\n ]\\n },\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"}\\n },\\n {\\n \\\"id\\\": \\\"water\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"$type\\\", \\\"Polygon\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"fill-color\\\": \\\"rgb(135, 199, 236)\\\",\\n \\\"fill-opacity\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 0, 0.4,\\n 5, 0.75,\\n 8, 0.95\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_stream\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"minzoom\\\": 14,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"stream\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"line-width\\\": 0.5, \\\"line-color\\\": \\\"rgba(18, 157, 222, 1)\\\"}\\n },\\n {\\n \\\"id\\\": \\\"landuse_beach\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"beach\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#fff0d4\\\"}\\n },\\n {\\n \\\"id\\\": \\\"water_river\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"minzoom\\\": 9,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"river\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 9,\\n 0,\\n 9.5,\\n 1,\\n 18,\\n 12\\n ],\\n \\\"line-color\\\": \\\"#C4EAFF\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_wetland\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"wetland\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"rgba(43, 63, 131, 0.07)\\\"}\\n },\\n {\\n \\\"id\\\": \\\"landuse_nature_reserve_bg\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"minzoom\\\": 8,\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"nature_reserve\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 8,\\n 5,\\n 15,\\n 20,\\n 18,\\n 30\\n ],\\n \\\"line-color\\\": \\\"rgba(5, 109, 0, 0.19)\\\",\\n \\\"line-opacity\\\": {\\\"stops\\\": [[8, 0], [9, 0.4]]}\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_nature_reserve\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"minzoom\\\": 8,\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"nature_reserve\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 8,\\n 1,\\n 15,\\n 3,\\n 18,\\n 5\\n ],\\n \\\"line-color\\\": \\\"rgba(5, 109, 0, 0.19)\\\",\\n \\\"line-opacity\\\": {\\\"stops\\\": [[8, 0], [9, 1]]}\\n }\\n },\\n {\\n \\\"id\\\": \\\"ferry\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"ferry\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [1, 1, 1, 1, 1, 3, 3, 3, 3, 3, 3, 3],\\n \\\"line-opacity\\\": 0.5,\\n \\\"line-color\\\": \\\"rgba(76, 154, 205, 1)\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1,\\n 18,\\n 3\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_pedestrian\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"pedestrian\\\", \\\"dam\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#e3e0d4\\\"}\\n },\\n {\\n \\\"id\\\": \\\"landuse_pier\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"pier\\\"],\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#e0e0e0\\\"}\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_other_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_minor_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-dasharray\\\": [3, 2],\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12,\\n 0,\\n 12.5,\\n 1\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_link_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"has\\\", \\\"is_link\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-dasharray\\\": [3, 2],\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12,\\n 0,\\n 12.5,\\n 1\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_major_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"major_road\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-dasharray\\\": [3, 2],\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 7,\\n 0,\\n 7.5,\\n 0.5,\\n 18,\\n 13\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 9,\\n 0,\\n 9.5,\\n 1\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_highway_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-dasharray\\\": [6, 0.5],\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 3.5,\\n 0.5,\\n 18,\\n 15\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 7,\\n 0,\\n 7.5,\\n 1,\\n 20,\\n 15\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_other\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-dasharray\\\": [4.5, 0.5],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"has\\\", \\\"is_link\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"==\\\", \\\"kind\\\", \\\"major_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0,\\n 12,\\n 1.6,\\n 15,\\n 3,\\n 18,\\n 13\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"has\\\", \\\"is_tunnel\\\"],\\n [\\\"==\\\", [\\\"get\\\", \\\"kind\\\"], \\\"highway\\\"],\\n [\\\"!\\\", [\\\"has\\\", \\\"is_link\\\"]]\\n ],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"buildings\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"buildings\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"building\\\", \\\"building_part\\\"],\\n \\\"paint\\\": {\\\"fill-opacity\\\": 0.3, \\\"fill-color\\\": \\\"#c2beba\\\"}\\n },\\n {\\n \\\"id\\\": \\\"roads_pier\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"pier\\\"],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12,\\n 0,\\n 12.5,\\n 0.5,\\n 20,\\n 16\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_minor_service_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"],\\n [\\\"==\\\", \\\"kind_detail\\\", \\\"service\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 18,\\n 8\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 0.8\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_minor_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"],\\n [\\\"!=\\\", \\\"kind_detail\\\", \\\"service\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12,\\n 0,\\n 12.5,\\n 1,\\n 17,\\n 1.25\\n ],\\n \\\"line-color\\\": \\\"#D1CFC7\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_link_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\\"has\\\", \\\"is_link\\\"],\\n \\\"paint\\\": {\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1.5\\n ],\\n \\\"line-color\\\": \\\"#D1CFC7\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_major_casing_late\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"major_road\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0,\\n 12,\\n 1.6,\\n 15,\\n 3,\\n 18,\\n 13\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 9,\\n 0,\\n 9.5,\\n 1,\\n 15,\\n 1.5\\n ],\\n \\\"line-color\\\": \\\"#D1CFC7\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_highway_casing_late\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 3.5,\\n 0.5,\\n 18,\\n 15\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 7,\\n 0,\\n 7.5,\\n 1,\\n 20,\\n 15\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_other-bg\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"],\\n [\\\"!=\\\", \\\"kind_detail\\\", \\\"pier\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0.75,\\n 20,\\n 6\\n ],\\n \\\"line-color\\\": \\\"rgba(0, 0, 0, 0.05)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_other\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"],\\n [\\\"!=\\\", \\\"kind_detail\\\", \\\"pier\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [3, 1.5],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 1.5,\\n 20,\\n 9\\n ],\\n \\\"line-color\\\": \\\"rgba(249, 247, 241, 0.6)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"has\\\", \\\"is_link\\\"],\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-color\\\": \\\"#E7E5DE\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_minor_service\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"],\\n [\\\"==\\\", \\\"kind_detail\\\", \\\"service\\\"]\\n ],\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 18,\\n 8\\n ],\\n \\\"line-color\\\": \\\"#E7E5DE\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"],\\n [\\\"!=\\\", \\\"kind_detail\\\", \\\"service\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ],\\n \\\"line-color\\\": \\\"#E7E5DE\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_major_casing_early2\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"maxzoom\\\": 12,\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"in\\\", \\\"kind\\\", \\\"major_road\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#D1CFC7\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 3.5,\\n 0.5,\\n 18,\\n 15\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.3,\\n 12,\\n 1\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"in\\\", \\\"kind\\\", \\\"major_road\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-color\\\": \\\"#E7E5DE\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_highway_casing_early\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"maxzoom\\\": 12,\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"rgba(214, 213, 213, 1)\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 3.5,\\n 0.5,\\n 18,\\n 15\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.8,\\n 12,\\n 2.2,\\n 15,\\n 5,\\n 18,\\n 15\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-color\\\": \\\"#E7E5DE\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_rail\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"rail\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [0.3, 0.75],\\n \\\"line-opacity\\\": 0.5,\\n \\\"line-color\\\": \\\"rgba(97, 116, 129, 1)\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 0.15,\\n 18,\\n 6\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"boundaries_country_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"boundaries\\\",\\n \\\"minzoom\\\": 3,\\n \\\"filter\\\": [\\\"<=\\\", \\\"kind_detail\\\", 2],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"rgba(0, 0, 0, 1)\\\",\\n \\\"line-opacity\\\": 0.1,\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 0,\\n 2,\\n 8,\\n 7,\\n 15,\\n 20\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"boundaries_country\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"boundaries\\\",\\n \\\"filter\\\": [\\\"<=\\\", \\\"kind_detail\\\", 2],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"rgba(0, 0, 0, 1)\\\",\\n \\\"line-dasharray\\\": [\\n \\\"step\\\",\\n [\\\"zoom\\\"],\\n [\\\"literal\\\", [2]],\\n 4,\\n [\\\"literal\\\", [2, 1]]\\n ],\\n \\\"line-opacity\\\": 0.3,\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 0,\\n 1,\\n 8,\\n 1.5,\\n 15,\\n 3\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"boundaries\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"boundaries\\\",\\n \\\"filter\\\": [\\\">\\\", \\\"kind_detail\\\", 2],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#adadad\\\",\\n \\\"line-width\\\": 0.4,\\n \\\"line-dasharray\\\": [\\n \\\"step\\\",\\n [\\\"zoom\\\"],\\n [\\\"literal\\\", [2]],\\n 4,\\n [\\\"literal\\\", [2, 1]]\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_other_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_link_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"has\\\", \\\"is_link\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12,\\n 0,\\n 12.5,\\n 1.5\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_minor_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 0.8\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_major_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"==\\\", \\\"kind\\\", \\\"major_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 7,\\n 0,\\n 7.5,\\n 0.5,\\n 18,\\n 10\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 9,\\n 0,\\n 9.5,\\n 1.5\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_other\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ebebeb\\\",\\n \\\"line-dasharray\\\": [2, 1],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"has\\\", \\\"is_link\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"==\\\", \\\"kind\\\", \\\"major_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#f5f5f5\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0,\\n 12,\\n 1.6,\\n 15,\\n 3,\\n 18,\\n 13\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"cycleway_bg\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"any\\\", [\\\"==\\\", \\\"kind_detail\\\", \\\"cycleway\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12.5,\\n 0.9,\\n 15,\\n 1.9,\\n 18,\\n 3.9\\n ],\\n \\\"line-dasharray\\\": [2],\\n \\\"line-color\\\": \\\"#ffffff\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"cycleway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"any\\\", [\\\"==\\\", \\\"kind_detail\\\", \\\"cycleway\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12.5,\\n 1,\\n 15,\\n 2,\\n 18,\\n 4\\n ],\\n \\\"line-color\\\": \\\"rgba(20, 116, 0, 0.7)\\\",\\n \\\"line-dasharray\\\": [3, 1.5]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_highway_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 3.5,\\n 0.5,\\n 18,\\n 15\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 7,\\n 0,\\n 7.5,\\n 1,\\n 20,\\n 15\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"address_label\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"buildings\\\",\\n \\\"minzoom\\\": 18,\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"address\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-placement\\\": \\\"point\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": [\\\"get\\\", \\\"addr_housenumber\\\"],\\n \\\"text-size\\\": 12\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"#91888b\\\",\\n \\\"text-halo-color\\\": \\\"#ffffff\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_waterway_label\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"river\\\", \\\"stream\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"text-letter-spacing\\\": 0.2\\n },\\n \\\"paint\\\": {\\\"text-color\\\": \\\"rgba(13, 117, 143, 0.64)\\\", \\\"text-halo-width\\\": 1}\\n },\\n {\\n \\\"id\\\": \\\"roads_labels_minor\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 15,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"minor_road\\\", \\\"other\\\", \\\"path\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"min_zoom\\\"],\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(94, 88, 90, 1)\\\",\\n \\\"text-halo-color\\\": \\\"#ffffff\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_label_ocean\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"sea\\\", \\\"ocean\\\", \\\"bay\\\", \\\"strait\\\", \\\"fjord\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 1, 12, 10, 12],\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 9,\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(4, 69, 98, 0.64)\\\",\\n \\\"text-halo-width\\\": 1,\\n \\\"text-halo-color\\\": \\\"rgba(0, 0, 0, 0)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"earth_label_islands\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"earth\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"island\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 10,\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 8\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"#8f8f8f\\\",\\n \\\"text-halo-color\\\": \\\"#e0e0e0\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_label_lakes\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"lake\\\", \\\"water\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 3,\\n 10,\\n 6,\\n 12,\\n 10,\\n 12\\n ],\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 9\\n },\\n \\\"paint\\\": {\\\"text-color\\\": \\\"rgba(13, 117, 143, 0.64)\\\", \\\"text-halo-width\\\": 1}\\n },\\n {\\n \\\"id\\\": \\\"roads_labels_major\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 11,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"highway\\\", \\\"major_road\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"min_zoom\\\"],\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(110, 104, 106, 1)\\\",\\n \\\"text-halo-color\\\": \\\"#ffffff\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"pois\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"pois\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\n \\\"in\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n [\\n \\\"literal\\\",\\n [\\n \\\"beach\\\",\\n \\\"forest\\\",\\n \\\"marina\\\",\\n \\\"park\\\",\\n \\\"peak\\\",\\n \\\"zoo\\\",\\n \\\"garden\\\",\\n \\\"aerodrome\\\",\\n \\\"station\\\",\\n \\\"ferry_terminal\\\",\\n \\\"stadium\\\",\\n \\\"university\\\",\\n \\\"library\\\",\\n \\\"school\\\",\\n \\\"animal\\\",\\n \\\"toilet\\\",\\n \\\"drinking_water\\\",\\n \\\"viewpoint\\\",\\n \\\"attraction\\\",\\n \\\"camp_site\\\",\\n \\\"college\\\",\\n \\\"fishing\\\",\\n \\\"golf_course\\\",\\n \\\"hospital\\\",\\n \\\"information\\\",\\n \\\"landmark\\\",\\n \\\"military\\\",\\n \\\"national_park\\\",\\n \\\"nature_reserve\\\",\\n \\\"picnic_site\\\",\\n \\\"picnic_table\\\",\\n \\\"playground\\\",\\n \\\"railway\\\",\\n \\\"townhall\\\",\\n \\\"zoo\\\"\\n ]\\n ]\\n ],\\n [\\\">=\\\", [\\\"zoom\\\"], [\\\"+\\\", [\\\"get\\\", \\\"min_zoom\\\"], -2]]\\n ],\\n \\\"layout\\\": {\\n \\\"icon-image\\\": [\\n \\\"match\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n \\\"park\\\",\\n \\\"garden\\\",\\n [\\\"get\\\", \\\"kind\\\"]\\n ],\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-justify\\\": \\\"auto\\\",\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 17, 11, 19, 14],\\n \\\"text-max-width\\\": 8,\\n \\\"text-offset\\\": [1.5, 0],\\n \\\"text-variable-anchor\\\": [\\\"left\\\", \\\"right\\\"],\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": [\\n \\\"case\\\",\\n [\\n \\\"in\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n [\\n \\\"literal\\\",\\n [\\n \\\"forest\\\",\\n \\\"park\\\",\\n \\\"peak\\\",\\n \\\"zoo\\\",\\n \\\"garden\\\",\\n \\\"bench\\\",\\n \\\"golf_course\\\",\\n \\\"national_park\\\",\\n \\\"nature_reserve\\\",\\n \\\"picnic_site\\\",\\n \\\"picnic_table\\\",\\n \\\"camp_site\\\"\\n ]\\n ]\\n ],\\n \\\"#076331\\\",\\n [\\n \\\"in\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n [\\\"literal\\\", [\\\"beach\\\", \\\"marina\\\", \\\"ferry_terminal\\\", \\\"fishing\\\"]]\\n ],\\n \\\"#634c00\\\",\\n [\\\"in\\\", [\\\"get\\\", \\\"kind\\\"], [\\\"literal\\\", [\\\"hospital\\\"]]],\\n \\\"#730303\\\",\\n \\\"#1f5fa3\\\"\\n ],\\n \\\"text-halo-color\\\": \\\"rgba(253, 252, 252, 1)\\\",\\n \\\"text-halo-width\\\": 1.5\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_subplace\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"neighbourhood\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-max-width\\\": 7,\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 5,\\n 2,\\n 8,\\n 4,\\n 12,\\n 18,\\n 15,\\n 20\\n ],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.2],\\n [\\\"zoom\\\"],\\n 11,\\n 8,\\n 14,\\n 14,\\n 18,\\n 24\\n ],\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(88, 72, 69, 1)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(248, 241, 241, 1)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_region\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"region\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"sort_key\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 3, 11, 7, 16],\\n \\\"text-radial-offset\\\": 0.2,\\n \\\"text-anchor\\\": \\\"center\\\",\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(127, 123, 120, 1)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(246, 240, 240, 1)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_locality_circle\\\",\\n \\\"type\\\": \\\"circle\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"locality\\\"],\\n \\\"maxzoom\\\": 8,\\n \\\"paint\\\": {\\n \\\"circle-radius\\\": {\\n \\\"stops\\\": [[4, 2.5], [8, 3.5]]\\n },\\n \\\"circle-color\\\": \\\"rgb(255, 255, 255)\\\",\\n \\\"circle-stroke-width\\\": 1.75,\\n \\\"circle-stroke-color\\\": \\\"rgb(134, 134, 134)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_locality\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"locality\\\"],\\n \\\"layout\\\": {\\n \\\"icon-image\\\": [\\\"step\\\", [\\\"zoom\\\"], \\\"townspot\\\", 8, \\\"\\\"],\\n \\\"icon-size\\\": 0.7,\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\n \\\"case\\\",\\n [\\\"<=\\\", [\\\"get\\\", \\\"min_zoom\\\"], 5],\\n [\\\"literal\\\", [\\\"Noto Sans Medium\\\"]],\\n [\\\"literal\\\", [\\\"Noto Sans Regular\\\"]]\\n ],\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 5,\\n 3,\\n 8,\\n 7,\\n 12,\\n 11\\n ],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 2,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 8,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 13,\\n 0\\n ],\\n 4,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 17,\\n 0\\n ],\\n 6,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 12],\\n 13,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 12],\\n 18,\\n 0\\n ],\\n 8,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 11],\\n 11,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 11],\\n 18,\\n 0\\n ],\\n 10,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 20,\\n 0\\n ],\\n 15,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 22,\\n 0\\n ]\\n ],\\n \\\"icon-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 0,\\n 0,\\n 8,\\n 6,\\n 10,\\n 8,\\n 12,\\n 6,\\n 22,\\n 2\\n ],\\n \\\"text-justify\\\": \\\"auto\\\",\\n \\\"text-variable-anchor\\\": [\\n \\\"step\\\",\\n [\\\"zoom\\\"],\\n [\\\"literal\\\", [\\\"bottom\\\", \\\"left\\\", \\\"right\\\", \\\"top\\\"]],\\n 8,\\n [\\\"literal\\\", [\\\"center\\\"]]\\n ],\\n \\\"text-radial-offset\\\": 0.3,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(94, 68, 51, 1)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(253, 250, 249, 1)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_country\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"country\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-field\\\": \\\"<LANG_COUNTRY>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Medium\\\"],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 2,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 10],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 10],\\n 15,\\n 0\\n ],\\n 6,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 11,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 18,\\n 0\\n ],\\n 8,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 7],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 7],\\n 20,\\n 0\\n ]\\n ],\\n \\\"icon-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 0,\\n 2,\\n 14,\\n 2,\\n 16,\\n 20,\\n 17,\\n 2,\\n 22,\\n 2\\n ],\\n \\\"text-transform\\\": \\\"none\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(84, 79, 73, 1)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 1)\\\",\\n \\\"text-halo-width\\\": 1.5\\n }\\n },\\n {\\n \\\"id\\\": \\\"building_extrusion\\\",\\n \\\"type\\\": \\\"fill-extrusion\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"buildings\\\",\\n \\\"filter\\\": [\\n \\\"any\\\",\\n [\\\"==\\\", \\\"kind\\\", \\\"building_part\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"building\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"none\\\"},\\n \\\"paint\\\": {\\n \\\"fill-extrusion-opacity\\\": 0.1,\\n \\\"fill-extrusion-height\\\": {\\\"type\\\": \\\"identity\\\", \\\"property\\\": \\\"height\\\"}\\n }\\n }\\n\\n]\"","export default \"[\\n {\\n \\\"id\\\": \\\"background\\\",\\n \\\"type\\\": \\\"background\\\",\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"background-color\\\": \\\"rgb(106, 159, 193)\\\"}\\n },\\n {\\n \\\"id\\\": \\\"water\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"$type\\\", \\\"Polygon\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-opacity\\\": 0.5, \\\"fill-color\\\": \\\"#000\\\"}\\n },\\n {\\n \\\"id\\\": \\\"parks\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"minzoom\\\": 7,\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"park\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-opacity\\\": 0.2, \\\"fill-color\\\": \\\"#000\\\"}\\n },\\n {\\n \\\"id\\\": \\\"military_contour\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"minzoom\\\": 6,\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"military\\\"]],\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [2, 2],\\n \\\"line-opacity\\\": {\\\"stops\\\": [[6, 0.25], [10, 0.5]]},\\n \\\"line-width\\\": {\\\"stops\\\": [[6, 1], [10, 2]], \\\"base\\\": 1.6}\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_runway\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"any\\\", [\\\"in\\\", \\\"kind\\\", \\\"runway\\\", \\\"taxiway\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#ffffff\\\", \\\"fill-opacity\\\": 0.3}\\n },\\n {\\n \\\"id\\\": \\\"landuse_wetland\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"wetland\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-opacity\\\": 0.08, \\\"fill-color\\\": \\\"#000000\\\"}\\n },\\n {\\n \\\"id\\\": \\\"hillshader\\\",\\n \\\"type\\\": \\\"hillshade\\\",\\n \\\"source\\\": \\\"__bmk_tr_src\\\",\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"hillshade-illumination-anchor\\\": \\\"viewport\\\",\\n \\\"hillshade-exaggeration\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 0,\\n 0.05,\\n 4,\\n 0.05,\\n 7,\\n 0.15,\\n 10,\\n 0.2,\\n 15,\\n 0.2,\\n 17,\\n 0.1\\n ],\\n \\\"hillshade-shadow-color\\\": \\\"#000000\\\",\\n \\\"hillshade-highlight-color\\\": \\\"#ffffff\\\",\\n \\\"hillshade-accent-color\\\": \\\"#ffffff\\\",\\n \\\"hillshade-illumination-direction\\\": [\\\"literal\\\", 310]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_runway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"runway\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 10,\\n 0,\\n 12,\\n 4,\\n 18,\\n 30\\n ],\\n \\\"line-opacity\\\": 0.3\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_taxiway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"taxiway\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e9e9ed\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 15,\\n 6\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_stream\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"minzoom\\\": 14,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"stream\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": 0.5,\\n \\\"line-color\\\": \\\"#000000\\\",\\n \\\"line-opacity\\\": 0.35\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_other_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_minor_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-dasharray\\\": [3, 2],\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12,\\n 0,\\n 12.5,\\n 1\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_link_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"has\\\", \\\"is_link\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-dasharray\\\": [3, 2],\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12,\\n 0,\\n 12.5,\\n 1\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_other\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-dasharray\\\": [4.5, 0.5],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"has\\\", \\\"is_link\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-opacity\\\": 0.3\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"==\\\", \\\"kind\\\", \\\"major_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0,\\n 12,\\n 1.6,\\n 15,\\n 3,\\n 18,\\n 13\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"has\\\", \\\"is_tunnel\\\"],\\n [\\\"==\\\", [\\\"get\\\", \\\"kind\\\"], \\\"highway\\\"],\\n [\\\"!\\\", [\\\"has\\\", \\\"is_link\\\"]]\\n ],\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.3\\n }\\n },\\n {\\n \\\"id\\\": \\\"buildings\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"buildings\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"building\\\", \\\"building_part\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-opacity\\\": 0.08, \\\"fill-color\\\": \\\"#000\\\"}\\n },\\n {\\n \\\"id\\\": \\\"roads_pier\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"pier\\\"],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12,\\n 0,\\n 12.5,\\n 0.5,\\n 20,\\n 16\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_other\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"],\\n [\\\"!=\\\", \\\"kind_detail\\\", \\\"pier\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [3, 1.5],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 1.5,\\n 20,\\n 9\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.3\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"has\\\", \\\"is_link\\\"],\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0.5,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.3\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_minor_service\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"],\\n [\\\"==\\\", \\\"kind_detail\\\", \\\"service\\\"]\\n ],\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 18,\\n 8\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.3\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"],\\n [\\\"!=\\\", \\\"kind_detail\\\", \\\"service\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.3\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"in\\\", \\\"kind\\\", \\\"major_road\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-opacity\\\": 0.3,\\n \\\"line-color\\\": \\\"#ffffff\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.3\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_rail\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"rail\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [0.3, 0.75],\\n \\\"line-opacity\\\": 0.3,\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 0.15,\\n 18,\\n 6\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"boundaries_country\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"boundaries\\\",\\n \\\"minzoom\\\": 0,\\n \\\"filter\\\": [\\\"<=\\\", \\\"kind_detail\\\", 2],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-opacity\\\": 0.5,\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 0,\\n 1,\\n 3,\\n 1,\\n 5,\\n 1.5,\\n 8,\\n 3,\\n 10,\\n 4,\\n 15,\\n 7\\n ],\\n \\\"line-color\\\": \\\"#000000\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"boundaries\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"boundaries\\\",\\n \\\"filter\\\": [\\\">\\\", \\\"kind_detail\\\", 2],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": 1,\\n \\\"line-dasharray\\\": [\\n \\\"step\\\",\\n [\\\"zoom\\\"],\\n [\\\"literal\\\", [2]],\\n 4,\\n [\\\"literal\\\", [2, 2]]\\n ],\\n \\\"line-color\\\": \\\"#000000\\\",\\n \\\"line-opacity\\\": 0.5\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_other_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_minor_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 0.8\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_other\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ebebeb\\\",\\n \\\"line-dasharray\\\": [2, 1],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"has\\\", \\\"is_link\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-opacity\\\": 0.3\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"==\\\", \\\"kind\\\", \\\"major_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0,\\n 12,\\n 1.6,\\n 15,\\n 3,\\n 18,\\n 13\\n ],\\n \\\"line-opacity\\\": 0.3\\n }\\n },\\n {\\n \\\"id\\\": \\\"cycleway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"any\\\", [\\\"==\\\", \\\"kind_detail\\\", \\\"cycleway\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12.5,\\n 1,\\n 15,\\n 2,\\n 18,\\n 4\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-dasharray\\\": [3, 1.5],\\n \\\"line-opacity\\\": 0.5\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-opacity\\\": 0.3\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_waterway_label\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"river\\\", \\\"stream\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"text-letter-spacing\\\": 0.2\\n },\\n \\\"paint\\\": {\\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\", \\\"text-halo-width\\\": 1}\\n },\\n {\\n \\\"id\\\": \\\"roads_labels_minor\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 15,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"minor_road\\\", \\\"other\\\", \\\"path\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"min_zoom\\\"],\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.5)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_label_ocean\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"sea\\\", \\\"ocean\\\", \\\"bay\\\", \\\"strait\\\", \\\"fjord\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 1, 12, 10, 12],\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 9,\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.7)\\\",\\n \\\"text-halo-width\\\": 1,\\n \\\"text-halo-color\\\": \\\"rgba(0, 0, 0, 0)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"earth_label_islands\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"earth\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"island\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 10,\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 8\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.85)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.85)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_label_lakes\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"lake\\\", \\\"water\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 3,\\n 10,\\n 6,\\n 12,\\n 10,\\n 12\\n ],\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 9\\n },\\n \\\"paint\\\": {\\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\", \\\"text-halo-width\\\": 1}\\n },\\n {\\n \\\"id\\\": \\\"roads_labels_major\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 11,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"highway\\\", \\\"major_road\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"min_zoom\\\"],\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.5)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"pois\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"pois\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\n \\\"in\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n [\\n \\\"literal\\\",\\n [\\n \\\"beach\\\",\\n \\\"forest\\\",\\n \\\"marina\\\",\\n \\\"park\\\",\\n \\\"peak\\\",\\n \\\"zoo\\\",\\n \\\"garden\\\",\\n \\\"aerodrome\\\",\\n \\\"station\\\",\\n \\\"ferry_terminal\\\",\\n \\\"stadium\\\",\\n \\\"university\\\",\\n \\\"library\\\",\\n \\\"school\\\",\\n \\\"animal\\\",\\n \\\"toilet\\\",\\n \\\"drinking_water\\\",\\n \\\"viewpoint\\\",\\n \\\"attraction\\\",\\n \\\"camp_site\\\",\\n \\\"college\\\",\\n \\\"fishing\\\",\\n \\\"golf_course\\\",\\n \\\"hospital\\\",\\n \\\"information\\\",\\n \\\"landmark\\\",\\n \\\"military\\\",\\n \\\"national_park\\\",\\n \\\"nature_reserve\\\",\\n \\\"picnic_site\\\",\\n \\\"picnic_table\\\",\\n \\\"playground\\\",\\n \\\"railway\\\",\\n \\\"townhall\\\",\\n \\\"zoo\\\"\\n ]\\n ]\\n ],\\n [\\\">=\\\", [\\\"zoom\\\"], [\\\"+\\\", [\\\"get\\\", \\\"min_zoom\\\"], -2]]\\n ],\\n \\\"layout\\\": {\\n \\\"icon-image\\\": [\\n \\\"match\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n \\\"park\\\",\\n \\\"garden\\\",\\n [\\\"get\\\", \\\"kind\\\"]\\n ],\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-justify\\\": \\\"auto\\\",\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 17, 11, 19, 14],\\n \\\"text-max-width\\\": 8,\\n \\\"text-offset\\\": [1.5, 0],\\n \\\"text-variable-anchor\\\": [\\\"left\\\", \\\"right\\\"],\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.5)\\\",\\n \\\"text-halo-width\\\": 1.5\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_subplace\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"neighbourhood\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-max-width\\\": 7,\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 5,\\n 2,\\n 8,\\n 4,\\n 12,\\n 18,\\n 15,\\n 20\\n ],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.2],\\n [\\\"zoom\\\"],\\n 11,\\n 8,\\n 14,\\n 14,\\n 18,\\n 24\\n ],\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.5)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_region\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"region\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"sort_key\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 3, 11, 7, 16],\\n \\\"text-radial-offset\\\": 0.2,\\n \\\"text-anchor\\\": \\\"center\\\",\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-halo-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-width\\\": 1,\\n \\\"text-color\\\": \\\"#ffffff\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_locality_circle\\\",\\n \\\"type\\\": \\\"circle\\\",\\n \\\"minzoom\\\": 4,\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"locality\\\"],\\n \\\"maxzoom\\\": 8,\\n \\\"paint\\\": {\\n \\\"circle-radius\\\": {\\n \\\"stops\\\": [[4, 2.5], [8, 3.5]]\\n },\\n \\\"circle-color\\\": \\\"rgba(255, 255, 255, 0.55)\\\",\\n \\\"circle-stroke-width\\\": 1.75,\\n \\\"circle-stroke-color\\\": \\\"rgba(0, 0, 0, 0.45)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_locality\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"minzoom\\\": 4,\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"locality\\\"],\\n \\\"layout\\\": {\\n \\\"icon-image\\\": [\\\"step\\\", [\\\"zoom\\\"], \\\"townspot\\\", 8, \\\"\\\"],\\n \\\"icon-size\\\": 0.7,\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\n \\\"case\\\",\\n [\\\"<=\\\", [\\\"get\\\", \\\"min_zoom\\\"], 5],\\n [\\\"literal\\\", [\\\"Noto Sans Medium\\\"]],\\n [\\\"literal\\\", [\\\"Noto Sans Regular\\\"]]\\n ],\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 5,\\n 3,\\n 8,\\n 7,\\n 12,\\n 11\\n ],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 2,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 10,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 15,\\n 0\\n ],\\n 4,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 17,\\n 0\\n ],\\n 6,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 12],\\n 14,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 12],\\n 17,\\n 0\\n ],\\n 8,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 11],\\n 13,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 11],\\n 20,\\n 0\\n ],\\n 10,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 14,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 20,\\n 0\\n ],\\n 15,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 14,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 22,\\n 0\\n ]\\n ],\\n \\\"icon-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 0,\\n 0,\\n 8,\\n 6,\\n 10,\\n 8,\\n 12,\\n 6,\\n 22,\\n 2\\n ],\\n \\\"text-justify\\\": \\\"auto\\\",\\n \\\"text-variable-anchor\\\": [\\n \\\"step\\\",\\n [\\\"zoom\\\"],\\n [\\\"literal\\\", [\\\"bottom\\\", \\\"left\\\", \\\"right\\\", \\\"top\\\"]],\\n 8,\\n [\\\"literal\\\", [\\\"center\\\"]]\\n ],\\n \\\"text-radial-offset\\\": 0.3,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.85)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.85)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_country\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"country\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-field\\\": \\\"<LANG_COUNTRY>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Medium\\\"],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 2,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 10],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 10],\\n 15,\\n 0\\n ],\\n 6,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 11,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 18,\\n 0\\n ],\\n 8,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 7],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 7],\\n 20,\\n 0\\n ]\\n ],\\n \\\"icon-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 0,\\n 2,\\n 14,\\n 2,\\n 16,\\n 20,\\n 17,\\n 2,\\n 22,\\n 2\\n ],\\n \\\"text-transform\\\": \\\"none\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.9)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.7)\\\",\\n \\\"text-halo-width\\\": 1.5\\n }\\n }\\n]\"","export default \"[\\n {\\n \\\"id\\\": \\\"background\\\",\\n \\\"type\\\": \\\"background\\\",\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"background-color\\\": \\\"#f7eeda\\\"}\\n },\\n {\\n \\\"id\\\": \\\"water\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"$type\\\", \\\"Polygon\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#8fc0db\\\"}\\n },\\n {\\n \\\"id\\\": \\\"parks\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"minzoom\\\": 7,\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"park\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-opacity\\\": 0.15, \\\"fill-color\\\": \\\"#000\\\"}\\n },\\n {\\n \\\"id\\\": \\\"military\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"minzoom\\\": 6,\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"military\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"fill-opacity\\\": {\\\"stops\\\": [[6, 0], [7, 0.15]], \\\"base\\\": 1.6},\\n \\\"fill-color\\\": \\\"#fff\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"military_contour\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"minzoom\\\": 6,\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"military\\\"]],\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [2, 2],\\n \\\"line-opacity\\\": {\\\"stops\\\": [[6, 0.25], [10, 0.5]]},\\n \\\"line-width\\\": {\\\"stops\\\": [[6, 1], [10, 2]], \\\"base\\\": 1.6}\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_runway\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"any\\\", [\\\"in\\\", \\\"kind\\\", \\\"runway\\\", \\\"taxiway\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#ffffff\\\", \\\"fill-opacity\\\": 0.7}\\n },\\n {\\n \\\"id\\\": \\\"landuse_wetland\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"wetland\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-opacity\\\": 0.04, \\\"fill-color\\\": \\\"#000000\\\"}\\n },\\n {\\n \\\"id\\\": \\\"hillshader\\\",\\n \\\"type\\\": \\\"hillshade\\\",\\n \\\"source\\\": \\\"__bmk_tr_src\\\",\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"hillshade-illumination-anchor\\\": \\\"viewport\\\",\\n \\\"hillshade-exaggeration\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 0,\\n 0.05,\\n 4,\\n 0.05,\\n 7,\\n 0.1,\\n 10,\\n 0.12,\\n 15,\\n 0.1,\\n 17,\\n 0.02\\n ],\\n \\\"hillshade-shadow-color\\\": \\\"#000000\\\",\\n \\\"hillshade-highlight-color\\\": \\\"#ffffff\\\",\\n \\\"hillshade-accent-color\\\": \\\"#ffffff\\\",\\n \\\"hillshade-illumination-direction\\\": [\\\"literal\\\", 310]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_runway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"runway\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 10,\\n 0,\\n 12,\\n 4,\\n 18,\\n 30\\n ],\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_taxiway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"taxiway\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e9e9ed\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 15,\\n 6\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_stream\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"minzoom\\\": 14,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"stream\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": 0.5,\\n \\\"line-color\\\": \\\"#8fc0db\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_other_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_minor_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-dasharray\\\": [3, 2],\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12,\\n 0,\\n 12.5,\\n 1\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_link_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"has\\\", \\\"is_link\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-dasharray\\\": [3, 2],\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12,\\n 0,\\n 12.5,\\n 1\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_other\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-dasharray\\\": [4.5, 0.5],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"has\\\", \\\"is_link\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"==\\\", \\\"kind\\\", \\\"major_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0,\\n 12,\\n 1.6,\\n 15,\\n 3,\\n 18,\\n 13\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"has\\\", \\\"is_tunnel\\\"],\\n [\\\"==\\\", [\\\"get\\\", \\\"kind\\\"], \\\"highway\\\"],\\n [\\\"!\\\", [\\\"has\\\", \\\"is_link\\\"]]\\n ],\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"buildings\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"buildings\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"building\\\", \\\"building_part\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-opacity\\\": 0.08, \\\"fill-color\\\": \\\"#000\\\"}\\n },\\n {\\n \\\"id\\\": \\\"roads_pier\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"pier\\\"],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12,\\n 0,\\n 12.5,\\n 0.5,\\n 20,\\n 16\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_other\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"],\\n [\\\"!=\\\", \\\"kind_detail\\\", \\\"pier\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [3, 1.5],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 1.5,\\n 20,\\n 9\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"has\\\", \\\"is_link\\\"],\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0.5,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_minor_service\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"],\\n [\\\"==\\\", \\\"kind_detail\\\", \\\"service\\\"]\\n ],\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 18,\\n 8\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"],\\n [\\\"!=\\\", \\\"kind_detail\\\", \\\"service\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"in\\\", \\\"kind\\\", \\\"major_road\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-opacity\\\": 0.7,\\n \\\"line-color\\\": \\\"#ffffff\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_rail\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"rail\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [0.3, 0.75],\\n \\\"line-opacity\\\": 0.7,\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 0.15,\\n 18,\\n 6\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"boundaries_country\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"boundaries\\\",\\n \\\"minzoom\\\": 0,\\n \\\"filter\\\": [\\\"<=\\\", \\\"kind_detail\\\", 2],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-opacity\\\": 0.5,\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 0,\\n 1,\\n 3,\\n 1,\\n 5,\\n 1.5,\\n 8,\\n 3,\\n 10,\\n 4,\\n 15,\\n 7\\n ],\\n \\\"line-color\\\": \\\"#000\\\",\\n \\\"line-opacity\\\": 0.4\\n }\\n },\\n {\\n \\\"id\\\": \\\"boundaries\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"boundaries\\\",\\n \\\"filter\\\": [\\\">\\\", \\\"kind_detail\\\", 2],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": 1,\\n \\\"line-dasharray\\\": [\\n \\\"step\\\",\\n [\\\"zoom\\\"],\\n [\\\"literal\\\", [2]],\\n 4,\\n [\\\"literal\\\", [2, 2]]\\n ],\\n \\\"line-color\\\": \\\"#000\\\",\\n \\\"line-opacity\\\": 0.4\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_other_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_minor_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 0.8\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_other\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ebebeb\\\",\\n \\\"line-dasharray\\\": [2, 1],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"has\\\", \\\"is_link\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"==\\\", \\\"kind\\\", \\\"major_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0,\\n 12,\\n 1.6,\\n 15,\\n 3,\\n 18,\\n 13\\n ],\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"cycleway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"any\\\", [\\\"==\\\", \\\"kind_detail\\\", \\\"cycleway\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12.5,\\n 1,\\n 15,\\n 2,\\n 18,\\n 4\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-dasharray\\\": [3, 1.5],\\n \\\"line-opacity\\\": 0.5\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_waterway_label\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"river\\\", \\\"stream\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"text-letter-spacing\\\": 0.2\\n },\\n \\\"paint\\\": {\\\"text-color\\\": \\\"rgba(0, 0, 0, 0.5)\\\"}\\n },\\n {\\n \\\"id\\\": \\\"roads_labels_minor\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 15,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"minor_road\\\", \\\"other\\\", \\\"path\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"min_zoom\\\"],\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.5)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_label_ocean\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"sea\\\", \\\"ocean\\\", \\\"bay\\\", \\\"strait\\\", \\\"fjord\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 1, 12, 10, 12],\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 9,\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.5)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"earth_label_islands\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"earth\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"island\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 10,\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 8\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.85)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.85)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_label_lakes\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"lake\\\", \\\"water\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 3,\\n 10,\\n 6,\\n 12,\\n 10,\\n 12\\n ],\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 9\\n },\\n \\\"paint\\\": {\\\"text-color\\\": \\\"rgba(0, 0, 0, 0.5)\\\"}\\n },\\n {\\n \\\"id\\\": \\\"roads_labels_major\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 11,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"highway\\\", \\\"major_road\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"min_zoom\\\"],\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.5)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"pois\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"pois\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\n \\\"in\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n [\\n \\\"literal\\\",\\n [\\n \\\"beach\\\",\\n \\\"forest\\\",\\n \\\"marina\\\",\\n \\\"park\\\",\\n \\\"peak\\\",\\n \\\"zoo\\\",\\n \\\"garden\\\",\\n \\\"aerodrome\\\",\\n \\\"station\\\",\\n \\\"ferry_terminal\\\",\\n \\\"stadium\\\",\\n \\\"university\\\",\\n \\\"library\\\",\\n \\\"school\\\",\\n \\\"animal\\\",\\n \\\"toilet\\\",\\n \\\"drinking_water\\\",\\n \\\"viewpoint\\\",\\n \\\"attraction\\\",\\n \\\"camp_site\\\",\\n \\\"college\\\",\\n \\\"fishing\\\",\\n \\\"golf_course\\\",\\n \\\"hospital\\\",\\n \\\"information\\\",\\n \\\"landmark\\\",\\n \\\"military\\\",\\n \\\"national_park\\\",\\n \\\"nature_reserve\\\",\\n \\\"picnic_site\\\",\\n \\\"picnic_table\\\",\\n \\\"playground\\\",\\n \\\"railway\\\",\\n \\\"townhall\\\",\\n \\\"zoo\\\"\\n ]\\n ]\\n ],\\n [\\\">=\\\", [\\\"zoom\\\"], [\\\"+\\\", [\\\"get\\\", \\\"min_zoom\\\"], -2]]\\n ],\\n \\\"layout\\\": {\\n \\\"icon-image\\\": [\\n \\\"match\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n \\\"park\\\",\\n \\\"garden\\\",\\n [\\\"get\\\", \\\"kind\\\"]\\n ],\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-justify\\\": \\\"auto\\\",\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 17, 11, 19, 14],\\n \\\"text-max-width\\\": 8,\\n \\\"text-offset\\\": [1.5, 0],\\n \\\"text-variable-anchor\\\": [\\\"left\\\", \\\"right\\\"],\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.5)\\\",\\n \\\"text-halo-width\\\": 1.5\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_subplace\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"neighbourhood\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-max-width\\\": 7,\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 5,\\n 2,\\n 8,\\n 4,\\n 12,\\n 18,\\n 15,\\n 20\\n ],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.2],\\n [\\\"zoom\\\"],\\n 11,\\n 8,\\n 14,\\n 14,\\n 18,\\n 24\\n ],\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.5)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_region\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"region\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"sort_key\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 3, 11, 7, 16],\\n \\\"text-radial-offset\\\": 0.2,\\n \\\"text-anchor\\\": \\\"center\\\",\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-halo-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-width\\\": 1,\\n \\\"text-color\\\": \\\"#ffffff\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_locality_circle\\\",\\n \\\"type\\\": \\\"circle\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"locality\\\"],\\n \\\"maxzoom\\\": 8,\\n \\\"paint\\\": {\\n \\\"circle-radius\\\": {\\n \\\"stops\\\": [[4, 2.5], [8, 3.5]]\\n },\\n \\\"circle-color\\\": \\\"rgba(255, 255, 255, 0.55)\\\",\\n \\\"circle-stroke-width\\\": 1.75,\\n \\\"circle-stroke-color\\\": \\\"rgba(0, 0, 0, 0.45)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_locality\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"locality\\\"],\\n \\\"layout\\\": {\\n \\\"icon-image\\\": [\\\"step\\\", [\\\"zoom\\\"], \\\"townspot\\\", 8, \\\"\\\"],\\n \\\"icon-size\\\": 0.7,\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\n \\\"case\\\",\\n [\\\"<=\\\", [\\\"get\\\", \\\"min_zoom\\\"], 5],\\n [\\\"literal\\\", [\\\"Noto Sans Medium\\\"]],\\n [\\\"literal\\\", [\\\"Noto Sans Regular\\\"]]\\n ],\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 5,\\n 3,\\n 8,\\n 7,\\n 12,\\n 11\\n ],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 2,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 10,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 15,\\n 0\\n ],\\n 4,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 17,\\n 0\\n ],\\n 6,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 12],\\n 14,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 12],\\n 17,\\n 0\\n ],\\n 8,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 11],\\n 13,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 11],\\n 20,\\n 0\\n ],\\n 10,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 14,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 20,\\n 0\\n ],\\n 15,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 14,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 22,\\n 0\\n ]\\n ],\\n \\\"icon-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 0,\\n 0,\\n 8,\\n 6,\\n 10,\\n 8,\\n 12,\\n 6,\\n 22,\\n 2\\n ],\\n \\\"text-justify\\\": \\\"auto\\\",\\n \\\"text-variable-anchor\\\": [\\n \\\"step\\\",\\n [\\\"zoom\\\"],\\n [\\\"literal\\\", [\\\"bottom\\\", \\\"left\\\", \\\"right\\\", \\\"top\\\"]],\\n 8,\\n [\\\"literal\\\", [\\\"center\\\"]]\\n ],\\n \\\"text-radial-offset\\\": 0.3,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.85)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.85)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_country\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"country\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-field\\\": \\\"<LANG_COUNTRY>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Medium\\\"],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 2,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 10],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 10],\\n 15,\\n 0\\n ],\\n 6,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 11,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 18,\\n 0\\n ],\\n 8,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 7],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 7],\\n 20,\\n 0\\n ]\\n ],\\n \\\"icon-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 0,\\n 2,\\n 14,\\n 2,\\n 16,\\n 20,\\n 17,\\n 2,\\n 22,\\n 2\\n ],\\n \\\"text-transform\\\": \\\"none\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.9)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.7)\\\",\\n \\\"text-halo-width\\\": 1.5\\n }\\n }\\n]\"","export default \"[\\n {\\n \\\"id\\\": \\\"background\\\",\\n \\\"type\\\": \\\"background\\\",\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"background-color\\\": \\\"#888\\\"}\\n },\\n {\\n \\\"id\\\": \\\"earth\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"earth\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"$type\\\", \\\"Polygon\\\"],\\n \\\"paint\\\": {\\n \\\"fill-color\\\": \\\"#fff\\\",\\n \\\"fill-opacity\\\": 0.1\\n }\\n },\\n {\\n \\\"id\\\": \\\"water\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"$type\\\", \\\"Polygon\\\"],\\n \\\"paint\\\": {\\n \\\"fill-color\\\": \\\"#000\\\",\\n \\\"fill-opacity\\\": 0.1\\n }\\n },\\n {\\n \\\"id\\\": \\\"hillshader\\\",\\n \\\"type\\\": \\\"hillshade\\\",\\n \\\"source\\\": \\\"__bmk_tr_src\\\",\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"hillshade-illumination-anchor\\\": \\\"viewport\\\",\\n \\\"hillshade-exaggeration\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 0,\\n 0.05,\\n 4,\\n 0.05,\\n 7,\\n 0.15,\\n 10,\\n 0.2,\\n 15,\\n 0.2,\\n 17,\\n 0.1\\n ],\\n \\\"hillshade-shadow-color\\\": \\\"#000000\\\",\\n \\\"hillshade-highlight-color\\\": \\\"#ffffff\\\",\\n \\\"hillshade-accent-color\\\": \\\"#ffffff\\\",\\n \\\"hillshade-illumination-direction\\\": [\\\"literal\\\", 310]\\n }\\n },\\n {\\n \\\"id\\\": \\\"earth_line\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"earth\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"$type\\\", \\\"Polygon\\\"],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#0f0\\\",\\n \\\"line-width\\\": {\\n \\\"base\\\": 1.6,\\n \\\"stops\\\": [\\n [1, 1.25],\\n [6, 2]\\n ]\\n }\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_line\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"$type\\\", \\\"Polygon\\\"],\\n\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#0f0\\\",\\n \\\"line-width\\\": {\\n \\\"base\\\": 1.6,\\n \\\"stops\\\": [\\n [1, 0.5],\\n [6, 1]\\n ]\\n }\\n }\\n },\\n\\n {\\n \\\"id\\\": \\\"boundaries_country\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"boundaries\\\",\\n \\\"minzoom\\\": 0,\\n \\\"filter\\\": [\\\"<=\\\", \\\"kind_detail\\\", 2],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": {\\n \\\"base\\\": 1.6,\\n \\\"stops\\\": [\\n [1, 1.25],\\n [6, 2]\\n ]\\n },\\n \\\"line-color\\\": \\\"#0f0\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"boundaries\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"boundaries\\\",\\n \\\"filter\\\": [\\\">\\\", \\\"kind_detail\\\", 2],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": {\\n \\\"base\\\": 1.6,\\n \\\"stops\\\": [\\n [1, 0.9],\\n [6, 1.5]\\n ]\\n },\\n \\\"line-dasharray\\\": [\\n \\\"step\\\",\\n [\\\"zoom\\\"],\\n [\\\"literal\\\", [2]],\\n 4,\\n [\\\"literal\\\", [2, 2]]\\n ],\\n \\\"line-color\\\": \\\"#0f0\\\"\\n }\\n },\\n \\n {\\n \\\"id\\\": \\\"water_label_ocean\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"sea\\\", \\\"ocean\\\", \\\"bay\\\", \\\"strait\\\", \\\"fjord\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 1, 12, 10, 12],\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 9,\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 255, 0, 0.5)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"earth_label_islands\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"earth\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"island\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 11,\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 8\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.85)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(0, 255, 0, 0.85)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_label_lakes\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"lake\\\", \\\"water\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 3,\\n 10,\\n 6,\\n 12,\\n 10,\\n 12\\n ],\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 9\\n },\\n \\\"paint\\\": {\\\"text-color\\\": \\\"rgba(0, 255, 0, 0.6)\\\"}\\n },\\n {\\n \\\"id\\\": \\\"pois\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"pois\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\n \\\"in\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n [\\n \\\"literal\\\",\\n [\\n \\\"beach\\\",\\n \\\"forest\\\",\\n \\\"marina\\\",\\n \\\"park\\\",\\n \\\"peak\\\",\\n \\\"zoo\\\",\\n \\\"garden\\\",\\n \\\"aerodrome\\\",\\n \\\"station\\\",\\n \\\"ferry_terminal\\\",\\n \\\"stadium\\\",\\n \\\"university\\\",\\n \\\"library\\\",\\n \\\"school\\\",\\n \\\"animal\\\",\\n \\\"toilet\\\",\\n \\\"drinking_water\\\",\\n \\\"viewpoint\\\",\\n \\\"attraction\\\",\\n \\\"camp_site\\\",\\n \\\"college\\\",\\n \\\"fishing\\\",\\n \\\"golf_course\\\",\\n \\\"hospital\\\",\\n \\\"information\\\",\\n \\\"landmark\\\",\\n \\\"military\\\",\\n \\\"national_park\\\",\\n \\\"nature_reserve\\\",\\n \\\"picnic_site\\\",\\n \\\"picnic_table\\\",\\n \\\"playground\\\",\\n \\\"railway\\\",\\n \\\"townhall\\\",\\n \\\"zoo\\\"\\n ]\\n ]\\n ],\\n [\\\">=\\\", [\\\"zoom\\\"], [\\\"+\\\", [\\\"get\\\", \\\"min_zoom\\\"], -2]]\\n ],\\n \\\"layout\\\": {\\n \\\"icon-image\\\": [\\n \\\"match\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n \\\"park\\\",\\n \\\"garden\\\",\\n [\\\"get\\\", \\\"kind\\\"]\\n ],\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-justify\\\": \\\"auto\\\",\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 17, 11, 19, 14],\\n \\\"text-max-width\\\": 8,\\n \\\"text-offset\\\": [1.5, 0],\\n \\\"text-variable-anchor\\\": [\\\"left\\\", \\\"right\\\"],\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(0, 255, 0, 0.65)\\\"\\n }\\n },\\n \\n {\\n \\\"id\\\": \\\"places_region\\\",\\n \\\"minzoom\\\": 3.5,\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"region\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"sort_key\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 3, 13, 5, 16, 7, 20],\\n \\\"text-radial-offset\\\": 0.2,\\n \\\"text-anchor\\\": \\\"center\\\",\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(0, 255, 0, 0.85)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_locality_circle\\\",\\n \\\"type\\\": \\\"circle\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"locality\\\"],\\n \\\"minzoom\\\": 4,\\n \\\"maxzoom\\\": 8,\\n \\\"paint\\\": {\\n \\\"circle-radius\\\": {\\n \\\"stops\\\": [[4, 2.5], [8, 3.5]]\\n },\\n \\\"circle-color\\\": \\\"rgba(0, 0, 0, 0.6)\\\"\\n }\\n },\\n\\n {\\n \\\"id\\\": \\\"places_locality\\\",\\n \\\"minzoom\\\": 4,\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"locality\\\"],\\n \\\"layout\\\": {\\n \\\"icon-image\\\": [\\\"step\\\", [\\\"zoom\\\"], \\\"townspot\\\", 8, \\\"\\\"],\\n \\\"icon-size\\\": 0.7,\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\n \\\"case\\\",\\n [\\\"<=\\\", [\\\"get\\\", \\\"min_zoom\\\"], 5],\\n [\\\"literal\\\", [\\\"Noto Sans Medium\\\"]],\\n [\\\"literal\\\", [\\\"Noto Sans Regular\\\"]]\\n ],\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 5,\\n 3,\\n 8,\\n 7,\\n 12,\\n 11\\n ],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 2,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 10,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 15,\\n 0\\n ],\\n 4,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 17,\\n 0\\n ],\\n 6,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 12],\\n 14,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 12],\\n 17,\\n 0\\n ],\\n 8,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 11],\\n 13,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 11],\\n 20,\\n 0\\n ],\\n 10,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 14,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 20,\\n 0\\n ],\\n 15,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 14,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 22,\\n 0\\n ]\\n ],\\n \\\"text-justify\\\": \\\"auto\\\",\\n \\\"text-variable-anchor\\\": [\\n \\\"step\\\",\\n [\\\"zoom\\\"],\\n [\\\"literal\\\", [\\\"bottom\\\", \\\"left\\\", \\\"right\\\", \\\"top\\\"]],\\n 8,\\n [\\\"literal\\\", [\\\"center\\\"]]\\n ],\\n \\\"text-radial-offset\\\": 0.3,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.7)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_country\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"country\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-field\\\": \\\"<LANG_COUNTRY>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Medium\\\"],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 2,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 10],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 10],\\n 14,\\n 0\\n ],\\n 6,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 16,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 22,\\n 0\\n ],\\n 8,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 7],\\n 17,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 7],\\n 28,\\n 0\\n ]\\n ]\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"#000a\\\",\\n \\\"text-halo-color\\\": \\\"rgba(0, 255, 0, 0.8)\\\"\\n }\\n }\\n]\"","export default \"[\\n {\\n \\\"id\\\": \\\"background\\\",\\n \\\"type\\\": \\\"background\\\",\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"background-color\\\": \\\"#f7f7f7\\\"}\\n },\\n {\\n \\\"id\\\": \\\"water\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"$type\\\", \\\"Polygon\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#202226\\\"}\\n },\\n {\\n \\\"id\\\": \\\"parks\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"minzoom\\\": 7,\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"park\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-opacity\\\": 0.15, \\\"fill-color\\\": \\\"#000\\\"}\\n },\\n {\\n \\\"id\\\": \\\"military\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"minzoom\\\": 6,\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"military\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"fill-opacity\\\": {\\\"stops\\\": [[6, 0], [7, 0.15]], \\\"base\\\": 1.6},\\n \\\"fill-color\\\": \\\"#fff\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"military_contour\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"minzoom\\\": 6,\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"military\\\"]],\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [2, 2],\\n \\\"line-opacity\\\": {\\\"stops\\\": [[6, 0.25], [10, 0.5]]},\\n \\\"line-width\\\": {\\\"stops\\\": [[6, 1], [10, 2]], \\\"base\\\": 1.6}\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_runway\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"any\\\", [\\\"in\\\", \\\"kind\\\", \\\"runway\\\", \\\"taxiway\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#ffffff\\\", \\\"fill-opacity\\\": 0.7}\\n },\\n {\\n \\\"id\\\": \\\"landuse_wetland\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"wetland\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-opacity\\\": 0.04, \\\"fill-color\\\": \\\"#000000\\\"}\\n },\\n {\\n \\\"id\\\": \\\"hillshader\\\",\\n \\\"type\\\": \\\"hillshade\\\",\\n \\\"source\\\": \\\"__bmk_tr_src\\\",\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"hillshade-illumination-anchor\\\": \\\"viewport\\\",\\n \\\"hillshade-exaggeration\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 0,\\n 0.05,\\n 4,\\n 0.1,\\n 7,\\n 0.15,\\n 10,\\n 0.2,\\n 15,\\n 0.2,\\n 17,\\n 0.1\\n ],\\n \\\"hillshade-shadow-color\\\": \\\"#000000\\\",\\n \\\"hillshade-highlight-color\\\": \\\"#ffffff\\\",\\n \\\"hillshade-accent-color\\\": \\\"#ffffff\\\",\\n \\\"hillshade-illumination-direction\\\": [\\\"literal\\\", 310]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_runway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"runway\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 10,\\n 0,\\n 12,\\n 4,\\n 18,\\n 30\\n ],\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_taxiway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"taxiway\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e9e9ed\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 15,\\n 6\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_stream\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"minzoom\\\": 14,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"stream\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": 0.5,\\n \\\"line-color\\\": \\\"#202226\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_other_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_minor_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-dasharray\\\": [3, 2],\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12,\\n 0,\\n 12.5,\\n 1\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_link_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"has\\\", \\\"is_link\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-dasharray\\\": [3, 2],\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12,\\n 0,\\n 12.5,\\n 1\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_other\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-dasharray\\\": [4.5, 0.5],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"has\\\", \\\"is_link\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"==\\\", \\\"kind\\\", \\\"major_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0,\\n 12,\\n 1.6,\\n 15,\\n 3,\\n 18,\\n 13\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"has\\\", \\\"is_tunnel\\\"],\\n [\\\"==\\\", [\\\"get\\\", \\\"kind\\\"], \\\"highway\\\"],\\n [\\\"!\\\", [\\\"has\\\", \\\"is_link\\\"]]\\n ],\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"buildings\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"buildings\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"building\\\", \\\"building_part\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-opacity\\\": 0.08, \\\"fill-color\\\": \\\"#000\\\"}\\n },\\n {\\n \\\"id\\\": \\\"roads_pier\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"pier\\\"],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12,\\n 0,\\n 12.5,\\n 0.5,\\n 20,\\n 16\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_other\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"],\\n [\\\"!=\\\", \\\"kind_detail\\\", \\\"pier\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [3, 1.5],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 1.5,\\n 20,\\n 9\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"has\\\", \\\"is_link\\\"],\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0.5,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_minor_service\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"],\\n [\\\"==\\\", \\\"kind_detail\\\", \\\"service\\\"]\\n ],\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 18,\\n 8\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"],\\n [\\\"!=\\\", \\\"kind_detail\\\", \\\"service\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"in\\\", \\\"kind\\\", \\\"major_road\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-opacity\\\": 0.7,\\n \\\"line-color\\\": \\\"#ffffff\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_rail\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"rail\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [0.3, 0.75],\\n \\\"line-opacity\\\": 0.7,\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 0.15,\\n 18,\\n 6\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"boundaries_country\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"boundaries\\\",\\n \\\"minzoom\\\": 0,\\n \\\"filter\\\": [\\\"<=\\\", \\\"kind_detail\\\", 2],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 0,\\n 1,\\n 3,\\n 1,\\n 5,\\n 1.5,\\n 8,\\n 3,\\n 10,\\n 4,\\n 15,\\n 7\\n ],\\n \\\"line-color\\\": \\\"#000\\\",\\n \\\"line-opacity\\\": 0.4\\n }\\n },\\n {\\n \\\"id\\\": \\\"boundaries\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"boundaries\\\",\\n \\\"filter\\\": [\\\">\\\", \\\"kind_detail\\\", 2],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": 1,\\n \\\"line-dasharray\\\": [\\n \\\"step\\\",\\n [\\\"zoom\\\"],\\n [\\\"literal\\\", [2]],\\n 4,\\n [\\\"literal\\\", [2, 2]]\\n ],\\n \\\"line-color\\\": \\\"#000\\\",\\n \\\"line-opacity\\\": 0.4\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_other_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_minor_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 0.8\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_other\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ebebeb\\\",\\n \\\"line-dasharray\\\": [2, 1],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"has\\\", \\\"is_link\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"==\\\", \\\"kind\\\", \\\"major_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0,\\n 12,\\n 1.6,\\n 15,\\n 3,\\n 18,\\n 13\\n ],\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"cycleway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"any\\\", [\\\"==\\\", \\\"kind_detail\\\", \\\"cycleway\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12.5,\\n 1,\\n 15,\\n 2,\\n 18,\\n 4\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-dasharray\\\": [3, 1.5],\\n \\\"line-opacity\\\": 0.5\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_waterway_label\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"river\\\", \\\"stream\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"text-letter-spacing\\\": 0.2\\n },\\n \\\"paint\\\": {\\\"text-color\\\": \\\"rgba(255, 255, 255, 0.75)\\\"}\\n },\\n {\\n \\\"id\\\": \\\"roads_labels_minor\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 15,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"minor_road\\\", \\\"other\\\", \\\"path\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"min_zoom\\\"],\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.5)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_label_ocean\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"sea\\\", \\\"ocean\\\", \\\"bay\\\", \\\"strait\\\", \\\"fjord\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 1, 12, 10, 12],\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 9,\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(255, 255, 255, 0.5)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"earth_label_islands\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"earth\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"island\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 10,\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 8\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.85)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.85)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_label_lakes\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"lake\\\", \\\"water\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 3,\\n 10,\\n 6,\\n 12,\\n 10,\\n 12\\n ],\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 9\\n },\\n \\\"paint\\\": {\\\"text-color\\\": \\\"rgba(255, 255, 255, 0.75)\\\"}\\n },\\n {\\n \\\"id\\\": \\\"roads_labels_major\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 11,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"highway\\\", \\\"major_road\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"min_zoom\\\"],\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.5)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"pois\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"pois\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\n \\\"in\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n [\\n \\\"literal\\\",\\n [\\n \\\"beach\\\",\\n \\\"forest\\\",\\n \\\"marina\\\",\\n \\\"park\\\",\\n \\\"peak\\\",\\n \\\"zoo\\\",\\n \\\"garden\\\",\\n \\\"aerodrome\\\",\\n \\\"station\\\",\\n \\\"ferry_terminal\\\",\\n \\\"stadium\\\",\\n \\\"university\\\",\\n \\\"library\\\",\\n \\\"school\\\",\\n \\\"animal\\\",\\n \\\"toilet\\\",\\n \\\"drinking_water\\\",\\n \\\"viewpoint\\\",\\n \\\"attraction\\\",\\n \\\"camp_site\\\",\\n \\\"college\\\",\\n \\\"fishing\\\",\\n \\\"golf_course\\\",\\n \\\"hospital\\\",\\n \\\"information\\\",\\n \\\"landmark\\\",\\n \\\"military\\\",\\n \\\"national_park\\\",\\n \\\"nature_reserve\\\",\\n \\\"picnic_site\\\",\\n \\\"picnic_table\\\",\\n \\\"playground\\\",\\n \\\"railway\\\",\\n \\\"townhall\\\",\\n \\\"zoo\\\"\\n ]\\n ]\\n ],\\n [\\\">=\\\", [\\\"zoom\\\"], [\\\"+\\\", [\\\"get\\\", \\\"min_zoom\\\"], -2]]\\n ],\\n \\\"layout\\\": {\\n \\\"icon-image\\\": [\\n \\\"match\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n \\\"park\\\",\\n \\\"garden\\\",\\n [\\\"get\\\", \\\"kind\\\"]\\n ],\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-justify\\\": \\\"auto\\\",\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 17, 11, 19, 14],\\n \\\"text-max-width\\\": 8,\\n \\\"text-offset\\\": [1.5, 0],\\n \\\"text-variable-anchor\\\": [\\\"left\\\", \\\"right\\\"],\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.5)\\\",\\n \\\"text-halo-width\\\": 1.5\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_subplace\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"neighbourhood\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-max-width\\\": 7,\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 5,\\n 2,\\n 8,\\n 4,\\n 12,\\n 18,\\n 15,\\n 20\\n ],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.2],\\n [\\\"zoom\\\"],\\n 11,\\n 8,\\n 14,\\n 14,\\n 18,\\n 24\\n ],\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.5)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_region\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"region\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"sort_key\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 3, 11, 7, 16],\\n \\\"text-radial-offset\\\": 0.2,\\n \\\"text-anchor\\\": \\\"center\\\",\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-halo-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-width\\\": 1,\\n \\\"text-color\\\": \\\"#ffffff\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_locality_circle\\\",\\n \\\"type\\\": \\\"circle\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"locality\\\"],\\n \\\"maxzoom\\\": 8,\\n \\\"paint\\\": {\\n \\\"circle-radius\\\": {\\n \\\"stops\\\": [[4, 2.5], [8, 3.5]]\\n },\\n \\\"circle-color\\\": \\\"rgba(255, 255, 255, 0.55)\\\",\\n \\\"circle-stroke-width\\\": 1.75,\\n \\\"circle-stroke-color\\\": \\\"rgba(0, 0, 0, 0.45)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_locality\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"locality\\\"],\\n \\\"layout\\\": {\\n \\\"icon-image\\\": [\\\"step\\\", [\\\"zoom\\\"], \\\"townspot\\\", 8, \\\"\\\"],\\n \\\"icon-size\\\": 0.7,\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\n \\\"case\\\",\\n [\\\"<=\\\", [\\\"get\\\", \\\"min_zoom\\\"], 5],\\n [\\\"literal\\\", [\\\"Noto Sans Medium\\\"]],\\n [\\\"literal\\\", [\\\"Noto Sans Regular\\\"]]\\n ],\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 5,\\n 3,\\n 8,\\n 7,\\n 12,\\n 11\\n ],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 2,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 10,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 15,\\n 0\\n ],\\n 4,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 17,\\n 0\\n ],\\n 6,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 12],\\n 14,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 12],\\n 17,\\n 0\\n ],\\n 8,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 11],\\n 13,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 11],\\n 20,\\n 0\\n ],\\n 10,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 14,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 20,\\n 0\\n ],\\n 15,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 14,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 22,\\n 0\\n ]\\n ],\\n \\\"icon-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 0,\\n 0,\\n 8,\\n 6,\\n 10,\\n 8,\\n 12,\\n 6,\\n 22,\\n 2\\n ],\\n \\\"text-justify\\\": \\\"auto\\\",\\n \\\"text-variable-anchor\\\": [\\n \\\"step\\\",\\n [\\\"zoom\\\"],\\n [\\\"literal\\\", [\\\"bottom\\\", \\\"left\\\", \\\"right\\\", \\\"top\\\"]],\\n 8,\\n [\\\"literal\\\", [\\\"center\\\"]]\\n ],\\n \\\"text-radial-offset\\\": 0.3,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.85)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.85)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_country\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"country\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-field\\\": \\\"<LANG_COUNTRY>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Medium\\\"],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 2,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 10],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 10],\\n 15,\\n 0\\n ],\\n 6,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 11,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 18,\\n 0\\n ],\\n 8,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 7],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 7],\\n 20,\\n 0\\n ]\\n ],\\n \\\"icon-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 0,\\n 2,\\n 14,\\n 2,\\n 16,\\n 20,\\n 17,\\n 2,\\n 22,\\n 2\\n ],\\n \\\"text-transform\\\": \\\"none\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.9)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.7)\\\",\\n \\\"text-halo-width\\\": 1.5\\n }\\n }\\n]\"","import { language_script_pairs } from \"@protomaps/basemaps\";\n\nexport function isLanguageSupported(lang: string, script: string | undefined): boolean {\n const candidates = language_script_pairs.filter((l) => l.lang === lang);\n\n if (candidates.length === 0) {\n throw new Error(\n `The language \"${lang}\". The languages available are: ${language_script_pairs.map((l) => l.lang).join(\", \")}.`,\n );\n }\n\n if (script) {\n const candidatesWithScript = candidates.filter((l) => l.script === script);\n\n if (candidatesWithScript.length) {\n return true;\n }\n\n throw new Error(\n `The script \"${script}\" for the language \"${lang}\" is unsupported. Script available for this language: ${candidates.map((l) => l.script).join(\", \")}.`,\n );\n }\n\n return true;\n}\n\nexport function getDefaultLanguage(): string {\n const systemLang = Intl.DateTimeFormat().resolvedOptions().locale.split(\"-\")[0];\n if (isLanguageSupported(systemLang, undefined)) {\n return systemLang;\n }\n return \"en\";\n}\n","import { get_country_name, get_multiline_name } from \"@protomaps/basemaps\";\nimport Color from \"color\";\nimport type {\n StyleSpecification,\n LayerSpecification,\n SymbolLayerSpecification,\n RasterDEMSourceSpecification,\n PropertyValueSpecification,\n} from \"maplibre-gl\";\nimport { applyBrightnessRGB, applyContrastRGB, applyMultiplicationRGB, findColor, type RGBArray } from \"./colorchange\";\nimport avenueLayersRaw from \"./assets/avenue-layers-raw.json?raw\";\nimport bureauLayersRaw from \"./assets/bureau-layers-raw.json?raw\";\nimport journalLayersRaw from \"./assets/journal-layers-raw.json?raw\";\nimport spectreLayersRaw from \"./assets/spectre-layers-raw.json?raw\";\nimport monochromeLayersRaw from \"./assets/monochrome-layers-raw.json?raw\";\nimport { getDefaultLanguage, isLanguageSupported } from \"./language\";\n\nconst baseStyles = {\n avenue: avenueLayersRaw,\n bureau: bureauLayersRaw,\n journal: journalLayersRaw,\n monochrome: monochromeLayersRaw,\n spectre: spectreLayersRaw,\n} as const;\n\n/**\n * Base style\n */\nexport type BasemapkitBaseStyle = keyof typeof baseStyles;\n\ntype PresetDefinition = {\n baseStyle: BasemapkitBaseStyle;\n colorEdit: ColorEdit;\n};\n\nconst presetStyles = {\n \"avenue-pop\": {\n baseStyle: \"avenue\",\n colorEdit: {\n negate: false,\n brightness: 0,\n brightnessShift: 0,\n exposure: 0,\n contrast: [0.4, 220],\n hueRotation: -8,\n saturation: -0.1,\n multiplyColor: [\"#ff0000\", 0],\n mixColor: [\"#ff0000\", 0.02],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"avenue-saturated\": {\n baseStyle: \"avenue\",\n colorEdit: {\n exposure: -1,\n saturation: 0.1,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"avenue-night\": {\n baseStyle: \"avenue\",\n colorEdit: {\n brightness: -0.3,\n saturation: -0.8,\n multiplyColor: [\"#171075\", 0.6],\n contrast: [0.8, 160],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"avenue-bright\": {\n baseStyle: \"avenue\",\n colorEdit: {\n exposure: 0.6,\n saturation: -0.25,\n hueRotation: 15,\n contrast: [0.4, 220],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"avenue-bnw\": {\n baseStyle: \"avenue\",\n colorEdit: {\n exposure: -1,\n saturation: -1,\n contrast: [0.6, 160],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"avenue-blueprint\": {\n baseStyle: \"avenue\",\n colorEdit: {\n exposure: -0.7,\n saturation: -1,\n contrast: [0.75, 160],\n mixColor: [\"#3355bb\", 0.15],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"avenue-warm\": {\n baseStyle: \"avenue\",\n colorEdit: {\n exposure: -0.7,\n mixColor: [\"#ff8800\", 0.1],\n contrast: [0.1, 200],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"avenue-vintage\": {\n baseStyle: \"avenue\",\n colorEdit: {\n exposure: -0.25,\n multiplyColor: [\"#ff8800\", 0.4],\n hueRotation: -5,\n contrast: [0.2, 200],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-negative\": {\n baseStyle: \"bureau\",\n colorEdit: {\n negate: true,\n hueRotation: 180,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-bnw\": {\n baseStyle: \"bureau\",\n colorEdit: {\n saturation: -1,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-purple\": {\n baseStyle: \"bureau\",\n colorEdit: {\n negate: false,\n brightness: -0.2,\n hueRotation: 40,\n saturation: -0.4,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-bnw-negative\": {\n baseStyle: \"bureau\",\n colorEdit: {\n negate: true,\n saturation: -1,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-bnw-dark\": {\n baseStyle: \"bureau\",\n colorEdit: {\n brightness: -0.6,\n saturation: -1,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-bnw-bright\": {\n baseStyle: \"bureau\",\n colorEdit: {\n brightnessShift: 0.3,\n saturation: -1,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-bnw-negative-bright\": {\n baseStyle: \"bureau\",\n colorEdit: {\n brightnessShift: 0.35,\n exposure: 0.8,\n saturation: -1,\n negate: true,\n contrast: [0.5, 245],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-bnw-negative-dark\": {\n baseStyle: \"bureau\",\n colorEdit: {\n brightnessShift: -0.2,\n brightness: -0.3,\n saturation: -1,\n negate: true,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-sand\": {\n baseStyle: \"bureau\",\n colorEdit: {\n brightnessShift: 0.2,\n exposure: 0.2,\n saturation: -1,\n negate: false,\n multiplyColor: [\"#ffeeab\", 0.45],\n mixColor: [\"#ffeeab\", 0.1],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-sand-negative\": {\n baseStyle: \"bureau\",\n colorEdit: {\n brightnessShift: 0.2,\n exposure: 0.2,\n saturation: -1,\n negate: true,\n multiplyColor: [\"#ffeeab\", 0.45],\n mixColor: [\"#ffeeab\", 0.1],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-ivory\": {\n baseStyle: \"bureau\",\n colorEdit: {\n brightnessShift: 0.2,\n exposure: 0.2,\n saturation: -1,\n negate: false,\n multiplyColor: [\"#f0e9d1\", 0.45],\n mixColor: [\"#f0e9d1\", 0.1],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-ivory-negative\": {\n baseStyle: \"bureau\",\n colorEdit: {\n brightnessShift: 0.2,\n exposure: 0.2,\n saturation: -1,\n multiplyColor: [\"#f0e9d1\", 0.45],\n mixColor: [\"#f0e9d1\", 0.1],\n negate: true,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-navy\": {\n baseStyle: \"bureau\",\n colorEdit: {\n brightnessShift: -0.4,\n exposure: -0.2,\n saturation: 1,\n contrast: [0.5, 50],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"journal-night\": {\n baseStyle: \"journal\",\n colorEdit: {\n brightnessShift: -0.15,\n exposure: -2,\n saturation: -0.6,\n multiplyColor: [\"#4444ff\", 0.2],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"journal-teal\": {\n baseStyle: \"journal\",\n colorEdit: {\n brightnessShift: 0.02,\n exposure: -1.2,\n hueRotation: -5,\n saturation: -0.35,\n multiplyColor: [\"#ff9900\", 0.05],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"journal-vintage\": {\n baseStyle: \"journal\",\n colorEdit: {\n brightness: 0.02,\n brightnessShift: 0.03,\n exposure: -1.4,\n saturation: -0.3,\n contrast: [0.2, 180],\n multiplyColor: [\"#ffc963\", 0.25],\n mixColor: [\"#ffc963\", 0.08],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-mild-green\": {\n baseStyle: \"spectre\",\n colorEdit: {\n saturation: -0.2,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-red\": {\n baseStyle: \"spectre\",\n colorEdit: {\n hueRotation: -120,\n saturation: -0.3,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-blue\": {\n baseStyle: \"spectre\",\n colorEdit: {\n hueRotation: 90,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-purple\": {\n baseStyle: \"spectre\",\n colorEdit: {\n hueRotation: 150,\n saturation: -0.3,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-pink\": {\n baseStyle: \"spectre\",\n colorEdit: {\n hueRotation: 190,\n saturation: -0.2,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-orange\": {\n baseStyle: \"spectre\",\n colorEdit: {\n hueRotation: 260,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-yellow\": {\n baseStyle: \"spectre\",\n colorEdit: {\n hueRotation: 290,\n saturation: 0.1,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-negative\": {\n baseStyle: \"spectre\",\n colorEdit: {\n negate: true,\n hueRotation: 180,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-negative-mild-green\": {\n baseStyle: \"spectre\",\n colorEdit: {\n negate: true,\n hueRotation: 180,\n saturation: -0.2,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-negative-red\": {\n baseStyle: \"spectre\",\n colorEdit: {\n negate: true,\n hueRotation: 60,\n saturation: -0.3,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-negative-blue\": {\n baseStyle: \"spectre\",\n colorEdit: {\n negate: true,\n hueRotation: 270,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-negative-purple\": {\n baseStyle: \"spectre\",\n colorEdit: {\n negate: true,\n hueRotation: -20,\n saturation: -0.3,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-negative-pink\": {\n baseStyle: \"spectre\",\n colorEdit: {\n negate: true,\n hueRotation: 10,\n saturation: -0.2,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-negative-orange\": {\n baseStyle: \"spectre\",\n colorEdit: {\n negate: true,\n hueRotation: 80,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-negative-yellow\": {\n baseStyle: \"spectre\",\n colorEdit: {\n negate: true,\n hueRotation: 110,\n saturation: 0.1,\n } as ColorEdit,\n } as PresetDefinition,\n} as const;\n\n/**\n * Preset styles are base styles on which is applied a set of \"colorEdit\"\n */\nexport type BasemapkitPresetStyle = keyof typeof presetStyles;\n\n/**\n * This is the full list of available styles, including base and preset styles\n */\nexport type BasemapkitStyle = BasemapkitBaseStyle | BasemapkitPresetStyle;\n\n/**\n * Options to modify colors of a base style\n */\nexport type ColorEdit = {\n /**\n * Invert the image color\n */\n negate?: boolean;\n\n /**\n * Ratio relative to current brightness.\n * Value in [-1, 1] but the range is actually open\n */\n brightness?: number;\n\n /**\n * Absolute brightness shift\n * Value in [-1, 1] but the range is actually open\n */\n brightnessShift?: number;\n\n /**\n * Exposure, like brightness but more preserving\n * Value in [-1, 1] but the range is actually open\n */\n exposure?: number;\n\n /**\n * Rotate the hue wheel\n * Value in [-180, 180] but the range is actually open\n */\n hueRotation?: number;\n\n /**\n * Modifiy color saturation\n * Value in [-1, 1] but the range is actually open\n */\n saturation?: number;\n\n /**\n * Multiply every color with the given one.\n */\n multiplyColor?: [\n /**\n * CSS color\n */\n string,\n /**\n * Mixing ratio in [0, 1], where 0 is fully the original color and 1 is fully the provided one.\n */\n number,\n ];\n\n /**\n * Mix every color with the given one.\n */\n mixColor?: [\n /**\n * CSS color\n */\n string,\n /**\n * Mixing ratio in [0, 1], where 0 is fully the original color and 1 is fully the one provided.\n */\n number,\n ];\n\n /**\n * Apply contrast, providing a contrast intensity and a mid (inflection) point\n */\n contrast?: [\n /**\n * Contrast intensity. Value in [-1, 1] but is actually an open range\n */\n number,\n /**\n * Color intensity mid point in the range [0, 255]\n */\n number,\n ];\n};\n\nexport type Lang =\n | \"ar\"\n | \"cs\"\n | \"bg\"\n | \"da\"\n | \"de\"\n | \"el\"\n | \"en\"\n | \"es\"\n | \"et\"\n | \"fa\"\n | \"fi\"\n | \"fr\"\n | \"ga\"\n | \"he\"\n | \"hi\"\n | \"hr\"\n | \"hu\"\n | \"id\"\n | \"it\"\n | \"ja\"\n | \"ko\"\n | \"lt\"\n | \"lv\"\n | \"ne\"\n | \"nl\"\n | \"no\"\n | \"mr\"\n | \"mt\"\n | \"pl\"\n | \"pt\"\n | \"ro\"\n | \"ru\"\n | \"sk\"\n | \"sl\"\n | \"sv\"\n | \"tr\"\n | \"uk\"\n | \"ur\"\n | \"vi\"\n | \"zh-Hans\"\n | \"zh-Hant\";\n\nexport type GetStyleOptions = {\n /**\n * The public URL of a pmtiles files. To use if sourcing tiles directly with\n * range-request using the `pmtiles`'s protocol. Alternatively, the option `tileJson` can be used and will take precedence.\n */\n pmtiles?: string;\n\n /**\n * The public URL to a tile JSON file. To use if classic z/x/y MVT tiles are served through\n * Maplibre's Martin or the pmtiles CLI. Will take precedence on the option `pmtiles` if both are provided.\n */\n tilejson?: string;\n\n /**\n * URL of the sprites\n */\n sprite?: string;\n\n /**\n * URL of the glyphs\n */\n glyphs: string;\n\n /**\n * Language to apply to the basemap. Leaving this undefined will set to auto mode and use the platform language of the end user.\n */\n lang?: Lang;\n\n /**\n * Language script to apply to the basemap\n */\n script?: string;\n\n /**\n * Points Of Interests are shown by default, requiring a sprite URL. Passing this option as `true` will remove the POIs layer\n * and make the `sprite` option unnecessary.\n */\n hidePOIs?: boolean;\n\n /**\n * Labels are shown by default, requiring a glyphs URL. Passing this options as `true` will remove the label layers and make the\n * `glyphs` option unnecessary.\n */\n hideLabels?: boolean;\n\n /**\n * Adding terrain to the style. This includes options for both hillshading and bumpy terrain\n */\n terrain?: {\n /**\n * The public URL of a pmtiles files for raster terrain, encoded on RGB channels of either PNG or WebP. To use if sourcing tiles directly with\n * range-request using the `pmtiles`'s protocol. Alternatively, the option `tileJson` can be used and will take precedence.\n */\n pmtiles?: string;\n\n /**\n * The public URL to a tile JSON file for raster terrain tiles, encoded on RGB channels of either PNG or WebP. To use if classic z/x/y MVT tiles are served through\n * Maplibre's Martin or the pmtiles CLI. Will take precedence on the option `pmtiles` if both are provided.\n */\n tilejson?: string;\n\n /**\n * Encoding of the terrain raster data. Default: \"mapbox\"\n */\n encoding?: \"mapbox\" | \"terrarium\";\n\n /**\n * Enable or disable the hillshading. Enabled by default if one of the source options `terrain.pmtiles` or `terrain.tilejson` is provided.\n * It cannot be enabled if none of the source option is provided.\n */\n hillshading?: boolean;\n\n /**\n * The terrain exaggeration is disabled by default, making the terrain flat even if one of the source options `terrain.pmtiles` or `terrain.tilejson` is provided.\n * A value of `1` produces at-scale realistic terrain elevation.\n * It cannot be enabled if none of the source option is provided.\n */\n exaggeration?: number;\n };\n};\n\n/**\n * Identifier of the terrain source within the Basemapkit source definition\n */\nexport const BASEMAPKIT_BASEMAP_SOURCE_ID = \"__bmk_bm_src\";\n\n/**\n * Identifier of the terrain source within the Basemapkit style definition.\n */\nexport const BASEMAPKIT_TERRAIN_SOURCE_ID = \"__bmk_tr_src\";\n\n/**\n * Options relative to building a style\n */\nexport type BuildStyleOptions = GetStyleOptions & {\n /**\n * Name of the base style to start from\n */\n baseStyleName: BasemapkitBaseStyle;\n\n /**\n * Optional color modification to apply to the provided style\n */\n colorEdit?: ColorEdit;\n};\n\n/**\n * Returns the list of styles available.\n */\nexport function getStyleList(): string[] {\n const list = [];\n\n for (const baseStyle of Object.keys(baseStyles)) {\n list.push(baseStyle);\n\n const presetsForBaseStyle = Object.entries(presetStyles)\n .filter(([_, preset]) => preset.baseStyle === baseStyle)\n .map(([presetId]) => presetId);\n\n list.push(...presetsForBaseStyle);\n }\n\n return list;\n}\n\n/**\n * Get a style.\n */\nexport function getStyle(styleName: BasemapkitStyle, options: GetStyleOptions): StyleSpecification {\n // Check is style is raw\n if (styleName in baseStyles) {\n return buildStyle({\n ...options,\n baseStyleName: styleName as BasemapkitBaseStyle,\n });\n }\n\n // Or if it's a preset\n if (styleName in presetStyles) {\n const presetInfo = presetStyles[styleName as BasemapkitPresetStyle];\n return buildStyle({\n ...options,\n baseStyleName: presetInfo.baseStyle,\n colorEdit: presetInfo.colorEdit,\n });\n }\n\n throw new Error(`The style \"${styleName}\" does not exist as a base style, nor as a preset.`);\n}\n\n/**\n * Build your own style, using one of the base style as starting point.\n */\nexport function buildStyle(options: BuildStyleOptions): StyleSpecification {\n let countryTextField: string;\n let otherTranslatedTextField: string;\n const hideLabels = options.hideLabels ?? false;\n\n // Not displaying any label\n if (hideLabels) {\n countryTextField = '\"\"';\n otherTranslatedTextField = '\"\"';\n }\n\n // Displaying a label that is supported\n else if (typeof options.lang === \"string\" && isLanguageSupported(options.lang, options.script)) {\n countryTextField = JSON.stringify(get_country_name(options.lang, options.script));\n otherTranslatedTextField = JSON.stringify(get_multiline_name(options.lang, options.script));\n }\n\n // Not providing any language: using platform language\n else {\n const lang = getDefaultLanguage();\n countryTextField = JSON.stringify(get_country_name(lang));\n otherTranslatedTextField = JSON.stringify(get_multiline_name(lang));\n }\n\n if (!(options.baseStyleName in baseStyles)) {\n throw new Error(`The base style ${options.baseStyleName} does not exist.`);\n }\n\n const baseStyleLayers = baseStyles[options.baseStyleName as keyof typeof baseStyles];\n\n const translatedLayersStr = baseStyleLayers\n .replaceAll(\"<BMK_BM_SRC>\", BASEMAPKIT_BASEMAP_SOURCE_ID)\n .replaceAll(\"<BMK_TR_SRC>\", BASEMAPKIT_TERRAIN_SOURCE_ID)\n .replaceAll('\"<LANG>\"', otherTranslatedTextField)\n .replaceAll('\"<LANG_COUNTRY>\"', countryTextField);\n\n let sourceUrl: string;\n if (typeof options.tilejson === \"string\") {\n sourceUrl = options.tilejson;\n } else if (typeof options.pmtiles === \"string\") {\n sourceUrl = `pmtiles://${options.pmtiles}`;\n } else {\n throw new Error(`At least one option of \"tilejson\" or \"pmtiles\" must be provided as data source.`);\n }\n\n let terrainSourceUrl: string = \"\";\n let hillshading = false;\n let terrainEncoding = \"\";\n let terrainExaggeration = 0;\n if (options.terrain) {\n if (typeof options.terrain.tilejson === \"string\") {\n terrainSourceUrl = options.terrain.tilejson;\n } else if (typeof options.terrain.pmtiles === \"string\") {\n terrainSourceUrl = `pmtiles://${options.terrain.pmtiles}`;\n }\n\n if (terrainSourceUrl) {\n hillshading = options.terrain.hillshading ?? true;\n terrainExaggeration = options.terrain.exaggeration ?? 0;\n }\n\n terrainEncoding = options.terrain.encoding ?? \"mapbox\";\n }\n\n let layers = JSON.parse(translatedLayersStr) as unknown as LayerSpecification[];\n const hidePOIs = options.hidePOIs ?? false;\n\n // Remove hillshader layer if unnecessary\n if (!hillshading) {\n layers = layers.filter((l) => l.id !== \"hillshader\");\n }\n\n // Removing the POIs layer\n if (hidePOIs) {\n layers = layers.filter((l) => l.id !== \"pois\");\n }\n\n if (hideLabels) {\n // Keeping the POI layer, yet removing the text field\n const poiLayers = layers.filter((l) => l.id === \"pois\");\n if (poiLayers.length) {\n const poiLayer = poiLayers[0] as SymbolLayerSpecification;\n if (poiLayer.layout !== undefined) {\n const layout = poiLayer.layout;\n if (layout[\"text-field\"] !== undefined) {\n layout[\"text-field\"] = \"\";\n }\n }\n }\n\n layers = layers.filter((layer) => {\n if (layer.id === \"pois\") {\n return true;\n }\n\n if (layer.type !== \"symbol\") {\n return true;\n }\n\n if (layer.layout !== undefined) {\n const layout = layer.layout;\n if (layout[\"text-field\"] !== undefined) {\n return false;\n }\n }\n return true;\n });\n }\n\n const colorOptions = options.colorEdit ?? {};\n const brightness = colorOptions.brightness ?? 0;\n const hueRotation = colorOptions.hueRotation ?? 0;\n const saturation = colorOptions.saturation ?? 0;\n const negate = colorOptions.negate ?? false;\n const brightnessShift = colorOptions.brightnessShift ?? 0;\n const exposure = colorOptions.exposure ?? 0;\n\n const shouldApplyColorTransform =\n brightness !== 0 ||\n hueRotation !== 0 ||\n saturation !== 0 ||\n negate === true ||\n colorOptions.multiplyColor !== undefined ||\n colorOptions.mixColor !== undefined ||\n brightnessShift !== 0 ||\n colorOptions.contrast !== undefined ||\n exposure !== 0;\n\n if (shouldApplyColorTransform) {\n findColor(layers, (color: string) => {\n // Using the Color lib for saturation and hue rotation\n let layerColor = Color(color);\n\n if (negate) {\n layerColor = layerColor.negate();\n }\n\n if (hueRotation !== 0) {\n layerColor = layerColor.rotate(hueRotation);\n }\n\n if (saturation !== 0) {\n layerColor = layerColor.saturate(saturation);\n }\n\n if (brightness > 0) {\n layerColor = layerColor.lighten(brightness);\n } else if (brightness < 0) {\n layerColor = layerColor.darken(brightness * -1);\n }\n\n if (brightnessShift !== 0) {\n const hsl = layerColor.hsl().array();\n hsl[2] += brightnessShift * 100;\n layerColor = Color.hsl(...hsl);\n }\n\n if (\n Array.isArray(colorOptions.mixColor) &&\n typeof colorOptions.mixColor[0] === \"string\" &&\n typeof colorOptions.mixColor[1] === \"number\" &&\n colorOptions.mixColor[1] !== 0\n ) {\n layerColor = layerColor.mix(Color(colorOptions.mixColor[0]), colorOptions.mixColor[1]);\n }\n\n const rgbColorInstance = layerColor.rgb();\n const alpha = rgbColorInstance.alpha();\n let rgbArr = [rgbColorInstance.red(), rgbColorInstance.green(), rgbColorInstance.blue()] as RGBArray;\n\n // Apply exposure\n if (exposure !== 0) {\n rgbArr = applyBrightnessRGB(rgbArr, exposure);\n }\n\n // Apply contrast\n if (\n Array.isArray(colorOptions.contrast) &&\n typeof colorOptions.contrast[0] === \"number\" &&\n typeof colorOptions.contrast[1] === \"number\" &&\n colorOptions.contrast[0] !== 0\n ) {\n rgbArr = applyContrastRGB(rgbArr, colorOptions.contrast[0], colorOptions.contrast[1]);\n }\n\n // Apply color multiplication\n if (\n Array.isArray(colorOptions.multiplyColor) &&\n typeof colorOptions.multiplyColor[0] === \"string\" &&\n typeof colorOptions.multiplyColor[1] === \"number\" &&\n colorOptions.multiplyColor[1] !== 0\n ) {\n const multiplyColor = Color(colorOptions.multiplyColor[0]);\n rgbArr = applyMultiplicationRGB(\n rgbArr,\n [multiplyColor.red(), multiplyColor.green(), multiplyColor.blue()],\n colorOptions.multiplyColor[1],\n );\n }\n\n // Back to Color lib format\n const outputColor = Color({ r: rgbArr[0], g: rgbArr[1], b: rgbArr[2], alpha: alpha });\n\n if (color.startsWith(\"rgba(\") || color.startsWith(\"rgb(\")) {\n return outputColor.rgb().toString();\n }\n\n if (color.startsWith(\"hsl(\") || color.startsWith(\"hsla(\")) {\n return outputColor.hsl().toString();\n }\n\n return outputColor.hexa();\n });\n }\n\n const style: StyleSpecification = {\n version: 8,\n ...(options.sprite && !hidePOIs ? { sprite: options.sprite } : {}),\n glyphs: options.glyphs,\n sources: {\n [BASEMAPKIT_BASEMAP_SOURCE_ID]: {\n type: \"vector\",\n url: sourceUrl,\n attribution: \"<a href='https://openstreetmap.org/copyright'>© OpenStreetMap Contributors</a>\",\n },\n\n // Add the terrain source if terrain source is provided and the hillshading\n // or terrain is enabled.\n ...(terrainSourceUrl && (terrainExaggeration || hillshading)\n ? {\n [BASEMAPKIT_TERRAIN_SOURCE_ID]: {\n url: terrainSourceUrl,\n type: \"raster-dem\",\n encoding: terrainEncoding,\n } as RasterDEMSourceSpecification,\n }\n : {}),\n },\n layers: layers,\n projection: { type: [\"interpolate\", [\"linear\"], [\"zoom\"], 7, \"vertical-perspective\", 8, \"mercator\"] },\n\n // Add the terrain if the terrain source is provided and the exaggeration is superior to 0\n ...(terrainSourceUrl && terrainExaggeration\n ? {\n terrain: {\n source: BASEMAPKIT_TERRAIN_SOURCE_ID,\n exaggeration: terrainExaggeration,\n },\n }\n : {}),\n };\n\n return style;\n}\n\n/**\n * Swap two layers within a style. This creates a clone\n */\nexport function swapLayers(\n /**\n * The ID of a layer within the provided style\n */\n layerA: string, \n /**\n * The ID of another layer within the provided style\n */\n layerB: string, \n \n /**\n * Style to make a copy off\n */\n style: StyleSpecification\n): StyleSpecification {\n const layerIds = style.layers.map((layer) => layer.id);\n\n if (layerA === layerB) {\n throw new Error(\"The provided layers must have different IDs.\")\n }\n\n const indexLayerA = layerIds.indexOf(layerA);\n const indexLayerB = layerIds.indexOf(layerB);\n\n if (indexLayerA === -1 || indexLayerB === -1) {\n throw new Error(`Cannot swap layers ${layerA} and ${layerB} as both must exist in the provided style.`);\n }\n\n const styleClone = structuredClone(style);\n const contentLayerA = styleClone.layers[indexLayerA];\n const contentLayerB = styleClone.layers[indexLayerB];\n styleClone.layers.splice(indexLayerA, 1, contentLayerB);\n styleClone.layers.splice(indexLayerB, 1, contentLayerA);\n return styleClone;\n}\n\n/**\n * Edit the opacity of a layer, with a number of an advanced expression.\n * This creates a clone of the style object.\n */\nexport function setLayerOpacity(layerId: string, opacity: PropertyValueSpecification<number>, style: StyleSpecification): StyleSpecification {\n const layerIds = style.layers.map((layer) => layer.id);\n const layerIndex = layerIds.indexOf(layerId);\n\n if (layerIndex === -1) {\n throw new Error(`The layer with ID ${layerId} does not exist in the provided style.`)\n }\n\n const layerClone = structuredClone(style);\n const layerData = layerClone.layers[layerIndex];\n const layerType = layerData.type;\n\n if (!(layerData.paint && typeof layerData.paint === \"object\")) {\n layerData.paint = {};\n }\n\n switch(layerType) {\n case \"fill\":\n layerData.paint[\"fill-opacity\"] = opacity;\n break;\n\n case \"line\":\n layerData.paint[\"line-opacity\"] = opacity;\n break;\n\n case \"symbol\":\n layerData.paint[\"icon-opacity\"] = opacity;\n layerData.paint[\"text-opacity\"] = opacity;\n break;\n\n case \"circle\":\n layerData.paint[\"circle-opacity\"] = opacity;\n layerData.paint[\"circle-stroke-opacity\"] = opacity;\n break;\n\n case \"heatmap\":\n layerData.paint[\"heatmap-opacity\"] = opacity;\n break;\n\n case \"fill-extrusion\":\n layerData.paint[\"fill-extrusion-opacity\"] = opacity;\n break;\n\n case \"raster\":\n layerData.paint[\"raster-opacity\"] = opacity;\n break;\n\n case \"hillshade\":\n layerData.paint[\"hillshade-exaggeration\"] = opacity;\n break;\n\n case \"color-relief\":\n layerData.paint[\"color-relief-opacity\"] = opacity;\n break;\n\n case \"background\":\n layerData.paint[\"background-opacity\"] = opacity;\n break;\n }\n\n return layerClone;\n}"],"names":["isColorDescription","elem","findColor","data","modifier","dataAsRecord","keys","k","applyBrightnessSingle","input","brightness","normalized","adjusted","applyBrightnessRGB","chan","applyContrastSingle","contrast","midpoint","boundedContrast","steepness","applyContrastRGB","applyMultiplicationSingle","input1","input2","ratio","applyMultiplicationRGB","_chan","i","avenueLayersRaw","bureauLayersRaw","journalLayersRaw","spectreLayersRaw","monochromeLayersRaw","isLanguageSupported","lang","script","candidates","language_script_pairs","l","getDefaultLanguage","systemLang","baseStyles","presetStyles","BASEMAPKIT_BASEMAP_SOURCE_ID","BASEMAPKIT_TERRAIN_SOURCE_ID","getStyleList","list","baseStyle","presetsForBaseStyle","_","preset","presetId","getStyle","styleName","options","buildStyle","presetInfo","countryTextField","otherTranslatedTextField","hideLabels","get_country_name","get_multiline_name","translatedLayersStr","sourceUrl","terrainSourceUrl","hillshading","terrainEncoding","terrainExaggeration","layers","hidePOIs","poiLayers","poiLayer","layout","layer","colorOptions","hueRotation","saturation","negate","brightnessShift","exposure","color","layerColor","Color","hsl","rgbColorInstance","alpha","rgbArr","multiplyColor","outputColor","swapLayers","layerA","layerB","style","layerIds","indexLayerA","indexLayerB","styleClone","contentLayerA","contentLayerB","setLayerOpacity","layerId","opacity","layerIndex","layerClone","layerData","layerType"],"mappings":"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;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ICAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ICAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ICAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ICAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;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"}
1
+ {"version":3,"file":"basemapkit.js","sources":["../src/lib/colorchange.ts","../src/lib/assets/avenue-layers-raw.json?raw","../src/lib/assets/bureau-layers-raw.json?raw","../src/lib/assets/journal-layers-raw.json?raw","../src/lib/assets/spectre-layers-raw.json?raw","../src/lib/assets/monochrome-layers-raw.json?raw","../src/lib/language.ts","../src/lib/basemapkit.ts"],"sourcesContent":["export type RGBArray = [number, number, number];\n\nfunction isColorDescription(elem: unknown): boolean {\n if (\n typeof elem === \"string\" &&\n (elem.startsWith(\"#\") ||\n elem.startsWith(\"rgb(\") ||\n elem.startsWith(\"rgba(\") ||\n elem.startsWith(\"hsl(\") ||\n elem.startsWith(\"hwb(\"))\n ) {\n return true;\n }\n\n return false;\n}\n\nexport function findColor(data: unknown, modifier: (color: string) => string) {\n // We deal with strings but only from their parent perspective\n // so that we can change the value from the ref\n if (\n typeof data === \"string\" ||\n typeof data === \"number\" ||\n typeof data === \"boolean\" ||\n data === null ||\n data === undefined\n ) {\n return;\n }\n\n if (Array.isArray(data)) {\n for (let i = 0; i < data.length; i += 1) {\n const elem = data[i];\n\n if (isColorDescription(elem)) {\n data[i] = modifier(elem);\n continue;\n }\n findColor(elem, modifier);\n }\n } else if (typeof data === \"object\") {\n const dataAsRecord = data as Record<string, unknown>;\n const keys = Object.keys(data);\n\n for (const k of keys) {\n const elem = dataAsRecord[k];\n\n if (isColorDescription(elem)) {\n dataAsRecord[k] = modifier(elem as string);\n continue;\n }\n\n findColor(elem, modifier);\n }\n }\n}\n\nexport function applyBrightnessSingle(input: number, brightness: number): number {\n const normalized = input / 255;\n const adjusted = normalized + (1 - normalized) * normalized * brightness;\n return Math.max(0, Math.min(255, adjusted * 255));\n}\n\nexport function applyBrightnessRGB(input: RGBArray, brightness: number): RGBArray {\n return input.map((chan) => applyBrightnessSingle(chan, brightness)) as RGBArray;\n}\n\nexport function applyContrastSingle(input: number, contrast: number, midpoint = 127): number {\n const boundedContrast = Math.max(-0.99, Math.min(0.99, contrast));\n const steepness = boundedContrast < 0 ? boundedContrast + 1 : 1 / (1 - boundedContrast);\n const adjusted = midpoint + steepness * (input - midpoint);\n\n // Clamp to valid range\n return Math.round(Math.max(0, Math.min(255, adjusted)));\n}\n\nexport function applyContrastRGB(input: RGBArray, contrast: number, midpoint = 127): RGBArray {\n return input.map((chan) => applyContrastSingle(chan, contrast, midpoint)) as RGBArray;\n}\n\nexport function applyMultiplicationSingle(input1: number, input2: number, ratio = 1): number {\n return 255 * (input1 / 255) * (input2 / 255) * ratio + (input1 / 255) * (1 - ratio) * 255;\n}\n\nexport function applyMultiplicationRGB(input1: RGBArray, input2: RGBArray, ratio = 1): RGBArray {\n return input1.map((_chan, i) => applyMultiplicationSingle(input1[i], input2[i], ratio)) as RGBArray;\n}\n","export default \"[\\n {\\n \\\"id\\\": \\\"background\\\",\\n \\\"type\\\": \\\"background\\\",\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"background-color\\\": \\\"rgb(135, 199, 236)\\\"}\\n },\\n {\\n \\\"id\\\": \\\"earth\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"earth\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"$type\\\", \\\"Polygon\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#fcf5e3\\\"}\\n },\\n {\\n \\\"id\\\": \\\"landcover\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landcover\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\n \\\"in\\\",\\n \\\"kind\\\",\\n \\\"grassland\\\",\\n \\\"barren\\\",\\n \\\"urban_area\\\",\\n \\\"farmland\\\",\\n \\\"glacier\\\",\\n \\\"scrub\\\"\\n ]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"fill-color\\\": [\\n \\\"match\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n \\\"grassland\\\",\\n \\\"#cee6b5\\\",\\n \\\"barren\\\",\\n \\\"#fff0d4\\\",\\n \\\"urban_area\\\",\\n \\\"rgba(230, 230, 230, 1)\\\",\\n \\\"farmland\\\",\\n \\\"rgba(192, 222, 160, 0.3)\\\",\\n \\\"glacier\\\",\\n \\\"#e6ffff\\\",\\n \\\"scrub\\\",\\n \\\"#cee6b5\\\",\\n \\\"#ff0000\\\"\\n ],\\n \\\"fill-opacity\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 0,\\n 1,\\n 7,\\n 0.8,\\n 8,\\n 0\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_residential\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"residential\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"fill-opacity\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 8, 0, 12, 1],\\n \\\"fill-color\\\": \\\"#f7f3e9\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_urban_green\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"allotments\\\", \\\"village_green\\\", \\\"playground\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#9cd3b4\\\", \\\"fill-opacity\\\": 0.7}\\n },\\n {\\n \\\"id\\\": \\\"landuse-sand\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"sand\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"fill-opacity\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 0, 1, 20, 0],\\n \\\"fill-color\\\": \\\"rgba(240, 226, 199, 1)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_bare_rock\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"in\\\", \\\"kind\\\", \\\"bare_rock\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"rgb(221, 226, 226)\\\"}\\n },\\n {\\n \\\"id\\\": \\\"landuse_park\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\n \\\"in\\\",\\n \\\"kind\\\",\\n \\\"meadow\\\",\\n \\\"park\\\",\\n \\\"glacier\\\",\\n \\\"cemetery\\\",\\n \\\"golf_course\\\",\\n \\\"scrub\\\",\\n \\\"grassland\\\",\\n \\\"grass\\\",\\n \\\"naval_base\\\",\\n \\\"airfield\\\"\\n ]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"fill-opacity\\\": 1,\\n \\\"fill-color\\\": [\\n \\\"case\\\",\\n [\\\"in\\\", [\\\"get\\\", \\\"kind\\\"], [\\\"literal\\\", [\\\"grass\\\"]]],\\n \\\"#a5e87d\\\",\\n [\\\"in\\\", [\\\"get\\\", \\\"kind\\\"], [\\\"literal\\\", [\\\"park\\\", \\\"golf_course\\\"]]],\\n \\\"#b6e996\\\",\\n [\\\"in\\\", [\\\"get\\\", \\\"kind\\\"], [\\\"literal\\\", [\\\"park\\\", \\\"meadow\\\"]]],\\n \\\"#a6e085\\\",\\n [\\\"in\\\", [\\\"get\\\", \\\"kind\\\"], [\\\"literal\\\", [\\\"scrub\\\", \\\"grassland\\\"]]],\\n \\\"#cee6b5\\\",\\n [\\\"in\\\", [\\\"get\\\", \\\"kind\\\"], [\\\"literal\\\", [\\\"glacier\\\"]]],\\n \\\"#e6ffff\\\",\\n [\\\"in\\\", [\\\"get\\\", \\\"kind\\\"], [\\\"literal\\\", [\\\"cemetery\\\"]]],\\n \\\"#ccdbc5\\\",\\n [\\\"in\\\", [\\\"get\\\", \\\"kind\\\"], [\\\"literal\\\", [\\\"sand\\\"]]],\\n \\\"#fff3d5\\\",\\n [\\n \\\"in\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n [\\\"literal\\\", [\\\"military\\\", \\\"naval_base\\\", \\\"airfield\\\"]]\\n ],\\n \\\"#d1dede\\\",\\n \\\"#e2dfda\\\"\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_farmland\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"farmland\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"rgba(185, 255, 152, 1)\\\", \\\"fill-opacity\\\": 0.2}\\n },\\n {\\n \\\"id\\\": \\\"landuse_pitch\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"pitch\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"rgba(81, 201, 70, 1)\\\", \\\"fill-opacity\\\": 0.2}\\n },\\n {\\n \\\"id\\\": \\\"landuse_military\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"military\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"rgba(145, 145, 145, 1)\\\", \\\"fill-opacity\\\": 0.2}\\n },\\n {\\n \\\"id\\\": \\\"landuse_wood-forest\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"in\\\", \\\"kind\\\", \\\"forest\\\", \\\"wood\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"fill-opacity\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 0, 1, 7, 1],\\n \\\"fill-color\\\": \\\"rgb(184, 224, 173)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_hospital\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"hospital\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#e4dad9\\\"}\\n },\\n {\\n \\\"id\\\": \\\"landuse_industrial\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"industrial\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#d1dde1\\\"}\\n },\\n {\\n \\\"id\\\": \\\"landuse_school\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"school\\\", \\\"university\\\", \\\"college\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#e4ded7\\\"}\\n },\\n {\\n \\\"id\\\": \\\"landuse_zoo\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"zoo\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#c6dcdc\\\"}\\n },\\n {\\n \\\"id\\\": \\\"landuse_aerodrome\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"aerodrome\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#dadbdf\\\"}\\n },\\n {\\n \\\"id\\\": \\\"roads_runway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"runway\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e9e9ed\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 10,\\n 0,\\n 12,\\n 4,\\n 18,\\n 30\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_taxiway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"taxiway\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e9e9ed\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 15,\\n 6\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_runway\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"any\\\", [\\\"in\\\", \\\"kind\\\", \\\"runway\\\", \\\"taxiway\\\"]],\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#e9e9ed\\\"}\\n },\\n {\\n \\\"id\\\": \\\"hillshader\\\",\\n \\\"type\\\": \\\"hillshade\\\",\\n \\\"source\\\": \\\"<BMK_TR_SRC>\\\",\\n \\\"paint\\\": {\\n \\\"hillshade-illumination-anchor\\\": \\\"viewport\\\",\\n \\\"hillshade-exaggeration\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 0, 0.1,\\n 4, 0.2,\\n 7, 0.3,\\n 10, 0.4,\\n 15, 0.4,\\n 17, 0.2\\n ],\\n \\\"hillshade-shadow-color\\\": \\\"#123161\\\",\\n \\\"hillshade-highlight-color\\\": \\\"#fff0b3\\\",\\n \\\"hillshade-accent-color\\\": \\\"rgba(0, 184, 255, 0.65)\\\",\\n \\\"hillshade-illumination-direction\\\": [\\n \\\"literal\\\",\\n 310\\n ]\\n },\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"}\\n },\\n {\\n \\\"id\\\": \\\"water\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"$type\\\", \\\"Polygon\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"fill-color\\\": \\\"rgb(135, 199, 236)\\\",\\n \\\"fill-opacity\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 0, 0.4,\\n 5, 0.75,\\n 8, 0.95\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_stream\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"minzoom\\\": 14,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"stream\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"line-width\\\": 0.5, \\\"line-color\\\": \\\"rgba(18, 157, 222, 1)\\\"}\\n },\\n {\\n \\\"id\\\": \\\"landuse_beach\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"beach\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#fff0d4\\\"}\\n },\\n {\\n \\\"id\\\": \\\"water_river\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"minzoom\\\": 9,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"river\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 9,\\n 0,\\n 9.5,\\n 1,\\n 18,\\n 12\\n ],\\n \\\"line-color\\\": \\\"#C4EAFF\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_wetland\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"wetland\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"rgba(43, 63, 131, 0.07)\\\"}\\n },\\n {\\n \\\"id\\\": \\\"landuse_nature_reserve_bg\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"minzoom\\\": 8,\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"nature_reserve\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 8,\\n 5,\\n 15,\\n 20,\\n 18,\\n 30\\n ],\\n \\\"line-color\\\": \\\"rgba(5, 109, 0, 0.19)\\\",\\n \\\"line-opacity\\\": {\\\"stops\\\": [[8, 0], [9, 0.4]]}\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_nature_reserve\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"minzoom\\\": 8,\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"nature_reserve\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 8,\\n 1,\\n 15,\\n 3,\\n 18,\\n 5\\n ],\\n \\\"line-color\\\": \\\"rgba(5, 109, 0, 0.19)\\\",\\n \\\"line-opacity\\\": {\\\"stops\\\": [[8, 0], [9, 1]]}\\n }\\n },\\n {\\n \\\"id\\\": \\\"ferry\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"ferry\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [1, 1, 1, 1, 1, 3, 3, 3, 3, 3, 3, 3],\\n \\\"line-opacity\\\": 0.5,\\n \\\"line-color\\\": \\\"rgba(76, 154, 205, 1)\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1,\\n 18,\\n 3\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_pedestrian\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"pedestrian\\\", \\\"dam\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#e3e0d4\\\"}\\n },\\n {\\n \\\"id\\\": \\\"landuse_pier\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"pier\\\"],\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#e0e0e0\\\"}\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_other_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_minor_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-dasharray\\\": [3, 2],\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12,\\n 0,\\n 12.5,\\n 1\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_link_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"has\\\", \\\"is_link\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-dasharray\\\": [3, 2],\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12,\\n 0,\\n 12.5,\\n 1\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_major_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"major_road\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-dasharray\\\": [3, 2],\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 7,\\n 0,\\n 7.5,\\n 0.5,\\n 18,\\n 13\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 9,\\n 0,\\n 9.5,\\n 1\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_highway_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-dasharray\\\": [6, 0.5],\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 3.5,\\n 0.5,\\n 18,\\n 15\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 7,\\n 0,\\n 7.5,\\n 1,\\n 20,\\n 15\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_other\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-dasharray\\\": [4.5, 0.5],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"has\\\", \\\"is_link\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"==\\\", \\\"kind\\\", \\\"major_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0,\\n 12,\\n 1.6,\\n 15,\\n 3,\\n 18,\\n 13\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"has\\\", \\\"is_tunnel\\\"],\\n [\\\"==\\\", [\\\"get\\\", \\\"kind\\\"], \\\"highway\\\"],\\n [\\\"!\\\", [\\\"has\\\", \\\"is_link\\\"]]\\n ],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"buildings\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"buildings\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"building\\\", \\\"building_part\\\"],\\n \\\"paint\\\": {\\\"fill-opacity\\\": 0.3, \\\"fill-color\\\": \\\"#c2beba\\\"}\\n },\\n {\\n \\\"id\\\": \\\"roads_pier\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"pier\\\"],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12,\\n 0,\\n 12.5,\\n 0.5,\\n 20,\\n 16\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_minor_service_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"],\\n [\\\"==\\\", \\\"kind_detail\\\", \\\"service\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 18,\\n 8\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 0.8\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_minor_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"],\\n [\\\"!=\\\", \\\"kind_detail\\\", \\\"service\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12,\\n 0,\\n 12.5,\\n 1,\\n 17,\\n 1.25\\n ],\\n \\\"line-color\\\": \\\"#D1CFC7\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_link_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\\"has\\\", \\\"is_link\\\"],\\n \\\"paint\\\": {\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1.5\\n ],\\n \\\"line-color\\\": \\\"#D1CFC7\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_major_casing_late\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"major_road\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0,\\n 12,\\n 1.6,\\n 15,\\n 3,\\n 18,\\n 13\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 9,\\n 0,\\n 9.5,\\n 1,\\n 15,\\n 1.5\\n ],\\n \\\"line-color\\\": \\\"#D1CFC7\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_highway_casing_late\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 3.5,\\n 0.5,\\n 18,\\n 15\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 7,\\n 0,\\n 7.5,\\n 1,\\n 20,\\n 15\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_other-bg\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"],\\n [\\\"!=\\\", \\\"kind_detail\\\", \\\"pier\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0.75,\\n 20,\\n 6\\n ],\\n \\\"line-color\\\": \\\"rgba(0, 0, 0, 0.05)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_other\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"],\\n [\\\"!=\\\", \\\"kind_detail\\\", \\\"pier\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [3, 1.5],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 1.5,\\n 20,\\n 9\\n ],\\n \\\"line-color\\\": \\\"rgba(249, 247, 241, 0.6)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"has\\\", \\\"is_link\\\"],\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-color\\\": \\\"#E7E5DE\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_minor_service\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"],\\n [\\\"==\\\", \\\"kind_detail\\\", \\\"service\\\"]\\n ],\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 18,\\n 8\\n ],\\n \\\"line-color\\\": \\\"#E7E5DE\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"],\\n [\\\"!=\\\", \\\"kind_detail\\\", \\\"service\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ],\\n \\\"line-color\\\": \\\"#E7E5DE\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_major_casing_early2\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"maxzoom\\\": 12,\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"in\\\", \\\"kind\\\", \\\"major_road\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#D1CFC7\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 3.5,\\n 0.5,\\n 18,\\n 15\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.3,\\n 12,\\n 1\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"in\\\", \\\"kind\\\", \\\"major_road\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-color\\\": \\\"#E7E5DE\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_highway_casing_early\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"maxzoom\\\": 12,\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"rgba(214, 213, 213, 1)\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 3.5,\\n 0.5,\\n 18,\\n 15\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.8,\\n 12,\\n 2.2,\\n 15,\\n 5,\\n 18,\\n 15\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-color\\\": \\\"#E7E5DE\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_rail\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"rail\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [0.3, 0.75],\\n \\\"line-opacity\\\": 0.5,\\n \\\"line-color\\\": \\\"rgba(97, 116, 129, 1)\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 0.15,\\n 18,\\n 6\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"boundaries_country_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"boundaries\\\",\\n \\\"minzoom\\\": 3,\\n \\\"filter\\\": [\\\"<=\\\", \\\"kind_detail\\\", 2],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"rgba(0, 0, 0, 1)\\\",\\n \\\"line-opacity\\\": 0.1,\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 0,\\n 2,\\n 8,\\n 7,\\n 15,\\n 20\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"boundaries_country\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"boundaries\\\",\\n \\\"filter\\\": [\\\"<=\\\", \\\"kind_detail\\\", 2],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"rgba(0, 0, 0, 1)\\\",\\n \\\"line-dasharray\\\": [\\n \\\"step\\\",\\n [\\\"zoom\\\"],\\n [\\\"literal\\\", [2]],\\n 4,\\n [\\\"literal\\\", [2, 1]]\\n ],\\n \\\"line-opacity\\\": 0.3,\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 0,\\n 1,\\n 8,\\n 1.5,\\n 15,\\n 3\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"boundaries\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"boundaries\\\",\\n \\\"filter\\\": [\\\">\\\", \\\"kind_detail\\\", 2],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#adadad\\\",\\n \\\"line-width\\\": 0.4,\\n \\\"line-dasharray\\\": [\\n \\\"step\\\",\\n [\\\"zoom\\\"],\\n [\\\"literal\\\", [2]],\\n 4,\\n [\\\"literal\\\", [2, 1]]\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_other_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_link_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"has\\\", \\\"is_link\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12,\\n 0,\\n 12.5,\\n 1.5\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_minor_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 0.8\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_major_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"==\\\", \\\"kind\\\", \\\"major_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 7,\\n 0,\\n 7.5,\\n 0.5,\\n 18,\\n 10\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 9,\\n 0,\\n 9.5,\\n 1.5\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_other\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ebebeb\\\",\\n \\\"line-dasharray\\\": [2, 1],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"has\\\", \\\"is_link\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"==\\\", \\\"kind\\\", \\\"major_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#f5f5f5\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0,\\n 12,\\n 1.6,\\n 15,\\n 3,\\n 18,\\n 13\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"cycleway_bg\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"any\\\", [\\\"==\\\", \\\"kind_detail\\\", \\\"cycleway\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12.5,\\n 0.9,\\n 15,\\n 1.9,\\n 18,\\n 3.9\\n ],\\n \\\"line-dasharray\\\": [2],\\n \\\"line-color\\\": \\\"#ffffff\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"cycleway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"any\\\", [\\\"==\\\", \\\"kind_detail\\\", \\\"cycleway\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12.5,\\n 1,\\n 15,\\n 2,\\n 18,\\n 4\\n ],\\n \\\"line-color\\\": \\\"rgba(20, 116, 0, 0.7)\\\",\\n \\\"line-dasharray\\\": [3, 1.5]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_highway_casing\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-gap-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 3.5,\\n 0.5,\\n 18,\\n 15\\n ],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 7,\\n 0,\\n 7.5,\\n 1,\\n 20,\\n 15\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"address_label\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"buildings\\\",\\n \\\"minzoom\\\": 18,\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"address\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-placement\\\": \\\"point\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": [\\\"get\\\", \\\"addr_housenumber\\\"],\\n \\\"text-size\\\": 12\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"#91888b\\\",\\n \\\"text-halo-color\\\": \\\"#ffffff\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_waterway_label\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"river\\\", \\\"stream\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"text-letter-spacing\\\": 0.2\\n },\\n \\\"paint\\\": {\\\"text-color\\\": \\\"rgba(13, 117, 143, 0.64)\\\", \\\"text-halo-width\\\": 1}\\n },\\n {\\n \\\"id\\\": \\\"roads_labels_minor\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 15,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"minor_road\\\", \\\"other\\\", \\\"path\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"min_zoom\\\"],\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(94, 88, 90, 1)\\\",\\n \\\"text-halo-color\\\": \\\"#ffffff\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_label_ocean\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"sea\\\", \\\"ocean\\\", \\\"bay\\\", \\\"strait\\\", \\\"fjord\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 1, 12, 10, 12],\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 9,\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(4, 69, 98, 0.64)\\\",\\n \\\"text-halo-width\\\": 1,\\n \\\"text-halo-color\\\": \\\"rgba(0, 0, 0, 0)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"earth_label_islands\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"earth\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"island\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 10,\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 8\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"#8f8f8f\\\",\\n \\\"text-halo-color\\\": \\\"#e0e0e0\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_label_lakes\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"lake\\\", \\\"water\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 3,\\n 10,\\n 6,\\n 12,\\n 10,\\n 12\\n ],\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 9\\n },\\n \\\"paint\\\": {\\\"text-color\\\": \\\"rgba(13, 117, 143, 0.64)\\\", \\\"text-halo-width\\\": 1}\\n },\\n {\\n \\\"id\\\": \\\"roads_labels_major\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 11,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"highway\\\", \\\"major_road\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"min_zoom\\\"],\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(110, 104, 106, 1)\\\",\\n \\\"text-halo-color\\\": \\\"#ffffff\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"pois\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"pois\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\n \\\"in\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n [\\n \\\"literal\\\",\\n [\\n \\\"beach\\\",\\n \\\"forest\\\",\\n \\\"marina\\\",\\n \\\"park\\\",\\n \\\"peak\\\",\\n \\\"zoo\\\",\\n \\\"garden\\\",\\n \\\"aerodrome\\\",\\n \\\"station\\\",\\n \\\"ferry_terminal\\\",\\n \\\"stadium\\\",\\n \\\"university\\\",\\n \\\"library\\\",\\n \\\"school\\\",\\n \\\"animal\\\",\\n \\\"toilet\\\",\\n \\\"drinking_water\\\",\\n \\\"viewpoint\\\",\\n \\\"attraction\\\",\\n \\\"camp_site\\\",\\n \\\"college\\\",\\n \\\"fishing\\\",\\n \\\"golf_course\\\",\\n \\\"hospital\\\",\\n \\\"information\\\",\\n \\\"landmark\\\",\\n \\\"military\\\",\\n \\\"national_park\\\",\\n \\\"nature_reserve\\\",\\n \\\"picnic_site\\\",\\n \\\"picnic_table\\\",\\n \\\"playground\\\",\\n \\\"railway\\\",\\n \\\"townhall\\\",\\n \\\"zoo\\\"\\n ]\\n ]\\n ],\\n [\\\">=\\\", [\\\"zoom\\\"], [\\\"+\\\", [\\\"get\\\", \\\"min_zoom\\\"], -2]]\\n ],\\n \\\"layout\\\": {\\n \\\"icon-image\\\": [\\n \\\"match\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n \\\"park\\\",\\n \\\"garden\\\",\\n [\\\"get\\\", \\\"kind\\\"]\\n ],\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-justify\\\": \\\"auto\\\",\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 17, 11, 19, 14],\\n \\\"text-max-width\\\": 8,\\n \\\"text-offset\\\": [1.5, 0],\\n \\\"text-variable-anchor\\\": [\\\"left\\\", \\\"right\\\"],\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": [\\n \\\"case\\\",\\n [\\n \\\"in\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n [\\n \\\"literal\\\",\\n [\\n \\\"forest\\\",\\n \\\"park\\\",\\n \\\"peak\\\",\\n \\\"zoo\\\",\\n \\\"garden\\\",\\n \\\"bench\\\",\\n \\\"golf_course\\\",\\n \\\"national_park\\\",\\n \\\"nature_reserve\\\",\\n \\\"picnic_site\\\",\\n \\\"picnic_table\\\",\\n \\\"camp_site\\\"\\n ]\\n ]\\n ],\\n \\\"#076331\\\",\\n [\\n \\\"in\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n [\\\"literal\\\", [\\\"beach\\\", \\\"marina\\\", \\\"ferry_terminal\\\", \\\"fishing\\\"]]\\n ],\\n \\\"#634c00\\\",\\n [\\\"in\\\", [\\\"get\\\", \\\"kind\\\"], [\\\"literal\\\", [\\\"hospital\\\"]]],\\n \\\"#730303\\\",\\n \\\"#1f5fa3\\\"\\n ],\\n \\\"text-halo-color\\\": \\\"rgba(253, 252, 252, 1)\\\",\\n \\\"text-halo-width\\\": 1.5\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_subplace\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"neighbourhood\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-max-width\\\": 7,\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 5,\\n 2,\\n 8,\\n 4,\\n 12,\\n 18,\\n 15,\\n 20\\n ],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.2],\\n [\\\"zoom\\\"],\\n 11,\\n 8,\\n 14,\\n 14,\\n 18,\\n 24\\n ],\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(88, 72, 69, 1)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(248, 241, 241, 1)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_region\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"region\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"sort_key\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 3, 11, 7, 16],\\n \\\"text-radial-offset\\\": 0.2,\\n \\\"text-anchor\\\": \\\"center\\\",\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(127, 123, 120, 1)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(246, 240, 240, 1)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_locality_circle\\\",\\n \\\"type\\\": \\\"circle\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"locality\\\"],\\n \\\"maxzoom\\\": 8,\\n \\\"paint\\\": {\\n \\\"circle-radius\\\": {\\n \\\"stops\\\": [[4, 2.5], [8, 3.5]]\\n },\\n \\\"circle-color\\\": \\\"rgb(255, 255, 255)\\\",\\n \\\"circle-stroke-width\\\": 1.75,\\n \\\"circle-stroke-color\\\": \\\"rgb(134, 134, 134)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_locality\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"locality\\\"],\\n \\\"layout\\\": {\\n \\\"icon-image\\\": [\\\"step\\\", [\\\"zoom\\\"], \\\"townspot\\\", 8, \\\"\\\"],\\n \\\"icon-size\\\": 0.7,\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\n \\\"case\\\",\\n [\\\"<=\\\", [\\\"get\\\", \\\"min_zoom\\\"], 5],\\n [\\\"literal\\\", [\\\"Noto Sans Medium\\\"]],\\n [\\\"literal\\\", [\\\"Noto Sans Regular\\\"]]\\n ],\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 5,\\n 3,\\n 8,\\n 7,\\n 12,\\n 11\\n ],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 2,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 8,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 13,\\n 0\\n ],\\n 4,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 17,\\n 0\\n ],\\n 6,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 12],\\n 13,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 12],\\n 18,\\n 0\\n ],\\n 8,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 11],\\n 11,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 11],\\n 18,\\n 0\\n ],\\n 10,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 20,\\n 0\\n ],\\n 15,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 22,\\n 0\\n ]\\n ],\\n \\\"icon-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 0,\\n 0,\\n 8,\\n 6,\\n 10,\\n 8,\\n 12,\\n 6,\\n 22,\\n 2\\n ],\\n \\\"text-justify\\\": \\\"auto\\\",\\n \\\"text-variable-anchor\\\": [\\n \\\"step\\\",\\n [\\\"zoom\\\"],\\n [\\\"literal\\\", [\\\"bottom\\\", \\\"left\\\", \\\"right\\\", \\\"top\\\"]],\\n 8,\\n [\\\"literal\\\", [\\\"center\\\"]]\\n ],\\n \\\"text-radial-offset\\\": 0.3,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(94, 68, 51, 1)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(253, 250, 249, 1)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_country\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"country\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-field\\\": \\\"<LANG_COUNTRY>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Medium\\\"],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 2,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 10],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 10],\\n 15,\\n 0\\n ],\\n 6,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 11,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 18,\\n 0\\n ],\\n 8,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 7],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 7],\\n 20,\\n 0\\n ]\\n ],\\n \\\"icon-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 0,\\n 2,\\n 14,\\n 2,\\n 16,\\n 20,\\n 17,\\n 2,\\n 22,\\n 2\\n ],\\n \\\"text-transform\\\": \\\"none\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(84, 79, 73, 1)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 1)\\\",\\n \\\"text-halo-width\\\": 1.5\\n }\\n },\\n {\\n \\\"id\\\": \\\"building_extrusion\\\",\\n \\\"type\\\": \\\"fill-extrusion\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"buildings\\\",\\n \\\"filter\\\": [\\n \\\"any\\\",\\n [\\\"==\\\", \\\"kind\\\", \\\"building_part\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"building\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"none\\\"},\\n \\\"paint\\\": {\\n \\\"fill-extrusion-opacity\\\": 0.1,\\n \\\"fill-extrusion-height\\\": {\\\"type\\\": \\\"identity\\\", \\\"property\\\": \\\"height\\\"}\\n }\\n }\\n\\n]\"","export default \"[\\n {\\n \\\"id\\\": \\\"background\\\",\\n \\\"type\\\": \\\"background\\\",\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"background-color\\\": \\\"rgb(106, 159, 193)\\\"}\\n },\\n {\\n \\\"id\\\": \\\"water\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"$type\\\", \\\"Polygon\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-opacity\\\": 0.5, \\\"fill-color\\\": \\\"#000\\\"}\\n },\\n {\\n \\\"id\\\": \\\"landuse_pedestrian\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"pedestrian\\\", \\\"dam\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"rgb(106, 159, 193)\\\"}\\n },\\n {\\n \\\"id\\\": \\\"parks\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"minzoom\\\": 7,\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"park\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-opacity\\\": 0.2, \\\"fill-color\\\": \\\"#000\\\"}\\n },\\n {\\n \\\"id\\\": \\\"military_contour\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"minzoom\\\": 6,\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"military\\\"]],\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [2, 2],\\n \\\"line-opacity\\\": {\\\"stops\\\": [[6, 0.25], [10, 0.5]]},\\n \\\"line-width\\\": {\\\"stops\\\": [[6, 1], [10, 2]], \\\"base\\\": 1.6}\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_runway\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"any\\\", [\\\"in\\\", \\\"kind\\\", \\\"runway\\\", \\\"taxiway\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#ffffff\\\", \\\"fill-opacity\\\": 0.3}\\n },\\n {\\n \\\"id\\\": \\\"landuse_wetland\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"wetland\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-opacity\\\": 0.08, \\\"fill-color\\\": \\\"#000000\\\"}\\n },\\n {\\n \\\"id\\\": \\\"hillshader\\\",\\n \\\"type\\\": \\\"hillshade\\\",\\n \\\"source\\\": \\\"__bmk_tr_src\\\",\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"hillshade-illumination-anchor\\\": \\\"viewport\\\",\\n \\\"hillshade-exaggeration\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 0,\\n 0.05,\\n 4,\\n 0.05,\\n 7,\\n 0.15,\\n 10,\\n 0.2,\\n 15,\\n 0.2,\\n 17,\\n 0.1\\n ],\\n \\\"hillshade-shadow-color\\\": \\\"#000000\\\",\\n \\\"hillshade-highlight-color\\\": \\\"#ffffff\\\",\\n \\\"hillshade-accent-color\\\": \\\"#ffffff\\\",\\n \\\"hillshade-illumination-direction\\\": [\\\"literal\\\", 310]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_runway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"runway\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 10,\\n 0,\\n 12,\\n 4,\\n 18,\\n 30\\n ],\\n \\\"line-opacity\\\": 0.3\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_taxiway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"taxiway\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e9e9ed\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 15,\\n 6\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_stream\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"minzoom\\\": 14,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"stream\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": 0.5,\\n \\\"line-color\\\": \\\"#000000\\\",\\n \\\"line-opacity\\\": 0.35\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_other\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-dasharray\\\": [4.5, 0.5],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"has\\\", \\\"is_link\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-opacity\\\": 0.3\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"==\\\", \\\"kind\\\", \\\"major_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0,\\n 12,\\n 1.6,\\n 15,\\n 3,\\n 18,\\n 13\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"has\\\", \\\"is_tunnel\\\"],\\n [\\\"==\\\", [\\\"get\\\", \\\"kind\\\"], \\\"highway\\\"],\\n [\\\"!\\\", [\\\"has\\\", \\\"is_link\\\"]]\\n ],\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.3\\n }\\n },\\n {\\n \\\"id\\\": \\\"buildings\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"buildings\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"building\\\", \\\"building_part\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"minzoom\\\": 14,\\n \\\"paint\\\": {\\n \\\"fill-opacity\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 15,\\n 0.08\\n ],\\n \\\"fill-color\\\": \\\"#000\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_pier\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"pier\\\"],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12,\\n 0,\\n 12.5,\\n 0.5,\\n 20,\\n 16\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_other\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"],\\n [\\\"!=\\\", \\\"kind_detail\\\", \\\"pier\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [3, 1.5],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 1.5,\\n 20,\\n 9\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.3\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"has\\\", \\\"is_link\\\"],\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0.5,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.3\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_minor_service\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"],\\n [\\\"==\\\", \\\"kind_detail\\\", \\\"service\\\"]\\n ],\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 18,\\n 8\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.3\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"],\\n [\\\"!=\\\", \\\"kind_detail\\\", \\\"service\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.3\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"in\\\", \\\"kind\\\", \\\"major_road\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-opacity\\\": 0.3,\\n \\\"line-color\\\": \\\"#ffffff\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.3\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_rail\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"rail\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [0.3, 0.75],\\n \\\"line-opacity\\\": 0.3,\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 0.15,\\n 18,\\n 6\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"boundaries_country\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"boundaries\\\",\\n \\\"minzoom\\\": 0,\\n \\\"filter\\\": [\\\"<=\\\", \\\"kind_detail\\\", 2],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-opacity\\\": 0.5,\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 0,\\n 1,\\n 3,\\n 1,\\n 5,\\n 1.5,\\n 8,\\n 3,\\n 10,\\n 4,\\n 15,\\n 7\\n ],\\n \\\"line-color\\\": \\\"#000000\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"boundaries\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"boundaries\\\",\\n \\\"filter\\\": [\\\">\\\", \\\"kind_detail\\\", 2],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": 1,\\n \\\"line-dasharray\\\": [\\n \\\"step\\\",\\n [\\\"zoom\\\"],\\n [\\\"literal\\\", [2]],\\n 4,\\n [\\\"literal\\\", [2, 2]]\\n ],\\n \\\"line-color\\\": \\\"#000000\\\",\\n \\\"line-opacity\\\": 0.5\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_other\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ebebeb\\\",\\n \\\"line-dasharray\\\": [2, 1],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"has\\\", \\\"is_link\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-opacity\\\": 0.3\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"==\\\", \\\"kind\\\", \\\"major_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0,\\n 12,\\n 1.6,\\n 15,\\n 3,\\n 18,\\n 13\\n ],\\n \\\"line-opacity\\\": 0.3\\n }\\n },\\n {\\n \\\"id\\\": \\\"cycleway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"any\\\", [\\\"==\\\", \\\"kind_detail\\\", \\\"cycleway\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12.5,\\n 1,\\n 15,\\n 2,\\n 18,\\n 4\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-dasharray\\\": [3, 1.5],\\n \\\"line-opacity\\\": 0.5\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-opacity\\\": 0.3\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_waterway_label\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"river\\\", \\\"stream\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"text-letter-spacing\\\": 0.2\\n },\\n \\\"paint\\\": {\\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\", \\\"text-halo-width\\\": 1}\\n },\\n {\\n \\\"id\\\": \\\"roads_labels_minor\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 15,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"minor_road\\\", \\\"other\\\", \\\"path\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"min_zoom\\\"],\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgb(0, 0, 0)\\\",\\n \\\"text-halo-color\\\": \\\"rgb(255, 255, 255)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_label_ocean\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"sea\\\", \\\"ocean\\\", \\\"bay\\\", \\\"strait\\\", \\\"fjord\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 1, 12, 10, 12],\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 9,\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.7)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"earth_label_islands\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"earth\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"island\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 10,\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 8\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.85)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.85)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_label_lakes\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"lake\\\", \\\"water\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 3,\\n 10,\\n 6,\\n 12,\\n 10,\\n 12\\n ],\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 9\\n },\\n \\\"paint\\\": {\\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\", \\\"text-halo-width\\\": 1}\\n },\\n {\\n \\\"id\\\": \\\"roads_labels_major\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 11,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"highway\\\", \\\"major_road\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"min_zoom\\\"],\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgb(0, 0, 0)\\\",\\n \\\"text-halo-color\\\": \\\"rgb(255, 255, 255)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"pois\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"pois\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\n \\\"in\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n [\\n \\\"literal\\\",\\n [\\n \\\"beach\\\",\\n \\\"forest\\\",\\n \\\"marina\\\",\\n \\\"park\\\",\\n \\\"peak\\\",\\n \\\"zoo\\\",\\n \\\"garden\\\",\\n \\\"aerodrome\\\",\\n \\\"station\\\",\\n \\\"ferry_terminal\\\",\\n \\\"stadium\\\",\\n \\\"university\\\",\\n \\\"library\\\",\\n \\\"school\\\",\\n \\\"animal\\\",\\n \\\"toilet\\\",\\n \\\"drinking_water\\\",\\n \\\"viewpoint\\\",\\n \\\"attraction\\\",\\n \\\"camp_site\\\",\\n \\\"college\\\",\\n \\\"fishing\\\",\\n \\\"golf_course\\\",\\n \\\"hospital\\\",\\n \\\"information\\\",\\n \\\"landmark\\\",\\n \\\"military\\\",\\n \\\"national_park\\\",\\n \\\"nature_reserve\\\",\\n \\\"picnic_site\\\",\\n \\\"picnic_table\\\",\\n \\\"playground\\\",\\n \\\"railway\\\",\\n \\\"townhall\\\",\\n \\\"zoo\\\"\\n ]\\n ]\\n ],\\n [\\\">=\\\", [\\\"zoom\\\"], [\\\"+\\\", [\\\"get\\\", \\\"min_zoom\\\"], -2]]\\n ],\\n \\\"layout\\\": {\\n \\\"icon-image\\\": [\\n \\\"match\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n \\\"park\\\",\\n \\\"garden\\\",\\n [\\\"get\\\", \\\"kind\\\"]\\n ],\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-justify\\\": \\\"auto\\\",\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 17, 12, 19, 14],\\n \\\"text-max-width\\\": 8,\\n \\\"text-offset\\\": [1.5, 0],\\n \\\"text-variable-anchor\\\": [\\\"left\\\", \\\"right\\\"],\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgb(0, 0, 0)\\\",\\n \\\"text-halo-color\\\": \\\"rgb(255, 255, 255)\\\",\\n \\\"text-halo-width\\\": 1.5\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_subplace\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"neighbourhood\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-max-width\\\": 7,\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 5,\\n 2,\\n 8,\\n 4,\\n 12,\\n 18,\\n 15,\\n 20\\n ],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 2],\\n [\\\"zoom\\\"],\\n 11,\\n 11,\\n 14,\\n 16,\\n 18,\\n 24\\n ],\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgb(0, 0, 0)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.9)\\\",\\n \\\"text-halo-width\\\": 1.2\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_region\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"region\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"sort_key\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 3, 11, 7, 16],\\n \\\"text-radial-offset\\\": 0.2,\\n \\\"text-anchor\\\": \\\"center\\\",\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-halo-color\\\": \\\"rgb(0, 0, 0)\\\",\\n \\\"text-halo-width\\\": 1,\\n \\\"text-color\\\": \\\"#ffffff\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_locality_circle\\\",\\n \\\"type\\\": \\\"circle\\\",\\n \\\"minzoom\\\": 4,\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"locality\\\"],\\n \\\"maxzoom\\\": 8,\\n \\\"paint\\\": {\\n \\\"circle-radius\\\": {\\n \\\"stops\\\": [[4, 2.5], [8, 3.5]]\\n },\\n \\\"circle-color\\\": \\\"rgba(255, 255, 255, 0.55)\\\",\\n \\\"circle-stroke-width\\\": 1.75,\\n \\\"circle-stroke-color\\\": \\\"rgba(0, 0, 0, 0.45)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_locality\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"minzoom\\\": 4,\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"locality\\\"],\\n \\\"layout\\\": {\\n \\\"icon-image\\\": [\\\"step\\\", [\\\"zoom\\\"], \\\"townspot\\\", 8, \\\"\\\"],\\n \\\"icon-size\\\": 0.7,\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\n \\\"case\\\",\\n [\\\"<=\\\", [\\\"get\\\", \\\"min_zoom\\\"], 5],\\n [\\\"literal\\\", [\\\"Noto Sans Medium\\\"]],\\n [\\\"literal\\\", [\\\"Noto Sans Regular\\\"]]\\n ],\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 5,\\n 3,\\n 8,\\n 7,\\n 12,\\n 11\\n ],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 2,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 10,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 15,\\n 0\\n ],\\n 4,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 17,\\n 0\\n ],\\n 6,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 12],\\n 14,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 12],\\n 17,\\n 0\\n ],\\n 8,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 11],\\n 13,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 11],\\n 20,\\n 0\\n ],\\n 10,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 14,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 20,\\n 0\\n ],\\n 15,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 14,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 22,\\n 0\\n ]\\n ],\\n \\\"icon-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 0,\\n 0,\\n 8,\\n 6,\\n 10,\\n 8,\\n 12,\\n 6,\\n 22,\\n 2\\n ],\\n \\\"text-justify\\\": \\\"auto\\\",\\n \\\"text-variable-anchor\\\": [\\n \\\"step\\\",\\n [\\\"zoom\\\"],\\n [\\\"literal\\\", [\\\"bottom\\\", \\\"left\\\", \\\"right\\\", \\\"top\\\"]],\\n 8,\\n [\\\"literal\\\", [\\\"center\\\"]]\\n ],\\n \\\"text-radial-offset\\\": 0.3,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgb(0, 0, 0)\\\",\\n \\\"text-halo-color\\\": \\\"rgb(255, 255, 255)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_country\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"country\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-field\\\": \\\"<LANG_COUNTRY>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Medium\\\"],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 2,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 10],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 10],\\n 15,\\n 0\\n ],\\n 6,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 11,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 18,\\n 0\\n ],\\n 8,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 7],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 7],\\n 20,\\n 0\\n ]\\n ],\\n \\\"icon-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 0,\\n 2,\\n 14,\\n 2,\\n 16,\\n 20,\\n 17,\\n 2,\\n 22,\\n 2\\n ],\\n \\\"text-transform\\\": \\\"none\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgb(0, 0, 0)\\\",\\n \\\"text-halo-color\\\": \\\"rgb(255, 255, 255)\\\",\\n \\\"text-halo-width\\\": 1.1\\n }\\n }\\n]\"","export default \"[\\n {\\n \\\"id\\\": \\\"background\\\",\\n \\\"type\\\": \\\"background\\\",\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"background-color\\\": \\\"#f7eeda\\\"}\\n },\\n {\\n \\\"id\\\": \\\"water\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"$type\\\", \\\"Polygon\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#8fc0db\\\"}\\n },\\n {\\n \\\"id\\\": \\\"landuse_pedestrian\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"pedestrian\\\", \\\"dam\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#f7eeda\\\"}\\n },\\n {\\n \\\"id\\\": \\\"parks\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"minzoom\\\": 8,\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"park\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"fill-opacity\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 8,\\n 0,\\n 9,\\n 0.05,\\n 12,\\n 0.05,\\n 15,\\n 0.2\\n ],\\n \\\"fill-color\\\": \\\"#000\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"military\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"minzoom\\\": 6,\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"military\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"fill-opacity\\\": {\\\"stops\\\": [[6, 0], [7, 0.15]], \\\"base\\\": 1.6},\\n \\\"fill-color\\\": \\\"#fff\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"military_contour\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"minzoom\\\": 6,\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"military\\\"]],\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [2, 2],\\n \\\"line-opacity\\\": {\\\"stops\\\": [[6, 0.25], [10, 0.5]]},\\n \\\"line-width\\\": {\\\"stops\\\": [[6, 1], [10, 2]], \\\"base\\\": 1.6}\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_runway\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"any\\\", [\\\"in\\\", \\\"kind\\\", \\\"runway\\\", \\\"taxiway\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#ffffff\\\", \\\"fill-opacity\\\": 0.7}\\n },\\n {\\n \\\"id\\\": \\\"landuse_wetland\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"wetland\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-opacity\\\": 0.04, \\\"fill-color\\\": \\\"#000000\\\"}\\n },\\n {\\n \\\"id\\\": \\\"hillshader\\\",\\n \\\"type\\\": \\\"hillshade\\\",\\n \\\"source\\\": \\\"__bmk_tr_src\\\",\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"hillshade-illumination-anchor\\\": \\\"viewport\\\",\\n \\\"hillshade-exaggeration\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 0,\\n 0.05,\\n 4,\\n 0.05,\\n 7,\\n 0.1,\\n 10,\\n 0.12,\\n 15,\\n 0.1,\\n 17,\\n 0.02\\n ],\\n \\\"hillshade-shadow-color\\\": \\\"#000000\\\",\\n \\\"hillshade-highlight-color\\\": \\\"#ffffff\\\",\\n \\\"hillshade-accent-color\\\": \\\"#ffffff\\\",\\n \\\"hillshade-illumination-direction\\\": [\\\"literal\\\", 310]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_runway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"runway\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 10,\\n 0,\\n 12,\\n 4,\\n 18,\\n 30\\n ],\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_taxiway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"taxiway\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-opacity\\\": 0.85,\\n \\\"line-color\\\": \\\"#fff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 15,\\n 6\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_stream\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"minzoom\\\": 14,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"stream\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": 0.5,\\n \\\"line-color\\\": \\\"#8fc0db\\\"\\n }\\n },\\n \\n \\n \\n {\\n \\\"id\\\": \\\"roads_tunnels_other\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"paint\\\": {\\n \\\"line-opacity\\\": 0.1,\\n \\\"line-color\\\": \\\"#000\\\",\\n \\\"line-dasharray\\\": [4.5, 0.5],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-opacity\\\": 0.1,\\n \\\"line-color\\\": \\\"#000\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"has\\\", \\\"is_link\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#000\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-opacity\\\": 0.1\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"==\\\", \\\"kind\\\", \\\"major_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-opacity\\\": 0.1,\\n \\\"line-color\\\": \\\"#000\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0,\\n 12,\\n 1.6,\\n 15,\\n 3,\\n 18,\\n 13\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"has\\\", \\\"is_tunnel\\\"],\\n [\\\"==\\\", [\\\"get\\\", \\\"kind\\\"], \\\"highway\\\"],\\n [\\\"!\\\", [\\\"has\\\", \\\"is_link\\\"]]\\n ],\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-color\\\": \\\"#000\\\",\\n \\\"line-opacity\\\": 0.1\\n }\\n },\\n {\\n \\\"id\\\": \\\"buildings\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"buildings\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"building\\\", \\\"building_part\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"minzoom\\\": 14,\\n \\\"paint\\\": {\\n \\\"fill-opacity\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 15,\\n 0.08\\n ],\\n \\\"fill-color\\\": \\\"#000\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_pier\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"pier\\\"],\\n \\\"paint\\\": {\\n \\\"line-opacity\\\": 0.85,\\n \\\"line-color\\\": \\\"#FFF\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12,\\n 0,\\n 12.5,\\n 0.5,\\n 20,\\n 16\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_other\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"],\\n [\\\"!=\\\", \\\"kind_detail\\\", \\\"pier\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [3, 1.5],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 1.5,\\n 20,\\n 9\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.85\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"has\\\", \\\"is_link\\\"],\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0.5,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.85\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_minor_service\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"],\\n [\\\"==\\\", \\\"kind_detail\\\", \\\"service\\\"]\\n ],\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 18,\\n 8\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.85\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"],\\n [\\\"!=\\\", \\\"kind_detail\\\", \\\"service\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.85\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"in\\\", \\\"kind\\\", \\\"major_road\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-opacity\\\": 0.85,\\n \\\"line-color\\\": \\\"#ffffff\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.85\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_rail\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"rail\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [0.3, 0.75],\\n \\\"line-opacity\\\": 0.2,\\n \\\"line-color\\\": \\\"#000\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 0.15,\\n 18,\\n 6\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"boundaries_country\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"boundaries\\\",\\n \\\"minzoom\\\": 0,\\n \\\"filter\\\": [\\\"<=\\\", \\\"kind_detail\\\", 2],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 0,\\n 1,\\n 3,\\n 1,\\n 5,\\n 1.5,\\n 8,\\n 3,\\n 10,\\n 4,\\n 15,\\n 7\\n ],\\n \\\"line-color\\\": \\\"#000\\\",\\n \\\"line-opacity\\\": 0.4\\n }\\n },\\n {\\n \\\"id\\\": \\\"boundaries\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"boundaries\\\",\\n \\\"filter\\\": [\\\">\\\", \\\"kind_detail\\\", 2],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": 1,\\n \\\"line-dasharray\\\": [\\n \\\"step\\\",\\n [\\\"zoom\\\"],\\n [\\\"literal\\\", [2]],\\n 4,\\n [\\\"literal\\\", [2, 2]]\\n ],\\n \\\"line-color\\\": \\\"#000\\\",\\n \\\"line-opacity\\\": 0.4\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_other\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-opacity\\\": 0.85,\\n \\\"line-color\\\": \\\"#fff\\\",\\n \\\"line-dasharray\\\": [2, 1],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-opacity\\\": 0.85,\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"has\\\", \\\"is_link\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-opacity\\\": 0.85\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"==\\\", \\\"kind\\\", \\\"major_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0,\\n 12,\\n 1.6,\\n 15,\\n 3,\\n 18,\\n 13\\n ],\\n \\\"line-opacity\\\": 0.85\\n }\\n },\\n {\\n \\\"id\\\": \\\"cycleway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"any\\\", [\\\"==\\\", \\\"kind_detail\\\", \\\"cycleway\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12.5,\\n 1,\\n 15,\\n 2,\\n 18,\\n 4\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-dasharray\\\": [3, 1.5],\\n \\\"line-opacity\\\": 0.5\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-opacity\\\": 0.85\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_waterway_label\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"river\\\", \\\"stream\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"text-letter-spacing\\\": 0.2\\n },\\n \\\"paint\\\": {\\\"text-color\\\": \\\"rgba(0, 0, 0, 0.5)\\\"}\\n },\\n {\\n \\\"id\\\": \\\"roads_labels_minor\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 15,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"minor_road\\\", \\\"other\\\", \\\"path\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"min_zoom\\\"],\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.5)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_label_ocean\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"sea\\\", \\\"ocean\\\", \\\"bay\\\", \\\"strait\\\", \\\"fjord\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 1, 12, 10, 12],\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 9,\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.5)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"earth_label_islands\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"earth\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"island\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 10,\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 8\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.85)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.85)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_label_lakes\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"lake\\\", \\\"water\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 3,\\n 10,\\n 6,\\n 12,\\n 10,\\n 12\\n ],\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 9\\n },\\n \\\"paint\\\": {\\\"text-color\\\": \\\"rgba(0, 0, 0, 0.5)\\\"}\\n },\\n {\\n \\\"id\\\": \\\"roads_labels_major\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 11,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"highway\\\", \\\"major_road\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"min_zoom\\\"],\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.5)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"pois\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"pois\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\n \\\"in\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n [\\n \\\"literal\\\",\\n [\\n \\\"beach\\\",\\n \\\"forest\\\",\\n \\\"marina\\\",\\n \\\"park\\\",\\n \\\"peak\\\",\\n \\\"zoo\\\",\\n \\\"garden\\\",\\n \\\"aerodrome\\\",\\n \\\"station\\\",\\n \\\"ferry_terminal\\\",\\n \\\"stadium\\\",\\n \\\"university\\\",\\n \\\"library\\\",\\n \\\"school\\\",\\n \\\"animal\\\",\\n \\\"toilet\\\",\\n \\\"drinking_water\\\",\\n \\\"viewpoint\\\",\\n \\\"attraction\\\",\\n \\\"camp_site\\\",\\n \\\"college\\\",\\n \\\"fishing\\\",\\n \\\"golf_course\\\",\\n \\\"hospital\\\",\\n \\\"information\\\",\\n \\\"landmark\\\",\\n \\\"military\\\",\\n \\\"national_park\\\",\\n \\\"nature_reserve\\\",\\n \\\"picnic_site\\\",\\n \\\"picnic_table\\\",\\n \\\"playground\\\",\\n \\\"railway\\\",\\n \\\"townhall\\\",\\n \\\"zoo\\\"\\n ]\\n ]\\n ],\\n [\\\">=\\\", [\\\"zoom\\\"], [\\\"+\\\", [\\\"get\\\", \\\"min_zoom\\\"], -2]]\\n ],\\n \\\"layout\\\": {\\n \\\"icon-image\\\": [\\n \\\"match\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n \\\"park\\\",\\n \\\"garden\\\",\\n [\\\"get\\\", \\\"kind\\\"]\\n ],\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-justify\\\": \\\"auto\\\",\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 17, 11, 19, 14],\\n \\\"text-max-width\\\": 8,\\n \\\"text-offset\\\": [1.5, 0],\\n \\\"text-variable-anchor\\\": [\\\"left\\\", \\\"right\\\"],\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.5)\\\",\\n \\\"text-halo-width\\\": 1.5\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_subplace\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"neighbourhood\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-max-width\\\": 7,\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 5,\\n 2,\\n 8,\\n 4,\\n 12,\\n 18,\\n 15,\\n 20\\n ],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.2],\\n [\\\"zoom\\\"],\\n 11,\\n 8,\\n 14,\\n 14,\\n 18,\\n 24\\n ],\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.5)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_region\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"region\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"sort_key\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 3, 11, 7, 16],\\n \\\"text-radial-offset\\\": 0.2,\\n \\\"text-anchor\\\": \\\"center\\\",\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-halo-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-width\\\": 1,\\n \\\"text-color\\\": \\\"#ffffff\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_locality_circle\\\",\\n \\\"type\\\": \\\"circle\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"locality\\\"],\\n \\\"maxzoom\\\": 8,\\n \\\"paint\\\": {\\n \\\"circle-radius\\\": {\\n \\\"stops\\\": [[4, 2.5], [8, 3.5]]\\n },\\n \\\"circle-color\\\": \\\"rgba(255, 255, 255, 0.55)\\\",\\n \\\"circle-stroke-width\\\": 1.75,\\n \\\"circle-stroke-color\\\": \\\"rgba(0, 0, 0, 0.45)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_locality\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"locality\\\"],\\n \\\"layout\\\": {\\n \\\"icon-image\\\": [\\\"step\\\", [\\\"zoom\\\"], \\\"townspot\\\", 8, \\\"\\\"],\\n \\\"icon-size\\\": 0.7,\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\n \\\"case\\\",\\n [\\\"<=\\\", [\\\"get\\\", \\\"min_zoom\\\"], 5],\\n [\\\"literal\\\", [\\\"Noto Sans Medium\\\"]],\\n [\\\"literal\\\", [\\\"Noto Sans Regular\\\"]]\\n ],\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 5,\\n 3,\\n 8,\\n 7,\\n 12,\\n 11\\n ],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 2,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 10,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 15,\\n 0\\n ],\\n 4,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 17,\\n 0\\n ],\\n 6,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 12],\\n 14,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 12],\\n 17,\\n 0\\n ],\\n 8,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 11],\\n 13,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 11],\\n 20,\\n 0\\n ],\\n 10,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 14,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 20,\\n 0\\n ],\\n 15,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 14,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 22,\\n 0\\n ]\\n ],\\n \\\"icon-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 0,\\n 0,\\n 8,\\n 6,\\n 10,\\n 8,\\n 12,\\n 6,\\n 22,\\n 2\\n ],\\n \\\"text-justify\\\": \\\"auto\\\",\\n \\\"text-variable-anchor\\\": [\\n \\\"step\\\",\\n [\\\"zoom\\\"],\\n [\\\"literal\\\", [\\\"bottom\\\", \\\"left\\\", \\\"right\\\", \\\"top\\\"]],\\n 8,\\n [\\\"literal\\\", [\\\"center\\\"]]\\n ],\\n \\\"text-radial-offset\\\": 0.3,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.85)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.85)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_country\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"country\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-field\\\": \\\"<LANG_COUNTRY>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Medium\\\"],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 2,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 10],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 10],\\n 15,\\n 0\\n ],\\n 6,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 11,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 18,\\n 0\\n ],\\n 8,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 7],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 7],\\n 20,\\n 0\\n ]\\n ],\\n \\\"icon-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 0,\\n 2,\\n 14,\\n 2,\\n 16,\\n 20,\\n 17,\\n 2,\\n 22,\\n 2\\n ],\\n \\\"text-transform\\\": \\\"none\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.9)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.7)\\\",\\n \\\"text-halo-width\\\": 1.5\\n }\\n }\\n]\"","export default \"[\\n {\\n \\\"id\\\": \\\"background\\\",\\n \\\"type\\\": \\\"background\\\",\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"background-color\\\": \\\"#888\\\"}\\n },\\n {\\n \\\"id\\\": \\\"earth\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"earth\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"$type\\\", \\\"Polygon\\\"],\\n \\\"paint\\\": {\\n \\\"fill-color\\\": \\\"#fff\\\",\\n \\\"fill-opacity\\\": 0.1\\n }\\n },\\n {\\n \\\"id\\\": \\\"water\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"$type\\\", \\\"Polygon\\\"],\\n \\\"paint\\\": {\\n \\\"fill-color\\\": \\\"#000\\\",\\n \\\"fill-opacity\\\": 0.1\\n }\\n },\\n {\\n \\\"id\\\": \\\"hillshader\\\",\\n \\\"type\\\": \\\"hillshade\\\",\\n \\\"source\\\": \\\"__bmk_tr_src\\\",\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"hillshade-illumination-anchor\\\": \\\"viewport\\\",\\n \\\"hillshade-exaggeration\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 0,\\n 0.05,\\n 4,\\n 0.05,\\n 7,\\n 0.15,\\n 10,\\n 0.2,\\n 15,\\n 0.2,\\n 17,\\n 0.1\\n ],\\n \\\"hillshade-shadow-color\\\": \\\"#000000\\\",\\n \\\"hillshade-highlight-color\\\": \\\"#ffffff\\\",\\n \\\"hillshade-accent-color\\\": \\\"#ffffff\\\",\\n \\\"hillshade-illumination-direction\\\": [\\\"literal\\\", 310]\\n }\\n },\\n {\\n \\\"id\\\": \\\"earth_line\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"earth\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"$type\\\", \\\"Polygon\\\"],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#0f0\\\",\\n \\\"line-width\\\": {\\n \\\"base\\\": 1.6,\\n \\\"stops\\\": [\\n [1, 1.25],\\n [6, 2]\\n ]\\n }\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_line\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"$type\\\", \\\"Polygon\\\"],\\n\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#0f0\\\",\\n \\\"line-width\\\": {\\n \\\"base\\\": 1.6,\\n \\\"stops\\\": [\\n [1, 0.5],\\n [6, 1]\\n ]\\n }\\n }\\n },\\n\\n {\\n \\\"id\\\": \\\"boundaries_country\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"boundaries\\\",\\n \\\"minzoom\\\": 0,\\n \\\"filter\\\": [\\\"<=\\\", \\\"kind_detail\\\", 2],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": {\\n \\\"base\\\": 1.6,\\n \\\"stops\\\": [\\n [1, 1.25],\\n [6, 2]\\n ]\\n },\\n \\\"line-color\\\": \\\"#0f0\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"boundaries\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"boundaries\\\",\\n \\\"filter\\\": [\\\">\\\", \\\"kind_detail\\\", 2],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": {\\n \\\"base\\\": 1.6,\\n \\\"stops\\\": [\\n [1, 0.9],\\n [6, 1.5]\\n ]\\n },\\n \\\"line-dasharray\\\": [\\n \\\"step\\\",\\n [\\\"zoom\\\"],\\n [\\\"literal\\\", [2]],\\n 4,\\n [\\\"literal\\\", [2, 2]]\\n ],\\n \\\"line-color\\\": \\\"#0f0\\\"\\n }\\n },\\n \\n {\\n \\\"id\\\": \\\"water_label_ocean\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"sea\\\", \\\"ocean\\\", \\\"bay\\\", \\\"strait\\\", \\\"fjord\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 1, 12, 10, 12],\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 9,\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 255, 0, 0.5)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"earth_label_islands\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"earth\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"island\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 11,\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 8\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.85)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(0, 255, 0, 0.85)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_label_lakes\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"lake\\\", \\\"water\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 3,\\n 10,\\n 6,\\n 12,\\n 10,\\n 12\\n ],\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 9\\n },\\n \\\"paint\\\": {\\\"text-color\\\": \\\"rgba(0, 255, 0, 0.6)\\\"}\\n },\\n {\\n \\\"id\\\": \\\"pois\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"pois\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\n \\\"in\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n [\\n \\\"literal\\\",\\n [\\n \\\"beach\\\",\\n \\\"forest\\\",\\n \\\"marina\\\",\\n \\\"park\\\",\\n \\\"peak\\\",\\n \\\"zoo\\\",\\n \\\"garden\\\",\\n \\\"aerodrome\\\",\\n \\\"station\\\",\\n \\\"ferry_terminal\\\",\\n \\\"stadium\\\",\\n \\\"university\\\",\\n \\\"library\\\",\\n \\\"school\\\",\\n \\\"animal\\\",\\n \\\"toilet\\\",\\n \\\"drinking_water\\\",\\n \\\"viewpoint\\\",\\n \\\"attraction\\\",\\n \\\"camp_site\\\",\\n \\\"college\\\",\\n \\\"fishing\\\",\\n \\\"golf_course\\\",\\n \\\"hospital\\\",\\n \\\"information\\\",\\n \\\"landmark\\\",\\n \\\"military\\\",\\n \\\"national_park\\\",\\n \\\"nature_reserve\\\",\\n \\\"picnic_site\\\",\\n \\\"picnic_table\\\",\\n \\\"playground\\\",\\n \\\"railway\\\",\\n \\\"townhall\\\",\\n \\\"zoo\\\"\\n ]\\n ]\\n ],\\n [\\\">=\\\", [\\\"zoom\\\"], [\\\"+\\\", [\\\"get\\\", \\\"min_zoom\\\"], -2]]\\n ],\\n \\\"layout\\\": {\\n \\\"icon-image\\\": [\\n \\\"match\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n \\\"park\\\",\\n \\\"garden\\\",\\n [\\\"get\\\", \\\"kind\\\"]\\n ],\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-justify\\\": \\\"auto\\\",\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 17, 11, 19, 14],\\n \\\"text-max-width\\\": 8,\\n \\\"text-offset\\\": [1.5, 0],\\n \\\"text-variable-anchor\\\": [\\\"left\\\", \\\"right\\\"],\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(0, 255, 0, 0.65)\\\"\\n }\\n },\\n \\n {\\n \\\"id\\\": \\\"places_region\\\",\\n \\\"minzoom\\\": 3.5,\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"region\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"sort_key\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 3, 13, 5, 16, 7, 20],\\n \\\"text-radial-offset\\\": 0.2,\\n \\\"text-anchor\\\": \\\"center\\\",\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(0, 255, 0, 0.85)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_locality_circle\\\",\\n \\\"type\\\": \\\"circle\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"locality\\\"],\\n \\\"minzoom\\\": 4,\\n \\\"maxzoom\\\": 8,\\n \\\"paint\\\": {\\n \\\"circle-radius\\\": {\\n \\\"stops\\\": [[4, 2.5], [8, 3.5]]\\n },\\n \\\"circle-color\\\": \\\"rgba(0, 0, 0, 0.6)\\\"\\n }\\n },\\n\\n {\\n \\\"id\\\": \\\"places_locality\\\",\\n \\\"minzoom\\\": 4,\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"locality\\\"],\\n \\\"layout\\\": {\\n \\\"icon-image\\\": [\\\"step\\\", [\\\"zoom\\\"], \\\"townspot\\\", 8, \\\"\\\"],\\n \\\"icon-size\\\": 0.7,\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\n \\\"case\\\",\\n [\\\"<=\\\", [\\\"get\\\", \\\"min_zoom\\\"], 5],\\n [\\\"literal\\\", [\\\"Noto Sans Medium\\\"]],\\n [\\\"literal\\\", [\\\"Noto Sans Regular\\\"]]\\n ],\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 5,\\n 3,\\n 8,\\n 7,\\n 12,\\n 11\\n ],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 2,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 10,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 15,\\n 0\\n ],\\n 4,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 17,\\n 0\\n ],\\n 6,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 12],\\n 14,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 12],\\n 17,\\n 0\\n ],\\n 8,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 11],\\n 13,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 11],\\n 20,\\n 0\\n ],\\n 10,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 14,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 20,\\n 0\\n ],\\n 15,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 14,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 22,\\n 0\\n ]\\n ],\\n \\\"text-justify\\\": \\\"auto\\\",\\n \\\"text-variable-anchor\\\": [\\n \\\"step\\\",\\n [\\\"zoom\\\"],\\n [\\\"literal\\\", [\\\"bottom\\\", \\\"left\\\", \\\"right\\\", \\\"top\\\"]],\\n 8,\\n [\\\"literal\\\", [\\\"center\\\"]]\\n ],\\n \\\"text-radial-offset\\\": 0.3,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.7)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_country\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"country\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-field\\\": \\\"<LANG_COUNTRY>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Medium\\\"],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 2,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 10],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 10],\\n 14,\\n 0\\n ],\\n 6,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 16,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 22,\\n 0\\n ],\\n 8,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 7],\\n 17,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 7],\\n 28,\\n 0\\n ]\\n ]\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"#000a\\\",\\n \\\"text-halo-color\\\": \\\"rgba(0, 255, 0, 0.8)\\\"\\n }\\n }\\n]\"","export default \"[\\n {\\n \\\"id\\\": \\\"background\\\",\\n \\\"type\\\": \\\"background\\\",\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"background-color\\\": \\\"#f0f0f0\\\"}\\n },\\n {\\n \\\"id\\\": \\\"water\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"$type\\\", \\\"Polygon\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#202226\\\"}\\n },\\n {\\n \\\"id\\\": \\\"landuse_pedestrian\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"pedestrian\\\", \\\"dam\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#f0f0f0\\\"}\\n },\\n {\\n \\\"id\\\": \\\"parks\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"minzoom\\\": 7,\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"park\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-opacity\\\": 0.15, \\\"fill-color\\\": \\\"#000\\\"}\\n },\\n {\\n \\\"id\\\": \\\"military\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"minzoom\\\": 6,\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"military\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"fill-opacity\\\": {\\\"stops\\\": [[6, 0], [7, 0.15]], \\\"base\\\": 1.6},\\n \\\"fill-color\\\": \\\"#fff\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"military_contour\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"minzoom\\\": 6,\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"military\\\"]],\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [2, 2],\\n \\\"line-opacity\\\": {\\\"stops\\\": [[6, 0.25], [10, 0.5]]},\\n \\\"line-width\\\": {\\\"stops\\\": [[6, 1], [10, 2]], \\\"base\\\": 1.6}\\n }\\n },\\n {\\n \\\"id\\\": \\\"landuse_runway\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"any\\\", [\\\"in\\\", \\\"kind\\\", \\\"runway\\\", \\\"taxiway\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-color\\\": \\\"#ffffff\\\", \\\"fill-opacity\\\": 0.7}\\n },\\n {\\n \\\"id\\\": \\\"landuse_wetland\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"landuse\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"==\\\", \\\"kind\\\", \\\"wetland\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\\"fill-opacity\\\": 0.04, \\\"fill-color\\\": \\\"#000000\\\"}\\n },\\n {\\n \\\"id\\\": \\\"hillshader\\\",\\n \\\"type\\\": \\\"hillshade\\\",\\n \\\"source\\\": \\\"__bmk_tr_src\\\",\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"hillshade-illumination-anchor\\\": \\\"viewport\\\",\\n \\\"hillshade-exaggeration\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 0,\\n 0.05,\\n 4,\\n 0.1,\\n 7,\\n 0.15,\\n 10,\\n 0.2,\\n 15,\\n 0.2,\\n 17,\\n 0.1\\n ],\\n \\\"hillshade-shadow-color\\\": \\\"#000000\\\",\\n \\\"hillshade-highlight-color\\\": \\\"#ffffff\\\",\\n \\\"hillshade-accent-color\\\": \\\"#ffffff\\\",\\n \\\"hillshade-illumination-direction\\\": [\\\"literal\\\", 310]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_runway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"runway\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 10,\\n 0,\\n 12,\\n 4,\\n 18,\\n 30\\n ],\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_taxiway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"taxiway\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e9e9ed\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 15,\\n 6\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_stream\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"minzoom\\\": 14,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"stream\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": 0.5,\\n \\\"line-color\\\": \\\"#202226\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"has\\\", \\\"is_link\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_tunnel\\\"], [\\\"==\\\", \\\"kind\\\", \\\"major_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#d5d5d5\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0,\\n 12,\\n 1.6,\\n 15,\\n 3,\\n 18,\\n 13\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_tunnels_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"has\\\", \\\"is_tunnel\\\"],\\n [\\\"==\\\", [\\\"get\\\", \\\"kind\\\"], \\\"highway\\\"],\\n [\\\"!\\\", [\\\"has\\\", \\\"is_link\\\"]]\\n ],\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"buildings\\\",\\n \\\"type\\\": \\\"fill\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"buildings\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"building\\\", \\\"building_part\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"minzoom\\\": 14,\\n \\\"paint\\\": {\\n \\\"fill-opacity\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 15,\\n 0.05\\n ],\\n \\\"fill-color\\\": \\\"#000\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_pier\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind_detail\\\", \\\"pier\\\"],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#e0e0e0\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12,\\n 0,\\n 12.5,\\n 0.5,\\n 20,\\n 16\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_other\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"],\\n [\\\"!=\\\", \\\"kind_detail\\\", \\\"pier\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [3, 1.5],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 1.5,\\n 20,\\n 9\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"has\\\", \\\"is_link\\\"],\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0.5,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_minor_service\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"],\\n [\\\"==\\\", \\\"kind_detail\\\", \\\"service\\\"]\\n ],\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 18,\\n 8\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"],\\n [\\\"!=\\\", \\\"kind_detail\\\", \\\"service\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"in\\\", \\\"kind\\\", \\\"major_road\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-opacity\\\": 0.7,\\n \\\"line-color\\\": \\\"#ffffff\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"!has\\\", \\\"is_tunnel\\\"],\\n [\\\"!has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_rail\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"rail\\\"],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-dasharray\\\": [0.3, 0.75],\\n \\\"line-opacity\\\": 0.7,\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 0.15,\\n 18,\\n 6\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"boundaries_country\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"boundaries\\\",\\n \\\"minzoom\\\": 0,\\n \\\"filter\\\": [\\\"<=\\\", \\\"kind_detail\\\", 2],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 0,\\n 1,\\n 3,\\n 1,\\n 5,\\n 1.5,\\n 8,\\n 3,\\n 10,\\n 4,\\n 15,\\n 7\\n ],\\n \\\"line-color\\\": \\\"#000\\\",\\n \\\"line-opacity\\\": 0.4\\n }\\n },\\n {\\n \\\"id\\\": \\\"boundaries\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"boundaries\\\",\\n \\\"filter\\\": [\\\">\\\", \\\"kind_detail\\\", 2],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": 1,\\n \\\"line-dasharray\\\": [\\n \\\"step\\\",\\n [\\\"zoom\\\"],\\n [\\\"literal\\\", [2]],\\n 4,\\n [\\\"literal\\\", [2, 2]]\\n ],\\n \\\"line-color\\\": \\\"#000\\\",\\n \\\"line-opacity\\\": 0.4\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_other\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"in\\\", \\\"kind\\\", \\\"other\\\", \\\"path\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ebebeb\\\",\\n \\\"line-dasharray\\\": [2, 1],\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 14,\\n 0,\\n 20,\\n 7\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_minor\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"==\\\", \\\"kind\\\", \\\"minor_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 11,\\n 0,\\n 12.5,\\n 0.5,\\n 15,\\n 2,\\n 18,\\n 11\\n ]\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_link\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"has\\\", \\\"is_link\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 13,\\n 0,\\n 13.5,\\n 1,\\n 18,\\n 11\\n ],\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_major\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 12,\\n \\\"filter\\\": [\\\"all\\\", [\\\"has\\\", \\\"is_bridge\\\"], [\\\"==\\\", \\\"kind\\\", \\\"major_road\\\"]],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 6,\\n 0,\\n 12,\\n 1.6,\\n 15,\\n 3,\\n 18,\\n 13\\n ],\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"cycleway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\\"any\\\", [\\\"==\\\", \\\"kind_detail\\\", \\\"cycleway\\\"]],\\n \\\"layout\\\": {\\\"visibility\\\": \\\"visible\\\"},\\n \\\"paint\\\": {\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 12.5,\\n 1,\\n 15,\\n 2,\\n 18,\\n 4\\n ],\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-dasharray\\\": [3, 1.5],\\n \\\"line-opacity\\\": 0.5\\n }\\n },\\n {\\n \\\"id\\\": \\\"roads_bridges_highway\\\",\\n \\\"type\\\": \\\"line\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\\"has\\\", \\\"is_bridge\\\"],\\n [\\\"==\\\", \\\"kind\\\", \\\"highway\\\"],\\n [\\\"!has\\\", \\\"is_link\\\"]\\n ],\\n \\\"paint\\\": {\\n \\\"line-color\\\": \\\"#ffffff\\\",\\n \\\"line-width\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.6],\\n [\\\"zoom\\\"],\\n 3,\\n 0,\\n 6,\\n 1.1,\\n 12,\\n 1.6,\\n 15,\\n 5,\\n 18,\\n 15\\n ],\\n \\\"line-opacity\\\": 0.7\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_waterway_label\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"minzoom\\\": 13,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"river\\\", \\\"stream\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"text-letter-spacing\\\": 0.2\\n },\\n \\\"paint\\\": {\\\"text-color\\\": \\\"rgba(255, 255, 255, 0.75)\\\"}\\n },\\n {\\n \\\"id\\\": \\\"roads_labels_minor\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 15,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"minor_road\\\", \\\"other\\\", \\\"path\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"min_zoom\\\"],\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.5)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_label_ocean\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"sea\\\", \\\"ocean\\\", \\\"bay\\\", \\\"strait\\\", \\\"fjord\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 1, 12, 10, 12],\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 9,\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(255, 255, 255, 0.5)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"earth_label_islands\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"earth\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"island\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 10,\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 8\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.85)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.85)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"water_label_lakes\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"water\\\",\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"lake\\\", \\\"water\\\"],\\n \\\"layout\\\": {\\n \\\"text-font\\\": [\\\"Noto Sans Italic\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 3,\\n 10,\\n 6,\\n 12,\\n 10,\\n 12\\n ],\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-max-width\\\": 9\\n },\\n \\\"paint\\\": {\\\"text-color\\\": \\\"rgba(255, 255, 255, 0.75)\\\"}\\n },\\n {\\n \\\"id\\\": \\\"roads_labels_major\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"roads\\\",\\n \\\"minzoom\\\": 11,\\n \\\"filter\\\": [\\\"in\\\", \\\"kind\\\", \\\"highway\\\", \\\"major_road\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"min_zoom\\\"],\\n \\\"symbol-placement\\\": \\\"line\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": 12,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.5)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"pois\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"pois\\\",\\n \\\"filter\\\": [\\n \\\"all\\\",\\n [\\n \\\"in\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n [\\n \\\"literal\\\",\\n [\\n \\\"beach\\\",\\n \\\"forest\\\",\\n \\\"marina\\\",\\n \\\"park\\\",\\n \\\"peak\\\",\\n \\\"zoo\\\",\\n \\\"garden\\\",\\n \\\"aerodrome\\\",\\n \\\"station\\\",\\n \\\"ferry_terminal\\\",\\n \\\"stadium\\\",\\n \\\"university\\\",\\n \\\"library\\\",\\n \\\"school\\\",\\n \\\"animal\\\",\\n \\\"toilet\\\",\\n \\\"drinking_water\\\",\\n \\\"viewpoint\\\",\\n \\\"attraction\\\",\\n \\\"camp_site\\\",\\n \\\"college\\\",\\n \\\"fishing\\\",\\n \\\"golf_course\\\",\\n \\\"hospital\\\",\\n \\\"information\\\",\\n \\\"landmark\\\",\\n \\\"military\\\",\\n \\\"national_park\\\",\\n \\\"nature_reserve\\\",\\n \\\"picnic_site\\\",\\n \\\"picnic_table\\\",\\n \\\"playground\\\",\\n \\\"railway\\\",\\n \\\"townhall\\\",\\n \\\"zoo\\\"\\n ]\\n ]\\n ],\\n [\\\">=\\\", [\\\"zoom\\\"], [\\\"+\\\", [\\\"get\\\", \\\"min_zoom\\\"], -2]]\\n ],\\n \\\"layout\\\": {\\n \\\"icon-image\\\": [\\n \\\"match\\\",\\n [\\\"get\\\", \\\"kind\\\"],\\n \\\"park\\\",\\n \\\"garden\\\",\\n [\\\"get\\\", \\\"kind\\\"]\\n ],\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-justify\\\": \\\"auto\\\",\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 17, 11, 19, 14],\\n \\\"text-max-width\\\": 8,\\n \\\"text-offset\\\": [1.5, 0],\\n \\\"text-variable-anchor\\\": [\\\"left\\\", \\\"right\\\"],\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.5)\\\",\\n \\\"text-halo-width\\\": 1.5\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_subplace\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"neighbourhood\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-max-width\\\": 7,\\n \\\"text-letter-spacing\\\": 0.1,\\n \\\"text-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 5,\\n 2,\\n 8,\\n 4,\\n 12,\\n 18,\\n 15,\\n 20\\n ],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"exponential\\\", 1.2],\\n [\\\"zoom\\\"],\\n 11,\\n 8,\\n 14,\\n 14,\\n 18,\\n 24\\n ],\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.5)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_region\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"region\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\\"get\\\", \\\"sort_key\\\"],\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Regular\\\"],\\n \\\"text-size\\\": [\\\"interpolate\\\", [\\\"linear\\\"], [\\\"zoom\\\"], 3, 12, 7, 18],\\n \\\"text-radial-offset\\\": 0.2,\\n \\\"text-anchor\\\": \\\"center\\\",\\n \\\"text-transform\\\": \\\"uppercase\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-halo-color\\\": \\\"rgba(0, 0, 0, 0.75)\\\",\\n \\\"text-halo-width\\\": 1,\\n \\\"text-color\\\": \\\"#ffffff\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_locality_circle\\\",\\n \\\"type\\\": \\\"circle\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"locality\\\"],\\n \\\"maxzoom\\\": 8,\\n \\\"paint\\\": {\\n \\\"circle-radius\\\": {\\n \\\"stops\\\": [[4, 2.5], [8, 3.5]]\\n },\\n \\\"circle-color\\\": \\\"rgba(255, 255, 255, 0.55)\\\",\\n \\\"circle-stroke-width\\\": 1.75,\\n \\\"circle-stroke-color\\\": \\\"rgba(0, 0, 0, 0.45)\\\"\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_locality\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"locality\\\"],\\n \\\"layout\\\": {\\n \\\"icon-image\\\": [\\\"step\\\", [\\\"zoom\\\"], \\\"townspot\\\", 8, \\\"\\\"],\\n \\\"icon-size\\\": 0.7,\\n \\\"text-field\\\": \\\"<LANG>\\\",\\n \\\"text-font\\\": [\\n \\\"case\\\",\\n [\\\"<=\\\", [\\\"get\\\", \\\"min_zoom\\\"], 5],\\n [\\\"literal\\\", [\\\"Noto Sans Medium\\\"]],\\n [\\\"literal\\\", [\\\"Noto Sans Regular\\\"]]\\n ],\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 5,\\n 3,\\n 8,\\n 7,\\n 12,\\n 11\\n ],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 2,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 10,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 15,\\n 0\\n ],\\n 4,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 14,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 13],\\n 18,\\n 0\\n ],\\n 6,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 12],\\n 15,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 12],\\n 18,\\n 0\\n ],\\n 8,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 11],\\n 15,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 11],\\n 21,\\n 0\\n ],\\n 10,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 16,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 21,\\n 0\\n ],\\n 15,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 16,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 23,\\n 0\\n ]\\n ],\\n \\\"icon-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 0,\\n 0,\\n 8,\\n 6,\\n 10,\\n 8,\\n 12,\\n 6,\\n 22,\\n 2\\n ],\\n \\\"text-justify\\\": \\\"auto\\\",\\n \\\"text-variable-anchor\\\": [\\n \\\"step\\\",\\n [\\\"zoom\\\"],\\n [\\\"literal\\\", [\\\"bottom\\\", \\\"left\\\", \\\"right\\\", \\\"top\\\"]],\\n 8,\\n [\\\"literal\\\", [\\\"center\\\"]]\\n ],\\n \\\"text-radial-offset\\\": 0.3,\\n \\\"visibility\\\": \\\"visible\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.85)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.85)\\\",\\n \\\"text-halo-width\\\": 1\\n }\\n },\\n {\\n \\\"id\\\": \\\"places_country\\\",\\n \\\"type\\\": \\\"symbol\\\",\\n \\\"source\\\": \\\"<BMK_BM_SRC>\\\",\\n \\\"source-layer\\\": \\\"places\\\",\\n \\\"filter\\\": [\\\"==\\\", \\\"kind\\\", \\\"country\\\"],\\n \\\"layout\\\": {\\n \\\"symbol-sort-key\\\": [\\n \\\"case\\\",\\n [\\\"has\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"sort_key\\\"],\\n [\\\"get\\\", \\\"min_zoom\\\"]\\n ],\\n \\\"text-field\\\": \\\"<LANG_COUNTRY>\\\",\\n \\\"text-font\\\": [\\\"Noto Sans Medium\\\"],\\n \\\"text-size\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 2,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 10],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 10],\\n 15,\\n 0\\n ],\\n 6,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 9],\\n 11,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 8],\\n 18,\\n 0\\n ],\\n 8,\\n [\\n \\\"case\\\",\\n [\\\"<\\\", [\\\"get\\\", \\\"population_rank\\\"], 7],\\n 12,\\n [\\\">=\\\", [\\\"get\\\", \\\"population_rank\\\"], 7],\\n 20,\\n 0\\n ]\\n ],\\n \\\"icon-padding\\\": [\\n \\\"interpolate\\\",\\n [\\\"linear\\\"],\\n [\\\"zoom\\\"],\\n 0,\\n 2,\\n 14,\\n 2,\\n 16,\\n 20,\\n 17,\\n 2,\\n 22,\\n 2\\n ],\\n \\\"text-transform\\\": \\\"none\\\"\\n },\\n \\\"paint\\\": {\\n \\\"text-color\\\": \\\"rgba(0, 0, 0, 0.9)\\\",\\n \\\"text-halo-color\\\": \\\"rgba(255, 255, 255, 0.7)\\\",\\n \\\"text-halo-width\\\": 1.5\\n }\\n }\\n]\"","import { language_script_pairs } from \"@protomaps/basemaps\";\n\nexport function isLanguageSupported(lang: string, script: string | undefined): boolean {\n const candidates = language_script_pairs.filter((l) => l.lang === lang);\n\n if (candidates.length === 0) {\n throw new Error(\n `The language \"${lang}\". The languages available are: ${language_script_pairs.map((l) => l.lang).join(\", \")}.`,\n );\n }\n\n if (script) {\n const candidatesWithScript = candidates.filter((l) => l.script === script);\n\n if (candidatesWithScript.length) {\n return true;\n }\n\n throw new Error(\n `The script \"${script}\" for the language \"${lang}\" is unsupported. Script available for this language: ${candidates.map((l) => l.script).join(\", \")}.`,\n );\n }\n\n return true;\n}\n\nexport function getDefaultLanguage(): string {\n const systemLang = Intl.DateTimeFormat().resolvedOptions().locale.split(\"-\")[0];\n if (isLanguageSupported(systemLang, undefined)) {\n return systemLang;\n }\n return \"en\";\n}\n","import { get_country_name, get_multiline_name } from \"@protomaps/basemaps\";\nimport Color from \"color\";\nimport type {\n StyleSpecification,\n LayerSpecification,\n SymbolLayerSpecification,\n RasterDEMSourceSpecification,\n PropertyValueSpecification,\n} from \"maplibre-gl\";\nimport { applyBrightnessRGB, applyContrastRGB, applyMultiplicationRGB, findColor, type RGBArray } from \"./colorchange\";\nimport avenueLayersRaw from \"./assets/avenue-layers-raw.json?raw\";\nimport bureauLayersRaw from \"./assets/bureau-layers-raw.json?raw\";\nimport journalLayersRaw from \"./assets/journal-layers-raw.json?raw\";\nimport spectreLayersRaw from \"./assets/spectre-layers-raw.json?raw\";\nimport monochromeLayersRaw from \"./assets/monochrome-layers-raw.json?raw\";\nimport { getDefaultLanguage, isLanguageSupported } from \"./language\";\n\nconst baseStyles = {\n avenue: avenueLayersRaw,\n bureau: bureauLayersRaw,\n journal: journalLayersRaw,\n monochrome: monochromeLayersRaw,\n spectre: spectreLayersRaw,\n} as const;\n\n/**\n * Base style\n */\nexport type BasemapkitBaseStyle = keyof typeof baseStyles;\n\ntype PresetDefinition = {\n baseStyle: BasemapkitBaseStyle;\n colorEdit: ColorEdit;\n};\n\nconst presetStyles = {\n \"avenue-pop\": {\n baseStyle: \"avenue\",\n colorEdit: {\n negate: false,\n brightness: 0,\n brightnessShift: 0,\n exposure: 0,\n contrast: [0.4, 220],\n hueRotation: -8,\n saturation: -0.1,\n multiplyColor: [\"#ff0000\", 0],\n mixColor: [\"#ff0000\", 0.02],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"avenue-saturated\": {\n baseStyle: \"avenue\",\n colorEdit: {\n exposure: -1,\n saturation: 0.1,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"avenue-night\": {\n baseStyle: \"avenue\",\n colorEdit: {\n brightness: -0.3,\n saturation: -0.8,\n multiplyColor: [\"#171075\", 0.6],\n contrast: [0.8, 160],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"avenue-bright\": {\n baseStyle: \"avenue\",\n colorEdit: {\n exposure: 0.6,\n saturation: -0.25,\n hueRotation: 15,\n contrast: [0.4, 220],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"avenue-bnw\": {\n baseStyle: \"avenue\",\n colorEdit: {\n exposure: -1,\n saturation: -1,\n contrast: [0.6, 160],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"avenue-blueprint\": {\n baseStyle: \"avenue\",\n colorEdit: {\n exposure: -0.7,\n saturation: -1,\n contrast: [0.75, 160],\n mixColor: [\"#3355bb\", 0.15],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"avenue-warm\": {\n baseStyle: \"avenue\",\n colorEdit: {\n exposure: -0.7,\n mixColor: [\"#ff8800\", 0.1],\n contrast: [0.1, 200],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"avenue-vintage\": {\n baseStyle: \"avenue\",\n colorEdit: {\n exposure: -0.25,\n multiplyColor: [\"#ff8800\", 0.4],\n hueRotation: -5,\n contrast: [0.2, 200],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-negative\": {\n baseStyle: \"bureau\",\n colorEdit: {\n negate: true,\n hueRotation: 180,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-bnw\": {\n baseStyle: \"bureau\",\n colorEdit: {\n saturation: -1,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-purple\": {\n baseStyle: \"bureau\",\n colorEdit: {\n negate: false,\n brightness: -0.2,\n hueRotation: 40,\n saturation: -0.4,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-bnw-negative\": {\n baseStyle: \"bureau\",\n colorEdit: {\n negate: true,\n saturation: -1,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-bnw-dark\": {\n baseStyle: \"bureau\",\n colorEdit: {\n brightness: -0.6,\n saturation: -1,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-bnw-bright\": {\n baseStyle: \"bureau\",\n colorEdit: {\n brightnessShift: 0.3,\n saturation: -1,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-bnw-negative-bright\": {\n baseStyle: \"bureau\",\n colorEdit: {\n brightnessShift: 0.35,\n exposure: 0.8,\n saturation: -1,\n negate: true,\n contrast: [0.5, 245],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-bnw-negative-dark\": {\n baseStyle: \"bureau\",\n colorEdit: {\n brightnessShift: -0.2,\n brightness: -0.3,\n saturation: -1,\n negate: true,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-sand\": {\n baseStyle: \"bureau\",\n colorEdit: {\n brightnessShift: 0.2,\n exposure: 0.2,\n saturation: -1,\n negate: false,\n multiplyColor: [\"#ffeeab\", 0.45],\n mixColor: [\"#ffeeab\", 0.1],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-sand-negative\": {\n baseStyle: \"bureau\",\n colorEdit: {\n brightnessShift: 0.2,\n exposure: 0.2,\n saturation: -1,\n negate: true,\n multiplyColor: [\"#ffeeab\", 0.45],\n mixColor: [\"#ffeeab\", 0.1],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-ivory\": {\n baseStyle: \"bureau\",\n colorEdit: {\n brightnessShift: 0.2,\n exposure: 0.2,\n saturation: -1,\n negate: false,\n multiplyColor: [\"#f0e9d1\", 0.45],\n mixColor: [\"#f0e9d1\", 0.1],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-ivory-negative\": {\n baseStyle: \"bureau\",\n colorEdit: {\n brightnessShift: 0.2,\n exposure: 0.2,\n saturation: -1,\n multiplyColor: [\"#f0e9d1\", 0.45],\n mixColor: [\"#f0e9d1\", 0.1],\n negate: true,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"bureau-navy\": {\n baseStyle: \"bureau\",\n colorEdit: {\n brightnessShift: -0.4,\n exposure: -0.2,\n saturation: 1,\n contrast: [0.5, 50],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"journal-night\": {\n baseStyle: \"journal\",\n colorEdit: {\n brightnessShift: -0.15,\n exposure: -2,\n saturation: -0.6,\n multiplyColor: [\"#4444ff\", 0.2],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"journal-teal\": {\n baseStyle: \"journal\",\n colorEdit: {\n brightnessShift: 0.02,\n exposure: -1.2,\n hueRotation: -5,\n saturation: -0.35,\n multiplyColor: [\"#ff9900\", 0.05],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"journal-vintage\": {\n baseStyle: \"journal\",\n colorEdit: {\n brightness: 0.02,\n brightnessShift: 0.03,\n exposure: -1.4,\n saturation: -0.3,\n contrast: [0.2, 180],\n multiplyColor: [\"#ffc963\", 0.25],\n mixColor: [\"#ffc963\", 0.08],\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-mild-green\": {\n baseStyle: \"spectre\",\n colorEdit: {\n saturation: -0.2,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-red\": {\n baseStyle: \"spectre\",\n colorEdit: {\n hueRotation: -120,\n saturation: -0.3,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-blue\": {\n baseStyle: \"spectre\",\n colorEdit: {\n hueRotation: 90,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-purple\": {\n baseStyle: \"spectre\",\n colorEdit: {\n hueRotation: 150,\n saturation: -0.3,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-pink\": {\n baseStyle: \"spectre\",\n colorEdit: {\n hueRotation: 190,\n saturation: -0.2,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-orange\": {\n baseStyle: \"spectre\",\n colorEdit: {\n hueRotation: 260,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-yellow\": {\n baseStyle: \"spectre\",\n colorEdit: {\n hueRotation: 290,\n saturation: 0.1,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-negative\": {\n baseStyle: \"spectre\",\n colorEdit: {\n negate: true,\n hueRotation: 180,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-negative-mild-green\": {\n baseStyle: \"spectre\",\n colorEdit: {\n negate: true,\n hueRotation: 180,\n saturation: -0.2,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-negative-red\": {\n baseStyle: \"spectre\",\n colorEdit: {\n negate: true,\n hueRotation: 60,\n saturation: -0.3,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-negative-blue\": {\n baseStyle: \"spectre\",\n colorEdit: {\n negate: true,\n hueRotation: 270,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-negative-purple\": {\n baseStyle: \"spectre\",\n colorEdit: {\n negate: true,\n hueRotation: -20,\n saturation: -0.3,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-negative-pink\": {\n baseStyle: \"spectre\",\n colorEdit: {\n negate: true,\n hueRotation: 10,\n saturation: -0.2,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-negative-orange\": {\n baseStyle: \"spectre\",\n colorEdit: {\n negate: true,\n hueRotation: 80,\n } as ColorEdit,\n } as PresetDefinition,\n\n \"spectre-negative-yellow\": {\n baseStyle: \"spectre\",\n colorEdit: {\n negate: true,\n hueRotation: 110,\n saturation: 0.1,\n } as ColorEdit,\n } as PresetDefinition,\n} as const;\n\n/**\n * Preset styles are base styles on which is applied a set of \"colorEdit\"\n */\nexport type BasemapkitPresetStyle = keyof typeof presetStyles;\n\n/**\n * This is the full list of available styles, including base and preset styles\n */\nexport type BasemapkitStyle = BasemapkitBaseStyle | BasemapkitPresetStyle;\n\n/**\n * Options to modify colors of a base style\n */\nexport type ColorEdit = {\n /**\n * Invert the image color\n */\n negate?: boolean;\n\n /**\n * Ratio relative to current brightness.\n * Value in [-1, 1] but the range is actually open\n */\n brightness?: number;\n\n /**\n * Absolute brightness shift\n * Value in [-1, 1] but the range is actually open\n */\n brightnessShift?: number;\n\n /**\n * Exposure, like brightness but more preserving\n * Value in [-1, 1] but the range is actually open\n */\n exposure?: number;\n\n /**\n * Rotate the hue wheel\n * Value in [-180, 180] but the range is actually open\n */\n hueRotation?: number;\n\n /**\n * Modifiy color saturation\n * Value in [-1, 1] but the range is actually open\n */\n saturation?: number;\n\n /**\n * Multiply every color with the given one.\n */\n multiplyColor?: [\n /**\n * CSS color\n */\n string,\n /**\n * Mixing ratio in [0, 1], where 0 is fully the original color and 1 is fully the provided one.\n */\n number,\n ];\n\n /**\n * Mix every color with the given one.\n */\n mixColor?: [\n /**\n * CSS color\n */\n string,\n /**\n * Mixing ratio in [0, 1], where 0 is fully the original color and 1 is fully the one provided.\n */\n number,\n ];\n\n /**\n * Apply contrast, providing a contrast intensity and a mid (inflection) point\n */\n contrast?: [\n /**\n * Contrast intensity. Value in [-1, 1] but is actually an open range\n */\n number,\n /**\n * Color intensity mid point in the range [0, 255]\n */\n number,\n ];\n};\n\nexport type Lang =\n | \"ar\"\n | \"cs\"\n | \"bg\"\n | \"da\"\n | \"de\"\n | \"el\"\n | \"en\"\n | \"es\"\n | \"et\"\n | \"fa\"\n | \"fi\"\n | \"fr\"\n | \"ga\"\n | \"he\"\n | \"hi\"\n | \"hr\"\n | \"hu\"\n | \"id\"\n | \"it\"\n | \"ja\"\n | \"ko\"\n | \"lt\"\n | \"lv\"\n | \"ne\"\n | \"nl\"\n | \"no\"\n | \"mr\"\n | \"mt\"\n | \"pl\"\n | \"pt\"\n | \"ro\"\n | \"ru\"\n | \"sk\"\n | \"sl\"\n | \"sv\"\n | \"tr\"\n | \"uk\"\n | \"ur\"\n | \"vi\"\n | \"zh-Hans\"\n | \"zh-Hant\";\n\nexport type GetStyleOptions = {\n /**\n * The public URL of a pmtiles files. To use if sourcing tiles directly with\n * range-request using the `pmtiles`'s protocol. Alternatively, the option `tileJson` can be used and will take precedence.\n */\n pmtiles?: string;\n\n /**\n * The public URL to a tile JSON file. To use if classic z/x/y MVT tiles are served through\n * Maplibre's Martin or the pmtiles CLI. Will take precedence on the option `pmtiles` if both are provided.\n */\n tilejson?: string;\n\n /**\n * URL of the sprites\n */\n sprite?: string;\n\n /**\n * URL of the glyphs\n */\n glyphs: string;\n\n /**\n * Language to apply to the basemap. Leaving this undefined will set to auto mode and use the platform language of the end user.\n */\n lang?: Lang;\n\n /**\n * Language script to apply to the basemap\n */\n script?: string;\n\n /**\n * Points Of Interests are shown by default, requiring a sprite URL. Passing this option as `true` will remove the POIs layer\n * and make the `sprite` option unnecessary.\n */\n hidePOIs?: boolean;\n\n /**\n * Labels are shown by default, requiring a glyphs URL. Passing this options as `true` will remove the label layers and make the\n * `glyphs` option unnecessary.\n */\n hideLabels?: boolean;\n\n /**\n * Adding terrain to the style. This includes options for both hillshading and bumpy terrain\n */\n terrain?: {\n /**\n * The public URL of a pmtiles files for raster terrain, encoded on RGB channels of either PNG or WebP. To use if sourcing tiles directly with\n * range-request using the `pmtiles`'s protocol. Alternatively, the option `tileJson` can be used and will take precedence.\n */\n pmtiles?: string;\n\n /**\n * The public URL to a tile JSON file for raster terrain tiles, encoded on RGB channels of either PNG or WebP. To use if classic z/x/y MVT tiles are served through\n * Maplibre's Martin or the pmtiles CLI. Will take precedence on the option `pmtiles` if both are provided.\n */\n tilejson?: string;\n\n /**\n * Encoding of the terrain raster data. Default: \"mapbox\"\n */\n encoding?: \"mapbox\" | \"terrarium\";\n\n /**\n * Enable or disable the hillshading. Enabled by default if one of the source options `terrain.pmtiles` or `terrain.tilejson` is provided.\n * It cannot be enabled if none of the source option is provided.\n */\n hillshading?: boolean;\n\n /**\n * The terrain exaggeration is disabled by default, making the terrain flat even if one of the source options `terrain.pmtiles` or `terrain.tilejson` is provided.\n * A value of `1` produces at-scale realistic terrain elevation.\n * It cannot be enabled if none of the source option is provided.\n */\n exaggeration?: number;\n };\n\n /**\n * Use the globe projection if `true`, Mercator if `false`.\n * Default: `true`\n */\n globe?: boolean;\n};\n\n/**\n * Identifier of the terrain source within the Basemapkit source definition\n */\nexport const BASEMAPKIT_BASEMAP_SOURCE_ID = \"__bmk_bm_src\";\n\n/**\n * Identifier of the terrain source within the Basemapkit style definition.\n */\nexport const BASEMAPKIT_TERRAIN_SOURCE_ID = \"__bmk_tr_src\";\n\n/**\n * Options relative to building a style\n */\nexport type BuildStyleOptions = GetStyleOptions & {\n /**\n * Name of the base style to start from\n */\n baseStyleName: BasemapkitBaseStyle;\n\n /**\n * Optional color modification to apply to the provided style\n */\n colorEdit?: ColorEdit;\n};\n\n/**\n * Returns the list of styles available.\n */\nexport function getStyleList(): string[] {\n const list = [];\n\n for (const baseStyle of Object.keys(baseStyles)) {\n list.push(baseStyle);\n\n const presetsForBaseStyle = Object.entries(presetStyles)\n .filter(([_, preset]) => preset.baseStyle === baseStyle)\n .map(([presetId]) => presetId);\n\n list.push(...presetsForBaseStyle);\n }\n\n return list;\n}\n\n/**\n * Get a style.\n */\nexport function getStyle(styleName: BasemapkitStyle, options: GetStyleOptions): StyleSpecification {\n // Check is style is raw\n if (styleName in baseStyles) {\n return buildStyle({\n ...options,\n baseStyleName: styleName as BasemapkitBaseStyle,\n });\n }\n\n // Or if it's a preset\n if (styleName in presetStyles) {\n const presetInfo = presetStyles[styleName as BasemapkitPresetStyle];\n return buildStyle({\n ...options,\n baseStyleName: presetInfo.baseStyle,\n colorEdit: presetInfo.colorEdit,\n });\n }\n\n throw new Error(`The style \"${styleName}\" does not exist as a base style, nor as a preset.`);\n}\n\n/**\n * Build your own style, using one of the base style as starting point.\n */\nexport function buildStyle(options: BuildStyleOptions): StyleSpecification {\n let countryTextField: string;\n let otherTranslatedTextField: string;\n const hideLabels = options.hideLabels ?? false;\n\n // Not displaying any label\n if (hideLabels) {\n countryTextField = '\"\"';\n otherTranslatedTextField = '\"\"';\n }\n\n // Displaying a label that is supported\n else if (typeof options.lang === \"string\" && isLanguageSupported(options.lang, options.script)) {\n countryTextField = JSON.stringify(get_country_name(options.lang, options.script));\n otherTranslatedTextField = JSON.stringify(get_multiline_name(options.lang, options.script));\n }\n\n // Not providing any language: using platform language\n else {\n const lang = getDefaultLanguage();\n countryTextField = JSON.stringify(get_country_name(lang));\n otherTranslatedTextField = JSON.stringify(get_multiline_name(lang));\n }\n\n if (!(options.baseStyleName in baseStyles)) {\n throw new Error(`The base style ${options.baseStyleName} does not exist.`);\n }\n\n const baseStyleLayers = baseStyles[options.baseStyleName as keyof typeof baseStyles];\n\n const translatedLayersStr = baseStyleLayers\n .replaceAll(\"<BMK_BM_SRC>\", BASEMAPKIT_BASEMAP_SOURCE_ID)\n .replaceAll(\"<BMK_TR_SRC>\", BASEMAPKIT_TERRAIN_SOURCE_ID)\n .replaceAll('\"<LANG>\"', otherTranslatedTextField)\n .replaceAll('\"<LANG_COUNTRY>\"', countryTextField);\n\n let sourceUrl: string;\n if (typeof options.tilejson === \"string\") {\n sourceUrl = options.tilejson;\n } else if (typeof options.pmtiles === \"string\") {\n sourceUrl = `pmtiles://${options.pmtiles}`;\n } else {\n throw new Error(`At least one option of \"tilejson\" or \"pmtiles\" must be provided as data source.`);\n }\n\n let terrainSourceUrl: string = \"\";\n let hillshading = false;\n let terrainEncoding = \"\";\n let terrainExaggeration = 0;\n if (options.terrain) {\n if (typeof options.terrain.tilejson === \"string\") {\n terrainSourceUrl = options.terrain.tilejson;\n } else if (typeof options.terrain.pmtiles === \"string\") {\n terrainSourceUrl = `pmtiles://${options.terrain.pmtiles}`;\n }\n\n if (terrainSourceUrl) {\n hillshading = options.terrain.hillshading ?? true;\n terrainExaggeration = options.terrain.exaggeration ?? 0;\n }\n\n terrainEncoding = options.terrain.encoding ?? \"mapbox\";\n }\n\n let layers = JSON.parse(translatedLayersStr) as unknown as LayerSpecification[];\n const hidePOIs = options.hidePOIs ?? false;\n\n // Remove hillshader layer if unnecessary\n if (!hillshading) {\n layers = layers.filter((l) => l.id !== \"hillshader\");\n }\n\n // Removing the POIs layer\n if (hidePOIs) {\n layers = layers.filter((l) => l.id !== \"pois\");\n }\n\n if (hideLabels) {\n // Keeping the POI layer, yet removing the text field\n const poiLayers = layers.filter((l) => l.id === \"pois\");\n if (poiLayers.length) {\n const poiLayer = poiLayers[0] as SymbolLayerSpecification;\n if (poiLayer.layout !== undefined) {\n const layout = poiLayer.layout;\n if (layout[\"text-field\"] !== undefined) {\n layout[\"text-field\"] = \"\";\n }\n }\n }\n\n layers = layers.filter((layer) => {\n if (layer.id === \"pois\") {\n return true;\n }\n\n if (layer.type !== \"symbol\") {\n return true;\n }\n\n if (layer.layout !== undefined) {\n const layout = layer.layout;\n if (layout[\"text-field\"] !== undefined) {\n return false;\n }\n }\n return true;\n });\n }\n\n const colorOptions = options.colorEdit ?? {};\n const brightness = colorOptions.brightness ?? 0;\n const hueRotation = colorOptions.hueRotation ?? 0;\n const saturation = colorOptions.saturation ?? 0;\n const negate = colorOptions.negate ?? false;\n const brightnessShift = colorOptions.brightnessShift ?? 0;\n const exposure = colorOptions.exposure ?? 0;\n const useGlobeProjection = options.globe ?? true;\n const projection = { type: useGlobeProjection ? \"globe\" : \"mercator\" };\n\n const shouldApplyColorTransform =\n brightness !== 0 ||\n hueRotation !== 0 ||\n saturation !== 0 ||\n negate === true ||\n colorOptions.multiplyColor !== undefined ||\n colorOptions.mixColor !== undefined ||\n brightnessShift !== 0 ||\n colorOptions.contrast !== undefined ||\n exposure !== 0;\n\n if (shouldApplyColorTransform) {\n findColor(layers, (color: string) => {\n // Using the Color lib for saturation and hue rotation\n let layerColor = Color(color);\n\n if (negate) {\n layerColor = layerColor.negate();\n }\n\n if (hueRotation !== 0) {\n layerColor = layerColor.rotate(hueRotation);\n }\n\n if (saturation !== 0) {\n layerColor = layerColor.saturate(saturation);\n }\n\n if (brightness > 0) {\n layerColor = layerColor.lighten(brightness);\n } else if (brightness < 0) {\n layerColor = layerColor.darken(brightness * -1);\n }\n\n if (brightnessShift !== 0) {\n const hsl = layerColor.hsl().array();\n hsl[2] += brightnessShift * 100;\n layerColor = Color.hsl(...hsl);\n }\n\n if (\n Array.isArray(colorOptions.mixColor) &&\n typeof colorOptions.mixColor[0] === \"string\" &&\n typeof colorOptions.mixColor[1] === \"number\" &&\n colorOptions.mixColor[1] !== 0\n ) {\n layerColor = layerColor.mix(Color(colorOptions.mixColor[0]), colorOptions.mixColor[1]);\n }\n\n const rgbColorInstance = layerColor.rgb();\n const alpha = rgbColorInstance.alpha();\n let rgbArr = [rgbColorInstance.red(), rgbColorInstance.green(), rgbColorInstance.blue()] as RGBArray;\n\n // Apply exposure\n if (exposure !== 0) {\n rgbArr = applyBrightnessRGB(rgbArr, exposure);\n }\n\n // Apply contrast\n if (\n Array.isArray(colorOptions.contrast) &&\n typeof colorOptions.contrast[0] === \"number\" &&\n typeof colorOptions.contrast[1] === \"number\" &&\n colorOptions.contrast[0] !== 0\n ) {\n rgbArr = applyContrastRGB(rgbArr, colorOptions.contrast[0], colorOptions.contrast[1]);\n }\n\n // Apply color multiplication\n if (\n Array.isArray(colorOptions.multiplyColor) &&\n typeof colorOptions.multiplyColor[0] === \"string\" &&\n typeof colorOptions.multiplyColor[1] === \"number\" &&\n colorOptions.multiplyColor[1] !== 0\n ) {\n const multiplyColor = Color(colorOptions.multiplyColor[0]);\n rgbArr = applyMultiplicationRGB(\n rgbArr,\n [multiplyColor.red(), multiplyColor.green(), multiplyColor.blue()],\n colorOptions.multiplyColor[1],\n );\n }\n\n // Back to Color lib format\n const outputColor = Color({ r: rgbArr[0], g: rgbArr[1], b: rgbArr[2], alpha: alpha });\n\n if (color.startsWith(\"rgba(\") || color.startsWith(\"rgb(\")) {\n return outputColor.rgb().toString();\n }\n\n if (color.startsWith(\"hsl(\") || color.startsWith(\"hsla(\")) {\n return outputColor.hsl().toString();\n }\n\n return outputColor.hexa();\n });\n }\n\n const style: StyleSpecification = {\n version: 8,\n ...(options.sprite && !hidePOIs ? { sprite: options.sprite } : {}),\n glyphs: options.glyphs,\n sources: {\n [BASEMAPKIT_BASEMAP_SOURCE_ID]: {\n type: \"vector\",\n url: sourceUrl,\n attribution: \"<a href='https://openstreetmap.org/copyright'>© OpenStreetMap Contributors</a>\",\n },\n\n // Add the terrain source if terrain source is provided and the hillshading\n // or terrain is enabled.\n ...(terrainSourceUrl && (terrainExaggeration || hillshading)\n ? {\n [BASEMAPKIT_TERRAIN_SOURCE_ID]: {\n url: terrainSourceUrl,\n type: \"raster-dem\",\n encoding: terrainEncoding,\n } as RasterDEMSourceSpecification,\n }\n : {}),\n },\n layers: layers,\n projection,\n\n // Add the terrain if the terrain source is provided and the exaggeration is superior to 0\n ...(terrainSourceUrl && terrainExaggeration\n ? {\n terrain: {\n source: BASEMAPKIT_TERRAIN_SOURCE_ID,\n exaggeration: terrainExaggeration,\n },\n }\n : {}),\n };\n\n return style;\n}\n\n/**\n * Swap two layers within a style. This creates a clone\n */\nexport function swapLayers(\n /**\n * The ID of a layer within the provided style\n */\n layerA: string,\n /**\n * The ID of another layer within the provided style\n */\n layerB: string,\n\n /**\n * Style to make a copy off\n */\n style: StyleSpecification,\n): StyleSpecification {\n const layerIds = style.layers.map((layer) => layer.id);\n\n if (layerA === layerB) {\n throw new Error(\"The provided layers must have different IDs.\");\n }\n\n const indexLayerA = layerIds.indexOf(layerA);\n const indexLayerB = layerIds.indexOf(layerB);\n\n if (indexLayerA === -1 || indexLayerB === -1) {\n throw new Error(`Cannot swap layers ${layerA} and ${layerB} as both must exist in the provided style.`);\n }\n\n const styleClone = structuredClone(style);\n const contentLayerA = styleClone.layers[indexLayerA];\n const contentLayerB = styleClone.layers[indexLayerB];\n styleClone.layers.splice(indexLayerA, 1, contentLayerB);\n styleClone.layers.splice(indexLayerB, 1, contentLayerA);\n return styleClone;\n}\n\n/**\n * Edit the opacity of a layer, with a number of an advanced expression.\n * This creates a clone of the style object.\n */\nexport function setLayerOpacity(\n layerId: string,\n opacity: PropertyValueSpecification<number>,\n style: StyleSpecification,\n): StyleSpecification {\n const layerIds = style.layers.map((layer) => layer.id);\n const layerIndex = layerIds.indexOf(layerId);\n\n if (layerIndex === -1) {\n throw new Error(`The layer with ID ${layerId} does not exist in the provided style.`);\n }\n\n const layerClone = structuredClone(style);\n const layerData = layerClone.layers[layerIndex];\n const layerType = layerData.type;\n\n if (!(layerData.paint && typeof layerData.paint === \"object\")) {\n layerData.paint = {};\n }\n\n switch (layerType) {\n case \"fill\":\n layerData.paint[\"fill-opacity\"] = opacity;\n break;\n\n case \"line\":\n layerData.paint[\"line-opacity\"] = opacity;\n break;\n\n case \"symbol\":\n layerData.paint[\"icon-opacity\"] = opacity;\n layerData.paint[\"text-opacity\"] = opacity;\n break;\n\n case \"circle\":\n layerData.paint[\"circle-opacity\"] = opacity;\n layerData.paint[\"circle-stroke-opacity\"] = opacity;\n break;\n\n case \"heatmap\":\n layerData.paint[\"heatmap-opacity\"] = opacity;\n break;\n\n case \"fill-extrusion\":\n layerData.paint[\"fill-extrusion-opacity\"] = opacity;\n break;\n\n case \"raster\":\n layerData.paint[\"raster-opacity\"] = opacity;\n break;\n\n case \"hillshade\":\n layerData.paint[\"hillshade-exaggeration\"] = opacity;\n break;\n\n case \"color-relief\":\n layerData.paint[\"color-relief-opacity\"] = opacity;\n break;\n\n case \"background\":\n layerData.paint[\"background-opacity\"] = opacity;\n break;\n }\n\n return layerClone;\n}\n"],"names":["isColorDescription","elem","findColor","data","modifier","dataAsRecord","keys","k","applyBrightnessSingle","input","brightness","normalized","adjusted","applyBrightnessRGB","chan","applyContrastSingle","contrast","midpoint","boundedContrast","steepness","applyContrastRGB","applyMultiplicationSingle","input1","input2","ratio","applyMultiplicationRGB","_chan","i","avenueLayersRaw","bureauLayersRaw","journalLayersRaw","spectreLayersRaw","monochromeLayersRaw","isLanguageSupported","lang","script","candidates","language_script_pairs","l","getDefaultLanguage","systemLang","baseStyles","presetStyles","BASEMAPKIT_BASEMAP_SOURCE_ID","BASEMAPKIT_TERRAIN_SOURCE_ID","getStyleList","list","baseStyle","presetsForBaseStyle","_","preset","presetId","getStyle","styleName","options","buildStyle","presetInfo","countryTextField","otherTranslatedTextField","hideLabels","get_country_name","get_multiline_name","translatedLayersStr","sourceUrl","terrainSourceUrl","hillshading","terrainEncoding","terrainExaggeration","layers","hidePOIs","poiLayers","poiLayer","layout","layer","colorOptions","hueRotation","saturation","negate","brightnessShift","exposure","projection","color","layerColor","Color","hsl","rgbColorInstance","alpha","rgbArr","multiplyColor","outputColor","swapLayers","layerA","layerB","style","layerIds","indexLayerA","indexLayerB","styleClone","contentLayerA","contentLayerB","setLayerOpacity","layerId","opacity","layerIndex","layerClone","layerData","layerType"],"mappings":"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;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ICAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ICAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ICAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ICAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;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"}