extracted asset generators to the separate class