
Persistent Object Manager text dump: 
	i	addr		type		arg	head	tail	size
	0	##ADDR##	________	0	#HEAD#	#TAIL#	0
	1	##ADDR##	module__	0	#HEAD#	#TAIL#	##SIZE##
	2	##ADDR##	namespc_	0	#HEAD#	#TAIL#	28
	3	##ADDR##	procdefn	0	#HEAD#	#TAIL#	100
	4	##ADDR##	pintplch	0	#HEAD#	#TAIL#	29
	5	##ADDR##	pintinst	0	#HEAD#	#TAIL#	16
	6	##ADDR##	dboolplh	0	#HEAD#	#TAIL#	25
	7	##ADDR##	portscop	0	#HEAD#	#TAIL#	16
	8	##ADDR##	datainst	0	#HEAD#	#TAIL#	20
	9	##ADDR##	datatprf	0	#HEAD#	#TAIL#	20
	10	##ADDR##	datadefn	0	#HEAD#	#TAIL#	69
	11	##ADDR##	drnglst_	0	#HEAD#	#TAIL#	16
	12	##ADDR##	dynrng__	0	#HEAD#	#TAIL#	16
	13	##ADDR##	cnstpi__	0	#HEAD#	#TAIL#	12
	14	##ADDR##	piarthex	0	#HEAD#	#TAIL#	17
	15	##ADDR##	spimvref	0	#HEAD#	#TAIL#	16
	16	##ADDR##	cnstpi__	0	#HEAD#	#TAIL#	12
	17	##ADDR##	dbalias_	0	#HEAD#	#TAIL#	20
	18	##ADDR##	sdbmiref	0	#HEAD#	#TAIL#	16
	19	##ADDR##	cindlst_	0	#HEAD#	#TAIL#	16
	20	##ADDR##	cnstpi__	0	#HEAD#	#TAIL#	12
	21	##ADDR##	sdbmiref	0	#HEAD#	#TAIL#	16
	22	##ADDR##	cindlst_	0	#HEAD#	#TAIL#	16
	23	##ADDR##	cnstpi__	0	#HEAD#	#TAIL#	12
	24	##ADDR##	footprnt	0	#HEAD#	#TAIL#	390
	25	##ADDR##	cnstpi__	0	#HEAD#	#TAIL#	12
	26	##ADDR##	procplch	0	#HEAD#	#TAIL#	27
	27	##ADDR##	procinst	0	#HEAD#	#TAIL#	20
	28	##ADDR##	proctprf	0	#HEAD#	#TAIL#	20
	29	##ADDR##	dprmlst_	0	#HEAD#	#TAIL#	16
	30	##ADDR##	footprnt	0	#HEAD#	#TAIL#	407
	31	##ADDR##	cprmlst_	0	#HEAD#	#TAIL#	16

In module created from: ##FILE## (unrolled) (created)
In namespace "", we have: {
  0 parameter-collections
  1 instantiation-collections
  0 sub-namespaces
  1 definitions
  0 typedefs
  Definitions:
    foo = process-definition (defined) foo<
      pint<> N
      >(
        bool<> a[0..N-1]
      )
      In definition "foo", we have: {
      Parameters:
        N = pint<> foo::N
      Instances:
        a = bool<> foo::a^1
      unroll sequence: 
        ports: (
          bool<> a[0..N-1]
        )
        a[0] = a[4];
      footprint collection: {
        <6> {
          N = pint^0 value: 6
          a = bool^1
            {
              [0] = foo<6>::a[0] (1) 
              [1] = foo<6>::a[1] (2) 
              [2] = foo<6>::a[2] (3) 
              [3] = foo<6>::a[3] (4) 
              [4] = foo<6>::a[0] (1) 
              [5] = foo<6>::a[5] (5) 
            }
          Created state:
          bool instance pool:
          1	foo<6>::a[0]
          2	foo<6>::a[1]
          3	foo<6>::a[2]
          4	foo<6>::a[3]
          5	foo<6>::a[5]
          bool port aliases:
          1: foo<6>::a[0] = foo<6>::a[4]
        }
      }
      }

  Instances:
    poo = foo<6> poo
}

footprint: {
  poo = process foo<6>^0 = poo (1) (
    a = bool^1
      {
        [0] = poo.a[0] (1) 
        [1] = poo.a[1] (2) 
        [2] = poo.a[2] (3) 
        [3] = poo.a[3] (4) 
        [4] = poo.a[0] (1) 
        [5] = poo.a[5] (5) 
      }
  )
  Created state:
  process instance pool:
  1	poo
  bool instance pool:
  1	poo.a[0]
  2	poo.a[1]
  3	poo.a[2]
  4	poo.a[3]
  5	poo.a[5]
}
