updated with valid semantic version