Index: cpp/frams/genetics/f1/conv_f1.cpp
===================================================================
--- cpp/frams/genetics/f1/conv_f1.cpp	(revision 532)
+++ cpp/frams/genetics/f1/conv_f1.cpp	(revision 534)
@@ -111,5 +111,5 @@
 builder.model.close(); // model is ready to use now
 if (map) builder.model.getCurrentToF0Map(*map); // generate f1-to-f0 conversion map
-return builder.model.getF0Geno().getGene();
+return builder.model.getF0Geno().getGenes();
 }
 
Index: cpp/frams/genetics/f4/conv_f4.cpp
===================================================================
--- cpp/frams/genetics/f4/conv_f4.cpp	(revision 532)
+++ cpp/frams/genetics/f4/conv_f4.cpp	(revision 534)
@@ -32,5 +32,5 @@
 		// generate to-f0 conversion map
 		model->getCurrentToF0Map(*map);
-	SString out = model->getF0Geno().getGene();
+	SString out = model->getF0Geno().getGenes();
 	delete model;
 	return out;
Index: cpp/frams/genetics/f9/conv_f9.cpp
===================================================================
--- cpp/frams/genetics/f9/conv_f9.cpp	(revision 532)
+++ cpp/frams/genetics/f9/conv_f9.cpp	(revision 534)
@@ -56,5 +56,5 @@
 	if (map != NULL)
 		m.getCurrentToF0Map(*map);
-	return m.getF0Geno().getGene();
+	return m.getF0Geno().getGenes();
 }
 
Index: cpp/frams/genetics/genman.cpp
===================================================================
--- cpp/frams/genetics/genman.cpp	(revision 532)
+++ cpp/frams/genetics/genman.cpp	(revision 534)
@@ -198,5 +198,5 @@
 int GenMan::testValidity(Geno &g, bool &canvalidate)
 {
-	SString ggs=g.getGene();
+	SString ggs=g.getGenes();
 	const char *gg = ggs.c_str();
 	GenoOperators *gf = getOper_f(g.getFormat());
@@ -210,8 +210,8 @@
 	if (check1 == GENOPER_NOOPER) //disaster: cannot check because there is no check operator
 	{
-		g.setGeneOnly(g2); free(g2); canvalidate = false; return GENOPER_NOOPER;
+		g.setGenesAssumingSameFormat(g2); free(g2); canvalidate = false; return GENOPER_NOOPER;
 	}
 	int check2 = gf->checkValidity(g2, "validated");
-	if (check2 == GENOPER_OK) g.setGeneOnly(g2);
+	if (check2 == GENOPER_OK) g.setGenesAssumingSameFormat(g2);
 	free(g2);
 	if (check2 == GENOPER_OK) return check1;
@@ -237,5 +237,5 @@
 	if (gf == NULL)
 		return Geno(SString::empty(), -1, SString::empty(), SString::sprintf("GENOPER_NOOPER: Validate(): don't know how to handle genetic format %c", format));
-	char *g2 = strdup(geny.getGene().c_str()); //copy for validation
+	char *g2 = strdup(geny.getGenes().c_str()); //copy for validation
 	int res = gf->validate(g2, geny.getName().c_str());
 	SString sg2 = g2;
@@ -263,5 +263,5 @@
 	while (!ok)
 	{
-		char *gn = strdup(gv.getGene().c_str()); //copy for mutation
+		char *gn = strdup(gv.getGenes().c_str()); //copy for mutation
 		chg = 0;
 		if (gf->mutate(gn, chg, method) == GENOPER_OK)
@@ -284,10 +284,10 @@
 		if (!ok && (count - pcount > 100))
 		{
-			logPrintf("GenMan", "Mutate", 2, "Tried 100x and failed: %s", g.getGene().c_str());
+			logPrintf("GenMan", "Mutate", 2, "Tried 100x and failed: %s", g.getGenes().c_str());
 			return Geno("", -1, "", "GENOPER_OPFAIL: Mutate() tried 100x and failed");
 		}
 	}
 	mutchg += chg;
-	if (history) saveLink(g.getGene().c_str(), "", gv.getGene().c_str(), chg);
+	if (history) saveLink(g.getGenes().c_str(), "", gv.getGenes().c_str(), chg);
 	SString mutinfo;
 	if (extmutinfo == 0) mutinfo = SString::sprintf("%.2f%% mutation of '%s'", 100 * chg, g.getName().c_str()); else
@@ -324,6 +324,6 @@
 	{
 		float chg1, chg2;
-		char *g1n = strdup(g1.getGene().c_str()); //copy for crossover
-		char *g2n = strdup(g2.getGene().c_str()); //copy for crossover
+		char *g1n = strdup(g1.getGenes().c_str()); //copy for crossover
+		char *g2n = strdup(g2.getGenes().c_str()); //copy for crossover
 		chg1 = chg2 = 0;
 		if (gf->crossOver(g1n, g2n, chg1, chg2) == GENOPER_OK)
@@ -351,5 +351,5 @@
 		if (!ok && (count - pcount > 100))
 		{
-			logPrintf("GenMan", "CrossOver", 2, "Tried 100x and failed: %s and %s", g1.getGene().c_str(), g2.getGene().c_str());
+			logPrintf("GenMan", "CrossOver", 2, "Tried 100x and failed: %s and %s", g1.getGenes().c_str(), g2.getGenes().c_str());
 			return Geno("", -1, "", "GENOPER_OPFAIL: CrossOver() tried 100x and failed");
 		}
@@ -357,5 +357,5 @@
 	// result in g1v
 	xochg += chg;
-	if (history) saveLink(g1.getGene().c_str(), g2.getGene().c_str(), g1v.getGene().c_str(), chg);
+	if (history) saveLink(g1.getGenes().c_str(), g2.getGenes().c_str(), g1v.getGenes().c_str(), chg);
 	SString xoinfo = SString::sprintf("Crossing over of '%s' (%.2f%%) and '%s' (%.2f%%)",
 		g1.getName().c_str(), 100 * chg, g2.getName().c_str(), 100 * (1 - chg));
@@ -369,5 +369,5 @@
 	if (format != g2.getFormat()) return GENOPER_NOOPER;
 	GenoOperators *gf = getOper_f(format);
-	if (!gf) return GENOPER_NOOPER; else return gf->similarity(g1.getGene().c_str(), g2.getGene().c_str());
+	if (!gf) return GENOPER_NOOPER; else return gf->similarity(g1.getGenes().c_str(), g2.getGenes().c_str());
 }
 
@@ -380,5 +380,5 @@
 	GenoOperators *gf = getOper_f(format);
 	if (!gf) return GENSTYLE_CS(0, 0); //black & valid
-	else return gf->style(G->getGene().c_str(), pos);
+	else return gf->style(G->getGenes().c_str(), pos);
 }
 
