/*
 *    embedvar.h
 *
 *    Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, by Larry Wall and others
 *
 *    You may distribute under the terms of either the GNU General Public
 *    License or the Artistic License, as specified in the README file.
 *
 * !!!!!!!   DO NOT EDIT THIS FILE   !!!!!!!
 * This file is built by embed.pl from data in embed.fnc, embed.pl,
 * pp.sym, intrpvar.h, perlvars.h and thrdvar.h.
 * Any changes made here will be lost!
 *
 * Edit those files and run 'make regen_headers' to effect changes.
 */

/* (Doing namespace management portably in C is really gross.) */

/*
   The following combinations of MULTIPLICITY, USE_5005THREADS
   and PERL_IMPLICIT_CONTEXT are supported:
     1) none
     2) MULTIPLICITY	# supported for compatibility
     3) MULTIPLICITY && PERL_IMPLICIT_CONTEXT
     4) USE_5005THREADS && PERL_IMPLICIT_CONTEXT
     5) MULTIPLICITY && USE_5005THREADS && PERL_IMPLICIT_CONTEXT

   All other combinations of these flags are errors.

   #3, #4, #5, and #6 are supported directly, while #2 is a special
   case of #3 (supported by redefining vTHX appropriately).
*/

#if defined(MULTIPLICITY)
/* cases 2, 3 and 5 above */

#  if defined(PERL_IMPLICIT_CONTEXT)
#    define vTHX	aTHX
#  else
#    define vTHX	PERL_GET_INTERP
#  endif

#define PL_Sv			(vTHX->TSv)
#define PL_Xpv			(vTHX->TXpv)
#define PL_av_fetch_sv		(vTHX->Tav_fetch_sv)
#define PL_bodytarget		(vTHX->Tbodytarget)
#define PL_bostr		(vTHX->Tbostr)
#define PL_chopset		(vTHX->Tchopset)
#define PL_colors		(vTHX->Tcolors)
#define PL_colorset		(vTHX->Tcolorset)
#define PL_comppad		(vTHX->Tcomppad)
#define PL_curcop		(vTHX->Tcurcop)
#define PL_curpad		(vTHX->Tcurpad)
#define PL_curpm		(vTHX->Tcurpm)
#define PL_curstack		(vTHX->Tcurstack)
#define PL_curstackinfo		(vTHX->Tcurstackinfo)
#define PL_curstash		(vTHX->Tcurstash)
#define PL_defoutgv		(vTHX->Tdefoutgv)
#define PL_defstash		(vTHX->Tdefstash)
#define PL_delaymagic		(vTHX->Tdelaymagic)
#define PL_dirty		(vTHX->Tdirty)
#define PL_dumpindent		(vTHX->Tdumpindent)
#define PL_efloatbuf		(vTHX->Tefloatbuf)
#define PL_efloatsize		(vTHX->Tefloatsize)
#define PL_errors		(vTHX->Terrors)
#define PL_extralen		(vTHX->Textralen)
#define PL_firstgv		(vTHX->Tfirstgv)
#define PL_formtarget		(vTHX->Tformtarget)
#define PL_hv_fetch_ent_mh	(vTHX->Thv_fetch_ent_mh)
#define PL_hv_fetch_sv		(vTHX->Thv_fetch_sv)
#define PL_in_eval		(vTHX->Tin_eval)
#define PL_last_in_gv		(vTHX->Tlast_in_gv)
#define PL_lastgotoprobe	(vTHX->Tlastgotoprobe)
#define PL_lastscream		(vTHX->Tlastscream)
#define PL_localizing		(vTHX->Tlocalizing)
#define PL_mainstack		(vTHX->Tmainstack)
#define PL_markstack		(vTHX->Tmarkstack)
#define PL_markstack_max	(vTHX->Tmarkstack_max)
#define PL_markstack_ptr	(vTHX->Tmarkstack_ptr)
#define PL_maxscream		(vTHX->Tmaxscream)
#define PL_modcount		(vTHX->Tmodcount)
#define PL_na			(vTHX->Tna)
#define PL_nrs			(vTHX->Tnrs)
#define PL_ofs_sv		(vTHX->Tofs_sv)
#define PL_op			(vTHX->Top)
#define PL_opsave		(vTHX->Topsave)
#define PL_peepp		(vTHX->Tpeepp)
#define PL_protect		(vTHX->Tprotect)
#define PL_reg_call_cc		(vTHX->Treg_call_cc)
#define PL_reg_curpm		(vTHX->Treg_curpm)
#define PL_reg_eval_set		(vTHX->Treg_eval_set)
#define PL_reg_flags		(vTHX->Treg_flags)
#define PL_reg_ganch		(vTHX->Treg_ganch)
#define PL_reg_leftiter		(vTHX->Treg_leftiter)
#define PL_reg_magic		(vTHX->Treg_magic)
#define PL_reg_match_utf8	(vTHX->Treg_match_utf8)
#define PL_reg_maxiter		(vTHX->Treg_maxiter)
#define PL_reg_oldcurpm		(vTHX->Treg_oldcurpm)
#define PL_reg_oldpos		(vTHX->Treg_oldpos)
#define PL_reg_oldsaved		(vTHX->Treg_oldsaved)
#define PL_reg_oldsavedlen	(vTHX->Treg_oldsavedlen)
#define PL_reg_poscache		(vTHX->Treg_poscache)
#define PL_reg_poscache_size	(vTHX->Treg_poscache_size)
#define PL_reg_re		(vTHX->Treg_re)
#define PL_reg_start_tmp	(vTHX->Treg_start_tmp)
#define PL_reg_start_tmpl	(vTHX->Treg_start_tmpl)
#define PL_reg_starttry		(vTHX->Treg_starttry)
#define PL_reg_sv		(vTHX->Treg_sv)
#define PL_reg_whilem_seen	(vTHX->Treg_whilem_seen)
#define PL_regbol		(vTHX->Tregbol)
#define PL_regcc		(vTHX->Tregcc)
#define PL_regcode		(vTHX->Tregcode)
#define PL_regcomp_parse	(vTHX->Tregcomp_parse)
#define PL_regcomp_rx		(vTHX->Tregcomp_rx)
#define PL_regcompat1		(vTHX->Tregcompat1)
#define PL_regcompp		(vTHX->Tregcompp)
#define PL_regdata		(vTHX->Tregdata)
#define PL_regdummy		(vTHX->Tregdummy)
#define PL_regendp		(vTHX->Tregendp)
#define PL_regeol		(vTHX->Tregeol)
#define PL_regexecp		(vTHX->Tregexecp)
#define PL_regflags		(vTHX->Tregflags)
#define PL_regfree		(vTHX->Tregfree)
#define PL_regindent		(vTHX->Tregindent)
#define PL_reginput		(vTHX->Treginput)
#define PL_regint_start		(vTHX->Tregint_start)
#define PL_regint_string	(vTHX->Tregint_string)
#define PL_reginterp_cnt	(vTHX->Treginterp_cnt)
#define PL_reglastcloseparen	(vTHX->Treglastcloseparen)
#define PL_reglastparen		(vTHX->Treglastparen)
#define PL_regnarrate		(vTHX->Tregnarrate)
#define PL_regnaughty		(vTHX->Tregnaughty)
#define PL_regnpar		(vTHX->Tregnpar)
#define PL_regprecomp		(vTHX->Tregprecomp)
#define PL_regprogram		(vTHX->Tregprogram)
#define PL_regsawback		(vTHX->Tregsawback)
#define PL_regseen		(vTHX->Tregseen)
#define PL_regsize		(vTHX->Tregsize)
#define PL_regstartp		(vTHX->Tregstartp)
#define PL_regtill		(vTHX->Tregtill)
#define PL_regxend		(vTHX->Tregxend)
#define PL_restartop		(vTHX->Trestartop)
#define PL_retstack		(vTHX->Tretstack)
#define PL_retstack_ix		(vTHX->Tretstack_ix)
#define PL_retstack_max		(vTHX->Tretstack_max)
#define PL_rs			(vTHX->Trs)
#define PL_savestack		(vTHX->Tsavestack)
#define PL_savestack_ix		(vTHX->Tsavestack_ix)
#define PL_savestack_max	(vTHX->Tsavestack_max)
#define PL_scopestack		(vTHX->Tscopestack)
#define PL_scopestack_ix	(vTHX->Tscopestack_ix)
#define PL_scopestack_max	(vTHX->Tscopestack_max)
#define PL_screamfirst		(vTHX->Tscreamfirst)
#define PL_screamnext		(vTHX->Tscreamnext)
#define PL_secondgv		(vTHX->Tsecondgv)
#define PL_seen_evals		(vTHX->Tseen_evals)
#define PL_seen_zerolen		(vTHX->Tseen_zerolen)
#define PL_sortcop		(vTHX->Tsortcop)
#define PL_sortcxix		(vTHX->Tsortcxix)
#define PL_sortstash		(vTHX->Tsortstash)
#define PL_stack_base		(vTHX->Tstack_base)
#define PL_stack_max		(vTHX->Tstack_max)
#define PL_stack_sp		(vTHX->Tstack_sp)
#define PL_start_env		(vTHX->Tstart_env)
#define PL_statbuf		(vTHX->Tstatbuf)
#define PL_statcache		(vTHX->Tstatcache)
#define PL_statgv		(vTHX->Tstatgv)
#define PL_statname		(vTHX->Tstatname)
#define PL_tainted		(vTHX->Ttainted)
#define PL_timesbuf		(vTHX->Ttimesbuf)
#define PL_tmps_floor		(vTHX->Ttmps_floor)
#define PL_tmps_ix		(vTHX->Ttmps_ix)
#define PL_tmps_max		(vTHX->Ttmps_max)
#define PL_tmps_stack		(vTHX->Ttmps_stack)
#define PL_top_env		(vTHX->Ttop_env)
#define PL_toptarget		(vTHX->Ttoptarget)
#define PL_watchaddr		(vTHX->Twatchaddr)
#define PL_watchok		(vTHX->Twatchok)

#  if defined(USE_5005THREADS)
/* case 5 above */

