thanks, I just read it, but I remained puzzled. I remind you that all these subroutines (sub_#) object's subroutines that are called from another subroutine (sub run) of the same object. So the calling subroutine gets $self and should pass $self to each of the subs. Should I share $self at the beginning of the calling subroutine (sub run)? This does not seem to make sense since the doc says that sharing deletes the content.