+sub route_pc24
+{
+ my $self = shift;
+ broadcast_route($self, \&pc24, 1, @_);
+}
+
+sub route_pc41
+{
+ my $self = shift;
+ broadcast_route($self, \&pc41, 1, @_);
+}
+
+sub route_pc50
+{
+ my $self = shift;
+ broadcast_route($self, \&pc50, 1, @_);
+}
+
+
+
+sub eph_dup
+{
+ my $s = shift;
+
+ # chop the end off
+ $s =~ s/\^H\d\d?\^?~?$//;
+ return 1 if exists $eph{$s};
+ $eph{$s} = $main::systime;
+ return undef;
+}
+
+sub eph_clean
+{
+ my ($key, $val);
+
+ while (($key, $val) = each %eph) {
+ if ($main::systime - $val > 90) {
+ delete $eph{$key};
+ }
+ }
+}
+