#define PL_Argv			(PERL_GET_INTERP->IArgv)
#define PL_BINCOMPAT0		(PERL_GET_INTERP->IBINCOMPAT0)
#define PL_Cmd			(PERL_GET_INTERP->ICmd)
#define PL_DBcv			(PERL_GET_INTERP->IDBcv)
#define PL_DBgv			(PERL_GET_INTERP->IDBgv)
#define PL_DBline		(PERL_GET_INTERP->IDBline)
#define PL_DBsignal		(PERL_GET_INTERP->IDBsignal)
#define PL_DBsingle		(PERL_GET_INTERP->IDBsingle)
#define PL_DBsub		(PERL_GET_INTERP->IDBsub)
#define PL_DBtrace		(PERL_GET_INTERP->IDBtrace)
#define PL_Dir			(PERL_GET_INTERP->IDir)
#define PL_Env			(PERL_GET_INTERP->IEnv)
#define PL_LIO			(PERL_GET_INTERP->ILIO)
#define PL_Mem			(PERL_GET_INTERP->IMem)
#define PL_MemParse		(PERL_GET_INTERP->IMemParse)
#define PL_MemShared		(PERL_GET_INTERP->IMemShared)
#define PL_OpPtr		(PERL_GET_INTERP->IOpPtr)
#define PL_OpSlab		(PERL_GET_INTERP->IOpSlab)
#define PL_OpSpace		(PERL_GET_INTERP->IOpSpace)
#define PL_Proc			(PERL_GET_INTERP->IProc)
#define PL_Sock			(PERL_GET_INTERP->ISock)
#define PL_StdIO		(PERL_GET_INTERP->IStdIO)
#define PL_amagic_generation	(PERL_GET_INTERP->Iamagic_generation)
#define PL_an			(PERL_GET_INTERP->Ian)
#define PL_argvgv		(PERL_GET_INTERP->Iargvgv)
#define PL_argvout_stack	(PERL_GET_INTERP->Iargvout_stack)
#define PL_argvoutgv		(PERL_GET_INTERP->Iargvoutgv)
#define PL_basetime		(PERL_GET_INTERP->Ibasetime)
#define PL_beginav		(PERL_GET_INTERP->Ibeginav)
#define PL_beginav_save		(PERL_GET_INTERP->Ibeginav_save)
#define PL_bitcount		(PERL_GET_INTERP->Ibitcount)
#define PL_bufend		(PERL_GET_INTERP->Ibufend)
#define PL_bufptr		(PERL_GET_INTERP->Ibufptr)
#define PL_checkav		(PERL_GET_INTERP->Icheckav)
#define PL_checkav_save		(PERL_GET_INTERP->Icheckav_save)
#define PL_clocktick		(PERL_GET_INTERP->Iclocktick)
#define PL_collation_ix		(PERL_GET_INTERP->Icollation_ix)
#define PL_collation_name	(PERL_GET_INTERP->Icollation_name)
#define PL_collation_standard	(PERL_GET_INTERP->Icollation_standard)
#define PL_collxfrm_base	(PERL_GET_INTERP->Icollxfrm_base)
#define PL_collxfrm_mult	(PERL_GET_INTERP->Icollxfrm_mult)
#define PL_compcv		(PERL_GET_INTERP->Icompcv)
#define PL_compiling		(PERL_GET_INTERP->Icompiling)
#define PL_comppad_name		(PERL_GET_INTERP->Icomppad_name)
#define PL_comppad_name_fill	(PERL_GET_INTERP->Icomppad_name_fill)
#define PL_comppad_name_floor	(PERL_GET_INTERP->Icomppad_name_floor)
#define PL_cop_seqmax		(PERL_GET_INTERP->Icop_seqmax)
#define PL_copline		(PERL_GET_INTERP->Icopline)
#define PL_cred_mutex		(PERL_GET_INTERP->Icred_mutex)
#define PL_cryptseen		(PERL_GET_INTERP->Icryptseen)
#define PL_cshlen		(PERL_GET_INTERP->Icshlen)
#define PL_cshname		(PERL_GET_INTERP->Icshname)
#define PL_curcopdb		(PERL_GET_INTERP->Icurcopdb)
#define PL_curstname		(PERL_GET_INTERP->Icurstname)
#define PL_curthr		(PERL_GET_INTERP->Icurthr)
#define PL_custom_op_descs	(PERL_GET_INTERP->Icustom_op_descs)
#define PL_custom_op_names	(PERL_GET_INTERP->Icustom_op_names)
#define PL_dbargs		(PERL_GET_INTERP->Idbargs)
#define PL_debstash		(PERL_GET_INTERP->Idebstash)
#define PL_debug		(PERL_GET_INTERP->Idebug)
#define PL_debug_pad		(PERL_GET_INTERP->Idebug_pad)
#define PL_def_layerlist	(PERL_GET_INTERP->Idef_layerlist)
#define PL_defgv		(PERL_GET_INTERP->Idefgv)
#define PL_diehook		(PERL_GET_INTERP->Idiehook)
#define PL_doextract		(PERL_GET_INTERP->Idoextract)
#define PL_doswitches		(PERL_GET_INTERP->Idoswitches)
#define PL_dowarn		(PERL_GET_INTERP->Idowarn)
#define PL_e_script		(PERL_GET_INTERP->Ie_script)
#define PL_egid			(PERL_GET_INTERP->Iegid)
#define PL_encoding		(PERL_GET_INTERP->Iencoding)
#define PL_endav		(PERL_GET_INTERP->Iendav)
#define PL_envgv		(PERL_GET_INTERP->Ienvgv)
#define PL_errgv		(PERL_GET_INTERP->Ierrgv)
#define PL_error_count		(PERL_GET_INTERP->Ierror_count)
#define PL_euid			(PERL_GET_INTERP->Ieuid)
#define PL_eval_cond		(PERL_GET_INTERP->Ieval_cond)
#define PL_eval_mutex		(PERL_GET_INTERP->Ieval_mutex)
#define PL_eval_owner		(PERL_GET_INTERP->Ieval_owner)
#define PL_eval_root		(PERL_GET_INTERP->Ieval_root)
#define PL_eval_start		(PERL_GET_INTERP->Ieval_start)
#define PL_evalseq		(PERL_GET_INTERP->Ievalseq)
#define PL_exit_flags		(PERL_GET_INTERP->Iexit_flags)
#define PL_exitlist		(PERL_GET_INTERP->Iexitlist)
#define PL_exitlistlen		(PERL_GET_INTERP->Iexitlistlen)
#define PL_expect		(PERL_GET_INTERP->Iexpect)
#define PL_fdpid		(PERL_GET_INTERP->Ifdpid)
#define PL_fdpid_mutex		(PERL_GET_INTERP->Ifdpid_mutex)
#define PL_fdscript		(PERL_GET_INTERP->Ifdscript)
#define PL_filemode		(PERL_GET_INTERP->Ifilemode)
#define PL_forkprocess		(PERL_GET_INTERP->Iforkprocess)
#define PL_formfeed		(PERL_GET_INTERP->Iformfeed)
#define PL_generation		(PERL_GET_INTERP->Igeneration)
#define PL_gensym		(PERL_GET_INTERP->Igensym)
#define PL_gid			(PERL_GET_INTERP->Igid)
#define PL_glob_index		(PERL_GET_INTERP->Iglob_index)
#define PL_globalstash		(PERL_GET_INTERP->Iglobalstash)
#define PL_hash_seed		(PERL_GET_INTERP->Ihash_seed)
#define PL_hash_seed_set	(PERL_GET_INTERP->Ihash_seed_set)
#define PL_he_arenaroot		(PERL_GET_INTERP->Ihe_arenaroot)
#define PL_he_root		(PERL_GET_INTERP->Ihe_root)
#define PL_hintgv		(PERL_GET_INTERP->Ihintgv)
#define PL_hints		(PERL_GET_INTERP->Ihints)
#define PL_in_clean_all		(PERL_GET_INTERP->Iin_clean_all)
#define PL_in_clean_objs	(PERL_GET_INTERP->Iin_clean_objs)
#define PL_in_load_module	(PERL_GET_INTERP->Iin_load_module)
#define PL_in_my		(PERL_GET_INTERP->Iin_my)
#define PL_in_my_stash		(PERL_GET_INTERP->Iin_my_stash)
#define PL_incgv		(PERL_GET_INTERP->Iincgv)
#define PL_initav		(PERL_GET_INTERP->Iinitav)
#define PL_inplace		(PERL_GET_INTERP->Iinplace)
#define PL_known_layers		(PERL_GET_INTERP->Iknown_layers)
#define PL_last_lop		(PERL_GET_INTERP->Ilast_lop)
#define PL_last_lop_op		(PERL_GET_INTERP->Ilast_lop_op)
#define PL_last_swash_hv	(PERL_GET_INTERP->Ilast_swash_hv)
#define PL_last_swash_key	(PERL_GET_INTERP->Ilast_swash_key)
#define PL_last_swash_klen	(PERL_GET_INTERP->Ilast_swash_klen)
#define PL_last_swash_slen	(PERL_GET_INTERP->Ilast_swash_slen)
#define PL_last_swash_tmps	(PERL_GET_INTERP->Ilast_swash_tmps)
#define PL_last_uni		(PERL_GET_INTERP->Ilast_uni)
#define PL_lastfd		(PERL_GET_INTERP->Ilastfd)
#define PL_laststatval		(PERL_GET_INTERP->Ilaststatval)
#define PL_laststype		(PERL_GET_INTERP->Ilaststype)
#define PL_lex_brackets		(PERL_GET_INTERP->Ilex_brackets)
#define PL_lex_brackstack	(PERL_GET_INTERP->Ilex_brackstack)
#define PL_lex_casemods		(PERL_GET_INTERP->Ilex_casemods)
#define PL_lex_casestack	(PERL_GET_INTERP->Ilex_casestack)
#define PL_lex_defer		(PERL_GET_INTERP->Ilex_defer)
#define PL_lex_dojoin		(PERL_GET_INTERP->Ilex_dojoin)
#define PL_lex_expect		(PERL_GET_INTERP->Ilex_expect)
#define PL_lex_formbrack	(PERL_GET_INTERP->Ilex_formbrack)
#define PL_lex_inpat		(PERL_GET_INTERP->Ilex_inpat)
#define PL_lex_inwhat		(PERL_GET_INTERP->Ilex_inwhat)
#define PL_lex_op		(PERL_GET_INTERP->Ilex_op)
#define PL_lex_repl		(PERL_GET_INTERP->Ilex_repl)
#define PL_lex_starts		(PERL_GET_INTERP->Ilex_starts)
#define PL_lex_state		(PERL_GET_INTERP->Ilex_state)
#define PL_lex_stuff		(PERL_GET_INTERP->Ilex_stuff)
#define PL_lineary		(PERL_GET_INTERP->Ilineary)
#define PL_linestart		(PERL_GET_INTERP->Ilinestart)
#define PL_linestr		(PERL_GET_INTERP->Ilinestr)
#define PL_localpatches		(PERL_GET_INTERP->Ilocalpatches)
#define PL_lockhook		(PERL_GET_INTERP->Ilockhook)
#define PL_main_cv		(PERL_GET_INTERP->Imain_cv)
#define PL_main_root		(PERL_GET_INTERP->Imain_root)
#define PL_main_start		(PERL_GET_INTERP->Imain_start)
#define PL_max_intro_pending	(PERL_GET_INTERP->Imax_intro_pending)
#define PL_maxo			(PERL_GET_INTERP->Imaxo)
#define PL_maxsysfd		(PERL_GET_INTERP->Imaxsysfd)
#define PL_mess_sv		(PERL_GET_INTERP->Imess_sv)
#define PL_min_intro_pending	(PERL_GET_INTERP->Imin_intro_pending)
#define PL_minus_F		(PERL_GET_INTERP->Iminus_F)
#define PL_minus_a		(PERL_GET_INTERP->Iminus_a)
#define PL_minus_c		(PERL_GET_INTERP->Iminus_c)
#define PL_minus_l		(PERL_GET_INTERP->Iminus_l)
#define PL_minus_n		(PERL_GET_INTERP->Iminus_n)
#define PL_minus_p		(PERL_GET_INTERP->Iminus_p)
#define PL_modglobal		(PERL_GET_INTERP->Imodglobal)
#define PL_multi_close		(PERL_GET_INTERP->Imulti_close)
#define PL_multi_end		(PERL_GET_INTERP->Imulti_end)
#define PL_multi_open		(PERL_GET_INTERP->Imulti_open)
#define PL_multi_start		(PERL_GET_INTERP->Imulti_start)
#define PL_multiline		(PERL_GET_INTERP->Imultiline)
#define PL_nexttoke		(PERL_GET_INTERP->Inexttoke)
#define PL_nexttype		(PERL_GET_INTERP->Inexttype)
#define PL_nextval		(PERL_GET_INTERP->Inextval)
#define PL_nice_chunk		(PERL_GET_INTERP->Inice_chunk)
#define PL_nice_chunk_size	(PERL_GET_INTERP->Inice_chunk_size)
#define PL_nomemok		(PERL_GET_INTERP->Inomemok)
#define PL_nthreads		(PERL_GET_INTERP->Inthreads)
#define PL_nthreads_cond	(PERL_GET_INTERP->Inthreads_cond)
#define PL_nullstash		(PERL_GET_INTERP->Inullstash)
#define PL_numeric_compat1	(PERL_GET_INTERP->Inumeric_compat1)
#define PL_numeric_local	(PERL_GET_INTERP->Inumeric_local)
#define PL_numeric_name		(PERL_GET_INTERP->Inumeric_name)
#define PL_numeric_radix_sv	(PERL_GET_INTERP->Inumeric_radix_sv)
#define PL_numeric_standard	(PERL_GET_INTERP->Inumeric_standard)
#define PL_ofmt			(PERL_GET_INTERP->Iofmt)
#define PL_oldbufptr		(PERL_GET_INTERP->Ioldbufptr)
#define PL_oldname		(PERL_GET_INTERP->Ioldname)
#define PL_oldoldbufptr		(PERL_GET_INTERP->Ioldoldbufptr)
#define PL_op_mask		(PERL_GET_INTERP->Iop_mask)
#define PL_op_seqmax		(PERL_GET_INTERP->Iop_seqmax)
#define PL_origalen		(PERL_GET_INTERP->Iorigalen)
#define PL_origargc		(PERL_GET_INTERP->Iorigargc)
#define PL_origargv		(PERL_GET_INTERP->Iorigargv)
#define PL_origenviron		(PERL_GET_INTERP->Iorigenviron)
#define PL_origfilename		(PERL_GET_INTERP->Iorigfilename)
#define PL_ors_sv		(PERL_GET_INTERP->Iors_sv)
#define PL_osname		(PERL_GET_INTERP->Iosname)
#define PL_pad_reset_pending	(PERL_GET_INTERP->Ipad_reset_pending)
#define PL_padix		(PERL_GET_INTERP->Ipadix)
#define PL_padix_floor		(PERL_GET_INTERP->Ipadix_floor)
#define PL_patchlevel		(PERL_GET_INTERP->Ipatchlevel)
#define PL_pending_ident	(PERL_GET_INTERP->Ipending_ident)
#define PL_perl_destruct_level	(PERL_GET_INTERP->Iperl_destruct_level)
#define PL_perldb		(PERL_GET_INTERP->Iperldb)
#define PL_perlio		(PERL_GET_INTERP->Iperlio)
#define PL_pidstatus		(PERL_GET_INTERP->Ipidstatus)
#define PL_ppid			(PERL_GET_INTERP->Ippid)
#define PL_preambleav		(PERL_GET_INTERP->Ipreambleav)
#define PL_preambled		(PERL_GET_INTERP->Ipreambled)
#define PL_preprocess		(PERL_GET_INTERP->Ipreprocess)
#define PL_profiledata		(PERL_GET_INTERP->Iprofiledata)
#define PL_psig_name		(PERL_GET_INTERP->Ipsig_name)
#define PL_psig_pend		(PERL_GET_INTERP->Ipsig_pend)
#define PL_psig_ptr		(PERL_GET_INTERP->Ipsig_ptr)
#define PL_ptr_table		(PERL_GET_INTERP->Iptr_table)
#define PL_reentrant_buffer	(PERL_GET_INTERP->Ireentrant_buffer)
#define PL_reentrant_retint	(PERL_GET_INTERP->Ireentrant_retint)
#define PL_regex_pad		(PERL_GET_INTERP->Iregex_pad)
#define PL_regex_padav		(PERL_GET_INTERP->Iregex_padav)
#define PL_rehash_seed		(PERL_GET_INTERP->Irehash_seed)
#define PL_rehash_seed_set	(PERL_GET_INTERP->Irehash_seed_set)
#define PL_replgv		(PERL_GET_INTERP->Ireplgv)
#define PL_rsfp			(PERL_GET_INTERP->Irsfp)
#define PL_rsfp_filters		(PERL_GET_INTERP->Irsfp_filters)
#define PL_runops		(PERL_GET_INTERP->Irunops)
#define PL_runops_dbg		(PERL_GET_INTERP->Irunops_dbg)
#define PL_runops_std		(PERL_GET_INTERP->Irunops_std)
#define PL_savebegin		(PERL_GET_INTERP->Isavebegin)
#define PL_sawampersand		(PERL_GET_INTERP->Isawampersand)
#define PL_sh_path_compat	(PERL_GET_INTERP->Ish_path_compat)
#define PL_sharehook		(PERL_GET_INTERP->Isharehook)
#define PL_sig_pending		(PERL_GET_INTERP->Isig_pending)
#define PL_sighandlerp		(PERL_GET_INTERP->Isighandlerp)
#define PL_signals		(PERL_GET_INTERP->Isignals)
#define PL_sort_RealCmp		(PERL_GET_INTERP->Isort_RealCmp)
#define PL_splitstr		(PERL_GET_INTERP->Isplitstr)
#define PL_srand_called		(PERL_GET_INTERP->Isrand_called)
#define PL_stashcache		(PERL_GET_INTERP->Istashcache)
#define PL_statusvalue		(PERL_GET_INTERP->Istatusvalue)
#define PL_statusvalue_vms	(PERL_GET_INTERP->Istatusvalue_vms)
#define PL_stderrgv		(PERL_GET_INTERP->Istderrgv)
#define PL_stdingv		(PERL_GET_INTERP->Istdingv)
#define PL_strtab		(PERL_GET_INTERP->Istrtab)
#define PL_strtab_mutex		(PERL_GET_INTERP->Istrtab_mutex)
#define PL_sub_generation	(PERL_GET_INTERP->Isub_generation)
#define PL_sublex_info		(PERL_GET_INTERP->Isublex_info)
#define PL_subline		(PERL_GET_INTERP->Isubline)
#define PL_subname		(PERL_GET_INTERP->Isubname)
#define PL_suidscript		(PERL_GET_INTERP->Isuidscript)
#define PL_sv_arenaroot		(PERL_GET_INTERP->Isv_arenaroot)
#define PL_sv_count		(PERL_GET_INTERP->Isv_count)
#define PL_sv_lock_mutex	(PERL_GET_INTERP->Isv_lock_mutex)
#define PL_sv_mutex		(PERL_GET_INTERP->Isv_mutex)
#define PL_sv_no		(PERL_GET_INTERP->Isv_no)
#define PL_sv_objcount		(PERL_GET_INTERP->Isv_objcount)
#define PL_sv_root		(PERL_GET_INTERP->Isv_root)
#define PL_sv_undef		(PERL_GET_INTERP->Isv_undef)
#define PL_sv_yes		(PERL_GET_INTERP->Isv_yes)
#define PL_svref_mutex		(PERL_GET_INTERP->Isvref_mutex)
#define PL_sys_intern		(PERL_GET_INTERP->Isys_intern)
#define PL_taint_warn		(PERL_GET_INTERP->Itaint_warn)
#define PL_tainting		(PERL_GET_INTERP->Itainting)
#define PL_threadhook		(PERL_GET_INTERP->Ithreadhook)
#define PL_threadnum		(PERL_GET_INTERP->Ithreadnum)
#define PL_threads_mutex	(PERL_GET_INTERP->Ithreads_mutex)
#define PL_threadsv_names	(PERL_GET_INTERP->Ithreadsv_names)
#define PL_thrsv		(PERL_GET_INTERP->Ithrsv)
#define PL_tokenbuf		(PERL_GET_INTERP->Itokenbuf)
#define PL_uid			(PERL_GET_INTERP->Iuid)
#define PL_unicode		(PERL_GET_INTERP->Iunicode)
#define PL_unlockhook		(PERL_GET_INTERP->Iunlockhook)
#define PL_unsafe		(PERL_GET_INTERP->Iunsafe)
#define PL_utf8_alnum		(PERL_GET_INTERP->Iutf8_alnum)
#define PL_utf8_alnumc		(PERL_GET_INTERP->Iutf8_alnumc)
#define PL_utf8_alpha		(PERL_GET_INTERP->Iutf8_alpha)
#define PL_utf8_ascii		(PERL_GET_INTERP->Iutf8_ascii)
#define PL_utf8_cntrl		(PERL_GET_INTERP->Iutf8_cntrl)
#define PL_utf8_digit		(PERL_GET_INTERP->Iutf8_digit)
#define PL_utf8_graph		(PERL_GET_INTERP->Iutf8_graph)
#define PL_utf8_idcont		(PERL_GET_INTERP->Iutf8_idcont)
#define PL_utf8_idstart		(PERL_GET_INTERP->Iutf8_idstart)
#define PL_utf8_lower		(PERL_GET_INTERP->Iutf8_lower)
#define PL_utf8_mark		(PERL_GET_INTERP->Iutf8_mark)
#define PL_utf8_print		(PERL_GET_INTERP->Iutf8_print)
#define PL_utf8_punct		(PERL_GET_INTERP->Iutf8_punct)
#define PL_utf8_space		(PERL_GET_INTERP->Iutf8_space)
#define PL_utf8_tofold		(PERL_GET_INTERP->Iutf8_tofold)
#define PL_utf8_tolower		(PERL_GET_INTERP->Iutf8_tolower)
#define PL_utf8_totitle		(PERL_GET_INTERP->Iutf8_totitle)
#define PL_utf8_toupper		(PERL_GET_INTERP->Iutf8_toupper)
#define PL_utf8_upper		(PERL_GET_INTERP->Iutf8_upper)
#define PL_utf8_xdigit		(PERL_GET_INTERP->Iutf8_xdigit)
#define PL_utf8locale		(PERL_GET_INTERP->Iutf8locale)
#define PL_uudmap		(PERL_GET_INTERP->Iuudmap)
#define PL_warnhook		(PERL_GET_INTERP->Iwarnhook)
#define PL_widesyscalls		(PERL_GET_INTERP->Iwidesyscalls)
#define PL_xiv_arenaroot	(PERL_GET_INTERP->Ixiv_arenaroot)
#define PL_xiv_root		(PERL_GET_INTERP->Ixiv_root)
#define PL_xnv_arenaroot	(PERL_GET_INTERP->Ixnv_arenaroot)
#define PL_xnv_root		(PERL_GET_INTERP->Ixnv_root)
#define PL_xpv_arenaroot	(PERL_GET_INTERP->Ixpv_arenaroot)
#define PL_xpv_root		(PERL_GET_INTERP->Ixpv_root)
#define PL_xpvav_arenaroot	(PERL_GET_INTERP->Ixpvav_arenaroot)
#define PL_xpvav_root		(PERL_GET_INTERP->Ixpvav_root)
#define PL_xpvbm_arenaroot	(PERL_GET_INTERP->Ixpvbm_arenaroot)
#define PL_xpvbm_root		(PERL_GET_INTERP->Ixpvbm_root)
#define PL_xpvcv_arenaroot	(PERL_GET_INTERP->Ixpvcv_arenaroot)
#define PL_xpvcv_root		(PERL_GET_INTERP->Ixpvcv_root)
#define PL_xpvhv_arenaroot	(PERL_GET_INTERP->Ixpvhv_arenaroot)
#define PL_xpvhv_root		(PERL_GET_INTERP->Ixpvhv_root)
#define PL_xpviv_arenaroot	(PERL_GET_INTERP->Ixpviv_arenaroot)
#define PL_xpviv_root		(PERL_GET_INTERP->Ixpviv_root)
#define PL_xpvlv_arenaroot	(PERL_GET_INTERP->Ixpvlv_arenaroot)
#define PL_xpvlv_root		(PERL_GET_INTERP->Ixpvlv_root)
#define PL_xpvmg_arenaroot	(PERL_GET_INTERP->Ixpvmg_arenaroot)
#define PL_xpvmg_root		(PERL_GET_INTERP->Ixpvmg_root)
#define PL_xpvnv_arenaroot	(PERL_GET_INTERP->Ixpvnv_arenaroot)
#define PL_xpvnv_root		(PERL_GET_INTERP->Ixpvnv_root)
#define PL_xrv_arenaroot	(PERL_GET_INTERP->Ixrv_arenaroot)
#define PL_xrv_root		(PERL_GET_INTERP->Ixrv_root)
#define PL_yychar		(PERL_GET_INTERP->Iyychar)
#define PL_yydebug		(PERL_GET_INTERP->Iyydebug)
#define PL_yyerrflag		(PERL_GET_INTERP->Iyyerrflag)
#define PL_yylval		(PERL_GET_INTERP->Iyylval)
#define PL_yynerrs		(PERL_GET_INTERP->Iyynerrs)
#define PL_yyval		(PERL_GET_INTERP->Iyyval)