@@ -399,5 +399,5 @@
 	}
 	GenoOperators *gf = getOper_f(format);
-	SString geny=G->getGene();
+	SString geny=G->getGenes();
 	for (unsigned int pos = 0; pos < strlen(g); pos++)
 	{
Index: cpp/frams/genetics/geno.cpp
===================================================================
--- cpp/frams/genetics/geno.cpp	(revision 532)
+++ cpp/frams/genetics/geno.cpp	(revision 534)
@@ -32,8 +32,8 @@
 	name = genname;
 	txt = comment;
-	setGeneAndFormat(genstring,genformat);
-}
-
-void Geno::setGeneAndFormat(const SString& genstring, char genformat)
+	setGenesAndFormat(genstring,genformat);
+}
+
+void Geno::setGenesAndFormat(const SString& genstring, char genformat)
 {
 	mapinshift = 0;
@@ -151,5 +151,5 @@
 }
 
-void Geno::setGeneOnly(const SString& g)
+void Geno::setGenesAssumingSameFormat(const SString& g)
 {
 	gen = g;
@@ -174,5 +174,5 @@
 }
 
-SString Geno::getGeneAndFormat(void) const
+SString Geno::getGenesAndFormat(void) const
 {
 	SString out;
@@ -211,5 +211,5 @@
 }
 
-SString Geno::getGene(void) const { return gen; }
+SString Geno::getGenes(void) const { return gen; }
 SString Geno::getName(void) const { return name; }
 char Geno::getFormat(void) const { return format; }
Index: cpp/frams/genetics/geno.h
===================================================================
--- cpp/frams/genetics/geno.h	(revision 532)
+++ cpp/frams/genetics/geno.h	(revision 534)
@@ -1,4 +1,4 @@
 // This file is a part of Framsticks SDK.  http://www.framsticks.com/
-// Copyright (C) 1999-2015  Maciej Komosinski and Szymon Ulatowski.
+// Copyright (C) 1999-2016  Maciej Komosinski and Szymon Ulatowski.
 // See LICENSE.txt for details.
 
@@ -85,13 +85,13 @@
 
 	/// return string representation, with format comment at the beginning
-	SString getGeneAndFormat(void) const;
+	SString getGenesAndFormat(void) const;
 
 	void setString(const SString& genewithcomments);
 
-	/** @param genformat=-1 -> take from genstring comment (like the constructor) else specify the valid format in genformat and pure gene in genstring */
-	void setGeneAndFormat(const SString& genstring, char genformat=-1);
-	/** g must be pure gene, without format. for the standard behavior use setGeneAndFormat() */
-	void setGeneOnly(const SString& g);
-	SString getGene(void) const;
+	/** @param genformat=-1 -> detect genotype format from genstring comment (like the constructor does), else specify the valid format in genformat and pure genes in genstring. */
+	void setGenesAndFormat(const SString& genstring, char genformat=-1);
+	/** g must be pure genes, without format. For the standard behavior use setGenesAndFormat() */
+	void setGenesAssumingSameFormat(const SString& g);
+	SString getGenes(void) const;
 
 	SString getName(void) const;
Index: cpp/frams/genetics/genoconv.cpp
===================================================================
--- cpp/frams/genetics/genoconv.cpp	(revision 532)
+++ cpp/frams/genetics/genoconv.cpp	(revision 534)
@@ -181,5 +181,5 @@
 	char *t = path;
 	SString tmp;
-	tmp = in.getGene();
+	tmp = in.getGenes();
 	MultiMap lastmap, tmpmap;
 	int firstmap = 1;
