more work on enumerable