#var _push_zstr(s) D(({const char*__p=(s);long __l=_rom_call(long,(const char*),27E)(__p);char *__s=alloca(__l+2);__s[0]=0;push_expr_quantum(_rom_call(char*,(char*,const char*),26C)(__s+1,__p)+__l,STR_TAG);}))
#var _push_zstr_const(s) D((push_expr_quantum(SYMSTR(s),STR_TAG)))


#var H_NULL D(0)
#var NULL_INDEX D(((CESI)0))
#var bcd typedef struct{unsigned short exponent;unsigned long long mantissa;}bcd;
#var FALSE D(0)
#var TRUE D(1)

#var ESQ typedef unsigned char ESQ;
#var CESI typedef const ESQ*CESI;
#var CESI_Callback_t typedef CALLBACK unsigned short(*CESI_Callback_t)(CESI);
#var ESI typedef ESQ*ESI;
#var ESI_Callback_Int_t typedef CALLBACK unsigned short(*ESI_Callback_Int_t)(ESI,unsigned short);
#var ESI_Callback_t typedef CALLBACK void(*ESI_Callback_t)(ESI);
#var EStackIndex D(ESI)

#var MULTI_EXPR typedef struct{unsigned short Size;ESQ Expr[];}MULTI_EXPR;
#var Quantum D(ESQ)
#var SCR_RECT typedef union{struct{unsigned char x0,y0,x1,y1;}xy;unsigned long l;}SCR_RECT;
#var SCR_STATE typedef struct{void*ScrAddr;unsigned char XMax,YMax;short CurFont,CurAttr,CurX,CurY;SCR_RECT CurClip;}SCR_STATE;
#var SYM_STR typedef CESI SYM_STR;
#var POSINT_TAG D(31)
#var NEGINT_TAG D(32)
#var FLOAT_TAG D(35)
#var BCD_TAG D(35)
#var UNDEF_TAG D(42)
#var FALSE_TAG D(43)
#var TRUE_TAG D(44)
#var STR_TAG D(45)
#var LIST_TAG D(217)
#var USERFUNC_TAG D(218)
#var MATRIX_TAG D(219)
#var FUNC_TAG D(220)
#var DATA_TAG D(221)
#var GDB_TAG D(222)
#var PIC_TAG D(223)
#var TEXT_TAG D(224)
#var FIG_TAG D(225)
#var MAC_TAG D(226)
#var END_TAG D(229)
#var ASM_TAG D(243)
#var OTH_TAG D(248)

#var ti_float typedef float ti_float;
#var TSF_FULLY_QUALIFIED D(1)
#var TSF_ALLOW_RESERVED D(2)
#var TSF_PASS_ERRORS D(4)

