=for discussion The Problem: The problem is labelled in My::Main::Child1->usechild(). We wish to access the LWP::UserAgent object, located in the blessed hashref of My::Main::Child1's parent (My::Main is the parent in this case). =cut # My/Main.pm package My::Main; use strict; use LWP::UserAgent; use My::Main::Child1; sub new { my ($class) = @_; my $self = bless( {}, $class ); $self->{_ua} = LWP::UserAgent->new(); return( $self ); } sub newchild { my ($self) = @_; return( My::Main::Child1->new() ); } # My/Main/Child1.pm package My::Main::Child1; use strict; sub new { my ($class) = @_; return( bless( {}, $class ) ); } sub usechild { my ($self) = @_; # PROBLEM LINE! my $res = $self->(...)->{_ua}->get( 'http://www.example.com' ); return( $res->code(), $res->content() ); } # usemain.pl #!/usr/bin/perl -w use strict; use My::Main; my $main = My::Main->new(); my $child = $main->newchild(); my ($code, $content) = $child->usechild();