#  else		/* !USE_5005THREADS */
/* cases 2 and 3 above */

#define PL_Argv			(vTHX->IArgv)
#define PL_BINCOMPAT0		(vTHX->IBINCOMPAT0)
#define PL_Cmd			(vTHX->ICmd)
#define PL_DBcv			(vTHX->IDBcv)
#define PL_DBgv			(vTHX->IDBgv)
#define PL_DBline		(vTHX->IDBline)
#define PL_DBsignal		(vTHX->IDBsignal)
#define PL_DBsingle		(vTHX->IDBsingle)
#define PL_DBsub		(vTHX->IDBsub)
#define PL_DBtrace		(vTHX->IDBtrace)
#define PL_Dir			(vTHX->IDir)
#define PL_Env			(vTHX->IEnv)
#define PL_LIO			(vTHX->ILIO)
#define PL_Mem			(vTHX->IMem)
#define PL_MemParse		(vTHX->IMemParse)
#define PL_MemShared		(vTHX->IMemShared)
#define PL_OpPtr		(vTHX->IOpPtr)
#define PL_OpSlab		(vTHX->IOpSlab)
#define PL_OpSpace		(vTHX->IOpSpace)
#define PL_Proc			(vTHX->IProc)
#define PL_Sock			(vTHX->ISock)
#define PL_StdIO		(vTHX->IStdIO)
#define PL_amagic_generation	(vTHX->Iamagic_generation)
#define PL_an			(vTHX->Ian)
#define PL_argvgv		(vTHX->Iargvgv)
#define PL_argvout_stack	(vTHX->Iargvout_stack)
#define PL_argvoutgv		(vTHX->Iargvoutgv)
#define PL_basetime		(vTHX->Ibasetime)
#define PL_beginav		(vTHX->Ibeginav)
#define PL_beginav_save		(vTHX->Ibeginav_save)
#define PL_bitcount		(vTHX->Ibitcount)
#define PL_bufend		(vTHX->Ibufend)
#define PL_bufptr		(vTHX->Ibufptr)
#define PL_checkav		(vTHX->Icheckav)
#define PL_checkav_save		(vTHX->Icheckav_save)
#define PL_clocktick		(vTHX->Iclocktick)
#define PL_collation_ix		(vTHX->Icollation_ix)
#define PL_collation_name	(vTHX->Icollation_name)
#define PL_collation_standard	(vTHX->Icollation_standard)
#define PL_collxfrm_base	(vTHX->Icollxfrm_base)
#define PL_collxfrm_mult	(vTHX->Icollxfrm_mult)
#define PL_compcv		(vTHX->Icompcv)
#define PL_compiling		(vTHX->Icompiling)
#define PL_comppad_name		(vTHX->Icomppad_name)
#define PL_comppad_name_fill	(vTHX->Icomppad_name_fill)
#define PL_comppad_name_floor	(vTHX->Icomppad_name_floor)
#define PL_cop_seqmax		(vTHX->Icop_seqmax)
#define PL_copline		(vTHX->Icopline)
#define PL_cred_mutex		(vTHX->Icred_mutex)
#define PL_cryptseen		(vTHX->Icryptseen)
#define PL_cshlen		(vTHX->Icshlen)
#define PL_cshname		(vTHX->Icshname)
#define PL_curcopdb		(vTHX->Icurcopdb)
#define PL_curstname		(vTHX->Icurstname)
#define PL_curthr		(vTHX->Icurthr)
#define PL_custom_op_descs	(vTHX->Icustom_op_descs)
#define PL_custom_op_names	(vTHX->Icustom_op_names)
#define PL_dbargs		(vTHX->Idbargs)
#define PL_debstash		(vTHX->Idebstash)
#define PL_debug		(vTHX->Idebug)
#define PL_debug_pad		(vTHX->Idebug_pad)
#define PL_def_layerlist	(vTHX->Idef_layerlist)
#define PL_defgv		(vTHX->Idefgv)
#define PL_diehook		(vTHX->Idiehook)
#define PL_doextract		(vTHX->Idoextract)
#define PL_doswitches		(vTHX->Idoswitches)
#define PL_dowarn		(vTHX->Idowarn)
#define PL_e_script		(vTHX->Ie_script)
#define PL_egid			(vTHX->Iegid)
#define PL_encoding		(vTHX->Iencoding)
#define PL_endav		(vTHX->Iendav)
#define PL_envgv		(vTHX->Ienvgv)
#define PL_errgv		(vTHX->Ierrgv)
#define PL_error_count		(vTHX->Ierror_count)
#define PL_euid			(vTHX->Ieuid)
#define PL_eval_cond		(vTHX->Ieval_cond)
#define PL_eval_mutex		(vTHX->Ieval_mutex)
#define PL_eval_owner		(vTHX->Ieval_owner)
#define PL_eval_root		(vTHX->Ieval_root)
#define PL_eval_start		(vTHX->Ieval_start)
#define PL_evalseq		(vTHX->Ievalseq)
#define PL_exit_flags		(vTHX->Iexit_flags)
#define PL_exitlist		(vTHX->Iexitlist)
#define PL_exitlistlen		(vTHX->Iexitlistlen)
#define PL_expect		(vTHX->Iexpect)
#define PL_fdpid		(vTHX->Ifdpid)
#define PL_fdpid_mutex		(vTHX->Ifdpid_mutex)
#define PL_fdscript		(vTHX->Ifdscript)
#define PL_filemode		(vTHX->Ifilemode)
#define PL_forkprocess		(vTHX->Iforkprocess)
#define PL_formfeed		(vTHX->Iformfeed)
#define PL_generation		(vTHX->Igeneration)
#define PL_gensym		(vTHX->Igensym)
#define PL_gid			(vTHX->Igid)
#define PL_glob_index		(vTHX->Iglob_index)
#define PL_globalstash		(vTHX->Iglobalstash)
#define PL_hash_seed		(vTHX->Ihash_seed)
#define PL_hash_seed_set	(vTHX->Ihash_seed_set)
#define PL_he_arenaroot		(vTHX->Ihe_arenaroot)
#define PL_he_root		(vTHX->Ihe_root)
#define PL_hintgv		(vTHX->Ihintgv)
#define PL_hints		(vTHX->Ihints)
#define PL_in_clean_all		(vTHX->Iin_clean_all)
#define PL_in_clean_objs	(vTHX->Iin_clean_objs)
#define PL_in_load_module	(vTHX->Iin_load_module)
#define PL_in_my		(vTHX->Iin_my)
#define PL_in_my_stash		(vTHX->Iin_my_stash)
#define PL_incgv		(vTHX->Iincgv)
#define PL_initav		(vTHX->Iinitav)
#define PL_inplace		(vTHX->Iinplace)
#define PL_known_layers		(vTHX->Iknown_layers)
#define PL_last_lop		(vTHX->Ilast_lop)
#define PL_last_lop_op		(vTHX->Ilast_lop_op)
#define PL_last_swash_hv	(vTHX->Ilast_swash_hv)
#define PL_last_swash_key	(vTHX->Ilast_swash_key)
#define PL_last_swash_klen	(vTHX->Ilast_swash_klen)
#define PL_last_swash_slen	(vTHX->Ilast_swash_slen)
#define PL_last_swash_tmps	(vTHX->Ilast_swash_tmps)
#define PL_last_uni		(vTHX->Ilast_uni)
#define PL_lastfd		(vTHX->Ilastfd)
#define PL_laststatval		(vTHX->Ilaststatval)
#define PL_laststype		(vTHX->Ilaststype)
#define PL_lex_brackets		(vTHX->Ilex_brackets)
#define PL_lex_brackstack	(vTHX->Ilex_brackstack)
#define PL_lex_casemods		(vTHX->Ilex_casemods)
#define PL_lex_casestack	(vTHX->Ilex_casestack)
#define PL_lex_defer		(vTHX->Ilex_defer)
#define PL_lex_dojoin		(vTHX->Ilex_dojoin)
#define PL_lex_expect		(vTHX->Ilex_expect)
#define PL_lex_formbrack	(vTHX->Ilex_formbrack)
#define PL_lex_inpat		(vTHX->Ilex_inpat)
#define PL_lex_inwhat		(vTHX->Ilex_inwhat)
#define PL_lex_op		(vTHX->Ilex_op)
#define PL_lex_repl		(vTHX->Ilex_repl)
#define PL_lex_starts		(vTHX->Ilex_starts)
#define PL_lex_state		(vTHX->Ilex_state)
#define PL_lex_stuff		(vTHX->Ilex_stuff)
#define PL_lineary		(vTHX->Ilineary)
#define PL_linestart		(vTHX->Ilinestart)
#define PL_linestr		(vTHX->Ilinestr)
#define PL_localpatches		(vTHX->Ilocalpatches)
#define PL_lockhook		(vTHX->Ilockhook)
#define PL_main_cv		(vTHX->Imain_cv)
#define PL_main_root		(vTHX->Imain_root)
#define PL_main_start		(vTHX->Imain_start)
#define PL_max_intro_pending	(vTHX->Imax_intro_pending)
#define PL_maxo			(vTHX->Imaxo)
#define PL_maxsysfd		(vTHX->Imaxsysfd)
#define PL_mess_sv		(vTHX->Imess_sv)
#define PL_min_intro_pending	(vTHX->Imin_intro_pending)
#define PL_minus_F		(vTHX->Iminus_F)
#define PL_minus_a		(vTHX->Iminus_a)
#define PL_minus_c		(vTHX->Iminus_c)
#define PL_minus_l		(vTHX->Iminus_l)
#define PL_minus_n		(vTHX->Iminus_n)
#define PL_minus_p		(vTHX->Iminus_p)
#define PL_modglobal		(vTHX->Imodglobal)
#define PL_multi_close		(vTHX->Imulti_close)
#define PL_multi_end		(vTHX->Imulti_end)
#define PL_multi_open		(vTHX->Imulti_open)
#define PL_multi_start		(vTHX->Imulti_start)
#define PL_multiline		(vTHX->Imultiline)
#define PL_nexttoke		(vTHX->Inexttoke)
#define PL_nexttype		(vTHX->Inexttype)
#define PL_nextval		(vTHX->Inextval)
#define PL_nice_chunk		(vTHX->Inice_chunk)
#define PL_nice_chunk_size	(vTHX->Inice_chunk_size)
#define PL_nomemok		(vTHX->Inomemok)
#define PL_nthreads		(vTHX->Inthreads)
#define PL_nthreads_cond	(vTHX->Inthreads_cond)
#define PL_nullstash		(vTHX->Inullstash)
#define PL_numeric_compat1	(vTHX->Inumeric_compat1)
#define PL_numeric_local	(vTHX->Inumeric_local)
#define PL_numeric_name		(vTHX->Inumeric_name)
#define PL_numeric_radix_sv	(vTHX->Inumeric_radix_sv)
#define PL_numeric_standard	(vTHX->Inumeric_standard)
#define PL_ofmt			(vTHX->Iofmt)
#define PL_oldbufptr		(vTHX->Ioldbufptr)
#define PL_oldname		(vTHX->Ioldname)
#define PL_oldoldbufptr		(vTHX->Ioldoldbufptr)
#define PL_op_mask		(vTHX->Iop_mask)
#define PL_op_seqmax		(vTHX->Iop_seqmax)
#define PL_origalen		(vTHX->Iorigalen)
#define PL_origargc		(vTHX->Iorigargc)
#define PL_origargv		(vTHX->Iorigargv)
#define PL_origenviron		(vTHX->Iorigenviron)
#define PL_origfilename		(vTHX->Iorigfilename)
#define PL_ors_sv		(vTHX->Iors_sv)
#define PL_osname		(vTHX->Iosname)
#define PL_pad_reset_pending	(vTHX->Ipad_reset_pending)
#define PL_padix		(vTHX->Ipadix)
#define PL_padix_floor		(vTHX->Ipadix_floor)
#define PL_patchlevel		(vTHX->Ipatchlevel)
#define PL_pending_ident	(vTHX->Ipending_ident)
#define PL_perl_destruct_level	(vTHX->Iperl_destruct_level)
#define PL_perldb		(vTHX->Iperldb)
#define PL_perlio		(vTHX->Iperlio)
#define PL_pidstatus		(vTHX->Ipidstatus)
#define PL_ppid			(vTHX->Ippid)
#define PL_preambleav		(vTHX->Ipreambleav)
#define PL_preambled		(vTHX->Ipreambled)
#define PL_preprocess		(vTHX->Ipreprocess)
#define PL_profiledata		(vTHX->Iprofiledata)
#define PL_psig_name		(vTHX->Ipsig_name)
#define PL_psig_pend		(vTHX->Ipsig_pend)
#define PL_psig_ptr		(vTHX->Ipsig_ptr)
#define PL_ptr_table		(vTHX->Iptr_table)
#define PL_reentrant_buffer	(vTHX->Ireentrant_buffer)
#define PL_reentrant_retint	(vTHX->Ireentrant_retint)
#define PL_regex_pad		(vTHX->Iregex_pad)
#define PL_regex_padav		(vTHX->Iregex_padav)
#define PL_rehash_seed		(vTHX->Irehash_seed)
#define PL_rehash_seed_set	(vTHX->Irehash_seed_set)
#define PL_replgv		(vTHX->Ireplgv)
#define PL_rsfp			(vTHX->Irsfp)
#define PL_rsfp_filters		(vTHX->Irsfp_filters)
#define PL_runops		(vTHX->Irunops)
#define PL_runops_dbg		(vTHX->Irunops_dbg)
#define PL_runops_std		(vTHX->Irunops_std)
#define PL_savebegin		(vTHX->Isavebegin)
#define PL_sawampersand		(vTHX->Isawampersand)
#define PL_sh_path_compat	(vTHX->Ish_path_compat)
#define PL_sharehook		(vTHX->Isharehook)
#define PL_sig_pending		(vTHX->Isig_pending)
#define PL_sighandlerp		(vTHX->Isighandlerp)
#define PL_signals		(vTHX->Isignals)
#define PL_sort_RealCmp		(vTHX->Isort_RealCmp)
#define PL_splitstr		(vTHX->Isplitstr)
#define PL_srand_called		(vTHX->Isrand_called)
#define PL_stashcache		(vTHX->Istashcache)
#define PL_statusvalue		(vTHX->Istatusvalue)
#define PL_statusvalue_vms	(vTHX->Istatusvalue_vms)
#define PL_stderrgv		(vTHX->Istderrgv)
#define PL_stdingv		(vTHX->Istdingv)
#define PL_strtab		(vTHX->Istrtab)
#define PL_strtab_mutex		(vTHX->Istrtab_mutex)
#define PL_sub_generation	(vTHX->Isub_generation)
#define PL_sublex_info		(vTHX->Isublex_info)
#define PL_subline		(vTHX->Isubline)
#define PL_subname		(vTHX->Isubname)
#define PL_suidscript		(vTHX->Isuidscript)
#define PL_sv_arenaroot		(vTHX->Isv_arenaroot)
#define PL_sv_count		(vTHX->Isv_count)
#define PL_sv_lock_mutex	(vTHX->Isv_lock_mutex)
#define PL_sv_mutex		(vTHX->Isv_mutex)
#define PL_sv_no		(vTHX->Isv_no)
#define PL_sv_objcount		(vTHX->Isv_objcount)
#define PL_sv_root		(vTHX->Isv_root)
#define PL_sv_undef		(vTHX->Isv_undef)
#define PL_sv_yes		(vTHX->Isv_yes)
#define PL_svref_mutex		(vTHX->Isvref_mutex)
#define PL_sys_intern		(vTHX->Isys_intern)
#define PL_taint_warn		(vTHX->Itaint_warn)
#define PL_tainting		(vTHX->Itainting)
#define PL_threadhook		(vTHX->Ithreadhook)
#define PL_threadnum		(vTHX->Ithreadnum)
#define PL_threads_mutex	(vTHX->Ithreads_mutex)
#define PL_threadsv_names	(vTHX->Ithreadsv_names)
#define PL_thrsv		(vTHX->Ithrsv)
#define PL_tokenbuf		(vTHX->Itokenbuf)
#define PL_uid			(vTHX->Iuid)
#define PL_unicode		(vTHX->Iunicode)
#define PL_unlockhook		(vTHX->Iunlockhook)
#define PL_unsafe		(vTHX->Iunsafe)
#define PL_utf8_alnum		(vTHX->Iutf8_alnum)
#define PL_utf8_alnumc		(vTHX->Iutf8_alnumc)
#define PL_utf8_alpha		(vTHX->Iutf8_alpha)
#define PL_utf8_ascii		(vTHX->Iutf8_ascii)
#define PL_utf8_cntrl		(vTHX->Iutf8_cntrl)
#define PL_utf8_digit		(vTHX->Iutf8_digit)
#define PL_utf8_graph		(vTHX->Iutf8_graph)
#define PL_utf8_idcont		(vTHX->Iutf8_idcont)
#define PL_utf8_idstart		(vTHX->Iutf8_idstart)
#define PL_utf8_lower		(vTHX->Iutf8_lower)
#define PL_utf8_mark		(vTHX->Iutf8_mark)
#define PL_utf8_print		(vTHX->Iutf8_print)
#define PL_utf8_punct		(vTHX->Iutf8_punct)
#define PL_utf8_space		(vTHX->Iutf8_space)
#define PL_utf8_tofold		(vTHX->Iutf8_tofold)
#define PL_utf8_tolower		(vTHX->Iutf8_tolower)
#define PL_utf8_totitle		(vTHX->Iutf8_totitle)
#define PL_utf8_toupper		(vTHX->Iutf8_toupper)
#define PL_utf8_upper		(vTHX->Iutf8_upper)
#define PL_utf8_xdigit		(vTHX->Iutf8_xdigit)
#define PL_utf8locale		(vTHX->Iutf8locale)
#define PL_uudmap		(vTHX->Iuudmap)
#define PL_warnhook		(vTHX->Iwarnhook)
#define PL_widesyscalls		(vTHX->Iwidesyscalls)
#define PL_xiv_arenaroot	(vTHX->Ixiv_arenaroot)
#define PL_xiv_root		(vTHX->Ixiv_root)
#define PL_xnv_arenaroot	(vTHX->Ixnv_arenaroot)
#define PL_xnv_root		(vTHX->Ixnv_root)
#define PL_xpv_arenaroot	(vTHX->Ixpv_arenaroot)
#define PL_xpv_root		(vTHX->Ixpv_root)
#define PL_xpvav_arenaroot	(vTHX->Ixpvav_arenaroot)
#define PL_xpvav_root		(vTHX->Ixpvav_root)
#define PL_xpvbm_arenaroot	(vTHX->Ixpvbm_arenaroot)
#define PL_xpvbm_root		(vTHX->Ixpvbm_root)
#define PL_xpvcv_arenaroot	(vTHX->Ixpvcv_arenaroot)
#define PL_xpvcv_root		(vTHX->Ixpvcv_root)
#define PL_xpvhv_arenaroot	(vTHX->Ixpvhv_arenaroot)
#define PL_xpvhv_root		(vTHX->Ixpvhv_root)
#define PL_xpviv_arenaroot	(vTHX->Ixpviv_arenaroot)
#define PL_xpviv_root		(vTHX->Ixpviv_root)
#define PL_xpvlv_arenaroot	(vTHX->Ixpvlv_arenaroot)
#define PL_xpvlv_root		(vTHX->Ixpvlv_root)
#define PL_xpvmg_arenaroot	(vTHX->Ixpvmg_arenaroot)
#define PL_xpvmg_root		(vTHX->Ixpvmg_root)
#define PL_xpvnv_arenaroot	(vTHX->Ixpvnv_arenaroot)
#define PL_xpvnv_root		(vTHX->Ixpvnv_root)
#define PL_xrv_arenaroot	(vTHX->Ixrv_arenaroot)
#define PL_xrv_root		(vTHX->Ixrv_root)
#define PL_yychar		(vTHX->Iyychar)
#define PL_yydebug		(vTHX->Iyydebug)
#define PL_yyerrflag		(vTHX->Iyyerrflag)
#define PL_yylval		(vTHX->Iyylval)
#define PL_yynerrs		(vTHX->Iyynerrs)
#define PL_yyval		(vTHX->Iyyval)

