Adding Version Abstract class