Revised learn() and start working on run().