Access @package internal elements/nets externally

Trying to create a @package as a test fixture, having issues with controls to package’s internal elements.
Specifically:

  1. can not set references to internal elements by force
  2. want (not a need) to access package internal elements for the simulation that I am trying to get with a return statement but seems to conflict with packages overall return
from skidl.pyspice import *

@package
def real_dcVs(global_ref, pos_term, neg_term, starting_V=1@u_V, starting_R=50@u_Ohm, 
           return_internls=False):
    """
    SKiDl Package to create a simple non ideal DC voltage souce
    
    Args:
        global_ref (str): reference to use for the base of the internal elements
        
        pos_term (SKiDl net or pin): positive terminal of the nonideal voltage source
            to connect to the rest of the circuit
        
        neg_term (SKiDl net or pin): negative terminal of the nonideal voltage source
            to connect to the rest of the circuit 
        
        starting_V (float; 1; Volts):the initial DC voltage to set the internal ideal
            the voltage source in this package to
        
        starting_R (float; 50; Ohm): the initial resistance to set the internal
            serial resistance to the ideal voltage source in this package to
        
        return_internls (bool; False): If True return out the internal Voltage Source,
            and Resistance objects in this package
    
    Returns:
        Returns it's self a SKiDl part element object and if `return_internls`
        is True will return the internal voltage and resistance objects in that order 
    
    TODO:
        find out how sure up package functionality to be able to:
        1. set ref for package
        2. set refs for internal elements
        3. Get internal refs
        4. access internal elements for simulation control
        
    """
    vs=V(ref=f'V_{global_ref}', dc_value=starting_V)
    rs=R(ref=f'R_{global_ref}', value=starting_R)
    
    vs['p', 'n']+=rs[1], neg_term
    rs[2]+=pos_term
    
    if return_internls:
        return vs, rs
    
reset()
dummy_load=I(ref='dload', dc_value=1@u_A); dummy_load['n']+=gnd
#issue with the next line to get returns of package and internal elements
#real_vs, real_vss, real_vsr=real_dcVs('real_vs', dummy_load['p'], gnd, 30@u_V, 20@u_Ohm, True)
real_vs=real_dcVs('real_vs', dummy_load['p'], gnd, 30@u_V, 20@u_Ohm, False)
circ=generate_netlist()
print(circ)

returns the following netlist:

.title 
R1 N_1 N_3 50Ohm
V_<skidl.protonet.ProtoNet object at 0x7f75a34fc1d0> N_1 N_2 1V
Idload <skidl.part.PinNumberSearch object at 0x7f75a34fc710> 0 1A

as one can see the global_ref argument is not getting into the generated internal elements, instead I am getting “pointers” and when I try to return the elements it has all sorts of issues with the number of returned items such that the circuit will not be produced.

Any help would be much-appreciated thanks