add function version_compare