diff --git a/events.txt b/events.txt
index fc62e5451e65d9c4f17242d0529c9b4de0d4082e..d9aa030de807e5a152eaa1422af60f3fca1b36a5 100644
--- a/events.txt
+++ b/events.txt
@@ -1,9 +1,9 @@
 C was bitten by drdink
 C fell into a hole
 C bit their tongue
-C set <g>self on fire
+C set <p_obj>self on fire
 C ate a poisonous fruit
-C lost <g_pos> mind
+C lost <p_poss> mind
 C died, temporarily..
 C was caught in a terrible snowstorm
 C EXPLODED, somewhat..
diff --git a/irpg_bot.pl b/irpg_bot.pl
index a4477c8d90a056959dda8524d5dfd01593c784de..a9fe8414a64aa9e7067c91f796be9cce2adb103b 100644
--- a/irpg_bot.pl
+++ b/irpg_bot.pl
@@ -256,6 +256,7 @@ sts("USER $opts{botuser} 0 0 :$opts{botrlnm}");
 #    MAIN LOOP    #
 #-----------------#
 while (1) {
+	# CHECK MSG -> Irc module
     my($readable) = IO::Select->select($sel,undef,undef,0.5);
     if (defined($readable)) {
         my $fh = $readable->[0];
@@ -280,7 +281,10 @@ while (1) {
             close($fh);
             $sel->remove($fh);
 
+			# to keep ---
             if ($opts{reconnect}) {
+			# to keep ---
+				# reconnect sub in Irc
                 undef(@queue);
                 undef($sock);
                 debug("Socket closed; disconnected. Cleared outgoing message ".
@@ -289,7 +293,9 @@ while (1) {
                 sleep($opts{reconnect_wait});
                 goto CONNECT;
             }
+			# to keep ---
             else { debug("Socket closed; disconnected.",1); }
+			# to keep ---
         }
     }
     else { select(undef,undef,undef,1); }
@@ -1166,11 +1172,20 @@ sub ts { # timestamp
 }
 
 sub pronoun {
+	my $type = {1=>'subj',
+				2=>'poss',
+				3=>'obj'}->{shift};
+	return undef unless defined $type;
 	my $gender = shift;
-	my $poss = shift;
-	if ($gender eq 'm') { return $poss ? 'his' : 'him'; }
-	if ($gender eq 'f') { return 'her'; }
-	if ($gender eq 'n') { return $poss ? 'their' : 'them'; }
+	if ($gender eq 'm') { return {'subj'=>'he',
+								  'poss'=>'his',
+								  'obj'=>'him'}->{$type};}
+	if ($gender eq 'f') { return {'subj'=>'she',
+								  'poss'=>'her',
+								  'obj'=>'her'}->{$type};}
+	return {'subj'=>'they',
+			'poss'=>'their',
+			'obj'=>'them'}->{$type};
 }
 
 sub hog { # summon the hand of god
@@ -1891,12 +1906,12 @@ sub calamity { # suffer a little one
             chomp($line);
             if ($line =~ /^C (.*)/ && rand(++$i) < 1) { $actioned = $1; }
         }
-		my $pron = pronoun($rps{$player}{gender});
-		my $pron_poss = pronoun($rps{$player}{gender}, 1);
-		$actioned =~ s/<g>/$pron/g;
-		$actioned =~ s/<g_pos>/$pron_poss/g;
+		my $pron_obj = pronoun(3, $rps{$player}{gender});
+		my $pron_poss = pronoun(2, $rps{$player}{gender});
+		$actioned =~ s/<p_obj>/$pron_obj/g;
+		$actioned =~ s/<p_poss>/$pron_poss/g;
         chanmsg(clog("$player $actioned. This terrible calamity has slowed ".
-                     $pron." ".duration($time)." from level ".
+                     $pron_obj." ".duration($time)." from level ".
                      ($rps{$player}{level}+1)."."));
         $rps{$player}{next} += $time;
         chanmsg("$player reaches next level in ".duration($rps{$player}{next}).
@@ -1952,12 +1967,12 @@ sub godsend { # bless the unworthy
             chomp($line);
             if ($line =~ /^G (.*)/ && rand(++$i) < 1) { $actioned = $1; }
         }
-		my $pron = pronoun($rps{$player}{gender});
-		my $pron_poss = pronoun($rps{$player}{gender}, 1);
-		$actioned =~ s/<g>/$pron/g;
-		$actioned =~ s/<g_pos>/$pron_poss/g;
+		my $pron_obj = pronoun(3, $rps{$player}{gender});
+		my $pron_poss = pronoun(2, $rps{$player}{gender});
+		$actioned =~ s/<p_obj>/$pron_obj/g;
+		$actioned =~ s/<g_poss>/$pron_poss/g;
         chanmsg(clog("$player $actioned! This wondrous godsend has ".
-                     "accelerated ".$pron." ".duration($time).
+                     "accelerated ".$pron_obj." ".duration($time).
 					 " towards level ".($rps{$player}{level}+1)."."));
         $rps{$player}{next} -= $time;
         chanmsg("$player reaches next level in ".duration($rps{$player}{next}).
@@ -2191,7 +2206,7 @@ sub collision_fight {
         $gain = 7 if $gain < 7;
         $gain = int(($gain/100)*$rps{$u}{next});
         chanmsg(clog("$u [$myroll/$mysum] has come upon $opp [$opproll/$oppsum".
-                     "] and taken ".pronoun($rps{$opp}{gender})." in combat! ".duration($gain)." is ".
+                     "] and taken ".pronoun(3, $rps{$opp}{gender})." in combat! ".duration($gain)." is ".
                      "removed from $u\'s clock."));
         $rps{$u}{next} -= $gain;
         chanmsg("$u reaches next level in ".duration($rps{$u}{next}).".");
@@ -2304,8 +2319,11 @@ sub evilness {
             $rps{$me}{item}{$type} = $rps{$target}{item}{$type};
             $rps{$target}{item}{$type} = $tempitem;
             chanmsg(clog("$me stole $target\'s level ".
-                         int($rps{$me}{item}{$type})." $type while they were ".
-                         "sleeping! $me leaves his old level ".
+                         int($rps{$me}{item}{$type})." $type while ".
+						 pronoun(1, $rps{$target}{gender}).
+						 ($rps{$target}{gender} eq 'n' ? " were " : " was ").
+                         "sleeping! $me leaves ".
+						 pronoun(2, $rps{$me}{gender})." old level ".
                          int($rps{$target}{item}{$type})." $type behind, ".
                          "which $target then takes."));
         }