explanation of ddmlib versioning