#var WINDOW typedef struct WindowStruct{unsigned short Flags;unsigned char CurFont;unsigned char CurAttr;unsigned char Background;short TaskId;short CurX,CurY;short CursorX,CursorY;SCR_RECT Client;SCR_RECT Window;SCR_RECT Clip;SCR_RECT Port;unsigned short DupScr;struct WindowStruct*Next;char*Title;SCR_STATE savedScrState;unsigned char Reserved[16];}WINDOW;
#var bottom_estack D((*(AMS_1xx?(CESI*)(&top_estack-2):(CESI*)(_rom_call_addr(432)))))
#var top_estack D((*((ESI*)(_rom_call_addr(109)))))
#var display_statements D(_rom_call(HANDLE,(CESI,short,short),4E))
#var ESTACK(idx) D((*(idx)))
#var HS_popEStack D(_rom_call(HANDLE,(void),244))
#var HToESI D(_rom_call(ESI,(HANDLE),247))
#var next_expression_index D(_rom_call(ESI,(ESI),10A))
#var NG_approxESI D(_rom_call(void,(CESI),25C))
#var NG_execute D(_rom_call(void,(HANDLE,short),25D))
#var NG_graphESI D(_rom_call(void,(CESI,HANDLE),25E))
#var NG_rationalESI D(_rom_call(void,(CESI),25F))
#var NG_RPNToText D(_rom_call(HANDLE,(HANDLE,short,short),25B))
#var NG_tokenize D(_rom_call(short,(HANDLE,__pushort,__pushort),260))
#var Parms2D D(_rom_call(void,(CESI,__pshort,__pshort,__pshort),4D))
#var Parse1DExpr D(_rom_call(HANDLE,(CESI,short,short),4F))
#var Parse2DExpr D(_rom_call(ESI,(CESI,short),4A))
#var Parse2DMultiExpr D(_rom_call(ESI,(HANDLE,short),4B))
#var Print2DExpr D(_rom_call(void,(CESI,WINDOW*,short,short),4C))
#var push_END_TAG D(_rom_call(void,(void),263))
#var push_LIST_TAG D(_rom_call(void,(void),264))
#var push_quantum(tag) D((MIN_AMS<101?(void)(*(++top_estack)=tag):_rom_call(void,(ESQ),2EE)(tag)))
#var TokenizeSymName D(_rom_call(ESI,(const char*,short),80))
#var all_tail D(_rom_call(short,(CESI_Callback_t,ESI),3B5))
#var any_tail D(_rom_call(short,(CESI_Callback_t,ESI),3B6))
#var are_expressions_identical D(_rom_call(short,(CESI,CESI),2BF))
#var can_be_approxed D(_rom_call(short,(CESI,short),2F5))
#var check_estack_size D(_rom_call(void,(short),2C2))
#var compare_complex_magnitudes D(_rom_call(short,(CESI,CESI),2F6))
#var compare_expressions D(_rom_call(short,(CESI,CESI),2C0))
#var compare_Floats D(_rom_call(long,(CESI,CESI),2F7))
#var delete_between D(_rom_call(void,(ESI,ESI),2C3))
#var delete_expression D(_rom_call(void,(ESI),2C5))
#var deleted_between D(_rom_call(unsigned short,(ESI,ESI),2C4))
#var deleted_expression D(_rom_call(unsigned short,(ESI),2C6))
#var did_push_cnvrt_Float_to_integer D(_rom_call(short,(CESI),2F8))
#var estack_number_to_Float(x) D(_tios_float_1(2F9,x,CESI))
#var estack_to_short D(_rom_call(short,(CESI,__pshort),2C7))
#var estack_to_ushort D(_rom_call(short,(CESI,__pushort),2C8))
#var factor_base_index D(_rom_call(ESI,(CESI),2C9))
#var factor_exponent_index D(_rom_call(ESI,(CESI),2CA))
#var gcd_exact_whole_Floats(x,y) D(_tios_float_2(2FC,x,y,CESI,CESI))
#var get_key_ptr D(_rom_call(char*,(ESQ,ESQ),2B7))
#var GetValue D(_rom_call(long,(CESI,long,long),2CB))
#var im_index D(_rom_call(ESI,(CESI),2CC))
#var index_below_display_expression_aux D(_rom_call(ESI,(CESI),2B6))
#var index_main_var D(_rom_call(ESI,(CESI),2CF))
#var index_numeric_term D(_rom_call(ESI,(CESI),2CD))
#var index_of_lead_base_of_lead_term D(_rom_call(ESI,(CESI),2CE))
#var is_advanced_tag D(_rom_call(short,(ESQ),2D0))
#var is_antisymmetric D(_rom_call(short,(CESI,CESI),2D1))
#var is_complex0 D(_rom_call(short,(CESI),2D3))
#var is_complex_number D(_rom_call(short,(CESI),2D2))
#var is_Float_exact_whole_number D(_rom_call(short,(CESI),2FE))
#var is_free_of_tag D(_rom_call(short,(CESI,ESQ),2D4))
#var is_independent_of D(_rom_call(short,(CESI,CESI),2D5))
#var is_independent_of_de_seq_vars D(_rom_call(short,(CESI),2D6))
#var is_independent_of_elements D(_rom_call(short,(CESI,CESI),2D8))
#var is_independent_of_tail D(_rom_call(short,(CESI,CESI),2D7))
#var is_matrix D(_rom_call(short,(CESI),3B7))
#var is_monomial D(_rom_call(short,(CESI),2D9))
#var is_monomial_in_kernel D(_rom_call(short,(CESI),2DA))
#var is_narrowly_independent_of D(_rom_call(short,(CESI,CESI),2DB))
#var is_square_matrix D(_rom_call(short,(CESI),3B8))
#var is_symmetric D(_rom_call(short,(CESI,CESI),2DC))
#var is_tail_independent_of D(_rom_call(short,(CESI,CESI),2DD))
#var is_valid_smap_aggregate D(_rom_call(short,(CESI),3B9))
#var last_element_index D(_rom_call(ESI,(CESI),3BA))
#var lead_base_index D(_rom_call(ESI,(CESI),2DE))
#var lead_exponent_index D(_rom_call(ESI,(CESI),2DF))
#var lead_factor_index D(_rom_call(ESI,(CESI),2E0))
#var lead_term_index D(_rom_call(ESI,(CESI),2E1))
#var likely_approx_to_complex_number D(_rom_call(short,(CESI),307))
#var likely_approx_to_number D(_rom_call(short,(CESI),308))
#var main_gen_var_index D(_rom_call(ESI,(CESI),2E2))
#var map_tail D(_rom_call(void,(ESI_Callback_t,ESI),3BB))
#var map_tail_Int D(_rom_call(short,(ESI_Callback_Int_t,ESI,short),3BC))
#var map_unary_over_comparison D(_rom_call(void,(ESI_Callback_t,ESI),2E3))
#var min_quantum D(_rom_call(ESQ,(ESQ,ESQ),2E4))
#var move_between_to_top D(_rom_call(void,(ESI,ESI),2E5))
#var moved_between_to_top D(_rom_call(unsigned short,(ESI,ESI),2E6))
#var norm1_complex_Float(x) D(_tios_float_1(309,x,CESI))
#var numeric_factor_index D(_rom_call(ESI,(CESI),2E7))
#var push_ANSI_string D(push_zstr)
#var push_between D(_rom_call(void,(void*,void*),2E8))
#var push_cnvrt_integer_if_whole_nmb D(_rom_call(void,(CESI),30D))
#var push_expr_quantum D(_rom_call(void,(CESI,ESQ),2E9))
#var push_expr2_quantum D(_rom_call(void,(CESI,CESI,ESQ),2EA))
#var push_expression(ptr) D((MIN_AMS<200?({push_expr_quantum(ptr,NOTHING_TAG);(void)(--top_estack);}):_rom_call(void,(CESI),44D)(ptr)))
#var push_Float D(_rom_call(void,(float),30A))
#var push_Float_to_nonneg_int D(_rom_call(void,(float),30B))
#var push_Float_to_rat D(_rom_call(void,(CESI),30C))
#var push_internal_simplify D((*(__push_internal_simplify__type__)(AMS_1xx?(*((void**)((char*)_rom_call_addr(385)+22))):_rom_call(void,(CESI),4F8))))
#var push_longint void push_longint(long)__ATTR_LIB_ASM__;
#var push_longlongint void push_longlongint(long long)__ATTR_LIB_ASM__;
#var push_next_arb_int D(_rom_call(void,(void),2EB))
#var push_next_arb_real D(_rom_call(void,(void),2EC))
#var push_next_internal_var D(_rom_call(void,(ESQ),2ED))
#var push_offset_array D(_rom_call(unsigned short,(CESI,__pushort*),3C4))
#var push_overflow_to_infinity D(_rom_call(void,(ESQ),30E))
#var push_parse_text D(_rom_call(short,(const char*),3CA))
#var push_quantum_pair D(_rom_call(void,(ESQ,ESQ),2EF))
#var push_reversed_tail D(_rom_call(void,(CESI),3BF))
#var push_round_Float D(_rom_call(void,(CESI),310))
#var push_shortint void push_shortint(short)__ATTR_LIB_ASM__;
#var push_transpose_aux D(_rom_call(void,(CESI,short),3C1))
#var push_zstr(s) D((MIN_AMS<200?_push_zstr(s):_rom_call(void,(const char*),48A)(s)))
#var re_index D(_rom_call(ESI,(CESI),2F2))
#var reductum_index D(_rom_call(ESI,(CESI),2F0))
#var remaining_element_count D(_rom_call(unsigned short,(CESI),3C3))
#var remaining_factors_index D(_rom_call(ESI,(CESI),2F1))
#var reset_control_flags D(_rom_call(void,(void),2F4))
#var reset_estack_size D(_rom_call(void,(short),2F3))
#var should_and_did_push_approx_arg2 D(_rom_call(short,(CESI,CESI),311))
#var signum_Float D(_rom_call(long,(CESI),312))

#var __push_internal_simplify__type__ typedef void(*__push_internal_simplify__type__)(CESI)__ATTR_TIOS__;
