factory RationalNumber(int dividend, int divisor) { var gcd = dividend.gcd(divisor); return RationalNumber._(dividend ~/ gcd, divisor ~/ gcd); }