#  endif	/* USE_5005THREADS */

#else	/* !MULTIPLICITY */

/* cases 1 and 4 above */

#define PL_IArgv		PL_Argv
#define PL_IBINCOMPAT0		PL_BINCOMPAT0
#define PL_ICmd			PL_Cmd
#define PL_IDBcv		PL_DBcv
#define PL_IDBgv		PL_DBgv
#define PL_IDBline		PL_DBline
#define PL_IDBsignal		PL_DBsignal
#define PL_IDBsingle		PL_DBsingle
#define PL_IDBsub		PL_DBsub
#define PL_IDBtrace		PL_DBtrace
#define PL_IDir			PL_Dir
#define PL_IEnv			PL_Env
#define PL_ILIO			PL_LIO
#define PL_IMem			PL_Mem
#define PL_IMemParse		PL_MemParse
#define PL_IMemShared		PL_MemShared
#define PL_IOpPtr		PL_OpPtr
#define PL_IOpSlab		PL_OpSlab
#define PL_IOpSpace		PL_OpSpace
#define PL_IProc		PL_Proc
#define PL_ISock		PL_Sock
#define PL_IStdIO		PL_StdIO
#define PL_Iamagic_generation	PL_amagic_generation
#define PL_Ian			PL_an
#define PL_Iargvgv		PL_argvgv
#define PL_Iargvout_stack	PL_argvout_stack
#define PL_Iargvoutgv		PL_argvoutgv
#define PL_Ibasetime		PL_basetime
#define PL_Ibeginav		PL_beginav
#define PL_Ibeginav_save	PL_beginav_save
#define PL_Ibitcount		PL_bitcount
#define PL_Ibufend		PL_bufend
#define PL_Ibufptr		PL_bufptr
#define PL_Icheckav		PL_checkav
#define PL_Icheckav_save	PL_checkav_save
#define PL_Iclocktick		PL_clocktick
#define PL_Icollation_ix	PL_collation_ix
#define PL_Icollation_name	PL_collation_name
#define PL_Icollation_standard	PL_collation_standard
#define PL_Icollxfrm_base	PL_collxfrm_base
#define PL_Icollxfrm_mult	PL_collxfrm_mult
#define PL_Icompcv		PL_compcv
#define PL_Icompiling		PL_compiling
#define PL_Icomppad_name	PL_comppad_name
#define PL_Icomppad_name_fill	PL_comppad_name_fill
#define PL_Icomppad_name_floor	PL_comppad_name_floor
#define PL_Icop_seqmax		PL_cop_seqmax
#define PL_Icopline		PL_copline
#define PL_Icred_mutex		PL_cred_mutex
#define PL_Icryptseen		PL_cryptseen
#define PL_Icshlen		PL_cshlen
#define PL_Icshname		PL_cshname
#define PL_Icurcopdb		PL_curcopdb
#define PL_Icurstname		PL_curstname
#define PL_Icurthr		PL_curthr
#define PL_Icustom_op_descs	PL_custom_op_descs
#define PL_Icustom_op_names	PL_custom_op_names
#define PL_Idbargs		PL_dbargs
#define PL_Idebstash		PL_debstash
#define PL_Idebug		PL_debug
#define PL_Idebug_pad		PL_debug_pad
#define PL_Idef_layerlist	PL_def_layerlist
#define PL_Idefgv		PL_defgv
#define PL_Idiehook		PL_diehook
#define PL_Idoextract		PL_doextract
#define PL_Idoswitches		PL_doswitches
#define PL_Idowarn		PL_dowarn
#define PL_Ie_script		PL_e_script
#define PL_Iegid		PL_egid
#define PL_Iencoding		PL_encoding
#define PL_Iendav		PL_endav
#define PL_Ienvgv		PL_envgv
#define PL_Ierrgv		PL_errgv
#define PL_Ierror_count		PL_error_count
#define PL_Ieuid		PL_euid
#define PL_Ieval_cond		PL_eval_cond
#define PL_Ieval_mutex		PL_eval_mutex
#define PL_Ieval_owner		PL_eval_owner
#define PL_Ieval_root		PL_eval_root
#define PL_Ieval_start		PL_eval_start
#define PL_Ievalseq		PL_evalseq
#define PL_Iexit_flags		PL_exit_flags
#define PL_Iexitlist		PL_exitlist
#define PL_Iexitlistlen		PL_exitlistlen
#define PL_Iexpect		PL_expect
#define PL_Ifdpid		PL_fdpid
#define PL_Ifdpid_mutex		PL_fdpid_mutex
#define PL_Ifdscript		PL_fdscript
#define PL_Ifilemode		PL_filemode
#define PL_Iforkprocess		PL_forkprocess
#define PL_Iformfeed		PL_formfeed
#define PL_Igeneration		PL_generation
#define PL_Igensym		PL_gensym
#define PL_Igid			PL_gid
#define PL_Iglob_index		PL_glob_index
#define PL_Iglobalstash		PL_globalstash
#define PL_Ihash_seed		PL_hash_seed
#define PL_Ihash_seed_set	PL_hash_seed_set
#define PL_Ihe_arenaroot	PL_he_arenaroot
#define PL_Ihe_root		PL_he_root
#define PL_Ihintgv		PL_hintgv
#define PL_Ihints		PL_hints
#define PL_Iin_clean_all	PL_in_clean_all
#define PL_Iin_clean_objs	PL_in_clean_objs
#define PL_Iin_load_module	PL_in_load_module
#define PL_Iin_my		PL_in_my
#define PL_Iin_my_stash		PL_in_my_stash
#define PL_Iincgv		PL_incgv
#define PL_Iinitav		PL_initav
#define PL_Iinplace		PL_inplace
#define PL_Iknown_layers	PL_known_layers
#define PL_Ilast_lop		PL_last_lop
#define PL_Ilast_lop_op		PL_last_lop_op
#define PL_Ilast_swash_hv	PL_last_swash_hv
#define PL_Ilast_swash_key	PL_last_swash_key
#define PL_Ilast_swash_klen	PL_last_swash_klen
#define PL_Ilast_swash_slen	PL_last_swash_slen
#define PL_Ilast_swash_tmps	PL_last_swash_tmps
#define PL_Ilast_uni		PL_last_uni
#define PL_Ilastfd		PL_lastfd
#define PL_Ilaststatval		PL_laststatval
#define PL_Ilaststype		PL_laststype
#define PL_Ilex_brackets	PL_lex_brackets
#define PL_Ilex_brackstack	PL_lex_brackstack
#define PL_Ilex_casemods	PL_lex_casemods
#define PL_Ilex_casestack	PL_lex_casestack
#define PL_Ilex_defer		PL_lex_defer
#define PL_Ilex_dojoin		PL_lex_dojoin
#define PL_Ilex_expect		PL_lex_expect
#define PL_Ilex_formbrack	PL_lex_formbrack
#define PL_Ilex_inpat		PL_lex_inpat
#define PL_Ilex_inwhat		PL_lex_inwhat
#define PL_Ilex_op		PL_lex_op
#define PL_Ilex_repl		PL_lex_repl
#define PL_Ilex_starts		PL_lex_starts
#define PL_Ilex_state		PL_lex_state
#define PL_Ilex_stuff		PL_lex_stuff
#define PL_Ilineary		PL_lineary
#define PL_Ilinestart		PL_linestart
#define PL_Ilinestr		PL_linestr
#define PL_Ilocalpatches	PL_localpatches
#define PL_Ilockhook		PL_lockhook
#define PL_Imain_cv		PL_main_cv
#define PL_Imain_root		PL_main_root
#define PL_Imain_start		PL_main_start
#define PL_Imax_intro_pending	PL_max_intro_pending
#define PL_Imaxo		PL_maxo
#define PL_Imaxsysfd		PL_maxsysfd
#define PL_Imess_sv		PL_mess_sv
#define PL_Imin_intro_pending	PL_min_intro_pending
#define PL_Iminus_F		PL_minus_F
#define PL_Iminus_a		PL_minus_a
#define PL_Iminus_c		PL_minus_c
#define PL_Iminus_l		PL_minus_l
#define PL_Iminus_n		PL_minus_n
#define PL_Iminus_p		PL_minus_p
#define PL_Imodglobal		PL_modglobal
#define PL_Imulti_close		PL_multi_close
#define PL_Imulti_end		PL_multi_end
#define PL_Imulti_open		PL_multi_open
#define PL_Imulti_start		PL_multi_start
#define PL_Imultiline		PL_multiline
#define PL_Inexttoke		PL_nexttoke
#define PL_Inexttype		PL_nexttype
#define PL_Inextval		PL_nextval
#define PL_Inice_chunk		PL_nice_chunk
#define PL_Inice_chunk_size	PL_nice_chunk_size
#define PL_Inomemok		PL_nomemok
#define PL_Inthreads		PL_nthreads
#define PL_Inthreads_cond	PL_nthreads_cond
#define PL_Inullstash		PL_nullstash
#define PL_Inumeric_compat1	PL_numeric_compat1
#define PL_Inumeric_local	PL_numeric_local
#define PL_Inumeric_name	PL_numeric_name
#define PL_Inumeric_radix_sv	PL_numeric_radix_sv
#define PL_Inumeric_standard	PL_numeric_standard
#define PL_Iofmt		PL_ofmt
#define PL_Ioldbufptr		PL_oldbufptr
#define PL_Ioldname		PL_oldname
#define PL_Ioldoldbufptr	PL_oldoldbufptr
#define PL_Iop_mask		PL_op_mask
#define PL_Iop_seqmax		PL_op_seqmax
#define PL_Iorigalen		PL_origalen
#define PL_Iorigargc		PL_origargc
#define PL_Iorigargv		PL_origargv
#define PL_Iorigenviron		PL_origenviron
#define PL_Iorigfilename	PL_origfilename
#define PL_Iors_sv		PL_ors_sv
#define PL_Iosname		PL_osname
#define PL_Ipad_reset_pending	PL_pad_reset_pending
#define PL_Ipadix		PL_padix
#define PL_Ipadix_floor		PL_padix_floor
#define PL_Ipatchlevel		PL_patchlevel
#define PL_Ipending_ident	PL_pending_ident
#define PL_Iperl_destruct_level	PL_perl_destruct_level
#define PL_Iperldb		PL_perldb
#define PL_Iperlio		PL_perlio
#define PL_Ipidstatus		PL_pidstatus
#define PL_Ippid		PL_ppid
#define PL_Ipreambleav		PL_preambleav
#define PL_Ipreambled		PL_preambled
#define PL_Ipreprocess		PL_preprocess
#define PL_Iprofiledata		PL_profiledata
#define PL_Ipsig_name		PL_psig_name
#define PL_Ipsig_pend		PL_psig_pend
#define PL_Ipsig_ptr		PL_psig_ptr
#define PL_Iptr_table		PL_ptr_table
#define PL_Ireentrant_buffer	PL_reentrant_buffer
#define PL_Ireentrant_retint	PL_reentrant_retint
#define PL_Iregex_pad		PL_regex_pad
#define PL_Iregex_padav		PL_regex_padav
#define PL_Irehash_seed		PL_rehash_seed
#define PL_Irehash_seed_set	PL_rehash_seed_set
#define PL_Ireplgv		PL_replgv
#define PL_Irsfp		PL_rsfp
#define PL_Irsfp_filters	PL_rsfp_filters
#define PL_Irunops		PL_runops
#define PL_Irunops_dbg		PL_runops_dbg
#define PL_Irunops_std		PL_runops_std
#define PL_Isavebegin		PL_savebegin
#define PL_Isawampersand	PL_sawampersand
#define PL_Ish_path_compat	PL_sh_path_compat
#define PL_Isharehook		PL_sharehook
#define PL_Isig_pending		PL_sig_pending
#define PL_Isighandlerp		PL_sighandlerp
#define PL_Isignals		PL_signals
#define PL_Isort_RealCmp	PL_sort_RealCmp
#define PL_Isplitstr		PL_splitstr
#define PL_Isrand_called	PL_srand_called
#define PL_Istashcache		PL_stashcache
#define PL_Istatusvalue		PL_statusvalue
#define PL_Istatusvalue_vms	PL_statusvalue_vms
#define PL_Istderrgv		PL_stderrgv
#define PL_Istdingv		PL_stdingv
#define PL_Istrtab		PL_strtab
#define PL_Istrtab_mutex	PL_strtab_mutex
#define PL_Isub_generation	PL_sub_generation
#define PL_Isublex_info		PL_sublex_info
#define PL_Isubline		PL_subline
#define PL_Isubname		PL_subname
#define PL_Isuidscript		PL_suidscript
#define PL_Isv_arenaroot	PL_sv_arenaroot
#define PL_Isv_count		PL_sv_count
#define PL_Isv_lock_mutex	PL_sv_lock_mutex
#define PL_Isv_mutex		PL_sv_mutex
#define PL_Isv_no		PL_sv_no
#define PL_Isv_objcount		PL_sv_objcount
#define PL_Isv_root		PL_sv_root
#define PL_Isv_undef		PL_sv_undef
#define PL_Isv_yes		PL_sv_yes
#define PL_Isvref_mutex		PL_svref_mutex
#define PL_Isys_intern		PL_sys_intern
#define PL_Itaint_warn		PL_taint_warn
#define PL_Itainting		PL_tainting
#define PL_Ithreadhook		PL_threadhook
#define PL_Ithreadnum		PL_threadnum
#define PL_Ithreads_mutex	PL_threads_mutex
#define PL_Ithreadsv_names	PL_threadsv_names
#define PL_Ithrsv		PL_thrsv
#define PL_Itokenbuf		PL_tokenbuf
#define PL_Iuid			PL_uid
#define PL_Iunicode		PL_unicode
#define PL_Iunlockhook		PL_unlockhook
#define PL_Iunsafe		PL_unsafe
#define PL_Iutf8_alnum		PL_utf8_alnum
#define PL_Iutf8_alnumc		PL_utf8_alnumc
#define PL_Iutf8_alpha		PL_utf8_alpha
#define PL_Iutf8_ascii		PL_utf8_ascii
#define PL_Iutf8_cntrl		PL_utf8_cntrl
#define PL_Iutf8_digit		PL_utf8_digit
#define PL_Iutf8_graph		PL_utf8_graph
#define PL_Iutf8_idcont		PL_utf8_idcont
#define PL_Iutf8_idstart	PL_utf8_idstart
#define PL_Iutf8_lower		PL_utf8_lower
#define PL_Iutf8_mark		PL_utf8_mark
#define PL_Iutf8_print		PL_utf8_print
#define PL_Iutf8_punct		PL_utf8_punct
#define PL_Iutf8_space		PL_utf8_space
#define PL_Iutf8_tofold		PL_utf8_tofold
#define PL_Iutf8_tolower	PL_utf8_tolower
#define PL_Iutf8_totitle	PL_utf8_totitle
#define PL_Iutf8_toupper	PL_utf8_toupper
#define PL_Iutf8_upper		PL_utf8_upper
#define PL_Iutf8_xdigit		PL_utf8_xdigit
#define PL_Iutf8locale		PL_utf8locale
#define PL_Iuudmap		PL_uudmap
#define PL_Iwarnhook		PL_warnhook
#define PL_Iwidesyscalls	PL_widesyscalls
#define PL_Ixiv_arenaroot	PL_xiv_arenaroot
#define PL_Ixiv_root		PL_xiv_root
#define PL_Ixnv_arenaroot	PL_xnv_arenaroot
#define PL_Ixnv_root		PL_xnv_root
#define PL_Ixpv_arenaroot	PL_xpv_arenaroot
#define PL_Ixpv_root		PL_xpv_root
#define PL_Ixpvav_arenaroot	PL_xpvav_arenaroot
#define PL_Ixpvav_root		PL_xpvav_root
#define PL_Ixpvbm_arenaroot	PL_xpvbm_arenaroot
#define PL_Ixpvbm_root		PL_xpvbm_root
#define PL_Ixpvcv_arenaroot	PL_xpvcv_arenaroot
#define PL_Ixpvcv_root		PL_xpvcv_root
#define PL_Ixpvhv_arenaroot	PL_xpvhv_arenaroot
#define PL_Ixpvhv_root		PL_xpvhv_root
#define PL_Ixpviv_arenaroot	PL_xpviv_arenaroot
#define PL_Ixpviv_root		PL_xpviv_root
#define PL_Ixpvlv_arenaroot	PL_xpvlv_arenaroot
#define PL_Ixpvlv_root		PL_xpvlv_root
#define PL_Ixpvmg_arenaroot	PL_xpvmg_arenaroot
#define PL_Ixpvmg_root		PL_xpvmg_root
#define PL_Ixpvnv_arenaroot	PL_xpvnv_arenaroot
#define PL_Ixpvnv_root		PL_xpvnv_root
#define PL_Ixrv_arenaroot	PL_xrv_arenaroot
#define PL_Ixrv_root		PL_xrv_root
#define PL_Iyychar		PL_yychar
#define PL_Iyydebug		PL_yydebug
#define PL_Iyyerrflag		PL_yyerrflag
#define PL_Iyylval		PL_yylval
#define PL_Iyynerrs		PL_yynerrs
#define PL_Iyyval		PL_yyval

