VRR: Update line styles.

Changed the provider abbreviations in the styles to reflect changes at VRR.
Mülheim styles not working yet as there is no abbreviation present in the EFA reply.
Due to these changes in replies, night buses are now also styled (Düsseldorf, Dortmund, Krefeld, Essen, Duisburg, Oberhausen, Neuss, Remscheid, Solingen, and Wuppertal.)
This commit is contained in:
karottenbaum 2016-08-19 16:22:23 +02:00 committed by Andreas Schildbach
parent 0addc8fec1
commit f2327c9a50

View file

@ -121,104 +121,147 @@ public class VrrProvider extends AbstractEfaProvider
// Schnellbusse VRR
STYLES.put("vrr|BSB", new Style(Style.parseColor("#00919d"), Style.WHITE));
// Stadtbahn Dortmund
STYLES.put("vrr|UU41", new Style(Shape.RECT, Style.parseColor("#ffe700"), Style.GRAY));
STYLES.put("vrr|UU42", new Style(Shape.RECT, Style.parseColor("#fcb913"), Style.WHITE));
STYLES.put("vrr|UU43", new Style(Shape.RECT, Style.parseColor("#409387"), Style.WHITE));
STYLES.put("vrr|UU44", new Style(Shape.RECT, Style.parseColor("#66a3b1"), Style.WHITE));
STYLES.put("vrr|UU45", new Style(Shape.RECT, Style.parseColor("#ee1c23"), Style.WHITE));
STYLES.put("vrr|UU46", new Style(Shape.RECT, Style.parseColor("#756fb3"), Style.WHITE));
STYLES.put("vrr|UU47", new Style(Shape.RECT, Style.parseColor("#8dc63e"), Style.WHITE));
STYLES.put("vrr|UU49", new Style(Shape.RECT, Style.parseColor("#f7acbc"), Style.WHITE));
// Dortmund
STYLES.put("dsw|UU41", new Style(Shape.RECT, Style.parseColor("#ffe700"), Style.GRAY));
STYLES.put("dsw|UU42", new Style(Shape.RECT, Style.parseColor("#fcb913"), Style.WHITE));
STYLES.put("dsw|UU43", new Style(Shape.RECT, Style.parseColor("#409387"), Style.WHITE));
STYLES.put("dsw|UU44", new Style(Shape.RECT, Style.parseColor("#66a3b1"), Style.WHITE));
STYLES.put("dsw|UU45", new Style(Shape.RECT, Style.parseColor("#ee1c23"), Style.WHITE));
STYLES.put("dsw|UU46", new Style(Shape.RECT, Style.parseColor("#756fb3"), Style.WHITE));
STYLES.put("dsw|UU47", new Style(Shape.RECT, Style.parseColor("#8dc63e"), Style.WHITE));
STYLES.put("dsw|UU49", new Style(Shape.RECT, Style.parseColor("#f7acbc"), Style.WHITE));
STYLES.put("dsw|BNE", new Style(Shape.RECT, Style.parseColor("#2e2382"), Style.WHITE));
// Düsseldorf
STYLES.put("vrr|UU70", new Style(Shape.RECT, Style.parseColor("#69b0cd"), Style.WHITE));
STYLES.put("vrr|UU71", new Style(Shape.RECT, Style.parseColor("#66cef6"), Style.WHITE));
STYLES.put("vrr|UU72", new Style(Shape.RECT, Style.parseColor("#4cc4c5"), Style.WHITE));
STYLES.put("vrr|UU73", new Style(Shape.RECT, Style.parseColor("#4763b8"), Style.WHITE));
STYLES.put("vrr|UU74", new Style(Shape.RECT, Style.parseColor("#27297c"), Style.WHITE));
STYLES.put("vrr|UU75", new Style(Shape.RECT, Style.parseColor("#079acb"), Style.WHITE));
STYLES.put("vrr|UU76", new Style(Shape.RECT, Style.parseColor("#1969bc"), Style.WHITE));
STYLES.put("vrr|UU77", new Style(Shape.RECT, Style.parseColor("#6d90d2"), Style.WHITE));
STYLES.put("vrr|UU78", new Style(Shape.RECT, Style.parseColor("#02a7eb"), Style.WHITE));
STYLES.put("vrr|UU79", new Style(Shape.RECT, Style.parseColor("#00aaa0"), Style.WHITE));
STYLES.put("vrr|UU83", new Style(Shape.RECT, Style.parseColor("#2743a0"), Style.WHITE));
STYLES.put("vrr|T701", new Style(Shape.RECT, Style.parseColor("#f57215"), Style.WHITE));
STYLES.put("vrr|T704", new Style(Shape.RECT, Style.parseColor("#c01c23"), Style.WHITE));
STYLES.put("vrr|T705", new Style(Shape.RECT, Style.parseColor("#bd0c8e"), Style.WHITE));
STYLES.put("vrr|T706", new Style(Shape.RECT, Style.parseColor("#ed1c24"), Style.WHITE));
STYLES.put("vrr|T707", new Style(Shape.RECT, Style.parseColor("#72177a"), Style.WHITE));
STYLES.put("vrr|T708", new Style(Shape.RECT, Style.parseColor("#f680b4"), Style.WHITE));
STYLES.put("vrr|T709", new Style(Shape.RECT, Style.parseColor("#ef269d"), Style.WHITE));
STYLES.put("rbg|UU70", new Style(Shape.RECT, Style.parseColor("#69b0cd"), Style.WHITE));
STYLES.put("rbg|UU71", new Style(Shape.RECT, Style.parseColor("#66cef6"), Style.WHITE));
STYLES.put("rbg|UU72", new Style(Shape.RECT, Style.parseColor("#4cc4c5"), Style.WHITE));
STYLES.put("rbg|UU73", new Style(Shape.RECT, Style.parseColor("#4763b8"), Style.WHITE));
STYLES.put("rbg|UU74", new Style(Shape.RECT, Style.parseColor("#27297c"), Style.WHITE));
STYLES.put("rbg|UU75", new Style(Shape.RECT, Style.parseColor("#079acb"), Style.WHITE));
STYLES.put("rbg|UU76", new Style(Shape.RECT, Style.parseColor("#1969bc"), Style.WHITE));
STYLES.put("rbg|UU77", new Style(Shape.RECT, Style.parseColor("#6d90d2"), Style.WHITE));
STYLES.put("rbg|UU78", new Style(Shape.RECT, Style.parseColor("#02a7eb"), Style.WHITE));
STYLES.put("rbg|UU79", new Style(Shape.RECT, Style.parseColor("#00aaa0"), Style.WHITE));
STYLES.put("rbg|UU83", new Style(Shape.RECT, Style.parseColor("#2743a0"), Style.WHITE));
STYLES.put("rbg|T701", new Style(Shape.RECT, Style.parseColor("#f57215"), Style.WHITE));
STYLES.put("rbg|T704", new Style(Shape.RECT, Style.parseColor("#c01c23"), Style.WHITE));
STYLES.put("rbg|T705", new Style(Shape.RECT, Style.parseColor("#bd0c8e"), Style.WHITE));
STYLES.put("rbg|T706", new Style(Shape.RECT, Style.parseColor("#ed1c24"), Style.WHITE));
STYLES.put("rbg|T707", new Style(Shape.RECT, Style.parseColor("#72177a"), Style.WHITE));
STYLES.put("rbg|T708", new Style(Shape.RECT, Style.parseColor("#f680b4"), Style.WHITE));
STYLES.put("rbg|T709", new Style(Shape.RECT, Style.parseColor("#ef269d"), Style.WHITE));
STYLES.put("rbg|BNE1", new Style(Shape.RECT, Style.parseColor("#fec210"), Style.BLACK));
STYLES.put("rbg|BNE2", new Style(Shape.RECT, Style.parseColor("#f17cb0"), Style.WHITE));
STYLES.put("rbg|BNE3", new Style(Shape.RECT, Style.parseColor("#99ca3b"), Style.WHITE));
STYLES.put("rbg|BNE4", new Style(Shape.RECT, Style.parseColor("#ee1d23"), Style.WHITE));
STYLES.put("rbg|BNE5", new Style(Shape.RECT, Style.parseColor("#90268f"), Style.WHITE));
STYLES.put("rbg|BNE6", new Style(Shape.RECT, Style.parseColor("#f47921"), Style.WHITE));
STYLES.put("rbg|BNE7", new Style(Shape.RECT, Style.parseColor("#009247"), Style.WHITE));
STYLES.put("rbg|BNE8", new Style(Shape.RECT, Style.parseColor("#bdaa8b"), Style.BLACK));
// Krefeld
STYLES.put("vrr|T041", new Style(Style.parseColor("#ee4036"), Style.WHITE));
STYLES.put("vrr|T042", new Style(Style.parseColor("#f49392"), Style.WHITE));
STYLES.put("vrr|T043", new Style(Style.parseColor("#bc6ead"), Style.WHITE));
STYLES.put("vrr|T044", new Style(Style.parseColor("#f36c21"), Style.WHITE));
STYLES.put("vrr|B045", new Style(Style.parseColor("#00b5e6"), Style.WHITE));
STYLES.put("vrr|B046", new Style(Style.parseColor("#695073"), Style.WHITE));
STYLES.put("vrr|B047", new Style(Style.parseColor("#fbce99"), Style.WHITE));
STYLES.put("vrr|B051", new Style(Style.parseColor("#a1cf73"), Style.WHITE));
STYLES.put("vrr|B052", new Style(Style.parseColor("#f68f2a"), Style.WHITE));
STYLES.put("vrr|B054", new Style(Style.parseColor("#048546"), Style.WHITE));
STYLES.put("vrr|B055", new Style(Style.parseColor("#00b2b7"), Style.WHITE));
STYLES.put("vrr|B056", new Style(Style.parseColor("#a2689d"), Style.WHITE));
STYLES.put("vrr|B057", new Style(Style.parseColor("#3bc4e6"), Style.WHITE));
STYLES.put("vrr|B058", new Style(Style.parseColor("#0081c6"), Style.WHITE));
STYLES.put("vrr|B059", new Style(Style.parseColor("#9ad099"), Style.WHITE));
STYLES.put("vrr|B060", new Style(Style.parseColor("#aac3bf"), Style.WHITE));
STYLES.put("vrr|B061", new Style(Style.parseColor("#ce8d29"), Style.WHITE));
STYLES.put("vrr|B062", new Style(Style.parseColor("#ae7544"), Style.WHITE));
STYLES.put("vrr|B068", new Style(Style.parseColor("#1857a7"), Style.WHITE));
STYLES.put("vrr|B069", new Style(Style.parseColor("#cd7762"), Style.WHITE));
STYLES.put("vrr|B076", new Style(Style.parseColor("#56a44d"), Style.WHITE));
STYLES.put("vrr|B077", new Style(Style.parseColor("#fcef08"), Style.WHITE));
STYLES.put("vrr|B079", new Style(Style.parseColor("#98a3a4"), Style.WHITE));
STYLES.put("swk|T041", new Style(Style.parseColor("#ee4036"), Style.WHITE));
STYLES.put("swk|T042", new Style(Style.parseColor("#f49392"), Style.WHITE));
STYLES.put("swk|T043", new Style(Style.parseColor("#bc6ead"), Style.WHITE));
STYLES.put("swk|T044", new Style(Style.parseColor("#f36c21"), Style.WHITE));
STYLES.put("swk|B045", new Style(Style.parseColor("#00b5e6"), Style.WHITE));
STYLES.put("swk|B046", new Style(Style.parseColor("#695073"), Style.WHITE));
STYLES.put("swk|B047", new Style(Style.parseColor("#fbce99"), Style.WHITE));
STYLES.put("swk|B051", new Style(Style.parseColor("#a1cf73"), Style.WHITE));
STYLES.put("swk|B052", new Style(Style.parseColor("#f68f2a"), Style.WHITE));
STYLES.put("swk|B054", new Style(Style.parseColor("#048546"), Style.WHITE));
STYLES.put("swk|B055", new Style(Style.parseColor("#00b2b7"), Style.WHITE));
STYLES.put("swk|B056", new Style(Style.parseColor("#a2689d"), Style.WHITE));
STYLES.put("swk|B057", new Style(Style.parseColor("#3bc4e6"), Style.WHITE));
STYLES.put("swk|B058", new Style(Style.parseColor("#0081c6"), Style.WHITE));
STYLES.put("swk|B059", new Style(Style.parseColor("#9ad099"), Style.WHITE));
STYLES.put("swk|B060", new Style(Style.parseColor("#aac3bf"), Style.WHITE));
STYLES.put("swk|B061", new Style(Style.parseColor("#ce8d29"), Style.WHITE));
STYLES.put("swk|B062", new Style(Style.parseColor("#ae7544"), Style.WHITE));
STYLES.put("swk|B068", new Style(Style.parseColor("#1857a7"), Style.WHITE));
STYLES.put("swk|B069", new Style(Style.parseColor("#cd7762"), Style.WHITE));
STYLES.put("rvn|B076", new Style(Style.parseColor("#56a44d"), Style.WHITE));
STYLES.put("rvn|B077", new Style(Style.parseColor("#fcef08"), Style.WHITE));
STYLES.put("rvn|B079", new Style(Style.parseColor("#98a3a4"), Style.WHITE));
STYLES.put("swk|BNE5", new Style(Style.parseColor("#99d64c"), Style.WHITE));
STYLES.put("swk|BNE6", new Style(Style.parseColor("#f6811d"), Style.WHITE));
STYLES.put("swk|BNE7", new Style(Style.parseColor("#5dcbe8"), Style.WHITE));
STYLES.put("swk|BNE8", new Style(Style.parseColor("#187fcb"), Style.WHITE));
STYLES.put("swk|BNE10", new Style(Style.parseColor("#a32240"), Style.WHITE));
STYLES.put("swk|BNE27", new Style(Style.parseColor("#138544"), Style.WHITE));
// Essen
STYLES.put("vrr|UU17", new Style(Shape.RECT, Style.parseColor("#68b6e3"), Style.WHITE));
STYLES.put("vrr|T101", new Style(Shape.RECT, Style.parseColor("#986b17"), Style.WHITE));
STYLES.put("vrr|T103", new Style(Shape.RECT, Style.parseColor("#ffcc00"), Style.WHITE));
STYLES.put("vrr|T105", new Style(Shape.RECT, Style.parseColor("#b6cd00"), Style.WHITE));
STYLES.put("vrr|T106", new Style(Shape.RECT, Style.parseColor("#a695ba"), Style.WHITE));
STYLES.put("vrr|T108", new Style(Shape.RECT, Style.parseColor("#eca900"), Style.WHITE));
STYLES.put("vrr|T109", new Style(Shape.RECT, Style.parseColor("#00933a"), Style.WHITE));
STYLES.put("eva|UU17", new Style(Shape.RECT, Style.parseColor("#68b6e3"), Style.WHITE));
STYLES.put("eva|T101", new Style(Shape.RECT, Style.parseColor("#986b17"), Style.WHITE));
STYLES.put("eva|T103", new Style(Shape.RECT, Style.parseColor("#ffcc00"), Style.WHITE));
STYLES.put("eva|T105", new Style(Shape.RECT, Style.parseColor("#b6cd00"), Style.WHITE));
STYLES.put("eva|T106", new Style(Shape.RECT, Style.parseColor("#a695ba"), Style.WHITE));
STYLES.put("eva|T108", new Style(Shape.RECT, Style.parseColor("#eca900"), Style.WHITE));
STYLES.put("eva|T109", new Style(Shape.RECT, Style.parseColor("#00933a"), Style.WHITE));
STYLES.put("eva|BNE1",new Style(Shape.RECT, Style.parseColor("#f7a500"), Style.WHITE));
STYLES.put("eva|BNE2",new Style(Shape.RECT, Style.parseColor("#009dcc"), Style.WHITE));
STYLES.put("eva|BNE3",new Style(Shape.RECT, Style.parseColor("#534395"), Style.WHITE));
STYLES.put("eva|BNE4",new Style(Shape.RECT, Style.parseColor("#f29ec4"), Style.WHITE));
STYLES.put("eva|BNE5",new Style(Shape.RECT, Style.parseColor("#00964e"), Style.WHITE));
STYLES.put("eva|BNE6",new Style(Shape.RECT, Style.parseColor("#e5007c"), Style.WHITE));
STYLES.put("eva|BNE7",new Style(Shape.RECT, Style.parseColor("#6e9ed4"), Style.WHITE));
STYLES.put("eva|BNE8",new Style(Shape.RECT, Style.parseColor("#877bb0"), Style.WHITE));
STYLES.put("eva|BNE9",new Style(Shape.RECT, Style.parseColor("#ed6da6"), Style.WHITE));
STYLES.put("eva|BNE10",new Style(Shape.RECT, Style.parseColor("#ab901c"), Style.WHITE));
STYLES.put("eva|BNE11",new Style(Shape.RECT, Style.parseColor("#e3000b"), Style.WHITE));
STYLES.put("eva|BNE12",new Style(Shape.RECT, Style.parseColor("#92120a"), Style.WHITE));
STYLES.put("eva|BNE13",new Style(Shape.RECT, Style.parseColor("#ffde0c"), Style.BLACK));
STYLES.put("eva|BNE14",new Style(Shape.RECT, Style.parseColor("#ee7100"), Style.WHITE));
STYLES.put("eva|BNE15",new Style(Shape.RECT, Style.parseColor("#94c11a"), Style.WHITE));
STYLES.put("eva|BNE16",new Style(Shape.RECT, Style.parseColor("#004e9e"), Style.WHITE));
// Duisburg
STYLES.put("vrr|B905", new Style(Style.parseColor("#c8242b"), Style.WHITE));
STYLES.put("vrr|B906", new Style(Style.parseColor("#b5ab3a"), Style.WHITE));
STYLES.put("vrr|B907", new Style(Style.parseColor("#6891c3"), Style.WHITE));
STYLES.put("vrr|B909", new Style(Style.parseColor("#217e5b"), Style.WHITE));
STYLES.put("vrr|B910", new Style(Style.parseColor("#d48018"), Style.WHITE));
STYLES.put("vrr|B917", new Style(Style.parseColor("#23b14b"), Style.WHITE));
STYLES.put("vrr|B919", new Style(Style.parseColor("#078b4a"), Style.WHITE));
STYLES.put("vrr|B922", new Style(Style.parseColor("#0072bb"), Style.WHITE));
STYLES.put("vrr|B923", new Style(Style.parseColor("#00b1c4"), Style.WHITE));
STYLES.put("vrr|B924", new Style(Style.parseColor("#f37921"), Style.WHITE));
STYLES.put("vrr|B925", new Style(Style.parseColor("#4876b8"), Style.WHITE));
STYLES.put("vrr|B926", new Style(Style.parseColor("#649b43"), Style.WHITE));
STYLES.put("vrr|B928", new Style(Style.parseColor("#c4428c"), Style.WHITE));
STYLES.put("vrr|B933", new Style(Style.parseColor("#975615"), Style.WHITE));
STYLES.put("vrr|B934", new Style(Style.parseColor("#009074"), Style.WHITE));
STYLES.put("vrr|B937", new Style(Style.parseColor("#6f78b5"), Style.WHITE));
STYLES.put("vrr|B940", new Style(Style.parseColor("#bbbb30"), Style.WHITE));
STYLES.put("vrr|B942", new Style(Style.parseColor("#930408"), Style.WHITE));
STYLES.put("vrr|B944", new Style(Style.parseColor("#c52157"), Style.WHITE));
STYLES.put("vrr|B946", new Style(Style.parseColor("#1cbddc"), Style.WHITE));
STYLES.put("dvg|B905", new Style(Style.parseColor("#c8242b"), Style.WHITE));
STYLES.put("dvg|B906", new Style(Style.parseColor("#b5ab3a"), Style.WHITE));
STYLES.put("dvg|B907", new Style(Style.parseColor("#6891c3"), Style.WHITE));
STYLES.put("dvg|B909", new Style(Style.parseColor("#217e5b"), Style.WHITE));
STYLES.put("dvg|B910", new Style(Style.parseColor("#d48018"), Style.WHITE));
STYLES.put("dvg|B917", new Style(Style.parseColor("#23b14b"), Style.WHITE));
STYLES.put("dvg|B919", new Style(Style.parseColor("#078b4a"), Style.WHITE));
STYLES.put("dvg|B922", new Style(Style.parseColor("#0072bb"), Style.WHITE));
STYLES.put("dvg|B923", new Style(Style.parseColor("#00b1c4"), Style.WHITE));
STYLES.put("dvg|B924", new Style(Style.parseColor("#f37921"), Style.WHITE));
STYLES.put("dvg|B925", new Style(Style.parseColor("#4876b8"), Style.WHITE));
STYLES.put("dvg|B926", new Style(Style.parseColor("#649b43"), Style.WHITE));
STYLES.put("dvg|B928", new Style(Style.parseColor("#c4428c"), Style.WHITE));
STYLES.put("dvg|B933", new Style(Style.parseColor("#975615"), Style.WHITE));
STYLES.put("dvg|B934", new Style(Style.parseColor("#009074"), Style.WHITE));
STYLES.put("dvg|B937", new Style(Style.parseColor("#6f78b5"), Style.WHITE));
STYLES.put("dvg|B940", new Style(Style.parseColor("#bbbb30"), Style.WHITE));
STYLES.put("dvg|B942", new Style(Style.parseColor("#930408"), Style.WHITE));
STYLES.put("dvg|B944", new Style(Style.parseColor("#c52157"), Style.WHITE));
STYLES.put("dvg|B946", new Style(Style.parseColor("#1cbddc"), Style.WHITE));
STYLES.put("dvg|BNE1", new Style(Style.parseColor("#000000"), Style.WHITE));
STYLES.put("dvg|BNE2", new Style(Style.parseColor("#000000"), Style.WHITE));
STYLES.put("dvg|BNE3", new Style(Style.parseColor("#000000"), Style.WHITE));
STYLES.put("dvg|BNE4", new Style(Style.parseColor("#000000"), Style.WHITE));
// Oberhausen
STYLES.put("vrr|B952", new Style(Style.parseColor("#f59598"), Style.WHITE));
STYLES.put("vrr|B953", new Style(Style.parseColor("#5eb6d9"), Style.WHITE));
STYLES.put("vrr|B954", new Style(Style.parseColor("#f89d3d"), Style.WHITE));
STYLES.put("vrr|B955", new Style(Style.parseColor("#8879b8"), Style.WHITE));
STYLES.put("vrr|B956", new Style(Style.parseColor("#23b24b"), Style.WHITE));
STYLES.put("vrr|B957", new Style(Style.parseColor("#ebc531"), Style.WHITE));
STYLES.put("vrr|B960", new Style(Style.parseColor("#aed57f"), Style.WHITE));
STYLES.put("vrr|B961", new Style(Style.parseColor("#a46f73"), Style.WHITE));
STYLES.put("vrr|B962", new Style(Style.parseColor("#ae5823"), Style.WHITE));
STYLES.put("vrr|B966", new Style(Style.parseColor("#c8b3d6"), Style.WHITE));
STYLES.put("vrr|B976", new Style(Style.parseColor("#d063a5"), Style.WHITE));
STYLES.put("sto|B952", new Style(Style.parseColor("#f59598"), Style.WHITE));
STYLES.put("sto|B953", new Style(Style.parseColor("#5eb6d9"), Style.WHITE));
STYLES.put("sto|B954", new Style(Style.parseColor("#f89d3d"), Style.WHITE));
STYLES.put("sto|B955", new Style(Style.parseColor("#8879b8"), Style.WHITE));
STYLES.put("sto|B956", new Style(Style.parseColor("#23b24b"), Style.WHITE));
STYLES.put("sto|B957", new Style(Style.parseColor("#ebc531"), Style.WHITE));
STYLES.put("sto|B960", new Style(Style.parseColor("#aed57f"), Style.WHITE));
STYLES.put("sto|B961", new Style(Style.parseColor("#a46f73"), Style.WHITE));
STYLES.put("sto|B962", new Style(Style.parseColor("#0a776f"), Style.WHITE));
STYLES.put("sto|B966", new Style(Style.parseColor("#c8b3d6"), Style.WHITE));
STYLES.put("sto|B976", new Style(Style.parseColor("#d063a5"), Style.WHITE));
STYLES.put("sto|BNE1", new Style(Style.parseColor("#e22225"), Style.WHITE));
STYLES.put("sto|BNE2", new Style(Style.parseColor("#28ad78"), Style.WHITE));
STYLES.put("sto|BNE3", new Style(Style.parseColor("#85499c"), Style.WHITE));
STYLES.put("sto|BNE4", new Style(Style.parseColor("#395aa8"), Style.WHITE));
STYLES.put("sto|BNE5", new Style(Style.parseColor("#ede929"), Style.WHITE));
STYLES.put("sto|BNE6", new Style(Style.parseColor("#d488ba"), Style.WHITE));
STYLES.put("sto|BNE7", new Style(Style.parseColor("#fbae3e"), Style.WHITE));
STYLES.put("sto|BNE10", new Style(Style.parseColor("#270039"), Style.WHITE));
// Mülheim an der Ruhr
STYLES.put("vrr|T102", new Style(Style.parseColor("#756fb3"), Style.WHITE));
@ -228,84 +271,107 @@ public class VrrProvider extends AbstractEfaProvider
STYLES.put("vrr|B135", new Style(Style.parseColor("#425159"), Style.WHITE));
// Neuss
STYLES.put("vrr|B842", new Style(Style.parseColor("#fdcc10"), Style.WHITE));
STYLES.put("vrr|B843", new Style(Style.parseColor("#808180"), Style.WHITE));
STYLES.put("vrr|B844", new Style(Style.parseColor("#cb1f25"), Style.WHITE));
STYLES.put("vrr|B848", new Style(Style.parseColor("#be4e26"), Style.WHITE));
STYLES.put("vrr|B849", new Style(Style.parseColor("#c878b1"), Style.WHITE));
STYLES.put("vrr|B854", new Style(Style.parseColor("#35bb93"), Style.WHITE));
STYLES.put("swn|B842", new Style(Style.parseColor("#fdcc10"), Style.WHITE));
STYLES.put("swn|B843", new Style(Style.parseColor("#808180"), Style.WHITE));
STYLES.put("swn|B844", new Style(Style.parseColor("#cb1f25"), Style.WHITE));
STYLES.put("swn|B848", new Style(Style.parseColor("#be4e26"), Style.WHITE));
STYLES.put("swn|B849", new Style(Style.parseColor("#c878b1"), Style.WHITE));
STYLES.put("swn|B854", new Style(Style.parseColor("#35bb93"), Style.WHITE));
STYLES.put("swn|BNE1", new Style(Style.parseColor("#ff9900"), Style.WHITE));
STYLES.put("swn|BNE2", new Style(Style.parseColor("#0000ff"), Style.WHITE));
STYLES.put("swn|BNE3", new Style(Style.parseColor("#ff0000"), Style.WHITE));
STYLES.put("swn|BNE4", new Style(Style.parseColor("#ff9900"), Style.WHITE));
STYLES.put("swn|BNE5", new Style(Style.parseColor("#9900cc"), Style.WHITE));
STYLES.put("swn|BNE6", new Style(Style.parseColor("#00cc99"), Style.WHITE));
// Remscheid
STYLES.put("vrr|B655", new Style(Style.parseColor("#dbcd00"), Style.WHITE));
STYLES.put("vrr|B657", new Style(Style.parseColor("#deb993"), Style.WHITE));
STYLES.put("vrr|B659", new Style(Style.parseColor("#f59b00"), Style.WHITE));
STYLES.put("vrr|B660", new Style(Style.parseColor("#f5a387"), Style.WHITE));
STYLES.put("vrr|B664", new Style(Style.parseColor("#b1a8d3"), Style.WHITE));
STYLES.put("vrr|B666", new Style(Style.parseColor("#0074be"), Style.WHITE));
STYLES.put("vrr|B673", new Style(Style.parseColor("#ee7555"), Style.WHITE));
STYLES.put("vrr|B675", new Style(Style.parseColor("#004e9e"), Style.WHITE));
STYLES.put("vrr|B680", new Style(Style.parseColor("#c78711"), Style.WHITE));
STYLES.put("swr|B655", new Style(Style.parseColor("#dbcd00"), Style.WHITE));
STYLES.put("swr|B657", new Style(Style.parseColor("#deb993"), Style.WHITE));
STYLES.put("swr|B659", new Style(Style.parseColor("#f59b00"), Style.WHITE));
STYLES.put("swr|B660", new Style(Style.parseColor("#f5a387"), Style.WHITE));
STYLES.put("swr|B664", new Style(Style.parseColor("#b1a8d3"), Style.WHITE));
STYLES.put("swr|B666", new Style(Style.parseColor("#0074be"), Style.WHITE));
STYLES.put("swr|B673", new Style(Style.parseColor("#ee7555"), Style.WHITE));
STYLES.put("swr|B675", new Style(Style.parseColor("#004e9e"), Style.WHITE));
STYLES.put("swr|B680", new Style(Style.parseColor("#c78711"), Style.WHITE));
STYLES.put("swr|BNE14", new Style(Style.parseColor("#2d247b"), Style.WHITE));
STYLES.put("swr|BNE17", new Style(Style.parseColor("#ef7c00"), Style.WHITE));
STYLES.put("swr|BNE18", new Style(Style.parseColor("#e5007c"), Style.WHITE));
STYLES.put("swr|BNE20", new Style(Style.parseColor("#0a5d34"), Style.WHITE));
// Solingen
STYLES.put("vrr|B681", new Style(Style.parseColor("#016f42"), Style.WHITE));
STYLES.put("vrr|B682", new Style(Style.parseColor("#009b78"), Style.WHITE));
STYLES.put("vrr|B684", new Style(Style.parseColor("#009247"), Style.WHITE));
STYLES.put("vrr|B685", new Style(Style.parseColor("#539138"), Style.WHITE));
STYLES.put("vrr|B686", new Style(Style.parseColor("#a6c539"), Style.WHITE));
STYLES.put("vrr|B687", new Style(Style.parseColor("#406ab4"), Style.WHITE));
STYLES.put("vrr|B689", new Style(Style.parseColor("#8d5e48"), Style.WHITE));
STYLES.put("vrr|B690", new Style(Style.parseColor("#0099cd"), Style.WHITE));
STYLES.put("vrr|B691", new Style(Style.parseColor("#963838"), Style.WHITE));
STYLES.put("vrr|B693", new Style(Style.parseColor("#9a776f"), Style.WHITE));
STYLES.put("vrr|B695", new Style(Style.parseColor("#bf4b75"), Style.WHITE));
STYLES.put("vrr|B696", new Style(Style.parseColor("#6c77b4"), Style.WHITE));
STYLES.put("vrr|B697", new Style(Style.parseColor("#00baf1"), Style.WHITE));
STYLES.put("vrr|B698", new Style(Style.parseColor("#444fa1"), Style.WHITE));
STYLES.put("vrr|B699", new Style(Style.parseColor("#c4812f"), Style.WHITE));
STYLES.put("sws|B681", new Style(Style.parseColor("#016f42"), Style.WHITE));
STYLES.put("sws|B682", new Style(Style.parseColor("#009b78"), Style.WHITE));
STYLES.put("sws|B684", new Style(Style.parseColor("#009247"), Style.WHITE));
STYLES.put("sws|B685", new Style(Style.parseColor("#539138"), Style.WHITE));
STYLES.put("sws|B686", new Style(Style.parseColor("#a6c539"), Style.WHITE));
STYLES.put("sws|B687", new Style(Style.parseColor("#406ab4"), Style.WHITE));
STYLES.put("sws|B689", new Style(Style.parseColor("#8d5e48"), Style.WHITE));
STYLES.put("sws|B690", new Style(Style.parseColor("#0099cd"), Style.WHITE));
STYLES.put("sws|B691", new Style(Style.parseColor("#963838"), Style.WHITE));
STYLES.put("sws|B693", new Style(Style.parseColor("#9a776f"), Style.WHITE));
STYLES.put("sws|B695", new Style(Style.parseColor("#bf4b75"), Style.WHITE));
STYLES.put("sws|B696", new Style(Style.parseColor("#6c77b4"), Style.WHITE));
STYLES.put("sws|B697", new Style(Style.parseColor("#00baf1"), Style.WHITE));
STYLES.put("sws|B698", new Style(Style.parseColor("#444fa1"), Style.WHITE));
STYLES.put("sws|B699", new Style(Style.parseColor("#c4812f"), Style.WHITE));
STYLES.put("sws|BNE21", new Style(Style.parseColor("#000000"), Style.WHITE));
STYLES.put("sws|BNE22", new Style(Style.parseColor("#000000"), Style.WHITE));
STYLES.put("sws|BNE24", new Style(Style.parseColor("#000000"), Style.WHITE));
STYLES.put("sws|BNE25", new Style(Style.parseColor("#000000"), Style.WHITE));
STYLES.put("sws|BNE28", new Style(Style.parseColor("#000000"), Style.WHITE));
// Busse Wuppertal
STYLES.put("vrr|B600", new Style(Style.parseColor("#cc4e97"), Style.WHITE));
STYLES.put("vrr|B603", new Style(Style.parseColor("#a77251"), Style.WHITE));
STYLES.put("vrr|B604", new Style(Style.parseColor("#f39100"), Style.WHITE));
STYLES.put("vrr|B606", new Style(Style.parseColor("#88301b"), Style.WHITE));
STYLES.put("vrr|B607", new Style(Style.parseColor("#629e38"), Style.WHITE));
STYLES.put("vrr|B609", new Style(Style.parseColor("#53ae2e"), Style.WHITE));
STYLES.put("vrr|B610", new Style(Style.parseColor("#eb5575"), Style.WHITE));
STYLES.put("vrr|B611", new Style(Style.parseColor("#896a9a"), Style.WHITE));
STYLES.put("vrr|B612", new Style(Style.parseColor("#cd7c00"), Style.WHITE));
STYLES.put("vrr|B613", new Style(Style.parseColor("#491d5c"), Style.WHITE));
STYLES.put("vrr|B614", new Style(Style.parseColor("#00a7c1"), Style.WHITE));
STYLES.put("vrr|B616", new Style(Style.parseColor("#e4003a"), Style.WHITE));
STYLES.put("vrr|B617", new Style(Style.parseColor("#95114d"), Style.WHITE));
STYLES.put("vrr|B618", new Style(Style.parseColor("#cf8360"), Style.WHITE));
STYLES.put("vrr|B619", new Style(Style.parseColor("#304c9d"), Style.WHITE));
STYLES.put("vrr|B622", new Style(Style.parseColor("#aabd81"), Style.WHITE));
STYLES.put("vrr|B623", new Style(Style.parseColor("#e04a23"), Style.WHITE));
STYLES.put("vrr|B624", new Style(Style.parseColor("#0e9580"), Style.WHITE));
STYLES.put("vrr|B625", new Style(Style.parseColor("#7aad3b"), Style.WHITE));
STYLES.put("vrr|B628", new Style(Style.parseColor("#80753b"), Style.WHITE));
STYLES.put("vrr|B629", new Style(Style.parseColor("#dd72a1"), Style.WHITE));
STYLES.put("vrr|B630", new Style(Style.parseColor("#0074be"), Style.WHITE));
STYLES.put("vrr|B631", new Style(Style.parseColor("#5a8858"), Style.WHITE));
STYLES.put("vrr|B632", new Style(Style.parseColor("#ebac3d"), Style.WHITE));
STYLES.put("vrr|B633", new Style(Style.parseColor("#4c2182"), Style.WHITE));
STYLES.put("vrr|B635", new Style(Style.parseColor("#cb6c2b"), Style.WHITE));
STYLES.put("vrr|B638", new Style(Style.parseColor("#588d58"), Style.WHITE));
STYLES.put("vrr|B639", new Style(Style.parseColor("#0097c1"), Style.WHITE));
STYLES.put("vrr|B640", new Style(Style.parseColor("#89ba7a"), Style.WHITE));
STYLES.put("vrr|B642", new Style(Style.parseColor("#4b72aa"), Style.WHITE));
STYLES.put("vrr|B643", new Style(Style.parseColor("#009867"), Style.WHITE));
STYLES.put("vrr|B644", new Style(Style.parseColor("#a57400"), Style.WHITE));
STYLES.put("vrr|B645", new Style(Style.parseColor("#aeba0e"), Style.WHITE));
STYLES.put("vrr|B646", new Style(Style.parseColor("#008db5"), Style.WHITE));
STYLES.put("vrr|B650", new Style(Style.parseColor("#f5bd00"), Style.WHITE));
STYLES.put("wsw|B600", new Style(Style.parseColor("#cc4e97"), Style.WHITE));
STYLES.put("wsw|B603", new Style(Style.parseColor("#a77251"), Style.WHITE));
STYLES.put("wsw|B604", new Style(Style.parseColor("#f39100"), Style.WHITE));
STYLES.put("wsw|B606", new Style(Style.parseColor("#88301b"), Style.WHITE));
STYLES.put("wsw|B607", new Style(Style.parseColor("#629e38"), Style.WHITE));
STYLES.put("wsw|B609", new Style(Style.parseColor("#53ae2e"), Style.WHITE));
STYLES.put("wsw|B610", new Style(Style.parseColor("#eb5575"), Style.WHITE));
STYLES.put("wsw|B611", new Style(Style.parseColor("#896a9a"), Style.WHITE));
STYLES.put("wsw|B612", new Style(Style.parseColor("#cd7c00"), Style.WHITE));
STYLES.put("wsw|B613", new Style(Style.parseColor("#491d5c"), Style.WHITE));
STYLES.put("wsw|B614", new Style(Style.parseColor("#00a7c1"), Style.WHITE));
STYLES.put("wsw|B616", new Style(Style.parseColor("#e4003a"), Style.WHITE));
STYLES.put("wsw|B617", new Style(Style.parseColor("#95114d"), Style.WHITE));
STYLES.put("wsw|B618", new Style(Style.parseColor("#cf8360"), Style.WHITE));
STYLES.put("wsw|B619", new Style(Style.parseColor("#304c9d"), Style.WHITE));
STYLES.put("wsw|B622", new Style(Style.parseColor("#aabd81"), Style.WHITE));
STYLES.put("wsw|B623", new Style(Style.parseColor("#e04a23"), Style.WHITE));
STYLES.put("wsw|B624", new Style(Style.parseColor("#0e9580"), Style.WHITE));
STYLES.put("wsw|B625", new Style(Style.parseColor("#7aad3b"), Style.WHITE));
STYLES.put("wsw|B628", new Style(Style.parseColor("#80753b"), Style.WHITE));
STYLES.put("wsw|B629", new Style(Style.parseColor("#dd72a1"), Style.WHITE));
STYLES.put("wsw|B630", new Style(Style.parseColor("#0074be"), Style.WHITE));
STYLES.put("wsw|B631", new Style(Style.parseColor("#5a8858"), Style.WHITE));
STYLES.put("wsw|B632", new Style(Style.parseColor("#ebac3d"), Style.WHITE));
STYLES.put("wsw|B633", new Style(Style.parseColor("#4c2182"), Style.WHITE));
STYLES.put("wsw|B635", new Style(Style.parseColor("#cb6c2b"), Style.WHITE));
STYLES.put("wsw|B638", new Style(Style.parseColor("#588d58"), Style.WHITE));
STYLES.put("wsw|B639", new Style(Style.parseColor("#0097c1"), Style.WHITE));
STYLES.put("wsw|B640", new Style(Style.parseColor("#89ba7a"), Style.WHITE));
STYLES.put("wsw|B642", new Style(Style.parseColor("#4b72aa"), Style.WHITE));
STYLES.put("wsw|B643", new Style(Style.parseColor("#009867"), Style.WHITE));
STYLES.put("wsw|B644", new Style(Style.parseColor("#a57400"), Style.WHITE));
STYLES.put("wsw|B645", new Style(Style.parseColor("#aeba0e"), Style.WHITE));
STYLES.put("wsw|B646", new Style(Style.parseColor("#008db5"), Style.WHITE));
STYLES.put("wsw|B650", new Style(Style.parseColor("#f5bd00"), Style.WHITE));
STYLES.put("wsw|BNE1", new Style(Style.parseColor("#000000"), Style.WHITE));
STYLES.put("wsw|BNE2", new Style(Style.parseColor("#000000"), Style.WHITE));
STYLES.put("wsw|BNE3", new Style(Style.parseColor("#000000"), Style.WHITE));
STYLES.put("wsw|BNE4", new Style(Style.parseColor("#000000"), Style.WHITE));
STYLES.put("wsw|BNE5", new Style(Style.parseColor("#000000"), Style.WHITE));
STYLES.put("wsw|BNE6", new Style(Style.parseColor("#000000"), Style.WHITE));
STYLES.put("wsw|BNE7", new Style(Style.parseColor("#000000"), Style.WHITE));
STYLES.put("wsw|BNE8", new Style(Style.parseColor("#000000"), Style.WHITE));
// H-Bahn Dortmund
STYLES.put("vrr|CHB1", new Style(Style.parseColor("#e5007c"), Style.WHITE));
STYLES.put("vrr|CHB2", new Style(Style.parseColor("#e5007c"), Style.WHITE));
STYLES.put("dsw|CHB1", new Style(Style.parseColor("#e5007c"), Style.WHITE));
STYLES.put("dsw|CHB2", new Style(Style.parseColor("#e5007c"), Style.WHITE));
// Schwebebahn Wuppertal
STYLES.put("vrr|C60", new Style(Style.parseColor("#003090"), Style.WHITE));
STYLES.put("wsw|C60", new Style(Style.parseColor("#003090"), Style.WHITE));
// Stadtbahn Köln-Bonn
STYLES.put("vrs|T1", new Style(Style.parseColor("#ed1c24"), Style.WHITE));
@ -331,6 +397,7 @@ public class VrrProvider extends AbstractEfaProvider
STYLES.put("owl|T1", new Style(Style.parseColor("#00aeef"), Style.WHITE));
STYLES.put("owl|T2", new Style(Style.parseColor("#00a650"), Style.WHITE));
STYLES.put("owl|T3", new Style(Style.parseColor("#fff200"), Style.BLACK));
STYLES.put("owl|T4", new Style(Style.parseColor("#e2001a"), Style.WHITE));
// Busse Bonn
STYLES.put("vrs|B63", new Style(Style.parseColor("#0065ae"), Style.WHITE));