if (!defined &_NETISO_TP_TRACE_H_) {
    eval 'sub _NETISO_TP_TRACE_H_ {1;}';
    eval 'sub TPPTsendack {1;}';
    eval 'sub TPPTgotack {2;}';
    eval 'sub TPPTXack {3;}';
    eval 'sub TPPTgotXack {4;}';
    eval 'sub TPPTack {5;}';
    eval 'sub TPPTindicate {6;}';
    eval 'sub TPPTusrreq {7;}';
    eval 'sub TPPTmisc {8;}';
    eval 'sub TPPTpcb {9;}';
    eval 'sub TPPTref {10;}';
    eval 'sub TPPTtpduin {11;}';
    eval 'sub TPPTparam {12;}';
    eval 'sub TPPTertpdu {13;}';
    eval 'sub TPPTdriver {14;}';
    eval 'sub TPPTtpduout {15;}';
    require 'netiso/tp_pcb.ph';
    if (defined( &TP_TRACEFILE)||!defined( &KERNEL)) {
	require 'netiso/tp_tpdu.ph';
	eval 'sub TPTRACE_STRLEN {50;}';
	eval 'sub tpt_inpcb { &tpt_stuff. &tpt_Inpcb;}';
	eval 'sub tpt_pcb { &tpt_stuff. &tpt_Pcb;}';
	eval 'sub tpt_ref { &tpt_stuff. &tpt_Ref;}';
	eval 'sub tpt_tpdu { &tpt_stuff. &tpt_Tpdu;}';
	eval 'sub tpt_param { &tpt_stuff. &tpt_Param;}';
	eval 'sub tpt_ertpdu { &tpt_stuff. &tpt_Ertpdu;}';
	eval 'sub tpt_str { &tpt_stuff. &tptmisc. &tpt_Str;}';
	eval 'sub tpt_m1 { &tpt_stuff. &tptmisc. &tptm_1;}';
	eval 'sub tpt_m2 { &tpt_stuff. &tptmisc. &tptm_2;}';
	eval 'sub tpt_m3 { &tpt_stuff. &tptmisc. &tptm_3;}';
	eval 'sub tpt_m4 { &tpt_stuff. &tptmisc. &tptm_4;}';
	eval 'sub tpt_m5 { &tpt_stuff. &tptmisc. &tptm_5;}';
	eval 'sub tpt_seq { &tpt_stuff. &tpt_Time. &tptv_seq;}';
	eval 'sub tpt_kind { &tpt_stuff. &tpt_Time. &tptv_kind;}';
	eval 'sub tpt_window { &tpt_stuff. &tpt_Time. &tptv_window;}';
	eval 'sub tpt_size { &tpt_stuff. &tpt_Time. &tptv_size;}';
    }
    if (defined &TPPT) {
	eval 'sub TPTRACEN {300;}';
	eval 'sub tptrace {
	    local($A,$B,$C,$D,$E,$F) = @_;
	    eval " &tpTrace(0, ($A),($B),($C),($D),($E),($F))";
	}';
	eval 'sub tptraceTPCB {
	    local($A,$B,$C,$D,$E,$F) = @_;
	    eval " &tpTrace( &tpcb, ($A),($B),($C),($D),($E),($F))";
	}';
	eval 'sub IFTRACE {
	    local($ascii) = @_;
	    eval " &if( &tp_traceflags[$ascii]) {";
	}';
	eval 'sub ENDTRACE {};}';
    }
    else {
	eval 'sub TPTRACEN {1;}';
	eval 'sub tptrace {
	    local($A,$B,$C,$D,$E,$F) = @_;
	    eval "0";
	}';
	eval 'sub tptraceTPCB {
	    local($A,$B,$C,$D,$E,$F) = @_;
	    eval "0";
	}';
	eval 'sub IFTRACE {
	    local($ascii) = @_;
	    eval " &if (0) {";
	}';
	eval 'sub ENDTRACE {};}';
    }
}
1;
