Changes between Version 47 and Version 52 of Styles/Maxspeed


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

Legend:

Unmodified
Added
Removed
Modified
  • Styles/Maxspeed

    v47 v52  
    77* maxspeed:forward
    88* maxspeed:backward
    9 * [[osmwiki:Conditional_restrictions|maxspeed:conditional]]
     9* [[osmwiki:Key:maxspeed:conditional|maxspeed:conditional]]
    1010* maxspeed:forward:conditional
    1111* maxspeed:backward:conditional
     
    1313* maxspeed:variable:forward
    1414* maxspeed:variable:backward
     15* [[osmwiki:Key:maxspeed:advisory|maxspeed:advisory]]
     16* maxspeed:advisory:forward
     17* maxspeed:advisory:backward
    1518
    1619This style was mainly developed for streets but can be used on railways too.
     
    2427[[Image(maxspeed_legend.png)]]
    2528
     29On high zoom the maxspeed values are displayed as text. This can be disabled in the [wiki:Help/Dialog/MapPaint/StyleSettings style settings] of this mappaint style.
     30
     31How the different keys are supported by this style:
     32
     33||= key =||= color =||= text =||= text abbreviation =||= validation =||
     34||`maxspeed`  || yes || yes ||  || yes ||
     35||`maxspeed:forward`  || yes || yes || fw || yes ||
     36||`maxspeed:backward`  || yes || yes || bw || yes ||
     37||`maxspeed:conditional`  || yes (dashed pattern) || yes || c (value before `@` only) || yes ||
     38||`maxspeed:forward:conditional`  || yes (dashed pattern) || yes || fwc (value before `@` only) || yes ||
     39||`maxspeed:backward:conditional`  || yes (dashed pattern) || yes || bwc (value before `@` only) || yes ||
     40||`maxspeed:variable`  || yes (different dashed pattern) || yes (all values except `no`) || v (without the actual value) || no ||
     41||`maxspeed:variable:forward`  || yes (different dashed pattern) || yes (all values except `no`) || vfw (without the actual value) || no ||
     42||`maxspeed:variable:backward`  || yes (different dashed pattern) || yes (all values except `no`) || vbw (without the actual value) || no ||
     43||`maxspeed:advisory`  || no || yes || a || yes ||
     44||`maxspeed:advisory:forward`  || no || yes || afw || yes ||
     45||`maxspeed:advisory:backward`  || no || yes || abw || yes ||
     46
     47
     48[osmwiki:Key:maxspeed#Implicit_maxspeed_values Implicit maxspeed values] are currently supported for the following countries: `BY` (Belarus), `FR` (France), `RO` (Romania), `RS` (Serbia), `RU` (Russia). This needs to be enabled in the [wiki:Help/Dialog/MapPaint/StyleSettings style settings] of this mappaint style first if wanted.
     49
    2650For ideas/questions/bugs/suggestions or similar please write a message to [osmwww:user/Klumbumbus Klumbumbus].
    2751
     
    3054[attachment:Testcenter.osm Testcenter] for quality assurance of this style.
    3155
    32 [osmwiki:Key:maxspeed#Implicit_maxspeed_values Implicit maxspeed values] are currently supported for the following countries: BY (Belarus), FR (France), RO (Romania), RS (Serbia), RU (Russia). This needs to be enabled in the [wiki:Help/Dialog/MapPaint/StyleSettings style settings] of this mappaint style first if wanted.
    33 
    3456Known problems:
    35 * Dashes can sometimes lead to rendering artefacts (dash goes straight on, while the road has a corner), see JOSM bug #8429. Just zoom to fix it.
    36 * When using different forward and backward conditional values or variable values, the dashes on the left and right of the road can sometimes be asynchronous, see JOSM bug #11994. Just zoom or move the map to fix it.
     57* When using `forward`/`backward` values in combination with `conditional` values or `variable`, the dashes on the left and right of the road can sometimes be asynchronous, see JOSM bug #11994.
    3758
    3859
    3960== Changelog ==
     61=== Version 3.1 ===
     62* Unify indentation (4 spaces instead of tabulator), no code change
     63=== Version 3.0 ===
     64* Add display of all supported `maxspeed` values as text on high zoom (partly shortened and with abbreviation, see table above); can be disabled by style setting
     65* Rework error display code to make it compatible with `maxspeed` values display
     66* Add and improve some corner cases of the error display
     67* Add support of `maxspeed:advisory` (by user request); only by text display as a 3rd color (beside `maxspeed` and `maxspeed:conditional`) combined with `forward`/`backward` and `variable` would be too confusing
     68* Add error display for wrong `maxspeed:advisory` values
    4069=== Version 2.9 ===
    41 * Add color for 80 mph (same as 140) and 85 mph (new color) by user request (used in USA)
    42 * Make color of 30 and 45 mph a little brighter to better distinguish from 100 and 60 mph
     70* Add color for `80 mph` (same as `140`) and `85 mph` (new color) by user request (used in USA)
     71* Make color of `30` and `45 mph` a little brighter to better distinguish from `100` and `60` mph
    4372=== Version 2.8 ===
    44 * Change style setting "maxspeed=RU:* tagging scheme" to general "implicit maxspeed values" and make it disabled by default. Add support for countries with most usage (RO, FR and BY) and RS by user request
     73* Change style setting "maxspeed=RU:* tagging scheme" to general "implicit maxspeed values" and make it disabled by default. Add support for countries with most usage (`RO`, `FR` and `BY`) and `RS` by user request
    4574* A little stricter checking of bad values for some corner cases, e.g. `20 mphh` is now reported as wrong value (was simply ignored before)
    4675=== Version 2.7 ===
    47 * Add support of maxspeed=* + maxspeed:direction:conditional=* (without maxspeed:direction=*), fixes bug in version 2.5
     76* Add support of `maxspeed=*` + `maxspeed:direction:conditional=*` (without `maxspeed:direction=*`), fixes bug in version 2.5
    4877* Better display of error messages
    4978* Remove opacity because of different reasons
    50 * Adjust color for 120
    51 * If maxspeed and maxspeed:direction is tagged together (tagging error) it is now no longer displayed both stacked, but direction value overrides normal maxspeed value
    52 * Support combinations of conditional and variable maxspeed
    53 * Add 140
     79* Adjust color for `120`
     80* If `maxspeed` and `maxspeed:direction` is tagged together (tagging error) it is now no longer displayed both stacked, but direction value overrides normal `maxspeed` value
     81* Support combinations of `conditional` and `variable` `maxspeed`
     82* Add `140`
    5483=== Version 2.5 ===
    55 * Add support of maxspeed:conditional, maxspeed:forward:conditional and maxspeed:backward:conditional
    56 * Add error message for wrong value of conditional maxspeed
    57 * Add error message for conditional maxspeed without default maxspeed
     84* Add support of `maxspeed:conditional`, `maxspeed:forward:conditional` and `maxspeed:backward:conditional`
     85* Add error message for wrong value of `conditional` `maxspeed`
     86* Add error message for `conditional` `maxspeed` without default `maxspeed`
    5887* Add in file table of contents and numbered headings for better understandability of the code structure
    5988=== Version 2.1 ===
     
    6392=== Version 2.0 ===
    6493* change from xml to mapcss
    65 * support of maxspeed:forward and maxspeed:backward (considering left and right hand traffic)
    66 * support of maxspeed:variable, maxspeed:variable:forward and maxspeed:variable:backward (dashed line)
    67 * highlight color is now below the highway line, to see the highway type (residential, secondary, motorway,...)
    68 * removed support of values without space between number and unit (e.g. ''35mph'')
    69 * added error message for wrong maxspeed values (like ''35mph'' or ''35 m/h'')
    70 * added error message if maxspeed direction is opposed to oneway direction
     94* support of `maxspeed:forward` and `maxspeed:backward` (considering left and right hand traffic)
     95* support of `maxspeed:variable`, `maxspeed:variable:forward` and `maxspeed:variable:backward` (dashed line)
     96* highlight color is now below the highway line, to see the highway type (`residential`, `secondary`, `motorway`,...)
     97* removed support of values without space between number and unit (e.g. `35mph`)
     98* added error message for wrong `maxspeed` values (like `35mph` or `35 m/h`)
     99* added error message if `maxspeed` direction is opposed to `oneway` direction
    71100* adjusted to most used values according to [https://taginfo.openstreetmap.org/keys/maxspeed#values taginfo]
    72  * added ''20'', ''45'', ''none''
    73  * removed unused values like ''32.19''
     101 * added `20`, `45`, `none`
     102 * removed unused values like `32.19`
    74103* adjusted opacities, widths and some colors for better display and distinction between the colors
    75104* widths depends on zoom level
     
    113142 5.3.2 - mph
    114143 5.4 - general rules
    115 6 - error reporting
    116  6.1 - report wrong value of maxspeed
    117  6.2 - report wrong value of maxspeed:conditional
    118  6.3 - report conditional maxspeed without default maxspeed
    119  6.4 - report if maxspeed direction is opposed to oneway direction
     1446 - display maxspeed values as text
     1457 - error reporting
     146 7.1 - report wrong value of maxspeed
     147 7.2 - report wrong value of maxspeed:conditional
     148 7.3 - report conditional maxspeed without default maxspeed
     149 7.4 - report wrong value of maxspeed:advisory
     150 7.5 - report if maxspeed direction is opposed to oneway direction
    120151 
    121152*/
     
    126157meta
    127158{
    128         title: "Maxspeed";
    129         version: "2.9.[[revision]]_[[date]]";
    130         description: "Display maxspeed values of ways in the map view.";
    131         icon: "maxspeed_icon.svg";
    132         author: "Rubke, Dirk Stöcker, Vclaw, Klumbumbus";
    133         link: "https://josm.openstreetmap.de/wiki/Styles/Maxspeed";
    134         min-josm-version: "7450"; /* because of user settings */
     159    title: "Maxspeed";
     160    version: "3.1.[[revision]]_[[date]]";
     161    description: "Display maxspeed values of ways in the map view.";
     162    icon: "maxspeed_icon.svg";
     163    author: "Rubke, Dirk Stöcker, Vclaw, Klumbumbus";
     164    link: "https://josm.openstreetmap.de/wiki/Styles/Maxspeed";
     165    min-josm-version: "7450"; /* because of user settings */
    135166}
    136167meta[lang=de]
    137168{
    138         title: "Höchstgeschwindigkeit";
    139         description: "Anzeige der Höchstgeschwindigkeiten von Linien in der Kartenanzeige.";
    140         link: "https://josm.openstreetmap.de/wiki/De:Styles/Maxspeed";
     169    title: "Höchstgeschwindigkeit";
     170    description: "Anzeige der Höchstgeschwindigkeiten von Linien in der Kartenanzeige.";
     171    link: "https://josm.openstreetmap.de/wiki/De:Styles/Maxspeed";
    141172}
    142173
     
    146177/* 2.1 - create user settings */
    147178setting::implicit {
    148   type: boolean;
    149   label: tr("Support implicit maxspeed values, e.g. RO:urban (only in BY, FR, RO, RU, RS)");
    150   default: false;
     179    type: boolean;
     180    label: tr("Support implicit maxspeed values, e.g. RO:urban (only in BY, FR, RO, RU, RS)");
     181    default: false;
     182}
     183setting::textdisplay {
     184    type: boolean;
     185    label: tr("Display maxspeed values as text");
     186    default: true;
    151187}
    152188
     
    154190way["tiger:reviewed"=no]::core_tiger
    155191{
    156         opacity: 0;
     192    opacity: 0;
    157193}
    158194
     
    160196way[highway]
    161197{
    162         text: none;
     198    text: none;
    163199}
    164200
     
    166202way["maxspeed:conditional"=~/^(none|[1-9][0-9]*) @ /]::maxspeedlayer
    167203{
    168         maxsp_cond: get(split(" ", tag("maxspeed:conditional")), 0);
    169         set cond_kmh;
     204    maxsp_cond: get(split(" ", tag("maxspeed:conditional")), 0);
     205    set cond_kmh;
    170206}
    171207way["maxspeed:forward:conditional"=~/^(none|[1-9][0-9]*) @ /]::maxspeedcasinglayer
    172208{
    173         maxsp_forward_cond: get(split(" ", tag("maxspeed:forward:conditional")), 0);
    174         set cond_forward_kmh;
     209    maxsp_forward_cond: get(split(" ", tag("maxspeed:forward:conditional")), 0);
     210    set cond_forward_kmh;
    175211}
    176212way["maxspeed:backward:conditional"=~/^(none|[1-9][0-9]*) @ /]::maxspeedcasinglayer
    177213{
    178         maxsp_backward_cond: get(split(" ", tag("maxspeed:backward:conditional")), 0);
    179         set cond_backward_kmh;
     214    maxsp_backward_cond: get(split(" ", tag("maxspeed:backward:conditional")), 0);
     215    set cond_backward_kmh;
    180216}
    181217way["maxspeed:conditional"=~/^[1-9][0-9]* mph @ /]::maxspeedlayer
    182218{
    183         maxsp_cond: get(split(" ", tag("maxspeed:conditional")), 0);
    184         set cond_mph;
     219    maxsp_cond: get(split(" ", tag("maxspeed:conditional")), 0);
     220    set cond_mph;
    185221}
    186222way["maxspeed:forward:conditional"=~/^[1-9][0-9]* mph @ /]::maxspeedcasinglayer
    187223{
    188         maxsp_forward_cond: get(split(" ", tag("maxspeed:forward:conditional")), 0);
    189         set cond_forward_mph;
     224    maxsp_forward_cond: get(split(" ", tag("maxspeed:forward:conditional")), 0);
     225    set cond_forward_mph;
    190226}
    191227way["maxspeed:backward:conditional"=~/^[1-9][0-9]* mph @ /]::maxspeedcasinglayer
    192228{
    193         maxsp_backward_cond: get(split(" ", tag("maxspeed:backward:conditional")), 0);
    194         set cond_backward_mph;
     229    maxsp_backward_cond: get(split(" ", tag("maxspeed:backward:conditional")), 0);
     230    set cond_backward_mph;
    195231}
    196232
     
    205241way["maxspeed"="none"]::maxspeedlayer
    206242{
    207         set maxspeed;
    208         color: speed_none#febede;
     243    set maxspeed;
     244    color: speed_none#febede;
    209245}
    210246way["maxspeed"="5"]::maxspeedlayer
    211247{
    212         set maxspeed;
    213         color: speed_5#ff5656;
     248    set maxspeed;
     249    color: speed_5#ff5656;
    214250}
    215251way["maxspeed"="10"]::maxspeedlayer,
    216252way["maxspeed"="RS:living_street"][setting("implicit")]::maxspeedlayer
    217253{
    218         set maxspeed;
    219         color: speed_10#b80022;
     254    set maxspeed;
     255    color: speed_10#b80022;
    220256}
    221257way["maxspeed"="15"]::maxspeedlayer
    222258{
    223         set maxspeed;
    224         color: speed_15#00da8b;
     259    set maxspeed;
     260    color: speed_15#00da8b;
    225261}
    226262way["maxspeed"="20"]::maxspeedlayer,
     
    228264way["maxspeed"="RU:living_street"][setting("implicit")]::maxspeedlayer
    229265{
    230         set maxspeed;
    231         color: speed_20#e3cc82;
     266    set maxspeed;
     267    color: speed_20#e3cc82;
    232268}
    233269way["maxspeed"="30"]::maxspeedlayer,
    234270way["maxspeed"="FR:zone30"][setting("implicit")]::maxspeedlayer
    235271{
    236         set maxspeed;
    237         color: speed_30#4d4dff;
     272    set maxspeed;
     273    color: speed_30#4d4dff;
    238274}
    239275way["maxspeed"="40"]::maxspeedlayer
    240276{
    241         set maxspeed;
    242         color: speed_40#4d4d00;
     277    set maxspeed;
     278    color: speed_40#4d4d00;
    243279}
    244280way["maxspeed"="45"]::maxspeedlayer
    245281{
    246         set maxspeed;
    247         color: speed_45#fd6eaa;
     282    set maxspeed;
     283    color: speed_45#fd6eaa;
    248284}
    249285way["maxspeed"="50"]::maxspeedlayer,
     
    252288way["maxspeed"="RS:urban"][setting("implicit")]::maxspeedlayer
    253289{
    254         set maxspeed;
    255         color: speed_50#07f807;
     290    set maxspeed;
     291    color: speed_50#07f807;
    256292}
    257293way["maxspeed"="60"]::maxspeedlayer,
     
    259295way["maxspeed"="RU:urban"][setting("implicit")]::maxspeedlayer
    260296{
    261         set maxspeed;
    262         color: speed_60#9f9fff;
     297    set maxspeed;
     298    color: speed_60#9f9fff;
    263299}
    264300way["maxspeed"="70"]::maxspeedlayer
    265301{
    266         set maxspeed;
    267         color: speed_70#ee8b00;
     302    set maxspeed;
     303    color: speed_70#ee8b00;
    268304}
    269305way["maxspeed"="80"]::maxspeedlayer,
     
    271307way["maxspeed"="RS:rural"][setting("implicit")]::maxspeedlayer
    272308{
    273         set maxspeed;
    274         color: speed_80#f90808;
     309    set maxspeed;
     310    color: speed_80#f90808;
    275311}
    276312way["maxspeed"="90"]::maxspeedlayer,
     
    279315way["maxspeed"="RU:rural"][setting("implicit")]::maxspeedlayer
    280316{
    281         set maxspeed;
    282         color: speed_90#07f8f8;
     317    set maxspeed;
     318    color: speed_90#07f8f8;
    283319}
    284320way["maxspeed"="100"]::maxspeedlayer,
     
    286322way["maxspeed"="RS:trunk"][setting("implicit")]::maxspeedlayer
    287323{
    288         set maxspeed;
    289         color: speed_100#f807f8;
     324    set maxspeed;
     325    color: speed_100#f807f8;
    290326}
    291327way["maxspeed"="110"]::maxspeedlayer,
     
    293329way["maxspeed"="RU:motorway"][setting("implicit")]::maxspeedlayer
    294330{
    295         set maxspeed;
    296         color: speed_110#7807f8;
     331    set maxspeed;
     332    color: speed_110#7807f8;
    297333}
    298334way["maxspeed"="120"]::maxspeedlayer
    299335{
    300         set maxspeed;
    301         color: speed_120#b69b20;
     336    set maxspeed;
     337    color: speed_120#b69b20;
    302338}
    303339way["maxspeed"="130"]::maxspeedlayer,
     
    306342way["maxspeed"="RS:motorway"][setting("implicit")]::maxspeedlayer
    307343{
    308         set maxspeed;
    309         color: speed_130#c0f100;
     344    set maxspeed;
     345    color: speed_130#c0f100;
    310346}
    311347way["maxspeed"="140"]::maxspeedlayer
    312348{
    313         set maxspeed;
    314         color: speed_140#438100;
     349    set maxspeed;
     350    color: speed_140#438100;
    315351}
    316352/* 3.2 - mph */
    317353way["maxspeed"="5 mph"]::maxspeedlayer
    318354{
    319         set maxspeed;
    320         color: speed_5_mph#b80022;
     355    set maxspeed;
     356    color: speed_5_mph#b80022;
    321357}
    322358way["maxspeed"="10 mph"]::maxspeedlayer
    323359{
    324         set maxspeed;
    325         color: speed_10_mph#00da8b;
     360    set maxspeed;
     361    color: speed_10_mph#00da8b;
    326362}
    327363way["maxspeed"="15 mph"]::maxspeedlayer
    328364{
    329         set maxspeed;
    330         color: speed_15_mph#e3cc82;
     365    set maxspeed;
     366    color: speed_15_mph#e3cc82;
    331367}
    332368way["maxspeed"="20 mph"]::maxspeedlayer
    333369{
    334         set maxspeed;
    335         color: speed_20_mph#4d4dff;
     370    set maxspeed;
     371    color: speed_20_mph#4d4dff;
    336372}
    337373way["maxspeed"="25 mph"]::maxspeedlayer
    338374{
    339         set maxspeed;
    340         color: speed_25_mph#4d4d00;
     375    set maxspeed;
     376    color: speed_25_mph#4d4d00;
    341377}
    342378way["maxspeed"="30 mph"]::maxspeedlayer
    343379{
    344         set maxspeed;
    345         color: speed_30_mph#fd6eaa;
     380    set maxspeed;
     381    color: speed_30_mph#fd6eaa;
    346382}
    347383way["maxspeed"="35 mph"]::maxspeedlayer
    348384{
    349         set maxspeed;
    350         color: speed_35_mph#07f807;
     385    set maxspeed;
     386    color: speed_35_mph#07f807;
    351387}
    352388way["maxspeed"="40 mph"]::maxspeedlayer
    353389{
    354         set maxspeed;
    355         color: speed_40_mph#9f9fff;
     390    set maxspeed;
     391    color: speed_40_mph#9f9fff;
    356392}
    357393way["maxspeed"="45 mph"]::maxspeedlayer
    358394{
    359         set maxspeed;
    360         color: speed_45_mph#ee8b00;
     395    set maxspeed;
     396    color: speed_45_mph#ee8b00;
    361397}
    362398way["maxspeed"="50 mph"]::maxspeedlayer
    363399{
    364         set maxspeed;
    365         color: speed_50_mph#f90808;
     400    set maxspeed;
     401    color: speed_50_mph#f90808;
    366402}
    367403way["maxspeed"="55 mph"]::maxspeedlayer
    368404{
    369         set maxspeed;
    370         color: speed_55_mph#07f8f8;
     405    set maxspeed;
     406    color: speed_55_mph#07f8f8;
    371407}
    372408way["maxspeed"="60 mph"]::maxspeedlayer
    373409{
    374         set maxspeed;
    375         color: speed_60_mph#f807f8;
     410    set maxspeed;
     411    color: speed_60_mph#f807f8;
    376412}
    377413way["maxspeed"="65 mph"]::maxspeedlayer
    378414{
    379         set maxspeed;
    380         color: speed_65_mph#7807f8;
     415    set maxspeed;
     416    color: speed_65_mph#7807f8;
    381417}
    382418way["maxspeed"="70 mph"]::maxspeedlayer
    383419{
    384         set maxspeed;
    385         color: speed_70_mph#b69b20;
     420    set maxspeed;
     421    color: speed_70_mph#b69b20;
    386422}
    387423way["maxspeed"="75 mph"]::maxspeedlayer
    388424{
    389         set maxspeed;
    390         color: speed_75_mph#c0f100;
     425    set maxspeed;
     426    color: speed_75_mph#c0f100;
    391427}
    392428way["maxspeed"="80 mph"]::maxspeedlayer
    393429{
    394         set maxspeed;
    395         color: speed_80_mph#438100;
     430    set maxspeed;
     431    color: speed_80_mph#438100;
    396432}
    397433way["maxspeed"="85 mph"]::maxspeedlayer
    398434{
    399         set maxspeed;
    400         color: speed_85_mph#725600;
     435    set maxspeed;
     436    color: speed_85_mph#725600;
    401437}
    402438
     
    405441way.cond_mph::maxspeedlayer
    406442{
    407         dashes: 55,25;
     443    dashes: 55,25;
    408444}
    409445/* 3.3.1 - kmh */
    410446way.cond_kmh[prop(maxsp_cond, maxspeedlayer)="none"]::maxspeedlayer
    411447{
    412         dashes-background-color:  speed_none#febede;
     448    dashes-background-color:  speed_none#febede;
    413449}
    414450way.cond_kmh[prop(maxsp_cond, maxspeedlayer)="5"]::maxspeedlayer
    415451{
    416         dashes-background-color:  speed_5#ff5656;
     452    dashes-background-color:  speed_5#ff5656;
    417453}
    418454way.cond_kmh[prop(maxsp_cond, maxspeedlayer)="10"]::maxspeedlayer
    419455{
    420         dashes-background-color:  speed_10#b80022;
     456    dashes-background-color:  speed_10#b80022;
    421457}
    422458way.cond_kmh[prop(maxsp_cond, maxspeedlayer)="15"]::maxspeedlayer
    423459{
    424         dashes-background-color:  speed_15#00da8b;
     460    dashes-background-color:  speed_15#00da8b;
    425461}
    426462way.cond_kmh[prop(maxsp_cond, maxspeedlayer)="20"]::maxspeedlayer
    427463/* A selector for implicit scheme is not needed here because e.g. "maxspeed:conditional=RU:living_street @ (...)" is nonsense, better use the actual maxspeed value in this case. The same is true for the others (rural, urban, motorway, ...).  */
    428464{
    429         dashes-background-color:  speed_20#e3cc82;
     465    dashes-background-color:  speed_20#e3cc82;
    430466}
    431467way.cond_kmh[prop(maxsp_cond, maxspeedlayer)="30"]::maxspeedlayer
    432468{
    433         dashes-background-color:  speed_30#4d4dff;
     469    dashes-background-color:  speed_30#4d4dff;
    434470}
    435471way.cond_kmh[prop(maxsp_cond, maxspeedlayer)="40"]::maxspeedlayer
    436472{
    437         dashes-background-color:  speed_40#4d4d00;
     473    dashes-background-color:  speed_40#4d4d00;
    438474}
    439475way.cond_kmh[prop(maxsp_cond, maxspeedlayer)="45"]::maxspeedlayer
    440476{
    441         dashes-background-color:  speed_45#fd6eaa;
     477    dashes-background-color:  speed_45#fd6eaa;
    442478}
    443479way.cond_kmh[prop(maxsp_cond, maxspeedlayer)="50"]::maxspeedlayer
    444480{
    445         dashes-background-color:  speed_50#07f807;
     481    dashes-background-color:  speed_50#07f807;
    446482}
    447483way.cond_kmh[prop(maxsp_cond, maxspeedlayer)="60"]::maxspeedlayer
    448484{
    449         dashes-background-color:  speed_60#9f9fff;
     485    dashes-background-color:  speed_60#9f9fff;
    450486}
    451487way.cond_kmh[prop(maxsp_cond, maxspeedlayer)="70"]::maxspeedlayer
    452488{
    453         dashes-background-color:  speed_70#ee8b00;
     489    dashes-background-color:  speed_70#ee8b00;
    454490}
    455491way.cond_kmh[prop(maxsp_cond, maxspeedlayer)="80"]::maxspeedlayer
    456492{
    457         dashes-background-color:  speed_80#f90808;
     493    dashes-background-color:  speed_80#f90808;
    458494}
    459495way.cond_kmh[prop(maxsp_cond, maxspeedlayer)="90"]::maxspeedlayer
    460496{
    461         dashes-background-color:  speed_90#07f8f8;
     497    dashes-background-color:  speed_90#07f8f8;
    462498}
    463499way.cond_kmh[prop(maxsp_cond, maxspeedlayer)="100"]::maxspeedlayer
    464500{
    465         dashes-background-color:  speed_100#f807f8;
     501    dashes-background-color:  speed_100#f807f8;
    466502}
    467503way.cond_kmh[prop(maxsp_cond, maxspeedlayer)="110"]::maxspeedlayer
    468504{
    469         dashes-background-color:  speed_110#7807f8;
     505    dashes-background-color:  speed_110#7807f8;
    470506}
    471507way.cond_kmh[prop(maxsp_cond, maxspeedlayer)="120"]::maxspeedlayer
    472508{
    473         dashes-background-color:  speed_120#b69b20;
     509    dashes-background-color:  speed_120#b69b20;
    474510}
    475511way.cond_kmh[prop(maxsp_cond, maxspeedlayer)="130"]::maxspeedlayer
    476512{
    477         dashes-background-color:  speed_130#c0f100;
     513    dashes-background-color:  speed_130#c0f100;
    478514}
    479515way.cond_kmh[prop(maxsp_cond, maxspeedlayer)="140"]::maxspeedlayer
    480516{
    481         dashes-background-color:  speed_140#438100;
     517    dashes-background-color:  speed_140#438100;
    482518}
    483519/* 3.3.2 -  mph */
    484520way.cond_mph[prop(maxsp_cond, maxspeedlayer)="5"]::maxspeedlayer
    485521{
    486         dashes-background-color:  speed_5_mph#b80022;
     522    dashes-background-color:  speed_5_mph#b80022;
    487523}
    488524way.cond_mph[prop(maxsp_cond, maxspeedlayer)="10"]::maxspeedlayer
    489525{
    490         dashes-background-color:  speed_10_mph#00da8b;
     526    dashes-background-color:  speed_10_mph#00da8b;
    491527}
    492528way.cond_mph[prop(maxsp_cond, maxspeedlayer)="15"]::maxspeedlayer
    493529{
    494         dashes-background-color:  speed_15_mph#e3cc82;
     530    dashes-background-color:  speed_15_mph#e3cc82;
    495531}
    496532way.cond_mph[prop(maxsp_cond, maxspeedlayer)="20"]::maxspeedlayer
    497533{
    498         dashes-background-color:  speed_20_mph#4d4dff;
     534    dashes-background-color:  speed_20_mph#4d4dff;
    499535}
    500536way.cond_mph[prop(maxsp_cond, maxspeedlayer)="25"]::maxspeedlayer
    501537{
    502         dashes-background-color:  speed_25_mph#4d4d00;
     538    dashes-background-color:  speed_25_mph#4d4d00;
    503539}
    504540way.cond_mph[prop(maxsp_cond, maxspeedlayer)="30"]::maxspeedlayer
    505541{
    506         dashes-background-color:  speed_30_mph#fd6eaa;
     542    dashes-background-color:  speed_30_mph#fd6eaa;
    507543}
    508544way.cond_mph[prop(maxsp_cond, maxspeedlayer)="35"]::maxspeedlayer
    509545{
    510         dashes-background-color:  speed_35_mph#07f807;
     546    dashes-background-color:  speed_35_mph#07f807;
    511547}
    512548way.cond_mph[prop(maxsp_cond, maxspeedlayer)="40"]::maxspeedlayer
    513549{
    514         dashes-background-color:  speed_40_mph#9f9fff;
     550    dashes-background-color:  speed_40_mph#9f9fff;
    515551}
    516552way.cond_mph[prop(maxsp_cond, maxspeedlayer)="45"]::maxspeedlayer
    517553{
    518         dashes-background-color:  speed_45_mph#ee8b00;
     554    dashes-background-color:  speed_45_mph#ee8b00;
    519555}
    520556way.cond_mph[prop(maxsp_cond, maxspeedlayer)="50"]::maxspeedlayer
    521557{
    522         dashes-background-color:  speed_50_mph#f90808;
     558    dashes-background-color:  speed_50_mph#f90808;
    523559}
    524560way.cond_mph[prop(maxsp_cond, maxspeedlayer)="55"]::maxspeedlayer
    525561{
    526         dashes-background-color:  speed_55_mph#07f8f8;
     562    dashes-background-color:  speed_55_mph#07f8f8;
    527563}
    528564way.cond_mph[prop(maxsp_cond, maxspeedlayer)="60"]::maxspeedlayer
    529565{
    530         dashes-background-color:  speed_60_mph#f807f8;
     566    dashes-background-color:  speed_60_mph#f807f8;
    531567}
    532568way.cond_mph[prop(maxsp_cond, maxspeedlayer)="65"]::maxspeedlayer
    533569{
    534         dashes-background-color:  speed_65_mph#7807f8;
     570    dashes-background-color:  speed_65_mph#7807f8;
    535571}
    536572way.cond_mph[prop(maxsp_cond, maxspeedlayer)="70"]::maxspeedlayer
    537573{
    538         dashes-background-color:  speed_70_mph#b69b20;
     574    dashes-background-color:  speed_70_mph#b69b20;
    539575}
    540576way.cond_mph[prop(maxsp_cond, maxspeedlayer)="75"]::maxspeedlayer
    541577{
    542         dashes-background-color:  speed_75_mph#c0f100;
     578    dashes-background-color:  speed_75_mph#c0f100;
    543579}
    544580way.cond_mph[prop(maxsp_cond, maxspeedlayer)="80"]::maxspeedlayer
    545581{
    546         dashes-background-color:  speed_80_mph#438100;
     582    dashes-background-color:  speed_80_mph#438100;
    547583}
    548584way.cond_mph[prop(maxsp_cond, maxspeedlayer)="85"]::maxspeedlayer
    549585{
    550         dashes-background-color:  speed_85_mph#725600;
     586    dashes-background-color:  speed_85_mph#725600;
    551587}
    552588
     
    554590way.maxspeed::maxspeedlayer
    555591{
    556         width: 14;
    557         z-index: -1;
     592    width: 14;
     593    z-index: -1;
    558594}
    559595way|z16.maxspeed::maxspeedlayer
    560596{
    561         width: 12;
     597    width: 12;
    562598}
    563599way|z-15.maxspeed::maxspeedlayer
    564600{
    565         width:10;
     601    width:10;
    566602}
    567603way.maxspeed[maxspeed:variable]::maxspeedlayer
    568604{
    569         dashes: 34,6;
    570         /* *variable* overrides the dashes scheme of *conditional*, but the colors of conditional stay.
    571         This way you can see conditional and variable together */
     605    dashes: 34,6;
     606    /* *variable* overrides the dashes scheme of *conditional*, but the colors of conditional stay.
     607    This way you can see conditional and variable together */
    572608}
    573609
     
    579615way["maxspeed:backward"="none"]!:righthandtraffic::maxspeedcasinglayer
    580616{
    581         set maxspeed_right;
    582         right-casing-color: speed_none#febede;
     617    set maxspeed_right;
     618    right-casing-color: speed_none#febede;
    583619}
    584620way["maxspeed:forward"="5"]:righthandtraffic::maxspeedcasinglayer,
    585621way["maxspeed:backward"="5"]!:righthandtraffic::maxspeedcasinglayer
    586622{
    587         set maxspeed_right;
    588         right-casing-color: speed_5#ff5656;
     623    set maxspeed_right;
     624    right-casing-color: speed_5#ff5656;
    589625}
    590626way["maxspeed:forward"="10"]:righthandtraffic::maxspeedcasinglayer,
     
    592628way["maxspeed:forward"="RS:living_street"][setting("implicit")]:righthandtraffic::maxspeedcasinglayer
    593629{
    594         set maxspeed_right;
    595         right-casing-color: speed_10#b80022;
     630    set maxspeed_right;
     631    right-casing-color: speed_10#b80022;
    596632}
    597633way["maxspeed:forward"="15"]:righthandtraffic::maxspeedcasinglayer,
    598634way["maxspeed:backward"="15"]!:righthandtraffic::maxspeedcasinglayer
    599635{
    600         set maxspeed_right;
    601         right-casing-color: speed_15#00da8b;
     636    set maxspeed_right;
     637    right-casing-color: speed_15#00da8b;
    602638}
    603639way["maxspeed:forward"="20"]:righthandtraffic::maxspeedcasinglayer,
     
    607643/* no left hand traffic in BY, FR, RO, RU, RS, so a selector is not needed here and the similar rules in chapter 5.1 */
    608644{
    609         set maxspeed_right;
    610         right-casing-color: speed_20#e3cc82;
     645    set maxspeed_right;
     646    right-casing-color: speed_20#e3cc82;
    611647}
    612648way["maxspeed:forward"="30"]:righthandtraffic::maxspeedcasinglayer,
     
    614650way["maxspeed:forward"="FR:zone30"][setting("implicit")]:righthandtraffic::maxspeedcasinglayer
    615651{
    616         set maxspeed_right;
    617         right-casing-color: speed_30#4d4dff;
     652    set maxspeed_right;
     653    right-casing-color: speed_30#4d4dff;
    618654}
    619655way["maxspeed:forward"="40"]:righthandtraffic::maxspeedcasinglayer,
    620656way["maxspeed:backward"="40"]!:righthandtraffic::maxspeedcasinglayer
    621657{
    622         set maxspeed_right;
    623         right-casing-color: speed_40#4d4d00;
     658    set maxspeed_right;
     659    right-casing-color: speed_40#4d4d00;
    624660}
    625661way["maxspeed:forward"="45"]:righthandtraffic::maxspeedcasinglayer,
    626662way["maxspeed:backward"="45"]!:righthandtraffic::maxspeedcasinglayer
    627663{
    628         set maxspeed_right;
    629         right-casing-color: speed_45#fd6eaa;
     664    set maxspeed_right;
     665    right-casing-color: speed_45#fd6eaa;
    630666}
    631667way["maxspeed:forward"="50"]:righthandtraffic::maxspeedcasinglayer,
     
    635671way["maxspeed:forward"="RS:urban"][setting("implicit")]:righthandtraffic::maxspeedcasinglayer
    636672{
    637         set maxspeed_right;
    638         right-casing-color: speed_50#07f807;
     673    set maxspeed_right;
     674    right-casing-color: speed_50#07f807;
    639675}
    640676way["maxspeed:forward"="60"]:righthandtraffic::maxspeedcasinglayer,
     
    643679way["maxspeed:forward"="RU:urban"][setting("implicit")]:righthandtraffic::maxspeedcasinglayer
    644680{
    645         set maxspeed_right;
    646         right-casing-color: speed_60#9f9fff;
     681    set maxspeed_right;
     682    right-casing-color: speed_60#9f9fff;
    647683}
    648684way["maxspeed:forward"="70"]:righthandtraffic::maxspeedcasinglayer,
    649685way["maxspeed:backward"="70"]!:righthandtraffic::maxspeedcasinglayer
    650686{
    651         set maxspeed_right;
    652         right-casing-color: speed_70#ee8b00;
     687    set maxspeed_right;
     688    right-casing-color: speed_70#ee8b00;
    653689}
    654690way["maxspeed:forward"="80"]:righthandtraffic::maxspeedcasinglayer,
     
    657693way["maxspeed:forward"="RS:rural"][setting("implicit")]:righthandtraffic::maxspeedcasinglayer
    658694{
    659         set maxspeed_right;
    660         right-casing-color: speed_80#f90808;
     695    set maxspeed_right;
     696    right-casing-color: speed_80#f90808;
    661697}
    662698way["maxspeed:forward"="90"]:righthandtraffic::maxspeedcasinglayer,
     
    666702way["maxspeed:forward"="RU:rural"][setting("implicit")]:righthandtraffic::maxspeedcasinglayer
    667703{
    668         set maxspeed_right;
    669         right-casing-color: speed_90#07f8f8;
     704    set maxspeed_right;
     705    right-casing-color: speed_90#07f8f8;
    670706}
    671707way["maxspeed:forward"="100"]:righthandtraffic::maxspeedcasinglayer,
     
    674710way["maxspeed:forward"="RS:trunk"][setting("implicit")]:righthandtraffic::maxspeedcasinglayer
    675711{
    676         set maxspeed_right;
    677         right-casing-color: speed_100#f807f8;
     712    set maxspeed_right;
     713    right-casing-color: speed_100#f807f8;
    678714}
    679715way["maxspeed:forward"="110"]:righthandtraffic::maxspeedcasinglayer,
     
    682718way["maxspeed:forward"="RU:motorway"][setting("implicit")]:righthandtraffic::maxspeedcasinglayer
    683719{
    684         set maxspeed_right;
    685         right-casing-color: speed_110#7807f8;
     720    set maxspeed_right;
     721    right-casing-color: speed_110#7807f8;
    686722}
    687723way["maxspeed:forward"="120"]:righthandtraffic::maxspeedcasinglayer,
    688724way["maxspeed:backward"="120"]!:righthandtraffic::maxspeedcasinglayer
    689725{
    690         set maxspeed_right;
    691         right-casing-color: speed_120#b69b20;
     726    set maxspeed_right;
     727    right-casing-color: speed_120#b69b20;
    692728}
    693729way["maxspeed:forward"="130"]:righthandtraffic::maxspeedcasinglayer,
     
    697733way["maxspeed:forward"="RS:motorway"][setting("implicit")]:righthandtraffic::maxspeedcasinglayer
    698734{
    699         set maxspeed_right;
    700         right-casing-color: speed_130#c0f100;
     735    set maxspeed_right;
     736    right-casing-color: speed_130#c0f100;
    701737}
    702738way["maxspeed:forward"="140"]:righthandtraffic::maxspeedcasinglayer,
    703739way["maxspeed:backward"="140"]!:righthandtraffic::maxspeedcasinglayer
    704740{
    705         set maxspeed_right;
    706         right-casing-color: speed_140#438100;
     741    set maxspeed_right;
     742    right-casing-color: speed_140#438100;
    707743}
    708744/* 4.2 - mph */
     
    710746way["maxspeed:backward"="5 mph"]!:righthandtraffic::maxspeedcasinglayer
    711747{
    712         set maxspeed_right;
    713         right-casing-color: speed_5_mph#b80022;
     748    set maxspeed_right;
     749    right-casing-color: speed_5_mph#b80022;
    714750}
    715751way["maxspeed:forward"="10 mph"]:righthandtraffic::maxspeedcasinglayer,
    716752way["maxspeed:backward"="10 mph"]!:righthandtraffic::maxspeedcasinglayer
    717753{
    718         set maxspeed_right;
    719         right-casing-color: speed_10_mph#00da8b;
     754    set maxspeed_right;
     755    right-casing-color: speed_10_mph#00da8b;
    720756}
    721757way["maxspeed:forward"="15 mph"]:righthandtraffic::maxspeedcasinglayer,
    722758way["maxspeed:backward"="15 mph"]!:righthandtraffic::maxspeedcasinglayer
    723759{
    724         set maxspeed_right;
    725         right-casing-color: speed_15_mph#e3cc82;
     760    set maxspeed_right;
     761    right-casing-color: speed_15_mph#e3cc82;
    726762}
    727763way["maxspeed:forward"="20 mph"]:righthandtraffic::maxspeedcasinglayer,
    728764way["maxspeed:backward"="20 mph"]!:righthandtraffic::maxspeedcasinglayer
    729765{
    730         set maxspeed_right;
    731         right-casing-color: speed_20_mph#4d4dff;
     766    set maxspeed_right;
     767    right-casing-color: speed_20_mph#4d4dff;
    732768}
    733769way["maxspeed:forward"="25 mph"]:righthandtraffic::maxspeedcasinglayer,
    734770way["maxspeed:backward"="25 mph"]!:righthandtraffic::maxspeedcasinglayer
    735771{
    736         set maxspeed_right;
    737         right-casing-color: speed_25_mph#4d4d00;
     772    set maxspeed_right;
     773    right-casing-color: speed_25_mph#4d4d00;
    738774}
    739775way["maxspeed:forward"="30 mph"]:righthandtraffic::maxspeedcasinglayer,
    740776way["maxspeed:backward"="30 mph"]!:righthandtraffic::maxspeedcasinglayer
    741777{
    742         set maxspeed_right;
    743         right-casing-color: speed_30_mph#fd6eaa;
     778    set maxspeed_right;
     779    right-casing-color: speed_30_mph#fd6eaa;
    744780}
    745781way["maxspeed:forward"="35 mph"]:righthandtraffic::maxspeedcasinglayer,
    746782way["maxspeed:backward"="35 mph"]!:righthandtraffic::maxspeedcasinglayer
    747783{
    748         set maxspeed_right;
    749         right-casing-color: speed_35_mph#07f807;
     784    set maxspeed_right;
     785    right-casing-color: speed_35_mph#07f807;
    750786}
    751787way["maxspeed:forward"="40 mph"]:righthandtraffic::maxspeedcasinglayer,
    752788way["maxspeed:backward"="40 mph"]!:righthandtraffic::maxspeedcasinglayer
    753789{
    754         set maxspeed_right;
    755         right-casing-color: speed_40_mph#9f9fff;
     790    set maxspeed_right;
     791    right-casing-color: speed_40_mph#9f9fff;
    756792}
    757793way["maxspeed:forward"="45 mph"]:righthandtraffic::maxspeedcasinglayer,
    758794way["maxspeed:backward"="45 mph"]!:righthandtraffic::maxspeedcasinglayer
    759795{
    760         set maxspeed_right;
    761         right-casing-color: speed_45_mph#ee8b00;
     796    set maxspeed_right;
     797    right-casing-color: speed_45_mph#ee8b00;
    762798}
    763799way["maxspeed:forward"="50 mph"]:righthandtraffic::maxspeedcasinglayer,
    764800way["maxspeed:backward"="50 mph"]!:righthandtraffic::maxspeedcasinglayer
    765801{
    766         set maxspeed_right;
    767         right-casing-color: speed_50_mph#f90808;
     802    set maxspeed_right;
     803    right-casing-color: speed_50_mph#f90808;
    768804}
    769805way["maxspeed:forward"="55 mph"]:righthandtraffic::maxspeedcasinglayer,
    770806way["maxspeed:backward"="55 mph"]!:righthandtraffic::maxspeedcasinglayer
    771807{
    772         set maxspeed_right;
    773         right-casing-color: speed_55_mph#07f8f8;
     808    set maxspeed_right;
     809    right-casing-color: speed_55_mph#07f8f8;
    774810}
    775811way["maxspeed:forward"="60 mph"]:righthandtraffic::maxspeedcasinglayer,
    776812way["maxspeed:backward"="60 mph"]!:righthandtraffic::maxspeedcasinglayer
    777813{
    778         set maxspeed_right;
    779         right-casing-color: speed_60_mph#f807f8;
     814    set maxspeed_right;
     815    right-casing-color: speed_60_mph#f807f8;
    780816}
    781817way["maxspeed:forward"="65 mph"]:righthandtraffic::maxspeedcasinglayer,
    782818way["maxspeed:backward"="65 mph"]!:righthandtraffic::maxspeedcasinglayer
    783819{
    784         set maxspeed_right;
    785         right-casing-color: speed_65_mph#7807f8;
     820    set maxspeed_right;
     821    right-casing-color: speed_65_mph#7807f8;
    786822}
    787823way["maxspeed:forward"="70 mph"]:righthandtraffic::maxspeedcasinglayer,
    788824way["maxspeed:backward"="70 mph"]!:righthandtraffic::maxspeedcasinglayer
    789825{
    790         set maxspeed_right;
    791         right-casing-color: speed_70_mph#b69b20;
     826    set maxspeed_right;
     827    right-casing-color: speed_70_mph#b69b20;
    792828}
    793829way["maxspeed:forward"="75 mph"]:righthandtraffic::maxspeedcasinglayer,
    794830way["maxspeed:backward"="75 mph"]!:righthandtraffic::maxspeedcasinglayer
    795831{
    796         set maxspeed_right;
    797         right-casing-color: speed_75_mph#c0f100;
     832    set maxspeed_right;
     833    right-casing-color: speed_75_mph#c0f100;
    798834}
    799835way["maxspeed:forward"="80 mph"]:righthandtraffic::maxspeedcasinglayer,
    800836way["maxspeed:backward"="80 mph"]!:righthandtraffic::maxspeedcasinglayer
    801837{
    802         set maxspeed_right;
    803         right-casing-color: speed_80_mph#438100;
     838    set maxspeed_right;
     839    right-casing-color: speed_80_mph#438100;
    804840}
    805841way["maxspeed:forward"="85 mph"]:righthandtraffic::maxspeedcasinglayer,
    806842way["maxspeed:backward"="85 mph"]!:righthandtraffic::maxspeedcasinglayer
    807843{
    808         set maxspeed_right;
    809         right-casing-color: speed_85_mph#725600;
     844    set maxspeed_right;
     845    right-casing-color: speed_85_mph#725600;
    810846}
    811847
     
    816852way.cond_backward_mph!:righthandtraffic::maxspeedcasinglayer
    817853{
    818         set maxspeed_right_cond;
    819         right-casing-dashes: 55,25;
     854    set maxspeed_right_cond;
     855    right-casing-dashes: 55,25;
    820856}
    821857/* 4.3.1 - kmh */
     
    823859way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="none"]!:righthandtraffic::maxspeedcasinglayer
    824860{
    825         right-casing-dashes-background-color: speed_none#febede;
     861    right-casing-dashes-background-color: speed_none#febede;
    826862}
    827863way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="5"]:righthandtraffic::maxspeedcasinglayer,
    828864way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="5"]!:righthandtraffic::maxspeedcasinglayer
    829865{
    830         right-casing-dashes-background-color: speed_5#ff5656;
     866    right-casing-dashes-background-color: speed_5#ff5656;
    831867}
    832868way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="10"]:righthandtraffic::maxspeedcasinglayer,
    833869way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="10"]!:righthandtraffic::maxspeedcasinglayer
    834870{
    835         right-casing-dashes-background-color: speed_10#b80022;
     871    right-casing-dashes-background-color: speed_10#b80022;
    836872}
    837873way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="15"]:righthandtraffic::maxspeedcasinglayer,
    838874way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="15"]!:righthandtraffic::maxspeedcasinglayer
    839875{
    840         right-casing-dashes-background-color: speed_15#00da8b;
     876    right-casing-dashes-background-color: speed_15#00da8b;
    841877}
    842878way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="20"]:righthandtraffic::maxspeedcasinglayer,
    843879way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="20"]!:righthandtraffic::maxspeedcasinglayer
    844880{
    845         right-casing-dashes-background-color: speed_20#e3cc82;
     881    right-casing-dashes-background-color: speed_20#e3cc82;
    846882}
    847883way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="30"]:righthandtraffic::maxspeedcasinglayer,
    848884way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="30"]!:righthandtraffic::maxspeedcasinglayer
    849885{
    850         right-casing-dashes-background-color: speed_30#4d4dff;
     886    right-casing-dashes-background-color: speed_30#4d4dff;
    851887}
    852888way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="40"]:righthandtraffic::maxspeedcasinglayer,
    853889way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="40"]!:righthandtraffic::maxspeedcasinglayer
    854890{
    855         right-casing-dashes-background-color: speed_40#4d4d00;
     891    right-casing-dashes-background-color: speed_40#4d4d00;
    856892}
    857893way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="45"]:righthandtraffic::maxspeedcasinglayer,
    858894way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="45"]!:righthandtraffic::maxspeedcasinglayer
    859895{
    860         right-casing-dashes-background-color: speed_45#fd6eaa;
     896    right-casing-dashes-background-color: speed_45#fd6eaa;
    861897}
    862898way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="50"]:righthandtraffic::maxspeedcasinglayer,
    863899way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="50"]!:righthandtraffic::maxspeedcasinglayer
    864900{
    865         right-casing-dashes-background-color: speed_50#07f807;
     901    right-casing-dashes-background-color: speed_50#07f807;
    866902}
    867903way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="60"]:righthandtraffic::maxspeedcasinglayer,
    868904way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="60"]!:righthandtraffic::maxspeedcasinglayer
    869905{
    870         right-casing-dashes-background-color: speed_60#9f9fff;
     906    right-casing-dashes-background-color: speed_60#9f9fff;
    871907}
    872908way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="70"]:righthandtraffic::maxspeedcasinglayer,
    873909way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="70"]!:righthandtraffic::maxspeedcasinglayer
    874910{
    875         right-casing-dashes-background-color: speed_70#ee8b00;
     911    right-casing-dashes-background-color: speed_70#ee8b00;
    876912}
    877913way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="80"]:righthandtraffic::maxspeedcasinglayer,
    878914way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="80"]!:righthandtraffic::maxspeedcasinglayer
    879915{
    880         right-casing-dashes-background-color: speed_80#f90808;
     916    right-casing-dashes-background-color: speed_80#f90808;
    881917}
    882918way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="90"]:righthandtraffic::maxspeedcasinglayer,
    883919way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="90"]!:righthandtraffic::maxspeedcasinglayer
    884920{
    885         right-casing-dashes-background-color: speed_90#07f8f8;
     921    right-casing-dashes-background-color: speed_90#07f8f8;
    886922}
    887923way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="100"]:righthandtraffic::maxspeedcasinglayer,
    888924way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="100"]!:righthandtraffic::maxspeedcasinglayer
    889925{
    890         right-casing-dashes-background-color: speed_100#f807f8;
     926    right-casing-dashes-background-color: speed_100#f807f8;
    891927}
    892928way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="110"]:righthandtraffic::maxspeedcasinglayer,
    893929way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="110"]!:righthandtraffic::maxspeedcasinglayer
    894930{
    895         right-casing-dashes-background-color: speed_110#7807f8;
     931    right-casing-dashes-background-color: speed_110#7807f8;
    896932}
    897933way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="120"]:righthandtraffic::maxspeedcasinglayer,
    898934way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="120"]!:righthandtraffic::maxspeedcasinglayer
    899935{
    900         right-casing-dashes-background-color: speed_120#b69b20;
     936    right-casing-dashes-background-color: speed_120#b69b20;
    901937}
    902938way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="130"]:righthandtraffic::maxspeedcasinglayer,
    903939way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="130"]!:righthandtraffic::maxspeedcasinglayer
    904940{
    905         right-casing-dashes-background-color: speed_130#c0f100;
     941    right-casing-dashes-background-color: speed_130#c0f100;
    906942}
    907943way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="140"]:righthandtraffic::maxspeedcasinglayer,
    908944way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="140"]!:righthandtraffic::maxspeedcasinglayer
    909945{
    910         right-casing-dashes-background-color: speed_140#438100;
     946    right-casing-dashes-background-color: speed_140#438100;
    911947}
    912948/* 4.3.2 - mph */
     
    914950way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="5"]!:righthandtraffic::maxspeedcasinglayer
    915951{
    916         right-casing-dashes-background-color: speed_5_mph#b80022;
     952    right-casing-dashes-background-color: speed_5_mph#b80022;
    917953}
    918954way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="10"]:righthandtraffic::maxspeedcasinglayer,
    919955way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="10"]!:righthandtraffic::maxspeedcasinglayer
    920956{
    921         right-casing-dashes-background-color: speed_10_mph#00da8b;
     957    right-casing-dashes-background-color: speed_10_mph#00da8b;
    922958}
    923959way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="15"]:righthandtraffic::maxspeedcasinglayer,
    924960way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="15"]!:righthandtraffic::maxspeedcasinglayer
    925961{
    926         right-casing-dashes-background-color: speed_15_mph#e3cc82;
     962    right-casing-dashes-background-color: speed_15_mph#e3cc82;
    927963}
    928964way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="20"]:righthandtraffic::maxspeedcasinglayer,
    929965way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="20"]!:righthandtraffic::maxspeedcasinglayer
    930966{
    931         right-casing-dashes-background-color: speed_20_mph#4d4dff;
     967    right-casing-dashes-background-color: speed_20_mph#4d4dff;
    932968}
    933969way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="25"]:righthandtraffic::maxspeedcasinglayer,
    934970way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="25"]!:righthandtraffic::maxspeedcasinglayer
    935971{
    936         right-casing-dashes-background-color: speed_25_mph#4d4d00;
     972    right-casing-dashes-background-color: speed_25_mph#4d4d00;
    937973}
    938974way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="30"]:righthandtraffic::maxspeedcasinglayer,
    939975way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="30"]!:righthandtraffic::maxspeedcasinglayer
    940976{
    941         right-casing-dashes-background-color: speed_30_mph#fd6eaa;
     977    right-casing-dashes-background-color: speed_30_mph#fd6eaa;
    942978}
    943979way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="35"]:righthandtraffic::maxspeedcasinglayer,
    944980way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="35"]!:righthandtraffic::maxspeedcasinglayer
    945981{
    946         right-casing-dashes-background-color: speed_35_mph#07f807;
     982    right-casing-dashes-background-color: speed_35_mph#07f807;
    947983}
    948984way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="40"]:righthandtraffic::maxspeedcasinglayer,
    949985way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="40"]!:righthandtraffic::maxspeedcasinglayer
    950986{
    951         right-casing-dashes-background-color: speed_40_mph#9f9fff;
     987    right-casing-dashes-background-color: speed_40_mph#9f9fff;
    952988}
    953989way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="45"]:righthandtraffic::maxspeedcasinglayer,
    954990way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="45"]!:righthandtraffic::maxspeedcasinglayer
    955991{
    956         right-casing-dashes-background-color: speed_45_mph#ee8b00;
     992    right-casing-dashes-background-color: speed_45_mph#ee8b00;
    957993}
    958994way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="50"]:righthandtraffic::maxspeedcasinglayer,
    959995way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="50"]!:righthandtraffic::maxspeedcasinglayer
    960996{
    961         right-casing-dashes-background-color: speed_50_mph#f90808;
     997    right-casing-dashes-background-color: speed_50_mph#f90808;
    962998}
    963999way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="55"]:righthandtraffic::maxspeedcasinglayer,
    9641000way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="55"]!:righthandtraffic::maxspeedcasinglayer
    9651001{
    966         right-casing-dashes-background-color: speed_55_mph#07f8f8;
     1002    right-casing-dashes-background-color: speed_55_mph#07f8f8;
    9671003}
    9681004way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="60"]:righthandtraffic::maxspeedcasinglayer,
    9691005way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="60"]!:righthandtraffic::maxspeedcasinglayer
    9701006{
    971         right-casing-dashes-background-color: speed_60_mph#f807f8;
     1007    right-casing-dashes-background-color: speed_60_mph#f807f8;
    9721008}
    9731009way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="65"]:righthandtraffic::maxspeedcasinglayer,
    9741010way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="65"]!:righthandtraffic::maxspeedcasinglayer
    9751011{
    976         right-casing-dashes-background-color: speed_65_mph#7807f8;
     1012    right-casing-dashes-background-color: speed_65_mph#7807f8;
    9771013}
    9781014way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="70"]:righthandtraffic::maxspeedcasinglayer,
    9791015way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="70"]!:righthandtraffic::maxspeedcasinglayer
    9801016{
    981         right-casing-dashes-background-color: speed_70_mph#b69b20;
     1017    right-casing-dashes-background-color: speed_70_mph#b69b20;
    9821018}
    9831019way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="75"]:righthandtraffic::maxspeedcasinglayer,
    9841020way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="75"]!:righthandtraffic::maxspeedcasinglayer
    9851021{
    986         right-casing-dashes-background-color: speed_75_mph#c0f100;
     1022    right-casing-dashes-background-color: speed_75_mph#c0f100;
    9871023}
    9881024way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="80"]:righthandtraffic::maxspeedcasinglayer,
    9891025way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="80"]!:righthandtraffic::maxspeedcasinglayer
    9901026{
    991         right-casing-dashes-background-color: speed_80_mph#438100;
     1027    right-casing-dashes-background-color: speed_80_mph#438100;
    9921028}
    9931029way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="85"]:righthandtraffic::maxspeedcasinglayer,
    9941030way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="85"]!:righthandtraffic::maxspeedcasinglayer
    9951031{
    996         right-casing-dashes-background-color: speed_85_mph#725600;
     1032    right-casing-dashes-background-color: speed_85_mph#725600;
    9971033}
    9981034
     
    10011037way.maxspeed_right_cond::maxspeedcasinglayer
    10021038{
    1003         right-casing-width: 6;
    1004         right-casing-offset: 0;
    1005         major-z-index: 3;
    1006         z-index: -1;
     1039    right-casing-width: 6;
     1040    right-casing-offset: 0;
     1041    major-z-index: 3;
     1042    z-index: -1;
    10071043}
    10081044way|z16.maxspeed_right::maxspeedcasinglayer,
    10091045way|z16.maxspeed_right_cond::maxspeedcasinglayer
    10101046{
    1011         right-casing-width: 5;
     1047    right-casing-width: 5;
    10121048}
    10131049way|z-15.maxspeed_right::maxspeedcasinglayer,
    10141050way|z-15.maxspeed_right_cond::maxspeedcasinglayer
    10151051{
    1016         right-casing-width: 4;
     1052    right-casing-width: 4;
    10171053}
    10181054way.maxspeed_right_cond!.maxspeed_right::maxspeedcasinglayer
    10191055{
    1020         right-casing-opacity: 0;
    1021         right-casing-dashes-background-opacity: 1;
     1056    right-casing-opacity: 0;
     1057    right-casing-dashes-background-opacity: 1;
    10221058}
    10231059way.maxspeed_right[maxspeed:variable:forward]:righthandtraffic::maxspeedcasinglayer,
     
    10261062way.maxspeed_right_cond[maxspeed:variable:backward]!:righthandtraffic::maxspeedcasinglayer
    10271063{
    1028         right-casing-dashes: 34,6;
     1064    right-casing-dashes: 34,6;
    10291065}
    10301066
     
    10361072way["maxspeed:backward"="none"]:righthandtraffic::maxspeedcasinglayer
    10371073{
    1038         set maxspeed_left;
    1039         left-casing-color: speed_none#febede;
     1074    set maxspeed_left;
     1075    left-casing-color: speed_none#febede;
    10401076}
    10411077way["maxspeed:forward"="5"]!:righthandtraffic::maxspeedcasinglayer,
    10421078way["maxspeed:backward"="5"]:righthandtraffic::maxspeedcasinglayer
    10431079{
    1044         set maxspeed_left;
    1045         left-casing-color: speed_5#ff5656;
     1080    set maxspeed_left;
     1081    left-casing-color: speed_5#ff5656;
    10461082}
    10471083way["maxspeed:forward"="10"]!:righthandtraffic::maxspeedcasinglayer,
     
    10491085way["maxspeed:backward"="RS:living_street"][setting("implicit")]:righthandtraffic::maxspeedcasinglayer
    10501086{
    1051         set maxspeed_left;
    1052         left-casing-color: speed_10#b80022;
     1087    set maxspeed_left;
     1088    left-casing-color: speed_10#b80022;
    10531089}
    10541090way["maxspeed:forward"="15"]!:righthandtraffic::maxspeedcasinglayer,
    10551091way["maxspeed:backward"="15"]:righthandtraffic::maxspeedcasinglayer
    10561092{
    1057         set maxspeed_left;
    1058         left-casing-color: speed_15#00da8b;
     1093    set maxspeed_left;
     1094    left-casing-color: speed_15#00da8b;
    10591095}
    10601096way["maxspeed:forward"="20"]!:righthandtraffic::maxspeedcasinglayer,
     
    10631099way["maxspeed:backward"="RU:living_street"][setting("implicit")]:righthandtraffic::maxspeedcasinglayer
    10641100{
    1065         set maxspeed_left;
    1066         left-casing-color: speed_20#e3cc82;
     1101    set maxspeed_left;
     1102    left-casing-color: speed_20#e3cc82;
    10671103}
    10681104way["maxspeed:forward"="30"]!:righthandtraffic::maxspeedcasinglayer,
     
    10701106way["maxspeed:backward"="FR:zone30"][setting("implicit")]:righthandtraffic::maxspeedcasinglayer
    10711107{
    1072         set maxspeed_left;
    1073         left-casing-color: speed_30#4d4dff;
     1108    set maxspeed_left;
     1109    left-casing-color: speed_30#4d4dff;
    10741110}
    10751111way["maxspeed:forward"="40"]!:righthandtraffic::maxspeedcasinglayer,
    10761112way["maxspeed:backward"="40"]:righthandtraffic::maxspeedcasinglayer
    10771113{
    1078         set maxspeed_left;
    1079         left-casing-color: speed_40#4d4d00;
     1114    set maxspeed_left;
     1115    left-casing-color: speed_40#4d4d00;
    10801116}
    10811117way["maxspeed:forward"="45"]!:righthandtraffic::maxspeedcasinglayer,
    10821118way["maxspeed:backward"="45"]:righthandtraffic::maxspeedcasinglayer
    10831119{
    1084         set maxspeed_left;
    1085         left-casing-color: speed_45#fd6eaa;
     1120    set maxspeed_left;
     1121    left-casing-color: speed_45#fd6eaa;
    10861122}
    10871123way["maxspeed:forward"="50"]!:righthandtraffic::maxspeedcasinglayer,
     
    10911127way["maxspeed:backward"="RS:urban"][setting("implicit")]:righthandtraffic::maxspeedcasinglayer
    10921128{
    1093         set maxspeed_left;
    1094         left-casing-color: speed_50#07f807;
     1129    set maxspeed_left;
     1130    left-casing-color: speed_50#07f807;
    10951131}
    10961132way["maxspeed:forward"="60"]!:righthandtraffic::maxspeedcasinglayer,
     
    10991135way["maxspeed:backward"="RU:urban"][setting("implicit")]:righthandtraffic::maxspeedcasinglayer
    11001136{
    1101         set maxspeed_left;
    1102         left-casing-color: speed_60#9f9fff;
     1137    set maxspeed_left;
     1138    left-casing-color: speed_60#9f9fff;
    11031139}
    11041140way["maxspeed:forward"="70"]!:righthandtraffic::maxspeedcasinglayer,
    11051141way["maxspeed:backward"="70"]:righthandtraffic::maxspeedcasinglayer
    11061142{
    1107         set maxspeed_left;
    1108         left-casing-color: speed_70#ee8b00;
     1143    set maxspeed_left;
     1144    left-casing-color: speed_70#ee8b00;
    11091145}
    11101146way["maxspeed:forward"="80"]!:righthandtraffic::maxspeedcasinglayer,
     
    11131149way["maxspeed:backward"="RS:rural"][setting("implicit")]:righthandtraffic::maxspeedcasinglayer
    11141150{
    1115         set maxspeed_left;
    1116         left-casing-color: speed_80#f90808;
     1151    set maxspeed_left;
     1152    left-casing-color: speed_80#f90808;
    11171153}
    11181154way["maxspeed:forward"="90"]!:righthandtraffic::maxspeedcasinglayer,
     
    11221158way["maxspeed:backward"="RU:rural"][setting("implicit")]:righthandtraffic::maxspeedcasinglayer
    11231159{
    1124         set maxspeed_left;
    1125         left-casing-color: speed_90#07f8f8;
     1160    set maxspeed_left;
     1161    left-casing-color: speed_90#07f8f8;
    11261162}
    11271163way["maxspeed:forward"="100"]!:righthandtraffic::maxspeedcasinglayer,
     
    11301166way["maxspeed:backward"="RS:trunk"][setting("implicit")]:righthandtraffic::maxspeedcasinglayer
    11311167{
    1132         set maxspeed_left;
    1133         left-casing-color: speed_100#f807f8;
     1168    set maxspeed_left;
     1169    left-casing-color: speed_100#f807f8;
    11341170}
    11351171way["maxspeed:forward"="110"]!:righthandtraffic::maxspeedcasinglayer,
     
    11381174way["maxspeed:backward"="RU:motorway"][setting("implicit")]:righthandtraffic::maxspeedcasinglayer
    11391175{
    1140         set maxspeed_left;
    1141         left-casing-color: speed_110#7807f8;
     1176    set maxspeed_left;
     1177    left-casing-color: speed_110#7807f8;
    11421178}
    11431179way["maxspeed:forward"="120"]!:righthandtraffic::maxspeedcasinglayer,
    11441180way["maxspeed:backward"="120"]:righthandtraffic::maxspeedcasinglayer
    11451181{
    1146         set maxspeed_left;
    1147         left-casing-color: speed_120#b69b20;
     1182    set maxspeed_left;
     1183    left-casing-color: speed_120#b69b20;
    11481184}
    11491185way["maxspeed:forward"="130"]!:righthandtraffic::maxspeedcasinglayer,
     
    11531189way["maxspeed:backward"="RS:motorway"][setting("implicit")]:righthandtraffic::maxspeedcasinglayer
    11541190{
    1155         set maxspeed_left;
    1156         left-casing-color: speed_130#c0f100;
     1191    set maxspeed_left;
     1192    left-casing-color: speed_130#c0f100;
    11571193}
    11581194way["maxspeed:forward"="140"]!:righthandtraffic::maxspeedcasinglayer,
    11591195way["maxspeed:backward"="140"]:righthandtraffic::maxspeedcasinglayer
    11601196{
    1161         set maxspeed_left;
    1162         left-casing-color: speed_140#438100;
     1197    set maxspeed_left;
     1198    left-casing-color: speed_140#438100;
    11631199}
    11641200/* 5.2 - mph */
     
    11661202way["maxspeed:backward"="5 mph"]:righthandtraffic::maxspeedcasinglayer
    11671203{
    1168         set maxspeed_left;
    1169         left-casing-color: speed_5_mph#b80022;
     1204    set maxspeed_left;
     1205    left-casing-color: speed_5_mph#b80022;
    11701206}
    11711207way["maxspeed:forward"="10 mph"]!:righthandtraffic::maxspeedcasinglayer,
    11721208way["maxspeed:backward"="10 mph"]:righthandtraffic::maxspeedcasinglayer
    11731209{
    1174         set maxspeed_left;
    1175         left-casing-color: speed_10_mph#00da8b;
     1210    set maxspeed_left;
     1211    left-casing-color: speed_10_mph#00da8b;
    11761212}
    11771213way["maxspeed:forward"="15 mph"]!:righthandtraffic::maxspeedcasinglayer,
    11781214way["maxspeed:backward"="15 mph"]:righthandtraffic::maxspeedcasinglayer
    11791215{
    1180         set maxspeed_left;
    1181         left-casing-color: speed_15_mph#e3cc82;
     1216    set maxspeed_left;
     1217    left-casing-color: speed_15_mph#e3cc82;
    11821218}
    11831219way["maxspeed:forward"="20 mph"]!:righthandtraffic::maxspeedcasinglayer,
    11841220way["maxspeed:backward"="20 mph"]:righthandtraffic::maxspeedcasinglayer
    11851221{
    1186         set maxspeed_left;
    1187         left-casing-color: speed_20_mph#4d4dff;
     1222    set maxspeed_left;
     1223    left-casing-color: speed_20_mph#4d4dff;
    11881224}
    11891225way["maxspeed:forward"="25 mph"]!:righthandtraffic::maxspeedcasinglayer,
    11901226way["maxspeed:backward"="25 mph"]:righthandtraffic::maxspeedcasinglayer
    11911227{
    1192         set maxspeed_left;
    1193         left-casing-color: speed_25_mph#4d4d00;
     1228    set maxspeed_left;
     1229    left-casing-color: speed_25_mph#4d4d00;
    11941230}
    11951231way["maxspeed:forward"="30 mph"]!:righthandtraffic::maxspeedcasinglayer,
    11961232way["maxspeed:backward"="30 mph"]:righthandtraffic::maxspeedcasinglayer
    11971233{
    1198         set maxspeed_left;
    1199         left-casing-color: speed_30_mph#fd6eaa;
     1234    set maxspeed_left;
     1235    left-casing-color: speed_30_mph#fd6eaa;
    12001236}
    12011237way["maxspeed:forward"="35 mph"]!:righthandtraffic::maxspeedcasinglayer,
    12021238way["maxspeed:backward"="35 mph"]:righthandtraffic::maxspeedcasinglayer
    12031239{
    1204         set maxspeed_left;
    1205         left-casing-color: speed_35_mph#07f807;
     1240    set maxspeed_left;
     1241    left-casing-color: speed_35_mph#07f807;
    12061242}
    12071243way["maxspeed:forward"="40 mph"]!:righthandtraffic::maxspeedcasinglayer,
    12081244way["maxspeed:backward"="40 mph"]:righthandtraffic::maxspeedcasinglayer
    12091245{
    1210         set maxspeed_left;
    1211         left-casing-color: speed_40_mph#9f9fff;
     1246    set maxspeed_left;
     1247    left-casing-color: speed_40_mph#9f9fff;
    12121248}
    12131249way["maxspeed:forward"="45 mph"]!:righthandtraffic::maxspeedcasinglayer,
    12141250way["maxspeed:backward"="45 mph"]:righthandtraffic::maxspeedcasinglayer
    12151251{
    1216         set maxspeed_left;
    1217         left-casing-color: speed_45_mph#ee8b00;
     1252    set maxspeed_left;
     1253    left-casing-color: speed_45_mph#ee8b00;
    12181254}
    12191255way["maxspeed:forward"="50 mph"]!:righthandtraffic::maxspeedcasinglayer,
    12201256way["maxspeed:backward"="50 mph"]:righthandtraffic::maxspeedcasinglayer
    12211257{
    1222         set maxspeed_left;
    1223         left-casing-color: speed_50_mph#f90808;
     1258    set maxspeed_left;
     1259    left-casing-color: speed_50_mph#f90808;
    12241260}
    12251261way["maxspeed:forward"="55 mph"]!:righthandtraffic::maxspeedcasinglayer,
    12261262way["maxspeed:backward"="55 mph"]:righthandtraffic::maxspeedcasinglayer
    12271263{
    1228         set maxspeed_left;
    1229         left-casing-color: speed_55_mph#07f8f8;
     1264    set maxspeed_left;
     1265    left-casing-color: speed_55_mph#07f8f8;
    12301266}
    12311267way["maxspeed:forward"="60 mph"]!:righthandtraffic::maxspeedcasinglayer,
    12321268way["maxspeed:backward"="60 mph"]:righthandtraffic::maxspeedcasinglayer
    12331269{
    1234         set maxspeed_left;
    1235         left-casing-color: speed_60_mph#f807f8;
     1270    set maxspeed_left;
     1271    left-casing-color: speed_60_mph#f807f8;
    12361272}
    12371273way["maxspeed:forward"="65 mph"]!:righthandtraffic::maxspeedcasinglayer,
    12381274way["maxspeed:backward"="65 mph"]:righthandtraffic::maxspeedcasinglayer
    12391275{
    1240         set maxspeed_left;
    1241         left-casing-color: speed_65_mph#7807f8;
     1276    set maxspeed_left;
     1277    left-casing-color: speed_65_mph#7807f8;
    12421278}
    12431279way["maxspeed:forward"="70 mph"]!:righthandtraffic::maxspeedcasinglayer,
    12441280way["maxspeed:backward"="70 mph"]:righthandtraffic::maxspeedcasinglayer
    12451281{
    1246         set maxspeed_left;
    1247         left-casing-color: speed_70_mph#b69b20;
     1282    set maxspeed_left;
     1283    left-casing-color: speed_70_mph#b69b20;
    12481284}
    12491285way["maxspeed:forward"="75 mph"]!:righthandtraffic::maxspeedcasinglayer,
    12501286way["maxspeed:backward"="75 mph"]:righthandtraffic::maxspeedcasinglayer
    12511287{
    1252         set maxspeed_left;
    1253         left-casing-color: speed_75_mph#c0f100;
     1288    set maxspeed_left;
     1289    left-casing-color: speed_75_mph#c0f100;
    12541290}
    12551291way["maxspeed:forward"="80 mph"]!:righthandtraffic::maxspeedcasinglayer,
    12561292way["maxspeed:backward"="80 mph"]:righthandtraffic::maxspeedcasinglayer
    12571293{
    1258         set maxspeed_left;
    1259         left-casing-color: speed_80_mph#438100;
     1294    set maxspeed_left;
     1295    left-casing-color: speed_80_mph#438100;
    12601296}
    12611297way["maxspeed:forward"="85 mph"]!:righthandtraffic::maxspeedcasinglayer,
    12621298way["maxspeed:backward"="85 mph"]:righthandtraffic::maxspeedcasinglayer
    12631299{
    1264         set maxspeed_left;
    1265         left-casing-color: speed_85_mph#725600;
     1300    set maxspeed_left;
     1301    left-casing-color: speed_85_mph#725600;
    12661302}
    12671303
     
    12721308way.cond_backward_mph:righthandtraffic::maxspeedcasinglayer
    12731309{
    1274         set maxspeed_left_cond;
    1275         left-casing-dashes: 55,25;
     1310    set maxspeed_left_cond;
     1311    left-casing-dashes: 55,25;
    12761312}
    12771313/* 5.3.1 - kmh */
     
    12791315way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="none"]:righthandtraffic::maxspeedcasinglayer
    12801316{
    1281         left-casing-dashes-background-color: speed_none#febede;
     1317    left-casing-dashes-background-color: speed_none#febede;
    12821318}
    12831319way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="5"]!:righthandtraffic::maxspeedcasinglayer,
    12841320way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="5"]:righthandtraffic::maxspeedcasinglayer
    12851321{
    1286         left-casing-dashes-background-color: speed_5#ff5656;
     1322    left-casing-dashes-background-color: speed_5#ff5656;
    12871323}
    12881324way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="10"]!:righthandtraffic::maxspeedcasinglayer,
    12891325way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="10"]:righthandtraffic::maxspeedcasinglayer
    12901326{
    1291         left-casing-dashes-background-color: speed_10#b80022;
     1327    left-casing-dashes-background-color: speed_10#b80022;
    12921328}
    12931329way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="15"]!:righthandtraffic::maxspeedcasinglayer,
    12941330way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="15"]:righthandtraffic::maxspeedcasinglayer
    12951331{
    1296         left-casing-dashes-background-color: speed_15#00da8b;
     1332    left-casing-dashes-background-color: speed_15#00da8b;
    12971333}
    12981334way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="20"]!:righthandtraffic::maxspeedcasinglayer,
    12991335way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="20"]:righthandtraffic::maxspeedcasinglayer
    13001336{
    1301         left-casing-dashes-background-color: speed_20#e3cc82;
     1337    left-casing-dashes-background-color: speed_20#e3cc82;
    13021338}
    13031339way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="30"]!:righthandtraffic::maxspeedcasinglayer,
    13041340way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="30"]:righthandtraffic::maxspeedcasinglayer
    13051341{
    1306         left-casing-dashes-background-color: speed_30#4d4dff;
     1342    left-casing-dashes-background-color: speed_30#4d4dff;
    13071343}
    13081344way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="40"]!:righthandtraffic::maxspeedcasinglayer,
    13091345way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="40"]:righthandtraffic::maxspeedcasinglayer
    13101346{
    1311         left-casing-dashes-background-color: speed_40#4d4d00;
     1347    left-casing-dashes-background-color: speed_40#4d4d00;
    13121348}
    13131349way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="45"]!:righthandtraffic::maxspeedcasinglayer,
    13141350way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="45"]:righthandtraffic::maxspeedcasinglayer
    13151351{
    1316         left-casing-dashes-background-color: speed_45#fd6eaa;
     1352    left-casing-dashes-background-color: speed_45#fd6eaa;
    13171353}
    13181354way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="50"]!:righthandtraffic::maxspeedcasinglayer,
    13191355way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="50"]:righthandtraffic::maxspeedcasinglayer
    13201356{
    1321         left-casing-dashes-background-color: speed_50#07f807;
     1357    left-casing-dashes-background-color: speed_50#07f807;
    13221358}
    13231359way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="60"]!:righthandtraffic::maxspeedcasinglayer,
    13241360way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="60"]:righthandtraffic::maxspeedcasinglayer
    13251361{
    1326         left-casing-dashes-background-color: speed_60#9f9fff;
     1362    left-casing-dashes-background-color: speed_60#9f9fff;
    13271363}
    13281364way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="70"]!:righthandtraffic::maxspeedcasinglayer,
    13291365way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="70"]:righthandtraffic::maxspeedcasinglayer
    13301366{
    1331         left-casing-dashes-background-color: speed_70#ee8b00;
     1367    left-casing-dashes-background-color: speed_70#ee8b00;
    13321368}
    13331369way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="80"]!:righthandtraffic::maxspeedcasinglayer,
    13341370way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="80"]:righthandtraffic::maxspeedcasinglayer
    13351371{
    1336         left-casing-dashes-background-color: speed_80#f90808;
     1372    left-casing-dashes-background-color: speed_80#f90808;
    13371373}
    13381374way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="90"]!:righthandtraffic::maxspeedcasinglayer,
    13391375way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="90"]:righthandtraffic::maxspeedcasinglayer
    13401376{
    1341         left-casing-dashes-background-color: speed_90#07f8f8;
     1377    left-casing-dashes-background-color: speed_90#07f8f8;
    13421378}
    13431379way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="100"]!:righthandtraffic::maxspeedcasinglayer,
    13441380way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="100"]:righthandtraffic::maxspeedcasinglayer
    13451381{
    1346         left-casing-dashes-background-color: speed_100#f807f8;
     1382    left-casing-dashes-background-color: speed_100#f807f8;
    13471383}
    13481384way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="110"]!:righthandtraffic::maxspeedcasinglayer,
    13491385way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="110"]:righthandtraffic::maxspeedcasinglayer
    13501386{
    1351         left-casing-dashes-background-color: speed_110#7807f8;
     1387    left-casing-dashes-background-color: speed_110#7807f8;
    13521388}
    13531389way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="120"]!:righthandtraffic::maxspeedcasinglayer,
    13541390way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="120"]:righthandtraffic::maxspeedcasinglayer
    13551391{
    1356         left-casing-dashes-background-color: speed_120#b69b20;
     1392    left-casing-dashes-background-color: speed_120#b69b20;
    13571393}
    13581394way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="130"]!:righthandtraffic::maxspeedcasinglayer,
    13591395way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="130"]:righthandtraffic::maxspeedcasinglayer
    13601396{
    1361         left-casing-dashes-background-color: speed_130#c0f100;
     1397    left-casing-dashes-background-color: speed_130#c0f100;
    13621398}
    13631399way.cond_forward_kmh[prop(maxsp_forward_cond, maxspeedcasinglayer)="140"]!:righthandtraffic::maxspeedcasinglayer,
    13641400way.cond_backward_kmh[prop(maxsp_backward_cond, maxspeedcasinglayer)="140"]:righthandtraffic::maxspeedcasinglayer
    13651401{
    1366         left-casing-dashes-background-color: speed_140#438100;
     1402    left-casing-dashes-background-color: speed_140#438100;
    13671403}
    13681404/* 5.3.2 - mph */
     
    13701406way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="5"]:righthandtraffic::maxspeedcasinglayer
    13711407{
    1372         left-casing-dashes-background-color: speed_5_mph#b80022;
     1408    left-casing-dashes-background-color: speed_5_mph#b80022;
    13731409}
    13741410way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="10"]!:righthandtraffic::maxspeedcasinglayer,
    13751411way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="10"]:righthandtraffic::maxspeedcasinglayer
    13761412{
    1377         left-casing-dashes-background-color: speed_10_mph#00da8b;
     1413    left-casing-dashes-background-color: speed_10_mph#00da8b;
    13781414}
    13791415way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="15"]!:righthandtraffic::maxspeedcasinglayer,
    13801416way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="15"]:righthandtraffic::maxspeedcasinglayer
    13811417{
    1382         left-casing-dashes-background-color: speed_15_mph#e3cc82;
     1418    left-casing-dashes-background-color: speed_15_mph#e3cc82;
    13831419}
    13841420way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="20"]!:righthandtraffic::maxspeedcasinglayer,
    13851421way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="20"]:righthandtraffic::maxspeedcasinglayer
    13861422{
    1387         left-casing-dashes-background-color: speed_20_mph#4d4dff;
     1423    left-casing-dashes-background-color: speed_20_mph#4d4dff;
    13881424}
    13891425way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="25"]!:righthandtraffic::maxspeedcasinglayer,
    13901426way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="25"]:righthandtraffic::maxspeedcasinglayer
    13911427{
    1392         left-casing-dashes-background-color: speed_25_mph#4d4d00;
     1428    left-casing-dashes-background-color: speed_25_mph#4d4d00;
    13931429}
    13941430way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="30"]!:righthandtraffic::maxspeedcasinglayer,
    13951431way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="30"]:righthandtraffic::maxspeedcasinglayer
    13961432{
    1397         left-casing-dashes-background-color: speed_30_mph#fd6eaa;
     1433    left-casing-dashes-background-color: speed_30_mph#fd6eaa;
    13981434}
    13991435way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="35"]!:righthandtraffic::maxspeedcasinglayer,
    14001436way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="35"]:righthandtraffic::maxspeedcasinglayer
    14011437{
    1402         left-casing-dashes-background-color: speed_35_mph#07f807;
     1438    left-casing-dashes-background-color: speed_35_mph#07f807;
    14031439}
    14041440way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="40"]!:righthandtraffic::maxspeedcasinglayer,
    14051441way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="40"]:righthandtraffic::maxspeedcasinglayer
    14061442{
    1407         left-casing-dashes-background-color: speed_40_mph#9f9fff;
     1443    left-casing-dashes-background-color: speed_40_mph#9f9fff;
    14081444}
    14091445way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="45"]!:righthandtraffic::maxspeedcasinglayer,
    14101446way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="45"]:righthandtraffic::maxspeedcasinglayer
    14111447{
    1412         left-casing-dashes-background-color: speed_45_mph#ee8b00;
     1448    left-casing-dashes-background-color: speed_45_mph#ee8b00;
    14131449}
    14141450way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="50"]!:righthandtraffic::maxspeedcasinglayer,
    14151451way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="50"]:righthandtraffic::maxspeedcasinglayer
    14161452{
    1417         left-casing-dashes-background-color: speed_50_mph#f90808;
     1453    left-casing-dashes-background-color: speed_50_mph#f90808;
    14181454}
    14191455way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="55"]!:righthandtraffic::maxspeedcasinglayer,
    14201456way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="55"]:righthandtraffic::maxspeedcasinglayer
    14211457{
    1422         left-casing-dashes-background-color: speed_55_mph#07f8f8;
     1458    left-casing-dashes-background-color: speed_55_mph#07f8f8;
    14231459}
    14241460way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="60"]!:righthandtraffic::maxspeedcasinglayer,
    14251461way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="60"]:righthandtraffic::maxspeedcasinglayer
    14261462{
    1427         left-casing-dashes-background-color: speed_60_mph#f807f8;
     1463    left-casing-dashes-background-color: speed_60_mph#f807f8;
    14281464}
    14291465way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="65"]!:righthandtraffic::maxspeedcasinglayer,
    14301466way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="65"]:righthandtraffic::maxspeedcasinglayer
    14311467{
    1432         left-casing-dashes-background-color: speed_65_mph#7807f8;
     1468    left-casing-dashes-background-color: speed_65_mph#7807f8;
    14331469}
    14341470way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="70"]!:righthandtraffic::maxspeedcasinglayer,
    14351471way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="70"]:righthandtraffic::maxspeedcasinglayer
    14361472{
    1437         left-casing-dashes-background-color: speed_70_mph#b69b20;
     1473    left-casing-dashes-background-color: speed_70_mph#b69b20;
    14381474}
    14391475way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="75"]!:righthandtraffic::maxspeedcasinglayer,
    14401476way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="75"]:righthandtraffic::maxspeedcasinglayer
    14411477{
    1442         left-casing-dashes-background-color: speed_75_mph#c0f100;
     1478    left-casing-dashes-background-color: speed_75_mph#c0f100;
    14431479}
    14441480way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="80"]!:righthandtraffic::maxspeedcasinglayer,
    14451481way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="80"]:righthandtraffic::maxspeedcasinglayer
    14461482{
    1447         left-casing-dashes-background-color: speed_80_mph#438100;
     1483    left-casing-dashes-background-color: speed_80_mph#438100;
    14481484}
    14491485way.cond_forward_mph[prop(maxsp_forward_cond, maxspeedcasinglayer)="85"]!:righthandtraffic::maxspeedcasinglayer,
    14501486way.cond_backward_mph[prop(maxsp_backward_cond, maxspeedcasinglayer)="85"]:righthandtraffic::maxspeedcasinglayer
    14511487{
    1452         left-casing-dashes-background-color: speed_85_mph#725600;
     1488    left-casing-dashes-background-color: speed_85_mph#725600;
    14531489}
    14541490
     
    14571493way.maxspeed_left_cond::maxspeedcasinglayer
    14581494{
    1459         left-casing-width: 6;
    1460         left-casing-offset: 0;
    1461         major-z-index: 3;
    1462         z-index: -1;
     1495    left-casing-width: 6;
     1496    left-casing-offset: 0;
     1497    major-z-index: 3;
     1498    z-index: -1;
    14631499}
    14641500way|z16.maxspeed_left::maxspeedcasinglayer,
    14651501way|z16.maxspeed_left_cond::maxspeedcasinglayer
    14661502{
    1467         left-casing-width: 5;
     1503    left-casing-width: 5;
    14681504}
    14691505way|z-15.maxspeed_left::maxspeedcasinglayer,
    14701506way|z-15.maxspeed_left_cond::maxspeedcasinglayer
    14711507{
    1472         left-casing-width: 4;
     1508    left-casing-width: 4;
    14731509}
    14741510way.maxspeed_left_cond!.maxspeed_left::maxspeedcasinglayer
    14751511{
    1476         left-casing-opacity: 0;
    1477         left-casing-dashes-background-opacity: 1;
     1512    left-casing-opacity: 0;
     1513    left-casing-dashes-background-opacity: 1;
    14781514}
    14791515way.maxspeed_left[maxspeed:variable:forward]!:righthandtraffic::maxspeedcasinglayer,
     
    14821518way.maxspeed_left_cond[maxspeed:variable:backward]:righthandtraffic::maxspeedcasinglayer
    14831519{
    1484         left-casing-dashes: 34,6;
     1520    left-casing-dashes: 34,6;
    14851521}
    14861522
    14871523/*************************************/
    14881524
    1489 /* 6 - error reporting */
    1490 /* 6.1 - report wrong value of maxspeed */
    1491 way[maxspeed=~/^[0-9]+$/]::maxspeedlayer,
    1492 way[maxspeed=signals]::maxspeedlayer,
    1493 way[maxspeed=none]::maxspeedlayer,
    1494 way[maxspeed=~/^[0-9]+ mph$/]::maxspeedlayer,
    1495 way[maxspeed=~/^[0-9]+ km\/h$/]::maxspeedlayer,
    1496 way[maxspeed=~/^[0-9]+ knots$/]::maxspeedlayer,
    1497 way[maxspeed=~/^(BY|FR|RO|RS|RU):(urban|rural|motorway)/][setting("implicit")]::maxspeedlayer,
    1498 way[maxspeed=~/^(FR):(zone30)/][setting("implicit")]::maxspeedlayer,
    1499 way[maxspeed=~/^(RO|RS):(trunk)/][setting("implicit")]::maxspeedlayer,
    1500 way[maxspeed=~/^(BY|RS|RU):(living_street)/][setting("implicit")]::maxspeedlayer
    1501 {
    1502         set correct_value;
    1503 }
    1504 way[maxspeed:forward=~/^[0-9]+$/]::maxspeedcasinglayer,
    1505 way[maxspeed:forward=signals]::maxspeedcasinglayer,
    1506 way[maxspeed:forward=none]::maxspeedcasinglayer,
    1507 way[maxspeed:forward=~/^[0-9]+ mph$/]::maxspeedcasinglayer,
    1508 way[maxspeed:forward=~/^[0-9]+ km\/h$/]::maxspeedcasinglayer,
    1509 way[maxspeed:forward=~/^[0-9]+ knots$/]::maxspeedcasinglayer,
    1510 way[maxspeed:forward=~/^(BY|FR|RO|RS|RU):(urban|rural|motorway)/][setting("implicit")]::maxspeedcasinglayer,
    1511 way[maxspeed:forward=~/^(FR):(zone30)/][setting("implicit")]::maxspeedcasinglayer,
    1512 way[maxspeed:forward=~/^(RO|RS):(trunk)/][setting("implicit")]::maxspeedcasinglayer,
    1513 way[maxspeed:forward=~/^(BY|RS|RU):(living_street)/][setting("implicit")]::maxspeedcasinglayer
    1514 {
    1515         set correct_value_forward;
    1516 }
    1517 way[maxspeed:backward=~/^[0-9]+$/]::maxspeedcasinglayer,
    1518 way[maxspeed:backward=signals]::maxspeedcasinglayer,
    1519 way[maxspeed:backward=none]::maxspeedcasinglayer,
    1520 way[maxspeed:backward=~/^[0-9]+ mph$/]::maxspeedcasinglayer,
    1521 way[maxspeed:backward=~/^[0-9]+ km\/h$/]::maxspeedcasinglayer,
    1522 way[maxspeed:backward=~/^[0-9]+ knots$/]::maxspeedcasinglayer,
    1523 way[maxspeed:backward=~/^(BY|FR|RO|RS|RU):(urban|rural|motorway)/][setting("implicit")]::maxspeedcasinglayer,
    1524 way[maxspeed:backward=~/^(FR):(zone30)/][setting("implicit")]::maxspeedcasinglayer,
    1525 way[maxspeed:backward=~/^(RO|RS):(trunk)/][setting("implicit")]::maxspeedcasinglayer,
    1526 way[maxspeed:backward=~/^(BY|RS|RU):(living_street)/][setting("implicit")]::maxspeedcasinglayer
    1527 {
    1528         set correct_value_backward;
    1529 }
    1530 
    1531 way["maxspeed"]!.correct_value::maxspeedlayer,
    1532 way["maxspeed:forward"]!.correct_value_forward::maxspeedcasinglayer,
    1533 way["maxspeed:backward"]!.correct_value_backward::maxspeedcasinglayer
    1534 {
    1535         color: yellow;
    1536         dashes-background-color: red;
    1537         dashes: 4,24;
    1538         opacity: 1;
    1539         width: 5;
    1540         text: tr("no correct value for maxspeed!");
    1541         text-color: black;
    1542         font-size: 11;
    1543         text-halo-color: red;
    1544         text-halo-radius: 2;
    1545         casing-width: 1;
    1546         casing-color: yellow;
    1547 }
    1548 
    1549 /* 6.2 - report wrong value of maxspeed:conditional */
    1550 way["maxspeed:conditional"=~/^[1-9][0-9]* knots @ /]::maxspeedlayer,
    1551 way["maxspeed:forward:conditional"=~/^[1-9][0-9]* knots @ /]::maxspeedcasinglayer,
    1552 way["maxspeed:backward:conditional"=~/^[1-9][0-9]* knots @ /]::maxspeedcasinglayer
    1553 {
    1554         set cond_knots;
    1555 }
    1556 
    1557 way["maxspeed:conditional"]!.cond_kmh!.cond_mph!.cond_knots::maxspeedlayer,
    1558 way["maxspeed:forward:conditional"]!.cond_forward_kmh!.cond_forward_mph!.cond_knots::maxspeedcasinglayer,
    1559 way["maxspeed:backward:conditional"]!.cond_backward_kmh!.cond_backward_mph!.cond_knots::maxspeedcasinglayer
    1560 {
    1561         color: yellow;
    1562         dashes-background-color: red;
    1563         dashes: 4,24;
    1564         opacity: 1;
    1565         width: 5;
    1566         text: tr("wrong conditional maxspeed value!");
    1567         text-color: black;
    1568         font-size: 11;
    1569         text-halo-color: red;
    1570         text-halo-radius: 2;
    1571         left-casing-width: 1;
    1572         left-casing-color: yellow;
    1573         right-casing-width: 1;
    1574         right-casing-color: yellow;
    1575         z-index: 1;
    1576 }
    1577 
    1578 /* 6.3 - report conditional maxspeed without default maxspeed */
    1579 way["maxspeed:conditional"][!"maxspeed"]::maxspeedlayer,
    1580 way["maxspeed:forward:conditional"][!"maxspeed:forward"][!"maxspeed"]::maxspeedcasinglayer,
    1581 way["maxspeed:backward:conditional"][!"maxspeed:backward"][!"maxspeed"]::maxspeedcasinglayer
    1582 {
    1583         color: yellow;
    1584         dashes-background-color: red;
    1585         dashes: 4,24;
    1586         opacity: 1;
    1587         width: 5;
    1588         text: tr("conditional maxspeed without default maxspeed!");
    1589         text-color: black;
    1590         font-size: 11;
    1591         text-halo-color: red;
    1592         text-halo-radius: 2;
    1593         left-casing-width: 1;
    1594         left-casing-color: yellow;
    1595         right-casing-width: 1;
    1596         right-casing-color: yellow;
    1597         left-casing-opacity: 1;
    1598         right-casing-opacity: 1;
    1599         z-index: 1;
    1600 
    1601 }
    1602 
    1603 /* 6.4 - report if maxspeed direction is opposed to oneway direction */
    1604 way["maxspeed:backward"][oneway?], /* in default layer to not hide the oneway arrows */
     1525/* 6 - display maxspeed values as text (text always in default layer) */
     1526way[setting("textdisplay")][maxspeed]
     1527{
     1528    maxspeedvalues: tag(maxspeed);
     1529    set text_available;
     1530}
     1531way[setting("textdisplay")][maxspeed:forward]
     1532{
     1533    maxspeedvalues: concat(prop(maxspeedvalues), "  fw", tag("maxspeed:forward"));
     1534    set text_available;
     1535}
     1536way[setting("textdisplay")][maxspeed:backward]
     1537{
     1538    maxspeedvalues: concat(prop(maxspeedvalues), "  bw", tag("maxspeed:backward"));
     1539    set text_available;
     1540}
     1541
     1542/* get rid of the text after "@" as it can be a long text while keeping mph and knots */
     1543way[setting("textdisplay")][maxspeed:conditional]
     1544{
     1545    maxspeedvalues: concat(prop(maxspeedvalues), "  c", get(split(" @", tag("maxspeed:conditional")), 0));
     1546    set text_available;
     1547}
     1548way[setting("textdisplay")][maxspeed:forward:conditional]
     1549{
     1550    maxspeedvalues: concat(prop(maxspeedvalues), "  fwc", get(split(" @", tag("maxspeed:forward:conditional")), 0));
     1551    set text_available;
     1552}
     1553way[setting("textdisplay")][maxspeed:backward:conditional]
     1554{
     1555    maxspeedvalues: concat(prop(maxspeedvalues), "  bwc", get(split(" @", tag("maxspeed:backward:conditional")), 0));
     1556    set text_available;
     1557}
     1558
     1559way[setting("textdisplay")][maxspeed:advisory]
     1560{
     1561    maxspeedvalues: concat(prop(maxspeedvalues), "  a", tag("maxspeed:advisory"));
     1562    set text_available;
     1563}
     1564way[setting("textdisplay")][maxspeed:advisory:forward]
     1565{
     1566    maxspeedvalues: concat(prop(maxspeedvalues), "  afw", tag("maxspeed:advisory:forward"));
     1567    set text_available;
     1568}
     1569way[setting("textdisplay")][maxspeed:advisory:backward]
     1570{
     1571    maxspeedvalues: concat(prop(maxspeedvalues), "  abw", tag("maxspeed:advisory:backward"));
     1572    set text_available;
     1573}
     1574
     1575/* display "v" only for the values yes or other reasons (as the reason can be a long text), but not for value no */
     1576way[setting("textdisplay")][maxspeed:variable][maxspeed:variable!=no]
     1577{
     1578    maxspeedvalues: concat(prop(maxspeedvalues), "  v");
     1579    set text_available;
     1580}
     1581way[setting("textdisplay")][maxspeed:variable:forward][maxspeed:variable:forward!=no]
     1582{
     1583    maxspeedvalues: concat(prop(maxspeedvalues), "  vfw");
     1584    set text_available;
     1585}
     1586way[setting("textdisplay")][maxspeed:variable:backward][maxspeed:variable:backward!=no]
     1587{
     1588    maxspeedvalues: concat(prop(maxspeedvalues), "  vbw");
     1589    set text_available;
     1590}
     1591
     1592way|z18-[setting("textdisplay")].text_available
     1593{
     1594    font-size: 13;
     1595    text-color: black;
     1596    text-halo-radius: 2;
     1597    text-halo-color: white;
     1598    text: prop(maxspeedvalues);
     1599}
     1600
     1601
     1602/*************************************/
     1603
     1604/* 7 - error reporting (text always in default layer, overwrites text: prop(maxspeedvalues))*/
     1605/* 7.1 - report wrong value of maxspeed (knots has no style support but should not produce a warning anyway) */
     1606way[maxspeed=~/^[1-9][0-9]*( mph| knots)?$/],
     1607way[maxspeed=signals],
     1608way[maxspeed=none],
     1609way[maxspeed=~/^(BY|FR|RO|RS|RU):(urban|rural|motorway)/][setting("implicit")],
     1610way[maxspeed=~/^(FR):(zone30)/][setting("implicit")],
     1611way[maxspeed=~/^(RO|RS):(trunk)/][setting("implicit")],
     1612way[maxspeed=~/^(BY|RS|RU):(living_street)/][setting("implicit")]
     1613{
     1614    set correct_value;
     1615}
     1616way[maxspeed:forward=~/^[1-9][0-9]*( mph| knots)?$/],
     1617way[maxspeed:forward=signals],
     1618way[maxspeed:forward=none],
     1619way[maxspeed:forward=~/^(BY|FR|RO|RS|RU):(urban|rural|motorway)/][setting("implicit")],
     1620way[maxspeed:forward=~/^(FR):(zone30)/][setting("implicit")],
     1621way[maxspeed:forward=~/^(RO|RS):(trunk)/][setting("implicit")],
     1622way[maxspeed:forward=~/^(BY|RS|RU):(living_street)/][setting("implicit")]
     1623{
     1624    set correct_value_forward;
     1625}
     1626way[maxspeed:backward=~/^[1-9][0-9]*( mph| knots)?$/],
     1627way[maxspeed:backward=signals],
     1628way[maxspeed:backward=none],
     1629way[maxspeed:backward=~/^(BY|FR|RO|RS|RU):(urban|rural|motorway)/][setting("implicit")],
     1630way[maxspeed:backward=~/^(FR):(zone30)/][setting("implicit")],
     1631way[maxspeed:backward=~/^(RO|RS):(trunk)/][setting("implicit")],
     1632way[maxspeed:backward=~/^(BY|RS|RU):(living_street)/][setting("implicit")]
     1633{
     1634    set correct_value_backward;
     1635}
     1636
     1637way["maxspeed"]!.correct_value,
     1638way["maxspeed:forward"]!.correct_value_forward,
     1639way["maxspeed:backward"]!.correct_value_backward
     1640{
     1641    color: yellow;
     1642    dashes-background-color: red;
     1643    dashes: 4,24;
     1644    width: 5;
     1645    text: tr("wrong maxspeed value!");
     1646    text-color: black;
     1647    font-size: 11;
     1648    text-halo-color: red;
     1649    text-halo-radius: 2;
     1650    left-casing-width: 1;
     1651    left-casing-color: yellow;
     1652    right-casing-width: 1;
     1653    right-casing-color: yellow;
     1654    major-z-index: 3;
     1655}
     1656
     1657
     1658/* 7.2 - report wrong value of maxspeed:conditional */
     1659way["maxspeed:conditional"=~/^(none|[1-9][0-9]*( mph| knots)?) @ /]
     1660{
     1661    set correct_value_cond;
     1662}
     1663
     1664way["maxspeed:forward:conditional"=~/^(none|[1-9][0-9]*( mph| knots)?) @ /]
     1665{
     1666    set correct_value_forward_cond;
     1667}
     1668
     1669
     1670way["maxspeed:backward:conditional"=~/^(none|[1-9][0-9]*( mph| knots)?) @ /]
     1671{
     1672    set correct_value_backward_cond;
     1673}
     1674
     1675
     1676way["maxspeed:conditional"]!.correct_value_cond,
     1677way["maxspeed:forward:conditional"]!.correct_value_forward_cond,
     1678way["maxspeed:backward:conditional"]!.correct_value_backward_cond
     1679{
     1680    color: yellow;
     1681    dashes-background-color: red;
     1682    dashes: 4,24;
     1683    width: 5;
     1684    text: tr("wrong conditional maxspeed value!");
     1685    text-color: black;
     1686    font-size: 11;
     1687    text-halo-color: red;
     1688    text-halo-radius: 2;
     1689    left-casing-width: 1;
     1690    left-casing-color: yellow;
     1691    right-casing-width: 1;
     1692    right-casing-color: yellow;
     1693    major-z-index: 3;
     1694}
     1695
     1696/* 7.3 - report conditional maxspeed without default maxspeed */
     1697way["maxspeed:conditional"][!"maxspeed"],
     1698way["maxspeed:forward:conditional"][!"maxspeed:forward"][!"maxspeed"],
     1699way["maxspeed:backward:conditional"][!"maxspeed:backward"][!"maxspeed"]
     1700{
     1701    color: yellow;
     1702    dashes-background-color: red;
     1703    dashes: 4,24;
     1704    width: 5;
     1705    text: tr("conditional maxspeed without default maxspeed!");
     1706    text-color: black;
     1707    font-size: 11;
     1708    text-halo-color: red;
     1709    text-halo-radius: 2;
     1710    left-casing-width: 1;
     1711    left-casing-color: yellow;
     1712    right-casing-width: 1;
     1713    right-casing-color: yellow;
     1714    major-z-index: 3;
     1715
     1716}
     1717
     1718/* 7.4 - report wrong value of maxspeed:advisory */
     1719way[maxspeed:advisory=~/^[1-9][0-9]*( mph| knots)?$/]
     1720{
     1721    set correct_value_advisory;
     1722}
     1723way[maxspeed:advisory:forward=~/^[1-9][0-9]*( mph| knots)?$/]
     1724{
     1725    set correct_value_advisory_forward;
     1726}
     1727way[maxspeed:advisory:backward=~/^[1-9][0-9]*( mph| knots)?$/]
     1728{
     1729    set correct_value_advisory_backward;
     1730}
     1731
     1732way["maxspeed:advisory"]!.correct_value_advisory,
     1733way["maxspeed:advisory:forward"]!.correct_value_advisory_forward,
     1734way["maxspeed:advisory:backward"]!.correct_value_advisory_backward
     1735{
     1736    color: yellow;
     1737    dashes-background-color: red;
     1738    dashes: 4,24;
     1739    width: 5;
     1740    text: tr("wrong maxspeed:advisory value!");
     1741    text-color: black;
     1742    font-size: 11;
     1743    text-halo-color: red;
     1744    text-halo-radius: 2;
     1745    left-casing-width: 1;
     1746    left-casing-color: yellow;
     1747    right-casing-width: 1;
     1748    right-casing-color: yellow;
     1749    major-z-index: 3;
     1750}
     1751
     1752/* 7.5 - report if maxspeed direction is opposed to oneway direction */
     1753way["maxspeed:backward"][oneway?],
    16051754way["maxspeed:forward"][oneway=-1]
    16061755{
    1607         color: yellow;
    1608         dashes-background-color: red;
    1609         dashes: 4,24;
    1610         opacity: 1;
    1611         width: 5;
    1612         text: tr("maxspeed opposed to oneway direction!");
    1613         text-color: black;
    1614         font-size: 11;
    1615         text-halo-color: red;
    1616         text-halo-radius: 2;
    1617         casing-width: 1;
    1618         casing-color: yellow;
     1756    color: yellow;
     1757    dashes-background-color: red;
     1758    dashes: 4,24;
     1759    width: 5;
     1760    text: tr("maxspeed opposed to oneway direction!");
     1761    text-color: black;
     1762    font-size: 11;
     1763    text-halo-color: red;
     1764    text-halo-radius: 2;
     1765    left-casing-width: 1;
     1766    left-casing-color: yellow;
     1767    right-casing-width: 1;
     1768    right-casing-color: yellow;
     1769    major-z-index: 3;
    16191770}
    16201771}}}