added DiscreteLog.java