generation w\out using files but long