diff --git a/Changelog b/Changelog
index 142e01dbdf86f8c40faa0644f61cee39d859a83a..27892587299e1f407674b1894c60c58c87440fb0 100644
--- a/Changelog
+++ b/Changelog
@@ -1,7 +1,8 @@
-git HEAD
+Travel::Routing::DE::VRR 2.14 - Mon Oct 19 2015
 
     * Remove support for the STV / Verbundlinie Steiermark EFA entry point
       (returns data with broken encoding)
+    * Add VVO, VRN, VMV, KVV, TLEM and VBL EFA entry points
 
 Travel::Routing::DE::VRR 2.13 - Thu Jul 23 2015
 
diff --git a/bin/efa b/bin/efa
index 4449970c55bf4034b191e9c47604ef5bfe69f1a4..d31a154c923f82de30fd54b292e98840e8a951c0 100755
--- a/bin/efa
+++ b/bin/efa
@@ -16,7 +16,7 @@ use Exception::Class;
 use Getopt::Long qw/:config no_ignore_case/;
 use List::Util qw(first);
 
-our $VERSION = '2.13';
+our $VERSION = '2.14';
 my $ignore_info;
 my $efa;
 my $efa_url = 'http://efa.vrr.de/vrr/XSLT_TRIP_REQUEST2';
@@ -455,7 +455,7 @@ efa - unofficial efa.vrr.de command line client
 
 =head1 VERSION
 
-version 2.13
+version 2.14
 
 =head1 DESCRIPTION
 
diff --git a/lib/Travel/Routing/DE/EFA.pm b/lib/Travel/Routing/DE/EFA.pm
index a9d6abe281b1d0aa02d0b2ca1dbefccfe6478734..61c323e55bc51e93781f27cecc0cbdcc1a61a63a 100644
--- a/lib/Travel/Routing/DE/EFA.pm
+++ b/lib/Travel/Routing/DE/EFA.pm
@@ -41,7 +41,7 @@ use Exception::Class (
 	},
 );
 
-our $VERSION = '2.13';
+our $VERSION = '2.14';
 
 sub set_time {
 	my ( $self, %conf ) = @_;
@@ -993,7 +993,7 @@ Travel::Routing::DE::EFA - unofficial interface to EFA-based itinerary services
 
 =head1 VERSION
 
-version 2.13
+version 2.14
 
 =head1 DESCRIPTION
 
diff --git a/lib/Travel/Routing/DE/EFA/Route.pm b/lib/Travel/Routing/DE/EFA/Route.pm
index 71449eb93fea8904729e0b80aa7c775241f476ea..5aea84229f4f76fd18d004c47d00984e432e8ffb 100644
--- a/lib/Travel/Routing/DE/EFA/Route.pm
+++ b/lib/Travel/Routing/DE/EFA/Route.pm
@@ -8,7 +8,7 @@ use parent 'Class::Accessor';
 
 use Travel::Routing::DE::EFA::Route::Part;
 
-our $VERSION = '2.13';
+our $VERSION = '2.14';
 
 Travel::Routing::DE::EFA::Route->mk_ro_accessors(
 	qw(duration ticket_text ticket_type fare_adult fare_child vehicle_time));
@@ -52,7 +52,7 @@ Travel::Routing::DE::EFA::Route - Single route (connection) between two points
 
 =head1 VERSION
 
-version 2.13
+version 2.14
 
 =head1 DESCRIPTION
 
diff --git a/lib/Travel/Routing/DE/EFA/Route/Message.pm b/lib/Travel/Routing/DE/EFA/Route/Message.pm
index d81e39d025ea0f74e8e9eb1ffd58151198a0d9f1..d8fa3b37abeefc0ef639ba2911459a04b5588449 100644
--- a/lib/Travel/Routing/DE/EFA/Route/Message.pm
+++ b/lib/Travel/Routing/DE/EFA/Route/Message.pm
@@ -6,7 +6,7 @@ use 5.010;
 
 use parent 'Class::Accessor';
 
-our $VERSION = '2.13';
+our $VERSION = '2.14';
 
 Travel::Routing::DE::EFA::Route::Message->mk_ro_accessors(
 	qw(is_detailed summary subject subtitle raw_content));
@@ -58,7 +58,7 @@ route or route part.
 
 =head1 VERSION
 
-version 2.13
+version 2.14
 
 =head1 DESCRIPTION
 
diff --git a/lib/Travel/Routing/DE/EFA/Route/Part.pm b/lib/Travel/Routing/DE/EFA/Route/Part.pm
index 0aa15e0d242dd791f7fe803af6c2a2161163e795..ba78e6853e17747cc11682088932c3f9b0a108d6 100644
--- a/lib/Travel/Routing/DE/EFA/Route/Part.pm
+++ b/lib/Travel/Routing/DE/EFA/Route/Part.pm
@@ -6,7 +6,7 @@ use 5.010;
 
 use parent 'Class::Accessor';
 
-our $VERSION = '2.13';
+our $VERSION = '2.14';
 
 Travel::Routing::DE::EFA::Route::Part->mk_ro_accessors(
 	qw(arrival_platform arrival_stop
@@ -145,7 +145,7 @@ points, without interchanges
 
 =head1 VERSION
 
-version 2.13
+version 2.14
 
 =head1 DESCRIPTION
 
diff --git a/lib/Travel/Routing/DE/VRR.pm b/lib/Travel/Routing/DE/VRR.pm
index 2ecad820337b682e6c88c2cfdd501acd24bd38d4..6144b7c2ec6f4b196a81e18b05af32a27e89cb97 100644
--- a/lib/Travel/Routing/DE/VRR.pm
+++ b/lib/Travel/Routing/DE/VRR.pm
@@ -6,7 +6,7 @@ use 5.010;
 
 no if $] >= 5.018, warnings => "experimental::smartmatch";
 
-our $VERSION = '2.13';
+our $VERSION = '2.14';
 
 use parent 'Travel::Routing::DE::EFA';
 
@@ -50,7 +50,7 @@ Travel::Routing::DE::VRR - unofficial interface to the efa.vrr.de German itinera
 
 =head1 VERSION
 
-version 2.13
+version 2.14
 
 =head1 DESCRIPTION