diff --git a/src/pregmod/editGenetics.tw b/src/pregmod/editGenetics.tw
index 171bd10489caa6721b235d590bdcce4cca6c2810..18afeacda2868d5af973a811c023ac7542426fa5 100644
--- a/src/pregmod/editGenetics.tw
+++ b/src/pregmod/editGenetics.tw
@@ -1,15 +1,24 @@
 :: Edit Genetics [nobr]
+
 <html>
 <script type="text/x-template" id="birthFullNameTmpl">
-	<% if(["Chinese", "Japanese", "Korean", "Cambodian", "Vietnamese", "Hungarian"].includes(s.nationality)) {
-		%><% if(s.birthSurname || s.surname) {	%><%- s.birthSurname || s.surname%> <% } %><b><u><%- s.birthName || s.name %></u></b><%
+	<% if(State.variables.surnameOrder != 1) {
+		%><% if(["Chinese", "Japanese", "Korean", "Cambodian", "Vietnamese", "Hungarian", "Mongolian"].includes(s.nationality)) {
+			%><% if(s.birthSurname || s.surname) {	%><%- s.birthSurname || s.surname%> <% } %><b><u><%- s.birthName || s.name %></u></b><%
+		} else {
+			%><b><u><%- s.birthName || s.name %></u></b><% if(s.birthSurname || s.surname) { %> <%- s.birthSurname || s.surname %><% } %><%
+		} %><%
 	} else {
 		%><b><u><%- s.birthName || s.name %></u></b><% if(s.birthSurname || s.surname) { %> <%- s.birthSurname || s.surname %><% } %><%
 	} %>
 </script>
 <script type="text/x-template" id="currentFullNameTmpl">
-	<% if(["Chinese", "Japanese", "Korean", "Cambodian", "Vietnamese", "Hungarian"].includes(s.nationality)) {
-		%><% if(s.slaveSurname) {	%><%- s.slaveSurname %> <% } %><b><u><%- s.slaveName %></u></b><%
+	<% if(State.variables.surnameOrder != 1) {
+		%><% if(["Chinese", "Japanese", "Korean", "Cambodian", "Vietnamese", "Hungarian", "Mongolian"].includes(s.nationality)) {
+			%><% if(s.slaveSurname) {	%><%- s.slaveSurname %> <% } %><b><u><%- s.slaveName %></u></b><%
+		} else {
+			%><b><u><%- s.slaveName %></u></b><% if(s.slaveSurname) { %> <%- s.slaveSurname %><% } %><%
+		} %><%
 	} else {
 		%><b><u><%- s.slaveName %></u></b><% if(s.slaveSurname) { %> <%- s.slaveSurname %><% } %><%
 	} %>
@@ -124,7 +133,7 @@
 		}[String(karyotype).toUpperCase()] || 'unknown/not viable';
 	};
 	tmpl.ageDesc = function(slave) {
-		var age = slave.actualAge + (slave.birthWeek + SugarCube.State.variables.week - slave.weekAcquired) / 52.0;
+		var age = slave.actualAge + (slave.birthWeek + State.variables.week - slave.weekAcquired) / 52.0;
 		var years = Math.floor(age);
 		var months = Math.floor((age - years) * 12);
 		return (years > 0 ? years + 'y ' + months + 'm' : months + 'm');
@@ -191,9 +200,9 @@
 		if(id === 0) { return '<i>unknown</i>'; }
 		if(id === -1) {
 			/* The PC */
-			return tmpl.birthFullName(SugarCube.State.variables.PC) + ' (PC)';
+			return tmpl.birthFullName(State.variables.PC) + ' (PC)';
 		} else {
-			var parent = SugarCube.State.variables.genePool.find(function(s) { return s.ID === id; });
+			var parent = State.variables.genePool.find(function(s) { return s.ID === id; });
 			return (parent ? tmpl.birthFullName(parent) : '<i>missing</i>') + ' (' + id + ')';
 		}
 	};