enum online learning implementation