#  if defined(USE_5005THREADS)
/* case 4 above */

#define PL_Sv			(aTHX->TSv)
#define PL_Xpv			(aTHX->TXpv)
#define PL_av_fetch_sv		(aTHX->Tav_fetch_sv)
#define PL_bodytarget		(aTHX->Tbodytarget)
#define PL_bostr		(aTHX->Tbostr)
#define PL_chopset		(aTHX->Tchopset)
#define PL_colors		(aTHX->Tcolors)
#define PL_colorset		(aTHX->Tcolorset)
#define PL_comppad		(aTHX->Tcomppad)
#define PL_curcop		(aTHX->Tcurcop)
#define PL_curpad		(aTHX->Tcurpad)
#define PL_curpm		(aTHX->Tcurpm)
#define PL_curstack		(aTHX->Tcurstack)
#define PL_curstackinfo		(aTHX->Tcurstackinfo)
#define PL_curstash		(aTHX->Tcurstash)
#define PL_defoutgv		(aTHX->Tdefoutgv)
#define PL_defstash		(aTHX->Tdefstash)
#define PL_delaymagic		(aTHX->Tdelaymagic)
#define PL_dirty		(aTHX->Tdirty)
#define PL_dumpindent		(aTHX->Tdumpindent)
#define PL_efloatbuf		(aTHX->Tefloatbuf)
#define PL_efloatsize		(aTHX->Tefloatsize)
#define PL_errors		(aTHX->Terrors)
#define PL_extralen		(aTHX->Textralen)
#define PL_firstgv		(aTHX->Tfirstgv)
#define PL_formtarget		(aTHX->Tformtarget)
#define PL_hv_fetch_ent_mh	(aTHX->Thv_fetch_ent_mh)
#define PL_hv_fetch_sv		(aTHX->Thv_fetch_sv)
#define PL_in_eval		(aTHX->Tin_eval)
#define PL_last_in_gv		(aTHX->Tlast_in_gv)
#define PL_lastgotoprobe	(aTHX->Tlastgotoprobe)
#define PL_lastscream		(aTHX->Tlastscream)
#define PL_localizing		(aTHX->Tlocalizing)
#define PL_mainstack		(aTHX->Tmainstack)
#define PL_markstack		(aTHX->Tmarkstack)
#define PL_markstack_max	(aTHX->Tmarkstack_max)
#define PL_markstack_ptr	(aTHX->Tmarkstack_ptr)
#define PL_maxscream		(aTHX->Tmaxscream)
#define PL_modcount		(aTHX->Tmodcount)
#define PL_na			(aTHX->Tna)
#define PL_nrs			(aTHX->Tnrs)
#define PL_ofs_sv		(aTHX->Tofs_sv)
#define PL_op			(aTHX->Top)
#define PL_opsave		(aTHX->Topsave)
#define PL_peepp		(aTHX->Tpeepp)
#define PL_protect		(aTHX->Tprotect)
#define PL_reg_call_cc		(aTHX->Treg_call_cc)
#define PL_reg_curpm		(aTHX->Treg_curpm)
#define PL_reg_eval_set		(aTHX->Treg_eval_set)
#define PL_reg_flags		(aTHX->Treg_flags)
#define PL_reg_ganch		(aTHX->Treg_ganch)
#define PL_reg_leftiter		(aTHX->Treg_leftiter)
#define PL_reg_magic		(aTHX->Treg_magic)
#define PL_reg_match_utf8	(aTHX->Treg_match_utf8)
#define PL_reg_maxiter		(aTHX->Treg_maxiter)
#define PL_reg_oldcurpm		(aTHX->Treg_oldcurpm)
#define PL_reg_oldpos		(aTHX->Treg_oldpos)
#define PL_reg_oldsaved		(aTHX->Treg_oldsaved)
#define PL_reg_oldsavedlen	(aTHX->Treg_oldsavedlen)
#define PL_reg_poscache		(aTHX->Treg_poscache)
#define PL_reg_poscache_size	(aTHX->Treg_poscache_size)
#define PL_reg_re		(aTHX->Treg_re)
#define PL_reg_start_tmp	(aTHX->Treg_start_tmp)
#define PL_reg_start_tmpl	(aTHX->Treg_start_tmpl)
#define PL_reg_starttry		(aTHX->Treg_starttry)
#define PL_reg_sv		(aTHX->Treg_sv)
#define PL_reg_whilem_seen	(aTHX->Treg_whilem_seen)
#define PL_regbol		(aTHX->Tregbol)
#define PL_regcc		(aTHX->Tregcc)
#define PL_regcode		(aTHX->Tregcode)
#define PL_regcomp_parse	(aTHX->Tregcomp_parse)
#define PL_regcomp_rx		(aTHX->Tregcomp_rx)
#define PL_regcompat1		(aTHX->Tregcompat1)
#define PL_regcompp		(aTHX->Tregcompp)
#define PL_regdata		(aTHX->Tregdata)
#define PL_regdummy		(aTHX->Tregdummy)
#define PL_regendp		(aTHX->Tregendp)
#define PL_regeol		(aTHX->Tregeol)
#define PL_regexecp		(aTHX->Tregexecp)
#define PL_regflags		(aTHX->Tregflags)
#define PL_regfree		(aTHX->Tregfree)
#define PL_regindent		(aTHX->Tregindent)
#define PL_reginput		(aTHX->Treginput)
#define PL_regint_start		(aTHX->Tregint_start)
#define PL_regint_string	(aTHX->Tregint_string)
#define PL_reginterp_cnt	(aTHX->Treginterp_cnt)
#define PL_reglastcloseparen	(aTHX->Treglastcloseparen)
#define PL_reglastparen		(aTHX->Treglastparen)
#define PL_regnarrate		(aTHX->Tregnarrate)
#define PL_regnaughty		(aTHX->Tregnaughty)
#define PL_regnpar		(aTHX->Tregnpar)
#define PL_regprecomp		(aTHX->Tregprecomp)
#define PL_regprogram		(aTHX->Tregprogram)
#define PL_regsawback		(aTHX->Tregsawback)
#define PL_regseen		(aTHX->Tregseen)
#define PL_regsize		(aTHX->Tregsize)
#define PL_regstartp		(aTHX->Tregstartp)
#define PL_regtill		(aTHX->Tregtill)
#define PL_regxend		(aTHX->Tregxend)
#define PL_restartop		(aTHX->Trestartop)
#define PL_retstack		(aTHX->Tretstack)
#define PL_retstack_ix		(aTHX->Tretstack_ix)
#define PL_retstack_max		(aTHX->Tretstack_max)
#define PL_rs			(aTHX->Trs)
#define PL_savestack		(aTHX->Tsavestack)
#define PL_savestack_ix		(aTHX->Tsavestack_ix)
#define PL_savestack_max	(aTHX->Tsavestack_max)
#define PL_scopestack		(aTHX->Tscopestack)
#define PL_scopestack_ix	(aTHX->Tscopestack_ix)
#define PL_scopestack_max	(aTHX->Tscopestack_max)
#define PL_screamfirst		(aTHX->Tscreamfirst)
#define PL_screamnext		(aTHX->Tscreamnext)
#define PL_secondgv		(aTHX->Tsecondgv)
#define PL_seen_evals		(aTHX->Tseen_evals)
#define PL_seen_zerolen		(aTHX->Tseen_zerolen)
#define PL_sortcop		(aTHX->Tsortcop)
#define PL_sortcxix		(aTHX->Tsortcxix)
#define PL_sortstash		(aTHX->Tsortstash)
#define PL_stack_base		(aTHX->Tstack_base)
#define PL_stack_max		(aTHX->Tstack_max)
#define PL_stack_sp		(aTHX->Tstack_sp)
#define PL_start_env		(aTHX->Tstart_env)
#define PL_statbuf		(aTHX->Tstatbuf)
#define PL_statcache		(aTHX->Tstatcache)
#define PL_statgv		(aTHX->Tstatgv)
#define PL_statname		(aTHX->Tstatname)
#define PL_tainted		(aTHX->Ttainted)
#define PL_timesbuf		(aTHX->Ttimesbuf)
#define PL_tmps_floor		(aTHX->Ttmps_floor)
#define PL_tmps_ix		(aTHX->Ttmps_ix)
#define PL_tmps_max		(aTHX->Ttmps_max)
#define PL_tmps_stack		(aTHX->Ttmps_stack)
#define PL_top_env		(aTHX->Ttop_env)
#define PL_toptarget		(aTHX->Ttoptarget)
#define PL_watchaddr		(aTHX->Twatchaddr)
#define PL_watchok		(aTHX->Twatchok)

