Changes between Version 60 and Version 127 of Styles/Coloured_Streets


Ignore:
Timestamp:
(multiple changes)
Author:
(multiple changes)
Comment:
(multiple changes)

Legend:

Unmodified
Added
Removed
Modified
  • Styles/Coloured_Streets

    v60 v127  
    11[[TranslatedPages]]
    22
    3 = [[Image(ColouredStreetsIcon.png)]] Coloured Streets =
    4 [[PageOutline]]
    5 
    6 === Description ===
     3= [[Image(ColouredStreetsIcon.svg,48,middle,inline)]] Coloured Streets =
     4[[PageOutline(2-9)]]
     5
     6== Description ==
     7=== Introduction ===
    78
    89The mappaint style "Coloured Streets" makes '''working with addresses easier.'''
    910
    10 Streets, buildings and address nodes with the same street name are highlighted in the '''same colour'''. Thereby you can quickly recognize, which house belongs to which street. It analyzes for streets the key "name" and for addresses the key "addr:street" resp. for associatedStreet relations for the housenumber the key "name" of the relation. Furthermore it indicates missing or incorrect data. If addr:street is missing then it shows "street?". If addr:housenumber is missing it shows "number?". If there are streets (ways with highway=*) with an addr:*=* tag, then it shows "no addr!".
     11Streets, buildings and address nodes with the same street name are highlighted in the '''same colour'''. Thereby you can quickly recognize, which house belongs to which street. It analyzes for streets the key `name` and for addresses the key `addr:street` resp. for associatedStreet relations for the housenumber the key `name` of the relation. Furthermore it indicates missing or incorrect data. If `addr:street` is missing then it shows "street?". If `addr:housenumber` is missing it shows "number?". (`nohousenumber=yes` is taken into account.) If there are streets (ways with `highway=*`) with an `addr:*=*` tag, then it shows "no addr!".
    1112
    1213Coloured Streets uses '''33 specially selected colours''', which are used on average equally often. In individual cases the same colour of adjacent streets may still occur. This is because of the limited number of clearly distinguishable colours and can not be completely eliminated.
    1314
    14 There are '''3 options''' for customizing the mappaint style. You can change the options in the advanced preferences of JOSM. (Menu: Edit → [[Image(source:/trunk/images/preference.png, 16px, bottom)]] Preferences → down left check Expert mode → [[Image(source:/trunk/images/dialogs/settings.png, 16px, bottom)]] Setting preference entries directly → search for {{{coloured_streets_setting}}}). Accepted values are {{{true}}} and {{{false}}}. After you changed a setting you need to deactivate and reactivate the mappaint style to apply the changes.
    15 
    16 * If you want to allow "addr:postcode=*" on streets (and don't want to see a warning message for these cases), then you change the value of {{{coloured_streets_setting_allow_postcode}}} to {{{true}}} (default is false = not allow = warning is displayed).
    17 * If you want that [osmwiki:Proposed_features/Directional_Prefix_%26_Suffix_Indication name:prefix and name:suffix] for names of streets and associatedStreet relations are taken into account, then you change the value of {{{coloured_streets_setting_support_prefix_and_suffix_on_highway_names}}} to {{{true}}} (default is false = prefix and suffix are ignored = only the key "name" is analyzed). At least in parts of the USA and of Greece names of streets are divided into these components. By activating this option you get better results with Coloured Streets in these areas.
    18 * If you want to see the coloured dashes of streets with cycleway=* and named cycle-/footways, which are part of the default internal mappaint style, then you change the value of {{{coloured_streets_setting_show_cycleway_dashes}}} to {{{true}}} (default is false = the dashes are hidden because they can confuse you in Coloured Streets.)
    19 
    20 You should use Coloured Streets together with the default JOSM internal mappaint style. In the List of mappaint styles in the preferences Coloured Streets should be below the internal style (which means higher priority).
     15=== Style setting ===
     16There are '''6 style settings''' for customizing the mappaint style. You can change the options in the [wiki:Help/Dialog/MapPaint/StyleSettings Map Paint Styles dialog] in the sidebar on the right side. If the dialog is not displayed you can activate it in the menu ''Windows''. In the ''Map Paint Styles'' dialog right click on ''Coloured Streets'' and then point on ''Style Settings'' (see also animation down). After you changed a setting the mappaint style updates automatically. The 5 style settings are:
     17
     18 Allow addr:postcode on streets::
     19  You can choose if you want to allow `addr:postcode=*` on streets and don't want to see a warning message for these cases. The default setting is: ''unchecked'' = not allowed = warning is displayed.
     20 Support prefix and suffix on street names::
     21  You can choose if [osmwiki:Proposed_features/Directional_Prefix_%26_Suffix_Indication name:prefix and name:suffix] for names of streets and associatedStreet relations are taken into account. The default setting is: ''unchecked'' = prefix and suffix are ignored = only the key `name` is analyzed. At least in parts of the USA and of Greece names of streets are divided into these components. By activating this option you get better results with Coloured Streets in these areas.
     22 Display cycleway dashes::
     23  You can choose if you want to see the coloured dashes of streets with `cycleway=*` and named cycle-/footways, which are part of the default internal mappaint style The default setting is: ''unchecked'' = the dashes are hidden because they can confuse you in Coloured Streets.
     24 Display missing number message::
     25  You can choose if you want to deactivate the error message for addresses with `addr:street` or `addr:place` but without `addr:housenumber` ("number?"). The default setting is: ''checked'' = the error message is displayed. If you unchek this, the address is diplayed as if it has a housenumber but with a "?" instead of the number. This can be helpful in areas with a lot such cases and you are instead searching for missing addr:street.
     26 Support associatedStreet relations::
     27  You can choose if associatedStreet relations are supported. The default setting is: ''checked'' = they are supported.
     28 Allow housename instead of housenumber (used in UK)::
     29  You can choose if `addr:housename` is treated the same way like `addr:housenumber`. This is usefull for countries where houses sometimes have only a housename and no housenumber (like in the UK). You should only check this option if this usage is common in the country you are editing. If this setting is checked the "number?" message is not displayed if `addr:housename` is present. The default setting is: ''unchecked'' = `addr:housname` is ignored.
     30
     31=== Further information ===
     32You need to use Coloured Streets together with the default JOSM internal mappaint style. In the List of mappaint styles in the preferences Coloured Streets need to be below the internal style (which means higher priority). The default mappaint style has also ''style settings''. It is recommended to check ''Hide icons at low zoom'' there for a good display (this also hides the text of nodes).
    2133
    2234Other useful tools for address mapping:
    2335[[Coloured_Postcode]],
    2436[[Coloured_Suburb]],
    25 [http://gulp21.bplaced.net/osm/housenumbervalidator/ HousenumberValidator],
    26 [http://tools.geofabrik.de/osmi/debug.html?view=addresses OSM Inspector],
    27 [http://www.itoworld.com/map/9# ITO maps].
    28 
    29 For the Coloured Streets mappaint style JOSM version 7287 or newer is required. For '''ideas/questions/bugs/suggestions''' or similar please write a message to the current editor [osmwww:user/Klumbumbus Klumbumbus] and/or the former editor [osmwww:user/geozeisig geozeisig].
     37[https://tools.geofabrik.de/osmi/?view=addresses OSM Inspector].
     38
     39For the Coloured Streets mappaint style JOSM version 8087 or newer is required. For '''ideas/questions/bugs/suggestions''' or similar please write a message to the current editor [osmwww:user/Klumbumbus Klumbumbus] and/or the former editor [osmwww:user/geozeisig geozeisig].
    3040
    3141Feel free to translate this wiki page into more languages. Already translated languages see top right.
    3242
     43=== Example images ===
    3344'''Example of Coloured Streets:'''
    3445
     
    4354^(data used for image [osmwww:copyright ©OpenStreetMap contributors] ODbL)^
    4455
    45 For comparison, here is a part of my "test center".
    46 
    47 '''JOSM default internal style compared to Coloured Streets 3.0:'''
     56For comparison, here is a part of my [attachment:Testcenter.osm test center]:
     57
     58'''JOSM default internal style compared to Coloured Streets 3.37:'''
    4859
    4960[[Image(JOSM_internal_compared_to_Coloured_Streets.gif​)]]
     
    5162^(This picture was created with a modified version of Coloured Streets to ensure that all colours show up top.)^
    5263
    53 === Changelog ===
     64'''Set Style settings:'''
     65
     66[[Image(style_settings.gif​)]]
     67
     68== Changelog ==
    5469^(Latest change first)^
    55 ==== Version 3.23.xx to 3.24.xx ====
     70==== Version 3.53 ====
     71* Fix one more display bug of version 3.51
     72==== Version 3.52 ====
     73* Fix some display bugs of version 3.51 when "Display missing number message" was disabled
     74==== Version 3.51 ====
     75* Add full support for `nohousenumber=yes`: If there is `addr:street` or `addr:place` present or if the object is part of a associatedStreet relation (and associatedStreet relation support is activated) then the object is displayed like a normal housenumber with "no" as number. If there is no such connection to a street then the object is toned down like minor buildings (e.g. `building=garage`).
     76==== Version 3.50 ====
     77* Improved icon with transparent background, more sharpness on different sizes and reduced filesize
     78* Icon included in style zip file instead of external link
     79==== Version 3.49 ====
     80* Tone down more building types: `building=carport|gasometer|silo|storage_tank|toilets|transformer_tower|transportation` (similar to e.g. `building=garage`).
     81==== Version 3.48 ====
     82* Adjustments due to changes in default style (r10896).
     83==== Version 3.47 ====
     84* Add an option to allow `addr:housename` instead of `addr:housenumber`, which is sometimes used in UK
     85* A few coding style adjustments
     86==== Version 3.46 ====
     87* Adjustments due to changes in default style (r9451), i.e. support bigger and filled selected nodes.
     88==== Version 3.45 ====
     89* Adjustments due to changes in default style (r9566).
     90==== Version 3.44 ====
     91* remove warning that JOSM is to old for this style (code no longer supportes by JOSM)
     92==== Version 3.43 ====
     93* remove address warning for highway=services and highway=rest_area.
     94==== Version 3.42 ====
     95* Fix a graphical glitch with the plus signs which allow to add nodes to ways.
     96==== Version 3.41 ====
     97* Fix size of tagged waynodes at zoomlevel 17
     98* Add a style setting to hide the warning message if JOSM is too old for Coloured Streets
     99==== Version 3.40 ====
     100* Do not colour highway=emergency_access_point.
     101==== Version 3.39 ====
     102* Do not ask for "name?" on streets with junction=roundabout. (Thanks to user feedback.)
     103==== Version 3.38 ====
     104* Replace .png icon by .svg version.
     105==== Version 3.37 ====
     106* Fix size of single nodes on high zoom levels.
     107==== Version 3.36 ====
     108* Fix if the style setting ''Less obtrusive node symbols at low zoom'' is disabled in the default style.
     109==== Version 3.35 ====
     110* Adjustments due to changes in default style (#10363, ticket:10043#comment:31).
     111* There is a new setting which allows to deactivate the support of associatedStreet relations.
     112* Coloured Streets uses now the new way to handle user settings (#10421) which is much more user friedly than before (including faster to change, the map updates automatically and a proper label).
     113* Display a warning message if the used JOSM version is to old for Coloured Streets.
     114* Areas with housenumber or a warning message now have a higher display priority.
     115* Zoom dependence of font size of area texts.
     116* "no addr!" changed to "no address!".
     117* Improvements and unifications for the display of error messages on ways ("no address!", "name?" and "addr:interpolation shouldn't have other addr:*=* tags!"). Now you can also recognize more easily if such a way is selected or not.
     118* Replaced some hex color codes to css color names for better readability of the code (e.g. #FFFF00 to yellow).
     119* Changed white color to !#8B864E also for name:left and name:right on streets.
     120* Preparations for future translations of the error messages and the mappaint user settings (this is not yet supported by JOSM).
     121==== Version 3.33 ====
     122* Fixed handling of piste:difficulty paint style of default style.
     123* Support also validate:no_name=yes
     124* Display again the dashes of living_street which do not have a name tag but one of the noname-tags (noname, unnamed, name:absent or validate:no_name).
     125==== Version 3.32 ====
     126* Changed order of housenumber and "street?". Now the number is before "street?". The number is therefore now less often hidden by the outline of the building.
     127==== Version 3.31 ====
     128* The dashes of highway=living_street are now hidden, since they were distracting.
     129==== Version 3.30 ====
     130* There is a new setting which allows to deactivate the error message for missing addr:housenumber. If deactivated, the address is diplayed as if it has an house number but with a "?" instead of the number.
     131==== Version 3.29 ====
     132* All ways with barrier=* are now diyplayed thinner, not just for selected values like before.
     133* The white color was changed to !#8B864E, so Coloured Streets works now also on white background (e.g. on a cadastral plan with white background).
     134==== Version 3.27 ====
     135* name:left and name:right on streets are now supported by a coloured casing. [osmwww:way/26366570 Example 1], [osmwww:way/23639836 Example 2]
     136==== Version 3.25 ====
     137* The yellow ways with barrier=* are now displayed thiner to avoid confusion with coloured streets/ways.
     138==== Version 3.24 ====
    56139* More fixes due to changes in JOSM version [7200].
    57140* Using the new mapcss function JOSM_pref() instead of the previous used color hack to provide the settings.
    58141* A new setting to hide the colured dashes of streets with cycleway=* and named cycle-/footways was added. (Display of cycleway lanes and tracks was extended in [7172] and [7201].) By default they are hided because they can be very confusing in Coloured Streets.
    59142* building=farm was removed from the list of buildings, which are displayed toned down.
    60 ==== Version 3.22.xx to 3.23.xx ====
     143==== Version 3.23 ====
    61144* Fix due to changes in JOSM version [7200].
    62 ==== Version 3.20.xx to 3.22.xx ====
     145==== Version 3.22 ====
    63146* Deactivate the paint style of piste:difficulty=* from the default internal JOSM mappaint style elemstyle.mapcss, because it is confusing together with Coloured Streets.
    64 ==== Version 3.11.xx to 3.20.xx ====
     147==== Version 3.20 ====
    65148* The width of streets depends now on the value of highway=* for better orientation.
    66149 * Little bit thiner are: path, footway, steps, pedestrian, cycleway, bridleway, track, escape, bus_guideway, service
     
    72155 * #ffe400 changed to #ffcc00
    73156 * #fcff5c  changed to #f4ff6b
    74 ==== Version 3.10.xx to 3.11.xx ====
     157==== Version 3.11 ====
    75158* "name?" on streets is no longer displayed if the street has one of the tags: noname=yes, unnamed=yes or name:absent=yes
    76 ==== Version 3.01.xx to 3.10.xx ====
     159==== Version 3.10 ====
    77160* When you zoom out the nodes get smaller until they finally disappear
    78161* Text and icons are hidden on low zoom levels
    79162* The text gets a bit bigger at high zoom levels
    80163This all results in better readability on higher zoom levels and a better overview on lower zoom levels. This was inspired by the style [LessObtrusiveNodes Less Obtrusive Nodes]. So you no longer need to activate both, but just Colured Streets and you get a nice view on all zoom levels.
    81 ==== Version 3.00.xx to 3.01.xx ====
     164==== Version 3.01 ====
    82165* The warning massage on streets "no name!" changed to "name?". All messages do now follow the same schema (all messages where something is missing with "?" and all messages where something is wrong with "!").
    83166* The following colours slightly changed for better distinction with other colors:
     
    85168 * !#32cd32 changed to !#54d954
    86169 * !#81621a changed to !#7d5a07
    87 ==== Version 2.00.xx to 3.00.xx ====
     170==== Version 3.00 ====
    88171* Instead of analyzing the first letter of the street name for colour choice, now a crc32-hashcode is generated and based on this the colours are choosen. This results in the following listed advantages. Special thanks at this point to the development team of JOSM, which special for this mappaint style implemented a new function. Without this new function the following improvements wouldn't be possible.
    89172 * Different streets with the same first letter, which are near to each other are now displayed in different colours.
     
    113196* Some code optimizations
    114197
    115 ==== Version 1.011 to 2.00.xx ====
     198==== Version 2.00 ====
    116199* The housenumbers are bigger, have a coloured background and are thereby more visible.
    117200* Support of associatedStreet relations
     
    153236* "no addr!" has now always red background
    154237
     238==== Version 1.011 ====
     239* Start version
     240
    155241== Code ==
    156242
     
    158244#!style type="mapcss"
    159245
    160 meta
    161 {
    162         title: "Coloured Streets";
    163         version: "3.24.[[revision]]_[[date]]";
    164         description: "Colouring of buildings, address nodes and streets with the same street name in the same colour. Makes working with addresses a lot easier. Check out the linked page to read how to change some settings of this mappaint style. Min. JOSM version is 7287.";
    165         icon: "http://upload.wikimedia.org/wikipedia/commons/3/3a/ColouredStreetsIcon.png";
    166         author: "geozeisig, Klumbumbus";
    167         link: "http://josm.openstreetmap.de/wiki/Styles/Coloured_Streets";
    168         watch-modified: true;
    169         min-josm-version: "7287";
    170         /* This mapcss mappaint style was created for JOSM 7287. I try to support future versions of JOSM as long as possible. */
    171 }
    172 
    173 meta[lang=de]
    174 {
    175         title: "Coloured Streets";
    176         description: "Einfärben von Gebäuden, Adressnodes und Straßen mit gleichem Straßennamen in der gleichen Farbe. Macht die Arbeit mit Adressen wesentlich leichter. Schau dir die verlinkte Seite an, um zu lesen, wie man einige Einstellungen dieses MapMaint-Stils ändert. Min. JOSM-Version ist 7287.";
    177         link: "http://josm.openstreetmap.de/wiki/De:Styles/Coloured_Streets";
     246meta {
     247    title: "Coloured Streets";
     248    version: "3.53.[[revision]]_[[date]]";
     249    description: "Colouring of buildings, address nodes and streets with the same street name in the same colour. Makes working with addresses a lot easier. Check out the linked page to read how to change some settings of this mappaint style.";
     250    icon: "ColouredStreetsIcon.svg";
     251    author: "geozeisig, Klumbumbus";
     252    link: "https://josm.openstreetmap.de/wiki/Styles/Coloured_Streets";
     253    min-josm-version: "8087"; /* due to @supports */
     254    /* This mapcss mappaint style was created for JOSM 8087. I try to support future versions of JOSM and its internal default mappaint style as long as possible. */
     255}
     256
     257meta[lang=de] {
     258    title: "Coloured Streets";
     259    description: "Einfärben von Gebäuden, Adressnodes und Straßen mit gleichem Straßennamen in der gleichen Farbe. Macht die Arbeit mit Adressen wesentlich leichter. Schau dir die verlinkte Seite an, um zu lesen, wie man einige Einstellungen dieses MapMaint-Stils ändert.";
     260    link: "https://josm.openstreetmap.de/wiki/De:Styles/Coloured_Streets";
    178261}
    179262
     
    182265/* ------------------------------------------------------------------------------------------------------------------------ */
    183266
    184 /* Create settings. After changing a setting in the advanced preferences you need to disable and reenable the style to apply the changes. */
    185 *
    186 {
    187         show_bicycle: JOSM_pref(coloured_streets_setting_show_cycleway_dashes, false);
    188         /* Default is false, that means the coloured dashes of streets with cycleway=* and named cycle-/footways are hidden. This is because the coloured dashes can confuse you in Coloured Streets.*/
    189         allow_postcode: JOSM_pref(coloured_streets_setting_allow_postcode, false);
    190         /* Default is false, that means a warning is displayed, if you put postcode=* on streets. */
    191         support_prefix_and_suffix: JOSM_pref(coloured_streets_setting_support_prefix_and_suffix_on_highway_names, false);
    192         /* Default is false, that means prefix and suffix are ignored. */
    193 }
    194 
    195 /* create crc32checksums. They are use later in the stylesheet to determine the colour. Due to the division by 429496.7296 crc is always a number between 0 and 10000. */
    196         /* streets and pedestrian areas */
    197 way[highway][name][highway!="platform"][prop(support_prefix_and_suffix)=false],
    198 way[highway][name][highway!="platform"][prop(support_prefix_and_suffix)=true][!name:prefix][!name:suffix],
    199 area[highway="pedestrian"][name][prop(support_prefix_and_suffix)=false]:closed,
    200 area[highway="pedestrian"][name][prop(support_prefix_and_suffix)=true][!name:prefix][!name:suffix]:closed
    201 {
    202         crc: CRC32_checksum(tag(name))/429496.7296;
    203 }
    204 way[highway][name][highway!="platform"][prop(support_prefix_and_suffix)=true][name:prefix][!name:suffix],
    205 area[highway="pedestrian"][name][prop(support_prefix_and_suffix)=true][name:prefix][!name:suffix]:closed
    206 {
    207         crc: CRC32_checksum(concat(tag("name:prefix"), " ", tag("name")))/429496.7296;
    208 }
    209 way[highway][name][highway!="platform"][prop(support_prefix_and_suffix)=true][!name:prefix][name:suffix],
    210 area[highway="pedestrian"][name][prop(support_prefix_and_suffix)=true][!name:prefix][name:suffix]:closed
    211 {
    212         crc: CRC32_checksum(concat(tag("name"), " ", tag("name:suffix")))/429496.7296;
    213 }
    214 way[highway][name][highway!="platform"][prop(support_prefix_and_suffix)=true][name:prefix][name:suffix],
    215 area[highway="pedestrian"][name][prop(support_prefix_and_suffix)=true][name:prefix][name:suffix]:closed
    216 {
    217         crc: CRC32_checksum(concat(tag("name:prefix"), " ", tag("name"), " ", tag("name:suffix")))/429496.7296;
    218 }
    219 
    220         /* associated street relations */
    221 relation[type="associatedStreet"][name] > area["addr:housenumber"][prop(support_prefix_and_suffix)=false],
    222 relation[type="associatedStreet"][name] > node["addr:housenumber"][prop(support_prefix_and_suffix, default)=false]::halo,
    223 relation[type="associatedStreet"][name][!name:prefix][!name:suffix] > area["addr:housenumber"][prop(support_prefix_and_suffix)=true],
    224 relation[type="associatedStreet"][name][!name:prefix][!name:suffix] > node["addr:housenumber"][prop(support_prefix_and_suffix, default)=true]::halo
    225 {
    226         crc: CRC32_checksum(parent_tag("name"))/429496.7296;
    227 }
    228 relation[type="associatedStreet"][name][name:prefix][!name:suffix] > area["addr:housenumber"][prop(support_prefix_and_suffix)=true],
    229 relation[type="associatedStreet"][name][name:prefix][!name:suffix] > node["addr:housenumber"][prop(support_prefix_and_suffix, default)=true]::halo
    230 {
    231         crc: CRC32_checksum(concat(parent_tag("name:prefix"), " ", parent_tag("name")))/429496.7296;
    232 }
    233 relation[type="associatedStreet"][name][!name:prefix][name:suffix] > area["addr:housenumber"][prop(support_prefix_and_suffix)=true],
    234 relation[type="associatedStreet"][name][!name:prefix][name:suffix] > node["addr:housenumber"][prop(support_prefix_and_suffix, default)=true]::halo
    235 {
    236         crc: CRC32_checksum(concat(parent_tag("name"), " ", parent_tag("name:suffix")))/429496.7296;
    237 }
    238 relation[type="associatedStreet"][name][name:prefix][name:suffix] > area["addr:housenumber"][prop(support_prefix_and_suffix)=true],
    239 relation[type="associatedStreet"][name][name:prefix][name:suffix] > node["addr:housenumber"][prop(support_prefix_and_suffix, default)=true]::halo
    240 {
    241         crc: CRC32_checksum(concat(parent_tag("name:prefix"), " ", parent_tag("name"), " ", parent_tag("name:suffix")))/429496.7296;
    242 }
    243 
    244         /* everything else */
    245 *["addr:place"]
    246 {
    247         crc: CRC32_checksum(tag("addr:place"))/429496.7296;
    248 }
    249 *["addr:place"]::halo
    250 {
    251         crc: CRC32_checksum(tag("addr:place"))/429496.7296;
    252 }
    253 *["addr:street"]
    254 {
    255         crc: CRC32_checksum(tag("addr:street"))/429496.7296;
    256 }
    257 *["addr:street"]::halo
    258 {
    259         crc: CRC32_checksum(tag("addr:street"))/429496.7296;
     267/* Create mappaint user settings. */
     268setting::display_bicycle {
     269    type: boolean;
     270    label: tr("Display cycleway dashes");
     271    default: false;
     272}
     273setting::allow_postcode {
     274    type: boolean;
     275    label: tr("Allow addr:postcode on streets");
     276    default: false;
     277}
     278setting::support_prefix_and_suffix {
     279    type: boolean;
     280    label: tr("Support prefix and suffix on street names");
     281    default: false;
     282}
     283setting::display_missing_number_message {
     284    type: boolean;
     285    label: tr("Display missing number message");
     286    default: true;
     287}
     288setting::support_associatedstreet {
     289    type: boolean;
     290    label: tr("Support associatedStreet relations");
     291    default: true;
     292}
     293setting::allow_housename {
     294    type: boolean;
     295    label: tr("Allow housename instead of housenumber (used in UK)");
     296    default: false;
     297}
     298
     299/* create crc32checksums. They are use later in the stylesheet to determine the colour.
     300Due to the division by 429496.7296 crc is always a number between 0 and 10000. */
     301    /* streets and pedestrian areas */
     302way[highway][name][highway!="platform"][highway!="emergency_access_point"][!setting("support_prefix_and_suffix")],
     303way[highway][name][highway!="platform"][highway!="emergency_access_point"][setting("support_prefix_and_suffix")][!name:prefix][!name:suffix],
     304area[highway="pedestrian"][name][!setting("support_prefix_and_suffix")]:closed,
     305area[highway="pedestrian"][name][setting("support_prefix_and_suffix")][!name:prefix][!name:suffix]:closed {
     306    crc: CRC32_checksum(tag(name))/429496.7296;
     307}
     308way[highway][name][highway!="platform"][highway!="emergency_access_point"][setting("support_prefix_and_suffix")][name:prefix][!name:suffix],
     309area[highway="pedestrian"][name][setting("support_prefix_and_suffix")][name:prefix][!name:suffix]:closed {
     310    crc: CRC32_checksum(concat(tag("name:prefix"), " ", tag("name")))/429496.7296;
     311}
     312way[highway][name][highway!="platform"][highway!="emergency_access_point"][setting("support_prefix_and_suffix")][!name:prefix][name:suffix],
     313area[highway="pedestrian"][name][setting("support_prefix_and_suffix")][!name:prefix][name:suffix]:closed {
     314    crc: CRC32_checksum(concat(tag("name"), " ", tag("name:suffix")))/429496.7296;
     315}
     316way[highway][name][highway!="platform"][highway!="emergency_access_point"][setting("support_prefix_and_suffix")][name:prefix][name:suffix],
     317area[highway="pedestrian"][name][setting("support_prefix_and_suffix")][name:prefix][name:suffix]:closed {
     318    crc: CRC32_checksum(concat(tag("name:prefix"), " ", tag("name"), " ", tag("name:suffix")))/429496.7296;
     319}
     320
     321    /* associated street relations */
     322        /* nohousenumber=yes */
     323relation[type="associatedStreet"][name] > area[nohousenumber=yes][!setting("support_prefix_and_suffix")][setting("support_associatedstreet")],
     324relation[type="associatedStreet"][name] > node[nohousenumber=yes][!setting("support_prefix_and_suffix")][setting("support_associatedstreet")]::halo,
     325relation[type="associatedStreet"][name][!name:prefix][!name:suffix] > area[nohousenumber=yes][setting("support_prefix_and_suffix")][setting("support_associatedstreet")],
     326relation[type="associatedStreet"][name][!name:prefix][!name:suffix] > node[nohousenumber=yes][setting("support_prefix_and_suffix")][setting("support_associatedstreet")]::halo {
     327    crc: CRC32_checksum(parent_tag("name"))/429496.7296;
     328}
     329relation[type="associatedStreet"][name][name:prefix][!name:suffix] > area[nohousenumber=yes][setting("support_prefix_and_suffix")][setting("support_associatedstreet")],
     330relation[type="associatedStreet"][name][name:prefix][!name:suffix] > node[nohousenumber=yes][setting("support_prefix_and_suffix")][setting("support_associatedstreet")]::halo {
     331    crc: CRC32_checksum(concat(parent_tag("name:prefix"), " ", parent_tag("name")))/429496.7296;
     332}
     333relation[type="associatedStreet"][name][!name:prefix][name:suffix] > area[nohousenumber=yes][setting("support_prefix_and_suffix")][setting("support_associatedstreet")],
     334relation[type="associatedStreet"][name][!name:prefix][name:suffix] > node[nohousenumber=yes][setting("support_prefix_and_suffix")][setting("support_associatedstreet")]::halo {
     335    crc: CRC32_checksum(concat(parent_tag("name"), " ", parent_tag("name:suffix")))/429496.7296;
     336}
     337relation[type="associatedStreet"][name][name:prefix][name:suffix] > area[nohousenumber=yes][setting("support_prefix_and_suffix")][setting("support_associatedstreet")],
     338relation[type="associatedStreet"][name][name:prefix][name:suffix] > node[nohousenumber=yes][setting("support_prefix_and_suffix")][setting("support_associatedstreet")]::halo {
     339    crc: CRC32_checksum(concat(parent_tag("name:prefix"), " ", parent_tag("name"), " ", parent_tag("name:suffix")))/429496.7296;
     340}
     341        /* normal addr:housenumber */
     342relation[type="associatedStreet"][name] > area["addr:housenumber"][!setting("support_prefix_and_suffix")][setting("support_associatedstreet")],
     343relation[type="associatedStreet"][name] > node["addr:housenumber"][!setting("support_prefix_and_suffix")][setting("support_associatedstreet")]::halo,
     344relation[type="associatedStreet"][name][!name:prefix][!name:suffix] > area["addr:housenumber"][setting("support_prefix_and_suffix")][setting("support_associatedstreet")],
     345relation[type="associatedStreet"][name][!name:prefix][!name:suffix] > node["addr:housenumber"][setting("support_prefix_and_suffix")][setting("support_associatedstreet")]::halo {
     346    crc: CRC32_checksum(parent_tag("name"))/429496.7296;
     347}
     348relation[type="associatedStreet"][name][name:prefix][!name:suffix] > area["addr:housenumber"][setting("support_prefix_and_suffix")][setting("support_associatedstreet")],
     349relation[type="associatedStreet"][name][name:prefix][!name:suffix] > node["addr:housenumber"][setting("support_prefix_and_suffix")][setting("support_associatedstreet")]::halo {
     350    crc: CRC32_checksum(concat(parent_tag("name:prefix"), " ", parent_tag("name")))/429496.7296;
     351}
     352relation[type="associatedStreet"][name][!name:prefix][name:suffix] > area["addr:housenumber"][setting("support_prefix_and_suffix")][setting("support_associatedstreet")],
     353relation[type="associatedStreet"][name][!name:prefix][name:suffix] > node["addr:housenumber"][setting("support_prefix_and_suffix")][setting("support_associatedstreet")]::halo {
     354    crc: CRC32_checksum(concat(parent_tag("name"), " ", parent_tag("name:suffix")))/429496.7296;
     355}
     356relation[type="associatedStreet"][name][name:prefix][name:suffix] > area["addr:housenumber"][setting("support_prefix_and_suffix")][setting("support_associatedstreet")],
     357relation[type="associatedStreet"][name][name:prefix][name:suffix] > node["addr:housenumber"][setting("support_prefix_and_suffix")][setting("support_associatedstreet")]::halo {
     358    crc: CRC32_checksum(concat(parent_tag("name:prefix"), " ", parent_tag("name"), " ", parent_tag("name:suffix")))/429496.7296;
     359}
     360
     361    /* everything else (This block is after the block for associated street relations. That means if something is part of a associated street relation
     362    and also has an addr:street or addr:place tag, then addr:street resp. addr:place has the higher priority for the color choice than the relation.) */
     363*["addr:place"] {
     364    crc: CRC32_checksum(tag("addr:place"))/429496.7296;
     365}
     366*["addr:place"]::halo {
     367    crc: CRC32_checksum(tag("addr:place"))/429496.7296;
     368}
     369*["addr:street"] {
     370    crc: CRC32_checksum(tag("addr:street"))/429496.7296;
     371}
     372*["addr:street"]::halo {
     373    crc: CRC32_checksum(tag("addr:street"))/429496.7296;
     374}
     375
     376    /* own crc values for name:left and name:right on streets */
     377way[highway][highway!="platform"][highway!="emergency_access_point"]["name:left"] {
     378    crc_left: CRC32_checksum(tag("name:left"))/429496.7296;
     379}
     380way[highway][highway!="platform"][highway!="emergency_access_point"]["name:right"] {
     381    crc_right: CRC32_checksum(tag("name:right"))/429496.7296;
    260382}
    261383
     
    264386/* ------------------------------------------------------------------------------------------------------------------------ */
    265387
    266 /* General display rules for nodes and areas on lower and higher zoom levels for better view. This section is inspired by the mappaint style "Less obtrusive nodes". */
    267         /* smaller nodes on low zoom levels and hiding text and icons */
    268 canvas
    269 {
    270         default-points: false;
    271 }
    272 
    273 node
    274 {
    275         text: auto;
    276 }
    277 
    278 node|z17-
    279 {
    280         symbol-size:1;
    281         symbol-shape: square;
    282         symbol-stroke-color: #ffff00;
    283 }
    284 
    285 node|z17                                { symbol-size: 2; }
    286 way > node|z17                  { symbol-size: 1; }
    287 node|z17:connection             { symbol-size: 2; }
    288 
    289 node|z18                                { symbol-size: 4; }
    290 way > node|z18                  { symbol-size: 2; }
    291 node|z18:connection             { symbol-size: 4; }
    292 
    293 node|z19                                { symbol-size: 5; }
    294 way > node|z19                  { symbol-size: 3; }
    295 node|z19:connection             { symbol-size: 5; }
    296 
    297 node|z20-                               { symbol-size: 6; }
    298 way > node|z20-                 { symbol-size: 4; }
    299 node|z20-:connection    { symbol-size: 6; }
    300 
    301 
    302 node|z-16, relation|z-16[type=restriction]
    303 {
    304         icon-image: none;
    305 }
    306 
    307 node|z-17
    308 {
    309         text: eval("");
    310 }
    311 
    312         /* bigger text of nodes and areas on high zoom levels */
    313 node|z20,area|z20       { font-size: 9; }
    314 node|z21,area|z21       { font-size: 10; }
    315 node|z22-,area|z22-     { font-size: 11; }
    316 
    317 /* ------------------------------------------------------------------------------------------------------------------------ */
    318 /* ------------------------------------------------------------------------------------------------------------------------ */
    319 /* ------------------------------------------------------------------------------------------------------------------------ */
    320 
    321 /* tone down landuse fill-color */
    322 area[landuse]
    323 {
    324         fill-opacity: 0.12;
    325 }
    326 
    327 /* disable place fill-color */
    328 area[place]
    329 {
    330         fill-opacity: 0;
    331 }
    332 
    333 /* tone down garages and other "minor" buildings, as they usually do not have addr:*=* tags. */
     388/* Changes to the JOSM internal mappaint style elemstyles.mapcss to fit better together with Coloured Streets; hide distracting features */
     389    /* Zoom behavior of nodes and text, which is a bit different than in the default style */
     390
     391node|z-16               { symbol-size: 2; }
     392way > node|z-15!:tagged { symbol-shape: none; }
     393way > node|z16!:tagged  { symbol-size: 1; }
     394
     395node|z17                { symbol-size: 2; }
     396way > node|z17!:tagged  { symbol-size: 1; }
     397node|z17:connection     { symbol-size: 2; }
     398
     399node|z18                { symbol-size: 4; }
     400way > node|z18          { symbol-size: 2; }
     401node|z18:connection     { symbol-size: 4; }
     402
     403node|z19                { symbol-size: 4; }
     404way > node|z19          { symbol-size: 3; }
     405node|z19:connection     { symbol-size: 5; }
     406
     407node|z20-               { symbol-size: 4; }
     408way > node|z20-         { symbol-size: 4; }
     409node|z20-:connection    { symbol-size: 6; }
     410
     411@supports (min-josm-version: 9451) {
     412node:selected           { symbol-size: 6; symbol-shape: square; }
     413}
     414
     415node|z18-19,area|z18-19 { font-size: 8; }
     416node|z20,area|z20       { font-size: 9; }
     417node|z21,area|z21       { font-size: 10; }
     418node|z22-,area|z22-     { font-size: 11; }
     419
     420    /* tone down landuse fill-color */
     421area[landuse] {
     422    fill-opacity: 0.12;
     423}
     424
     425    /* disable place fill-color */
     426area[place] {
     427    fill-opacity: 0;
     428}
     429
     430    /* tone down garages and other "minor" buildings, as they usually do not have addr:*=* tags. Also buildings with nohousenumber=yes. */
     431area[!"addr:housenumber"][!"addr:street"][!"addr:place"][nohousenumber=yes],
    334432area[!"addr:housenumber"][!"addr:street"][!"addr:place"][building=barn],
    335433area[!"addr:housenumber"][!"addr:street"][!"addr:place"][building=bunker],
    336434area[!"addr:housenumber"][!"addr:street"][!"addr:place"][building=cabin],
     435area[!"addr:housenumber"][!"addr:street"][!"addr:place"][building=carport],
    337436area[!"addr:housenumber"][!"addr:street"][!"addr:place"][building=cowshed],
    338437area[!"addr:housenumber"][!"addr:street"][!"addr:place"][building=farm_auxiliary],
    339438area[!"addr:housenumber"][!"addr:street"][!"addr:place"][building=garage],
    340439area[!"addr:housenumber"][!"addr:street"][!"addr:place"][building=garages],
     440area[!"addr:housenumber"][!"addr:street"][!"addr:place"][building=gasometer],
    341441area[!"addr:housenumber"][!"addr:street"][!"addr:place"][building=greenhouse],
    342442area[!"addr:housenumber"][!"addr:street"][!"addr:place"][building=hut],
    343443area[!"addr:housenumber"][!"addr:street"][!"addr:place"][building=roof],
    344444area[!"addr:housenumber"][!"addr:street"][!"addr:place"][building=shed],
     445area[!"addr:housenumber"][!"addr:street"][!"addr:place"][building=silo],
    345446area[!"addr:housenumber"][!"addr:street"][!"addr:place"][building=stable],
    346447area[!"addr:housenumber"][!"addr:street"][!"addr:place"][building=static_caravan],
    347 area[!"addr:housenumber"][!"addr:street"][!"addr:place"][building=sty]
    348 {
    349         fill-color: #ffddf1;
    350         width: 1;
    351 }
    352 
    353 /* deactivate the paint style of piste:difficulty from the default josm
    354 style elemstyle.mapcss, because it is distracting in Coloured Streets */
    355 way["piste:difficulty"]::core_piste
    356 {
    357         width: 0;
    358 }
    359 
    360 area["piste:difficulty"]:closed::core_piste
    361 {
    362         fill-opacity: 1;
    363 }
    364 
    365 /* option to deactivate the paint style of cycleways (lane and track) from the default
    366 josm style elemstyle.mapcss, because it can be distracting in Coloured Streets */
    367 way.lR[prop(show_bicycle, default)=false]::core_cycleway,
    368 way.tR[prop(show_bicycle, default)=false]::core_cycleway,
    369 way[cycleway=opposite][prop(show_bicycle, default)=false]::core_cycleway
    370 {
    371         width: 0;
    372 }
    373 
    374 /* (grouping the previous and the following block doesn't work correctly, see http://josm.openstreetmap.de/ticket/10106 )*/
    375 way[prop("tL","core_cycleway")][prop(show_bicycle, default)=false]::core_cycleway2,
    376 way[prop("lL","core_cycleway")][prop(show_bicycle, default)=false]::core_cycleway2
    377 {
    378         width: 0;
    379 }
    380 
    381 way[prop(show_bicycle)=false][name][highway=path][bicycle=designated][foot=designated],
    382 way[prop(show_bicycle)=false][name][highway=path][bicycle=official][foot=official],
    383 way[prop(show_bicycle)=false][name][highway=cycleway][foot=yes],
    384 way[prop(show_bicycle)=false][name][highway=path][bicycle=designated][foot=yes],
    385 way[prop(show_bicycle)=false][name][highway=path][bicycle=official][foot=yes],
    386 way[prop(show_bicycle)=false][name][highway=footway][bicycle=yes],
    387 way[prop(show_bicycle)=false][name][highway=path][bicycle=yes][foot=designated],
    388 way[prop(show_bicycle)=false][name][highway=path][bicycle=yes][foot=official]
    389 {
    390         dashes: none;
    391 }
    392 
     448area[!"addr:housenumber"][!"addr:street"][!"addr:place"][building=storage_tank],
     449area[!"addr:housenumber"][!"addr:street"][!"addr:place"][building=sty],
     450area[!"addr:housenumber"][!"addr:street"][!"addr:place"][building=toilets],
     451area[!"addr:housenumber"][!"addr:street"][!"addr:place"][building=transformer_tower],
     452area[!"addr:housenumber"][!"addr:street"][!"addr:place"][building=transportation] {
     453    fill-color: #ffddf1;
     454    width: 1;
     455}
     456
     457    /* deactivate the paint style of piste:difficulty */
     458way["piste:difficulty"]::core_piste {
     459    width: 0;
     460}
     461@supports (max-josm-version: 10895) {
     462way["piste:difficulty"]:closed::core_piste {
     463    width: 2;
     464    color: grey;
     465}
     466area["piste:difficulty"]:closed::core_piste {
     467    fill-opacity: 0;
     468}
     469}
     470@supports (min-josm-version: 10896) {
     471way["piste:difficulty"][!highway]::core_piste {
     472    width: 2;
     473    color: grey;
     474}
     475area["piste:difficulty"]::core_piste {
     476    fill-opacity: 0;
     477}
     478}
     479
     480    /* option to deactivate the paint style of cycleways (lane and track) */
     481@supports (max-josm-version: 9565) {
     482
     483way.lR[!setting("display_bicycle")]::core_cycleway,
     484way.tR[!setting("display_bicycle")]::core_cycleway,
     485way[cycleway=opposite][!setting("display_bicycle")]::core_cycleway {
     486    width: 0;
     487}
     488        /* (grouping the previous and the following block doesn't work correctly, see https://josm.openstreetmap.de/ticket/10106 )*/
     489way[prop("lL","core_cycleway")][!setting("display_bicycle")]::core_cycleway2,
     490way[prop("tL","core_cycleway")][!setting("display_bicycle")]::core_cycleway2 {
     491    width: 0;
     492}
     493}
     494@supports (min-josm-version: 9566) {
     495
     496way.laneRight[!setting("display_bicycle")]::core_cycleway,
     497way.shared_laneRight[!setting("display_bicycle")]::core_cycleway,
     498way.trackRight[!setting("display_bicycle")]::core_cycleway,
     499way[cycleway=opposite][!setting("display_bicycle")]::core_cycleway {
     500    width: 0;
     501}
     502way[prop("laneLeft","core_cycleway")][!setting("display_bicycle")]::core_cycleway2,
     503way[prop("shared_laneLeft","core_cycleway")][!setting("display_bicycle")]::core_cycleway2,
     504way[prop("trackLeft","core_cycleway")][!setting("display_bicycle")]::core_cycleway2 {
     505    width: 0;
     506}
     507}
     508
     509way[!setting("display_bicycle")][name][highway=path][bicycle=designated][foot=designated],
     510way[!setting("display_bicycle")][name][highway=path][bicycle=official][foot=official],
     511way[!setting("display_bicycle")][name][highway=cycleway][foot=yes],
     512way[!setting("display_bicycle")][name][highway=path][bicycle=designated][foot=yes],
     513way[!setting("display_bicycle")][name][highway=path][bicycle=official][foot=yes],
     514way[!setting("display_bicycle")][name][highway=footway][bicycle=yes],
     515way[!setting("display_bicycle")][name][highway=path][bicycle=yes][foot=designated],
     516way[!setting("display_bicycle")][name][highway=path][bicycle=yes][foot=official] {
     517    dashes: none;
     518}
     519
     520    /* deactivate the dashes of living streets */
     521way[highway=living_street][name] {
     522    dashes: none;
     523}
     524
     525    /* make barrier lines thiner */
     526way[barrier] {
     527    width: 1.5;
     528}
     529
     530    /* hide auto-text of streets except for name */
     531way[highway][!name] {
     532    text: "";
     533}
    393534/* ------------------------------------------------------------------------------------------------------------------------ */
    394535/* ------------------------------------------------------------------------------------------------------------------------ */
     
    396537
    397538/* highlight address areas, address nodes and streets */
    398         /* all rules, which apply to all colors and different rules for different zoom */
    399                 /* address areas */
    400 area|z18-["addr:street"],
     539    /* all rules, which apply to all colors and different rules for different zoom */
     540        /* address areas */
     541area|z18-["addr:street"], /* needed later for display of "?" if display_missing_number_message is disabled */
    401542area|z18-["addr:place"],
    402 relation[type="associatedStreet"] > area|z18-["addr:housenumber"]
    403 {
    404         width: 3;
    405         fill-opacity:0.2;       
    406         text-halo-radius: 3;
    407         text: eval(cond(has_tag_key(name), concat(tag("addr:housenumber"), " | ", tag("name")), tag("addr:housenumber")));
     543relation[type="associatedStreet"] > area|z18-["addr:housenumber"][setting("support_associatedstreet")] {
     544    width: 3;
     545    fill-opacity:0.2;   
     546    text-halo-radius: 3;
     547    z-index: 1;
     548}
     549
     550area|z18-["addr:street"][nohousenumber=yes],
     551area|z18-["addr:place"][nohousenumber=yes],
     552relation[type="associatedStreet"] > area|z18-[nohousenumber=yes][setting("support_associatedstreet")] {
     553    width: 3;
     554    fill-opacity:0.2;   
     555    text-halo-radius: 3;
     556    text: eval(cond(has_tag_key(name), concat("no", " | ", tag("name")), "no"));
     557    z-index: 1;
     558}
     559
     560area|z18-["addr:street"]["addr:housenumber"],
     561area|z18-["addr:place"]["addr:housenumber"],
     562relation[type="associatedStreet"] > area|z18-["addr:housenumber"][setting("support_associatedstreet")] {
     563    width: 3;
     564    fill-opacity:0.2;   
     565    text-halo-radius: 3;
     566    text: eval(cond(has_tag_key(name), concat(tag("addr:housenumber"), " | ", tag("name")), tag("addr:housenumber")));
     567    z-index: 1;
    408568}
    409569area|z-17["addr:street"],
    410570area|z-17["addr:place"],
    411 relation[type="associatedStreet"] > area|z-17["addr:housenumber"]
    412 {
    413         width: 3;
    414         fill-opacity:0.2;       
    415         text: ;
    416 }
    417                 /* address nodes */
     571relation[type="associatedStreet"] > area|z-17["addr:housenumber"][setting("support_associatedstreet")] {
     572    width: 3;
     573    fill-opacity:0.2;   
     574    text: "";
     575    z-index: 1;
     576}
     577        /* address nodes */
    418578node|z17-["addr:street"]::halo,
    419579node|z17-["addr:place"]::halo,
    420 relation[type="associatedStreet"] > node|z17-["addr:housenumber"]::halo
    421 {
    422         symbol-size: 22;
     580relation[type="associatedStreet"] > node|z17-["addr:housenumber"][setting("support_associatedstreet")]::halo {
     581    symbol-size: 22;
    423582}
    424583node|z16["addr:street"]::halo,
    425584node|z16["addr:place"]::halo,
    426 relation[type="associatedStreet"] > node|z16["addr:housenumber"]::halo
    427 {
    428         symbol-size: 12;
     585relation[type="associatedStreet"] > node|z16["addr:housenumber"][setting("support_associatedstreet")]::halo {
     586    symbol-size: 12;
    429587}
    430588node|z15["addr:street"]::halo,
    431589node|z15["addr:place"]::halo,
    432 relation[type="associatedStreet"] > node|z15["addr:housenumber"]::halo
    433 {
    434         symbol-size: 8;
     590relation[type="associatedStreet"] > node|z15["addr:housenumber"][setting("support_associatedstreet")]::halo {
     591    symbol-size: 8;
    435592}
    436593node|z14["addr:street"]::halo,
    437594node|z14["addr:place"]::halo,
    438 relation[type="associatedStreet"] > node|z14["addr:housenumber"]::halo
    439 {
    440         symbol-size: 6;
     595relation[type="associatedStreet"] > node|z14["addr:housenumber"][setting("support_associatedstreet")]::halo {
     596    symbol-size: 6;
    441597}
    442598node|z13["addr:street"]::halo,
    443599node|z13["addr:place"]::halo,
    444 relation[type="associatedStreet"] > node|z13["addr:housenumber"]::halo
    445 {
    446         symbol-size: 4;
     600relation[type="associatedStreet"] > node|z13["addr:housenumber"][setting("support_associatedstreet")]::halo {
     601    symbol-size: 4;
    447602}
    448603node|z-12["addr:street"]::halo,
    449604node|z-12["addr:place"]::halo,
    450 relation[type="associatedStreet"] > node|z-12["addr:housenumber"]::halo
    451 {
    452         symbol-size: 2;
    453 }
    454 
    455                         /* --- */
     605relation[type="associatedStreet"] > node|z-12["addr:housenumber"][setting("support_associatedstreet")]::halo {
     606    symbol-size: 2;
     607}
     608
     609            /* --- */
    456610node|z18-["addr:street"]::halo,
    457611node|z18-["addr:place"]::halo,
    458 relation[type="associatedStreet"] > node|z18-["addr:housenumber"]::halo
    459 {
    460         symbol-shape: circle;
    461         symbol-fill-opacity: 0.85;
    462         z-index: -1;
    463         text: eval(tag("addr:housenumber"));
    464         font-size: 12;
    465         text-color: black;
    466         text-anchor-vertical: center;
    467         text-offset-x: -3;
    468         text-halo-radius: 2;
    469         text-halo-opacity: 0.8;
     612relation[type="associatedStreet"] > node|z18-["addr:housenumber"][setting("support_associatedstreet")]::halo {
     613    symbol-shape: circle;
     614    symbol-fill-opacity: 0.85;
     615    z-index: -1;
     616    text: eval(tag("addr:housenumber"));
     617    font-size: 12;
     618    text-color: black;
     619    text-anchor-vertical: center;
     620    text-offset-x: -3;
     621    text-halo-radius: 2;
     622    text-halo-opacity: 0.8;
     623}
     624node|z18-["addr:street"][nohousenumber=yes][!"addr:housenumber"]::halo,
     625node|z18-["addr:place"][nohousenumber=yes][!"addr:housenumber"]::halo,
     626relation[type="associatedStreet"] > node|z18-[!"addr:housenumber"][nohousenumber=yes][setting("support_associatedstreet")]::halo {
     627    symbol-shape: circle;
     628    symbol-fill-opacity: 0.85;
     629    z-index: -1;
     630    text: eval("no");
     631    font-size: 12;
     632    text-color: black;
     633    text-anchor-vertical: center;
     634    text-offset-x: -3;
     635    text-halo-radius: 2;
     636    text-halo-opacity: 0.8;
    470637}
    471638node|z-17["addr:street"]::halo,
    472639node|z-17["addr:place"]::halo,
    473 relation[type="associatedStreet"] > node|z-17["addr:housenumber"]::halo
    474 {
    475         symbol-shape: circle;
    476         symbol-fill-opacity: 0.85;
    477         z-index: -1;
    478         text: ;
    479         font-size: 12;
    480         text-color: black;
    481         text-anchor-vertical: center;
    482         text-offset-x: -3;
    483         text-halo-radius: 2;
    484         text-halo-opacity: 0.8;
    485 }
    486                 /* streets */
    487                         /* different widths */
    488 way["highway"]["name"][highway!="platform"]
    489 {
    490         width: 4;
     640relation[type="associatedStreet"] > node|z-17["addr:housenumber"][setting("support_associatedstreet")]::halo {
     641    symbol-shape: circle;
     642    symbol-fill-opacity: 0.85;
     643    z-index: -1;
     644    text: "";
     645    font-size: 12;
     646    text-color: black;
     647    text-anchor-vertical: center;
     648    text-offset-x: -3;
     649    text-halo-radius: 2;
     650    text-halo-opacity: 0.8;
     651}
     652        /* streets */
     653            /* different widths */
     654way["highway"]["name"][highway!="platform"][highway!="emergency_access_point"] {
     655    width: 4;
    491656}
    492657way["highway"="path"]["name"],
     
    499664way["highway"="escape"]["name"],
    500665way["highway"="bus_guideway"]["name"],
    501 way["highway"="service"]["name"]
    502 {
    503         width: 3;
     666way["highway"="service"]["name"] {
     667    width: 3;
    504668}
    505669way["highway"^="tertiary"]["name"],
     
    507671way["highway"^="primary"]["name"],
    508672way["highway"^="trunk"]["name"],
    509 way["highway"^="motorway"]["name"]
    510 {
    511         width: 5;
    512 }
    513                         /* other rules */
    514 way|z18-["highway"]["name"][highway!="platform"]
    515 {
    516         font-size: 12;
    517         text-color: #000000;
    518         text-position: line;
    519         text: eval(tag("name"));
    520         text-offset: 0;
    521         text-halo-radius: 2;
    522 }
    523 way|z-17["highway"]["name"][highway!="platform"]
    524 {
    525         text: ;
    526 }
    527                 /* pedestrian as area */
    528 area|z18-["name"][highway=pedestrian]:closed
    529 {
    530         width: 3;
    531         font-size: 12;
    532         text-color: #000000;
    533         text-position: center;
    534         text: eval(tag("name"));
    535         text-halo-radius: 2;
    536         /* fill-color is needed to set it as "area style" to display the names for pedestrian multipolygons correctly. fill-color is set later in the different colors. */
    537         fill-opacity: 0.2;
    538 }
    539 area|z-17["name"][highway=pedestrian]:closed
    540 {
    541         width: 3;
    542         text: ;
    543         text-halo-radius: 2;
    544         /* fill-color is needed to set it as "area style" to display the names for pedestrian multipolygons correctly. fill-color is set later in the different colors. */
    545         fill-opacity: 0.2;
    546 }
    547                 /* display pedestrian areas (not multipolygons) without area=yes as line and not as area */
    548 way["highway"="pedestrian"][name][area!=yes]
    549 {
    550         text-position: line;
    551         fill-opacity: 0;
    552 }
    553 
    554 
    555         /* 33 different special selected colors */
     673way["highway"^="motorway"]["name"] {
     674    width: 5;
     675}
     676            /* other rules */
     677way|z18-["highway"]["name"][highway!="platform"][highway!="emergency_access_point"] {
     678    font-size: 12;
     679    text-color: black;
     680    text-position: line;
     681    text: eval(tag("name"));
     682    text-offset: 0;
     683    text-halo-radius: 2;
     684}
     685way|z-17["highway"]["name"][highway!="platform"][highway!="emergency_access_point"] {
     686    text: "";
     687}
     688            /* casing for name:left and name:right */
     689way|z16-["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"] {
     690    left-casing-width: 5;
     691    left-casing-offset: -1;
     692}
     693way|z16-["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"] {
     694    right-casing-width: 5;
     695    right-casing-offset: -1;
     696}
     697
     698        /* pedestrian as area */
     699area|z18-["name"][highway=pedestrian]:closed {
     700    width: 3;
     701    font-size: 12;
     702    text-color: black;
     703    text-position: center;
     704    text: eval(tag("name"));
     705    text-halo-radius: 2;
     706    /* fill-color is needed to set it as "area style" to display the names for pedestrian multipolygons correctly.
     707    fill-color is set later in the different colors. */
     708    fill-opacity: 0.2;
     709}
     710area|z-17["name"][highway=pedestrian]:closed {
     711    width: 3;
     712    text: "";
     713    text-halo-radius: 2;
     714    /* fill-color is needed to set it as "area style" to display the names for pedestrian multipolygons correctly.
     715    fill-color is set later in the different colors. */
     716    fill-opacity: 0.2;
     717}
     718        /* display pedestrian areas (not multipolygons) without area=yes as line and not as area */
     719way["highway"="pedestrian"][name][area!=yes] {
     720    text-position: line;
     721    fill-opacity: 0;
     722}
     723
     724
     725    /* 33 different special selected colors */
    556726area["addr:street"][prop(crc)<303],
    557727area["addr:place"][prop(crc)<303],
    558 relation[type="associatedStreet"][prop(crc)<303] > area["addr:housenumber"],
    559 area["highway"="pedestrian"]["name"][prop(crc)<303]:closed
    560 {
    561         color: #ffffff; /* Default value for color is fill-color. Color needs to set nevertheless that pedestrian area multipolygons and areas with "number?" are displayed correctly. */
    562         fill-color: #ffffff;
    563         text-halo-color: #ffffff;
     728relation[type="associatedStreet"][prop(crc)<303] > area["addr:housenumber"][setting("support_associatedstreet")],
     729relation[type="associatedStreet"][prop(crc)<303] > area[nohousenumber=yes][setting("support_associatedstreet")],
     730area["highway"="pedestrian"]["name"][prop(crc)<303]:closed {
     731    color: #8B864E;    /* Default value for color is fill-color. Color needs to set nevertheless that pedestrian area multipolygons and areas with "number?" are displayed correctly. */
     732    fill-color: #8B864E;
     733    text-halo-color: #8B864E;
    564734}
    565735node["addr:street"][prop(crc)<303]::halo,
    566736node["addr:place"][prop(crc)<303]::halo,
    567 relation[type="associatedStreet"][prop(crc)<303] > node["addr:housenumber"]::halo
    568 {
    569         symbol-fill-color: #ffffff;
    570         text-halo-color: #ffffff;
    571 }
    572 way["highway"]["name"][prop(crc)<303]
    573 {
    574         color: #ffffff;
    575         text-halo-color: #ffffff;
    576 }
    577                 /* --------- */
     737relation[type="associatedStreet"][prop(crc)<303] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     738relation[type="associatedStreet"][prop(crc)<303] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     739    symbol-fill-color: #8B864E;
     740    text-halo-color: #8B864E;
     741}
     742way["highway"]["name"][prop(crc)<303] {
     743    color: #8B864E;
     744    text-halo-color: #8B864E;
     745}
     746        /* --------- */
    578747area["addr:street"][prop(crc)>=303][prop(crc)<606],
    579748area["addr:place"][prop(crc)>=303][prop(crc)<606],
    580 relation[type="associatedStreet"][prop(crc)>=303][prop(crc)<606] > area["addr:housenumber"],
    581 area["highway"="pedestrian"]["name"][prop(crc)>=303][prop(crc)<606]:closed
    582 {
    583         color: #b88142;
    584         fill-color: #b88142;
    585         text-halo-color: #b88142;
     749relation[type="associatedStreet"][prop(crc)>=303][prop(crc)<606] > area["addr:housenumber"][setting("support_associatedstreet")],
     750relation[type="associatedStreet"][prop(crc)>=303][prop(crc)<606] > area[nohousenumber=yes][setting("support_associatedstreet")],
     751area["highway"="pedestrian"]["name"][prop(crc)>=303][prop(crc)<606]:closed {
     752    color: #b88142;
     753    fill-color: #b88142;
     754    text-halo-color: #b88142;
    586755}
    587756node["addr:street"][prop(crc)>=303][prop(crc)<606]::halo,
    588757node["addr:place"][prop(crc)>=303][prop(crc)<606]::halo,
    589 relation[type="associatedStreet"][prop(crc)>=303][prop(crc)<606] > node["addr:housenumber"]::halo
    590 {
    591         symbol-fill-color: #b88142;
    592         text-halo-color: #b88142;
    593 }
    594 way["highway"]["name"][prop(crc)>=303][prop(crc)<606]
    595 {
    596         color: #b88142;
    597         text-halo-color: #b88142;
    598 }
    599                 /* --------- */
     758relation[type="associatedStreet"][prop(crc)>=303][prop(crc)<606] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     759relation[type="associatedStreet"][prop(crc)>=303][prop(crc)<606] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     760    symbol-fill-color: #b88142;
     761    text-halo-color: #b88142;
     762}
     763way["highway"]["name"][prop(crc)>=303][prop(crc)<606] {
     764    color: #b88142;
     765    text-halo-color: #b88142;
     766}
     767        /* --------- */
    600768area["addr:street"][prop(crc)>=606][prop(crc)<909],
    601769area["addr:place"][prop(crc)>=606][prop(crc)<909],
    602 relation[type="associatedStreet"][prop(crc)>=606][prop(crc)<909] > area["addr:housenumber"],
    603 area["highway"="pedestrian"]["name"][prop(crc)>=606][prop(crc)<909]:closed
    604 {
    605         color: #a3fe8f;
    606         fill-color: #a3fe8f;
    607         text-halo-color: #a3fe8f;
     770relation[type="associatedStreet"][prop(crc)>=606][prop(crc)<909] > area["addr:housenumber"][setting("support_associatedstreet")],
     771relation[type="associatedStreet"][prop(crc)>=606][prop(crc)<909] > area[nohousenumber=yes][setting("support_associatedstreet")],
     772area["highway"="pedestrian"]["name"][prop(crc)>=606][prop(crc)<909]:closed {
     773    color: #a3fe8f;
     774    fill-color: #a3fe8f;
     775    text-halo-color: #a3fe8f;
    608776}
    609777node["addr:street"][prop(crc)>=606][prop(crc)<909]::halo,
    610778node["addr:place"][prop(crc)>=606][prop(crc)<909]::halo,
    611 relation[type="associatedStreet"][prop(crc)>=606][prop(crc)<909] > node["addr:housenumber"]::halo
    612 {
    613         symbol-fill-color: #a3fe8f;
    614         text-halo-color: #a3fe8f;
    615 }
    616 way["highway"]["name"][prop(crc)>=606][prop(crc)<909]
    617 {
    618         color: #a3fe8f;
    619         text-halo-color: #a3fe8f;
    620 }
    621                 /* --------- */
     779relation[type="associatedStreet"][prop(crc)>=606][prop(crc)<909] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     780relation[type="associatedStreet"][prop(crc)>=606][prop(crc)<909] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     781    symbol-fill-color: #a3fe8f;
     782    text-halo-color: #a3fe8f;
     783}
     784way["highway"]["name"][prop(crc)>=606][prop(crc)<909] {
     785    color: #a3fe8f;
     786    text-halo-color: #a3fe8f;
     787}
     788        /* --------- */
    622789area["addr:street"][prop(crc)>=909][prop(crc)<1212],
    623790area["addr:place"][prop(crc)>=909][prop(crc)<1212],
    624 relation[type="associatedStreet"][prop(crc)>=909][prop(crc)<1212] > area["addr:housenumber"],
    625 area["highway"="pedestrian"]["name"][prop(crc)>=909][prop(crc)<1212]:closed
    626 {
    627         color: #b8674c;
    628         fill-color: #b8674c;
    629         text-halo-color: #b8674c;
     791relation[type="associatedStreet"][prop(crc)>=909][prop(crc)<1212] > area["addr:housenumber"][setting("support_associatedstreet")],
     792relation[type="associatedStreet"][prop(crc)>=909][prop(crc)<1212] > area[nohousenumber=yes][setting("support_associatedstreet")],
     793area["highway"="pedestrian"]["name"][prop(crc)>=909][prop(crc)<1212]:closed {
     794    color: #b8674c;
     795    fill-color: #b8674c;
     796    text-halo-color: #b8674c;
    630797}
    631798node["addr:street"][prop(crc)>=909][prop(crc)<1212]::halo,
    632799node["addr:place"][prop(crc)>=909][prop(crc)<1212]::halo,
    633 relation[type="associatedStreet"][prop(crc)>=909][prop(crc)<1212] > node["addr:housenumber"]::halo
    634 {
    635         symbol-fill-color: #b8674c;
    636         text-halo-color: #b8674c;
    637 }
    638 way["highway"]["name"][prop(crc)>=909][prop(crc)<1212]
    639 {
    640         color: #b8674c;
    641         text-halo-color: #b8674c;
    642 }
    643                 /* --------- */
     800relation[type="associatedStreet"][prop(crc)>=909][prop(crc)<1212] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     801relation[type="associatedStreet"][prop(crc)>=909][prop(crc)<1212] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     802    symbol-fill-color: #b8674c;
     803    text-halo-color: #b8674c;
     804}
     805way["highway"]["name"][prop(crc)>=909][prop(crc)<1212] {
     806    color: #b8674c;
     807    text-halo-color: #b8674c;
     808}
     809        /* --------- */
    644810area["addr:street"][prop(crc)>=1212][prop(crc)<1515],
    645811area["addr:place"][prop(crc)>=1212][prop(crc)<1515],
    646 relation[type="associatedStreet"][prop(crc)>=1212][prop(crc)<1515] > area["addr:housenumber"],
    647 area["highway"="pedestrian"]["name"][prop(crc)>=1212][prop(crc)<1515]:closed
    648 {
    649         color: #f4ff6b;
    650         fill-color: #f4ff6b;
    651         text-halo-color: #f4ff6b;
     812relation[type="associatedStreet"][prop(crc)>=1212][prop(crc)<1515] > area["addr:housenumber"][setting("support_associatedstreet")],
     813relation[type="associatedStreet"][prop(crc)>=1212][prop(crc)<1515] > area[nohousenumber=yes][setting("support_associatedstreet")],
     814area["highway"="pedestrian"]["name"][prop(crc)>=1212][prop(crc)<1515]:closed {
     815    color: #f4ff6b;
     816    fill-color: #f4ff6b;
     817    text-halo-color: #f4ff6b;
    652818}
    653819node["addr:street"][prop(crc)>=1212][prop(crc)<1515]::halo,
    654820node["addr:place"][prop(crc)>=1212][prop(crc)<1515]::halo,
    655 relation[type="associatedStreet"][prop(crc)>=1212][prop(crc)<1515] > node["addr:housenumber"]::halo
    656 {
    657         symbol-fill-color: #f4ff6b;
    658         text-halo-color: #f4ff6b;
    659 }
    660 way["highway"]["name"][prop(crc)>=1212][prop(crc)<1515]
    661 {
    662         color: #f4ff6b;
    663         text-halo-color: #f4ff6b;
    664 }
    665                 /* --------- */
     821relation[type="associatedStreet"][prop(crc)>=1212][prop(crc)<1515] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     822relation[type="associatedStreet"][prop(crc)>=1212][prop(crc)<1515] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     823    symbol-fill-color: #f4ff6b;
     824    text-halo-color: #f4ff6b;
     825}
     826way["highway"]["name"][prop(crc)>=1212][prop(crc)<1515] {
     827    color: #f4ff6b;
     828    text-halo-color: #f4ff6b;
     829}
     830        /* --------- */
    666831area["addr:street"][prop(crc)>=1515][prop(crc)<1818],
    667832area["addr:place"][prop(crc)>=1515][prop(crc)<1818],
    668 relation[type="associatedStreet"][prop(crc)>=1515][prop(crc)<1818] > area["addr:housenumber"],
    669 area["highway"="pedestrian"]["name"][prop(crc)>=1515][prop(crc)<1818]:closed
    670 {
    671         color: #81c0ff;
    672         fill-color: #81c0ff;
    673         text-halo-color: #81c0ff;
     833relation[type="associatedStreet"][prop(crc)>=1515][prop(crc)<1818] > area["addr:housenumber"][setting("support_associatedstreet")],
     834relation[type="associatedStreet"][prop(crc)>=1515][prop(crc)<1818] > area[nohousenumber=yes][setting("support_associatedstreet")],
     835area["highway"="pedestrian"]["name"][prop(crc)>=1515][prop(crc)<1818]:closed {
     836    color: #81c0ff;
     837    fill-color: #81c0ff;
     838    text-halo-color: #81c0ff;
    674839}
    675840node["addr:street"][prop(crc)>=1515][prop(crc)<1818]::halo,
    676841node["addr:place"][prop(crc)>=1515][prop(crc)<1818]::halo,
    677 relation[type="associatedStreet"][prop(crc)>=1515][prop(crc)<1818] > node["addr:housenumber"]::halo
    678 {
    679         symbol-fill-color: #81c0ff;
    680         text-halo-color: #81c0ff;
    681 }
    682 way["highway"]["name"][prop(crc)>=1515][prop(crc)<1818]
    683 {
    684         color: #81c0ff;
    685         text-halo-color: #81c0ff;
    686 }
    687                 /* --------- */
     842relation[type="associatedStreet"][prop(crc)>=1515][prop(crc)<1818] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     843relation[type="associatedStreet"][prop(crc)>=1515][prop(crc)<1818] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     844    symbol-fill-color: #81c0ff;
     845    text-halo-color: #81c0ff;
     846}
     847way["highway"]["name"][prop(crc)>=1515][prop(crc)<1818] {
     848    color: #81c0ff;
     849    text-halo-color: #81c0ff;
     850}
     851        /* --------- */
    688852area["addr:street"][prop(crc)>=1818][prop(crc)<2121],
    689853area["addr:place"][prop(crc)>=1818][prop(crc)<2121],
    690 relation[type="associatedStreet"][prop(crc)>=1818][prop(crc)<2121] > area["addr:housenumber"],
    691 area["highway"="pedestrian"]["name"][prop(crc)>=1818][prop(crc)<2121]:closed
    692 {
    693         color: #6b8e23;
    694         fill-color: #6b8e23;
    695         text-halo-color: #6b8e23;
     854relation[type="associatedStreet"][prop(crc)>=1818][prop(crc)<2121] > area["addr:housenumber"][setting("support_associatedstreet")],
     855relation[type="associatedStreet"][prop(crc)>=1818][prop(crc)<2121] > area[nohousenumber=yes][setting("support_associatedstreet")],
     856area["highway"="pedestrian"]["name"][prop(crc)>=1818][prop(crc)<2121]:closed {
     857    color: #6b8e23;
     858    fill-color: #6b8e23;
     859    text-halo-color: #6b8e23;
    696860}
    697861node["addr:street"][prop(crc)>=1818][prop(crc)<2121]::halo,
    698862node["addr:place"][prop(crc)>=1818][prop(crc)<2121]::halo,
    699 relation[type="associatedStreet"][prop(crc)>=1818][prop(crc)<2121] > node["addr:housenumber"]::halo
    700 {
    701         symbol-fill-color: #6b8e23;
    702         text-halo-color: #6b8e23;
    703 }
    704 way["highway"]["name"][prop(crc)>=1818][prop(crc)<2121]
    705 {
    706         color: #6b8e23;
    707         text-halo-color: #6b8e23;
    708 }
    709                 /* --------- */
     863relation[type="associatedStreet"][prop(crc)>=1818][prop(crc)<2121] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     864relation[type="associatedStreet"][prop(crc)>=1818][prop(crc)<2121] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     865    symbol-fill-color: #6b8e23;
     866    text-halo-color: #6b8e23;
     867}
     868way["highway"]["name"][prop(crc)>=1818][prop(crc)<2121] {
     869    color: #6b8e23;
     870    text-halo-color: #6b8e23;
     871}
     872        /* --------- */
    710873area["addr:street"][prop(crc)>=2121][prop(crc)<2424],
    711874area["addr:place"][prop(crc)>=2121][prop(crc)<2424],
    712 relation[type="associatedStreet"][prop(crc)>=2121][prop(crc)<2424] > area["addr:housenumber"],
    713 area["highway"="pedestrian"]["name"][prop(crc)>=2121][prop(crc)<2424]:closed
    714 {
    715         color: #e1bd6a;
    716         fill-color: #e1bd6a;
    717         text-halo-color: #e1bd6a;
     875relation[type="associatedStreet"][prop(crc)>=2121][prop(crc)<2424] > area["addr:housenumber"][setting("support_associatedstreet")],
     876relation[type="associatedStreet"][prop(crc)>=2121][prop(crc)<2424] > area[nohousenumber=yes][setting("support_associatedstreet")],
     877area["highway"="pedestrian"]["name"][prop(crc)>=2121][prop(crc)<2424]:closed {
     878    color: #e1bd6a;
     879    fill-color: #e1bd6a;
     880    text-halo-color: #e1bd6a;
    718881}
    719882node["addr:street"][prop(crc)>=2121][prop(crc)<2424]::halo,
    720883node["addr:place"][prop(crc)>=2121][prop(crc)<2424]::halo,
    721 relation[type="associatedStreet"][prop(crc)>=2121][prop(crc)<2424] > node["addr:housenumber"]::halo
    722 {
    723         symbol-fill-color: #e1bd6a;
    724         text-halo-color: #e1bd6a;
    725 }
    726 way["highway"]["name"][prop(crc)>=2121][prop(crc)<2424]
    727 {
    728         color: #e1bd6a;
    729         text-halo-color: #e1bd6a;
    730 }
    731                 /* --------- */
     884relation[type="associatedStreet"][prop(crc)>=2121][prop(crc)<2424] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     885relation[type="associatedStreet"][prop(crc)>=2121][prop(crc)<2424] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     886    symbol-fill-color: #e1bd6a;
     887    text-halo-color: #e1bd6a;
     888}
     889way["highway"]["name"][prop(crc)>=2121][prop(crc)<2424] {
     890    color: #e1bd6a;
     891    text-halo-color: #e1bd6a;
     892}
     893        /* --------- */
    732894area["addr:street"][prop(crc)>=2424][prop(crc)<2727],
    733895area["addr:place"][prop(crc)>=2424][prop(crc)<2727],
    734 relation[type="associatedStreet"][prop(crc)>=2424][prop(crc)<2727] > area["addr:housenumber"],
    735 area["highway"="pedestrian"]["name"][prop(crc)>=2424][prop(crc)<2727]:closed
    736 {
    737         color: #7fffd4;
    738         fill-color: #7fffd4;
    739         text-halo-color: #7fffd4;
     896relation[type="associatedStreet"][prop(crc)>=2424][prop(crc)<2727] > area["addr:housenumber"][setting("support_associatedstreet")],
     897relation[type="associatedStreet"][prop(crc)>=2424][prop(crc)<2727] > area[nohousenumber=yes][setting("support_associatedstreet")],
     898area["highway"="pedestrian"]["name"][prop(crc)>=2424][prop(crc)<2727]:closed {
     899    color: #7fffd4;
     900    fill-color: #7fffd4;
     901    text-halo-color: #7fffd4;
    740902}
    741903node["addr:street"][prop(crc)>=2424][prop(crc)<2727]::halo,
    742904node["addr:place"][prop(crc)>=2424][prop(crc)<2727]::halo,
    743 relation[type="associatedStreet"][prop(crc)>=2424][prop(crc)<2727] > node["addr:housenumber"]::halo
    744 {
    745         symbol-fill-color: #7fffd4;
    746         text-halo-color: #7fffd4;
    747 }
    748 way["highway"]["name"][prop(crc)>=2424][prop(crc)<2727]
    749 {
    750         color: #7fffd4;
    751         text-halo-color: #7fffd4;
    752 }
    753                 /* --------- */
     905relation[type="associatedStreet"][prop(crc)>=2424][prop(crc)<2727] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     906relation[type="associatedStreet"][prop(crc)>=2424][prop(crc)<2727] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     907    symbol-fill-color: #7fffd4;
     908    text-halo-color: #7fffd4;
     909}
     910way["highway"]["name"][prop(crc)>=2424][prop(crc)<2727] {
     911    color: #7fffd4;
     912    text-halo-color: #7fffd4;
     913}
     914        /* --------- */
    754915area["addr:street"][prop(crc)>=2727][prop(crc)<3030],
    755916area["addr:place"][prop(crc)>=2727][prop(crc)<3030],
    756 relation[type="associatedStreet"][prop(crc)>=2727][prop(crc)<3030] > area["addr:housenumber"],
    757 area["highway"="pedestrian"]["name"][prop(crc)>=2727][prop(crc)<3030]:closed
    758 {
    759         color: #8a2be2;
    760         fill-color: #8a2be2;
    761         text-halo-color: #8a2be2;
     917relation[type="associatedStreet"][prop(crc)>=2727][prop(crc)<3030] > area["addr:housenumber"][setting("support_associatedstreet")],
     918relation[type="associatedStreet"][prop(crc)>=2727][prop(crc)<3030] > area[nohousenumber=yes][setting("support_associatedstreet")],
     919area["highway"="pedestrian"]["name"][prop(crc)>=2727][prop(crc)<3030]:closed {
     920    color: #8a2be2;
     921    fill-color: #8a2be2;
     922    text-halo-color: #8a2be2;
    762923}
    763924node["addr:street"][prop(crc)>=2727][prop(crc)<3030]::halo,
    764925node["addr:place"][prop(crc)>=2727][prop(crc)<3030]::halo,
    765 relation[type="associatedStreet"][prop(crc)>=2727][prop(crc)<3030] > node["addr:housenumber"]::halo
    766 {
    767         symbol-fill-color: #8a2be2;
    768         text-halo-color: #8a2be2;
    769 }
    770 way["highway"]["name"][prop(crc)>=2727][prop(crc)<3030]
    771 {
    772         color: #8a2be2;
    773         text-halo-color: #8a2be2;
    774 }
    775                 /* --------- */
     926relation[type="associatedStreet"][prop(crc)>=2727][prop(crc)<3030] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     927relation[type="associatedStreet"][prop(crc)>=2727][prop(crc)<3030] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     928    symbol-fill-color: #8a2be2;
     929    text-halo-color: #8a2be2;
     930}
     931way["highway"]["name"][prop(crc)>=2727][prop(crc)<3030] {
     932    color: #8a2be2;
     933    text-halo-color: #8a2be2;
     934}
     935        /* --------- */
    776936area["addr:street"][prop(crc)>=3030][prop(crc)<3333],
    777937area["addr:place"][prop(crc)>=3030][prop(crc)<3333],
    778 relation[type="associatedStreet"][prop(crc)>=3030][prop(crc)<3333] > area["addr:housenumber"],
    779 area["highway"="pedestrian"]["name"][prop(crc)>=3030][prop(crc)<3333]:closed
    780 {
    781         color: #a52a2a;
    782         fill-color: #a52a2a;
    783         text-halo-color: #a52a2a;
     938relation[type="associatedStreet"][prop(crc)>=3030][prop(crc)<3333] > area["addr:housenumber"][setting("support_associatedstreet")],
     939relation[type="associatedStreet"][prop(crc)>=3030][prop(crc)<3333] > area[nohousenumber=yes][setting("support_associatedstreet")],
     940area["highway"="pedestrian"]["name"][prop(crc)>=3030][prop(crc)<3333]:closed {
     941    color: #a52a2a;
     942    fill-color: #a52a2a;
     943    text-halo-color: #a52a2a;
    784944}
    785945node["addr:street"][prop(crc)>=3030][prop(crc)<3333]::halo,
    786946node["addr:place"][prop(crc)>=3030][prop(crc)<3333]::halo,
    787 relation[type="associatedStreet"][prop(crc)>=3030][prop(crc)<3333] > node["addr:housenumber"]::halo
    788 {
    789         symbol-fill-color: #a52a2a;
    790         text-halo-color: #a52a2a;
    791 }
    792 way["highway"]["name"][prop(crc)>=3030][prop(crc)<3333]
    793 {
    794         color: #a52a2a;
    795         text-halo-color: #a52a2a;
    796 }
    797                 /* --------- */
     947relation[type="associatedStreet"][prop(crc)>=3030][prop(crc)<3333] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     948relation[type="associatedStreet"][prop(crc)>=3030][prop(crc)<3333] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     949    symbol-fill-color: #a52a2a;
     950    text-halo-color: #a52a2a;
     951}
     952way["highway"]["name"][prop(crc)>=3030][prop(crc)<3333] {
     953    color: #a52a2a;
     954    text-halo-color: #a52a2a;
     955}
     956        /* --------- */
    798957area["addr:street"][prop(crc)>=3333][prop(crc)<3636],
    799958area["addr:place"][prop(crc)>=3333][prop(crc)<3636],
    800 relation[type="associatedStreet"][prop(crc)>=3333][prop(crc)<3636] > area["addr:housenumber"],
    801 area["highway"="pedestrian"]["name"][prop(crc)>=3333][prop(crc)<3636]:closed
    802 {
    803         color: #f0b9a6;
    804         fill-color: #f0b9a6;
    805         text-halo-color: #f0b9a6;
     959relation[type="associatedStreet"][prop(crc)>=3333][prop(crc)<3636] > area["addr:housenumber"][setting("support_associatedstreet")],
     960relation[type="associatedStreet"][prop(crc)>=3333][prop(crc)<3636] > area[nohousenumber=yes][setting("support_associatedstreet")],
     961area["highway"="pedestrian"]["name"][prop(crc)>=3333][prop(crc)<3636]:closed {
     962    color: #f0b9a6;
     963    fill-color: #f0b9a6;
     964    text-halo-color: #f0b9a6;
    806965}
    807966node["addr:street"][prop(crc)>=3333][prop(crc)<3636]::halo,
    808967node["addr:place"][prop(crc)>=3333][prop(crc)<3636]::halo,
    809 relation[type="associatedStreet"][prop(crc)>=3333][prop(crc)<3636] > node["addr:housenumber"]::halo
    810 {
    811         symbol-fill-color: #f0b9a6;
    812         text-halo-color: #f0b9a6;
    813 }
    814 way["highway"]["name"][prop(crc)>=3333][prop(crc)<3636]
    815 {
    816         color: #f0b9a6;
    817         text-halo-color: #f0b9a6;
    818 }
    819                 /* --------- */
     968relation[type="associatedStreet"][prop(crc)>=3333][prop(crc)<3636] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     969relation[type="associatedStreet"][prop(crc)>=3333][prop(crc)<3636] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     970    symbol-fill-color: #f0b9a6;
     971    text-halo-color: #f0b9a6;
     972}
     973way["highway"]["name"][prop(crc)>=3333][prop(crc)<3636] {
     974    color: #f0b9a6;
     975    text-halo-color: #f0b9a6;
     976}
     977        /* --------- */
    820978area["addr:street"][prop(crc)>=3636][prop(crc)<3939],
    821979area["addr:place"][prop(crc)>=3636][prop(crc)<3939],
    822 relation[type="associatedStreet"][prop(crc)>=3636][prop(crc)<3939] > area["addr:housenumber"],
    823 area["highway"="pedestrian"]["name"][prop(crc)>=3636][prop(crc)<3939]:closed
    824 {
    825         color: #8fbc8f;
    826         fill-color: #8fbc8f;
    827         text-halo-color: #8fbc8f;
     980relation[type="associatedStreet"][prop(crc)>=3636][prop(crc)<3939] > area["addr:housenumber"][setting("support_associatedstreet")],
     981relation[type="associatedStreet"][prop(crc)>=3636][prop(crc)<3939] > area[nohousenumber=yes][setting("support_associatedstreet")],
     982area["highway"="pedestrian"]["name"][prop(crc)>=3636][prop(crc)<3939]:closed {
     983    color: #8fbc8f;
     984    fill-color: #8fbc8f;
     985    text-halo-color: #8fbc8f;
    828986}
    829987node["addr:street"][prop(crc)>=3636][prop(crc)<3939]::halo,
    830988node["addr:place"][prop(crc)>=3636][prop(crc)<3939]::halo,
    831 relation[type="associatedStreet"][prop(crc)>=3636][prop(crc)<3939] > node["addr:housenumber"]::halo
    832 {
    833         symbol-fill-color: #8fbc8f;
    834         text-halo-color: #8fbc8f;
    835 }
    836 way["highway"]["name"][prop(crc)>=3636][prop(crc)<3939]
    837 {
    838         color: #8fbc8f;
    839         text-halo-color: #8fbc8f;
    840 }
    841                 /* --------- */
     989relation[type="associatedStreet"][prop(crc)>=3636][prop(crc)<3939] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     990relation[type="associatedStreet"][prop(crc)>=3636][prop(crc)<3939] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     991    symbol-fill-color: #8fbc8f;
     992    text-halo-color: #8fbc8f;
     993}
     994way["highway"]["name"][prop(crc)>=3636][prop(crc)<3939] {
     995    color: #8fbc8f;
     996    text-halo-color: #8fbc8f;
     997}
     998        /* --------- */
    842999area["addr:street"][prop(crc)>=3939][prop(crc)<4242],
    8431000area["addr:place"][prop(crc)>=3939][prop(crc)<4242],
    844 relation[type="associatedStreet"][prop(crc)>=3939][prop(crc)<4242] > area["addr:housenumber"],
    845 area["highway"="pedestrian"]["name"][prop(crc)>=3939][prop(crc)<4242]:closed
    846 {
    847         color: #1b7777;
    848         fill-color: #1b7777;
    849         text-halo-color: #1b7777;
     1001relation[type="associatedStreet"][prop(crc)>=3939][prop(crc)<4242] > area["addr:housenumber"][setting("support_associatedstreet")],
     1002relation[type="associatedStreet"][prop(crc)>=3939][prop(crc)<4242] > area[nohousenumber=yes][setting("support_associatedstreet")],
     1003area["highway"="pedestrian"]["name"][prop(crc)>=3939][prop(crc)<4242]:closed {
     1004    color: #1b7777;
     1005    fill-color: #1b7777;
     1006    text-halo-color: #1b7777;
    8501007}
    8511008node["addr:street"][prop(crc)>=3939][prop(crc)<4242]::halo,
    8521009node["addr:place"][prop(crc)>=3939][prop(crc)<4242]::halo,
    853 relation[type="associatedStreet"][prop(crc)>=3939][prop(crc)<4242] > node["addr:housenumber"]::halo
    854 {
    855         symbol-fill-color: #1b7777;
    856         text-halo-color: #1b7777;
    857 }
    858 way["highway"]["name"][prop(crc)>=3939][prop(crc)<4242]
    859 {
    860         color: #1b7777;
    861         text-halo-color: #1b7777;
    862 }
    863                 /* --------- */
     1010relation[type="associatedStreet"][prop(crc)>=3939][prop(crc)<4242] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     1011relation[type="associatedStreet"][prop(crc)>=3939][prop(crc)<4242] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     1012    symbol-fill-color: #1b7777;
     1013    text-halo-color: #1b7777;
     1014}
     1015way["highway"]["name"][prop(crc)>=3939][prop(crc)<4242] {
     1016    color: #1b7777;
     1017    text-halo-color: #1b7777;
     1018}
     1019        /* --------- */
    8641020area["addr:street"][prop(crc)>=4242][prop(crc)<4545],
    8651021area["addr:place"][prop(crc)>=4242][prop(crc)<4545],
    866 relation[type="associatedStreet"][prop(crc)>=4242][prop(crc)<4545] > area["addr:housenumber"],
    867 area["highway"="pedestrian"]["name"][prop(crc)>=4242][prop(crc)<4545]:closed
    868 {
    869         color: #ff1493;
    870         fill-color: #ff1493;
    871         text-halo-color: #ff1493;
     1022relation[type="associatedStreet"][prop(crc)>=4242][prop(crc)<4545] > area["addr:housenumber"][setting("support_associatedstreet")],
     1023relation[type="associatedStreet"][prop(crc)>=4242][prop(crc)<4545] > area[nohousenumber=yes][setting("support_associatedstreet")],
     1024area["highway"="pedestrian"]["name"][prop(crc)>=4242][prop(crc)<4545]:closed {
     1025    color: #ff1493;
     1026    fill-color: #ff1493;
     1027    text-halo-color: #ff1493;
    8721028}
    8731029node["addr:street"][prop(crc)>=4242][prop(crc)<4545]::halo,
    8741030node["addr:place"][prop(crc)>=4242][prop(crc)<4545]::halo,
    875 relation[type="associatedStreet"][prop(crc)>=4242][prop(crc)<4545] > node["addr:housenumber"]::halo
    876 {
    877         symbol-fill-color: #ff1493;
    878         text-halo-color: #ff1493;
    879 }
    880 way["highway"]["name"][prop(crc)>=4242][prop(crc)<4545]
    881 {
    882         color: #ff1493;
    883         text-halo-color: #ff1493;
    884 }
    885                 /* --------- */
     1031relation[type="associatedStreet"][prop(crc)>=4242][prop(crc)<4545] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     1032relation[type="associatedStreet"][prop(crc)>=4242][prop(crc)<4545] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     1033    symbol-fill-color: #ff1493;
     1034    text-halo-color: #ff1493;
     1035}
     1036way["highway"]["name"][prop(crc)>=4242][prop(crc)<4545] {
     1037    color: #ff1493;
     1038    text-halo-color: #ff1493;
     1039}
     1040        /* --------- */
    8861041area["addr:street"][prop(crc)>=4545][prop(crc)<4848],
    8871042area["addr:place"][prop(crc)>=4545][prop(crc)<4848],
    888 relation[type="associatedStreet"][prop(crc)>=4545][prop(crc)<4848] > area["addr:housenumber"],
    889 area["highway"="pedestrian"]["name"][prop(crc)>=4545][prop(crc)<4848]:closed
    890 {
    891         color: #0072e2;
    892         fill-color: #0072e2;
    893         text-halo-color: #0072e2;
     1043relation[type="associatedStreet"][prop(crc)>=4545][prop(crc)<4848] > area["addr:housenumber"][setting("support_associatedstreet")],
     1044relation[type="associatedStreet"][prop(crc)>=4545][prop(crc)<4848] > area[nohousenumber=yes][setting("support_associatedstreet")],
     1045area["highway"="pedestrian"]["name"][prop(crc)>=4545][prop(crc)<4848]:closed {
     1046    color: #0072e2;
     1047    fill-color: #0072e2;
     1048    text-halo-color: #0072e2;
    8941049}
    8951050node["addr:street"][prop(crc)>=4545][prop(crc)<4848]::halo,
    8961051node["addr:place"][prop(crc)>=4545][prop(crc)<4848]::halo,
    897 relation[type="associatedStreet"][prop(crc)>=4545][prop(crc)<4848] > node["addr:housenumber"]::halo
    898 {
    899         symbol-fill-color: #0072e2;
    900         text-halo-color: #0072e2;
    901 }
    902 way["highway"]["name"][prop(crc)>=4545][prop(crc)<4848]
    903 {
    904         color: #0072e2;
    905         text-halo-color: #0072e2;
    906 }
    907                 /* --------- */
     1052relation[type="associatedStreet"][prop(crc)>=4545][prop(crc)<4848] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     1053relation[type="associatedStreet"][prop(crc)>=4545][prop(crc)<4848] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     1054    symbol-fill-color: #0072e2;
     1055    text-halo-color: #0072e2;
     1056}
     1057way["highway"]["name"][prop(crc)>=4545][prop(crc)<4848] {
     1058    color: #0072e2;
     1059    text-halo-color: #0072e2;
     1060}
     1061        /* --------- */
    9081062area["addr:street"][prop(crc)>=4848][prop(crc)<5151],
    9091063area["addr:place"][prop(crc)>=4848][prop(crc)<5151],
    910 relation[type="associatedStreet"][prop(crc)>=4848][prop(crc)<5151] > area["addr:housenumber"],
    911 area["highway"="pedestrian"]["name"][prop(crc)>=4848][prop(crc)<5151]:closed
    912 {
    913         color: #008f00;
    914         fill-color: #008f00;
    915         text-halo-color: #008f00;
     1064relation[type="associatedStreet"][prop(crc)>=4848][prop(crc)<5151] > area["addr:housenumber"][setting("support_associatedstreet")],
     1065relation[type="associatedStreet"][prop(crc)>=4848][prop(crc)<5151] > area[nohousenumber=yes][setting("support_associatedstreet")],
     1066area["highway"="pedestrian"]["name"][prop(crc)>=4848][prop(crc)<5151]:closed {
     1067    color: #008f00;
     1068    fill-color: #008f00;
     1069    text-halo-color: #008f00;
    9161070}
    9171071node["addr:street"][prop(crc)>=4848][prop(crc)<5151]::halo,
    9181072node["addr:place"][prop(crc)>=4848][prop(crc)<5151]::halo,
    919 relation[type="associatedStreet"][prop(crc)>=4848][prop(crc)<5151] > node["addr:housenumber"]::halo
    920 {
    921         symbol-fill-color: #008f00;
    922         text-halo-color: #008f00;
    923 }
    924 way["highway"]["name"][prop(crc)>=4848][prop(crc)<5151]
    925 {
    926         color: #008f00;
    927         text-halo-color: #008f00;
    928 }
    929                 /* --------- */
     1073relation[type="associatedStreet"][prop(crc)>=4848][prop(crc)<5151] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     1074relation[type="associatedStreet"][prop(crc)>=4848][prop(crc)<5151] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     1075    symbol-fill-color: #008f00;
     1076    text-halo-color: #008f00;
     1077}
     1078way["highway"]["name"][prop(crc)>=4848][prop(crc)<5151] {
     1079    color: #008f00;
     1080    text-halo-color: #008f00;
     1081}
     1082        /* --------- */
    9301083area["addr:street"][prop(crc)>=5151][prop(crc)<5454],
    9311084area["addr:place"][prop(crc)>=5151][prop(crc)<5454],
    932 relation[type="associatedStreet"][prop(crc)>=5151][prop(crc)<5454] > area["addr:housenumber"],
    933 area["highway"="pedestrian"]["name"][prop(crc)>=5151][prop(crc)<5454]:closed
    934 {
    935         color: #ffcc00;
    936         fill-color: #ffcc00;
    937         text-halo-color: #ffcc00;
     1085relation[type="associatedStreet"][prop(crc)>=5151][prop(crc)<5454] > area["addr:housenumber"][setting("support_associatedstreet")],
     1086relation[type="associatedStreet"][prop(crc)>=5151][prop(crc)<5454] > area[nohousenumber=yes][setting("support_associatedstreet")],
     1087area["highway"="pedestrian"]["name"][prop(crc)>=5151][prop(crc)<5454]:closed {
     1088    color: #ffcc00;
     1089    fill-color: #ffcc00;
     1090    text-halo-color: #ffcc00;
    9381091}
    9391092node["addr:street"][prop(crc)>=5151][prop(crc)<5454]::halo,
    9401093node["addr:place"][prop(crc)>=5151][prop(crc)<5454]::halo,
    941 relation[type="associatedStreet"][prop(crc)>=5151][prop(crc)<5454] > node["addr:housenumber"]::halo
    942 {
    943         symbol-fill-color: #ffcc00;
    944         text-halo-color: #ffcc00;
    945 }
    946 way["highway"]["name"][prop(crc)>=5151][prop(crc)<5454]
    947 {
    948         color: #ffcc00;
    949         text-halo-color: #ffcc00;
    950 }
    951                 /* --------- */
     1094relation[type="associatedStreet"][prop(crc)>=5151][prop(crc)<5454] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     1095relation[type="associatedStreet"][prop(crc)>=5151][prop(crc)<5454] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     1096    symbol-fill-color: #ffcc00;
     1097    text-halo-color: #ffcc00;
     1098}
     1099way["highway"]["name"][prop(crc)>=5151][prop(crc)<5454] {
     1100    color: #ffcc00;
     1101    text-halo-color: #ffcc00;
     1102}
     1103        /* --------- */
    9521104area["addr:street"][prop(crc)>=5454][prop(crc)<5757],
    9531105area["addr:place"][prop(crc)>=5454][prop(crc)<5757],
    954 relation[type="associatedStreet"][prop(crc)>=5454][prop(crc)<5757] > area["addr:housenumber"],
    955 area["highway"="pedestrian"]["name"][prop(crc)>=5454][prop(crc)<5757]:closed
    956 {
    957         color: #BF9017;
    958         fill-color: #BF9017;
    959         text-halo-color: #BF9017;
     1106relation[type="associatedStreet"][prop(crc)>=5454][prop(crc)<5757] > area["addr:housenumber"][setting("support_associatedstreet")],
     1107relation[type="associatedStreet"][prop(crc)>=5454][prop(crc)<5757] > area[nohousenumber=yes][setting("support_associatedstreet")],
     1108area["highway"="pedestrian"]["name"][prop(crc)>=5454][prop(crc)<5757]:closed {
     1109    color: #BF9017;
     1110    fill-color: #BF9017;
     1111    text-halo-color: #BF9017;
    9601112}
    9611113node["addr:street"][prop(crc)>=5454][prop(crc)<5757]::halo,
    9621114node["addr:place"][prop(crc)>=5454][prop(crc)<5757]::halo,
    963 relation[type="associatedStreet"][prop(crc)>=5454][prop(crc)<5757] > node["addr:housenumber"]::halo
    964 {
    965         symbol-fill-color: #BF9017;
    966         text-halo-color: #BF9017;
    967 }
    968 way["highway"]["name"][prop(crc)>=5454][prop(crc)<5757]
    969 {
    970         color: #BF9017;
    971         text-halo-color: #BF9017;
    972 }
    973                 /* --------- */
     1115relation[type="associatedStreet"][prop(crc)>=5454][prop(crc)<5757] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     1116relation[type="associatedStreet"][prop(crc)>=5454][prop(crc)<5757] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     1117    symbol-fill-color: #BF9017;
     1118    text-halo-color: #BF9017;
     1119}
     1120way["highway"]["name"][prop(crc)>=5454][prop(crc)<5757] {
     1121    color: #BF9017;
     1122    text-halo-color: #BF9017;
     1123}
     1124        /* --------- */
    9741125area["addr:street"][prop(crc)>=5757][prop(crc)<6060],
    9751126area["addr:place"][prop(crc)>=5757][prop(crc)<6060],
    976 relation[type="associatedStreet"][prop(crc)>=5757][prop(crc)<6060] > area["addr:housenumber"],
    977 area["highway"="pedestrian"]["name"][prop(crc)>=5757][prop(crc)<6060]:closed
    978 {
    979         color: #adff2f;
    980         fill-color: #adff2f;
    981         text-halo-color: #adff2f;
     1127relation[type="associatedStreet"][prop(crc)>=5757][prop(crc)<6060] > area["addr:housenumber"][setting("support_associatedstreet")],
     1128relation[type="associatedStreet"][prop(crc)>=5757][prop(crc)<6060] > area[nohousenumber=yes][setting("support_associatedstreet")],
     1129area["highway"="pedestrian"]["name"][prop(crc)>=5757][prop(crc)<6060]:closed {
     1130    color: #adff2f;
     1131    fill-color: #adff2f;
     1132    text-halo-color: #adff2f;
    9821133}
    9831134node["addr:street"][prop(crc)>=5757][prop(crc)<6060]::halo,
    9841135node["addr:place"][prop(crc)>=5757][prop(crc)<6060]::halo,
    985 relation[type="associatedStreet"][prop(crc)>=5757][prop(crc)<6060] > node["addr:housenumber"]::halo
    986 {
    987         symbol-fill-color: #adff2f;
    988         text-halo-color: #adff2f;
    989 }
    990 way["highway"]["name"][prop(crc)>=5757][prop(crc)<6060]
    991 {
    992         color: #adff2f;
    993         text-halo-color: #adff2f;
    994 }
    995                 /* --------- */
     1136relation[type="associatedStreet"][prop(crc)>=5757][prop(crc)<6060] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     1137relation[type="associatedStreet"][prop(crc)>=5757][prop(crc)<6060] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     1138    symbol-fill-color: #adff2f;
     1139    text-halo-color: #adff2f;
     1140}
     1141way["highway"]["name"][prop(crc)>=5757][prop(crc)<6060] {
     1142    color: #adff2f;
     1143    text-halo-color: #adff2f;
     1144}
     1145        /* --------- */
    9961146area["addr:street"][prop(crc)>=6060][prop(crc)<6363],
    9971147area["addr:place"][prop(crc)>=6060][prop(crc)<6363],
    998 relation[type="associatedStreet"][prop(crc)>=6060][prop(crc)<6363] > area["addr:housenumber"],
    999 area["highway"="pedestrian"]["name"][prop(crc)>=6060][prop(crc)<6363]:closed
    1000 {
    1001         color: #ff69b4;
    1002         fill-color: #ff69b4;
    1003         text-halo-color: #ff69b4;
     1148relation[type="associatedStreet"][prop(crc)>=6060][prop(crc)<6363] > area["addr:housenumber"][setting("support_associatedstreet")],
     1149relation[type="associatedStreet"][prop(crc)>=6060][prop(crc)<6363] > area[nohousenumber=yes][setting("support_associatedstreet")],
     1150area["highway"="pedestrian"]["name"][prop(crc)>=6060][prop(crc)<6363]:closed {
     1151    color: #ff69b4;
     1152    fill-color: #ff69b4;
     1153    text-halo-color: #ff69b4;
    10041154}
    10051155node["addr:street"][prop(crc)>=6060][prop(crc)<6363]::halo,
    10061156node["addr:place"][prop(crc)>=6060][prop(crc)<6363]::halo,
    1007 relation[type="associatedStreet"][prop(crc)>=6060][prop(crc)<6363] > node["addr:housenumber"]::halo
    1008 {
    1009         symbol-fill-color: #ff69b4;
    1010         text-halo-color: #ff69b4;
    1011 }
    1012 way["highway"]["name"][prop(crc)>=6060][prop(crc)<6363]
    1013 {
    1014         color: #ff69b4;
    1015         text-halo-color: #ff69b4;
    1016 }
    1017                 /* --------- */
     1157relation[type="associatedStreet"][prop(crc)>=6060][prop(crc)<6363] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     1158relation[type="associatedStreet"][prop(crc)>=6060][prop(crc)<6363] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     1159    symbol-fill-color: #ff69b4;
     1160    text-halo-color: #ff69b4;
     1161}
     1162way["highway"]["name"][prop(crc)>=6060][prop(crc)<6363] {
     1163    color: #ff69b4;
     1164    text-halo-color: #ff69b4;
     1165}
     1166        /* --------- */
    10181167area["addr:street"][prop(crc)>=6363][prop(crc)<6666],
    10191168area["addr:place"][prop(crc)>=6363][prop(crc)<6666],
    1020 relation[type="associatedStreet"][prop(crc)>=6363][prop(crc)<6666] > area["addr:housenumber"],
    1021 area["highway"="pedestrian"]["name"][prop(crc)>=6363][prop(crc)<6666]:closed
    1022 {
    1023         color: #cd5c5c;
    1024         fill-color: #cd5c5c;
    1025         text-halo-color: #cd5c5c;
     1169relation[type="associatedStreet"][prop(crc)>=6363][prop(crc)<6666] > area["addr:housenumber"][setting("support_associatedstreet")],
     1170relation[type="associatedStreet"][prop(crc)>=6363][prop(crc)<6666] > area[nohousenumber=yes][setting("support_associatedstreet")],
     1171area["highway"="pedestrian"]["name"][prop(crc)>=6363][prop(crc)<6666]:closed {
     1172    color: #cd5c5c;
     1173    fill-color: #cd5c5c;
     1174    text-halo-color: #cd5c5c;
    10261175}
    10271176node["addr:street"][prop(crc)>=6363][prop(crc)<6666]::halo,
    10281177node["addr:place"][prop(crc)>=6363][prop(crc)<6666]::halo,
    1029 relation[type="associatedStreet"][prop(crc)>=6363][prop(crc)<6666] > node["addr:housenumber"]::halo
    1030 {
    1031         symbol-fill-color: #cd5c5c;
    1032         text-halo-color: #cd5c5c;
    1033 }
    1034 way["highway"]["name"][prop(crc)>=6363][prop(crc)<6666]
    1035 {
    1036         color: #cd5c5c;
    1037         text-halo-color: #cd5c5c;
    1038 }
    1039                 /* --------- */
     1178relation[type="associatedStreet"][prop(crc)>=6363][prop(crc)<6666] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     1179relation[type="associatedStreet"][prop(crc)>=6363][prop(crc)<6666] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     1180    symbol-fill-color: #cd5c5c;
     1181    text-halo-color: #cd5c5c;
     1182}
     1183way["highway"]["name"][prop(crc)>=6363][prop(crc)<6666] {
     1184    color: #cd5c5c;
     1185    text-halo-color: #cd5c5c;
     1186}
     1187        /* --------- */
    10401188area["addr:street"][prop(crc)>=6666][prop(crc)<6969],
    10411189area["addr:place"][prop(crc)>=6666][prop(crc)<6969],
    1042 relation[type="associatedStreet"][prop(crc)>=6666][prop(crc)<6969] > area["addr:housenumber"],
    1043 area["highway"="pedestrian"]["name"][prop(crc)>=6666][prop(crc)<6969]:closed
    1044 {
    1045         color: #7d5a07;
    1046         fill-color: #7d5a07;
    1047         text-halo-color: #7d5a07;
     1190relation[type="associatedStreet"][prop(crc)>=6666][prop(crc)<6969] > area["addr:housenumber"][setting("support_associatedstreet")],
     1191relation[type="associatedStreet"][prop(crc)>=6666][prop(crc)<6969] > area[nohousenumber=yes][setting("support_associatedstreet")],
     1192area["highway"="pedestrian"]["name"][prop(crc)>=6666][prop(crc)<6969]:closed {
     1193    color: #7d5a07;
     1194    fill-color: #7d5a07;
     1195    text-halo-color: #7d5a07;
    10481196}
    10491197node["addr:street"][prop(crc)>=6666][prop(crc)<6969]::halo,
    10501198node["addr:place"][prop(crc)>=6666][prop(crc)<6969]::halo,
    1051 relation[type="associatedStreet"][prop(crc)>=6666][prop(crc)<6969] > node["addr:housenumber"]::halo
    1052 {
    1053         symbol-fill-color: #7d5a07;
    1054         text-halo-color: #7d5a07;
    1055 }
    1056 way["highway"]["name"][prop(crc)>=6666][prop(crc)<6969]
    1057 {
    1058         color: #7d5a07;
    1059         text-halo-color: #7d5a07;
    1060 }
    1061                 /* --------- */
     1199relation[type="associatedStreet"][prop(crc)>=6666][prop(crc)<6969] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     1200relation[type="associatedStreet"][prop(crc)>=6666][prop(crc)<6969] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     1201    symbol-fill-color: #7d5a07;
     1202    text-halo-color: #7d5a07;
     1203}
     1204way["highway"]["name"][prop(crc)>=6666][prop(crc)<6969] {
     1205    color: #7d5a07;
     1206    text-halo-color: #7d5a07;
     1207}
     1208        /* --------- */
    10621209area["addr:street"][prop(crc)>=6969][prop(crc)<7272],
    10631210area["addr:place"][prop(crc)>=6969][prop(crc)<7272],
    1064 relation[type="associatedStreet"][prop(crc)>=6969][prop(crc)<7272] > area["addr:housenumber"],
    1065 area["highway"="pedestrian"]["name"][prop(crc)>=6969][prop(crc)<7272]:closed
    1066 {
    1067         color: #824600;
    1068         fill-color: #824600;
    1069         text-halo-color: #824600;
     1211relation[type="associatedStreet"][prop(crc)>=6969][prop(crc)<7272] > area["addr:housenumber"][setting("support_associatedstreet")],
     1212relation[type="associatedStreet"][prop(crc)>=6969][prop(crc)<7272] > area[nohousenumber=yes][setting("support_associatedstreet")],
     1213area["highway"="pedestrian"]["name"][prop(crc)>=6969][prop(crc)<7272]:closed {
     1214    color: #824600;
     1215    fill-color: #824600;
     1216    text-halo-color: #824600;
    10701217}
    10711218node["addr:street"][prop(crc)>=6969][prop(crc)<7272]::halo,
    10721219node["addr:place"][prop(crc)>=6969][prop(crc)<7272]::halo,
    1073 relation[type="associatedStreet"][prop(crc)>=6969][prop(crc)<7272] > node["addr:housenumber"]::halo
    1074 {
    1075         symbol-fill-color: #824600;
    1076         text-halo-color: #824600;
    1077 }
    1078 way["highway"]["name"][prop(crc)>=6969][prop(crc)<7272]
    1079 {
    1080         color: #824600;
    1081         text-halo-color: #824600;
    1082 }
    1083                 /* --------- */
     1220relation[type="associatedStreet"][prop(crc)>=6969][prop(crc)<7272] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     1221relation[type="associatedStreet"][prop(crc)>=6969][prop(crc)<7272] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     1222    symbol-fill-color: #824600;
     1223    text-halo-color: #824600;
     1224}
     1225way["highway"]["name"][prop(crc)>=6969][prop(crc)<7272] {
     1226    color: #824600;
     1227    text-halo-color: #824600;
     1228}
     1229        /* --------- */
    10841230area["addr:street"][prop(crc)>=7272][prop(crc)<7575],
    10851231area["addr:place"][prop(crc)>=7272][prop(crc)<7575],
    1086 relation[type="associatedStreet"][prop(crc)>=7272][prop(crc)<7575] > area["addr:housenumber"],
    1087 area["highway"="pedestrian"]["name"][prop(crc)>=7272][prop(crc)<7575]:closed
    1088 {
    1089         color: #f08080;
    1090         fill-color: #f08080;
    1091         text-halo-color: #f08080;
     1232relation[type="associatedStreet"][prop(crc)>=7272][prop(crc)<7575] > area["addr:housenumber"][setting("support_associatedstreet")],
     1233relation[type="associatedStreet"][prop(crc)>=7272][prop(crc)<7575] > area[nohousenumber=yes][setting("support_associatedstreet")],
     1234area["highway"="pedestrian"]["name"][prop(crc)>=7272][prop(crc)<7575]:closed {
     1235    color: #f08080;
     1236    fill-color: #f08080;
     1237    text-halo-color: #f08080;
    10921238}
    10931239node["addr:street"][prop(crc)>=7272][prop(crc)<7575]::halo,
    10941240node["addr:place"][prop(crc)>=7272][prop(crc)<7575]::halo,
    1095 relation[type="associatedStreet"][prop(crc)>=7272][prop(crc)<7575] > node["addr:housenumber"]::halo
    1096 {
    1097         symbol-fill-color: #f08080;
    1098         text-halo-color: #f08080;
    1099 }
    1100 way["highway"]["name"][prop(crc)>=7272][prop(crc)<7575]
    1101 {
    1102         color: #f08080;
    1103         text-halo-color: #f08080;
    1104 }
    1105                 /* --------- */
     1241relation[type="associatedStreet"][prop(crc)>=7272][prop(crc)<7575] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     1242relation[type="associatedStreet"][prop(crc)>=7272][prop(crc)<7575] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     1243    symbol-fill-color: #f08080;
     1244    text-halo-color: #f08080;
     1245}
     1246way["highway"]["name"][prop(crc)>=7272][prop(crc)<7575] {
     1247    color: #f08080;
     1248    text-halo-color: #f08080;
     1249}
     1250        /* --------- */
    11061251area["addr:street"][prop(crc)>=7575][prop(crc)<7878],
    11071252area["addr:place"][prop(crc)>=7575][prop(crc)<7878],
    1108 relation[type="associatedStreet"][prop(crc)>=7575][prop(crc)<7878] > area["addr:housenumber"],
    1109 area["highway"="pedestrian"]["name"][prop(crc)>=7575][prop(crc)<7878]:closed
    1110 {
    1111         color: #F75617;
    1112         fill-color: #F75617;
    1113         text-halo-color: #F75617;
     1253relation[type="associatedStreet"][prop(crc)>=7575][prop(crc)<7878] > area["addr:housenumber"][setting("support_associatedstreet")],
     1254relation[type="associatedStreet"][prop(crc)>=7575][prop(crc)<7878] > area[nohousenumber=yes][setting("support_associatedstreet")],
     1255area["highway"="pedestrian"]["name"][prop(crc)>=7575][prop(crc)<7878]:closed {
     1256    color: #F75617;
     1257    fill-color: #F75617;
     1258    text-halo-color: #F75617;
    11141259}
    11151260node["addr:street"][prop(crc)>=7575][prop(crc)<7878]::halo,
    11161261node["addr:place"][prop(crc)>=7575][prop(crc)<7878]::halo,
    1117 relation[type="associatedStreet"][prop(crc)>=7575][prop(crc)<7878] > node["addr:housenumber"]::halo
    1118 {
    1119         symbol-fill-color: #F75617;
    1120         text-halo-color: #F75617;
    1121 }
    1122 way["highway"]["name"][prop(crc)>=7575][prop(crc)<7878]
    1123 {
    1124         color: #F75617;
    1125         text-halo-color: #F75617;
    1126 }
    1127                 /* --------- */
     1262relation[type="associatedStreet"][prop(crc)>=7575][prop(crc)<7878] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     1263relation[type="associatedStreet"][prop(crc)>=7575][prop(crc)<7878] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     1264    symbol-fill-color: #F75617;
     1265    text-halo-color: #F75617;
     1266}
     1267way["highway"]["name"][prop(crc)>=7575][prop(crc)<7878] {
     1268    color: #F75617;
     1269    text-halo-color: #F75617;
     1270}
     1271        /* --------- */
    11281272area["addr:street"][prop(crc)>=7878][prop(crc)<8181],
    11291273area["addr:place"][prop(crc)>=7878][prop(crc)<8181],
    1130 relation[type="associatedStreet"][prop(crc)>=7878][prop(crc)<8181] > area["addr:housenumber"],
    1131 area["highway"="pedestrian"]["name"][prop(crc)>=7878][prop(crc)<8181]:closed
    1132 {
    1133         color: #54d954;
    1134         fill-color: #54d954;
    1135         text-halo-color: #54d954;
     1274relation[type="associatedStreet"][prop(crc)>=7878][prop(crc)<8181] > area["addr:housenumber"][setting("support_associatedstreet")],
     1275relation[type="associatedStreet"][prop(crc)>=7878][prop(crc)<8181] > area[nohousenumber=yes][setting("support_associatedstreet")],
     1276area["highway"="pedestrian"]["name"][prop(crc)>=7878][prop(crc)<8181]:closed {
     1277    color: #54d954;
     1278    fill-color: #54d954;
     1279    text-halo-color: #54d954;
    11361280}
    11371281node["addr:street"][prop(crc)>=7878][prop(crc)<8181]::halo,
    11381282node["addr:place"][prop(crc)>=7878][prop(crc)<8181]::halo,
    1139 relation[type="associatedStreet"][prop(crc)>=7878][prop(crc)<8181] > node["addr:housenumber"]::halo
    1140 {
    1141         symbol-fill-color: #54d954;
    1142         text-halo-color: #54d954;
    1143 }
    1144 way["highway"]["name"][prop(crc)>=7878][prop(crc)<8181]
    1145 {
    1146         color: #54d954;
    1147         text-halo-color: #54d954;
    1148 }
    1149                 /* --------- */
     1283relation[type="associatedStreet"][prop(crc)>=7878][prop(crc)<8181] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     1284relation[type="associatedStreet"][prop(crc)>=7878][prop(crc)<8181] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     1285    symbol-fill-color: #54d954;
     1286    text-halo-color: #54d954;
     1287}
     1288way["highway"]["name"][prop(crc)>=7878][prop(crc)<8181] {
     1289    color: #54d954;
     1290    text-halo-color: #54d954;
     1291}
     1292        /* --------- */
    11501293area["addr:street"][prop(crc)>=8181][prop(crc)<8484],
    11511294area["addr:place"][prop(crc)>=8181][prop(crc)<8484],
    1152 relation[type="associatedStreet"][prop(crc)>=8181][prop(crc)<8484] > area["addr:housenumber"],
    1153 area["highway"="pedestrian"]["name"][prop(crc)>=8181][prop(crc)<8484]:closed
    1154 {
    1155         color: #ba55d3;
    1156         fill-color: #ba55d3;
    1157         text-halo-color: #ba55d3;
     1295relation[type="associatedStreet"][prop(crc)>=8181][prop(crc)<8484] > area["addr:housenumber"][setting("support_associatedstreet")],
     1296relation[type="associatedStreet"][prop(crc)>=8181][prop(crc)<8484] > area[nohousenumber=yes][setting("support_associatedstreet")],
     1297area["highway"="pedestrian"]["name"][prop(crc)>=8181][prop(crc)<8484]:closed {
     1298    color: #ba55d3;
     1299    fill-color: #ba55d3;
     1300    text-halo-color: #ba55d3;
    11581301}
    11591302node["addr:street"][prop(crc)>=8181][prop(crc)<8484]::halo,
    11601303node["addr:place"][prop(crc)>=8181][prop(crc)<8484]::halo,
    1161 relation[type="associatedStreet"][prop(crc)>=8181][prop(crc)<8484] > node["addr:housenumber"]::halo
    1162 {
    1163         symbol-fill-color: #ba55d3;
    1164         text-halo-color: #ba55d3;
    1165 }
    1166 way["highway"]["name"][prop(crc)>=8181][prop(crc)<8484]
    1167 {
    1168         color: #ba55d3;
    1169         text-halo-color: #ba55d3;
    1170 }
    1171                 /* --------- */
     1304relation[type="associatedStreet"][prop(crc)>=8181][prop(crc)<8484] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     1305relation[type="associatedStreet"][prop(crc)>=8181][prop(crc)<8484] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     1306    symbol-fill-color: #ba55d3;
     1307    text-halo-color: #ba55d3;
     1308}
     1309way["highway"]["name"][prop(crc)>=8181][prop(crc)<8484] {
     1310    color: #ba55d3;
     1311    text-halo-color: #ba55d3;
     1312}
     1313        /* --------- */
    11721314area["addr:street"][prop(crc)>=8484][prop(crc)<8787],
    11731315area["addr:place"][prop(crc)>=8484][prop(crc)<8787],
    1174 relation[type="associatedStreet"][prop(crc)>=8484][prop(crc)<8787] > area["addr:housenumber"],
    1175 area["highway"="pedestrian"]["name"][prop(crc)>=8484][prop(crc)<8787]:closed
    1176 {
    1177         color: #9370db;
    1178         fill-color: #9370db;
    1179         text-halo-color: #9370db;
     1316relation[type="associatedStreet"][prop(crc)>=8484][prop(crc)<8787] > area["addr:housenumber"][setting("support_associatedstreet")],
     1317relation[type="associatedStreet"][prop(crc)>=8484][prop(crc)<8787] > area[nohousenumber=yes][setting("support_associatedstreet")],
     1318area["highway"="pedestrian"]["name"][prop(crc)>=8484][prop(crc)<8787]:closed {
     1319    color: #9370db;
     1320    fill-color: #9370db;
     1321    text-halo-color: #9370db;
    11801322}
    11811323node["addr:street"][prop(crc)>=8484][prop(crc)<8787]::halo,
    11821324node["addr:place"][prop(crc)>=8484][prop(crc)<8787]::halo,
    1183 relation[type="associatedStreet"][prop(crc)>=8484][prop(crc)<8787] > node["addr:housenumber"]::halo
    1184 {
    1185         symbol-fill-color: #9370db;
    1186         text-halo-color: #9370db;
    1187 }
    1188 way["highway"]["name"][prop(crc)>=8484][prop(crc)<8787]
    1189 {
    1190         color: #9370db;
    1191         text-halo-color: #9370db;
    1192 }
    1193                 /* --------- */
     1325relation[type="associatedStreet"][prop(crc)>=8484][prop(crc)<8787] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     1326relation[type="associatedStreet"][prop(crc)>=8484][prop(crc)<8787] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     1327    symbol-fill-color: #9370db;
     1328    text-halo-color: #9370db;
     1329}
     1330way["highway"]["name"][prop(crc)>=8484][prop(crc)<8787] {
     1331    color: #9370db;
     1332    text-halo-color: #9370db;
     1333}
     1334        /* --------- */
    11941335area["addr:street"][prop(crc)>=8787][prop(crc)<9090],
    11951336area["addr:place"][prop(crc)>=8787][prop(crc)<9090],
    1196 relation[type="associatedStreet"][prop(crc)>=8787][prop(crc)<9090] > area["addr:housenumber"],
    1197 area["highway"="pedestrian"]["name"][prop(crc)>=8787][prop(crc)<9090]:closed
    1198 {
    1199         color: #ff7c00;
    1200         fill-color: #ff7c00;
    1201         text-halo-color: #ff7c00;
     1337relation[type="associatedStreet"][prop(crc)>=8787][prop(crc)<9090] > area["addr:housenumber"][setting("support_associatedstreet")],
     1338relation[type="associatedStreet"][prop(crc)>=8787][prop(crc)<9090] > area[nohousenumber=yes][setting("support_associatedstreet")],
     1339area["highway"="pedestrian"]["name"][prop(crc)>=8787][prop(crc)<9090]:closed {
     1340    color: #ff7c00;
     1341    fill-color: #ff7c00;
     1342    text-halo-color: #ff7c00;
    12021343}
    12031344node["addr:street"][prop(crc)>=8787][prop(crc)<9090]::halo,
    12041345node["addr:place"][prop(crc)>=8787][prop(crc)<9090]::halo,
    1205 relation[type="associatedStreet"][prop(crc)>=8787][prop(crc)<9090] > node["addr:housenumber"]::halo
    1206 {
    1207         symbol-fill-color: #ff7c00;
    1208         text-halo-color: #ff7c00;
    1209 }
    1210 way["highway"]["name"][prop(crc)>=8787][prop(crc)<9090]
    1211 {
    1212         color: #ff7c00;
    1213         text-halo-color: #ff7c00;
    1214 }
    1215                 /* --------- */
     1346relation[type="associatedStreet"][prop(crc)>=8787][prop(crc)<9090] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     1347relation[type="associatedStreet"][prop(crc)>=8787][prop(crc)<9090] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     1348    symbol-fill-color: #ff7c00;
     1349    text-halo-color: #ff7c00;
     1350}
     1351way["highway"]["name"][prop(crc)>=8787][prop(crc)<9090] {
     1352    color: #ff7c00;
     1353    text-halo-color: #ff7c00;
     1354}
     1355        /* --------- */
    12161356area["addr:street"][prop(crc)>=9090][prop(crc)<9393],
    12171357area["addr:place"][prop(crc)>=9090][prop(crc)<9393],
    1218 relation[type="associatedStreet"][prop(crc)>=9090][prop(crc)<9393] > area["addr:housenumber"],
    1219 area["highway"="pedestrian"]["name"][prop(crc)>=9090][prop(crc)<9393]:closed
    1220 {
    1221         color: #3cb371;
    1222         fill-color: #3cb371;
    1223         text-halo-color: #3cb371;
     1358relation[type="associatedStreet"][prop(crc)>=9090][prop(crc)<9393] > area["addr:housenumber"][setting("support_associatedstreet")],
     1359relation[type="associatedStreet"][prop(crc)>=9090][prop(crc)<9393] > area[nohousenumber=yes][setting("support_associatedstreet")],
     1360area["highway"="pedestrian"]["name"][prop(crc)>=9090][prop(crc)<9393]:closed {
     1361    color: #3cb371;
     1362    fill-color: #3cb371;
     1363    text-halo-color: #3cb371;
    12241364}
    12251365node["addr:street"][prop(crc)>=9090][prop(crc)<9393]::halo,
    12261366node["addr:place"][prop(crc)>=9090][prop(crc)<9393]::halo,
    1227 relation[type="associatedStreet"][prop(crc)>=9090][prop(crc)<9393] > node["addr:housenumber"]::halo
    1228 {
    1229         symbol-fill-color: #3cb371;
    1230         text-halo-color: #3cb371;
    1231 }
    1232 way["highway"]["name"][prop(crc)>=9090][prop(crc)<9393]
    1233 {
    1234         color: #3cb371;
    1235         text-halo-color: #3cb371;
    1236 }
    1237                 /* --------- */
     1367relation[type="associatedStreet"][prop(crc)>=9090][prop(crc)<9393] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     1368relation[type="associatedStreet"][prop(crc)>=9090][prop(crc)<9393] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     1369    symbol-fill-color: #3cb371;
     1370    text-halo-color: #3cb371;
     1371}
     1372way["highway"]["name"][prop(crc)>=9090][prop(crc)<9393] {
     1373    color: #3cb371;
     1374    text-halo-color: #3cb371;
     1375}
     1376        /* --------- */
    12381377area["addr:street"][prop(crc)>=9393][prop(crc)<9696],
    12391378area["addr:place"][prop(crc)>=9393][prop(crc)<9696],
    1240 relation[type="associatedStreet"][prop(crc)>=9393][prop(crc)<9696] > area["addr:housenumber"],
    1241 area["highway"="pedestrian"]["name"][prop(crc)>=9393][prop(crc)<9696]:closed
    1242 {
    1243         color: #707000;
    1244         fill-color: #707000;
    1245         text-halo-color: #707000;
     1379relation[type="associatedStreet"][prop(crc)>=9393][prop(crc)<9696] > area["addr:housenumber"][setting("support_associatedstreet")],
     1380relation[type="associatedStreet"][prop(crc)>=9393][prop(crc)<9696] > area[nohousenumber=yes][setting("support_associatedstreet")],
     1381area["highway"="pedestrian"]["name"][prop(crc)>=9393][prop(crc)<9696]:closed {
     1382    color: #707000;
     1383    fill-color: #707000;
     1384    text-halo-color: #707000;
    12461385}
    12471386node["addr:street"][prop(crc)>=9393][prop(crc)<9696]::halo,
    12481387node["addr:place"][prop(crc)>=9393][prop(crc)<9696]::halo,
    1249 relation[type="associatedStreet"][prop(crc)>=9393][prop(crc)<9696] > node["addr:housenumber"]::halo
    1250 {
    1251         symbol-fill-color: #707000;
    1252         text-halo-color: #707000;
    1253 
    1254 }
    1255 way["highway"]["name"][prop(crc)>=9393][prop(crc)<9696]
    1256 {
    1257         color: #707000;
    1258         text-halo-color: #707000;
    1259 }
    1260                 /* --------- */
     1388relation[type="associatedStreet"][prop(crc)>=9393][prop(crc)<9696] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     1389relation[type="associatedStreet"][prop(crc)>=9393][prop(crc)<9696] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     1390    symbol-fill-color: #707000;
     1391    text-halo-color: #707000;
     1392
     1393}
     1394way["highway"]["name"][prop(crc)>=9393][prop(crc)<9696] {
     1395    color: #707000;
     1396    text-halo-color: #707000;
     1397}
     1398        /* --------- */
    12611399area["addr:street"][prop(crc)>=9696],
    12621400area["addr:place"][prop(crc)>=9696],
    1263 relation[type="associatedStreet"][prop(crc)>=9696] > area["addr:housenumber"],
    1264 area["highway"="pedestrian"]["name"][prop(crc)>=9696]:closed
    1265 {
    1266         color: #ff4444;
    1267         fill-color: #ff4444;
    1268         text-halo-color: #ff4444;
     1401relation[type="associatedStreet"][prop(crc)>=9696] > area["addr:housenumber"][setting("support_associatedstreet")],
     1402relation[type="associatedStreet"][prop(crc)>=9696] > area[nohousenumber=yes][setting("support_associatedstreet")],
     1403area["highway"="pedestrian"]["name"][prop(crc)>=9696]:closed {
     1404    color: #ff4444;
     1405    fill-color: #ff4444;
     1406    text-halo-color: #ff4444;
    12691407}
    12701408node["addr:street"][prop(crc)>=9696]::halo,
    12711409node["addr:place"][prop(crc)>=9696]::halo,
    1272 relation[type="associatedStreet"][prop(crc)>=9696] > node["addr:housenumber"]::halo
    1273 {
    1274         symbol-fill-color: #ff4444;
    1275         text-halo-color: #ff4444;
    1276 }
    1277 way["highway"]["name"][prop(crc)>=9696]
    1278 {
    1279         color: #ff4444;
    1280         text-halo-color: #ff4444;
     1410relation[type="associatedStreet"][prop(crc)>=9696] > node["addr:housenumber"][setting("support_associatedstreet")]::halo,
     1411relation[type="associatedStreet"][prop(crc)>=9696] > node[nohousenumber=yes][setting("support_associatedstreet")]::halo {
     1412    symbol-fill-color: #ff4444;
     1413    text-halo-color: #ff4444;
     1414}
     1415way["highway"]["name"][prop(crc)>=9696] {
     1416    color: #ff4444;
     1417    text-halo-color: #ff4444;
    12811418}
    12821419
     
    12851422/* ------------------------------------------------------------------------------------------------------------------------ */
    12861423
     1424/* left and right casing */
     1425    /* left casing */
     1426way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)<303] { left-casing-color: #8B864E; }
     1427way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=303][prop(crc_left)<606] { left-casing-color: #b88142; }
     1428way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=606][prop(crc_left)<909] { left-casing-color: #a3fe8f; }
     1429way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=909][prop(crc_left)<1212] { left-casing-color: #b8674c; }
     1430way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=1212][prop(crc_left)<1515] { left-casing-color: #f4ff6b; }
     1431way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=1515][prop(crc_left)<1818] { left-casing-color: #81c0ff; }
     1432way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=1818][prop(crc_left)<2121] { left-casing-color: #6b8e23; }
     1433way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=2121][prop(crc_left)<2424] { left-casing-color: #e1bd6a; }
     1434way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=2424][prop(crc_left)<2727] { left-casing-color: #7fffd4; }
     1435way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=2727][prop(crc_left)<3030] { left-casing-color: #8a2be2; }
     1436way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=3030][prop(crc_left)<3333] { left-casing-color: #a52a2a; }
     1437way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=3333][prop(crc_left)<3636] { left-casing-color: #f0b9a6; }
     1438way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=3636][prop(crc_left)<3939] { left-casing-color: #8fbc8f; }
     1439way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=3939][prop(crc_left)<4242] { left-casing-color: #1b7777; }
     1440way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=4242][prop(crc_left)<4545] { left-casing-color: #ff1493; }
     1441way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=4545][prop(crc_left)<4848] { left-casing-color: #0072e2; }
     1442way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=4848][prop(crc_left)<5151] { left-casing-color: #008f00; }
     1443way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=5151][prop(crc_left)<5454] { left-casing-color: #ffcc00; }
     1444way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=5454][prop(crc_left)<5757] { left-casing-color: #BF9017; }
     1445way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=5757][prop(crc_left)<6060] { left-casing-color: #adff2f; }
     1446way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=6060][prop(crc_left)<6363] { left-casing-color: #ff69b4; }
     1447way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=6363][prop(crc_left)<6666] { left-casing-color: #cd5c5c; }
     1448way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=6666][prop(crc_left)<6969] { left-casing-color: #7d5a07; }
     1449way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=6969][prop(crc_left)<7272] { left-casing-color: #824600; }
     1450way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=7272][prop(crc_left)<7575] { left-casing-color: #f08080; }
     1451way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=7575][prop(crc_left)<7878] { left-casing-color: #F75617; }
     1452way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=7878][prop(crc_left)<8181] { left-casing-color: #54d954; }
     1453way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=8181][prop(crc_left)<8484] { left-casing-color: #ba55d3; }
     1454way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=8484][prop(crc_left)<8787] { left-casing-color: #9370db; }
     1455way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=8787][prop(crc_left)<9090] { left-casing-color: #ff7c00; }
     1456way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=9090][prop(crc_left)<9393] { left-casing-color: #3cb371; }
     1457way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=9393][prop(crc_left)<9696] { left-casing-color: #707000; }
     1458way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:left"][prop(crc_left)>=9696] { left-casing-color: #ff4444; }
     1459    /* right casing */
     1460way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)<303] { right-casing-color: #8B864E; }
     1461way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=303][prop(crc_right)<606] { right-casing-color: #b88142; }
     1462way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=606][prop(crc_right)<909] { right-casing-color: #a3fe8f; }
     1463way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=909][prop(crc_right)<1212] { right-casing-color: #b8674c; }
     1464way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=1212][prop(crc_right)<1515] { right-casing-color: #f4ff6b; }
     1465way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=1515][prop(crc_right)<1818] { right-casing-color: #81c0ff; }
     1466way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=1818][prop(crc_right)<2121] { right-casing-color: #6b8e23; }
     1467way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=2121][prop(crc_right)<2424] { right-casing-color: #e1bd6a; }
     1468way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=2424][prop(crc_right)<2727] { right-casing-color: #7fffd4; }
     1469way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=2727][prop(crc_right)<3030] { right-casing-color: #8a2be2; }
     1470way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=3030][prop(crc_right)<3333] { right-casing-color: #a52a2a; }
     1471way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=3333][prop(crc_right)<3636] { right-casing-color: #f0b9a6; }
     1472way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=3636][prop(crc_right)<3939] { right-casing-color: #8fbc8f; }
     1473way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=3939][prop(crc_right)<4242] { right-casing-color: #1b7777; }
     1474way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=4242][prop(crc_right)<4545] { right-casing-color: #ff1493; }
     1475way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=4545][prop(crc_right)<4848] { right-casing-color: #0072e2; }
     1476way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=4848][prop(crc_right)<5151] { right-casing-color: #008f00; }
     1477way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=5151][prop(crc_right)<5454] { right-casing-color: #ffcc00; }
     1478way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=5454][prop(crc_right)<5757] { right-casing-color: #BF9017; }
     1479way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=5757][prop(crc_right)<6060] { right-casing-color: #adff2f; }
     1480way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=6060][prop(crc_right)<6363] { right-casing-color: #ff69b4; }
     1481way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=6363][prop(crc_right)<6666] { right-casing-color: #cd5c5c; }
     1482way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=6666][prop(crc_right)<6969] { right-casing-color: #7d5a07; }
     1483way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=6969][prop(crc_right)<7272] { right-casing-color: #824600; }
     1484way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=7272][prop(crc_right)<7575] { right-casing-color: #f08080; }
     1485way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=7575][prop(crc_right)<7878] { right-casing-color: #F75617; }
     1486way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=7878][prop(crc_right)<8181] { right-casing-color: #54d954; }
     1487way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=8181][prop(crc_right)<8484] { right-casing-color: #ba55d3; }
     1488way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=8484][prop(crc_right)<8787] { right-casing-color: #9370db; }
     1489way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=8787][prop(crc_right)<9090] { right-casing-color: #ff7c00; }
     1490way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=9090][prop(crc_right)<9393] { right-casing-color: #3cb371; }
     1491way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=9393][prop(crc_right)<9696] { right-casing-color: #707000; }
     1492way["highway"][highway!="platform"][highway!="emergency_access_point"]["name:right"][prop(crc_right)>=9696] { right-casing-color: #ff4444; }
     1493
     1494/* ------------------------------------------------------------------------------------------------------------------------ */
     1495/* ------------------------------------------------------------------------------------------------------------------------ */
     1496/* ------------------------------------------------------------------------------------------------------------------------ */
     1497
    12871498/* Error messages and other special rules */
    1288         /* have housenumber, miss street */
     1499    /* have housenumber, miss street */
    12891500node[addr:housenumber][!addr:street][!addr:place]::halo,
    1290 area[addr:housenumber][!addr:street][!addr:place]
    1291 {
    1292         isinassociatedstreetrelation: eval(cond(parent_tag(type)="associatedStreet",true,false));
    1293 }
    1294 area[addr:housenumber][!addr:street][!addr:place][prop(isinassociatedstreetrelation)=false]
    1295 {
    1296         text: eval(cond(has_tag_key(name), concat("street? ", tag("addr:housenumber"), " | ", tag("name")),concat("street? ", tag("addr:housenumber"))));
    1297         text-halo-color: red;
    1298         text-halo-radius: 2;
    1299         text-halo-opacity: 0.8;
    1300         width: 3;
    1301         fill-color: #FF0000;
    1302         fill-opacity:0.7;
    1303         text-color: #000000;
    1304         font-size: 10;
    1305         casing-width: 1;
    1306         casing-color: #FFFF00;
    1307        
    1308 }
    1309 node[addr:housenumber][!addr:street][!addr:place][prop(isinassociatedstreetrelation)=false]::halo
    1310 {
    1311         text: eval(concat("street? ", tag("addr:housenumber")));
    1312         font-size: 12;
    1313         text-color: black;
    1314         text-halo-color: red;
    1315         text-halo-radius: 2;
    1316         text-halo-opacity: 0.8;
    1317         text-anchor-vertical: center;
    1318         symbol-shape: triangle;
    1319         symbol-fill-opacity:0.7;
    1320         symbol-fill-color: #FF0000;
    1321         symbol-size: 30;
    1322         symbol-stroke-color: #FFFF00;
    1323         z-index: -1;   
    1324 }
    1325 
    1326         /* have street, miss housenumber */
    1327 area[addr:street][!addr:housenumber][!highway][!addr:interpolation],
    1328 area[addr:place][!addr:housenumber][!highway][!addr:interpolation]
    1329 {
    1330         width: 3;
    1331         text-halo-radius: 2;
    1332         fill-color: #FF0000;
    1333         fill-opacity:0.7;
    1334         text: eval(cond(has_tag_key(name), concat("number? | ", tag("name")), "number?"));
    1335         text-position: center;
    1336         text-color: #000000;
    1337         font-size: 12;
    1338         casing-width: 1;
    1339         casing-color: #FFFF00; 
    1340 }
    1341 node["addr:street"][!"addr:housenumber"]::halo,
    1342 node["addr:place"][!"addr:housenumber"]::halo
    1343 {
    1344         text: eval("number?");
    1345         text-color: black;
    1346         font-size: 12;
    1347         symbol-shape: triangle;
    1348         symbol-fill-opacity:0.7;
    1349         symbol-fill-color: #FF0000;
    1350         symbol-size: 30;
    1351         symbol-stroke-color: #FFFF00;
    1352         z-index: -1;   
    1353 }
    1354 
    1355         /* street with addr:*=* */
    1356 way["highway"]["addr:country"],
    1357 way["highway"]["addr:postcode"][prop(allow_postcode)=false],
    1358 way["highway"]["addr:city"],
    1359 way["highway"]["addr:street"],
    1360 way["highway"]["addr:place"],
    1361 way["highway"]["addr:housenumber"]
    1362 {
    1363         text: eval("no addr!");
    1364         color: red;
    1365         width: 5;
    1366         dashes: 20,4;
    1367         dashes-background-color: #FFFF00;
    1368         object-z-index:-1.0;
    1369         text-halo-color: red;
    1370         text-halo-radius: 2;
    1371 }
    1372 
    1373         /* addr:*=* together with addr:interpolation=* */
     1501area[addr:housenumber][!addr:street][!addr:place] {
     1502    isinassociatedstreetrelation: eval(cond(parent_tag(type)="associatedStreet",true,false));
     1503}
     1504area[addr:housenumber][!addr:street][!addr:place][prop(isinassociatedstreetrelation)=false][setting("support_associatedstreet")],
     1505area[addr:housenumber][!addr:street][!addr:place][!setting("support_associatedstreet")] {
     1506    text: eval(cond(has_tag_key(name), concat(tag("addr:housenumber"), " ", tr("street?"), " | ", tag("name")), concat(tag("addr:housenumber"), " ", tr("street?"))));
     1507    text-halo-color: red;
     1508    text-halo-radius: 2;
     1509    text-halo-opacity: 0.8;
     1510    width: 3;
     1511    fill-color: red;
     1512    fill-opacity:0.7;
     1513    text-color: black;
     1514    font-size: 10;
     1515    casing-width: 1;
     1516    casing-color: yellow;
     1517    z-index: 1;
     1518}
     1519node[addr:housenumber][!addr:street][!addr:place][prop(isinassociatedstreetrelation)=false][setting("support_associatedstreet")]::halo,
     1520node[addr:housenumber][!addr:street][!addr:place][!setting("support_associatedstreet")]::halo {
     1521    text: eval(concat(tag("addr:housenumber"), " ", tr("street?")));
     1522    font-size: 12;
     1523    text-color: black;
     1524    text-halo-color: red;
     1525    text-halo-radius: 2;
     1526    text-halo-opacity: 0.8;
     1527    text-anchor-vertical: center;
     1528    symbol-shape: triangle;
     1529    symbol-fill-opacity:0.7;
     1530    symbol-fill-color: red;
     1531    symbol-size: 30;
     1532    symbol-stroke-color: yellow;
     1533    z-index: -1;   
     1534}
     1535
     1536    /* have street, miss housenumber */
     1537        /* areas */
     1538area|z18-[addr:street][!addr:housenumber]["addr:housename"][!highway][!addr:interpolation][setting("allow_housename")],
     1539area|z18-[addr:place][!addr:housenumber]["addr:housename"][!highway][!addr:interpolation][setting("allow_housename")] {
     1540    text: eval(cond(has_tag_key(name), concat(tag("addr:housename"), " | ", tag("name")), tag("addr:housename"))); /* "housename | name" or only "housename" (no warning) */
     1541    text-position: center;
     1542    text-color: black;
     1543    font-size: 12;
     1544}
     1545area|z18-[addr:street][!addr:housenumber][nohousenumber!=yes][!"addr:housename"][!highway][!addr:interpolation][!setting("display_missing_number_message")],
     1546area|z18-[addr:place][!addr:housenumber][nohousenumber!=yes][!"addr:housename"][!highway][!addr:interpolation][!setting("display_missing_number_message")],
     1547area|z18-[addr:street][!addr:housenumber][nohousenumber!=yes][!highway][!addr:interpolation][!setting("display_missing_number_message")][!setting("allow_housename")],
     1548area|z18-[addr:place][!addr:housenumber][nohousenumber!=yes][!highway][!addr:interpolation][!setting("display_missing_number_message")][!setting("allow_housename")] {
     1549    text: eval(cond(has_tag_key(name), concat("? | ", tag("name")), "?")); /* "? | name" or only "?" (no warning) */
     1550    text-position: center;
     1551    text-color: black;
     1552    font-size: 12;
     1553}
     1554area[addr:street][!addr:housenumber][nohousenumber!=yes][!highway][!addr:interpolation][setting("display_missing_number_message")][!setting("allow_housename")],
     1555area[addr:place][!addr:housenumber][nohousenumber!=yes][!highway][!addr:interpolation][setting("display_missing_number_message")][!setting("allow_housename")],
     1556area[addr:street][!addr:housenumber][nohousenumber!=yes][!"addr:housename"][!highway][!addr:interpolation][setting("display_missing_number_message")][setting("allow_housename")],
     1557area[addr:place][!addr:housenumber][nohousenumber!=yes][!"addr:housename"][!highway][!addr:interpolation][setting("display_missing_number_message")][setting("allow_housename")] {
     1558    width: 3;
     1559    text-halo-radius: 2;
     1560    fill-color: red;
     1561    fill-opacity:0.7;
     1562    text: eval(cond(has_tag_key(name), concat(tr("number?"), " | ", tag("name")), tr("number?"))); /* "number? | name" or only "number?" (as warning) */
     1563    text-position: center;
     1564    text-color: black;
     1565    font-size: 12;
     1566    casing-width: 1;
     1567    casing-color: yellow;   
     1568}
     1569area|z-18[addr:street][!addr:housenumber][!highway][!addr:interpolation],
     1570area|z-18[addr:place][!addr:housenumber][!highway][!addr:interpolation] {
     1571    font-size: 11;
     1572}
     1573        /* nodes */
     1574node["addr:street"][!"addr:housenumber"][nohousenumber!=yes][setting("display_missing_number_message")][!setting("allow_housename")]::halo,
     1575node["addr:place"][!"addr:housenumber"][nohousenumber!=yes][setting("display_missing_number_message")][!setting("allow_housename")]::halo,
     1576node["addr:street"][!"addr:housenumber"][nohousenumber!=yes][!"addr:housename"][setting("display_missing_number_message")][setting("allow_housename")]::halo,
     1577node["addr:place"][!"addr:housenumber"][nohousenumber!=yes][!"addr:housename"][setting("display_missing_number_message")][setting("allow_housename")]::halo {
     1578    text: tr("number?"); /* "number?" (as warning) */
     1579    text-color: black;
     1580    font-size: 12;
     1581    symbol-shape: triangle;
     1582    symbol-fill-opacity:0.7;
     1583    symbol-fill-color: red;
     1584    symbol-size: 30;
     1585    symbol-stroke-color: yellow;
     1586    z-index: -1;   
     1587}
     1588node|z18-["addr:street"][!"addr:housenumber"]["addr:housename"][setting("allow_housename")]::halo,
     1589node|z18-["addr:place"][!"addr:housenumber"]["addr:housename"][setting("allow_housename")]::halo {
     1590    text: eval(tag("addr:housename")); /* "housename" (no warning) */
     1591    text-color: black;
     1592    font-size: 12;
     1593}
     1594node|z18-["addr:street"][!"addr:housenumber"][nohousenumber!=yes][!"addr:housename"][!setting("display_missing_number_message")]::halo,
     1595node|z18-["addr:place"][!"addr:housenumber"][nohousenumber!=yes][!"addr:housename"][!setting("display_missing_number_message")]::halo,
     1596node|z18-["addr:street"][!"addr:housenumber"][nohousenumber!=yes][!setting("display_missing_number_message")][!setting("allow_housename")]::halo,
     1597node|z18-["addr:place"][!"addr:housenumber"][nohousenumber!=yes][!setting("display_missing_number_message")][!setting("allow_housename")]::halo {
     1598    text: eval("?"); /* "?" (no warning) */
     1599    text-color: black;
     1600    font-size: 12;
     1601}
     1602
     1603    /* street with addr:*=* */
     1604way["highway"][highway!=services][highway!=rest_area]["addr:country"],
     1605way["highway"][highway!=services][highway!=rest_area]["addr:postcode"][!setting("allow_postcode")],
     1606way["highway"][highway!=services][highway!=rest_area]["addr:city"],
     1607way["highway"][highway!=services][highway!=rest_area]["addr:street"],
     1608way["highway"][highway!=services][highway!=rest_area]["addr:place"],
     1609way["highway"][highway!=services][highway!=rest_area]["addr:housenumber"] {
     1610    text: tr("no address!");
     1611    color: red;
     1612    width: 4;
     1613    dashes: 28,2;
     1614    dashes-background-color: yellow;
     1615    object-z-index:-1.0;
     1616    text-halo-color: red;
     1617    text-halo-radius: 2;
     1618    casing-width: 0.7;
     1619    casing-color: yellow;
     1620}
     1621
     1622    /* addr:*=* together with addr:interpolation=* */
    13741623way["addr:interpolation"]["addr:country"],
    13751624way["addr:interpolation"]["addr:postcode"],
     
    13771626way["addr:interpolation"]["addr:street"],
    13781627way["addr:interpolation"]["addr:place"],
    1379 way["addr:interpolation"]["addr:housenumber"]
    1380 {
    1381         text: eval("addr:interpolation shouldn't have other addr:*=* tags!");
    1382         color: red;
    1383         width: 5;
    1384         dashes: 20,4;
    1385         dashes-background-color: #FFFF00;
    1386         object-z-index:-1.0;
    1387         text-halo-color: red;
    1388         text-halo-radius: 2;
    1389         text-color: black;
    1390         font-size: 12;
    1391 }
    1392 
    1393         /* names of nodes */
    1394 node["addr:housenumber"]
    1395 {
    1396         font-size: 10;
    1397         text-color: white;
    1398         text-anchor-vertical: center;
    1399         text-offset-y: -10;
    1400         text-offset-x: 8;
    1401 }
    1402 
    1403 node|z22-["addr:housenumber"]
    1404 {
    1405         font-size: 11;
    1406 }
    1407         /* disable double numbers */
    1408 node["addr:housenumber"][!name]
    1409 {
    1410         font-size: 0;
     1628way["addr:interpolation"]["addr:housenumber"] {
     1629    text: tr("addr:interpolation shouldn't have other addr:*=* tags!");
     1630    color: red;
     1631    width: 4;
     1632    dashes: 28,2;
     1633    dashes-background-color: yellow;
     1634    object-z-index:-1.0;
     1635    text-halo-color: red;
     1636    text-halo-radius: 2;
     1637    text-color: black;
     1638    font-size: 12;
     1639    casing-width: 0.7;
     1640    casing-color: yellow;
     1641}
     1642
     1643    /* names of nodes */
     1644node["addr:housenumber"],
     1645relation[type="associatedStreet"] > node[nohousenumber=yes][setting("support_associatedstreet")] {
     1646    font-size: 10;
     1647    text-color: white;
     1648    text-anchor-vertical: center;
     1649    text-offset-y: -10;
     1650    text-offset-x: 8;
     1651}
     1652
     1653node|z22-["addr:housenumber"] {
     1654    font-size: 11;
     1655}
     1656    /* hide housenumbers of default layer */
     1657node["addr:housenumber"][!name] {
     1658    font-size: 0;
    14111659}
    14121660
    1413         /* names for adress nodes without number */
     1661    /* names for adress nodes without number */
    14141662node[!"addr:housenumber"][name][addr:street],
    1415 node[!"addr:housenumber"][name][addr:place]
    1416 {
    1417         font-size: 10;
    1418         text-color: white;
    1419         text-anchor-vertical: center;
    1420         text-offset-y: -10;
    1421         text-offset-x: 8;
     1663node[!"addr:housenumber"][name][addr:place] {
     1664    font-size: 10;
     1665    text-color: white;
     1666    text-anchor-vertical: center;
     1667    text-offset-y: -10;
     1668    text-offset-x: 8;
    14221669}
    14231670
    1424         /* text style of areas with number */
     1671    /* text style of areas with number */
    14251672way:closed["addr:housenumber"],
     1673way:closed[!"addr:housenumber"][nohousenumber=yes][addr:street],
     1674way:closed[!"addr:housenumber"][nohousenumber=yes][addr:place],
    14261675relation[type=multipolygon]["addr:housenumber"],
    1427 relation[type="associatedStreet"] > area["addr:housenumber"]
    1428 {
    1429         text-color: black;
    1430         font-size: 12;
    1431         text-position: center;
    1432 }
    1433 
    1434         /* text style of highways and false addr */
    1435 
    1436 way[highway][highway!="platform"]
    1437 {
    1438         text-color: black;
    1439         font-size: 12;
    1440 }
    1441        
    1442         /* higway=residential and highway=living_street without name */
    1443 way[highway=residential][!name][noname!=yes][unnamed!=yes][name:absent!=yes],
    1444 way[highway=living_street][!name][noname!=yes][unnamed!=yes][name:absent!=yes]
    1445 {
    1446         color: #FF0000;
    1447         width: 5;
    1448         font-size: 12;
    1449         text-color: #000000;
    1450         text-position: line;
    1451         text: eval("name?");
    1452         text-offset: 0;
    1453         text-halo-color: #FF0000;
    1454         text-halo-radius: 2;
    1455         dashes: 20,4;
    1456         dashes-background-color: #FFFF00;
     1676relation[type=multipolygon][!"addr:housenumber"][nohousenumber=yes][addr:street],
     1677relation[type=multipolygon][!"addr:housenumber"][nohousenumber=yes][addr:place],
     1678relation[type="associatedStreet"] > area["addr:housenumber"][setting("support_associatedstreet")],
     1679relation[type="associatedStreet"] > area[!"addr:housenumber"][nohousenumber=yes][setting("support_associatedstreet")] {
     1680    text-color: black;
     1681    font-size: 12;
     1682    text-position: center;
     1683}
     1684way|z-18:closed["addr:housenumber"],
     1685way|z-18:closed[!"addr:housenumber"][nohousenumber=yes][addr:street],
     1686way|z-18:closed[!"addr:housenumber"][nohousenumber=yes][addr:place],
     1687relation|z-18[type=multipolygon]["addr:housenumber"],
     1688relation|z-18[type=multipolygon][!"addr:housenumber"][nohousenumber=yes][addr:street],
     1689relation|z-18[type=multipolygon][!"addr:housenumber"][nohousenumber=yes][addr:place],
     1690relation[type="associatedStreet"] > area|z-18["addr:housenumber"][setting("support_associatedstreet")],
     1691relation[type="associatedStreet"] > area|z-18[!"addr:housenumber"][nohousenumber=yes][setting("support_associatedstreet")] {
     1692    font-size: 11;
     1693}
     1694
     1695    /* text style of highways and false addr */
     1696way[highway][highway!="platform"][highway!="emergency_access_point"] {
     1697    text-color: black;
     1698    font-size: 12;
     1699}
     1700   
     1701    /* higway=residential and highway=living_street without name (but no roundabouts) */
     1702way[highway=residential][!name][noname!=yes][unnamed!=yes][name:absent!=yes][validate:no_name!=yes][junction!=roundabout],
     1703way[highway=living_street][!name][noname!=yes][unnamed!=yes][name:absent!=yes][validate:no_name!=yes][junction!=roundabout] {
     1704    color: red;
     1705    width: 4;
     1706    font-size: 12;
     1707    text-color: black;
     1708    text-position: line;
     1709    text: tr("name?");
     1710    text-offset: 0;
     1711    text-halo-color: red;
     1712    text-halo-radius: 2;
     1713    dashes: 28,2;
     1714    dashes-background-color: yellow;
     1715    casing-width: 0.7;
     1716    casing-color: yellow;
    14571717}
    14581718}}}