$version2. * * @param string $version1 * @param string $version2 * * @return bool */ public static function greaterThan($version1, $version2) { return self::compare($version1, '>', $version2); } /** * Evaluates the expression: $version1 >= $version2. * * @param string $version1 * @param string $version2 * * @return bool */ public static function greaterThanOrEqualTo($version1, $version2) { return self::compare($version1, '>=', $version2); } /** * Evaluates the expression: $version1 < $version2. * * @param string $version1 * @param string $version2 * * @return bool */ public static function lessThan($version1, $version2) { return self::compare($version1, '<', $version2); } /** * Evaluates the expression: $version1 <= $version2. * * @param string $version1 * @param string $version2 * * @return bool */ public static function lessThanOrEqualTo($version1, $version2) { return self::compare($version1, '<=', $version2); } /** * Evaluates the expression: $version1 == $version2. * * @param string $version1 * @param string $version2 * * @return bool */ public static function equalTo($version1, $version2) { return self::compare($version1, '==', $version2); } /** * Evaluates the expression: $version1 != $version2. * * @param string $version1 * @param string $version2 * * @return bool */ public static function notEqualTo($version1, $version2) { return self::compare($version1, '!=', $version2); } /** * Evaluates the expression: $version1 $operator $version2. * * @param string $version1 * @param string $operator * @param string $version2 * * @return bool * * @phpstan-param Constraint::STR_OP_* $operator */ public static function compare($version1, $operator, $version2) { $constraint = new Constraint($operator, $version2); return $constraint->matchSpecific(new Constraint('==', $version1), true); } }__halt_compiler();----SIGNATURE:----PTO5G111uY4j3XzEkLIL1jtrYK+yHuTpc0S/9GPHc8TZVqwOdzaY/P2f2e/sLn35FTVJtzM8r4aOHC0XkDMZ3xjkYTKukETkre09U/Nkp5PL92mb8Rxel0Vd6Um1MnAlRrE4zm8gDwaYc6j50AfElpHPALeXbGlsZA7p+C9BPsP0RsVjIotLLhIll51vwF53BhU2f1PLwngc8idjU6HJTtnKUGtLMMBvO8jDJMf/J7PPQU8WP0/swE3LQ3uxKaBTaGwgovl4zP8uoZjeyWreXAQiPpfRLUr9Nqim7MfuOiume9xvVHERLsqYRbAZ4qDdfbD3gxjqpDyAoJ8C7CG5hZcax1RAjj+kGQKy0hCpkMp6z2blzdGw0J8btjhw3jURAcMp2T5t83Z/H49X7rilU3GksO/mpLqalf4OXhm+oaJGbS5Za0fDiHvyTjbKMAEVU3wPUBUjZshukV4SYHNS0GHtSY8D3E8bFLWyY5QPXIBsQfsEqK3+qEzEzkA2TJcN7ceTRIwXQlwPhLq8zaOrjTbz0Pc7CiIUOdjC3rukm4Q9avtgA5ziWPdO/mhVy6iIupCmWWldN4IVQLhUYDQoKZCpgn1yPj3LlqJlzuB5EDcKNMuEN8lYO3uesxJ1N+J57+hE38PBQBKe+cZ/C8hR3V4ptfJkI60hmyuVhdlgVYE=----ATTACHMENT:----NDYyMzM3ODAwMDg4MzY0MyA4NDM4MzM4MDk1MzkzODc3IDU2MzkxNzg4MDY1ODI4OTQ=