work on predict and learn interface.