#  else	/* !USE_5005THREADS */
/* case 1 above */

#define PL_TSv			PL_Sv
#define PL_TXpv			PL_Xpv
#define PL_Tav_fetch_sv		PL_av_fetch_sv
#define PL_Tbodytarget		PL_bodytarget
#define PL_Tbostr		PL_bostr
#define PL_Tchopset		PL_chopset
#define PL_Tcolors		PL_colors
#define PL_Tcolorset		PL_colorset
#define PL_Tcomppad		PL_comppad
#define PL_Tcurcop		PL_curcop
#define PL_Tcurpad		PL_curpad
#define PL_Tcurpm		PL_curpm
#define PL_Tcurstack		PL_curstack
#define PL_Tcurstackinfo	PL_curstackinfo
#define PL_Tcurstash		PL_curstash
#define PL_Tdefoutgv		PL_defoutgv
#define PL_Tdefstash		PL_defstash
#define PL_Tdelaymagic		PL_delaymagic
#define PL_Tdirty		PL_dirty
#define PL_Tdumpindent		PL_dumpindent
#define PL_Tefloatbuf		PL_efloatbuf
#define PL_Tefloatsize		PL_efloatsize
#define PL_Terrors		PL_errors
#define PL_Textralen		PL_extralen
#define PL_Tfirstgv		PL_firstgv
#define PL_Tformtarget		PL_formtarget
#define PL_Thv_fetch_ent_mh	PL_hv_fetch_ent_mh
#define PL_Thv_fetch_sv		PL_hv_fetch_sv
#define PL_Tin_eval		PL_in_eval
#define PL_Tlast_in_gv		PL_last_in_gv
#define PL_Tlastgotoprobe	PL_lastgotoprobe
#define PL_Tlastscream		PL_lastscream
#define PL_Tlocalizing		PL_localizing
#define PL_Tmainstack		PL_mainstack
#define PL_Tmarkstack		PL_markstack
#define PL_Tmarkstack_max	PL_markstack_max
#define PL_Tmarkstack_ptr	PL_markstack_ptr
#define PL_Tmaxscream		PL_maxscream
#define PL_Tmodcount		PL_modcount
#define PL_Tna			PL_na
#define PL_Tnrs			PL_nrs
#define PL_Tofs_sv		PL_ofs_sv
#define PL_Top			PL_op
#define PL_Topsave		PL_opsave
#define PL_Tpeepp		PL_peepp
#define PL_Tprotect		PL_protect
#define PL_Treg_call_cc		PL_reg_call_cc
#define PL_Treg_curpm		PL_reg_curpm
#define PL_Treg_eval_set	PL_reg_eval_set
#define PL_Treg_flags		PL_reg_flags
#define PL_Treg_ganch		PL_reg_ganch
#define PL_Treg_leftiter	PL_reg_leftiter
#define PL_Treg_magic		PL_reg_magic
#define PL_Treg_match_utf8	PL_reg_match_utf8
#define PL_Treg_maxiter		PL_reg_maxiter
#define PL_Treg_oldcurpm	PL_reg_oldcurpm
#define PL_Treg_oldpos		PL_reg_oldpos
#define PL_Treg_oldsaved	PL_reg_oldsaved
#define PL_Treg_oldsavedlen	PL_reg_oldsavedlen
#define PL_Treg_poscache	PL_reg_poscache
#define PL_Treg_poscache_size	PL_reg_poscache_size
#define PL_Treg_re		PL_reg_re
#define PL_Treg_start_tmp	PL_reg_start_tmp
#define PL_Treg_start_tmpl	PL_reg_start_tmpl
#define PL_Treg_starttry	PL_reg_starttry
#define PL_Treg_sv		PL_reg_sv
#define PL_Treg_whilem_seen	PL_reg_whilem_seen
#define PL_Tregbol		PL_regbol
#define PL_Tregcc		PL_regcc
#define PL_Tregcode		PL_regcode
#define PL_Tregcomp_parse	PL_regcomp_parse
#define PL_Tregcomp_rx		PL_regcomp_rx
#define PL_Tregcompat1		PL_regcompat1
#define PL_Tregcompp		PL_regcompp
#define PL_Tregdata		PL_regdata
#define PL_Tregdummy		PL_regdummy
#define PL_Tregendp		PL_regendp
#define PL_Tregeol		PL_regeol
#define PL_Tregexecp		PL_regexecp
#define PL_Tregflags		PL_regflags
#define PL_Tregfree		PL_regfree
#define PL_Tregindent		PL_regindent
#define PL_Treginput		PL_reginput
#define PL_Tregint_start	PL_regint_start
#define PL_Tregint_string	PL_regint_string
#define PL_Treginterp_cnt	PL_reginterp_cnt
#define PL_Treglastcloseparen	PL_reglastcloseparen
#define PL_Treglastparen	PL_reglastparen
#define PL_Tregnarrate		PL_regnarrate
#define PL_Tregnaughty		PL_regnaughty
#define PL_Tregnpar		PL_regnpar
#define PL_Tregprecomp		PL_regprecomp
#define PL_Tregprogram		PL_regprogram
#define PL_Tregsawback		PL_regsawback
#define PL_Tregseen		PL_regseen
#define PL_Tregsize		PL_regsize
#define PL_Tregstartp		PL_regstartp
#define PL_Tregtill		PL_regtill
#define PL_Tregxend		PL_regxend
#define PL_Trestartop		PL_restartop
#define PL_Tretstack		PL_retstack
#define PL_Tretstack_ix		PL_retstack_ix
#define PL_Tretstack_max	PL_retstack_max
#define PL_Trs			PL_rs
#define PL_Tsavestack		PL_savestack
#define PL_Tsavestack_ix	PL_savestack_ix
#define PL_Tsavestack_max	PL_savestack_max
#define PL_Tscopestack		PL_scopestack
#define PL_Tscopestack_ix	PL_scopestack_ix
#define PL_Tscopestack_max	PL_scopestack_max
#define PL_Tscreamfirst		PL_screamfirst
#define PL_Tscreamnext		PL_screamnext
#define PL_Tsecondgv		PL_secondgv
#define PL_Tseen_evals		PL_seen_evals
#define PL_Tseen_zerolen	PL_seen_zerolen
#define PL_Tsortcop		PL_sortcop
#define PL_Tsortcxix		PL_sortcxix
#define PL_Tsortstash		PL_sortstash
#define PL_Tstack_base		PL_stack_base
#define PL_Tstack_max		PL_stack_max
#define PL_Tstack_sp		PL_stack_sp
#define PL_Tstart_env		PL_start_env
#define PL_Tstatbuf		PL_statbuf
#define PL_Tstatcache		PL_statcache
#define PL_Tstatgv		PL_statgv
#define PL_Tstatname		PL_statname
#define PL_Ttainted		PL_tainted
#define PL_Ttimesbuf		PL_timesbuf
#define PL_Ttmps_floor		PL_tmps_floor
#define PL_Ttmps_ix		PL_tmps_ix
#define PL_Ttmps_max		PL_tmps_max
#define PL_Ttmps_stack		PL_tmps_stack
#define PL_Ttop_env		PL_top_env
#define PL_Ttoptarget		PL_toptarget
#define PL_Twatchaddr		PL_watchaddr
#define PL_Twatchok		PL_watchok

