bool isAtLeast(int major, [int? minor, int? patch]) { return (this.major >= major && (minor == null || this.minor >= minor) && (patch == null || this.patch >= patch)); }