Generator base class and simlpe countdown