#  endif	/* USE_5005THREADS */
#endif	/* MULTIPLICITY */

#if defined(PERL_GLOBAL_STRUCT)

#define PL_No			(PL_Vars.GNo)
#define PL_Yes			(PL_Vars.GYes)
#define PL_csighandlerp		(PL_Vars.Gcsighandlerp)
#define PL_curinterp		(PL_Vars.Gcurinterp)
#define PL_do_undump		(PL_Vars.Gdo_undump)
#define PL_dollarzero_mutex	(PL_Vars.Gdollarzero_mutex)
#define PL_hexdigit		(PL_Vars.Ghexdigit)
#define PL_malloc_mutex		(PL_Vars.Gmalloc_mutex)
#define PL_op_mutex		(PL_Vars.Gop_mutex)
#define PL_patleave		(PL_Vars.Gpatleave)
#define PL_sh_path		(PL_Vars.Gsh_path)
#define PL_sigfpe_saved		(PL_Vars.Gsigfpe_saved)
#define PL_sv_placeholder	(PL_Vars.Gsv_placeholder)
#define PL_thr_key		(PL_Vars.Gthr_key)

#else /* !PERL_GLOBAL_STRUCT */

#define PL_GNo			PL_No
#define PL_GYes			PL_Yes
#define PL_Gcsighandlerp	PL_csighandlerp
#define PL_Gcurinterp		PL_curinterp
#define PL_Gdo_undump		PL_do_undump
#define PL_Gdollarzero_mutex	PL_dollarzero_mutex
#define PL_Ghexdigit		PL_hexdigit
#define PL_Gmalloc_mutex	PL_malloc_mutex
#define PL_Gop_mutex		PL_op_mutex
#define PL_Gpatleave		PL_patleave
#define PL_Gsh_path		PL_sh_path
#define PL_Gsigfpe_saved	PL_sigfpe_saved
#define PL_Gsv_placeholder	PL_sv_placeholder
#define PL_Gthr_key		PL_thr_key

#endif /* PERL_GLOBAL_STRUCT */

#ifdef PERL_POLLUTE		/* disabled by default in 5.6.0 */

#define DBsingle		PL_DBsingle
#define DBsub			PL_DBsub
#define compiling		PL_compiling
#define curcop			PL_curcop
#define curstash		PL_curstash
#define debstash		PL_debstash
#define defgv			PL_defgv
#define diehook			PL_diehook
#define dirty			PL_dirty
#define dowarn			PL_dowarn
#define errgv			PL_errgv
#define na			PL_na
#define no_modify		PL_no_modify
#define perl_destruct_level	PL_perl_destruct_level
#define perldb			PL_perldb
#define ppaddr			PL_ppaddr
#define rsfp			PL_rsfp
#define rsfp_filters		PL_rsfp_filters
#define stack_base		PL_stack_base
#define stack_sp		PL_stack_sp
#define stdingv			PL_stdingv
#define sv_arenaroot		PL_sv_arenaroot
#define sv_no			PL_sv_no
#define sv_undef		PL_sv_undef
#define sv_yes			PL_sv_yes
#define tainted			PL_tainted
#define tainting		PL_tainting

#endif /* PERL_POLLUTE */
