@Override
public IAllele[] getTemplate() {
if (defaultTemplate == null) {
defaultTemplate = new IAllele[EnumTreeChromosome.values().length];
AlleleHelper.getInstance().set(defaultTemplate, EnumTreeChromosome.FRUITS, AlleleFruits.fruitNone);
AlleleHelper.getInstance().set(defaultTemplate, EnumTreeChromosome.HEIGHT, EnumAllele.Height.SMALL);
AlleleHelper.getInstance().set(defaultTemplate, EnumTreeChromosome.FERTILITY, EnumAllele.Saplings.LOWER);
AlleleHelper.getInstance().set(defaultTemplate, EnumTreeChromosome.YIELD, EnumAllele.Yield.LOWEST);
AlleleHelper.getInstance().set(defaultTemplate, EnumTreeChromosome.SAPPINESS, EnumAllele.Sappiness.LOWEST);
AlleleHelper.getInstance().set(defaultTemplate, EnumTreeChromosome.EFFECT, AlleleLeafEffects.leavesNone);
AlleleHelper.getInstance().set(defaultTemplate, EnumTreeChromosome.MATURATION, EnumAllele.Maturation.AVERAGE);
AlleleHelper.getInstance().set(defaultTemplate, EnumTreeChromosome.GIRTH, 1);
AlleleHelper.getInstance().set(defaultTemplate, EnumTreeChromosome.FIREPROOF, EnumAllele.Fireproof.FALSE);
}
return Arrays.copyOf(defaultTemplate, defaultTemplate.length);
}