- my $string = $_[ ref($_[0]) || ($_[0] eq 'SL::Locale::String') ? 1 : 0 ];
- return SL::Locale::String->new(untranslated => $string);
+ shift if $_[0] eq __PACKAGE__;
+
+ my $string = shift;
+ return SL::Locale::String->new(untranslated => $string, args => \@_);