add learn api