extend enumerable