Rational class impl and client to test it