removed use Carp 'confess'; because now it's redundant