supersimple generation added