added algo class