Rational.java