B::save_BEGINs also turns sets PL_minus_c to 0x10, which is true, and annoying. There must be a way to get at the begin blocks properly. Perhaps a storage mechanism for the cv's?. Also, for some reason I can't figure out why B::init_av()->ARRAY doesn't return anything helpful, even when I have INIT blocks. More research to do on this matter I suppose. I'll look at it while I'm at YAPC. I leave tomorrow... my todo list is lengthened with addition of o) Sort out Laptop...