sub AUTOLOAD { our $AUTOLOAD; my $meth = $AUTOLOAD; $meth =~ s/.*:://; my $class = ref($_[0]) || $_[0] || die "object method only"; no strict; *{"${class}::${meth}"} = my $newsub = sub { my $self = shift; $self->{$meth} = shift if @_; return $self->{$meth}; }; goto &$newsub; }