package myObject; $VERSION = 1.00; use strict; use warnings; use diagnostics; use vars qw(@ISA); @ISA = qw(Class::Singleton); use Carp (); $Carp::Verbose =1; { my %serverMap = ( default => { ipaddress=127.0.0.1, dsn=""default, userid="sa", password="password", instance="instance" }, ); sub new{ my ($self, %args) = @_; my %array=(); %array = (%args); #? my $self={}; return bless {$self}; } sub printMe(){ my ($self) = @_; while ( ($server, $credentials) = each $self->%serverMap) { print "$server: "; while ( ($credentials, $value) = each %$roles ) { print "$credentials=$value "; } print "\n"; } } sub fillServerMap($){ <<<<< no idea how to input my ($self) = @_; for $server ( @_ ) { push @ <<<-- NO IDEA how to do this } } } sub removeServerMap($){ my ($self) = @_; $self->serverMap ={}; } sub deleteServer($){ my ($self,$server)=@_; delete $self->serverMap {$server}; } 1