diff --git a/stats.sty b/stats.sty
index 145556d52867ccf47aa8a2c08eeefc22b4ae9f80..dca056762773834ec6c67ca5912af0c97a42eb81 100644
--- a/stats.sty
+++ b/stats.sty
@@ -842,3 +842,107 @@
     \stepcounter{#2}%
   }%
 }
+
+%%%%%%%%%%%%%%%%%%%% Human Names
+
+\newcounter{humanNameNo}
+  \setcounter{humanNameNo}{\value{r12}}
+\newcounter{humanNameSuffNo}
+  \setcounter{humanNameSuffNo}{\value{r4}}
+
+\newcommand\humanNamePrefix{%
+  \randomfour%
+  \addtocounter{humanNameNo}{\value{r4}}%
+  \ifnum\value{humanNameNo}>19\addtocounter{humanNameNo}{-19}\fi%
+  \expandafter\expandafter\ifcase\value{humanNameNo}\relax%
+  \or%
+    Grit%
+  \or%
+    Rank%
+  \or%
+    Scour%
+  \or%
+    Steer%
+  \or%
+    Mush%
+  \or%
+    Stoat%
+  \or%
+    Court%
+  \or%
+    Glum%
+  \or%
+    Flic%
+  \or%
+    Dug%
+  \or%
+    Nark%
+  \or%
+    Nettle%
+  \or%
+    Slate%
+  \or%
+    Gourse%
+  \or%
+    Cinder%
+  \or%
+    Soot%
+  \or%
+    Moc%
+  \or%
+    Keel%
+  \else%
+    Gout%
+  \fi%
+}
+
+\newcommand\humanNameSuffix{%
+  \randomthreeB%
+  \addtocounter{humanNameSuffNo}{\value{r3b}}%
+  \ifnum\value{humanNameSuffNo}>19\addtocounter{humanNameSuffNo}{-19}\fi%
+  \ifcase\value{humanNameSuffNo}\relax%
+  \or%
+    itch%
+  \or%
+    vore%
+  \or%
+    snag%
+  \or%
+    peel%
+  \or%
+    groat%
+  \or%
+    fen%
+  \or%
+    nash%
+  \or%
+    nail%
+  \or%
+    rash%
+  \or%
+    flay%
+  \or%
+    boak%
+  \or%
+    broil%
+  \or%
+    pike%
+  \or%
+    filch%
+  \or%
+    snatch%
+  \or%
+    flea%
+  \or%
+    fray%
+  \or%
+    rag%
+  \else%
+    blathe%
+  \fi%
+}
+
+\newcommand\composeHumanName{%
+  \humanNamePrefix\humanNameSuffix%
+}
+