decoupled via extension point and upped version number